diff --git a/admin/src/api/first_visit.ts b/admin/src/api/first_visit.ts index 34c4c3db1..0e076de4c 100644 --- a/admin/src/api/first_visit.ts +++ b/admin/src/api/first_visit.ts @@ -4,7 +4,7 @@ export interface MyPatientListParams { page_no: number page_size: number keyword?: string - status_filter?: '' | 'unconfirmed' | 'booked' | 'completed' | 'missed' + status_filter?: '' | 'unbooked' | 'pending_interview' | 'completed' | 'missed' start_date?: string end_date?: string } @@ -141,6 +141,7 @@ export interface FirstVisitConversionParams { time_type: 'today' | 'yesterday' | 'week' | 'month' | 'quarter' | 'year' dept_id?: number assistant_id?: number + media_channel_code?: string } /** 一诊综合数据转化:服务端按当前角色 DataScope 与所选部门/员工取交集。 */ diff --git a/admin/src/api/stats.ts b/admin/src/api/stats.ts index 0b0259d33..638eeb171 100644 --- a/admin/src/api/stats.ts +++ b/admin/src/api/stats.ts @@ -1,9 +1,9 @@ import request from '@/utils/request' /** 角色数据驾驶舱:服务端统一按当前管理员的数据范围聚合。 */ -export function performanceDashboardOverview() { +export function performanceDashboardOverview(params?: { ranking_dept_id?: number }) { return request.get( - { url: '/stats.performanceDashboard/overview', timeout: 120000 }, + { url: '/stats.performanceDashboard/overview', params, timeout: 120000 }, { ignoreCancelToken: true } ) } diff --git a/admin/src/views/first_visit/conversion/index.vue b/admin/src/views/first_visit/conversion/index.vue index b5edaed4b..4951e9cd4 100644 --- a/admin/src/views/first_visit/conversion/index.vue +++ b/admin/src/views/first_visit/conversion/index.vue @@ -51,6 +51,24 @@ @change="handleDeptChange" /> +
部门层级汇总;父级包含其下级数据
+部门层级汇总;开口率=开口/加粉,挂号率=付费挂号/加粉,接诊率=接诊诊单/加粉
挂号 → 面诊 → 接诊 → 成交
{{ dashboard.trend.start_date }} 至 {{ dashboard.trend.end_date }}
审核与履约状态直接展示,点击后立即筛选
+{{ appointmentRankingSubtitle }}
- +{const _=q,x=ee,i=A,f=Z,g=Y,N=O,I=X,P=Q,S=W,T=R,L=H;return V(),v(J,null,[e(_,{shadow:"never",class:"!border-none flex"},{default:t(()=>[...l[3]||(l[3]=[s("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(" 底部导航设置 "),s("span",{class:"form-tips ml-[10px] !mt-0"}," 至少添加2个导航,最多添加5个导航 ")],-1)])]),_:1}),e(L,{"label-width":"70px"},{default:t(()=>[e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l[4]||(l[4]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),e(i,{label:"默认颜色"},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.default_color,"onUpdate:modelValue":l[0]||(l[0]=u=>m(n).style.default_color=u),"default-color":"#999999"},null,8,["modelValue"])]),_:1}),e(i,{label:"选中颜色",style:{"margin-bottom":"0"}},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.selected_color,"onUpdate:modelValue":l[1]||(l[1]=u=>m(n).style.selected_color=u),"default-color":"#4173ff"},null,8,["modelValue"])]),_:1})]),_:1}),e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>{var u;return[l[7]||(l[7]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),s("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),s("div",le,[e(m(K),{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:r})=>[e(S,{onClose:d=>B(r),class:M(["max-w-[400px]",{draggable:r!=0}]),"show-close":r!==0},{default:t(()=>[s("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(()=>[s("div",te,[e(f,{name:"el-icon-Plus",size:16}),l[5]||(l[5]=s("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(()=>[s("div",se,[e(f,{name:"el-icon-Plus",size:16}),l[6]||(l[6]=s("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"导航名称"},{default:t(()=>[e(N,{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:r===0,modelValue:o.link,"onUpdate:modelValue":d=>o.link=d},null,8,["disabled","modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"是否显示"},{default:t(()=>[s("div",ae,[e(P,{disabled:r==0,modelValue:o.is_show,"onUpdate:modelValue":d=>o.is_show=d,"active-value":1,"inactive-value":0,onChange:d=>F(o)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"]),s("div",ne,[e(f,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])]),_:2},1032,["onClose","show-close","class"])]),_:1},8,["modelValue"])]),((u=m(n).list)==null?void 0:u.length) {const _=q,x=ee,i=A,f=Z,g=Y,N=O,I=X,P=Q,S=W,T=R,L=H;return V(),v(J,null,[e(_,{shadow:"never",class:"!border-none flex"},{default:t(()=>[...l[3]||(l[3]=[s("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(" 底部导航设置 "),s("span",{class:"form-tips ml-[10px] !mt-0"}," 至少添加2个导航,最多添加5个导航 ")],-1)])]),_:1}),e(L,{"label-width":"70px"},{default:t(()=>[e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l[4]||(l[4]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),e(i,{label:"默认颜色"},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.default_color,"onUpdate:modelValue":l[0]||(l[0]=u=>m(n).style.default_color=u),"default-color":"#999999"},null,8,["modelValue"])]),_:1}),e(i,{label:"选中颜色",style:{"margin-bottom":"0"}},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.selected_color,"onUpdate:modelValue":l[1]||(l[1]=u=>m(n).style.selected_color=u),"default-color":"#4173ff"},null,8,["modelValue"])]),_:1})]),_:1}),e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>{var u;return[l[7]||(l[7]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),s("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),s("div",le,[e(m(K),{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:r})=>[e(S,{onClose:d=>B(r),class:M(["max-w-[400px]",{draggable:r!=0}]),"show-close":r!==0},{default:t(()=>[s("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(()=>[s("div",te,[e(f,{name:"el-icon-Plus",size:16}),l[5]||(l[5]=s("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(()=>[s("div",se,[e(f,{name:"el-icon-Plus",size:16}),l[6]||(l[6]=s("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"导航名称"},{default:t(()=>[e(N,{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:r===0,modelValue:o.link,"onUpdate:modelValue":d=>o.link=d},null,8,["disabled","modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"是否显示"},{default:t(()=>[s("div",ae,[e(P,{disabled:r==0,modelValue:o.is_show,"onUpdate:modelValue":d=>o.is_show=d,"active-value":1,"inactive-value":0,onChange:d=>F(o)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"]),s("div",ne,[e(f,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])]),_:2},1032,["onClose","show-close","class"])]),_:1},8,["modelValue"])]),((u=m(n).list)==null?void 0:u.length) {const _=q,x=ee,i=A,f=Z,g=Y,N=O,I=X,P=Q,S=W,T=R,L=H;return V(),v(J,null,[e(_,{shadow:"never",class:"!border-none flex"},{default:t(()=>[...l[3]||(l[3]=[s("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(" 底部导航设置 "),s("span",{class:"form-tips ml-[10px] !mt-0"}," 至少添加2个导航,最多添加5个导航 ")],-1)])]),_:1}),e(L,{"label-width":"70px"},{default:t(()=>[e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l[4]||(l[4]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),e(i,{label:"默认颜色"},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.default_color,"onUpdate:modelValue":l[0]||(l[0]=u=>m(n).style.default_color=u),"default-color":"#999999"},null,8,["modelValue"])]),_:1}),e(i,{label:"选中颜色",style:{"margin-bottom":"0"}},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.selected_color,"onUpdate:modelValue":l[1]||(l[1]=u=>m(n).style.selected_color=u),"default-color":"#4173ff"},null,8,["modelValue"])]),_:1})]),_:1}),e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>{var u;return[l[7]||(l[7]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),s("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),s("div",le,[e(m(K),{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:r})=>[e(S,{onClose:d=>B(r),class:M(["max-w-[400px]",{draggable:r!=0}]),"show-close":r!==0},{default:t(()=>[s("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(()=>[s("div",te,[e(f,{name:"el-icon-Plus",size:16}),l[5]||(l[5]=s("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(()=>[s("div",se,[e(f,{name:"el-icon-Plus",size:16}),l[6]||(l[6]=s("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"导航名称"},{default:t(()=>[e(N,{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:r===0,modelValue:o.link,"onUpdate:modelValue":d=>o.link=d},null,8,["disabled","modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"是否显示"},{default:t(()=>[s("div",ae,[e(P,{disabled:r==0,modelValue:o.is_show,"onUpdate:modelValue":d=>o.is_show=d,"active-value":1,"inactive-value":0,onChange:d=>F(o)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"]),s("div",ne,[e(f,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])]),_:2},1032,["onClose","show-close","class"])]),_:1},8,["modelValue"])]),((u=m(n).list)==null?void 0:u.length) {const _=q,x=ee,i=A,f=Z,g=Y,N=O,I=X,P=Q,S=W,T=R,L=H;return V(),v(J,null,[e(_,{shadow:"never",class:"!border-none flex"},{default:t(()=>[...l[3]||(l[3]=[s("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(" 底部导航设置 "),s("span",{class:"form-tips ml-[10px] !mt-0"}," 至少添加2个导航,最多添加5个导航 ")],-1)])]),_:1}),e(L,{"label-width":"70px"},{default:t(()=>[e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l[4]||(l[4]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"展示样式")],-1)),e(i,{label:"默认颜色"},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.default_color,"onUpdate:modelValue":l[0]||(l[0]=u=>m(n).style.default_color=u),"default-color":"#999999"},null,8,["modelValue"])]),_:1}),e(i,{label:"选中颜色",style:{"margin-bottom":"0"}},{default:t(()=>[e(x,{class:"max-w-[400px]",modelValue:m(n).style.selected_color,"onUpdate:modelValue":l[1]||(l[1]=u=>m(n).style.selected_color=u),"default-color":"#4173ff"},null,8,["modelValue"])]),_:1})]),_:1}),e(_,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>{var u;return[l[7]||(l[7]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单设置"),s("div",{class:"text-xs text-tx-secondary ml-2"},"建议图片尺寸:100px*100px")],-1)),s("div",le,[e(m(K),{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:r})=>[e(S,{onClose:d=>B(r),class:M(["max-w-[400px]",{draggable:r!=0}]),"show-close":r!==0},{default:t(()=>[s("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(()=>[s("div",te,[e(f,{name:"el-icon-Plus",size:16}),l[5]||(l[5]=s("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(()=>[s("div",se,[e(f,{name:"el-icon-Plus",size:16}),l[6]||(l[6]=s("span",{class:"text-xs leading-5"}," 选中 ",-1))])]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"导航名称"},{default:t(()=>[e(N,{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:r===0,modelValue:o.link,"onUpdate:modelValue":d=>o.link=d},null,8,["disabled","modelValue","onUpdate:modelValue"])]),_:2},1024),e(i,{label:"是否显示"},{default:t(()=>[s("div",ae,[e(P,{disabled:r==0,modelValue:o.is_show,"onUpdate:modelValue":d=>o.is_show=d,"active-value":1,"inactive-value":0,onChange:d=>F(o)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"]),s("div",ne,[e(f,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])]),_:2},1032,["onClose","show-close","class"])]),_:1},8,["modelValue"])]),((u=m(n).list)==null?void 0:u.length) {var d;if(((d=c.content.data)==null?void 0:d.length)<=1)return v.msgError("最少保留一张图片");const e=b(c.content);e.data.splice(a,1),m("update:content",e)};return(a,e)=>{const d=H,y=z,_=q,E=G,U=A,C=T,B=S,D=K,N=O,$=Q;return i(),g("div",null,[t($,{"label-width":"70px"},{default:l(()=>[t(N,{shadow:"never",class:"!border-none flex mt-2"},{default:l(()=>{var x;return[e[2]||(e[2]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单"),s("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),t(u(j),{class:"draggable",modelValue:u(f).data,"onUpdate:modelValue":e[0]||(e[0]=o=>u(f).data=o),animation:"300",handle:".drag-move","item-key":"index"},{item:l(({element:o,index:V})=>[(i(),F(B,{key:V,onClose:n=>w(V),class:"w-[467px]"},{default:l(()=>[s("div",J,[t(d,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),s("div",M,[t(_,{label:"图片名称"},{default:l(()=>[t(y,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{class:"mt-[18px]",label:"图片链接"},{default:l(()=>[t(E,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{label:"是否显示",class:"mt-[18px]"},{default:l(()=>[s("div",W,[t(U,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),s("div",X,[t(C,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"]),((x=r.content.data)==null?void 0:x.length) [...e[1]||(e[1]=[L("添加图片",-1)])]),_:1})])):P("",!0)]}),_:1})]),_:1})])}}});export{le as _};
+========
+import{o as I,q as i,r as g,v as t,D as l,bg as O,s,u,bQ as j,O as F,b6 as q,b7 as z,I as A,K,L,P,b9 as Q,p as R,cm as b}from"./.pnpm-BadRMC3e.js";import{_ as S}from"./index-ZgwwU4Et.js";import{c as T,i as v}from"./index-C53kWH2_.js";import{_ as G}from"./picker-B684-f2m.js";import{_ as H}from"./picker-Bo_aGeCY.js";const J={class:"bg-fill-light flex items-center w-full p-4 mt-4"},M={class:"ml-3 flex-1"},W={class:"flex-1 flex items-center"},X={class:"drag-move cursor-move ml-auto"},Y={key:0,class:"mt-4"},p=5,le=I({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(r,{emit:h}){const m=h,c=r,f=R({get:()=>c.content,set:a=>{m("update:content",a)}}),k=()=>{var a;if(((a=c.content.data)==null?void 0:a.length) {var d;if(((d=c.content.data)==null?void 0:d.length)<=1)return v.msgError("最少保留一张图片");const e=b(c.content);e.data.splice(a,1),m("update:content",e)};return(a,e)=>{const d=H,y=z,_=q,E=G,U=A,C=T,B=S,D=K,N=O,$=Q;return i(),g("div",null,[t($,{"label-width":"70px"},{default:l(()=>[t(N,{shadow:"never",class:"!border-none flex mt-2"},{default:l(()=>{var x;return[e[2]||(e[2]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单"),s("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),t(u(j),{class:"draggable",modelValue:u(f).data,"onUpdate:modelValue":e[0]||(e[0]=o=>u(f).data=o),animation:"300",handle:".drag-move","item-key":"index"},{item:l(({element:o,index:V})=>[(i(),F(B,{key:V,onClose:n=>w(V),class:"w-[467px]"},{default:l(()=>[s("div",J,[t(d,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),s("div",M,[t(_,{label:"图片名称"},{default:l(()=>[t(y,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{class:"mt-[18px]",label:"图片链接"},{default:l(()=>[t(E,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{label:"是否显示",class:"mt-[18px]"},{default:l(()=>[s("div",W,[t(U,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),s("div",X,[t(C,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"]),((x=r.content.data)==null?void 0:x.length) [...e[1]||(e[1]=[L("添加图片",-1)])]),_:1})])):P("",!0)]}),_:1})]),_:1})])}}});export{le as _};
+>>>>>>>> yz-0803:server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-KXM-p3ne.js
diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-KXM-p3ne.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-KXM-p3ne.js
new file mode 100644
index 000000000..963ab8c3a
--- /dev/null
+++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-KXM-p3ne.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-FQTGDwHx.js
+import{o as I,q as i,r as g,v as t,D as l,bg as O,s,u,bQ as j,O as F,b6 as q,b7 as z,I as A,K,L,P,b9 as Q,p as R,cm as b}from"./.pnpm-BadRMC3e.js";import{_ as S}from"./index-DcSBJkxh.js";import{c as T,i as v}from"./index-C360OAjQ.js";import{_ as G}from"./picker-CPp7nEcu.js";import{_ as H}from"./picker-BV4TmQgU.js";const J={class:"bg-fill-light flex items-center w-full p-4 mt-4"},M={class:"ml-3 flex-1"},W={class:"flex-1 flex items-center"},X={class:"drag-move cursor-move ml-auto"},Y={key:0,class:"mt-4"},p=5,le=I({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(r,{emit:h}){const m=h,c=r,f=R({get:()=>c.content,set:a=>{m("update:content",a)}}),k=()=>{var a;if(((a=c.content.data)==null?void 0:a.length) {var d;if(((d=c.content.data)==null?void 0:d.length)<=1)return v.msgError("最少保留一张图片");const e=b(c.content);e.data.splice(a,1),m("update:content",e)};return(a,e)=>{const d=H,y=z,_=q,E=G,U=A,C=T,B=S,D=K,N=O,$=Q;return i(),g("div",null,[t($,{"label-width":"70px"},{default:l(()=>[t(N,{shadow:"never",class:"!border-none flex mt-2"},{default:l(()=>{var x;return[e[2]||(e[2]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单"),s("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),t(u(j),{class:"draggable",modelValue:u(f).data,"onUpdate:modelValue":e[0]||(e[0]=o=>u(f).data=o),animation:"300",handle:".drag-move","item-key":"index"},{item:l(({element:o,index:V})=>[(i(),F(B,{key:V,onClose:n=>w(V),class:"w-[467px]"},{default:l(()=>[s("div",J,[t(d,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),s("div",M,[t(_,{label:"图片名称"},{default:l(()=>[t(y,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{class:"mt-[18px]",label:"图片链接"},{default:l(()=>[t(E,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{label:"是否显示",class:"mt-[18px]"},{default:l(()=>[s("div",W,[t(U,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),s("div",X,[t(C,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"]),((x=r.content.data)==null?void 0:x.length) [...e[1]||(e[1]=[L("添加图片",-1)])]),_:1})])):P("",!0)]}),_:1})]),_:1})])}}});export{le as _};
+========
+import{o as I,q as i,r as g,v as t,D as l,bg as O,s,u,bQ as j,O as F,b6 as q,b7 as z,I as A,K,L,P,b9 as Q,p as R,cm as b}from"./.pnpm-BadRMC3e.js";import{_ as S}from"./index-ZgwwU4Et.js";import{c as T,i as v}from"./index-C53kWH2_.js";import{_ as G}from"./picker-B684-f2m.js";import{_ as H}from"./picker-Bo_aGeCY.js";const J={class:"bg-fill-light flex items-center w-full p-4 mt-4"},M={class:"ml-3 flex-1"},W={class:"flex-1 flex items-center"},X={class:"drag-move cursor-move ml-auto"},Y={key:0,class:"mt-4"},p=5,le=I({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(r,{emit:h}){const m=h,c=r,f=R({get:()=>c.content,set:a=>{m("update:content",a)}}),k=()=>{var a;if(((a=c.content.data)==null?void 0:a.length) {var d;if(((d=c.content.data)==null?void 0:d.length)<=1)return v.msgError("最少保留一张图片");const e=b(c.content);e.data.splice(a,1),m("update:content",e)};return(a,e)=>{const d=H,y=z,_=q,E=G,U=A,C=T,B=S,D=K,N=O,$=Q;return i(),g("div",null,[t($,{"label-width":"70px"},{default:l(()=>[t(N,{shadow:"never",class:"!border-none flex mt-2"},{default:l(()=>{var x;return[e[2]||(e[2]=s("div",{class:"flex items-end mb-4"},[s("div",{class:"text-base text-[#101010] font-medium"},"菜单"),s("div",{class:"text-xs text-tx-secondary ml-2"}," 最多添加5张,建议图片尺寸:750px*200px ")],-1)),t(u(j),{class:"draggable",modelValue:u(f).data,"onUpdate:modelValue":e[0]||(e[0]=o=>u(f).data=o),animation:"300",handle:".drag-move","item-key":"index"},{item:l(({element:o,index:V})=>[(i(),F(B,{key:V,onClose:n=>w(V),class:"w-[467px]"},{default:l(()=>[s("div",J,[t(d,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),s("div",M,[t(_,{label:"图片名称"},{default:l(()=>[t(y,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"请输入名称"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{class:"mt-[18px]",label:"图片链接"},{default:l(()=>[t(E,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),t(_,{label:"是否显示",class:"mt-[18px]"},{default:l(()=>[s("div",W,[t(U,{modelValue:o.is_show,"onUpdate:modelValue":n=>o.is_show=n,"active-value":"1","inactive-value":"0"},null,8,["modelValue","onUpdate:modelValue"]),s("div",X,[t(C,{name:"el-icon-Rank",size:"18"})])])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"]),((x=r.content.data)==null?void 0:x.length) [...e[1]||(e[1]=[L("添加图片",-1)])]),_:1})])):P("",!0)]}),_:1})]),_:1})])}}});export{le as _};
+>>>>>>>> yz-0803:server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-KXM-p3ne.js
diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-QoAIF5QX.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-QoAIF5QX.js
new file mode 100644
index 000000000..643b3988c
--- /dev/null
+++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-QoAIF5QX.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-rek2PHbH.js
+import{o as E,q as s,O as r,D as t,v as l,bg as F,b6 as C,bc as N,u as a,bf as z,L as p,b7 as B,P as i,s as b,b9 as O,p as j}from"./.pnpm-BadRMC3e.js";import{_ as D}from"./index.vue_vue_type_script_setup_true_lang-BhTBtKLt.js";import{_ as I}from"./picker-BV4TmQgU.js";const G=E({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(d,{emit:g}){const y=g,x=d,o=j({get:()=>x.content,set:f=>{y("update:content",f)}});return(f,e)=>{const m=z,_=N,u=C,v=B,V=I,k=D,U=F,w=O;return s(),r(w,{ref:"form","label-width":"80px",size:"large"},{default:t(()=>[l(U,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l(u,{label:"页面标题"},{default:t(()=>[l(_,{modelValue:a(o).title_type,"onUpdate:modelValue":e[0]||(e[0]=n=>a(o).title_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[7]||(e[7]=[p("文字",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[8]||(e[8]=[p("图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.title_type==1?(s(),r(u,{key:0},{default:t(()=>[l(v,{modelValue:a(o).title,"onUpdate:modelValue":e[1]||(e[1]=n=>a(o).title=n),maxlength:"8","show-word-limit":"",class:"w-[300px]",placeholder:"请输入页面标题"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.title_type==2?(s(),r(u,{key:1},{default:t(()=>[l(V,{modelValue:a(o).title_img,"onUpdate:modelValue":e[2]||(e[2]=n=>a(o).title_img=n),limit:1,size:"100px"},null,8,["modelValue"]),e[9]||(e[9]=b("div",{class:"form-tips"},"建议图片尺寸:300px*40px",-1))]),_:1})):i("",!0),d.content.title_type==1?(s(),r(u,{key:2,label:"文字颜色"},{default:t(()=>[l(_,{modelValue:a(o).text_color,"onUpdate:modelValue":e[3]||(e[3]=n=>a(o).text_color=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[10]||(e[10]=[p("白色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[11]||(e[11]=[p("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(u,{label:"页面背景"},{default:t(()=>[l(_,{modelValue:a(o).bg_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(o).bg_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[12]||(e[12]=[p("背景颜色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[13]||(e[13]=[p("背景图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.bg_type==1?(s(),r(u,{key:3},{default:t(()=>[l(k,{modelValue:a(o).bg_color,"onUpdate:modelValue":e[5]||(e[5]=n=>a(o).bg_color=n),"reset-color":"#F5F5F5"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.bg_type==2?(s(),r(u,{key:4},{default:t(()=>[l(V,{modelValue:a(o).bg_image,"onUpdate:modelValue":e[6]||(e[6]=n=>a(o).bg_image=n),limit:1,size:"100px"},null,8,["modelValue"]),e[14]||(e[14]=b("div",{class:"form-tips"},"建议图片尺寸:750px*高度不限",-1))]),_:1})):i("",!0)]),_:1})]),_:1},512)}}});export{G as _};
+========
+import{o as E,q as s,O as r,D as t,v as l,bg as F,b6 as C,bc as N,u as a,bf as z,L as p,b7 as B,P as i,s as b,b9 as O,p as j}from"./.pnpm-BadRMC3e.js";import{_ as D}from"./index.vue_vue_type_script_setup_true_lang-BhTBtKLt.js";import{_ as I}from"./picker-Bo_aGeCY.js";const G=E({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(d,{emit:g}){const y=g,x=d,o=j({get:()=>x.content,set:f=>{y("update:content",f)}});return(f,e)=>{const m=z,_=N,u=C,v=B,V=I,k=D,U=F,w=O;return s(),r(w,{ref:"form","label-width":"80px",size:"large"},{default:t(()=>[l(U,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l(u,{label:"页面标题"},{default:t(()=>[l(_,{modelValue:a(o).title_type,"onUpdate:modelValue":e[0]||(e[0]=n=>a(o).title_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[7]||(e[7]=[p("文字",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[8]||(e[8]=[p("图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.title_type==1?(s(),r(u,{key:0},{default:t(()=>[l(v,{modelValue:a(o).title,"onUpdate:modelValue":e[1]||(e[1]=n=>a(o).title=n),maxlength:"8","show-word-limit":"",class:"w-[300px]",placeholder:"请输入页面标题"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.title_type==2?(s(),r(u,{key:1},{default:t(()=>[l(V,{modelValue:a(o).title_img,"onUpdate:modelValue":e[2]||(e[2]=n=>a(o).title_img=n),limit:1,size:"100px"},null,8,["modelValue"]),e[9]||(e[9]=b("div",{class:"form-tips"},"建议图片尺寸:300px*40px",-1))]),_:1})):i("",!0),d.content.title_type==1?(s(),r(u,{key:2,label:"文字颜色"},{default:t(()=>[l(_,{modelValue:a(o).text_color,"onUpdate:modelValue":e[3]||(e[3]=n=>a(o).text_color=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[10]||(e[10]=[p("白色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[11]||(e[11]=[p("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(u,{label:"页面背景"},{default:t(()=>[l(_,{modelValue:a(o).bg_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(o).bg_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[12]||(e[12]=[p("背景颜色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[13]||(e[13]=[p("背景图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.bg_type==1?(s(),r(u,{key:3},{default:t(()=>[l(k,{modelValue:a(o).bg_color,"onUpdate:modelValue":e[5]||(e[5]=n=>a(o).bg_color=n),"reset-color":"#F5F5F5"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.bg_type==2?(s(),r(u,{key:4},{default:t(()=>[l(V,{modelValue:a(o).bg_image,"onUpdate:modelValue":e[6]||(e[6]=n=>a(o).bg_image=n),limit:1,size:"100px"},null,8,["modelValue"]),e[14]||(e[14]=b("div",{class:"form-tips"},"建议图片尺寸:750px*高度不限",-1))]),_:1})):i("",!0)]),_:1})]),_:1},512)}}});export{G as _};
+>>>>>>>> yz-0803:server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-QoAIF5QX.js
diff --git a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-rek2PHbH.js b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-rek2PHbH.js
index a28c9e931..643b3988c 100644
--- a/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-rek2PHbH.js
+++ b/server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-rek2PHbH.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-rek2PHbH.js
import{o as E,q as s,O as r,D as t,v as l,bg as F,b6 as C,bc as N,u as a,bf as z,L as p,b7 as B,P as i,s as b,b9 as O,p as j}from"./.pnpm-BadRMC3e.js";import{_ as D}from"./index.vue_vue_type_script_setup_true_lang-BhTBtKLt.js";import{_ as I}from"./picker-BV4TmQgU.js";const G=E({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(d,{emit:g}){const y=g,x=d,o=j({get:()=>x.content,set:f=>{y("update:content",f)}});return(f,e)=>{const m=z,_=N,u=C,v=B,V=I,k=D,U=F,w=O;return s(),r(w,{ref:"form","label-width":"80px",size:"large"},{default:t(()=>[l(U,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l(u,{label:"页面标题"},{default:t(()=>[l(_,{modelValue:a(o).title_type,"onUpdate:modelValue":e[0]||(e[0]=n=>a(o).title_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[7]||(e[7]=[p("文字",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[8]||(e[8]=[p("图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.title_type==1?(s(),r(u,{key:0},{default:t(()=>[l(v,{modelValue:a(o).title,"onUpdate:modelValue":e[1]||(e[1]=n=>a(o).title=n),maxlength:"8","show-word-limit":"",class:"w-[300px]",placeholder:"请输入页面标题"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.title_type==2?(s(),r(u,{key:1},{default:t(()=>[l(V,{modelValue:a(o).title_img,"onUpdate:modelValue":e[2]||(e[2]=n=>a(o).title_img=n),limit:1,size:"100px"},null,8,["modelValue"]),e[9]||(e[9]=b("div",{class:"form-tips"},"建议图片尺寸:300px*40px",-1))]),_:1})):i("",!0),d.content.title_type==1?(s(),r(u,{key:2,label:"文字颜色"},{default:t(()=>[l(_,{modelValue:a(o).text_color,"onUpdate:modelValue":e[3]||(e[3]=n=>a(o).text_color=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[10]||(e[10]=[p("白色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[11]||(e[11]=[p("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(u,{label:"页面背景"},{default:t(()=>[l(_,{modelValue:a(o).bg_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(o).bg_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[12]||(e[12]=[p("背景颜色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[13]||(e[13]=[p("背景图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.bg_type==1?(s(),r(u,{key:3},{default:t(()=>[l(k,{modelValue:a(o).bg_color,"onUpdate:modelValue":e[5]||(e[5]=n=>a(o).bg_color=n),"reset-color":"#F5F5F5"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.bg_type==2?(s(),r(u,{key:4},{default:t(()=>[l(V,{modelValue:a(o).bg_image,"onUpdate:modelValue":e[6]||(e[6]=n=>a(o).bg_image=n),limit:1,size:"100px"},null,8,["modelValue"]),e[14]||(e[14]=b("div",{class:"form-tips"},"建议图片尺寸:750px*高度不限",-1))]),_:1})):i("",!0)]),_:1})]),_:1},512)}}});export{G as _};
+========
+import{o as E,q as s,O as r,D as t,v as l,bg as F,b6 as C,bc as N,u as a,bf as z,L as p,b7 as B,P as i,s as b,b9 as O,p as j}from"./.pnpm-BadRMC3e.js";import{_ as D}from"./index.vue_vue_type_script_setup_true_lang-BhTBtKLt.js";import{_ as I}from"./picker-Bo_aGeCY.js";const G=E({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},emits:["update:content"],setup(d,{emit:g}){const y=g,x=d,o=j({get:()=>x.content,set:f=>{y("update:content",f)}});return(f,e)=>{const m=z,_=N,u=C,v=B,V=I,k=D,U=F,w=O;return s(),r(w,{ref:"form","label-width":"80px",size:"large"},{default:t(()=>[l(U,{shadow:"never",class:"!border-none flex mt-2"},{default:t(()=>[l(u,{label:"页面标题"},{default:t(()=>[l(_,{modelValue:a(o).title_type,"onUpdate:modelValue":e[0]||(e[0]=n=>a(o).title_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[7]||(e[7]=[p("文字",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[8]||(e[8]=[p("图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.title_type==1?(s(),r(u,{key:0},{default:t(()=>[l(v,{modelValue:a(o).title,"onUpdate:modelValue":e[1]||(e[1]=n=>a(o).title=n),maxlength:"8","show-word-limit":"",class:"w-[300px]",placeholder:"请输入页面标题"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.title_type==2?(s(),r(u,{key:1},{default:t(()=>[l(V,{modelValue:a(o).title_img,"onUpdate:modelValue":e[2]||(e[2]=n=>a(o).title_img=n),limit:1,size:"100px"},null,8,["modelValue"]),e[9]||(e[9]=b("div",{class:"form-tips"},"建议图片尺寸:300px*40px",-1))]),_:1})):i("",!0),d.content.title_type==1?(s(),r(u,{key:2,label:"文字颜色"},{default:t(()=>[l(_,{modelValue:a(o).text_color,"onUpdate:modelValue":e[3]||(e[3]=n=>a(o).text_color=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[10]||(e[10]=[p("白色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[11]||(e[11]=[p("黑色",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})):i("",!0),l(u,{label:"页面背景"},{default:t(()=>[l(_,{modelValue:a(o).bg_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(o).bg_type=n)},{default:t(()=>[l(m,{value:"1"},{default:t(()=>[...e[12]||(e[12]=[p("背景颜色",-1)])]),_:1}),l(m,{value:"2"},{default:t(()=>[...e[13]||(e[13]=[p("背景图片",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.content.bg_type==1?(s(),r(u,{key:3},{default:t(()=>[l(k,{modelValue:a(o).bg_color,"onUpdate:modelValue":e[5]||(e[5]=n=>a(o).bg_color=n),"reset-color":"#F5F5F5"},null,8,["modelValue"])]),_:1})):i("",!0),d.content.bg_type==2?(s(),r(u,{key:4},{default:t(()=>[l(V,{modelValue:a(o).bg_image,"onUpdate:modelValue":e[6]||(e[6]=n=>a(o).bg_image=n),limit:1,size:"100px"},null,8,["modelValue"]),e[14]||(e[14]=b("div",{class:"form-tips"},"建议图片尺寸:750px*高度不限",-1))]),_:1})):i("",!0)]),_:1})]),_:1},512)}}});export{G as _};
+>>>>>>>> yz-0803:server/public/admin/assets/attr.vue_vue_type_script_setup_true_lang-QoAIF5QX.js
diff --git a/server/public/admin/assets/auth-BTeXdKBJ.js b/server/public/admin/assets/auth-BTeXdKBJ.js
new file mode 100644
index 000000000..b34b0e021
--- /dev/null
+++ b/server/public/admin/assets/auth-BTeXdKBJ.js
@@ -0,0 +1 @@
+import{_ as o}from"./auth.vue_vue_type_script_setup_true_lang-BUtbO3Z1.js";import"./.pnpm-BadRMC3e.js";import"./menu-DXCUns_Y.js";import"./index-C53kWH2_.js";import"./role-CjRVNnAJ.js";import"./index-ByXR3YHf.js";export{o as default};
diff --git a/server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-BUtbO3Z1.js b/server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-BUtbO3Z1.js
new file mode 100644
index 000000000..cf67e0211
--- /dev/null
+++ b/server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-BUtbO3Z1.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/auth.vue_vue_type_script_setup_true_lang-D9HXgFQ_.js
+import{o as O,q as k,r as U,v as s,D as d,ac as H,O as I,b9 as j,u as c,a2 as z,b6 as G,s as y,bd as J,C as P,bU as Q,bi as W,a8 as f,M as r,ba as X,n as b}from"./.pnpm-BadRMC3e.js";import{m as Y}from"./menu-Bcewhq3C.js";import{a as Z}from"./role-Dvf0ojCz.js";import{_ as $}from"./index-2cRJ7Pdu.js";import{x as ee}from"./index-C360OAjQ.js";const te={class:"edit-popup"},re=O({__name:"auth",emits:["success","close"],setup(ae,{expose:x,emit:C}){const _=C,l=f(),h=f(),u=f(),g=r(!1),i=r(!0),m=r(!1),v=r([]),p=r([]),o=X({id:"",name:"",desc:"",sort:0,data_scope:1,menu_id:[]}),E={name:[{required:!0,message:"请输入名称",trigger:["blur"]}]},w=()=>{m.value=!0,Y().then(e=>{p.value=e,v.value=ee(e),b(()=>{A()}),m.value=!1})},R=()=>{var a,n;const e=(a=l.value)==null?void 0:a.getCheckedKeys(),t=(n=l.value)==null?void 0:n.getHalfCheckedKeys();return e==null||e.unshift.apply(e,t),e},A=()=>{o.menu_id.forEach(e=>{b(()=>{var t;(t=l.value)==null||t.setChecked(e,!0,!1)})})},D=e=>{const t=p.value;for(let a=0;a 订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收与尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同。 订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收与尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同。 订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收与尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同。 订单池默认与处方订单列表同源:创建时间 start_time~end_time + fulfillment_status(默认完成态 3),账号列表可见性/数据域一并生效。 选结算月仍可套用「物流签收与尾款支付均须在结算月 7 日 24 点前」拆分「本期提成 / 顺延下期」 (仅有签收在范围内、尾款晚于截止仍会顺延); 展示部门/渠道下拉与列表不同,勾选后会与列表计数不同。 提成结算业绩
提成结算业绩
提成结算业绩
提成结算业绩
{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{o as K,R as rt,ba as U,ap as ct,q as l,r as d,s as t,v as a,D as n,L as O,u as w,by as I,K as dt,cT as pt,w as ut,T as r,bn as bt,bm as mt,c8 as _t,F as C,G as A,c7 as ht,O as v,cJ as D,bB as yt,P as W,cZ as wt,cL as vt,p as S,M as J}from"./.pnpm-BadRMC3e.js";import{l as ft,O as V,Q as gt,_ as kt}from"./index-C53kWH2_.js";import{aB as xt}from"./tcm-BWNwZkyX.js";import{u as St}from"./order-DRqgHj66.js";import{u as j}from"./getExposeType-CWAjpevD.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"},Lt={class:"wb-toolbar"},Et={class:"wb-section-body"},Vt={class:"wb-kpi wb-kpi--violet"},Rt={class:"wb-kpi-value"},Bt={class:"wb-kpi wb-kpi--amber"},Pt={class:"wb-kpi-value wb-kpi-value--sm"},Ft={class:"wb-rank-strip wb-rank-strip--compact"},Wt={key:0,class:"wb-rank-chips"},Tt={key:1,class:"wb-rank-empty"},Ht={class:"wb-chart-card"},Mt={class:"wb-chart-card"},Ut={class:"wb-chart-card"},It={class:"wb-chart-card wb-ranking-card"},jt={key:0,class:"wb-ranking-list"},qt={class:"wb-ranking-rank"},Gt={class:"wb-ranking-name"},Jt={class:"wb-ranking-meta"},Kt={class:"wb-ranking-money"},Qt={key:0,class:"wb-dept-block"},Yt={class:"wb-dept-card wb-dept-card--order"},Zt={class:"wb-dept-card-head"},Xt={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"},ne={class:"wb-section-icon wb-section-icon--blue"},ie={class:"wb-section-sub"},re={class:"wb-toolbar"},ce={class:"wb-section-body"},de={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"},ve={class:"wb-dept-card-head"},fe={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=K({name:"workbench"}),Le=K({...ze,setup(Ee){const g=ft(),T=j(),H=j(),Q=j(),M=["#5b7cfa","#36cfc9","#ffc53d","#ff7a45","#b37feb","#597ef7","#73d13d","#ff85c0"];function q(s){if(s==null)return 0;const e=parseFloat(String(s).replace(/,/g,""));return Number.isFinite(e)?e:0}const p=U({days:0,departments:[],today_ranking:[],ranking:[],chart:{xAxis:[],series:[]}}),Y=S(()=>(p.departments||[]).some(s=>Number(s.total)>0)),Z=S(()=>{const s=(p.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:M,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}
+>>>>>>>> yz-0803:server/public/admin/assets/index-CdkbuHoI.js
{c}`},data:s}]}}),X=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=()=>{xt({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(()=>{})},B=J(-1),P=J(0),_=U({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=>q(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:M,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:q(e.amount)})).filter(e=>e.value>0);return{color:M,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=P.value,h=new Date,b=new Date;return e===0?(b.setHours(0,0,0,0),`${F(b)} 至 ${F(h)}`):(b.setDate(b.getDate()-(e||7)),`${F(b)} 至 ${F(h)}`)});function F(s){return s.getFullYear()+"-"+String(s.getMonth()+1).padStart(2,"0")+"-"+String(s.getDate()).padStart(2,"0")}const lt=S(()=>{var b,i,k;const s=g.theme,e=(((b=_.chart)==null?void 0:b.series)||[]).map(m=>({...m,name:m.name||"单数",type:"bar",barWidth:"46%",itemStyle:{borderRadius:[8,8,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(s,.72)},{offset:1,color:s}]}}})),h=((i=e[0])==null?void 0:i.data)||[];return{color:[s,"#fa8c16"],legend:{data:["单数","趋势"],top:4},xAxis:{type:"category",data:((k=_.chart)==null?void 0:k.xAxis)||[],axisLabel:{rotate:28,fontSize:11},axisLine:{lineStyle:{color:"#e4e7ec"}}},yAxis:{type:"value",name:"单数",splitLine:{lineStyle:{type:"dashed",color:"#eef0f4"}}},tooltip:{trigger:"axis"},grid:{left:"2%",right:"2%",bottom:"12%",top:48,containLabel:!0},series:[...e,{name:"趋势",type:"line",smooth:.35,symbol:"circle",symbolSize:7,lineStyle:{width:3,color:"#fa8c16"},itemStyle:{color:"#fa8c16"},data:h}]}}),N=()=>{St({order_type:B.value,days:P.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(()=>{})},nt=()=>{G(),R(),N()};rt(()=>g.theme,()=>{it()});const u=U({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=()=>{gt().then(s=>{var e,h,b,i,k,m,f,x,$,z,L,E;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=(f=s.sale)==null?void 0:f.date)==null||x.reverse().forEach(o=>{u.saleOption.xAxis.data.push(o)}),(E=(L=(z=($=s.sale)==null?void 0:$.list)==null?void 0:z[0])==null?void 0:L.data)==null||E.forEach(o=>{let c=o;o<=50&&(c={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(c)})}).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=T.value)==null||e.clear(),(h=H.value)==null||h.clear(),(b=T.value)==null||b.setOption(u.saleOption),(i=H.value)==null||i.setOption(u.visitorOption)};return ct(()=>{G(),R(),N()}),(s,e)=>{var $,z,L,E;const h=dt,b=ut,i=bt,k=mt,m=_t,f=ht,x=yt;return l(),d("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:w(I),round:"",class:"wb-refresh-btn",onClick:nt},{default:n(()=>[...e[3]||(e[3]=[O(" 刷新全部 ",-1)])]),_:1},8,["icon"])]),t("section",At,[t("div",Dt,[t("div",Nt,[t("span",$t,[a(b,null,{default:n(()=>[a(w(pt))]),_:1})]),t("div",null,[e[5]||(e[5]=t("div",{class:"wb-section-name"},"订单统计",-1)),t("div",zt,r(ot.value)+" · "+r(_.order_type_name||"—"),1)])]),t("div",Lt,[a(k,{modelValue:B.value,"onUpdate:modelValue":e[0]||(e[0]=o=>B.value=o),class:"wb-select wb-select--wide",onChange:N},{default:n(()=>[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:P.value,"onUpdate:modelValue":e[1]||(e[1]=o=>P.value=o),class:"wb-select",onChange:N},{default:n(()=>[a(i,{label:"今天",value:0}),a(i,{label:"最近7天",value:7}),a(i,{label:"最近30天",value:30})]),_:1},8,["modelValue"]),a(h,{icon:w(I),circle:"",onClick:N},null,8,["icon"])])]),t("div",Et,[a(f,{gutter:16,class:"wb-kpi-row"},{default:n(()=>[a(m,{xs:24,sm:8},{default:n(()=>[t("div",Vt,[e[6]||(e[6]=t("div",{class:"wb-kpi-label"},"今日单数",-1)),t("div",Rt,r(_.today_total??0),1)])]),_:1}),a(m,{xs:24,sm:8},{default:n(()=>[t("div",Bt,[e[7]||(e[7]=t("div",{class:"wb-kpi-label"},"今日金额",-1)),t("div",Pt,"¥"+r(_.today_amount??"0.00"),1)])]),_:1}),a(m,{xs:24,sm:8},{default:n(()=>{var o;return[t("div",Ft,[e[8]||(e[8]=t("span",{class:"wb-rank-strip-label"},"今日 TOP",-1)),(o=_.today_ranking)!=null&&o.length?(l(),d("div",Wt,[(l(!0),d(C,null,A(_.today_ranking.slice(0,4),(c,y)=>(l(),d("span",{key:c.id,class:"wb-rank-chip wb-rank-chip--dense"},[t("em",null,r(Number(y)+1),1),O(" "+r(c.name)+" ",1),t("strong",null,r(c.count),1),t("small",null,"¥"+r(c.amount),1)]))),128))])):(l(),d("span",Tt,"暂无"))])]}),_:1})]),_:1}),a(f,{gutter:20,class:"wb-chart-row"},{default:n(()=>[a(m,{xs:24,lg:10},{default:n(()=>[t("div",Ht,[e[9]||(e[9]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门单数占比")],-1)),tt.value?(l(),v(w(D),{key:0,class:"wb-chart",style:{height:"300px"},option:st.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:n(()=>{var o,c;return[t("div",Mt,[e[10]||(e[10]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"开单人 · 单数排行"),t("span",{class:"wb-chart-hint"},"柱状 + 趋势")],-1)),(c=(o=_.chart)==null?void 0:o.xAxis)!=null&&c.length?(l(),v(w(D),{key:"order-bar-"+B.value,class:"wb-chart",style:{height:"300px"},option:lt.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1})]),_:1}),a(f,{gutter:20,class:"wb-chart-row"},{default:n(()=>[a(m,{xs:24,lg:10},{default:n(()=>[t("div",Ut,[e[11]||(e[11]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门金额占比")],-1)),et.value?(l(),v(w(D),{key:0,class:"wb-chart",style:{height:"300px"},option:at.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:n(()=>{var o;return[t("div",It,[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(),d("div",jt,[(l(!0),d(C,null,A(_.ranking,(c,y)=>(l(),d("div",{key:c.id,class:"wb-ranking-item"},[t("span",qt,r(Number(y)+1),1),t("span",Gt,r(c.name),1),t("span",Jt,[t("b",null,r(c.count),1),e[12]||(e[12]=O(" 单 ",-1)),t("span",Kt,"¥"+r(c.amount),1)])]))),128))])):(l(),v(x,{key:1,description:"暂无排行"}))])]}),_:1})]),_:1}),($=_.departments)!=null&&$.length?(l(),d("div",Qt,[e[14]||(e[14]=t("div",{class:"wb-dept-title"},"按部门统计",-1)),a(f,{gutter:16},{default:n(()=>[(l(!0),d(C,null,A(_.departments,o=>(l(),v(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:n(()=>{var c;return[t("div",Yt,[t("div",Zt,[O(r(o.dept_name)+" ",1),t("span",Xt,r(o.total)+" 单 · ¥"+r(o.amount),1)]),t("div",te,[(l(!0),d(C,null,A(o.members,y=>(l(),d("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,r(y.name),1),t("span",ee,[O(r(y.count)+" ",1),t("small",null,"¥"+r(y.amount),1)])]))),128)),(c=o.members)!=null&&c.length?W("",!0):(l(),d("div",se,"暂无"))])])]}),_:2},1024))),128))]),_:1})])):W("",!0)])]),t("section",ae,[t("div",oe,[t("div",le,[t("span",ne,[a(b,null,{default:n(()=>[a(w(wt))]),_:1})]),t("div",null,[e[15]||(e[15]=t("div",{class:"wb-section-name"},"医助理诊单统计",-1)),t("div",ie,r((z=p.date_range)==null?void 0:z[0])+" 至 "+r((L=p.date_range)==null?void 0:L[1]),1)])]),t("div",re,[a(k,{modelValue:p.days,"onUpdate:modelValue":e[2]||(e[2]=o=>p.days=o),class:"wb-select",onChange:R},{default:n(()=>[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:w(I),circle:"",onClick:R},null,8,["icon"])])]),t("div",ce,[a(f,{gutter:16,class:"wb-kpi-row"},{default:n(()=>[a(m,{xs:24,sm:8,lg:6},{default:n(()=>[t("div",de,[e[16]||(e[16]=t("div",{class:"wb-kpi-label"},"今日创建诊单",-1)),t("div",pe,r(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:n(()=>{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(),d("div",be,[(l(!0),d(C,null,A(p.today_ranking.slice(0,6),(c,y)=>(l(),d("span",{key:c.id,class:"wb-rank-chip"},[t("em",null,r(y+1),1),O(" "+r(c.name)+" ",1),t("strong",null,r(c.count),1)]))),128))])):(l(),d("span",me,"暂无排行数据"))])]}),_:1})]),_:1}),a(f,{gutter:20,class:"wb-chart-row"},{default:n(()=>[a(m,{xs:24,lg:15},{default:n(()=>{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(),v(w(D),{key:0,ref_key:"assistantChart",ref:Q,class:"wb-chart",style:{height:"340px"},option:X.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1}),a(m,{xs:24,lg:9},{default:n(()=>[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)),Y.value?(l(),v(w(D),{key:0,class:"wb-chart",style:{height:"340px"},option:Z.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无部门数据"}))])]),_:1})]),_:1}),(E=p.departments)!=null&&E.length?(l(),d("div",ye,[e[21]||(e[21]=t("div",{class:"wb-dept-title"},"按部门明细",-1)),a(f,{gutter:16},{default:n(()=>[(l(!0),d(C,null,A(p.departments,o=>(l(),v(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:n(()=>{var c;return[t("div",we,[t("div",ve,[O(r(o.dept_name)+" ",1),t("span",fe,"共 "+r(o.total),1)]),t("div",ge,[(l(!0),d(C,null,A(o.assistants,y=>(l(),d("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,r(y.name),1),t("span",ke,r(y.count),1)]))),128)),(c=o.assistants)!=null&&c.length?W("",!0):(l(),d("div",xe,"暂无医助"))])])]}),_:2},1024))),128))]),_:1})])):W("",!0)])]),t("section",Se,[t("div",Oe,[t("div",Ce,[t("span",Ae,[a(b,null,{default:n(()=>[a(w(vt))]),_: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(f,{gutter:20},{default:n(()=>[a(m,{xs:24,lg:14},{default:n(()=>[t("div",Ne,[e[23]||(e[23]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"访问量趋势")],-1)),a(w(D),{ref_key:"visitorChart",ref:H,class:"wb-chart",style:{height:"320px"},option:u.visitorOption,autoresize:!0},null,8,["option"])])]),_:1}),a(m,{xs:24,lg:10},{default:n(()=>[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(w(D),{ref_key:"saleChart",ref:T,class:"wb-chart",style:{height:"320px"},option:u.saleOption,autoresize:!0},null,8,["option"])])]),_:1})]),_:1})])])])}}}),We=kt(Le,[["__scopeId","data-v-2f6eaa33"]]);export{We as default};
diff --git a/server/public/admin/assets/index-BqyG0pwQ.js b/server/public/admin/assets/index-BqyG0pwQ.js
index 9b89e38fb..22487baec 100644
--- a/server/public/admin/assets/index-BqyG0pwQ.js
+++ b/server/public/admin/assets/index-BqyG0pwQ.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-BqyG0pwQ.js
import{o as G,W as he,ap as L,be as we,q as s,r as v,v as o,D as n,b9 as Ce,u as l,b6 as Ee,bc as Ve,bb as xe,L as d,O as u,bp as Se,C as A,P as R,bK as je,K as We,bg as De,s as c,F as U,G as z,T as g,ae as Oe,ac as w,bj as Re,bk as Te,a1 as Fe,bi as Ye,a8 as $e,M as T,ba as K,p as C,E as Me,n as q}from"./.pnpm-BadRMC3e.js";import{_ as Ne}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as Pe,k as Be,i as Ie,_ as Le}from"./index-C360OAjQ.js";import{d as Ae,e as Ue}from"./self_input_stats-DkfQGmqP.js";import{d as ze}from"./department-BFDDlesw.js";import{u as Ke}from"./usePaging-DMqUvFG-.js";import{_ as qe}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";import{_ as Ge}from"./yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js";import{u as Qe}from"./useMediaSourceOptions-CiFUiWgv.js";import"./index-2cRJ7Pdu.js";const He={class:"self-input-stats-page"},Je={class:"stats-kpi-grid"},Xe={class:"stats-kpi-label"},Ze={class:"card-header"},et={class:"card-header-main"},tt={class:"card-hint"},at={class:"card-header-actions"},nt={class:"dept-cell"},ot={key:1},lt={key:2,class:"text-gray-400"},st={class:"flex justify-end mt-4"},it=G({name:"selfInputStats"}),rt=G({...it,setup(dt){const Q=he(),E=$e(),V=T(!1),_=T([]),S=T([]),{mediaSourceOptions:F,mediaSourceLoading:Y,loadMediaSourceOptions:H,refreshMediaSourceOptions:j}=Qe(),J={value:"id",label:"name",children:"children"},f=K({date_range:[],summary:{},can_view_finance:!1}),$=new Set(["account_cost","cash_cost","roi"]),M=C(()=>!!f.can_view_finance),i=K({media_source:"",dept_id:void 0,time_type:"today",start_date:"",end_date:""}),W=C(()=>Be("stats.personal_account_cost/lists")||""),X=()=>{W.value&&Q.push(W.value)},Z=async t=>{i.time_type==="custom"&&(t.start_date=_.value[0]||"",t.end_date=_.value[1]||"");const e=await Ae(t);return Object.assign(f,(e==null?void 0:e.extend)||{}),e},ee=async()=>{try{const t=await ze({apply_data_scope:1});Array.isArray(t)&&(S.value=t)}catch{S.value=[]}},te=t=>{t&&j()},ae=async()=>{await j(),await m()};L(()=>{ee(),H()});const{pager:p,getLists:ne}=Ke({fetchFun:Z,params:i,firstLoading:!0}),N=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"order_amount",label:"订单金额",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"total_open_rate",label:"总开口率",type:"percent"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"open_appointment_rate",label:"开口挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"open_receive_rate",label:"开口接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],P=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"order_amount",label:"订单金额",type:"money",minWidth:110},{key:"account_cost",label:"账户消耗",type:"money",minWidth:110},{key:"total_open_rate",label:"总开口率",type:"percent",minWidth:100},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:110},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",minWidth:110},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:120},{key:"open_receive_rate",label:"开口接诊率",type:"percent",minWidth:110},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:100},{key:"cash_cost",label:"现金成本",type:"money",minWidth:100},{key:"roi",label:"ROI",type:"ratio",minWidth:80}],oe=C(()=>M.value?N:N.filter(t=>!$.has(t.key))),le=C(()=>M.value?P:P.filter(t=>!$.has(t.key))),se=C(()=>{var t;return(t=f.date_range)!=null&&t.length?`${f.date_range[0]} 至 ${f.date_range[1]}`:"未选择"}),m=async()=>{try{await ne()}catch(t){console.error("获取自录转化统计失败:",t),Me.error((t==null?void 0:t.msg)||"获取统计数据失败")}},ie=()=>{i.time_type!=="custom"&&(_.value=[],p.page=1,m())},re=()=>{_.value.length===2&&(p.page=1,m())},D=()=>{p.page=1,m()},de=()=>{i.media_source="",i.dept_id=void 0,i.time_type="today",_.value=[],p.page=1,p.size=15,m()},B=(t,e,r="count")=>{const b=(e==null?void 0:e[t])??0;return r==="money"?`¥${Number(b||0).toFixed(2)}`:r==="percent"?`${Number(b||0).toFixed(2)}%`:r==="ratio"?Number(b||0).toFixed(2):String(b??0)},pe=async()=>{var t;await j(),V.value=!0,await q(),(t=E.value)==null||t.open("add")},ce=async t=>{var e,r;V.value=!0,await q(),(e=E.value)==null||e.open("edit"),(r=E.value)==null||r.setFormData(t)},ue=async t=>{await Ie.confirm("确定删除该业绩记录?"),await Ue({id:t}),m()};return L(async()=>{await m()}),(t,e)=>{const r=xe,b=Ve,h=Ee,_e=Se,me=je,k=We,ye=Ce,I=De,fe=Pe,y=Te,be=Fe,ke=Re,ve=Ne,x=we("perms"),ge=Ye;return s(),v("div",He,[o(I,{class:"!border-none",shadow:"never"},{default:n(()=>[o(ye,{inline:!0,model:l(i),class:"stats-filter-form"},{default:n(()=>[o(h,{label:"时间范围"},{default:n(()=>[o(b,{modelValue:l(i).time_type,"onUpdate:modelValue":e[0]||(e[0]=a=>l(i).time_type=a),onChange:ie},{default:n(()=>[o(r,{label:"today"},{default:n(()=>[...e[6]||(e[6]=[d("今天",-1)])]),_:1}),o(r,{label:"yesterday"},{default:n(()=>[...e[7]||(e[7]=[d("昨天",-1)])]),_:1}),o(r,{label:"week"},{default:n(()=>[...e[8]||(e[8]=[d("最近7天",-1)])]),_:1}),o(r,{label:"month"},{default:n(()=>[...e[9]||(e[9]=[d("最近30天",-1)])]),_:1}),o(r,{label:"custom"},{default:n(()=>[...e[10]||(e[10]=[d("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(i).time_type==="custom"?(s(),u(h,{key:0},{default:n(()=>[o(_e,{modelValue:l(_),"onUpdate:modelValue":e[1]||(e[1]=a=>A(_)?_.value=a:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:re},null,8,["modelValue"])]),_:1})):R("",!0),o(h,{label:"部门"},{default:n(()=>[o(me,{modelValue:l(i).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>l(i).dept_id=a),data:l(S),"node-key":"id",props:J,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",style:{width:"220px"},onChange:D},null,8,["modelValue","data"])]),_:1}),o(h,{label:"自媒体来源"},{default:n(()=>[o(qe,{modelValue:l(i).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>l(i).media_source=a),options:l(F),loading:l(Y),placeholder:"全部来源","allow-create":!1,"select-style":"width: 220px",onChange:D,onVisibleChange:te},null,8,["modelValue","options","loading"])]),_:1}),o(h,null,{default:n(()=>[o(k,{type:"primary",loading:l(p).loading,onClick:D},{default:n(()=>[...e[11]||(e[11]=[d("查询",-1)])]),_:1},8,["loading"]),o(k,{onClick:de},{default:n(()=>[...e[12]||(e[12]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),c("div",Je,[(s(!0),v(U,null,z(l(oe),a=>(s(),v("div",{key:a.key,class:"stats-kpi-card"},[c("div",Xe,g(a.label),1),c("div",{class:Oe(["stats-kpi-value",{"is-money":a.type==="money"}])},g(B(a.key,l(f).summary,a.type)),3)]))),128))]),o(I,{class:"!border-none mt-4 stats-detail-card",shadow:"never"},{header:n(()=>[c("div",Ze,[c("div",et,[e[13]||(e[13]=c("span",{class:"card-title"},"业绩明细",-1)),c("span",tt,g(l(se)),1)]),c("div",at,[w((s(),u(k,{type:"primary",onClick:pe},{icon:n(()=>[o(fe,{name:"el-icon-Plus"})]),default:n(()=>[e[14]||(e[14]=d(" 新增业绩 ",-1))]),_:1})),[[x,["stats.personal_yeji/add"]]]),l(W)?w((s(),u(k,{key:0,onClick:X},{default:n(()=>[...e[15]||(e[15]=[d(" 账户消耗录入 ",-1)])]),_:1})),[[x,["stats.personal_account_cost/lists"]]]):R("",!0)])])]),default:n(()=>[w((s(),u(ke,{data:l(p).lists,border:"",size:"large","max-height":"640"},{default:n(()=>[o(y,{label:"日期",prop:"yeji_date","min-width":"110",fixed:"left"}),o(y,{label:"自媒体来源",prop:"media_source","min-width":"140","show-overflow-tooltip":""}),o(y,{label:"录入人",prop:"creator_name","min-width":"100"}),o(y,{label:"部门",prop:"dept_name","min-width":"140"},{default:n(({row:a})=>[a.dept_path?(s(),u(be,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:n(()=>[c("span",nt,g(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(s(),v("span",ot,g(a.dept_name),1)):(s(),v("span",lt,"未分配"))]),_:1}),(s(!0),v(U,null,z(l(le),a=>(s(),u(y,{key:a.key,label:a.label,"min-width":a.minWidth||100,align:"right"},{default:n(({row:O})=>[d(g(B(a.key,O,a.type)),1)]),_:2},1032,["label","min-width"]))),128)),o(y,{label:"备注",prop:"remark","min-width":"160","show-overflow-tooltip":""}),o(y,{label:"操作",width:"140",fixed:"right"},{default:n(({row:a})=>[w((s(),u(k,{type:"primary",link:"",onClick:O=>ce(a)},{default:n(()=>[...e[16]||(e[16]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/edit"]]]),w((s(),u(k,{type:"danger",link:"",onClick:O=>ue(a.id)},{default:n(()=>[...e[17]||(e[17]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/delete"]]])]),_:1})]),_:1},8,["data"])),[[ge,l(p).loading]]),c("div",st,[o(ve,{modelValue:l(p),"onUpdate:modelValue":e[4]||(e[4]=a=>A(p)?p.value=a:null),onChange:m},null,8,["modelValue"])])]),_:1}),l(V)?(s(),u(Ge,{key:0,ref_key:"yejiEditRef",ref:E,"media-source-options":l(F),"media-source-loading":l(Y),onSuccess:ae,onClose:e[5]||(e[5]=a=>V.value=!1)},null,8,["media-source-options","media-source-loading"])):R("",!0)])}}}),gt=Le(rt,[["__scopeId","data-v-47b76778"]]);export{gt as default};
+========
+import{o as G,W as he,ap as L,be as we,q as s,r as v,v as o,D as n,b9 as Ce,u as l,b6 as Ee,bc as Ve,bb as xe,L as d,O as u,bp as Se,C as A,P as R,bK as je,K as We,bg as De,s as c,F as U,G as z,T as g,ae as Oe,ac as w,bj as Re,bk as Te,a1 as Fe,bi as Ye,a8 as $e,M as T,ba as K,p as C,E as Me,n as q}from"./.pnpm-BadRMC3e.js";import{_ as Ne}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as Pe,k as Be,i as Ie,_ as Le}from"./index-C53kWH2_.js";import{d as Ae,e as Ue}from"./self_input_stats-CS42YNeC.js";import{d as ze}from"./department-drKzCnRw.js";import{u as Ke}from"./usePaging-DMqUvFG-.js";import{_ as qe}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";import{_ as Ge}from"./yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js";import{u as Qe}from"./useMediaSourceOptions-CA6EAKod.js";import"./index-ByXR3YHf.js";const He={class:"self-input-stats-page"},Je={class:"stats-kpi-grid"},Xe={class:"stats-kpi-label"},Ze={class:"card-header"},et={class:"card-header-main"},tt={class:"card-hint"},at={class:"card-header-actions"},nt={class:"dept-cell"},ot={key:1},lt={key:2,class:"text-gray-400"},st={class:"flex justify-end mt-4"},it=G({name:"selfInputStats"}),rt=G({...it,setup(dt){const Q=he(),E=$e(),V=T(!1),_=T([]),S=T([]),{mediaSourceOptions:F,mediaSourceLoading:Y,loadMediaSourceOptions:H,refreshMediaSourceOptions:j}=Qe(),J={value:"id",label:"name",children:"children"},f=K({date_range:[],summary:{},can_view_finance:!1}),$=new Set(["account_cost","cash_cost","roi"]),M=C(()=>!!f.can_view_finance),i=K({media_source:"",dept_id:void 0,time_type:"today",start_date:"",end_date:""}),W=C(()=>Be("stats.personal_account_cost/lists")||""),X=()=>{W.value&&Q.push(W.value)},Z=async t=>{i.time_type==="custom"&&(t.start_date=_.value[0]||"",t.end_date=_.value[1]||"");const e=await Ae(t);return Object.assign(f,(e==null?void 0:e.extend)||{}),e},ee=async()=>{try{const t=await ze({apply_data_scope:1});Array.isArray(t)&&(S.value=t)}catch{S.value=[]}},te=t=>{t&&j()},ae=async()=>{await j(),await m()};L(()=>{ee(),H()});const{pager:p,getLists:ne}=Ke({fetchFun:Z,params:i,firstLoading:!0}),N=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"order_amount",label:"订单金额",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"total_open_rate",label:"总开口率",type:"percent"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"open_appointment_rate",label:"开口挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"open_receive_rate",label:"开口接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],P=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"order_amount",label:"订单金额",type:"money",minWidth:110},{key:"account_cost",label:"账户消耗",type:"money",minWidth:110},{key:"total_open_rate",label:"总开口率",type:"percent",minWidth:100},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:110},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",minWidth:110},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:120},{key:"open_receive_rate",label:"开口接诊率",type:"percent",minWidth:110},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:100},{key:"cash_cost",label:"现金成本",type:"money",minWidth:100},{key:"roi",label:"ROI",type:"ratio",minWidth:80}],oe=C(()=>M.value?N:N.filter(t=>!$.has(t.key))),le=C(()=>M.value?P:P.filter(t=>!$.has(t.key))),se=C(()=>{var t;return(t=f.date_range)!=null&&t.length?`${f.date_range[0]} 至 ${f.date_range[1]}`:"未选择"}),m=async()=>{try{await ne()}catch(t){console.error("获取自录转化统计失败:",t),Me.error((t==null?void 0:t.msg)||"获取统计数据失败")}},ie=()=>{i.time_type!=="custom"&&(_.value=[],p.page=1,m())},re=()=>{_.value.length===2&&(p.page=1,m())},D=()=>{p.page=1,m()},de=()=>{i.media_source="",i.dept_id=void 0,i.time_type="today",_.value=[],p.page=1,p.size=15,m()},B=(t,e,r="count")=>{const b=(e==null?void 0:e[t])??0;return r==="money"?`¥${Number(b||0).toFixed(2)}`:r==="percent"?`${Number(b||0).toFixed(2)}%`:r==="ratio"?Number(b||0).toFixed(2):String(b??0)},pe=async()=>{var t;await j(),V.value=!0,await q(),(t=E.value)==null||t.open("add")},ce=async t=>{var e,r;V.value=!0,await q(),(e=E.value)==null||e.open("edit"),(r=E.value)==null||r.setFormData(t)},ue=async t=>{await Ie.confirm("确定删除该业绩记录?"),await Ue({id:t}),m()};return L(async()=>{await m()}),(t,e)=>{const r=xe,b=Ve,h=Ee,_e=Se,me=je,k=We,ye=Ce,I=De,fe=Pe,y=Te,be=Fe,ke=Re,ve=Ne,x=we("perms"),ge=Ye;return s(),v("div",He,[o(I,{class:"!border-none",shadow:"never"},{default:n(()=>[o(ye,{inline:!0,model:l(i),class:"stats-filter-form"},{default:n(()=>[o(h,{label:"时间范围"},{default:n(()=>[o(b,{modelValue:l(i).time_type,"onUpdate:modelValue":e[0]||(e[0]=a=>l(i).time_type=a),onChange:ie},{default:n(()=>[o(r,{label:"today"},{default:n(()=>[...e[6]||(e[6]=[d("今天",-1)])]),_:1}),o(r,{label:"yesterday"},{default:n(()=>[...e[7]||(e[7]=[d("昨天",-1)])]),_:1}),o(r,{label:"week"},{default:n(()=>[...e[8]||(e[8]=[d("最近7天",-1)])]),_:1}),o(r,{label:"month"},{default:n(()=>[...e[9]||(e[9]=[d("最近30天",-1)])]),_:1}),o(r,{label:"custom"},{default:n(()=>[...e[10]||(e[10]=[d("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(i).time_type==="custom"?(s(),u(h,{key:0},{default:n(()=>[o(_e,{modelValue:l(_),"onUpdate:modelValue":e[1]||(e[1]=a=>A(_)?_.value=a:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:re},null,8,["modelValue"])]),_:1})):R("",!0),o(h,{label:"部门"},{default:n(()=>[o(me,{modelValue:l(i).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>l(i).dept_id=a),data:l(S),"node-key":"id",props:J,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",style:{width:"220px"},onChange:D},null,8,["modelValue","data"])]),_:1}),o(h,{label:"自媒体来源"},{default:n(()=>[o(qe,{modelValue:l(i).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>l(i).media_source=a),options:l(F),loading:l(Y),placeholder:"全部来源","allow-create":!1,"select-style":"width: 220px",onChange:D,onVisibleChange:te},null,8,["modelValue","options","loading"])]),_:1}),o(h,null,{default:n(()=>[o(k,{type:"primary",loading:l(p).loading,onClick:D},{default:n(()=>[...e[11]||(e[11]=[d("查询",-1)])]),_:1},8,["loading"]),o(k,{onClick:de},{default:n(()=>[...e[12]||(e[12]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),c("div",Je,[(s(!0),v(U,null,z(l(oe),a=>(s(),v("div",{key:a.key,class:"stats-kpi-card"},[c("div",Xe,g(a.label),1),c("div",{class:Oe(["stats-kpi-value",{"is-money":a.type==="money"}])},g(B(a.key,l(f).summary,a.type)),3)]))),128))]),o(I,{class:"!border-none mt-4 stats-detail-card",shadow:"never"},{header:n(()=>[c("div",Ze,[c("div",et,[e[13]||(e[13]=c("span",{class:"card-title"},"业绩明细",-1)),c("span",tt,g(l(se)),1)]),c("div",at,[w((s(),u(k,{type:"primary",onClick:pe},{icon:n(()=>[o(fe,{name:"el-icon-Plus"})]),default:n(()=>[e[14]||(e[14]=d(" 新增业绩 ",-1))]),_:1})),[[x,["stats.personal_yeji/add"]]]),l(W)?w((s(),u(k,{key:0,onClick:X},{default:n(()=>[...e[15]||(e[15]=[d(" 账户消耗录入 ",-1)])]),_:1})),[[x,["stats.personal_account_cost/lists"]]]):R("",!0)])])]),default:n(()=>[w((s(),u(ke,{data:l(p).lists,border:"",size:"large","max-height":"640"},{default:n(()=>[o(y,{label:"日期",prop:"yeji_date","min-width":"110",fixed:"left"}),o(y,{label:"自媒体来源",prop:"media_source","min-width":"140","show-overflow-tooltip":""}),o(y,{label:"录入人",prop:"creator_name","min-width":"100"}),o(y,{label:"部门",prop:"dept_name","min-width":"140"},{default:n(({row:a})=>[a.dept_path?(s(),u(be,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:n(()=>[c("span",nt,g(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(s(),v("span",ot,g(a.dept_name),1)):(s(),v("span",lt,"未分配"))]),_:1}),(s(!0),v(U,null,z(l(le),a=>(s(),u(y,{key:a.key,label:a.label,"min-width":a.minWidth||100,align:"right"},{default:n(({row:O})=>[d(g(B(a.key,O,a.type)),1)]),_:2},1032,["label","min-width"]))),128)),o(y,{label:"备注",prop:"remark","min-width":"160","show-overflow-tooltip":""}),o(y,{label:"操作",width:"140",fixed:"right"},{default:n(({row:a})=>[w((s(),u(k,{type:"primary",link:"",onClick:O=>ce(a)},{default:n(()=>[...e[16]||(e[16]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/edit"]]]),w((s(),u(k,{type:"danger",link:"",onClick:O=>ue(a.id)},{default:n(()=>[...e[17]||(e[17]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/delete"]]])]),_:1})]),_:1},8,["data"])),[[ge,l(p).loading]]),c("div",st,[o(ve,{modelValue:l(p),"onUpdate:modelValue":e[4]||(e[4]=a=>A(p)?p.value=a:null),onChange:m},null,8,["modelValue"])])]),_:1}),l(V)?(s(),u(Ge,{key:0,ref_key:"yejiEditRef",ref:E,"media-source-options":l(F),"media-source-loading":l(Y),onSuccess:ae,onClose:e[5]||(e[5]=a=>V.value=!1)},null,8,["media-source-options","media-source-loading"])):R("",!0)])}}}),gt=Le(rt,[["__scopeId","data-v-47b76778"]]);export{gt as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CQoznTz_.js
diff --git a/server/public/admin/assets/index-BsfpADe0.js b/server/public/admin/assets/index-BsfpADe0.js
new file mode 100644
index 000000000..311100b8d
--- /dev/null
+++ b/server/public/admin/assets/index-BsfpADe0.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-B1ySbM3p.js
+import{o as ie,ap as fe,be as ye,q as d,r as k,s as l,ac as N,O as $,D as n,L as v,u as L,by as be,K as we,P as te,bi as ke,T as s,ae as xe,v as i,b6 as Ce,b7 as Me,b8 as ne,bA as A,bm as Ve,bn as Le,aw as Se,b9 as Te,bk as ze,br as Ee,F as M,bI as Ne,d8 as $e,bj as he,bs as Ue,G as Be,bt as De,M as p,ba as Ie,e as Pe}from"./.pnpm-BadRMC3e.js";import{r as S,i as qe,_ as Fe}from"./index-C360OAjQ.js";function G(){let u=0;return{next(m){u+=1;const T=Array.isArray(m)?[...m]:m&&typeof m=="object"?{...m}:m;return Object.freeze({generation:u,snapshot:T})},invalidate(){return u+=1,u},isLatest(m){return(m==null?void 0:m.generation)===u}}}function Oe(u){return S.get({url:"/pharmacy.medicineMapping/lists",params:u})}function Re(){return S.get({url:"/pharmacy.medicineMapping/status"})}function je(u){return S.get({url:"/pharmacy.medicineMapping/catalogOptions",params:u})}function Ke(u){return S.post({url:"/pharmacy.medicineMapping/save",params:u})}function Ae(u){return S.post({url:"/pharmacy.medicineMapping/unlink",params:u})}function Ge(){return S.post({url:"/pharmacy.medicineMapping/sync"})}const He={class:"mapping-page"},Je={class:"page-header"},Qe={class:"status-strip"},We={class:"status-item"},Xe={class:"status-item warning"},Ye={class:"status-item"},Ze=["title"],ea={class:"table-wrap"},aa={class:"medicine-name"},la={class:"subline"},ta={class:"medicine-name"},na={class:"subline code"},ia={class:"subline"},sa={class:"subline"},oa={class:"pagination-wrap"},ua={class:"local-summary"},da={class:"option-row"},ra=ie({name:"pharmacyMedicineMapping"}),ca=ie({...ra,setup(u){const m=()=>({sync_enabled:!1,cursor:0,last_success_time:0,last_failure_time:0,last_error_summary:"",is_syncing:!1,catalog_total:0,catalog_active:0,unmapped_local:0}),T=p(!1),I=p(!1),P=p(!1),q=p(!1),F=p(!1),H=p([]),J=p(0),r=p(m()),o=Ie({page_no:1,page_size:20,local_name:"",remote_keyword:"",mapping_status:""}),z=p(!1),g=p(null),b=p(""),h=p([]);let E;const O=G(),V=G(),R=G(),Q=t=>{const e=Number(t||0);return Number.isFinite(e)?e.toFixed(2):"0.00"},W=t=>t?new Date(t*1e3).toLocaleString("zh-CN",{hour12:!1}):"",se=t=>t===1?"已映射":t===2?"远端失效":"未映射",oe=t=>t===1?"success":t===2?"warning":"info",C=async()=>{const t=O.next({...o});T.value=!0;try{const e=await Oe(t.snapshot);O.isLatest(t)&&(H.value=e.lists||[],J.value=e.count||0)}finally{O.isLatest(t)&&(T.value=!1)}},U=async()=>{const t=R.next(void 0);I.value=!0;try{const e=await Re();R.isLatest(t)&&(r.value=e)}finally{R.isLatest(t)&&(I.value=!1)}},B=()=>{o.page_no=1,C()},ue=()=>{o.local_name="",o.remote_keyword="",o.mapping_status="",B()},de=async()=>{P.value=!0;try{const t=await Ge();qe.msgSuccess(`同步完成:拉取 ${t.pulled},新增 ${t.created},更新 ${t.updated},停用 ${t.deactivated}`),await Promise.all([C(),U()])}finally{P.value=!1}},j=async(t,e=Number((c=>(c=g.value)==null?void 0:c.local_medicine_id)()||0))=>{var _;const f=V.next({keyword:t.trim(),localMedicineId:e});F.value=!0;try{const x=await je({keyword:f.snapshot.keyword,limit:30});V.isLatest(f)&&Number(((_=g.value)==null?void 0:_.local_medicine_id)||0)===f.snapshot.localMedicineId&&(h.value=x)}finally{V.isLatest(f)&&(F.value=!1)}return f},re=t=>{E&&window.clearTimeout(E),V.invalidate(),E=window.setTimeout(()=>void j(t),250)},ce=async t=>{var _;E&&window.clearTimeout(E),V.invalidate();const e={...t},c=Number(e.local_medicine_id);g.value=e,b.value=e.mapping_status===1&&e.medicine_code||"",h.value=[],z.value=!0;const f=await j(e.local_name,c);!V.isLatest(f)||Number(((_=g.value)==null?void 0:_.local_medicine_id)||0)!==c||b.value&&!h.value.some(x=>x.medicine_code===b.value)&&await j(b.value,c)},me=async()=>{if(!(!g.value||!b.value)){q.value=!0;try{await Ke({local_medicine_id:g.value.local_medicine_id,medicine_code:b.value}),z.value=!1,await Promise.all([C(),U()])}finally{q.value=!1}}},pe=async t=>{await Pe.confirm(`确认解除“${t.local_name}”与 ${t.medicine_code} 的映射?`,"解除映射",{type:"warning",confirmButtonText:"解除",cancelButtonText:"取消"}),await Ae({local_medicine_id:t.local_medicine_id}),await Promise.all([C(),U()])};return fe(()=>{Promise.all([C(),U()])}),(t,e)=>{var ae;const c=we,f=Me,_=Ce,x=Le,X=Ve,Y=Te,w=ze,Z=Ee,_e=he,ve=Ue,ge=De,K=ye("perms"),ee=ke;return d(),k("div",He,[l("header",Je,[e[10]||(e[10]=l("h1",null,"洛阳药房药材映射",-1)),r.value.sync_enabled?N((d(),$(c,{key:0,type:"primary",icon:L(be),loading:P.value,onClick:de},{default:n(()=>[...e[9]||(e[9]=[v(" 增量同步 ",-1)])]),_:1},8,["icon","loading"])),[[K,["pharmacy.medicineMapping/sync"]]]):te("",!0)]),N((d(),k("section",Qe,[l("div",We,[e[11]||(e[11]=l("span",null,"目录",-1)),l("strong",null,s(r.value.catalog_active)+" / "+s(r.value.catalog_total),1),e[12]||(e[12]=l("small",null,"启用 / 总数",-1))]),l("div",Xe,[e[13]||(e[13]=l("span",null,"未映射本地药材",-1)),l("strong",null,s(r.value.unmapped_local),1),e[14]||(e[14]=l("small",null,"仅统计启用药材",-1))]),l("div",Ye,[e[15]||(e[15]=l("span",null,"同步游标",-1)),l("strong",null,s(r.value.cursor),1),l("small",null,s(W(r.value.last_success_time)||"尚未成功同步"),1)]),l("div",{class:xe(["status-item",{danger:!!r.value.last_error_summary}])},[e[16]||(e[16]=l("span",null,"最近同步",-1)),l("strong",null,s(r.value.is_syncing?"进行中":r.value.last_error_summary?"失败":"正常"),1),l("small",{title:r.value.last_error_summary},s(r.value.last_error_summary||W(r.value.last_failure_time)||"无失败记录"),9,Ze)],2)])),[[ee,I.value]]),i(Y,{class:"filter-bar",inline:"",onSubmit:e[3]||(e[3]=Se(()=>{},["prevent"]))},{default:n(()=>[i(_,{label:"本地药材"},{default:n(()=>[i(f,{modelValue:o.local_name,"onUpdate:modelValue":e[0]||(e[0]=a=>o.local_name=a),clearable:"",placeholder:"名称","prefix-icon":L(A),onKeyup:ne(B,["enter"])},null,8,["modelValue","prefix-icon"])]),_:1}),i(_,{label:"远端目录"},{default:n(()=>[i(f,{modelValue:o.remote_keyword,"onUpdate:modelValue":e[1]||(e[1]=a=>o.remote_keyword=a),clearable:"",placeholder:"名称或编码","prefix-icon":L(A),onKeyup:ne(B,["enter"])},null,8,["modelValue","prefix-icon"])]),_:1}),i(_,{label:"映射状态"},{default:n(()=>[i(X,{modelValue:o.mapping_status,"onUpdate:modelValue":e[2]||(e[2]=a=>o.mapping_status=a),clearable:"",placeholder:"全部",style:{width:"150px"}},{default:n(()=>[i(x,{label:"已映射",value:"mapped"}),i(x,{label:"未映射",value:"unmapped"}),i(x,{label:"远端失效",value:"invalid"})]),_:1},8,["modelValue"])]),_:1}),i(_,null,{default:n(()=>[i(c,{type:"primary",icon:L(A),onClick:B},{default:n(()=>[...e[17]||(e[17]=[v("查询",-1)])]),_:1},8,["icon"]),i(c,{onClick:ue},{default:n(()=>[...e[18]||(e[18]=[v("重置",-1)])]),_:1})]),_:1})]),_:1}),l("div",ea,[N((d(),$(_e,{data:H.value,border:"",stripe:"","table-layout":"fixed"},{default:n(()=>[i(w,{label:"本地药材","min-width":"190",fixed:"left"},{default:n(({row:a})=>[l("div",aa,s(a.local_name),1),l("div",la," ID "+s(a.local_medicine_id)+" · "+s(a.local_unit||"-"),1)]),_:1}),i(w,{label:"本地状态",width:"90",align:"center"},{default:n(({row:a})=>[i(Z,{type:a.local_status===1?"success":"info",size:"small"},{default:n(()=>[v(s(a.local_status===1?"启用":"停用"),1)]),_:2},1032,["type"])]),_:1}),i(w,{label:"映射状态",width:"105",align:"center"},{default:n(({row:a})=>[i(Z,{type:oe(a.mapping_status),size:"small"},{default:n(()=>[v(s(se(a.mapping_status)),1)]),_:2},1032,["type"])]),_:1}),i(w,{label:"洛阳药房目录","min-width":"250"},{default:n(({row:a})=>[a.medicine_code?(d(),k(M,{key:0},[l("div",ta,s(a.remote_name||"目录项不可用"),1),l("div",na,s(a.medicine_code),1)],64)):(d(),k(M,{key:1},[e[19]||(e[19]=l("div",{class:"medicine-name"},"-",-1)),e[20]||(e[20]=l("div",{class:"subline"},"未映射",-1))],64))]),_:1}),i(w,{label:"品牌","min-width":"130","show-overflow-tooltip":""},{default:n(({row:a})=>[v(s(a.mapping_status===0?"-":a.remote_brand||"-"),1)]),_:1}),i(w,{label:"单位",width:"80",align:"center"},{default:n(({row:a})=>[v(s(a.remote_unit||"-"),1)]),_:1}),i(w,{label:"价格",width:"155",align:"right"},{default:n(({row:a})=>[a.mapping_status!==0?(d(),k(M,{key:0},[l("div",null,"结算 ¥"+s(Q(a.settlement_price)),1),l("div",ia,"零售 ¥"+s(Q(a.retail_price)),1)],64)):(d(),k(M,{key:1},[e[21]||(e[21]=l("div",null,"-",-1)),e[22]||(e[22]=l("div",{class:"subline"},"未映射",-1))],64))]),_:1}),i(w,{label:"版本 / 状态",width:"130",align:"center"},{default:n(({row:a})=>[a.medicine_code?(d(),k(M,{key:0},[l("div",null,"v"+s(a.catalog_version||0),1),l("div",sa,s(a.remote_status===1&&a.remote_deleted!==1?"远端启用":"远端停用"),1)],64)):(d(),k(M,{key:1},[e[23]||(e[23]=l("div",null,"-",-1)),e[24]||(e[24]=l("div",{class:"subline"},"未映射",-1))],64))]),_:1}),i(w,{label:"操作",width:"170",fixed:"right",align:"center"},{default:n(({row:a})=>[N((d(),$(c,{type:"primary",link:"",icon:L(Ne),disabled:a.local_status!==1,onClick:D=>ce(a)},{default:n(()=>[v(s(a.mapping_status===1?"更换":"映射"),1)]),_:2},1032,["icon","disabled","onClick"])),[[K,["pharmacy.medicineMapping/save"]]]),a.mapping_status===1||a.mapping_status===2?N((d(),$(c,{key:0,type:"danger",link:"",icon:L($e),onClick:D=>pe(a)},{default:n(()=>[...e[25]||(e[25]=[v(" 解除 ",-1)])]),_:1},8,["icon","onClick"])),[[K,["pharmacy.medicineMapping/unlink"]]]):te("",!0)]),_:1})]),_:1},8,["data"])),[[ee,T.value]])]),l("div",oa,[i(ve,{"current-page":o.page_no,"onUpdate:currentPage":e[4]||(e[4]=a=>o.page_no=a),"page-size":o.page_size,"onUpdate:pageSize":e[5]||(e[5]=a=>o.page_size=a),total:J.value,"page-sizes":[20,50,100],layout:"total, sizes, prev, pager, next, jumper",onSizeChange:C,onCurrentChange:C},null,8,["current-page","page-size","total"])]),i(ge,{modelValue:z.value,"onUpdate:modelValue":e[8]||(e[8]=a=>z.value=a),title:`${((ae=g.value)==null?void 0:ae.mapping_status)===1?"更换":"建立"}药材映射`,width:"min(560px, calc(100vw - 32px))","destroy-on-close":""},{footer:n(()=>[i(c,{onClick:e[7]||(e[7]=a=>z.value=!1)},{default:n(()=>[...e[27]||(e[27]=[v("取消",-1)])]),_:1}),i(c,{type:"primary",loading:q.value,disabled:!b.value,onClick:me},{default:n(()=>[...e[28]||(e[28]=[v(" 保存映射 ",-1)])]),_:1},8,["loading","disabled"])]),default:n(()=>{var a,D,le;return[l("div",ua,[e[26]||(e[26]=l("span",null,"本地药材",-1)),l("strong",null,s((a=g.value)==null?void 0:a.local_name),1),l("small",null,"ID "+s((D=g.value)==null?void 0:D.local_medicine_id)+" · "+s(((le=g.value)==null?void 0:le.local_unit)||"-"),1)]),i(Y,{"label-position":"top",class:"mapping-form"},{default:n(()=>[i(_,{label:"洛阳药房药材"},{default:n(()=>[i(X,{modelValue:b.value,"onUpdate:modelValue":e[6]||(e[6]=y=>b.value=y),filterable:"",remote:"","reserve-keyword":"",clearable:"","remote-method":re,loading:F.value,placeholder:"输入药材名称或编码检索",style:{width:"100%"}},{default:n(()=>[(d(!0),k(M,null,Be(h.value,y=>(d(),$(x,{key:y.medicine_code,label:`${y.name} · ${y.medicine_code}`,value:y.medicine_code},{default:n(()=>[l("div",da,[l("span",null,s(y.name),1),l("small",null,s(y.medicine_code)+" · "+s(y.brand||"无品牌")+" · "+s(y.unit),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1})]),_:1})]}),_:1},8,["modelValue","title"])])}}}),_a=Fe(ca,[["__scopeId","data-v-23ea3e85"]]);export{_a as default};
+========
+import{o as ie,ap as fe,be as ye,q as d,r as k,s as l,ac as N,O as $,D as n,L as v,u as L,by as be,K as we,P as te,bi as ke,T as s,ae as xe,v as i,b6 as Ce,b7 as Me,b8 as ne,bA as A,bm as Ve,bn as Le,aw as Se,b9 as Te,bk as ze,br as Ee,F as M,bI as Ne,d8 as $e,bj as he,bs as Ue,G as Be,bt as De,M as p,ba as Ie,e as Pe}from"./.pnpm-BadRMC3e.js";import{r as S,i as qe,_ as Fe}from"./index-C53kWH2_.js";function G(){let u=0;return{next(m){u+=1;const T=Array.isArray(m)?[...m]:m&&typeof m=="object"?{...m}:m;return Object.freeze({generation:u,snapshot:T})},invalidate(){return u+=1,u},isLatest(m){return(m==null?void 0:m.generation)===u}}}function Oe(u){return S.get({url:"/pharmacy.medicineMapping/lists",params:u})}function Re(){return S.get({url:"/pharmacy.medicineMapping/status"})}function je(u){return S.get({url:"/pharmacy.medicineMapping/catalogOptions",params:u})}function Ke(u){return S.post({url:"/pharmacy.medicineMapping/save",params:u})}function Ae(u){return S.post({url:"/pharmacy.medicineMapping/unlink",params:u})}function Ge(){return S.post({url:"/pharmacy.medicineMapping/sync"})}const He={class:"mapping-page"},Je={class:"page-header"},Qe={class:"status-strip"},We={class:"status-item"},Xe={class:"status-item warning"},Ye={class:"status-item"},Ze=["title"],ea={class:"table-wrap"},aa={class:"medicine-name"},la={class:"subline"},ta={class:"medicine-name"},na={class:"subline code"},ia={class:"subline"},sa={class:"subline"},oa={class:"pagination-wrap"},ua={class:"local-summary"},da={class:"option-row"},ra=ie({name:"pharmacyMedicineMapping"}),ca=ie({...ra,setup(u){const m=()=>({sync_enabled:!1,cursor:0,last_success_time:0,last_failure_time:0,last_error_summary:"",is_syncing:!1,catalog_total:0,catalog_active:0,unmapped_local:0}),T=p(!1),I=p(!1),P=p(!1),q=p(!1),F=p(!1),H=p([]),J=p(0),r=p(m()),o=Ie({page_no:1,page_size:20,local_name:"",remote_keyword:"",mapping_status:""}),z=p(!1),g=p(null),b=p(""),h=p([]);let E;const O=G(),V=G(),R=G(),Q=t=>{const e=Number(t||0);return Number.isFinite(e)?e.toFixed(2):"0.00"},W=t=>t?new Date(t*1e3).toLocaleString("zh-CN",{hour12:!1}):"",se=t=>t===1?"已映射":t===2?"远端失效":"未映射",oe=t=>t===1?"success":t===2?"warning":"info",C=async()=>{const t=O.next({...o});T.value=!0;try{const e=await Oe(t.snapshot);O.isLatest(t)&&(H.value=e.lists||[],J.value=e.count||0)}finally{O.isLatest(t)&&(T.value=!1)}},U=async()=>{const t=R.next(void 0);I.value=!0;try{const e=await Re();R.isLatest(t)&&(r.value=e)}finally{R.isLatest(t)&&(I.value=!1)}},B=()=>{o.page_no=1,C()},ue=()=>{o.local_name="",o.remote_keyword="",o.mapping_status="",B()},de=async()=>{P.value=!0;try{const t=await Ge();qe.msgSuccess(`同步完成:拉取 ${t.pulled},新增 ${t.created},更新 ${t.updated},停用 ${t.deactivated}`),await Promise.all([C(),U()])}finally{P.value=!1}},j=async(t,e=Number((c=>(c=g.value)==null?void 0:c.local_medicine_id)()||0))=>{var _;const f=V.next({keyword:t.trim(),localMedicineId:e});F.value=!0;try{const x=await je({keyword:f.snapshot.keyword,limit:30});V.isLatest(f)&&Number(((_=g.value)==null?void 0:_.local_medicine_id)||0)===f.snapshot.localMedicineId&&(h.value=x)}finally{V.isLatest(f)&&(F.value=!1)}return f},re=t=>{E&&window.clearTimeout(E),V.invalidate(),E=window.setTimeout(()=>void j(t),250)},ce=async t=>{var _;E&&window.clearTimeout(E),V.invalidate();const e={...t},c=Number(e.local_medicine_id);g.value=e,b.value=e.mapping_status===1&&e.medicine_code||"",h.value=[],z.value=!0;const f=await j(e.local_name,c);!V.isLatest(f)||Number(((_=g.value)==null?void 0:_.local_medicine_id)||0)!==c||b.value&&!h.value.some(x=>x.medicine_code===b.value)&&await j(b.value,c)},me=async()=>{if(!(!g.value||!b.value)){q.value=!0;try{await Ke({local_medicine_id:g.value.local_medicine_id,medicine_code:b.value}),z.value=!1,await Promise.all([C(),U()])}finally{q.value=!1}}},pe=async t=>{await Pe.confirm(`确认解除“${t.local_name}”与 ${t.medicine_code} 的映射?`,"解除映射",{type:"warning",confirmButtonText:"解除",cancelButtonText:"取消"}),await Ae({local_medicine_id:t.local_medicine_id}),await Promise.all([C(),U()])};return fe(()=>{Promise.all([C(),U()])}),(t,e)=>{var ae;const c=we,f=Me,_=Ce,x=Le,X=Ve,Y=Te,w=ze,Z=Ee,_e=he,ve=Ue,ge=De,K=ye("perms"),ee=ke;return d(),k("div",He,[l("header",Je,[e[10]||(e[10]=l("h1",null,"洛阳药房药材映射",-1)),r.value.sync_enabled?N((d(),$(c,{key:0,type:"primary",icon:L(be),loading:P.value,onClick:de},{default:n(()=>[...e[9]||(e[9]=[v(" 增量同步 ",-1)])]),_:1},8,["icon","loading"])),[[K,["pharmacy.medicineMapping/sync"]]]):te("",!0)]),N((d(),k("section",Qe,[l("div",We,[e[11]||(e[11]=l("span",null,"目录",-1)),l("strong",null,s(r.value.catalog_active)+" / "+s(r.value.catalog_total),1),e[12]||(e[12]=l("small",null,"启用 / 总数",-1))]),l("div",Xe,[e[13]||(e[13]=l("span",null,"未映射本地药材",-1)),l("strong",null,s(r.value.unmapped_local),1),e[14]||(e[14]=l("small",null,"仅统计启用药材",-1))]),l("div",Ye,[e[15]||(e[15]=l("span",null,"同步游标",-1)),l("strong",null,s(r.value.cursor),1),l("small",null,s(W(r.value.last_success_time)||"尚未成功同步"),1)]),l("div",{class:xe(["status-item",{danger:!!r.value.last_error_summary}])},[e[16]||(e[16]=l("span",null,"最近同步",-1)),l("strong",null,s(r.value.is_syncing?"进行中":r.value.last_error_summary?"失败":"正常"),1),l("small",{title:r.value.last_error_summary},s(r.value.last_error_summary||W(r.value.last_failure_time)||"无失败记录"),9,Ze)],2)])),[[ee,I.value]]),i(Y,{class:"filter-bar",inline:"",onSubmit:e[3]||(e[3]=Se(()=>{},["prevent"]))},{default:n(()=>[i(_,{label:"本地药材"},{default:n(()=>[i(f,{modelValue:o.local_name,"onUpdate:modelValue":e[0]||(e[0]=a=>o.local_name=a),clearable:"",placeholder:"名称","prefix-icon":L(A),onKeyup:ne(B,["enter"])},null,8,["modelValue","prefix-icon"])]),_:1}),i(_,{label:"远端目录"},{default:n(()=>[i(f,{modelValue:o.remote_keyword,"onUpdate:modelValue":e[1]||(e[1]=a=>o.remote_keyword=a),clearable:"",placeholder:"名称或编码","prefix-icon":L(A),onKeyup:ne(B,["enter"])},null,8,["modelValue","prefix-icon"])]),_:1}),i(_,{label:"映射状态"},{default:n(()=>[i(X,{modelValue:o.mapping_status,"onUpdate:modelValue":e[2]||(e[2]=a=>o.mapping_status=a),clearable:"",placeholder:"全部",style:{width:"150px"}},{default:n(()=>[i(x,{label:"已映射",value:"mapped"}),i(x,{label:"未映射",value:"unmapped"}),i(x,{label:"远端失效",value:"invalid"})]),_:1},8,["modelValue"])]),_:1}),i(_,null,{default:n(()=>[i(c,{type:"primary",icon:L(A),onClick:B},{default:n(()=>[...e[17]||(e[17]=[v("查询",-1)])]),_:1},8,["icon"]),i(c,{onClick:ue},{default:n(()=>[...e[18]||(e[18]=[v("重置",-1)])]),_:1})]),_:1})]),_:1}),l("div",ea,[N((d(),$(_e,{data:H.value,border:"",stripe:"","table-layout":"fixed"},{default:n(()=>[i(w,{label:"本地药材","min-width":"190",fixed:"left"},{default:n(({row:a})=>[l("div",aa,s(a.local_name),1),l("div",la," ID "+s(a.local_medicine_id)+" · "+s(a.local_unit||"-"),1)]),_:1}),i(w,{label:"本地状态",width:"90",align:"center"},{default:n(({row:a})=>[i(Z,{type:a.local_status===1?"success":"info",size:"small"},{default:n(()=>[v(s(a.local_status===1?"启用":"停用"),1)]),_:2},1032,["type"])]),_:1}),i(w,{label:"映射状态",width:"105",align:"center"},{default:n(({row:a})=>[i(Z,{type:oe(a.mapping_status),size:"small"},{default:n(()=>[v(s(se(a.mapping_status)),1)]),_:2},1032,["type"])]),_:1}),i(w,{label:"洛阳药房目录","min-width":"250"},{default:n(({row:a})=>[a.medicine_code?(d(),k(M,{key:0},[l("div",ta,s(a.remote_name||"目录项不可用"),1),l("div",na,s(a.medicine_code),1)],64)):(d(),k(M,{key:1},[e[19]||(e[19]=l("div",{class:"medicine-name"},"-",-1)),e[20]||(e[20]=l("div",{class:"subline"},"未映射",-1))],64))]),_:1}),i(w,{label:"品牌","min-width":"130","show-overflow-tooltip":""},{default:n(({row:a})=>[v(s(a.mapping_status===0?"-":a.remote_brand||"-"),1)]),_:1}),i(w,{label:"单位",width:"80",align:"center"},{default:n(({row:a})=>[v(s(a.remote_unit||"-"),1)]),_:1}),i(w,{label:"价格",width:"155",align:"right"},{default:n(({row:a})=>[a.mapping_status!==0?(d(),k(M,{key:0},[l("div",null,"结算 ¥"+s(Q(a.settlement_price)),1),l("div",ia,"零售 ¥"+s(Q(a.retail_price)),1)],64)):(d(),k(M,{key:1},[e[21]||(e[21]=l("div",null,"-",-1)),e[22]||(e[22]=l("div",{class:"subline"},"未映射",-1))],64))]),_:1}),i(w,{label:"版本 / 状态",width:"130",align:"center"},{default:n(({row:a})=>[a.medicine_code?(d(),k(M,{key:0},[l("div",null,"v"+s(a.catalog_version||0),1),l("div",sa,s(a.remote_status===1&&a.remote_deleted!==1?"远端启用":"远端停用"),1)],64)):(d(),k(M,{key:1},[e[23]||(e[23]=l("div",null,"-",-1)),e[24]||(e[24]=l("div",{class:"subline"},"未映射",-1))],64))]),_:1}),i(w,{label:"操作",width:"170",fixed:"right",align:"center"},{default:n(({row:a})=>[N((d(),$(c,{type:"primary",link:"",icon:L(Ne),disabled:a.local_status!==1,onClick:D=>ce(a)},{default:n(()=>[v(s(a.mapping_status===1?"更换":"映射"),1)]),_:2},1032,["icon","disabled","onClick"])),[[K,["pharmacy.medicineMapping/save"]]]),a.mapping_status===1||a.mapping_status===2?N((d(),$(c,{key:0,type:"danger",link:"",icon:L($e),onClick:D=>pe(a)},{default:n(()=>[...e[25]||(e[25]=[v(" 解除 ",-1)])]),_:1},8,["icon","onClick"])),[[K,["pharmacy.medicineMapping/unlink"]]]):te("",!0)]),_:1})]),_:1},8,["data"])),[[ee,T.value]])]),l("div",oa,[i(ve,{"current-page":o.page_no,"onUpdate:currentPage":e[4]||(e[4]=a=>o.page_no=a),"page-size":o.page_size,"onUpdate:pageSize":e[5]||(e[5]=a=>o.page_size=a),total:J.value,"page-sizes":[20,50,100],layout:"total, sizes, prev, pager, next, jumper",onSizeChange:C,onCurrentChange:C},null,8,["current-page","page-size","total"])]),i(ge,{modelValue:z.value,"onUpdate:modelValue":e[8]||(e[8]=a=>z.value=a),title:`${((ae=g.value)==null?void 0:ae.mapping_status)===1?"更换":"建立"}药材映射`,width:"min(560px, calc(100vw - 32px))","destroy-on-close":""},{footer:n(()=>[i(c,{onClick:e[7]||(e[7]=a=>z.value=!1)},{default:n(()=>[...e[27]||(e[27]=[v("取消",-1)])]),_:1}),i(c,{type:"primary",loading:q.value,disabled:!b.value,onClick:me},{default:n(()=>[...e[28]||(e[28]=[v(" 保存映射 ",-1)])]),_:1},8,["loading","disabled"])]),default:n(()=>{var a,D,le;return[l("div",ua,[e[26]||(e[26]=l("span",null,"本地药材",-1)),l("strong",null,s((a=g.value)==null?void 0:a.local_name),1),l("small",null,"ID "+s((D=g.value)==null?void 0:D.local_medicine_id)+" · "+s(((le=g.value)==null?void 0:le.local_unit)||"-"),1)]),i(Y,{"label-position":"top",class:"mapping-form"},{default:n(()=>[i(_,{label:"洛阳药房药材"},{default:n(()=>[i(X,{modelValue:b.value,"onUpdate:modelValue":e[6]||(e[6]=y=>b.value=y),filterable:"",remote:"","reserve-keyword":"",clearable:"","remote-method":re,loading:F.value,placeholder:"输入药材名称或编码检索",style:{width:"100%"}},{default:n(()=>[(d(!0),k(M,null,Be(h.value,y=>(d(),$(x,{key:y.medicine_code,label:`${y.name} · ${y.medicine_code}`,value:y.medicine_code},{default:n(()=>[l("div",da,[l("span",null,s(y.name),1),l("small",null,s(y.medicine_code)+" · "+s(y.brand||"无品牌")+" · "+s(y.unit),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1})]),_:1})]}),_:1},8,["modelValue","title"])])}}}),_a=Fe(ca,[["__scopeId","data-v-23ea3e85"]]);export{_a as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-BsfpADe0.js
diff --git a/server/public/admin/assets/index-Bt6_Z5lB.js b/server/public/admin/assets/index-Bt6_Z5lB.js
new file mode 100644
index 000000000..025e3d2a4
--- /dev/null
+++ b/server/public/admin/assets/index-Bt6_Z5lB.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-BYTTHYYw.js
+import{o as B,x as A,be as M,q as o,r as P,v as t,D as l,b9 as G,u as a,b6 as H,b7 as J,b8 as $,bm as Q,bn as W,K as X,L as i,bg as Y,s as V,ac as p,O as u,bj as Z,bk as ee,br as te,C as le,bi as ae,P as ne,a8 as oe,M as K,ba as se,n as R}from"./.pnpm-BadRMC3e.js";import{_ as ie}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as de,k as re,i as ue}from"./index-C360OAjQ.js";import{f as me,i as pe}from"./dict-Bp-jeYX-.js";import{u as ce}from"./usePaging-DMqUvFG-.js";import{_ as _e}from"./edit.vue_vue_type_script_setup_true_lang-CWlAEoq8.js";import"./index-2cRJ7Pdu.js";const fe={class:"dict-type"},be={class:"mt-4"},ye={class:"flex justify-end mt-4"},ve=B({name:"dictType"}),Te=B({...ve,setup(ge){const b=oe(),y=K(!1),d=se({name:"",type:"",status:""}),{pager:c,getLists:v,resetPage:k,resetParams:S}=ce({fetchFun:me,params:d}),C=K([]),F=s=>{C.value=s.map(({id:e})=>e)},L=async()=>{var s;y.value=!0,await R(),(s=b.value)==null||s.open("add")},N=async s=>{var e,_;y.value=!0,await R(),(e=b.value)==null||e.open("edit"),(_=b.value)==null||_.setFormData(s)},E=async s=>{await ue.confirm("确定要删除?"),await pe({id:s}),v()};return v(),(s,e)=>{const _=J,g=H,w=W,U=Q,m=X,q=G,x=Y,D=de,r=ee,T=te,I=A("router-link"),j=Z,O=ie,f=M("perms"),h=ae;return o(),P("div",fe,[t(x,{class:"!border-none",shadow:"never"},{default:l(()=>[t(q,{ref:"formRef",class:"mb-[-16px]",model:a(d),inline:""},{default:l(()=>[t(g,{class:"w-[280px]",label:"字典名称"},{default:l(()=>[t(_,{modelValue:a(d).name,"onUpdate:modelValue":e[0]||(e[0]=n=>a(d).name=n),clearable:"",onKeyup:$(a(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(g,{class:"w-[280px]",label:"字典类型"},{default:l(()=>[t(_,{modelValue:a(d).type,"onUpdate:modelValue":e[1]||(e[1]=n=>a(d).type=n),clearable:"",onKeyup:$(a(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(g,{class:"w-[280px]",label:"状态"},{default:l(()=>[t(U,{modelValue:a(d).status,"onUpdate:modelValue":e[2]||(e[2]=n=>a(d).status=n)},{default:l(()=>[t(w,{label:"全部",value:""}),t(w,{label:"正常",value:1}),t(w,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(g,null,{default:l(()=>[t(m,{type:"primary",onClick:a(k)},{default:l(()=>[...e[6]||(e[6]=[i("查询",-1)])]),_:1},8,["onClick"]),t(m,{onClick:a(S)},{default:l(()=>[...e[7]||(e[7]=[i("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(x,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[V("div",null,[p((o(),u(m,{type:"primary",onClick:L},{icon:l(()=>[t(D,{name:"el-icon-Plus"})]),default:l(()=>[e[8]||(e[8]=i(" 新增 ",-1))]),_:1})),[[f,["setting.dict.dict_type/add"]]]),p((o(),u(m,{disabled:!a(C).length,type:"danger",onClick:e[3]||(e[3]=n=>E(a(C)))},{icon:l(()=>[t(D,{name:"el-icon-Delete"})]),default:l(()=>[e[9]||(e[9]=i(" 删除 ",-1))]),_:1},8,["disabled"])),[[f,["setting.dict.dict_type/delete"]]])]),p((o(),P("div",be,[V("div",null,[t(j,{data:a(c).lists,size:"large",onSelectionChange:F},{default:l(()=>[t(r,{type:"selection",width:"55"}),t(r,{label:"ID",prop:"id"}),t(r,{label:"字典名称",prop:"name","min-width":"120"}),t(r,{label:"字典类型",prop:"type","min-width":"120"}),t(r,{label:"状态"},{default:l(({row:n})=>[n.status==1?(o(),u(T,{key:0},{default:l(()=>[...e[10]||(e[10]=[i("正常",-1)])]),_:1})):(o(),u(T,{key:1,type:"danger"},{default:l(()=>[...e[11]||(e[11]=[i("停用",-1)])]),_:1}))]),_:1}),t(r,{label:"备注",prop:"remark","show-tooltip-when-overflow":""}),t(r,{label:"创建时间",prop:"create_time","min-width":"180"}),t(r,{label:"操作",width:"190",fixed:"right"},{default:l(({row:n})=>[p((o(),u(m,{link:"",type:"primary",onClick:z=>N(n)},{default:l(()=>[...e[12]||(e[12]=[i(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/edit"]]]),p((o(),u(m,{type:"primary",link:""},{default:l(()=>[t(I,{to:{path:a(re)("setting.dict.dict_data/lists"),query:{id:n.id}}},{default:l(()=>[...e[13]||(e[13]=[i(" 数据管理 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[f,["setting.dict.dict_data/lists"]]]),p((o(),u(m,{link:"",type:"danger",onClick:z=>E(n.id)},{default:l(()=>[...e[14]||(e[14]=[i(" 删除 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",ye,[t(O,{modelValue:a(c),"onUpdate:modelValue":e[4]||(e[4]=n=>le(c)?c.value=n:null),onChange:a(v)},null,8,["modelValue","onChange"])])])),[[h,a(c).loading]])]),_:1}),a(y)?(o(),u(_e,{key:0,ref_key:"editRef",ref:b,onSuccess:a(v),onClose:e[5]||(e[5]=n=>y.value=!1)},null,8,["onSuccess"])):ne("",!0)])}}});export{Te as default};
+========
+import{o as B,x as A,be as M,q as o,r as P,v as t,D as l,b9 as G,u as a,b6 as H,b7 as J,b8 as $,bm as Q,bn as W,K as X,L as i,bg as Y,s as V,ac as p,O as u,bj as Z,bk as ee,br as te,C as le,bi as ae,P as ne,a8 as oe,M as K,ba as se,n as R}from"./.pnpm-BadRMC3e.js";import{_ as ie}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as de,k as re,i as ue}from"./index-C53kWH2_.js";import{f as me,i as pe}from"./dict-Cg6TZGrn.js";import{u as ce}from"./usePaging-DMqUvFG-.js";import{_ as _e}from"./edit.vue_vue_type_script_setup_true_lang-Bzb_J_tj.js";import"./index-ByXR3YHf.js";const fe={class:"dict-type"},be={class:"mt-4"},ye={class:"flex justify-end mt-4"},ve=B({name:"dictType"}),Te=B({...ve,setup(ge){const b=oe(),y=K(!1),d=se({name:"",type:"",status:""}),{pager:c,getLists:v,resetPage:k,resetParams:S}=ce({fetchFun:me,params:d}),C=K([]),F=s=>{C.value=s.map(({id:e})=>e)},L=async()=>{var s;y.value=!0,await R(),(s=b.value)==null||s.open("add")},N=async s=>{var e,_;y.value=!0,await R(),(e=b.value)==null||e.open("edit"),(_=b.value)==null||_.setFormData(s)},E=async s=>{await ue.confirm("确定要删除?"),await pe({id:s}),v()};return v(),(s,e)=>{const _=J,g=H,w=W,U=Q,m=X,q=G,x=Y,D=de,r=ee,T=te,I=A("router-link"),j=Z,O=ie,f=M("perms"),h=ae;return o(),P("div",fe,[t(x,{class:"!border-none",shadow:"never"},{default:l(()=>[t(q,{ref:"formRef",class:"mb-[-16px]",model:a(d),inline:""},{default:l(()=>[t(g,{class:"w-[280px]",label:"字典名称"},{default:l(()=>[t(_,{modelValue:a(d).name,"onUpdate:modelValue":e[0]||(e[0]=n=>a(d).name=n),clearable:"",onKeyup:$(a(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(g,{class:"w-[280px]",label:"字典类型"},{default:l(()=>[t(_,{modelValue:a(d).type,"onUpdate:modelValue":e[1]||(e[1]=n=>a(d).type=n),clearable:"",onKeyup:$(a(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(g,{class:"w-[280px]",label:"状态"},{default:l(()=>[t(U,{modelValue:a(d).status,"onUpdate:modelValue":e[2]||(e[2]=n=>a(d).status=n)},{default:l(()=>[t(w,{label:"全部",value:""}),t(w,{label:"正常",value:1}),t(w,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(g,null,{default:l(()=>[t(m,{type:"primary",onClick:a(k)},{default:l(()=>[...e[6]||(e[6]=[i("查询",-1)])]),_:1},8,["onClick"]),t(m,{onClick:a(S)},{default:l(()=>[...e[7]||(e[7]=[i("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(x,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[V("div",null,[p((o(),u(m,{type:"primary",onClick:L},{icon:l(()=>[t(D,{name:"el-icon-Plus"})]),default:l(()=>[e[8]||(e[8]=i(" 新增 ",-1))]),_:1})),[[f,["setting.dict.dict_type/add"]]]),p((o(),u(m,{disabled:!a(C).length,type:"danger",onClick:e[3]||(e[3]=n=>E(a(C)))},{icon:l(()=>[t(D,{name:"el-icon-Delete"})]),default:l(()=>[e[9]||(e[9]=i(" 删除 ",-1))]),_:1},8,["disabled"])),[[f,["setting.dict.dict_type/delete"]]])]),p((o(),P("div",be,[V("div",null,[t(j,{data:a(c).lists,size:"large",onSelectionChange:F},{default:l(()=>[t(r,{type:"selection",width:"55"}),t(r,{label:"ID",prop:"id"}),t(r,{label:"字典名称",prop:"name","min-width":"120"}),t(r,{label:"字典类型",prop:"type","min-width":"120"}),t(r,{label:"状态"},{default:l(({row:n})=>[n.status==1?(o(),u(T,{key:0},{default:l(()=>[...e[10]||(e[10]=[i("正常",-1)])]),_:1})):(o(),u(T,{key:1,type:"danger"},{default:l(()=>[...e[11]||(e[11]=[i("停用",-1)])]),_:1}))]),_:1}),t(r,{label:"备注",prop:"remark","show-tooltip-when-overflow":""}),t(r,{label:"创建时间",prop:"create_time","min-width":"180"}),t(r,{label:"操作",width:"190",fixed:"right"},{default:l(({row:n})=>[p((o(),u(m,{link:"",type:"primary",onClick:z=>N(n)},{default:l(()=>[...e[12]||(e[12]=[i(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/edit"]]]),p((o(),u(m,{type:"primary",link:""},{default:l(()=>[t(I,{to:{path:a(re)("setting.dict.dict_data/lists"),query:{id:n.id}}},{default:l(()=>[...e[13]||(e[13]=[i(" 数据管理 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[f,["setting.dict.dict_data/lists"]]]),p((o(),u(m,{link:"",type:"danger",onClick:z=>E(n.id)},{default:l(()=>[...e[14]||(e[14]=[i(" 删除 ",-1)])]),_:1},8,["onClick"])),[[f,["setting.dict.dict_type/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",ye,[t(O,{modelValue:a(c),"onUpdate:modelValue":e[4]||(e[4]=n=>le(c)?c.value=n:null),onChange:a(v)},null,8,["modelValue","onChange"])])])),[[h,a(c).loading]])]),_:1}),a(y)?(o(),u(_e,{key:0,ref_key:"editRef",ref:b,onSuccess:a(v),onClose:e[5]||(e[5]=n=>y.value=!1)},null,8,["onSuccess"])):ne("",!0)])}}});export{Te as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-Bt6_Z5lB.js
diff --git a/server/public/admin/assets/index-BtQeIy4O.js b/server/public/admin/assets/index-BtQeIy4O.js
new file mode 100644
index 000000000..15047363f
--- /dev/null
+++ b/server/public/admin/assets/index-BtQeIy4O.js
@@ -0,0 +1,7 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-fKZf1wl9.js
+import{o as Me,R as Ee,E as p,ap as pt,ac as Te,bi as ft,q as d,r as g,s as n,v as a,D as i,u as c,cV as gt,w as vt,cO as bt,L as r,T as u,P as D,by as fe,K as yt,cN as kt,cW as Nt,bI as Ct,cX as wt,ae as I,cY as Ue,cZ as ze,c_ as Vt,c$ as ne,cv as ge,F,G as K,cD as $t,at as Oe,bu as xt,d0 as St,O as y,bh as Pt,bk as It,I as At,$ as Dt,ck as Lt,Z as ht,_ as Et,bB as Tt,bj as Ut,cl as zt,as as Ot,b6 as Mt,bm as Ft,bn as qt,bA as jt,b9 as Bt,bs as Rt,a4 as Jt,d1 as Kt,bq as Yt,d2 as Ht,d3 as Zt,cp as Gt,d4 as Wt,b7 as Xt,bt as Qt,J as en,bp as tn,ba as Y,M as V,p as q,e as le}from"./.pnpm-BadRMC3e.js";import{x as nn,y as ln,z as an,A as sn,B as on,C as un,D as dn,E as rn,F as mn,G as cn,H as _n,I as pn}from"./first_visit-BH-WCx1t.js";import{_ as fn}from"./index-C360OAjQ.js";const gn={class:"promotion-page","element-loading-text":"正在加载推广配置"},vn={class:"page-header"},bn={class:"heading-copy"},yn={class:"heading-icon"},kn={class:"heading-actions"},Nn={class:"scope-chip"},Cn={key:0,class:"update-time"},wn={class:"metric-grid"},Vn={class:"metric-card"},$n={class:"metric-icon is-teal"},xn={class:"metric-card"},Sn={class:"metric-icon is-blue"},Pn={class:"metric-card"},In={class:"metric-icon is-green"},An={class:"metric-card"},Dn={class:"metric-icon is-orange"},Ln={class:"workspace-card"},hn={class:"tab-nav","aria-label":"企业微信获客助手功能"},En={key:0,class:"tab-content links-tab"},Tn={class:"section-heading"},Un={key:0,class:"pool-layout"},zn={class:"pool-sidebar"},On=["onClick"],Mn={class:"pool-main"},Fn={key:0,class:"pool-toolbar"},qn={class:"pool-title-row"},jn={class:"owner-tag"},Bn={class:"toolbar-actions"},Rn={class:"member-cell"},Jn=["title"],Kn={key:1,class:"legacy-tag"},Yn={key:1,class:"tab-content customer-stats-tab"},Hn={class:"section-heading customer-stats-heading"},Zn={class:"customer-heading-actions"},Gn={key:0,class:"update-time"},Wn={class:"customer-metric-grid","aria-label":"获客客户消息汇总"},Xn={class:"customer-metric-card"},Qn={class:"metric-icon is-teal"},el={class:"customer-metric-card"},tl={class:"metric-icon is-blue"},nl={class:"customer-metric-card"},ll={class:"metric-icon is-green"},al={class:"customer-metric-card"},sl={class:"metric-icon is-orange"},il={class:"customer-filter-bar"},ol=["title"],ul={class:"member-cell"},dl={class:"member-cell"},rl={class:"customer-pagination"},ml={key:2,class:"tab-content authorization-tab"},cl={class:"configuration-state"},_l={key:0},pl={key:1},fl={key:0,class:"missing-fields"},gl={class:"callback-list"},vl={class:"configuration-actions"},bl={key:3,class:"tab-content install-tab"},yl={class:"section-heading"},kl={class:"install-grid"},Nl={class:"code-card"},Cl={class:"code-card"},wl={class:"rule-panel"},Vl={class:"test-row"},$l={class:"form-grid"},xl={class:"form-grid"},Sl=Me({name:"firstVisitWecomPromotionPage"}),Pl=Me({...Sl,setup(Il){const ve=()=>({meta:{scope_label:"",generated_at:""},config:{mode:"internal",configured:!1,ready:!1,missing:[],corp_id_masked:"",agent_id:"",secret_configured:!1,official_doc:""},summary:{configured_apps:0,pool_count:0,online_links:0,today_clicks:0},pools:[],links:[],member_options:[],customer_acquisition_link_example:"https://work.weixin.qq.com/ca/xxxxxxxx"}),m=Y(ve()),W=V(!1),$=V("links"),T=V(),j=V(),H=V(!1),Z=V(!1),ae=V(!1),se=V(!1),X=V(!1),ie=V(!1),oe=V(0),L=Y({id:0,name:"",fallback_url:"",status:1}),_=Y({id:0,pool_id:0,name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),G=V(!1),be=V(!1),ue=V(!1),N=Y({link_id:"",userid:"",chat_status:""}),x=Y({page_no:1,page_size:20,total:0}),b=Y({summary:{customer_count:0,messaged_customer_count:0,message_customer_rate:0,received_message_count:0,message_count_known_count:0},rows:[],link_options:[],member_options:[],meta:{last_synced_at:""}}),C=q(()=>m.pools.find(t=>Number(t.id)===T.value)),de=q(()=>m.links.filter(t=>Number(t.pool_id)===T.value)),ye=q(()=>de.value.filter(t=>!!t.remote_link_id).length),ke=q(()=>de.value.length-ye.value),U=q(()=>m.pools.find(t=>Number(t.id)===j.value)),Fe=q(()=>b.link_options.length?b.link_options:m.links.filter(t=>t.id).map(t=>({id:Number(t.id),name:t.name||t.remote_link_id||`链接 ${t.id}`}))),qe=q(()=>b.member_options.length?b.member_options:m.member_options.map(t=>({id:Number(t.id),userid:String(t.userid||""),name:t.name,department_name:Array.isArray(t.dept_names)?t.dept_names.join(" / "):t.department_name||t.dept_name||""})));Ee(()=>m.pools.map(t=>Number(t.id)).join(","),()=>{const t=m.pools.map(e=>Number(e.id));(!T.value||!t.includes(T.value))&&(T.value=t[0]),(!j.value||!t.includes(j.value))&&(j.value=t[0])},{immediate:!0}),Ee($,t=>{t==="customer-stats"&&!be.value&&z()});async function S(){W.value=!0;try{const t=await ln();Object.assign(m,ve(),t||{})}catch(t){p.error((t==null?void 0:t.message)||"企业微信推广配置加载失败")}finally{W.value=!1}}function je(t){return m.links.filter(e=>Number(e.pool_id)===Number(t)).length}function re(t){Object.assign(L,t?{id:Number(t.id),name:t.name,fallback_url:t.fallback_url||"",status:Number(t.status)}:{id:0,name:"",fallback_url:"",status:1}),H.value=!0}async function Be(){if(!L.name.trim())return p.warning("请输入分流方案名称");ae.value=!0;try{const t=await an({...L});H.value=!1,await S(),t!=null&&t.id&&(T.value=Number(t.id)),p.success("分流方案已保存")}catch(t){p.error((t==null?void 0:t.message)||"分流方案保存失败")}finally{ae.value=!1}}async function Re(t){await le.confirm(`删除“${t.name}”后,该方案下的获客助手链接也会停用。确认继续?`,"删除分流方案",{type:"warning"});try{await sn({id:Number(t.id)}),p.success("分流方案已删除"),await S()}catch(e){p.error((e==null?void 0:e.message)||"删除失败")}}function Ne(t){if(!C.value)return;const e=t&&Number(t.active_start)>0&&Number(t.active_end)>0?[Ie(t.active_start),Ie(t.active_end)]:[],s=new Set(((t==null?void 0:t.range_userids)||[]).map(k=>String(k))),o=m.member_options.filter(k=>s.has(String(k.userid))).map(k=>Number(k.id));Object.assign(_,t?{id:Number(t.id),pool_id:Number(t.pool_id),name:t.name,group_name:t.group_name||"默认分组",wecom_url:t.wecom_url,member_admin_ids:o,skip_verify:Number(t.skip_verify)===1?1:0,legacy:!t.is_official,weight:Number(t.weight)||1,status:Number(t.status),daily_limit:Number(t.daily_limit)||0,active_range:e,remark:t.remark||""}:{id:0,pool_id:Number(C.value.id),name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),Z.value=!0}async function Je(){var t,e;if(!_.name.trim())return p.warning("请输入获客链接名称");if(_.legacy&&!_.wecom_url.trim())return p.warning("请填写企业微信获客助手链接");if(!_.legacy&&!_.member_admin_ids.length)return p.warning("请至少选择一名获客成员");se.value=!0;try{await on({..._,active_start:((t=_.active_range)==null?void 0:t[0])||"",active_end:((e=_.active_range)==null?void 0:e[1])||""}),Z.value=!1,await S(),p.success(_.legacy?"本地分流规则已保存":"企业微信官方获客链接已保存")}catch(s){p.error((s==null?void 0:s.message)||"获客助手链接保存失败")}finally{se.value=!1}}async function Ce(){X.value=!0;try{const t=await un();t!=null&&t.has_link?p.success((t==null?void 0:t.message)||"API 验证通过:应用凭证、可信 IP 与获客助手权限均可用"):p.warning((t==null?void 0:t.message)||"API 权限可用,但当前应用还没有创建官方获客链接")}catch(t){p.error((t==null?void 0:t.message)||"获客助手 API 验证失败")}finally{X.value=!1}}async function Ke(){await S(),$.value==="customer-stats"&&await z()}function B(t,e){for(const s of e)if((t==null?void 0:t[s])!==void 0&&(t==null?void 0:t[s])!==null&&(t==null?void 0:t[s])!==""){const o=Number(t[s]);return Number.isFinite(o)?o:0}return 0}async function z(){var t,e;G.value=!0;try{const s=await nn({page_no:x.page_no,page_size:x.page_size,promotion_link_id:N.link_id?Number(N.link_id):void 0,userid:N.userid||void 0,chat_status:N.chat_status===""?void 0:N.chat_status==="messaged"?1:N.chat_status==="unknown"?2:0}),o=(s==null?void 0:s.summary)||(s==null?void 0:s.stats)||{},k=B(o,["customer_count","total_customers","customer_total","total"]),f=B(o,["messaged_customer_count","started_chat_count","chat_customer_count","message_customer_count","chatting_customers"]),A=["message_customer_rate","chat_customer_rate","messaged_rate","chat_rate"],Q=A.some(P=>(o==null?void 0:o[P])!==void 0&&(o==null?void 0:o[P])!==null&&(o==null?void 0:o[P])!=="");Object.assign(b.summary,{customer_count:k,messaged_customer_count:f,message_customer_rate:Q?B(o,A):k?f/k*100:0,received_message_count:B(o,["received_message_count","recv_msg_cnt","recv_msg_count","total_recv_msg_cnt","message_count"]),message_count_known_count:B(o,["message_count_known_count","exact_message_customer_count"])}),b.rows=Array.isArray(s==null?void 0:s.lists)?s.lists:Array.isArray(s==null?void 0:s.list)?s.list:Array.isArray(s==null?void 0:s.rows)?s.rows:[],x.total=Number((s==null?void 0:s.total)??(s==null?void 0:s.count)??((t=s==null?void 0:s.page)==null?void 0:t.total)??b.rows.length)||0;const w=(s==null?void 0:s.filters)||{},ee=(s==null?void 0:s.link_options)||(w==null?void 0:w.link_options)||(w==null?void 0:w.links),O=(s==null?void 0:s.member_options)||(w==null?void 0:w.member_options)||(w==null?void 0:w.members);Array.isArray(ee)&&(b.link_options=ee),Array.isArray(O)&&(b.member_options=O);const te=b.rows.reduce((P,v)=>{const R=v.last_synced_at||v.last_sync_time||v.synced_at||v.sync_time||"";return Number(R||0)>Number(P||0)?R:P},""),E=((e=s==null?void 0:s.meta)==null?void 0:e.last_synced_at)||(s==null?void 0:s.last_synced_at)||te||b.meta.last_synced_at||"";Object.assign(b.meta,(s==null?void 0:s.meta)||{},{last_synced_at:E?_e(E):""}),be.value=!0}catch(s){p.error((s==null?void 0:s.message)||"获客客户统计加载失败")}finally{G.value=!1}}function Ye(){x.page_no=1,z()}function He(){Object.assign(N,{link_id:"",userid:"",chat_status:""}),x.page_no=1,z()}function Ze(){x.page_no=1,z()}async function Ge(){var t,e,s;ue.value=!0;try{const o=await dn({promotion_link_id:N.link_id?Number(N.link_id):void 0}),k=Number((o==null?void 0:o.scanned)??(o==null?void 0:o.customer_scanned)??((t=o==null?void 0:o.customers)==null?void 0:t.scanned)??0),f=Number((o==null?void 0:o.created)??(o==null?void 0:o.customer_created)??((e=o==null?void 0:o.customers)==null?void 0:e.created)??0),A=Number((o==null?void 0:o.updated)??(o==null?void 0:o.customer_updated)??((s=o==null?void 0:o.customers)==null?void 0:s.updated)??0);p.success((o==null?void 0:o.message)||`客户同步完成:扫描 ${h(k)} 位,新增 ${h(f)} 位,更新 ${h(A)} 位`),x.page_no=1,await Promise.all([S(),z()])}catch(o){p.error((o==null?void 0:o.message)||"获客客户同步失败")}finally{ue.value=!1}}async function We(){if(!C.value)return p.warning("请先选择分流方案");ie.value=!0;try{const t=await rn({pool_id:Number(C.value.id)}),e=`扫描 ${Number((t==null?void 0:t.scanned)||0)} 条,新建 ${Number((t==null?void 0:t.created)||0)} 条,更新 ${Number((t==null?void 0:t.updated)||0)} 条,按权限跳过 ${Number((t==null?void 0:t.skipped)||0)} 条,失败 ${Number((t==null?void 0:t.failed)||0)} 条`;Number((t==null?void 0:t.scanned)||0)===0?await le.alert(`${(t==null?void 0:t.empty_reason)||"当前应用没有可同步的官方获客链接"}
+========
+import{o as Me,R as Ee,E as p,ap as pt,ac as Te,bi as ft,q as d,r as g,s as n,v as a,D as i,u as c,cV as gt,w as vt,cO as bt,L as r,T as u,P as D,by as fe,K as yt,cN as kt,cW as Nt,bI as Ct,cX as wt,ae as I,cY as Ue,cZ as ze,c_ as Vt,c$ as ne,cv as ge,F,G as K,cD as $t,at as Oe,bu as xt,d0 as St,O as y,bh as Pt,bk as It,I as At,$ as Dt,ck as Lt,Z as ht,_ as Et,bB as Tt,bj as Ut,cl as zt,as as Ot,b6 as Mt,bm as Ft,bn as qt,bA as jt,b9 as Bt,bs as Rt,a4 as Jt,d1 as Kt,bq as Yt,d2 as Ht,d3 as Zt,cp as Gt,d4 as Wt,b7 as Xt,bt as Qt,J as en,bp as tn,ba as Y,M as V,p as q,e as le}from"./.pnpm-BadRMC3e.js";import{x as nn,y as ln,z as an,A as sn,B as on,C as un,D as dn,E as rn,F as mn,G as cn,H as _n,I as pn}from"./first_visit-LvTGTIzk.js";import{_ as fn}from"./index-C53kWH2_.js";const gn={class:"promotion-page","element-loading-text":"正在加载推广配置"},vn={class:"page-header"},bn={class:"heading-copy"},yn={class:"heading-icon"},kn={class:"heading-actions"},Nn={class:"scope-chip"},Cn={key:0,class:"update-time"},wn={class:"metric-grid"},Vn={class:"metric-card"},$n={class:"metric-icon is-teal"},xn={class:"metric-card"},Sn={class:"metric-icon is-blue"},Pn={class:"metric-card"},In={class:"metric-icon is-green"},An={class:"metric-card"},Dn={class:"metric-icon is-orange"},Ln={class:"workspace-card"},hn={class:"tab-nav","aria-label":"企业微信获客助手功能"},En={key:0,class:"tab-content links-tab"},Tn={class:"section-heading"},Un={key:0,class:"pool-layout"},zn={class:"pool-sidebar"},On=["onClick"],Mn={class:"pool-main"},Fn={key:0,class:"pool-toolbar"},qn={class:"pool-title-row"},jn={class:"owner-tag"},Bn={class:"toolbar-actions"},Rn={class:"member-cell"},Jn=["title"],Kn={key:1,class:"legacy-tag"},Yn={key:1,class:"tab-content customer-stats-tab"},Hn={class:"section-heading customer-stats-heading"},Zn={class:"customer-heading-actions"},Gn={key:0,class:"update-time"},Wn={class:"customer-metric-grid","aria-label":"获客客户消息汇总"},Xn={class:"customer-metric-card"},Qn={class:"metric-icon is-teal"},el={class:"customer-metric-card"},tl={class:"metric-icon is-blue"},nl={class:"customer-metric-card"},ll={class:"metric-icon is-green"},al={class:"customer-metric-card"},sl={class:"metric-icon is-orange"},il={class:"customer-filter-bar"},ol=["title"],ul={class:"member-cell"},dl={class:"member-cell"},rl={class:"customer-pagination"},ml={key:2,class:"tab-content authorization-tab"},cl={class:"configuration-state"},_l={key:0},pl={key:1},fl={key:0,class:"missing-fields"},gl={class:"callback-list"},vl={class:"configuration-actions"},bl={key:3,class:"tab-content install-tab"},yl={class:"section-heading"},kl={class:"install-grid"},Nl={class:"code-card"},Cl={class:"code-card"},wl={class:"rule-panel"},Vl={class:"test-row"},$l={class:"form-grid"},xl={class:"form-grid"},Sl=Me({name:"firstVisitWecomPromotionPage"}),Pl=Me({...Sl,setup(Il){const ve=()=>({meta:{scope_label:"",generated_at:""},config:{mode:"internal",configured:!1,ready:!1,missing:[],corp_id_masked:"",agent_id:"",secret_configured:!1,official_doc:""},summary:{configured_apps:0,pool_count:0,online_links:0,today_clicks:0},pools:[],links:[],member_options:[],customer_acquisition_link_example:"https://work.weixin.qq.com/ca/xxxxxxxx"}),m=Y(ve()),W=V(!1),$=V("links"),T=V(),j=V(),H=V(!1),Z=V(!1),ae=V(!1),se=V(!1),X=V(!1),ie=V(!1),oe=V(0),L=Y({id:0,name:"",fallback_url:"",status:1}),_=Y({id:0,pool_id:0,name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),G=V(!1),be=V(!1),ue=V(!1),N=Y({link_id:"",userid:"",chat_status:""}),x=Y({page_no:1,page_size:20,total:0}),b=Y({summary:{customer_count:0,messaged_customer_count:0,message_customer_rate:0,received_message_count:0,message_count_known_count:0},rows:[],link_options:[],member_options:[],meta:{last_synced_at:""}}),C=q(()=>m.pools.find(t=>Number(t.id)===T.value)),de=q(()=>m.links.filter(t=>Number(t.pool_id)===T.value)),ye=q(()=>de.value.filter(t=>!!t.remote_link_id).length),ke=q(()=>de.value.length-ye.value),U=q(()=>m.pools.find(t=>Number(t.id)===j.value)),Fe=q(()=>b.link_options.length?b.link_options:m.links.filter(t=>t.id).map(t=>({id:Number(t.id),name:t.name||t.remote_link_id||`链接 ${t.id}`}))),qe=q(()=>b.member_options.length?b.member_options:m.member_options.map(t=>({id:Number(t.id),userid:String(t.userid||""),name:t.name,department_name:Array.isArray(t.dept_names)?t.dept_names.join(" / "):t.department_name||t.dept_name||""})));Ee(()=>m.pools.map(t=>Number(t.id)).join(","),()=>{const t=m.pools.map(e=>Number(e.id));(!T.value||!t.includes(T.value))&&(T.value=t[0]),(!j.value||!t.includes(j.value))&&(j.value=t[0])},{immediate:!0}),Ee($,t=>{t==="customer-stats"&&!be.value&&z()});async function S(){W.value=!0;try{const t=await ln();Object.assign(m,ve(),t||{})}catch(t){p.error((t==null?void 0:t.message)||"企业微信推广配置加载失败")}finally{W.value=!1}}function je(t){return m.links.filter(e=>Number(e.pool_id)===Number(t)).length}function re(t){Object.assign(L,t?{id:Number(t.id),name:t.name,fallback_url:t.fallback_url||"",status:Number(t.status)}:{id:0,name:"",fallback_url:"",status:1}),H.value=!0}async function Be(){if(!L.name.trim())return p.warning("请输入分流方案名称");ae.value=!0;try{const t=await an({...L});H.value=!1,await S(),t!=null&&t.id&&(T.value=Number(t.id)),p.success("分流方案已保存")}catch(t){p.error((t==null?void 0:t.message)||"分流方案保存失败")}finally{ae.value=!1}}async function Re(t){await le.confirm(`删除“${t.name}”后,该方案下的获客助手链接也会停用。确认继续?`,"删除分流方案",{type:"warning"});try{await sn({id:Number(t.id)}),p.success("分流方案已删除"),await S()}catch(e){p.error((e==null?void 0:e.message)||"删除失败")}}function Ne(t){if(!C.value)return;const e=t&&Number(t.active_start)>0&&Number(t.active_end)>0?[Ie(t.active_start),Ie(t.active_end)]:[],s=new Set(((t==null?void 0:t.range_userids)||[]).map(k=>String(k))),o=m.member_options.filter(k=>s.has(String(k.userid))).map(k=>Number(k.id));Object.assign(_,t?{id:Number(t.id),pool_id:Number(t.pool_id),name:t.name,group_name:t.group_name||"默认分组",wecom_url:t.wecom_url,member_admin_ids:o,skip_verify:Number(t.skip_verify)===1?1:0,legacy:!t.is_official,weight:Number(t.weight)||1,status:Number(t.status),daily_limit:Number(t.daily_limit)||0,active_range:e,remark:t.remark||""}:{id:0,pool_id:Number(C.value.id),name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),Z.value=!0}async function Je(){var t,e;if(!_.name.trim())return p.warning("请输入获客链接名称");if(_.legacy&&!_.wecom_url.trim())return p.warning("请填写企业微信获客助手链接");if(!_.legacy&&!_.member_admin_ids.length)return p.warning("请至少选择一名获客成员");se.value=!0;try{await on({..._,active_start:((t=_.active_range)==null?void 0:t[0])||"",active_end:((e=_.active_range)==null?void 0:e[1])||""}),Z.value=!1,await S(),p.success(_.legacy?"本地分流规则已保存":"企业微信官方获客链接已保存")}catch(s){p.error((s==null?void 0:s.message)||"获客助手链接保存失败")}finally{se.value=!1}}async function Ce(){X.value=!0;try{const t=await un();t!=null&&t.has_link?p.success((t==null?void 0:t.message)||"API 验证通过:应用凭证、可信 IP 与获客助手权限均可用"):p.warning((t==null?void 0:t.message)||"API 权限可用,但当前应用还没有创建官方获客链接")}catch(t){p.error((t==null?void 0:t.message)||"获客助手 API 验证失败")}finally{X.value=!1}}async function Ke(){await S(),$.value==="customer-stats"&&await z()}function B(t,e){for(const s of e)if((t==null?void 0:t[s])!==void 0&&(t==null?void 0:t[s])!==null&&(t==null?void 0:t[s])!==""){const o=Number(t[s]);return Number.isFinite(o)?o:0}return 0}async function z(){var t,e;G.value=!0;try{const s=await nn({page_no:x.page_no,page_size:x.page_size,promotion_link_id:N.link_id?Number(N.link_id):void 0,userid:N.userid||void 0,chat_status:N.chat_status===""?void 0:N.chat_status==="messaged"?1:N.chat_status==="unknown"?2:0}),o=(s==null?void 0:s.summary)||(s==null?void 0:s.stats)||{},k=B(o,["customer_count","total_customers","customer_total","total"]),f=B(o,["messaged_customer_count","started_chat_count","chat_customer_count","message_customer_count","chatting_customers"]),A=["message_customer_rate","chat_customer_rate","messaged_rate","chat_rate"],Q=A.some(P=>(o==null?void 0:o[P])!==void 0&&(o==null?void 0:o[P])!==null&&(o==null?void 0:o[P])!=="");Object.assign(b.summary,{customer_count:k,messaged_customer_count:f,message_customer_rate:Q?B(o,A):k?f/k*100:0,received_message_count:B(o,["received_message_count","recv_msg_cnt","recv_msg_count","total_recv_msg_cnt","message_count"]),message_count_known_count:B(o,["message_count_known_count","exact_message_customer_count"])}),b.rows=Array.isArray(s==null?void 0:s.lists)?s.lists:Array.isArray(s==null?void 0:s.list)?s.list:Array.isArray(s==null?void 0:s.rows)?s.rows:[],x.total=Number((s==null?void 0:s.total)??(s==null?void 0:s.count)??((t=s==null?void 0:s.page)==null?void 0:t.total)??b.rows.length)||0;const w=(s==null?void 0:s.filters)||{},ee=(s==null?void 0:s.link_options)||(w==null?void 0:w.link_options)||(w==null?void 0:w.links),O=(s==null?void 0:s.member_options)||(w==null?void 0:w.member_options)||(w==null?void 0:w.members);Array.isArray(ee)&&(b.link_options=ee),Array.isArray(O)&&(b.member_options=O);const te=b.rows.reduce((P,v)=>{const R=v.last_synced_at||v.last_sync_time||v.synced_at||v.sync_time||"";return Number(R||0)>Number(P||0)?R:P},""),E=((e=s==null?void 0:s.meta)==null?void 0:e.last_synced_at)||(s==null?void 0:s.last_synced_at)||te||b.meta.last_synced_at||"";Object.assign(b.meta,(s==null?void 0:s.meta)||{},{last_synced_at:E?_e(E):""}),be.value=!0}catch(s){p.error((s==null?void 0:s.message)||"获客客户统计加载失败")}finally{G.value=!1}}function Ye(){x.page_no=1,z()}function He(){Object.assign(N,{link_id:"",userid:"",chat_status:""}),x.page_no=1,z()}function Ze(){x.page_no=1,z()}async function Ge(){var t,e,s;ue.value=!0;try{const o=await dn({promotion_link_id:N.link_id?Number(N.link_id):void 0}),k=Number((o==null?void 0:o.scanned)??(o==null?void 0:o.customer_scanned)??((t=o==null?void 0:o.customers)==null?void 0:t.scanned)??0),f=Number((o==null?void 0:o.created)??(o==null?void 0:o.customer_created)??((e=o==null?void 0:o.customers)==null?void 0:e.created)??0),A=Number((o==null?void 0:o.updated)??(o==null?void 0:o.customer_updated)??((s=o==null?void 0:o.customers)==null?void 0:s.updated)??0);p.success((o==null?void 0:o.message)||`客户同步完成:扫描 ${h(k)} 位,新增 ${h(f)} 位,更新 ${h(A)} 位`),x.page_no=1,await Promise.all([S(),z()])}catch(o){p.error((o==null?void 0:o.message)||"获客客户同步失败")}finally{ue.value=!1}}async function We(){if(!C.value)return p.warning("请先选择分流方案");ie.value=!0;try{const t=await rn({pool_id:Number(C.value.id)}),e=`扫描 ${Number((t==null?void 0:t.scanned)||0)} 条,新建 ${Number((t==null?void 0:t.created)||0)} 条,更新 ${Number((t==null?void 0:t.updated)||0)} 条,按权限跳过 ${Number((t==null?void 0:t.skipped)||0)} 条,失败 ${Number((t==null?void 0:t.failed)||0)} 条`;Number((t==null?void 0:t.scanned)||0)===0?await le.alert(`${(t==null?void 0:t.empty_reason)||"当前应用没有可同步的官方获客链接"}
+>>>>>>>> yz-0803:server/public/admin/assets/index-BtQeIy4O.js
+
+${(t==null?void 0:t.suggestion)||""}`,"没有可同步的官方链接",{type:"warning",confirmButtonText:"知道了"}):t!=null&&t.failed?p.warning(e):p.success(e),await S()}catch(t){p.error((t==null?void 0:t.message)||"同步企业微信获客链接失败")}finally{ie.value=!1}}async function Xe(t){oe.value=Number(t.id);try{await mn({id:Number(t.id)}),p.success("企业微信官方详情已刷新"),await S()}catch(e){p.error((e==null?void 0:e.message)||"刷新官方详情失败")}finally{oe.value=0}}async function Qe(t,e){if(t==="local"){await we(e);return}if(t==="remote"){await le.confirm(`将永久删除企业微信后台中的“${e.name}”,现有推广页面会立即失效,且无法恢复。确认继续?`,"永久删除企业微信获客链接",{type:"error",confirmButtonText:"永久删除",cancelButtonText:"取消"});try{await cn({id:Number(e.id)}),p.success("企业微信获客链接已永久删除,本地记录已保留并停止分流"),await S()}catch(s){p.error((s==null?void 0:s.message)||"永久删除失败")}}}async function et(t,e){try{await _n({id:Number(t.id),status:e?1:0}),t.status=e?1:0,p.success(e?"链接已上线":"链接已下线"),await S()}catch(s){p.error((s==null?void 0:s.message)||"状态更新失败"),await S()}}async function we(t){await le.confirm(`仅从本地分流池移除“${t.name}”,不会删除企业微信后台的官方链接。确认继续?`,"从本地移除",{type:"warning"});try{await pn({id:Number(t.id)}),p.success("已从本地分流池移除"),await S()}catch(e){p.error((e==null?void 0:e.message)||"删除失败")}}function Ve(t){const e=Math.floor(Date.now()/1e3);return Number(t.remote_status)===2?{label:"企业微信已删除",className:"is-error"}:t.valid_customer_acquisition_link===!1?{label:"非获客助手链接",className:"is-error"}:Number(t.status)!==1?{label:"已下线",className:"is-muted"}:Number(t.active_start)>0&&Number(t.active_start)>e?{label:"尚未生效",className:"is-waiting"}:Number(t.active_end)>0&&Number(t.active_end)
${e.marker}${e.seriesName}: ¥${Number(e.value).toFixed(2)}`}},grid:{left:60,right:24,top:36,bottom:36},xAxis:{type:"category",data:s.chart.dates,axisLabel:{interval:s.chart.dates.length>15?"auto":0,rotate:s.chart.dates.length>10?30:0}},yAxis:{type:"value",name:"金额(元)",axisLabel:{formatter:t=>t>=1e4?(t/1e4).toFixed(1)+"万":String(t)}},series:[{name:"业绩",type:"line",smooth:!0,showSymbol:!0,symbolSize:6,lineStyle:{width:3,color:"#4a78ff"},itemStyle:{color:"#4a78ff"},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(74, 120, 255, 0.25)"},{offset:1,color:"rgba(74, 120, 255, 0.02)"}]}},data:s.chart.amounts}]})),F=(t,e)=>{var p;const l=((p=s.summary)==null?void 0:p[t])??0;return e==="money"?`¥${Number(l).toFixed(2)}`:String(l)},u=async()=>{_.value=!0;try{const t={time_type:d.time_type};d.time_type==="custom"&&(t.start_date=r.value[0]||"",t.end_date=r.value[1]||"");const e=await X(t);Object.assign(s,e||{})}catch(t){console.error("获取业绩数据失败:",t),W.error((t==null?void 0:t.msg)||"获取业绩数据失败")}finally{_.value=!1}},N=()=>{d.time_type!=="custom"&&(r.value=[],u())},$=()=>{var t;((t=r.value)==null?void 0:t.length)===2&&u()},P=()=>{d.time_type="month",r.value=[],u()};return L(()=>{u()}),(t,e)=>{const l=q,p=z,y=Y,M=A,v=H,R=O,h=I,T=Q;return c(),k("div",ee,[o(h,{class:"!border-none",shadow:"never"},{default:a(()=>[o(R,{inline:!0,class:"stats-filter-form"},{default:a(()=>[o(y,{label:"时间范围"},{default:a(()=>[o(p,{modelValue:d.time_type,"onUpdate:modelValue":e[0]||(e[0]=n=>d.time_type=n),onChange:N},{default:a(()=>[o(l,{label:"today"},{default:a(()=>[...e[2]||(e[2]=[i("今天",-1)])]),_:1}),o(l,{label:"yesterday"},{default:a(()=>[...e[3]||(e[3]=[i("昨天",-1)])]),_:1}),o(l,{label:"week"},{default:a(()=>[...e[4]||(e[4]=[i("最近7天",-1)])]),_:1}),o(l,{label:"month"},{default:a(()=>[...e[5]||(e[5]=[i("最近30天",-1)])]),_:1}),o(l,{label:"custom"},{default:a(()=>[...e[6]||(e[6]=[i("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.time_type==="custom"?(c(),f(y,{key:0},{default:a(()=>[o(M,{modelValue:r.value,"onUpdate:modelValue":e[1]||(e[1]=n=>r.value=n),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:$},null,8,["modelValue"])]),_:1})):G("",!0),o(y,null,{default:a(()=>[o(v,{type:"primary",loading:_.value,onClick:u},{default:a(()=>[...e[7]||(e[7]=[i("查询",-1)])]),_:1},8,["loading"]),o(v,{onClick:P},{default:a(()=>[...e[8]||(e[8]=[i("重置",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),m("div",te,[(c(),k(U,null,j(w,n=>m("div",{key:n.key,class:x(["stats-kpi-card",n.cardClass])},[m("div",ae,g(n.label),1),m("div",{class:x(["stats-kpi-value",{"is-money":n.type==="money"}])},g(F(n.key,n.type)),3)],2)),64))]),o(h,{class:"!border-none mt-4",shadow:"never"},{header:a(()=>[m("div",oe,[e[9]||(e[9]=m("span",{class:"card-title"},"业绩趋势",-1)),m("span",se,g(S.value)+" · 履约完成业绩",1)])]),default:a(()=>[D.value?(c(),f(J(K),{key:0,class:"stats-chart",option:B.value,autoresize:""},null,8,["option"])):(c(),f(T,{key:1,description:"暂无数据"}))]),_:1})])}}}),ue=Z(le,[["__scopeId","data-v-297158c8"]]);export{ue as default};
+========
+import{o as V,ap as L,q as c,r as k,v as o,D as a,b9 as O,b6 as Y,bc as z,bb as q,L as i,O as f,bp as A,P as G,K as H,bg as I,s as m,F as U,G as j,ae as x,T as g,u as J,cJ as K,bB as Q,M as C,ba as E,p as b,E as W}from"./.pnpm-BadRMC3e.js";import{r as X}from"./stats-O2EioTJv.js";import{_ as Z}from"./index-C53kWH2_.js";const ee={class:"assistant-performance-page"},te={class:"stats-kpi-grid"},ae={class:"stats-kpi-label"},oe={class:"card-header"},se={class:"card-hint"},ne=V({name:"assistantPerformancePage"}),le=V({...ne,setup(re){const _=C(!1),r=C([]),d=E({time_type:"month",start_date:"",end_date:""}),s=E({date_range:[],summary:{total_amount:0,total_count:0},chart:{dates:[],amounts:[],counts:[]}}),w=[{key:"total_amount",label:"业绩",type:"money",cardClass:""},{key:"total_count",label:"有效订单数",type:"count",cardClass:""}],S=b(()=>{var t;return(t=s.date_range)!=null&&t.length?`${s.date_range[0]} 至 ${s.date_range[1]}`:"未选择"}),D=b(()=>s.chart.dates.length>0&&s.chart.amounts.some(t=>t>0)),B=b(()=>({tooltip:{trigger:"axis",formatter:t=>{const e=t[0];return`${e.axisValue}
${e.marker}${e.seriesName}: ¥${Number(e.value).toFixed(2)}`}},grid:{left:60,right:24,top:36,bottom:36},xAxis:{type:"category",data:s.chart.dates,axisLabel:{interval:s.chart.dates.length>15?"auto":0,rotate:s.chart.dates.length>10?30:0}},yAxis:{type:"value",name:"金额(元)",axisLabel:{formatter:t=>t>=1e4?(t/1e4).toFixed(1)+"万":String(t)}},series:[{name:"业绩",type:"line",smooth:!0,showSymbol:!0,symbolSize:6,lineStyle:{width:3,color:"#4a78ff"},itemStyle:{color:"#4a78ff"},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(74, 120, 255, 0.25)"},{offset:1,color:"rgba(74, 120, 255, 0.02)"}]}},data:s.chart.amounts}]})),F=(t,e)=>{var p;const l=((p=s.summary)==null?void 0:p[t])??0;return e==="money"?`¥${Number(l).toFixed(2)}`:String(l)},u=async()=>{_.value=!0;try{const t={time_type:d.time_type};d.time_type==="custom"&&(t.start_date=r.value[0]||"",t.end_date=r.value[1]||"");const e=await X(t);Object.assign(s,e||{})}catch(t){console.error("获取业绩数据失败:",t),W.error((t==null?void 0:t.msg)||"获取业绩数据失败")}finally{_.value=!1}},N=()=>{d.time_type!=="custom"&&(r.value=[],u())},$=()=>{var t;((t=r.value)==null?void 0:t.length)===2&&u()},P=()=>{d.time_type="month",r.value=[],u()};return L(()=>{u()}),(t,e)=>{const l=q,p=z,y=Y,M=A,v=H,R=O,h=I,T=Q;return c(),k("div",ee,[o(h,{class:"!border-none",shadow:"never"},{default:a(()=>[o(R,{inline:!0,class:"stats-filter-form"},{default:a(()=>[o(y,{label:"时间范围"},{default:a(()=>[o(p,{modelValue:d.time_type,"onUpdate:modelValue":e[0]||(e[0]=n=>d.time_type=n),onChange:N},{default:a(()=>[o(l,{label:"today"},{default:a(()=>[...e[2]||(e[2]=[i("今天",-1)])]),_:1}),o(l,{label:"yesterday"},{default:a(()=>[...e[3]||(e[3]=[i("昨天",-1)])]),_:1}),o(l,{label:"week"},{default:a(()=>[...e[4]||(e[4]=[i("最近7天",-1)])]),_:1}),o(l,{label:"month"},{default:a(()=>[...e[5]||(e[5]=[i("最近30天",-1)])]),_:1}),o(l,{label:"custom"},{default:a(()=>[...e[6]||(e[6]=[i("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.time_type==="custom"?(c(),f(y,{key:0},{default:a(()=>[o(M,{modelValue:r.value,"onUpdate:modelValue":e[1]||(e[1]=n=>r.value=n),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:$},null,8,["modelValue"])]),_:1})):G("",!0),o(y,null,{default:a(()=>[o(v,{type:"primary",loading:_.value,onClick:u},{default:a(()=>[...e[7]||(e[7]=[i("查询",-1)])]),_:1},8,["loading"]),o(v,{onClick:P},{default:a(()=>[...e[8]||(e[8]=[i("重置",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),m("div",te,[(c(),k(U,null,j(w,n=>m("div",{key:n.key,class:x(["stats-kpi-card",n.cardClass])},[m("div",ae,g(n.label),1),m("div",{class:x(["stats-kpi-value",{"is-money":n.type==="money"}])},g(F(n.key,n.type)),3)],2)),64))]),o(h,{class:"!border-none mt-4",shadow:"never"},{header:a(()=>[m("div",oe,[e[9]||(e[9]=m("span",{class:"card-title"},"业绩趋势",-1)),m("span",se,g(S.value)+" · 履约完成业绩",1)])]),default:a(()=>[D.value?(c(),f(J(K),{key:0,class:"stats-chart",option:B.value,autoresize:""},null,8,["option"])):(c(),f(T,{key:1,description:"暂无数据"}))]),_:1})])}}}),ue=Z(le,[["__scopeId","data-v-297158c8"]]);export{ue as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CQe_otmJ.js
diff --git a/server/public/admin/assets/index-CQoznTz_.js b/server/public/admin/assets/index-CQoznTz_.js
new file mode 100644
index 000000000..22487baec
--- /dev/null
+++ b/server/public/admin/assets/index-CQoznTz_.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-BqyG0pwQ.js
+import{o as G,W as he,ap as L,be as we,q as s,r as v,v as o,D as n,b9 as Ce,u as l,b6 as Ee,bc as Ve,bb as xe,L as d,O as u,bp as Se,C as A,P as R,bK as je,K as We,bg as De,s as c,F as U,G as z,T as g,ae as Oe,ac as w,bj as Re,bk as Te,a1 as Fe,bi as Ye,a8 as $e,M as T,ba as K,p as C,E as Me,n as q}from"./.pnpm-BadRMC3e.js";import{_ as Ne}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as Pe,k as Be,i as Ie,_ as Le}from"./index-C360OAjQ.js";import{d as Ae,e as Ue}from"./self_input_stats-DkfQGmqP.js";import{d as ze}from"./department-BFDDlesw.js";import{u as Ke}from"./usePaging-DMqUvFG-.js";import{_ as qe}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";import{_ as Ge}from"./yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js";import{u as Qe}from"./useMediaSourceOptions-CiFUiWgv.js";import"./index-2cRJ7Pdu.js";const He={class:"self-input-stats-page"},Je={class:"stats-kpi-grid"},Xe={class:"stats-kpi-label"},Ze={class:"card-header"},et={class:"card-header-main"},tt={class:"card-hint"},at={class:"card-header-actions"},nt={class:"dept-cell"},ot={key:1},lt={key:2,class:"text-gray-400"},st={class:"flex justify-end mt-4"},it=G({name:"selfInputStats"}),rt=G({...it,setup(dt){const Q=he(),E=$e(),V=T(!1),_=T([]),S=T([]),{mediaSourceOptions:F,mediaSourceLoading:Y,loadMediaSourceOptions:H,refreshMediaSourceOptions:j}=Qe(),J={value:"id",label:"name",children:"children"},f=K({date_range:[],summary:{},can_view_finance:!1}),$=new Set(["account_cost","cash_cost","roi"]),M=C(()=>!!f.can_view_finance),i=K({media_source:"",dept_id:void 0,time_type:"today",start_date:"",end_date:""}),W=C(()=>Be("stats.personal_account_cost/lists")||""),X=()=>{W.value&&Q.push(W.value)},Z=async t=>{i.time_type==="custom"&&(t.start_date=_.value[0]||"",t.end_date=_.value[1]||"");const e=await Ae(t);return Object.assign(f,(e==null?void 0:e.extend)||{}),e},ee=async()=>{try{const t=await ze({apply_data_scope:1});Array.isArray(t)&&(S.value=t)}catch{S.value=[]}},te=t=>{t&&j()},ae=async()=>{await j(),await m()};L(()=>{ee(),H()});const{pager:p,getLists:ne}=Ke({fetchFun:Z,params:i,firstLoading:!0}),N=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"order_amount",label:"订单金额",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"total_open_rate",label:"总开口率",type:"percent"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"open_appointment_rate",label:"开口挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"open_receive_rate",label:"开口接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],P=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"order_amount",label:"订单金额",type:"money",minWidth:110},{key:"account_cost",label:"账户消耗",type:"money",minWidth:110},{key:"total_open_rate",label:"总开口率",type:"percent",minWidth:100},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:110},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",minWidth:110},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:120},{key:"open_receive_rate",label:"开口接诊率",type:"percent",minWidth:110},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:100},{key:"cash_cost",label:"现金成本",type:"money",minWidth:100},{key:"roi",label:"ROI",type:"ratio",minWidth:80}],oe=C(()=>M.value?N:N.filter(t=>!$.has(t.key))),le=C(()=>M.value?P:P.filter(t=>!$.has(t.key))),se=C(()=>{var t;return(t=f.date_range)!=null&&t.length?`${f.date_range[0]} 至 ${f.date_range[1]}`:"未选择"}),m=async()=>{try{await ne()}catch(t){console.error("获取自录转化统计失败:",t),Me.error((t==null?void 0:t.msg)||"获取统计数据失败")}},ie=()=>{i.time_type!=="custom"&&(_.value=[],p.page=1,m())},re=()=>{_.value.length===2&&(p.page=1,m())},D=()=>{p.page=1,m()},de=()=>{i.media_source="",i.dept_id=void 0,i.time_type="today",_.value=[],p.page=1,p.size=15,m()},B=(t,e,r="count")=>{const b=(e==null?void 0:e[t])??0;return r==="money"?`¥${Number(b||0).toFixed(2)}`:r==="percent"?`${Number(b||0).toFixed(2)}%`:r==="ratio"?Number(b||0).toFixed(2):String(b??0)},pe=async()=>{var t;await j(),V.value=!0,await q(),(t=E.value)==null||t.open("add")},ce=async t=>{var e,r;V.value=!0,await q(),(e=E.value)==null||e.open("edit"),(r=E.value)==null||r.setFormData(t)},ue=async t=>{await Ie.confirm("确定删除该业绩记录?"),await Ue({id:t}),m()};return L(async()=>{await m()}),(t,e)=>{const r=xe,b=Ve,h=Ee,_e=Se,me=je,k=We,ye=Ce,I=De,fe=Pe,y=Te,be=Fe,ke=Re,ve=Ne,x=we("perms"),ge=Ye;return s(),v("div",He,[o(I,{class:"!border-none",shadow:"never"},{default:n(()=>[o(ye,{inline:!0,model:l(i),class:"stats-filter-form"},{default:n(()=>[o(h,{label:"时间范围"},{default:n(()=>[o(b,{modelValue:l(i).time_type,"onUpdate:modelValue":e[0]||(e[0]=a=>l(i).time_type=a),onChange:ie},{default:n(()=>[o(r,{label:"today"},{default:n(()=>[...e[6]||(e[6]=[d("今天",-1)])]),_:1}),o(r,{label:"yesterday"},{default:n(()=>[...e[7]||(e[7]=[d("昨天",-1)])]),_:1}),o(r,{label:"week"},{default:n(()=>[...e[8]||(e[8]=[d("最近7天",-1)])]),_:1}),o(r,{label:"month"},{default:n(()=>[...e[9]||(e[9]=[d("最近30天",-1)])]),_:1}),o(r,{label:"custom"},{default:n(()=>[...e[10]||(e[10]=[d("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(i).time_type==="custom"?(s(),u(h,{key:0},{default:n(()=>[o(_e,{modelValue:l(_),"onUpdate:modelValue":e[1]||(e[1]=a=>A(_)?_.value=a:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:re},null,8,["modelValue"])]),_:1})):R("",!0),o(h,{label:"部门"},{default:n(()=>[o(me,{modelValue:l(i).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>l(i).dept_id=a),data:l(S),"node-key":"id",props:J,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",style:{width:"220px"},onChange:D},null,8,["modelValue","data"])]),_:1}),o(h,{label:"自媒体来源"},{default:n(()=>[o(qe,{modelValue:l(i).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>l(i).media_source=a),options:l(F),loading:l(Y),placeholder:"全部来源","allow-create":!1,"select-style":"width: 220px",onChange:D,onVisibleChange:te},null,8,["modelValue","options","loading"])]),_:1}),o(h,null,{default:n(()=>[o(k,{type:"primary",loading:l(p).loading,onClick:D},{default:n(()=>[...e[11]||(e[11]=[d("查询",-1)])]),_:1},8,["loading"]),o(k,{onClick:de},{default:n(()=>[...e[12]||(e[12]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),c("div",Je,[(s(!0),v(U,null,z(l(oe),a=>(s(),v("div",{key:a.key,class:"stats-kpi-card"},[c("div",Xe,g(a.label),1),c("div",{class:Oe(["stats-kpi-value",{"is-money":a.type==="money"}])},g(B(a.key,l(f).summary,a.type)),3)]))),128))]),o(I,{class:"!border-none mt-4 stats-detail-card",shadow:"never"},{header:n(()=>[c("div",Ze,[c("div",et,[e[13]||(e[13]=c("span",{class:"card-title"},"业绩明细",-1)),c("span",tt,g(l(se)),1)]),c("div",at,[w((s(),u(k,{type:"primary",onClick:pe},{icon:n(()=>[o(fe,{name:"el-icon-Plus"})]),default:n(()=>[e[14]||(e[14]=d(" 新增业绩 ",-1))]),_:1})),[[x,["stats.personal_yeji/add"]]]),l(W)?w((s(),u(k,{key:0,onClick:X},{default:n(()=>[...e[15]||(e[15]=[d(" 账户消耗录入 ",-1)])]),_:1})),[[x,["stats.personal_account_cost/lists"]]]):R("",!0)])])]),default:n(()=>[w((s(),u(ke,{data:l(p).lists,border:"",size:"large","max-height":"640"},{default:n(()=>[o(y,{label:"日期",prop:"yeji_date","min-width":"110",fixed:"left"}),o(y,{label:"自媒体来源",prop:"media_source","min-width":"140","show-overflow-tooltip":""}),o(y,{label:"录入人",prop:"creator_name","min-width":"100"}),o(y,{label:"部门",prop:"dept_name","min-width":"140"},{default:n(({row:a})=>[a.dept_path?(s(),u(be,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:n(()=>[c("span",nt,g(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(s(),v("span",ot,g(a.dept_name),1)):(s(),v("span",lt,"未分配"))]),_:1}),(s(!0),v(U,null,z(l(le),a=>(s(),u(y,{key:a.key,label:a.label,"min-width":a.minWidth||100,align:"right"},{default:n(({row:O})=>[d(g(B(a.key,O,a.type)),1)]),_:2},1032,["label","min-width"]))),128)),o(y,{label:"备注",prop:"remark","min-width":"160","show-overflow-tooltip":""}),o(y,{label:"操作",width:"140",fixed:"right"},{default:n(({row:a})=>[w((s(),u(k,{type:"primary",link:"",onClick:O=>ce(a)},{default:n(()=>[...e[16]||(e[16]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/edit"]]]),w((s(),u(k,{type:"danger",link:"",onClick:O=>ue(a.id)},{default:n(()=>[...e[17]||(e[17]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/delete"]]])]),_:1})]),_:1},8,["data"])),[[ge,l(p).loading]]),c("div",st,[o(ve,{modelValue:l(p),"onUpdate:modelValue":e[4]||(e[4]=a=>A(p)?p.value=a:null),onChange:m},null,8,["modelValue"])])]),_:1}),l(V)?(s(),u(Ge,{key:0,ref_key:"yejiEditRef",ref:E,"media-source-options":l(F),"media-source-loading":l(Y),onSuccess:ae,onClose:e[5]||(e[5]=a=>V.value=!1)},null,8,["media-source-options","media-source-loading"])):R("",!0)])}}}),gt=Le(rt,[["__scopeId","data-v-47b76778"]]);export{gt as default};
+========
+import{o as G,W as he,ap as L,be as we,q as s,r as v,v as o,D as n,b9 as Ce,u as l,b6 as Ee,bc as Ve,bb as xe,L as d,O as u,bp as Se,C as A,P as R,bK as je,K as We,bg as De,s as c,F as U,G as z,T as g,ae as Oe,ac as w,bj as Re,bk as Te,a1 as Fe,bi as Ye,a8 as $e,M as T,ba as K,p as C,E as Me,n as q}from"./.pnpm-BadRMC3e.js";import{_ as Ne}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as Pe,k as Be,i as Ie,_ as Le}from"./index-C53kWH2_.js";import{d as Ae,e as Ue}from"./self_input_stats-CS42YNeC.js";import{d as ze}from"./department-drKzCnRw.js";import{u as Ke}from"./usePaging-DMqUvFG-.js";import{_ as qe}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";import{_ as Ge}from"./yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js";import{u as Qe}from"./useMediaSourceOptions-CA6EAKod.js";import"./index-ByXR3YHf.js";const He={class:"self-input-stats-page"},Je={class:"stats-kpi-grid"},Xe={class:"stats-kpi-label"},Ze={class:"card-header"},et={class:"card-header-main"},tt={class:"card-hint"},at={class:"card-header-actions"},nt={class:"dept-cell"},ot={key:1},lt={key:2,class:"text-gray-400"},st={class:"flex justify-end mt-4"},it=G({name:"selfInputStats"}),rt=G({...it,setup(dt){const Q=he(),E=$e(),V=T(!1),_=T([]),S=T([]),{mediaSourceOptions:F,mediaSourceLoading:Y,loadMediaSourceOptions:H,refreshMediaSourceOptions:j}=Qe(),J={value:"id",label:"name",children:"children"},f=K({date_range:[],summary:{},can_view_finance:!1}),$=new Set(["account_cost","cash_cost","roi"]),M=C(()=>!!f.can_view_finance),i=K({media_source:"",dept_id:void 0,time_type:"today",start_date:"",end_date:""}),W=C(()=>Be("stats.personal_account_cost/lists")||""),X=()=>{W.value&&Q.push(W.value)},Z=async t=>{i.time_type==="custom"&&(t.start_date=_.value[0]||"",t.end_date=_.value[1]||"");const e=await Ae(t);return Object.assign(f,(e==null?void 0:e.extend)||{}),e},ee=async()=>{try{const t=await ze({apply_data_scope:1});Array.isArray(t)&&(S.value=t)}catch{S.value=[]}},te=t=>{t&&j()},ae=async()=>{await j(),await m()};L(()=>{ee(),H()});const{pager:p,getLists:ne}=Ke({fetchFun:Z,params:i,firstLoading:!0}),N=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"order_amount",label:"订单金额",type:"money"},{key:"account_cost",label:"账户消耗",type:"money"},{key:"total_open_rate",label:"总开口率",type:"percent"},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent"},{key:"open_appointment_rate",label:"开口挂号率",type:"percent"},{key:"interview_rate",label:"面诊率",type:"percent"},{key:"receive_rate",label:"接诊率",type:"percent"},{key:"open_receive_rate",label:"开口接诊率",type:"percent"},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent"},{key:"avg_unit_price",label:"平均单价",type:"money"},{key:"cash_cost",label:"现金成本",type:"money"},{key:"roi",label:"ROI",type:"ratio"}],P=[{key:"add_fans_count",label:"加粉数",type:"count"},{key:"total_open_count",label:"总开口",type:"count"},{key:"unreplied_count",label:"未回复",type:"count"},{key:"paid_appointment_count",label:"付费挂号",type:"count"},{key:"free_appointment_count",label:"免费挂号",type:"count"},{key:"appointment_total_count",label:"挂号总数",type:"count"},{key:"interview_count",label:"面诊",type:"count"},{key:"completed_order_count",label:"接诊诊单",type:"count"},{key:"order_amount",label:"订单金额",type:"money",minWidth:110},{key:"account_cost",label:"账户消耗",type:"money",minWidth:110},{key:"total_open_rate",label:"总开口率",type:"percent",minWidth:100},{key:"paid_appointment_rate",label:"付费挂号率",type:"percent",minWidth:110},{key:"open_appointment_rate",label:"开口挂号率",type:"percent",minWidth:110},{key:"interview_rate",label:"面诊率",type:"percent",minWidth:100},{key:"receive_rate",label:"接诊率",type:"percent",minWidth:100},{key:"interview_receive_rate",label:"面诊接诊率",type:"percent",minWidth:120},{key:"open_receive_rate",label:"开口接诊率",type:"percent",minWidth:110},{key:"avg_unit_price",label:"平均单价",type:"money",minWidth:100},{key:"cash_cost",label:"现金成本",type:"money",minWidth:100},{key:"roi",label:"ROI",type:"ratio",minWidth:80}],oe=C(()=>M.value?N:N.filter(t=>!$.has(t.key))),le=C(()=>M.value?P:P.filter(t=>!$.has(t.key))),se=C(()=>{var t;return(t=f.date_range)!=null&&t.length?`${f.date_range[0]} 至 ${f.date_range[1]}`:"未选择"}),m=async()=>{try{await ne()}catch(t){console.error("获取自录转化统计失败:",t),Me.error((t==null?void 0:t.msg)||"获取统计数据失败")}},ie=()=>{i.time_type!=="custom"&&(_.value=[],p.page=1,m())},re=()=>{_.value.length===2&&(p.page=1,m())},D=()=>{p.page=1,m()},de=()=>{i.media_source="",i.dept_id=void 0,i.time_type="today",_.value=[],p.page=1,p.size=15,m()},B=(t,e,r="count")=>{const b=(e==null?void 0:e[t])??0;return r==="money"?`¥${Number(b||0).toFixed(2)}`:r==="percent"?`${Number(b||0).toFixed(2)}%`:r==="ratio"?Number(b||0).toFixed(2):String(b??0)},pe=async()=>{var t;await j(),V.value=!0,await q(),(t=E.value)==null||t.open("add")},ce=async t=>{var e,r;V.value=!0,await q(),(e=E.value)==null||e.open("edit"),(r=E.value)==null||r.setFormData(t)},ue=async t=>{await Ie.confirm("确定删除该业绩记录?"),await Ue({id:t}),m()};return L(async()=>{await m()}),(t,e)=>{const r=xe,b=Ve,h=Ee,_e=Se,me=je,k=We,ye=Ce,I=De,fe=Pe,y=Te,be=Fe,ke=Re,ve=Ne,x=we("perms"),ge=Ye;return s(),v("div",He,[o(I,{class:"!border-none",shadow:"never"},{default:n(()=>[o(ye,{inline:!0,model:l(i),class:"stats-filter-form"},{default:n(()=>[o(h,{label:"时间范围"},{default:n(()=>[o(b,{modelValue:l(i).time_type,"onUpdate:modelValue":e[0]||(e[0]=a=>l(i).time_type=a),onChange:ie},{default:n(()=>[o(r,{label:"today"},{default:n(()=>[...e[6]||(e[6]=[d("今天",-1)])]),_:1}),o(r,{label:"yesterday"},{default:n(()=>[...e[7]||(e[7]=[d("昨天",-1)])]),_:1}),o(r,{label:"week"},{default:n(()=>[...e[8]||(e[8]=[d("最近7天",-1)])]),_:1}),o(r,{label:"month"},{default:n(()=>[...e[9]||(e[9]=[d("最近30天",-1)])]),_:1}),o(r,{label:"custom"},{default:n(()=>[...e[10]||(e[10]=[d("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(i).time_type==="custom"?(s(),u(h,{key:0},{default:n(()=>[o(_e,{modelValue:l(_),"onUpdate:modelValue":e[1]||(e[1]=a=>A(_)?_.value=a:null),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:re},null,8,["modelValue"])]),_:1})):R("",!0),o(h,{label:"部门"},{default:n(()=>[o(me,{modelValue:l(i).dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>l(i).dept_id=a),data:l(S),"node-key":"id",props:J,"default-expand-all":!0,"check-strictly":"",placeholder:"全部部门",clearable:"",filterable:"",style:{width:"220px"},onChange:D},null,8,["modelValue","data"])]),_:1}),o(h,{label:"自媒体来源"},{default:n(()=>[o(qe,{modelValue:l(i).media_source,"onUpdate:modelValue":e[3]||(e[3]=a=>l(i).media_source=a),options:l(F),loading:l(Y),placeholder:"全部来源","allow-create":!1,"select-style":"width: 220px",onChange:D,onVisibleChange:te},null,8,["modelValue","options","loading"])]),_:1}),o(h,null,{default:n(()=>[o(k,{type:"primary",loading:l(p).loading,onClick:D},{default:n(()=>[...e[11]||(e[11]=[d("查询",-1)])]),_:1},8,["loading"]),o(k,{onClick:de},{default:n(()=>[...e[12]||(e[12]=[d("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),c("div",Je,[(s(!0),v(U,null,z(l(oe),a=>(s(),v("div",{key:a.key,class:"stats-kpi-card"},[c("div",Xe,g(a.label),1),c("div",{class:Oe(["stats-kpi-value",{"is-money":a.type==="money"}])},g(B(a.key,l(f).summary,a.type)),3)]))),128))]),o(I,{class:"!border-none mt-4 stats-detail-card",shadow:"never"},{header:n(()=>[c("div",Ze,[c("div",et,[e[13]||(e[13]=c("span",{class:"card-title"},"业绩明细",-1)),c("span",tt,g(l(se)),1)]),c("div",at,[w((s(),u(k,{type:"primary",onClick:pe},{icon:n(()=>[o(fe,{name:"el-icon-Plus"})]),default:n(()=>[e[14]||(e[14]=d(" 新增业绩 ",-1))]),_:1})),[[x,["stats.personal_yeji/add"]]]),l(W)?w((s(),u(k,{key:0,onClick:X},{default:n(()=>[...e[15]||(e[15]=[d(" 账户消耗录入 ",-1)])]),_:1})),[[x,["stats.personal_account_cost/lists"]]]):R("",!0)])])]),default:n(()=>[w((s(),u(ke,{data:l(p).lists,border:"",size:"large","max-height":"640"},{default:n(()=>[o(y,{label:"日期",prop:"yeji_date","min-width":"110",fixed:"left"}),o(y,{label:"自媒体来源",prop:"media_source","min-width":"140","show-overflow-tooltip":""}),o(y,{label:"录入人",prop:"creator_name","min-width":"100"}),o(y,{label:"部门",prop:"dept_name","min-width":"140"},{default:n(({row:a})=>[a.dept_path?(s(),u(be,{key:0,content:a.dept_path,placement:"top",effect:"dark"},{default:n(()=>[c("span",nt,g(a.dept_name||"未分配"),1)]),_:2},1032,["content"])):a.dept_name?(s(),v("span",ot,g(a.dept_name),1)):(s(),v("span",lt,"未分配"))]),_:1}),(s(!0),v(U,null,z(l(le),a=>(s(),u(y,{key:a.key,label:a.label,"min-width":a.minWidth||100,align:"right"},{default:n(({row:O})=>[d(g(B(a.key,O,a.type)),1)]),_:2},1032,["label","min-width"]))),128)),o(y,{label:"备注",prop:"remark","min-width":"160","show-overflow-tooltip":""}),o(y,{label:"操作",width:"140",fixed:"right"},{default:n(({row:a})=>[w((s(),u(k,{type:"primary",link:"",onClick:O=>ce(a)},{default:n(()=>[...e[16]||(e[16]=[d(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/edit"]]]),w((s(),u(k,{type:"danger",link:"",onClick:O=>ue(a.id)},{default:n(()=>[...e[17]||(e[17]=[d(" 删除 ",-1)])]),_:1},8,["onClick"])),[[x,["stats.personal_yeji/delete"]]])]),_:1})]),_:1},8,["data"])),[[ge,l(p).loading]]),c("div",st,[o(ve,{modelValue:l(p),"onUpdate:modelValue":e[4]||(e[4]=a=>A(p)?p.value=a:null),onChange:m},null,8,["modelValue"])])]),_:1}),l(V)?(s(),u(Ge,{key:0,ref_key:"yejiEditRef",ref:E,"media-source-options":l(F),"media-source-loading":l(Y),onSuccess:ae,onClose:e[5]||(e[5]=a=>V.value=!1)},null,8,["media-source-options","media-source-loading"])):R("",!0)])}}}),gt=Le(rt,[["__scopeId","data-v-47b76778"]]);export{gt as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CQoznTz_.js
diff --git a/server/public/admin/assets/index-CRMPOQmu.js b/server/public/admin/assets/index-CRMPOQmu.js
new file mode 100644
index 000000000..b59985bf9
--- /dev/null
+++ b/server/public/admin/assets/index-CRMPOQmu.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DIQ_14l3.js
+import{o as t,q as s,r as n,s as a,ah as r,t as _}from"./.pnpm-BadRMC3e.js";import{_ as c}from"./index-C360OAjQ.js";const i={class:"footer-btns"},d=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,l)=>(s(),n("div",i,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),m=c(d,[["__scopeId","data-v-9f638557"]]);export{m as _};
+========
+import{o as t,q as s,r as n,s as a,ah as r,t as _}from"./.pnpm-BadRMC3e.js";import{_ as c}from"./index-C53kWH2_.js";const i={class:"footer-btns"},d=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,l)=>(s(),n("div",i,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),m=c(d,[["__scopeId","data-v-9f638557"]]);export{m as _};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CRMPOQmu.js
diff --git a/server/public/admin/assets/index-CTI9PAsH.css b/server/public/admin/assets/index-CTI9PAsH.css
deleted file mode 100644
index ba890c01f..000000000
--- a/server/public/admin/assets/index-CTI9PAsH.css
+++ /dev/null
@@ -1 +0,0 @@
-.conversion-page[data-v-a1e801d3]{display:grid;gap:14px;min-height:640px;padding:16px;color:#172033;background:#f4f6f8}.page-heading[data-v-a1e801d3],.filter-strip[data-v-a1e801d3],.panel[data-v-a1e801d3],.metric-card[data-v-a1e801d3]{border:1px solid #dfe5ec;background:#fff}.page-heading[data-v-a1e801d3]{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;border-radius:10px}.page-heading h1[data-v-a1e801d3]{margin:0;font-size:20px;font-weight:750}.page-heading p[data-v-a1e801d3]{margin:5px 0 0;color:#8590a2;font-size:12px}.heading-meta[data-v-a1e801d3]{display:flex;align-items:center;gap:12px;color:#8994a5;font-size:12px}.scope-chip[data-v-a1e801d3]{display:inline-flex;align-items:center;gap:5px;color:#0d8077}.filter-strip[data-v-a1e801d3]{display:flex;align-items:center;gap:22px;padding:12px 16px;border-radius:9px}.filter-item[data-v-a1e801d3]{display:flex;align-items:center;gap:8px}.filter-label[data-v-a1e801d3],.range-text[data-v-a1e801d3]{color:#748094;font-size:12px;white-space:nowrap}.range-text[data-v-a1e801d3]{margin-left:auto}.employee-select[data-v-a1e801d3]{width:190px}.dept-select[data-v-a1e801d3]{width:220px}.metric-grid[data-v-a1e801d3]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric-card[data-v-a1e801d3]{min-height:100px;padding:15px 17px;border-radius:10px}.metric-card span[data-v-a1e801d3],.metric-card small[data-v-a1e801d3]{display:block;color:#748094;font-size:12px}.metric-card strong[data-v-a1e801d3]{display:block;margin:9px 0 7px;color:#111b2f;font-size:25px;line-height:1;font-variant-numeric:tabular-nums}.metric-card small[data-v-a1e801d3]{color:#a0a9b6;font-size:11px}.ranking-grid[data-v-a1e801d3]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel[data-v-a1e801d3]{padding:16px;border-radius:10px}.panel-heading[data-v-a1e801d3]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.panel-heading h2[data-v-a1e801d3]{margin:0;font-size:15px;font-weight:700}.panel-heading p[data-v-a1e801d3]{margin:4px 0 0;color:#929dac;font-size:11px}.panel-heading>span[data-v-a1e801d3]{color:#929dac;font-size:11px;white-space:nowrap}.bar-list[data-v-a1e801d3]{display:grid;gap:13px}.bar-row[data-v-a1e801d3]{display:grid;grid-template-columns:110px minmax(80px,1fr) 94px;align-items:center;gap:10px}.bar-name[data-v-a1e801d3]{overflow:hidden;color:#66748a;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.bar-row>strong[data-v-a1e801d3]{text-align:right;font-size:12px;font-variant-numeric:tabular-nums}.bar-track[data-v-a1e801d3]{height:18px;overflow:hidden;border-radius:5px;background:#edf1f5}.bar-track i[data-v-a1e801d3]{display:block;height:100%;border-radius:5px;transition:width .35s ease}.bar-track i.is-teal[data-v-a1e801d3]{background:#15998d}.bar-track i.is-blue[data-v-a1e801d3]{background:#307bdf}.detail-panel[data-v-a1e801d3]{padding-bottom:10px}.detail-table[data-v-a1e801d3] th.el-table__cell{color:#66748a;background:#f7f9fb;font-size:12px}.detail-table[data-v-a1e801d3] td.el-table__cell{color:#273347;font-size:12px}.detail-table[data-v-a1e801d3] .el-table__row--level-0>td.el-table__cell{background:#edf7f5;font-weight:650}.detail-table strong.is-parent[data-v-a1e801d3]{color:#172033;font-weight:700}.target-panel[data-v-a1e801d3]{padding-bottom:18px}.target-layout[data-v-a1e801d3]{display:grid;grid-template-columns:minmax(390px,.82fr) minmax(500px,1.18fr);gap:22px}.target-progress-list[data-v-a1e801d3]{padding-right:20px;border-right:1px solid #e4e9ef}.target-summary[data-v-a1e801d3]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.target-summary div[data-v-a1e801d3]{display:grid;gap:5px}.target-summary span[data-v-a1e801d3]{color:#8590a2;font-size:11px}.target-summary strong[data-v-a1e801d3]{font-size:18px;font-variant-numeric:tabular-nums}.target-summary strong.is-teal[data-v-a1e801d3]{color:#0f9185}.progress-block+.progress-block[data-v-a1e801d3]{margin-top:18px}.progress-copy[data-v-a1e801d3]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:12px}.progress-copy b[data-v-a1e801d3]{color:#263246;font-size:13px}.progress-block small[data-v-a1e801d3]{display:block;margin-top:7px;color:#8a95a5;font-size:11px}.target-empty-note[data-v-a1e801d3]{margin-top:16px;padding:9px 11px;border-radius:7px;color:#a36b1e;background:#fff7e8;font-size:11px}.trend-title[data-v-a1e801d3]{display:flex;align-items:center;justify-content:space-between;color:#2e3a4d;font-size:12px;font-weight:600}.trend-title>div[data-v-a1e801d3]{display:flex;align-items:center;gap:7px;color:#7f8a9b;font-size:10px;font-weight:400}.legend-line[data-v-a1e801d3]{width:18px;border-top:2px solid}.legend-line.is-actual[data-v-a1e801d3]{border-color:#0f9185}.legend-line.is-target[data-v-a1e801d3]{border-color:#2f78df;border-top-style:dashed}.target-chart[data-v-a1e801d3]{width:100%;height:260px}@media (max-width: 1180px){.filter-strip[data-v-a1e801d3]{align-items:flex-start;flex-wrap:wrap}.range-text[data-v-a1e801d3]{margin-left:0}.target-layout[data-v-a1e801d3]{grid-template-columns:1fr}.target-progress-list[data-v-a1e801d3]{padding-right:0;padding-bottom:18px;border-right:0;border-bottom:1px solid #e4e9ef}}@media (max-width: 820px){.conversion-page[data-v-a1e801d3]{padding:10px}.page-heading[data-v-a1e801d3],.heading-meta[data-v-a1e801d3]{align-items:flex-start;flex-direction:column}.metric-grid[data-v-a1e801d3],.ranking-grid[data-v-a1e801d3]{grid-template-columns:1fr}.filter-item[data-v-a1e801d3],.filter-item--time[data-v-a1e801d3]{width:100%;align-items:flex-start;flex-direction:column}.employee-select[data-v-a1e801d3],.dept-select[data-v-a1e801d3]{width:100%}.bar-row[data-v-a1e801d3]{grid-template-columns:90px minmax(70px,1fr) 82px}.target-summary[data-v-a1e801d3]{grid-template-columns:1fr}}
diff --git a/server/public/admin/assets/index-CY2VwUEI.js b/server/public/admin/assets/index-CY2VwUEI.js
new file mode 100644
index 000000000..d8d3aa0b1
--- /dev/null
+++ b/server/public/admin/assets/index-CY2VwUEI.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-BLXVDD2f.js
+import{_ as N}from"./index-DIQ_14l3.js";import{r as V,c as R,_ as q}from"./index-C360OAjQ.js";import{o as k,be as z,q as d,r as u,v as t,D as o,b9 as G,u as i,b6 as L,s as a,bc as $,bf as j,L as c,bg as A,K,bj as O,bk as H,b7 as J,ac as x,O as y,F as M,G as P,T as Q,ba as W,p as X}from"./.pnpm-BadRMC3e.js";function Y(){return V.get({url:"/setting.hot_search/getConfig"})}function Z(p){return V.post({url:"/setting.hot_search/setConfig",params:p})}const ee={class:"hot-search"},te={class:"lg:flex"},oe={class:"flex-1 min-w-0"},se={class:"hot-search-phone mt-4 lg:mt-0 lg:ml-4 flex-none"},ae={class:"hot-search-phone-content"},ne={class:"search-com"},le={class:"search-con flex items-center px-[15px]"},re={class:"hot-search-text"},de=k({name:"search"}),ie=k({...de,setup(p){const l=W({status:1,data:[]}),w=X(()=>l.data.filter(s=>s.name).sort((s,e)=>e.sort-s.sort)),f=async()=>{try{const s=await Y();for(const e in l)l[e]=s[e]}catch(s){console.log("获取=>",s)}},C=()=>{l.data.push({name:"",sort:0})},E=s=>{l.data.splice(s,1)},D=async()=>{try{await Z(l),f()}catch(s){console.log("保存=>",s)}};return f(),(s,e)=>{const h=j,B=$,S=L,U=G,b=A,m=K,g=J,_=H,F=O,T=R,I=N,v=z("perms");return d(),u("div",ee,[t(b,{class:"!border-none",shadow:"never"},{default:o(()=>[t(U,{ref:"formRef",model:i(l),"label-width":"100px"},{default:o(()=>[t(S,{label:"功能状态",style:{"margin-bottom":"0"}},{default:o(()=>[a("div",null,[t(B,{modelValue:i(l).status,"onUpdate:modelValue":e[0]||(e[0]=n=>i(l).status=n)},{default:o(()=>[t(h,{value:1},{default:o(()=>[...e[1]||(e[1]=[c("开启",-1)])]),_:1}),t(h,{value:0},{default:o(()=>[...e[2]||(e[2]=[c("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),e[3]||(e[3]=a("div",{class:"form-tips"},"默认开启,关闭则前端不显示该功能",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[a("div",te,[a("div",oe,[t(m,{type:"primary",class:"mb-4",onClick:C},{default:o(()=>[...e[4]||(e[4]=[c("添加",-1)])]),_:1}),t(F,{size:"large",data:i(l).data},{default:o(()=>[t(_,{label:"关键词",prop:"describe","min-width":"160"},{default:o(({row:n})=>[t(g,{modelValue:n.name,"onUpdate:modelValue":r=>n.name=r,clearable:"",placeholder:"请输入关键字","show-word-limit":"",maxlength:"30"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),t(_,{label:"排序",prop:"describe","min-width":"160"},{default:o(({row:n})=>[t(g,{modelValue:n.sort,"onUpdate:modelValue":r=>n.sort=r,type:"number"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),t(_,{label:"操作","min-width":"80",fixed:"right"},{default:o(({$index:n})=>[x((d(),y(m,{type:"danger",link:"",onClick:r=>E(n)},{default:o(()=>[...e[5]||(e[5]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])),[[v,["setting:storage:edit"]]])]),_:1})]),_:1},8,["data"])]),a("div",se,[e[8]||(e[8]=a("div",{class:"mb-4 text-center"},"- 热搜预览图 -",-1)),a("div",ae,[a("div",ne,[a("div",le,[t(T,{name:"el-icon-Search",size:17}),e[6]||(e[6]=a("span",{class:"ml-[5px]"},"请输入关键词搜索",-1))])]),e[7]||(e[7]=a("div",{class:"hot-search-title"},"热门搜索",-1)),a("div",re,[(d(!0),u(M,null,P(i(w),(n,r)=>(d(),u("span",{key:r},Q(n.name),1))),128))])])])])]),_:1}),x((d(),y(I,null,{default:o(()=>[t(m,{type:"primary",onClick:D},{default:o(()=>[...e[9]||(e[9]=[c("保存",-1)])]),_:1})]),_:1})),[[v,["setting.hot_search/setConfig"]]])])}}}),ue=q(ie,[["__scopeId","data-v-7cc9d6c3"]]);export{ue as default};
+========
+import{_ as N}from"./index-CRMPOQmu.js";import{r as V,c as R,_ as q}from"./index-C53kWH2_.js";import{o as k,be as z,q as d,r as u,v as t,D as o,b9 as G,u as i,b6 as L,s as a,bc as $,bf as j,L as c,bg as A,K,bj as O,bk as H,b7 as J,ac as x,O as y,F as M,G as P,T as Q,ba as W,p as X}from"./.pnpm-BadRMC3e.js";function Y(){return V.get({url:"/setting.hot_search/getConfig"})}function Z(p){return V.post({url:"/setting.hot_search/setConfig",params:p})}const ee={class:"hot-search"},te={class:"lg:flex"},oe={class:"flex-1 min-w-0"},se={class:"hot-search-phone mt-4 lg:mt-0 lg:ml-4 flex-none"},ae={class:"hot-search-phone-content"},ne={class:"search-com"},le={class:"search-con flex items-center px-[15px]"},re={class:"hot-search-text"},de=k({name:"search"}),ie=k({...de,setup(p){const l=W({status:1,data:[]}),w=X(()=>l.data.filter(s=>s.name).sort((s,e)=>e.sort-s.sort)),f=async()=>{try{const s=await Y();for(const e in l)l[e]=s[e]}catch(s){console.log("获取=>",s)}},C=()=>{l.data.push({name:"",sort:0})},E=s=>{l.data.splice(s,1)},D=async()=>{try{await Z(l),f()}catch(s){console.log("保存=>",s)}};return f(),(s,e)=>{const h=j,B=$,S=L,U=G,b=A,m=K,g=J,_=H,F=O,T=R,I=N,v=z("perms");return d(),u("div",ee,[t(b,{class:"!border-none",shadow:"never"},{default:o(()=>[t(U,{ref:"formRef",model:i(l),"label-width":"100px"},{default:o(()=>[t(S,{label:"功能状态",style:{"margin-bottom":"0"}},{default:o(()=>[a("div",null,[t(B,{modelValue:i(l).status,"onUpdate:modelValue":e[0]||(e[0]=n=>i(l).status=n)},{default:o(()=>[t(h,{value:1},{default:o(()=>[...e[1]||(e[1]=[c("开启",-1)])]),_:1}),t(h,{value:0},{default:o(()=>[...e[2]||(e[2]=[c("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),e[3]||(e[3]=a("div",{class:"form-tips"},"默认开启,关闭则前端不显示该功能",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),t(b,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[a("div",te,[a("div",oe,[t(m,{type:"primary",class:"mb-4",onClick:C},{default:o(()=>[...e[4]||(e[4]=[c("添加",-1)])]),_:1}),t(F,{size:"large",data:i(l).data},{default:o(()=>[t(_,{label:"关键词",prop:"describe","min-width":"160"},{default:o(({row:n})=>[t(g,{modelValue:n.name,"onUpdate:modelValue":r=>n.name=r,clearable:"",placeholder:"请输入关键字","show-word-limit":"",maxlength:"30"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),t(_,{label:"排序",prop:"describe","min-width":"160"},{default:o(({row:n})=>[t(g,{modelValue:n.sort,"onUpdate:modelValue":r=>n.sort=r,type:"number"},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),t(_,{label:"操作","min-width":"80",fixed:"right"},{default:o(({$index:n})=>[x((d(),y(m,{type:"danger",link:"",onClick:r=>E(n)},{default:o(()=>[...e[5]||(e[5]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])),[[v,["setting:storage:edit"]]])]),_:1})]),_:1},8,["data"])]),a("div",se,[e[8]||(e[8]=a("div",{class:"mb-4 text-center"},"- 热搜预览图 -",-1)),a("div",ae,[a("div",ne,[a("div",le,[t(T,{name:"el-icon-Search",size:17}),e[6]||(e[6]=a("span",{class:"ml-[5px]"},"请输入关键词搜索",-1))])]),e[7]||(e[7]=a("div",{class:"hot-search-title"},"热门搜索",-1)),a("div",re,[(d(!0),u(M,null,P(i(w),(n,r)=>(d(),u("span",{key:r},Q(n.name),1))),128))])])])])]),_:1}),x((d(),y(I,null,{default:o(()=>[t(m,{type:"primary",onClick:D},{default:o(()=>[...e[9]||(e[9]=[c("保存",-1)])]),_:1})]),_:1})),[[v,["setting.hot_search/setConfig"]]])])}}}),ue=q(ie,[["__scopeId","data-v-7cc9d6c3"]]);export{ue as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CY2VwUEI.js
diff --git a/server/public/admin/assets/index-CdkbuHoI.js b/server/public/admin/assets/index-CdkbuHoI.js
new file mode 100644
index 000000000..7d3856d2e
--- /dev/null
+++ b/server/public/admin/assets/index-CdkbuHoI.js
@@ -0,0 +1,8 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-BqNhIRjT.js
+import{o as K,R as rt,ba as U,ap as ct,q as l,r as d,s as t,v as a,D as n,L as O,u as w,by as I,K as dt,cT as pt,w as ut,T as r,bn as bt,bm as mt,c8 as _t,F as C,G as A,c7 as ht,O as v,cJ as D,bB as yt,P as W,cZ as wt,cL as vt,p as S,M as J}from"./.pnpm-BadRMC3e.js";import{l as ft,O as V,Q as gt,_ as kt}from"./index-C360OAjQ.js";import{aB as xt}from"./tcm-BvgN1Mad.js";import{u as St}from"./order-DvF5Kg77.js";import{u as j}from"./getExposeType-CWAjpevD.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"},Lt={class:"wb-toolbar"},Et={class:"wb-section-body"},Vt={class:"wb-kpi wb-kpi--violet"},Rt={class:"wb-kpi-value"},Bt={class:"wb-kpi wb-kpi--amber"},Pt={class:"wb-kpi-value wb-kpi-value--sm"},Ft={class:"wb-rank-strip wb-rank-strip--compact"},Wt={key:0,class:"wb-rank-chips"},Tt={key:1,class:"wb-rank-empty"},Ht={class:"wb-chart-card"},Mt={class:"wb-chart-card"},Ut={class:"wb-chart-card"},It={class:"wb-chart-card wb-ranking-card"},jt={key:0,class:"wb-ranking-list"},qt={class:"wb-ranking-rank"},Gt={class:"wb-ranking-name"},Jt={class:"wb-ranking-meta"},Kt={class:"wb-ranking-money"},Qt={key:0,class:"wb-dept-block"},Yt={class:"wb-dept-card wb-dept-card--order"},Zt={class:"wb-dept-card-head"},Xt={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"},ne={class:"wb-section-icon wb-section-icon--blue"},ie={class:"wb-section-sub"},re={class:"wb-toolbar"},ce={class:"wb-section-body"},de={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"},ve={class:"wb-dept-card-head"},fe={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=K({name:"workbench"}),Le=K({...ze,setup(Ee){const g=ft(),T=j(),H=j(),Q=j(),M=["#5b7cfa","#36cfc9","#ffc53d","#ff7a45","#b37feb","#597ef7","#73d13d","#ff85c0"];function q(s){if(s==null)return 0;const e=parseFloat(String(s).replace(/,/g,""));return Number.isFinite(e)?e:0}const p=U({days:0,departments:[],today_ranking:[],ranking:[],chart:{xAxis:[],series:[]}}),Y=S(()=>(p.departments||[]).some(s=>Number(s.total)>0)),Z=S(()=>{const s=(p.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:M,tooltip:{trigger:"item",formatter:"{b}
{c} 单 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:11}},series:[{name:"诊单",type:"pie",radius:["46%","72%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
+========
+import{o as K,R as rt,ba as U,ap as ct,q as l,r as d,s as t,v as a,D as n,L as O,u as w,by as I,K as dt,cT as pt,w as ut,T as r,bn as bt,bm as mt,c8 as _t,F as C,G as A,c7 as ht,O as v,cJ as D,bB as yt,P as W,cZ as wt,cL as vt,p as S,M as J}from"./.pnpm-BadRMC3e.js";import{l as ft,O as V,Q as gt,_ as kt}from"./index-C53kWH2_.js";import{aB as xt}from"./tcm-BWNwZkyX.js";import{u as St}from"./order-DRqgHj66.js";import{u as j}from"./getExposeType-CWAjpevD.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"},Lt={class:"wb-toolbar"},Et={class:"wb-section-body"},Vt={class:"wb-kpi wb-kpi--violet"},Rt={class:"wb-kpi-value"},Bt={class:"wb-kpi wb-kpi--amber"},Pt={class:"wb-kpi-value wb-kpi-value--sm"},Ft={class:"wb-rank-strip wb-rank-strip--compact"},Wt={key:0,class:"wb-rank-chips"},Tt={key:1,class:"wb-rank-empty"},Ht={class:"wb-chart-card"},Mt={class:"wb-chart-card"},Ut={class:"wb-chart-card"},It={class:"wb-chart-card wb-ranking-card"},jt={key:0,class:"wb-ranking-list"},qt={class:"wb-ranking-rank"},Gt={class:"wb-ranking-name"},Jt={class:"wb-ranking-meta"},Kt={class:"wb-ranking-money"},Qt={key:0,class:"wb-dept-block"},Yt={class:"wb-dept-card wb-dept-card--order"},Zt={class:"wb-dept-card-head"},Xt={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"},ne={class:"wb-section-icon wb-section-icon--blue"},ie={class:"wb-section-sub"},re={class:"wb-toolbar"},ce={class:"wb-section-body"},de={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"},ve={class:"wb-dept-card-head"},fe={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=K({name:"workbench"}),Le=K({...ze,setup(Ee){const g=ft(),T=j(),H=j(),Q=j(),M=["#5b7cfa","#36cfc9","#ffc53d","#ff7a45","#b37feb","#597ef7","#73d13d","#ff85c0"];function q(s){if(s==null)return 0;const e=parseFloat(String(s).replace(/,/g,""));return Number.isFinite(e)?e:0}const p=U({days:0,departments:[],today_ranking:[],ranking:[],chart:{xAxis:[],series:[]}}),Y=S(()=>(p.departments||[]).some(s=>Number(s.total)>0)),Z=S(()=>{const s=(p.departments||[]).filter(e=>Number(e.total)>0).map(e=>({name:e.dept_name||"—",value:Number(e.total)}));return{color:M,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}
+>>>>>>>> yz-0803:server/public/admin/assets/index-CdkbuHoI.js
+{c}`},data:s}]}}),X=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=()=>{xt({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(()=>{})},B=J(-1),P=J(0),_=U({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=>q(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:M,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:q(e.amount)})).filter(e=>e.value>0);return{color:M,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=P.value,h=new Date,b=new Date;return e===0?(b.setHours(0,0,0,0),`${F(b)} 至 ${F(h)}`):(b.setDate(b.getDate()-(e||7)),`${F(b)} 至 ${F(h)}`)});function F(s){return s.getFullYear()+"-"+String(s.getMonth()+1).padStart(2,"0")+"-"+String(s.getDate()).padStart(2,"0")}const lt=S(()=>{var b,i,k;const s=g.theme,e=(((b=_.chart)==null?void 0:b.series)||[]).map(m=>({...m,name:m.name||"单数",type:"bar",barWidth:"46%",itemStyle:{borderRadius:[8,8,0,0],color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:V(s,.72)},{offset:1,color:s}]}}})),h=((i=e[0])==null?void 0:i.data)||[];return{color:[s,"#fa8c16"],legend:{data:["单数","趋势"],top:4},xAxis:{type:"category",data:((k=_.chart)==null?void 0:k.xAxis)||[],axisLabel:{rotate:28,fontSize:11},axisLine:{lineStyle:{color:"#e4e7ec"}}},yAxis:{type:"value",name:"单数",splitLine:{lineStyle:{type:"dashed",color:"#eef0f4"}}},tooltip:{trigger:"axis"},grid:{left:"2%",right:"2%",bottom:"12%",top:48,containLabel:!0},series:[...e,{name:"趋势",type:"line",smooth:.35,symbol:"circle",symbolSize:7,lineStyle:{width:3,color:"#fa8c16"},itemStyle:{color:"#fa8c16"},data:h}]}}),N=()=>{St({order_type:B.value,days:P.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(()=>{})},nt=()=>{G(),R(),N()};rt(()=>g.theme,()=>{it()});const u=U({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=()=>{gt().then(s=>{var e,h,b,i,k,m,f,x,$,z,L,E;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=(f=s.sale)==null?void 0:f.date)==null||x.reverse().forEach(o=>{u.saleOption.xAxis.data.push(o)}),(E=(L=(z=($=s.sale)==null?void 0:$.list)==null?void 0:z[0])==null?void 0:L.data)==null||E.forEach(o=>{let c=o;o<=50&&(c={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(c)})}).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=T.value)==null||e.clear(),(h=H.value)==null||h.clear(),(b=T.value)==null||b.setOption(u.saleOption),(i=H.value)==null||i.setOption(u.visitorOption)};return ct(()=>{G(),R(),N()}),(s,e)=>{var $,z,L,E;const h=dt,b=ut,i=bt,k=mt,m=_t,f=ht,x=yt;return l(),d("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:w(I),round:"",class:"wb-refresh-btn",onClick:nt},{default:n(()=>[...e[3]||(e[3]=[O(" 刷新全部 ",-1)])]),_:1},8,["icon"])]),t("section",At,[t("div",Dt,[t("div",Nt,[t("span",$t,[a(b,null,{default:n(()=>[a(w(pt))]),_:1})]),t("div",null,[e[5]||(e[5]=t("div",{class:"wb-section-name"},"订单统计",-1)),t("div",zt,r(ot.value)+" · "+r(_.order_type_name||"—"),1)])]),t("div",Lt,[a(k,{modelValue:B.value,"onUpdate:modelValue":e[0]||(e[0]=o=>B.value=o),class:"wb-select wb-select--wide",onChange:N},{default:n(()=>[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:P.value,"onUpdate:modelValue":e[1]||(e[1]=o=>P.value=o),class:"wb-select",onChange:N},{default:n(()=>[a(i,{label:"今天",value:0}),a(i,{label:"最近7天",value:7}),a(i,{label:"最近30天",value:30})]),_:1},8,["modelValue"]),a(h,{icon:w(I),circle:"",onClick:N},null,8,["icon"])])]),t("div",Et,[a(f,{gutter:16,class:"wb-kpi-row"},{default:n(()=>[a(m,{xs:24,sm:8},{default:n(()=>[t("div",Vt,[e[6]||(e[6]=t("div",{class:"wb-kpi-label"},"今日单数",-1)),t("div",Rt,r(_.today_total??0),1)])]),_:1}),a(m,{xs:24,sm:8},{default:n(()=>[t("div",Bt,[e[7]||(e[7]=t("div",{class:"wb-kpi-label"},"今日金额",-1)),t("div",Pt,"¥"+r(_.today_amount??"0.00"),1)])]),_:1}),a(m,{xs:24,sm:8},{default:n(()=>{var o;return[t("div",Ft,[e[8]||(e[8]=t("span",{class:"wb-rank-strip-label"},"今日 TOP",-1)),(o=_.today_ranking)!=null&&o.length?(l(),d("div",Wt,[(l(!0),d(C,null,A(_.today_ranking.slice(0,4),(c,y)=>(l(),d("span",{key:c.id,class:"wb-rank-chip wb-rank-chip--dense"},[t("em",null,r(Number(y)+1),1),O(" "+r(c.name)+" ",1),t("strong",null,r(c.count),1),t("small",null,"¥"+r(c.amount),1)]))),128))])):(l(),d("span",Tt,"暂无"))])]}),_:1})]),_:1}),a(f,{gutter:20,class:"wb-chart-row"},{default:n(()=>[a(m,{xs:24,lg:10},{default:n(()=>[t("div",Ht,[e[9]||(e[9]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门单数占比")],-1)),tt.value?(l(),v(w(D),{key:0,class:"wb-chart",style:{height:"300px"},option:st.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:n(()=>{var o,c;return[t("div",Mt,[e[10]||(e[10]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"开单人 · 单数排行"),t("span",{class:"wb-chart-hint"},"柱状 + 趋势")],-1)),(c=(o=_.chart)==null?void 0:o.xAxis)!=null&&c.length?(l(),v(w(D),{key:"order-bar-"+B.value,class:"wb-chart",style:{height:"300px"},option:lt.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1})]),_:1}),a(f,{gutter:20,class:"wb-chart-row"},{default:n(()=>[a(m,{xs:24,lg:10},{default:n(()=>[t("div",Ut,[e[11]||(e[11]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"部门金额占比")],-1)),et.value?(l(),v(w(D),{key:0,class:"wb-chart",style:{height:"300px"},option:at.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无数据"}))])]),_:1}),a(m,{xs:24,lg:14},{default:n(()=>{var o;return[t("div",It,[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(),d("div",jt,[(l(!0),d(C,null,A(_.ranking,(c,y)=>(l(),d("div",{key:c.id,class:"wb-ranking-item"},[t("span",qt,r(Number(y)+1),1),t("span",Gt,r(c.name),1),t("span",Jt,[t("b",null,r(c.count),1),e[12]||(e[12]=O(" 单 ",-1)),t("span",Kt,"¥"+r(c.amount),1)])]))),128))])):(l(),v(x,{key:1,description:"暂无排行"}))])]}),_:1})]),_:1}),($=_.departments)!=null&&$.length?(l(),d("div",Qt,[e[14]||(e[14]=t("div",{class:"wb-dept-title"},"按部门统计",-1)),a(f,{gutter:16},{default:n(()=>[(l(!0),d(C,null,A(_.departments,o=>(l(),v(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:n(()=>{var c;return[t("div",Yt,[t("div",Zt,[O(r(o.dept_name)+" ",1),t("span",Xt,r(o.total)+" 单 · ¥"+r(o.amount),1)]),t("div",te,[(l(!0),d(C,null,A(o.members,y=>(l(),d("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,r(y.name),1),t("span",ee,[O(r(y.count)+" ",1),t("small",null,"¥"+r(y.amount),1)])]))),128)),(c=o.members)!=null&&c.length?W("",!0):(l(),d("div",se,"暂无"))])])]}),_:2},1024))),128))]),_:1})])):W("",!0)])]),t("section",ae,[t("div",oe,[t("div",le,[t("span",ne,[a(b,null,{default:n(()=>[a(w(wt))]),_:1})]),t("div",null,[e[15]||(e[15]=t("div",{class:"wb-section-name"},"医助理诊单统计",-1)),t("div",ie,r((z=p.date_range)==null?void 0:z[0])+" 至 "+r((L=p.date_range)==null?void 0:L[1]),1)])]),t("div",re,[a(k,{modelValue:p.days,"onUpdate:modelValue":e[2]||(e[2]=o=>p.days=o),class:"wb-select",onChange:R},{default:n(()=>[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:w(I),circle:"",onClick:R},null,8,["icon"])])]),t("div",ce,[a(f,{gutter:16,class:"wb-kpi-row"},{default:n(()=>[a(m,{xs:24,sm:8,lg:6},{default:n(()=>[t("div",de,[e[16]||(e[16]=t("div",{class:"wb-kpi-label"},"今日创建诊单",-1)),t("div",pe,r(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:n(()=>{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(),d("div",be,[(l(!0),d(C,null,A(p.today_ranking.slice(0,6),(c,y)=>(l(),d("span",{key:c.id,class:"wb-rank-chip"},[t("em",null,r(y+1),1),O(" "+r(c.name)+" ",1),t("strong",null,r(c.count),1)]))),128))])):(l(),d("span",me,"暂无排行数据"))])]}),_:1})]),_:1}),a(f,{gutter:20,class:"wb-chart-row"},{default:n(()=>[a(m,{xs:24,lg:15},{default:n(()=>{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(),v(w(D),{key:0,ref_key:"assistantChart",ref:Q,class:"wb-chart",style:{height:"340px"},option:X.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无图表数据"}))])]}),_:1}),a(m,{xs:24,lg:9},{default:n(()=>[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)),Y.value?(l(),v(w(D),{key:0,class:"wb-chart",style:{height:"340px"},option:Z.value,autoresize:!0},null,8,["option"])):(l(),v(x,{key:1,class:"wb-chart-empty",description:"暂无部门数据"}))])]),_:1})]),_:1}),(E=p.departments)!=null&&E.length?(l(),d("div",ye,[e[21]||(e[21]=t("div",{class:"wb-dept-title"},"按部门明细",-1)),a(f,{gutter:16},{default:n(()=>[(l(!0),d(C,null,A(p.departments,o=>(l(),v(m,{key:o.dept_id,xs:24,sm:12,lg:8},{default:n(()=>{var c;return[t("div",we,[t("div",ve,[O(r(o.dept_name)+" ",1),t("span",fe,"共 "+r(o.total),1)]),t("div",ge,[(l(!0),d(C,null,A(o.assistants,y=>(l(),d("div",{key:`${o.dept_id}-${y.id}`,class:"wb-dept-row"},[t("span",null,r(y.name),1),t("span",ke,r(y.count),1)]))),128)),(c=o.assistants)!=null&&c.length?W("",!0):(l(),d("div",xe,"暂无医助"))])])]}),_:2},1024))),128))]),_:1})])):W("",!0)])]),t("section",Se,[t("div",Oe,[t("div",Ce,[t("span",Ae,[a(b,null,{default:n(()=>[a(w(vt))]),_: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(f,{gutter:20},{default:n(()=>[a(m,{xs:24,lg:14},{default:n(()=>[t("div",Ne,[e[23]||(e[23]=t("div",{class:"wb-chart-card-head"},[t("span",{class:"wb-chart-title"},"访问量趋势")],-1)),a(w(D),{ref_key:"visitorChart",ref:H,class:"wb-chart",style:{height:"320px"},option:u.visitorOption,autoresize:!0},null,8,["option"])])]),_:1}),a(m,{xs:24,lg:10},{default:n(()=>[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(w(D),{ref_key:"saleChart",ref:T,class:"wb-chart",style:{height:"320px"},option:u.saleOption,autoresize:!0},null,8,["option"])])]),_:1})]),_:1})])])])}}}),We=kt(Le,[["__scopeId","data-v-2f6eaa33"]]);export{We as default};
diff --git a/server/public/admin/assets/index-CgSf-jlV.js b/server/public/admin/assets/index-CgSf-jlV.js
new file mode 100644
index 000000000..10583a17a
--- /dev/null
+++ b/server/public/admin/assets/index-CgSf-jlV.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-CGO3mKZG.js
+import{o as x,ap as S,be as T,q as s,r as z,v as e,D as o,b9 as A,u as n,b6 as M,b7 as q,b8 as k,K as O,L as _,bg as G,ac as f,bi as H,O as m,s as V,bj as J,bk as Q,a0 as W,I as X,C as Y,P as Z,a8 as ee,ba as ae,M as te,n as E}from"./.pnpm-BadRMC3e.js";import{_ as oe}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as le,i as ne,_ as ie}from"./index-C360OAjQ.js";import{a as se,b as de,c as me}from"./admin-BrR2gadt.js";import{u as re}from"./usePaging-DMqUvFG-.js";import pe from"./edit-DDvMfSvW.js";import"./picker-BV4TmQgU.js";import"./index-2cRJ7Pdu.js";import"./index-CARk4iLN.js";import"./index-DcSBJkxh.js";import"./index-BHk2qnVA.js";import"./file-DAA7Hwft.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./department-BFDDlesw.js";import"./post-Iso6tncx.js";import"./useDictOptions-C5fytNbv.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=ee(),d=ae({account:"",name:"",role_id:2,apply_data_scope:1}),v=te(!1),{pager:r,getLists:p,resetParams:D,resetPage:w}=re({fetchFun:se,params:d}),P=t=>{de({id:t.id,avatar:t.avatar,account:t.account,name:t.name,role_id:t.role_id,jobs_id:t.jobs_id,dept_id:t.dept_id,disable:t.disable,multipoint_login:t.multipoint_login}).finally(()=>{p()})},I=async()=>{var t;v.value=!0,await E(),(t=b.value)==null||t.open("add")},K=async t=>{var a,c;v.value=!0,await E(),(a=b.value)==null||a.open("edit"),(c=b.value)==null||c.setFormData(t)},$=async t=>{await ne.confirm("确定要删除该医助吗?"),await me({id:t}),p()};return S(()=>{p()}),(t,a)=>{const c=q,y=M,u=O,B=A,C=G,L=le,i=Q,U=W,j=X,F=J,N=oe,g=T("perms"),R=H;return s(),z("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:o(()=>[e(B,{class:"mb-[-16px]",model:n(d),inline:""},{default:o(()=>[e(y,{class:"w-[280px]",label:"医助账号"},{default:o(()=>[e(c,{modelValue:n(d).account,"onUpdate:modelValue":a[0]||(a[0]=l=>n(d).account=l),placeholder:"请输入医助账号",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医助名称"},{default:o(()=>[e(c,{modelValue:n(d).name,"onUpdate:modelValue":a[1]||(a[1]=l=>n(d).name=l),placeholder:"请输入医助名称",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:o(()=>[e(u,{type:"primary",onClick:n(w)},{default:o(()=>[...a[4]||(a[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:o(()=>[...a[5]||(a[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((s(),m(C,{class:"mt-4 !border-none",shadow:"never"},{default:o(()=>[f((s(),m(u,{type:"primary",onClick:I},{icon:o(()=>[e(L,{name:"el-icon-Plus"})]),default:o(()=>[a[6]||(a[6]=_(" 新增医助 ",-1))]),_:1})),[[g,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(r).lists,size:"large"},{default:o(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),e(i,{label:"头像","min-width":"100"},{default:o(({row:l})=>[e(U,{size:50,src:l.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"120"}),e(i,{label:"姓名",prop:"name","min-width":"100"}),e(i,{label:"手机号",prop:"phone","min-width":"120"}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((s(),m(i,{label:"状态","min-width":"100"},{default:o(({row:l})=>[e(j,{modelValue:l.disable,"onUpdate:modelValue":h=>l.disable=h,"active-value":0,"inactive-value":1,onChange:h=>P(l)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[g,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:o(({row:l})=>[f((s(),m(u,{type:"primary",link:"",onClick:h=>K(l)},{default:o(()=>[...a[7]||(a[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/edit"]]]),f((s(),m(u,{type:"danger",link:"",onClick:h=>$(l.id)},{default:o(()=>[...a[8]||(a[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(N,{modelValue:n(r),"onUpdate:modelValue":a[2]||(a[2]=l=>Y(r)?r.value=l:null),onChange:n(p)},null,8,["modelValue","onChange"])])]),_:1})),[[R,n(r).loading]]),n(v)?(s(),m(pe,{key:0,ref_key:"editRef",ref:b,onSuccess:n(p),onClose:a[3]||(a[3]=l=>v.value=!1)},null,8,["onSuccess"])):Z("",!0)])}}}),Ue=ie(be,[["__scopeId","data-v-64b2cdbe"]]);export{Ue as default};
+========
+import{o as x,ap as S,be as T,q as s,r as z,v as e,D as o,b9 as A,u as n,b6 as M,b7 as q,b8 as k,K as O,L as _,bg as G,ac as f,bi as H,O as m,s as V,bj as J,bk as Q,a0 as W,I as X,C as Y,P as Z,a8 as ee,ba as ae,M as te,n as E}from"./.pnpm-BadRMC3e.js";import{_ as oe}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as le,i as ne,_ as ie}from"./index-C53kWH2_.js";import{a as se,b as de,c as me}from"./admin-d9-bezkf.js";import{u as re}from"./usePaging-DMqUvFG-.js";import pe from"./edit-Br3nvY9-.js";import"./picker-Bo_aGeCY.js";import"./index-ByXR3YHf.js";import"./index-ci6cz5MZ.js";import"./index-ZgwwU4Et.js";import"./index-9XBsG-Cy.js";import"./file-Ci3F9EoX.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./department-drKzCnRw.js";import"./post-DzKn8_yS.js";import"./useDictOptions-D9FsmJj0.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=ee(),d=ae({account:"",name:"",role_id:2,apply_data_scope:1}),v=te(!1),{pager:r,getLists:p,resetParams:D,resetPage:w}=re({fetchFun:se,params:d}),P=t=>{de({id:t.id,avatar:t.avatar,account:t.account,name:t.name,role_id:t.role_id,jobs_id:t.jobs_id,dept_id:t.dept_id,disable:t.disable,multipoint_login:t.multipoint_login}).finally(()=>{p()})},I=async()=>{var t;v.value=!0,await E(),(t=b.value)==null||t.open("add")},K=async t=>{var a,c;v.value=!0,await E(),(a=b.value)==null||a.open("edit"),(c=b.value)==null||c.setFormData(t)},$=async t=>{await ne.confirm("确定要删除该医助吗?"),await me({id:t}),p()};return S(()=>{p()}),(t,a)=>{const c=q,y=M,u=O,B=A,C=G,L=le,i=Q,U=W,j=X,F=J,N=oe,g=T("perms"),R=H;return s(),z("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:o(()=>[e(B,{class:"mb-[-16px]",model:n(d),inline:""},{default:o(()=>[e(y,{class:"w-[280px]",label:"医助账号"},{default:o(()=>[e(c,{modelValue:n(d).account,"onUpdate:modelValue":a[0]||(a[0]=l=>n(d).account=l),placeholder:"请输入医助账号",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医助名称"},{default:o(()=>[e(c,{modelValue:n(d).name,"onUpdate:modelValue":a[1]||(a[1]=l=>n(d).name=l),placeholder:"请输入医助名称",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:o(()=>[e(u,{type:"primary",onClick:n(w)},{default:o(()=>[...a[4]||(a[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:o(()=>[...a[5]||(a[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((s(),m(C,{class:"mt-4 !border-none",shadow:"never"},{default:o(()=>[f((s(),m(u,{type:"primary",onClick:I},{icon:o(()=>[e(L,{name:"el-icon-Plus"})]),default:o(()=>[a[6]||(a[6]=_(" 新增医助 ",-1))]),_:1})),[[g,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(r).lists,size:"large"},{default:o(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),e(i,{label:"头像","min-width":"100"},{default:o(({row:l})=>[e(U,{size:50,src:l.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"120"}),e(i,{label:"姓名",prop:"name","min-width":"100"}),e(i,{label:"手机号",prop:"phone","min-width":"120"}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((s(),m(i,{label:"状态","min-width":"100"},{default:o(({row:l})=>[e(j,{modelValue:l.disable,"onUpdate:modelValue":h=>l.disable=h,"active-value":0,"inactive-value":1,onChange:h=>P(l)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[g,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:o(({row:l})=>[f((s(),m(u,{type:"primary",link:"",onClick:h=>K(l)},{default:o(()=>[...a[7]||(a[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/edit"]]]),f((s(),m(u,{type:"danger",link:"",onClick:h=>$(l.id)},{default:o(()=>[...a[8]||(a[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(N,{modelValue:n(r),"onUpdate:modelValue":a[2]||(a[2]=l=>Y(r)?r.value=l:null),onChange:n(p)},null,8,["modelValue","onChange"])])]),_:1})),[[R,n(r).loading]]),n(v)?(s(),m(pe,{key:0,ref_key:"editRef",ref:b,onSuccess:n(p),onClose:a[3]||(a[3]=l=>v.value=!1)},null,8,["onSuccess"])):Z("",!0)])}}}),Ue=ie(be,[["__scopeId","data-v-64b2cdbe"]]);export{Ue as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CgSf-jlV.js
diff --git a/server/public/admin/assets/index-CgoFyDEf.js b/server/public/admin/assets/index-CgoFyDEf.js
new file mode 100644
index 000000000..51d718860
--- /dev/null
+++ b/server/public/admin/assets/index-CgoFyDEf.js
@@ -0,0 +1,7 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-rVScnOiR.js
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DcWYtxZL.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BvgN1Mad.js","assets/index-C360OAjQ.js","assets/index-ynJZC2Ez.css","assets/perm-Bld5tS_J.js","assets/DailyMatrix-Ul2kFeS6.js","assets/picker-BV4TmQgU.js","assets/index-2cRJ7Pdu.js","assets/index-B3imPWFk.css","assets/index-CARk4iLN.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-DcSBJkxh.js","assets/index-D0f1Mn00.css","assets/index-BHk2qnVA.js","assets/file-DAA7Hwft.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-xc20843U.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-DEkFP89f.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DkG-bj5N.js","assets/RecordingPlaybackBlock-C05dVpO0.js","assets/RecordingVideoPlayer-Lo03HGYz.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-BfhOODqn.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-CxGhWCjD.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-DClURTxz.js","assets/doctor-BqTrXcfF.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-nGgu5OlD.js","assets/patient-BgHF8SY_.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-DCvdZKjF.js","assets/PrescriptionOrderDetailDrawer-U3_w-Wbd.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-ykEzOnay.js","assets/index-BE-7WCNj.js","assets/medicine-SFe5reN2.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-Boynwh4R.js","assets/appointment-m-lF1rck.js","assets/first_visit-BH-WCx1t.js","assets/appointment-BmvdInUs.css","assets/AssistantWatchCallDialog-BsqBq4B0.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]);
+import{o as It,R as Va,Q as Aa,W as Ea,ap as Sa,aq as Ra,be as $a,q as o,r as _,v as l,D as i,s as d,F as E,G as $,ae as M,u as a,L as p,T as m,P as b,ac as R,O as v,bp as Ta,b7 as La,b8 as Vt,K as Ia,w as Na,ck as At,bm as Pa,bn as za,ad as Wa,bg as wa,bj as Ya,bk as Fa,br as Ma,aw as tt,a1 as Ua,$ as Oa,Z as qa,_ as Ba,cl as Qa,di as Ga,bE as Et,d5 as Ha,dc as Ka,bH as ja,d0 as Ja,bi as Xa,C as H,bB as Za,c3 as es,c4 as ts,B as ns,b5 as as,bt as ss,b9 as is,b6 as ls,bd as os,J as ds,c0 as rs,c1 as us,bD as _s,aa as ps,cb as fe,al as ve,ba as nt,M as c,p as ee}from"./.pnpm-BadRMC3e.js";import{_ as ms}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{ar as U,i as cs,S as gs,as as Ne,at as fs,au as vs,R as St,av as Rt,aw as ys,ax as hs,ay as ks,az as bs}from"./tcm-BvgN1Mad.js";import{i as Cs}from"./order-DvF5Kg77.js";import{m as $t}from"./doctor-BqTrXcfF.js";import{u as xs}from"./usePaging-DMqUvFG-.js";import{u as Ds,m as at,i as f,_ as Vs}from"./index-C360OAjQ.js";import{g as Tt}from"./weapp-DlNhz_sp.js";import{h as O}from"./perm-Bld5tS_J.js";import{d as Pe}from"./dayjs-Dr2Em-pV.js";import{_ as Lt}from"./index.vue_vue_type_script_setup_true_lang-CL1DOFtW.js";const As={class:"tcm-diagnosis"},Es={class:"filter-main"},Ss={class:"date-chips"},Rs=["onClick"],$s={key:0},Ts={key:0},Ls={key:0},Is={class:"pending-assign-wrap"},Ns={key:0},Ps={class:"search-row"},zs={class:"filter-chips"},Ws=["onClick"],ws=["onClick"],Ys={class:"filter-more"},Fs={class:"list-header"},Ms={class:"list-actions"},Us={key:0,class:"list-selected"},Os={class:"table-wrap px-4"},qs={class:"patient-cell"},Bs={class:"patient-info"},Qs={class:"patient-name"},Gs={class:"patient-cell"},Hs={class:"patient-info"},Ks={class:"patient-name"},js={class:"apt-badge"},Js={class:"apt-doctor"},Xs={class:"apt-time"},Zs={key:0,class:"apt-actions"},ei={class:"apt-badge"},ti={class:"apt-doctor"},ni={class:"apt-time"},ai={key:2,class:"apt-latest-channel"},si={key:1,class:"apt-none"},ii={key:0,class:"status-confirmed"},li={key:1,class:"status-unconfirmed"},oi={key:0,class:"followup-cell"},di={class:"followup-time"},ri={class:"followup-doctor"},ui={key:1,class:"followup-none"},_i={class:"assistant-cell"},pi={key:0,class:"status-prescribed"},mi={key:1,class:"status-unprescribed"},ci={key:1,class:"unserved-days unserved-muted"},gi={class:"video-watch-col"},fi={class:"video-watch-trigger"},vi={key:1,class:"video-watch-muted"},yi={key:1,class:"video-watch-muted"},hi={class:"pagination-wrap"},ki={class:"min-h-[100px]"},bi={key:0,class:"text-sm text-gray-600 mb-4 pb-3 border-b border-gray-100"},Ci={class:"font-medium text-gray-800"},xi={class:"flex flex-wrap items-center gap-2"},Di={class:"text-sm font-medium text-gray-800"},Vi={class:"text-xs text-gray-600 mt-1.5 leading-relaxed"},Ai={class:"flex flex-col items-center justify-center py-4"},Ei={key:0,class:"text-center"},Si={key:1,class:"text-center"},Ri=["src"],$i={class:"mt-4 text-sm text-gray-600"},Ti={class:"mt-2"},Li={key:2,class:"text-center text-gray-500"},Ii={class:"text-gray-500"},Ni={class:"text-gray-500"},Pi={class:"font-medium"},zi={class:"font-medium"},Wi={key:0,class:"mb-4"},wi={key:0},Yi={key:0,class:"mt-2"},Fi={key:1,class:"mt-2"},Mi={class:"mb-4"},Ui={class:"flex gap-2"},Oi={key:0,class:"text-center text-gray-400 py-10"},qi={key:1,class:"record-list"},Bi={class:"record-header"},Qi={class:"flex items-center gap-2"},Gi={class:"font-medium text-sm"},Hi={class:"flex items-center gap-2"},Ki={class:"text-xs text-gray-400"},ji={class:"record-content"},Ji={key:0,class:"mt-1"},Xi={key:2,class:"text-center mt-4"},Zi=It({name:"tcmDiagnosis"}),el=It({...Zi,setup(tl){const Nt=fe(()=>ve(()=>import("./edit-DcWYtxZL.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]))),Pt=fe(()=>ve(()=>import("./detail-Boynwh4R.js"),__vite__mapDeps([58,9,1,2,4,5,10,3]))),zt=fe(()=>ve(()=>import("./index-ykEzOnay.js"),__vite__mapDeps([50,1,2,51,52,4,5,53,54,3,55]))),Wt=fe(()=>ve(()=>import("./appointment-m-lF1rck.js"),__vite__mapDeps([59,1,2,34,3,4,5,40,60,61]))),wt=fe(()=>ve(()=>import("./AssistantWatchCallDialog-BsqBq4B0.js"),__vite__mapDeps([62,1,2,3,4,5,63]))),Yt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return Pe(e).format("YYYY-MM-DD HH:mm:ss")},st=t=>!t||t.length<11?t:t.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),s=nt({keyword:"",diagnosis_type:"",syndrome_type:"",assistant_id:"",start_time:"",end_time:"",latest_appointment_start_date:"",latest_appointment_end_date:"",latest_appointment_channel_source:"",latest_assign_start_date:"",latest_assign_end_date:"",sort_unserved_days:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",pending_assign:"",pending_booking:"",completed_appointment:"",pending_assign_order_month:"",pending_assign_keyword:""}),it=c("all"),ue=c(!1),Ft=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],Mt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],Ut=t=>{s.has_appointment=t,s.pending_booking="",s.completed_appointment="",t==="0"&&pe(),V.page=1,x(),S()},Ot=t=>{s.diagnosis_confirmed=t,s.pending_booking="",s.completed_appointment="",V.page=1,x(),S()};function qt(t){if(!(t.pending_assign==="1"||t.pending_assign===1))return!1;const r=String(t.pending_assign_keyword??"").trim(),g=String(t.keyword??"").trim();return r!==""||g!==""}function lt(t){if(!qt(t))return t;const e=String(t.pending_assign_keyword??"").trim(),r=String(t.keyword??"").trim(),g=e!==""?e:r;return{page_no:t.page_no,page_size:t.page_size,pending_assign:1,pending_assign_keyword:g}}function Bt(){const t=String(s.pending_assign_order_month??"").trim();return t!==""?t:s.pending_assign==="1"?"":Pe().format("YYYY-MM")}function Qt(){return{keyword:s.keyword,diagnosis_type:s.diagnosis_type,syndrome_type:s.syndrome_type,assistant_id:s.assistant_id,diagnosis_confirmed:s.diagnosis_confirmed,has_appointment:s.has_appointment,latest_appointment_start_date:s.latest_appointment_start_date,latest_appointment_end_date:s.latest_appointment_end_date,latest_appointment_channel_source:s.latest_appointment_channel_source,latest_assign_start_date:s.latest_assign_start_date,latest_assign_end_date:s.latest_assign_end_date}}function q(t={}){return{page_no:1,page_size:1,...Qt(),appointment_date:"",pending_booking:"",completed_appointment:"",pending_assign:"",pending_assign_order_month:"",pending_assign_keyword:"",sort_unserved_days:"",...t}}function Gt(){return lt(q({pending_assign:1,has_appointment:"",pending_assign_order_month:Bt(),pending_assign_keyword:s.pending_assign_keyword}))}const Ht=t=>U(lt(t));function Kt(){if(s.pending_assign!=="1")return;const t=(s.pending_assign_keyword??"").trim(),e=(s.keyword??"").trim();t===""&&e===""||(s.appointment_date="",s.pending_booking="",s.completed_appointment="",s.diagnosis_confirmed="",s.has_appointment="",s.diagnosis_type="",s.syndrome_type="",s.assistant_id="",s.start_time="",s.end_time="",s.latest_appointment_start_date="",s.latest_appointment_end_date="",s.latest_appointment_channel_source="",s.latest_assign_start_date="",s.latest_assign_end_date="",s.sort_unserved_days="",s.pending_assign_order_month="",it.value="all",t!==""&&(s.keyword=""))}const B=()=>{Kt(),V.page=1,x(),S()},jt=ee(()=>[{label:"昨天挂号",value:Ue.value},{label:"前天挂号",value:Oe.value},{label:"当天挂号",value:he.value},{label:"明天挂号",value:Fe.value},{label:"后天挂号",value:Me.value},{label:"全部",value:""}]),ze=c({}),We=c(void 0),we=c(void 0),Ye=c(void 0),Jt=async t=>{s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="",s.completed_appointment="",s.has_appointment="",pe(),s.appointment_date=t,V.page=1,await x(),S()},Xt=async()=>{s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="1",s.completed_appointment="",s.appointment_date="",s.has_appointment="0",pe(),V.page=1,await x(),S()},Zt=async()=>{s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="",s.completed_appointment="1",s.has_appointment="",s.appointment_date="",pe(),V.page=1,await x(),S()},en=async()=>{s.pending_assign="1",s.pending_booking="",s.completed_appointment="",s.has_appointment="",s.appointment_date="",pe(),s.pending_assign_order_month||(s.pending_assign_order_month=Pe().format("YYYY-MM")),V.page=1,await x(),S()},tn=async t=>{s.pending_assign_order_month=t||"",s.pending_assign==="1"&&(V.page=1,await x(),S())},S=async()=>{try{const[t,e,r,g,u,y,D,W,re]=await Promise.all([U(q({appointment_date:Ue.value,has_appointment:""})),U(q({appointment_date:Oe.value,has_appointment:""})),U(q({appointment_date:he.value,has_appointment:""})),U(q({appointment_date:Fe.value,has_appointment:""})),U(q({appointment_date:Me.value,has_appointment:""})),U(q()),U(q({has_appointment:0})),U(q({completed_appointment:1,has_appointment:""})),U(Gt())]);ze.value={[Ue.value]:(t==null?void 0:t.count)??0,[Oe.value]:(e==null?void 0:e.count)??0,[he.value]:(r==null?void 0:r.count)??0,[Fe.value]:(g==null?void 0:g.count)??0,[Me.value]:(u==null?void 0:u.count)??0,"":(y==null?void 0:y.count)??0},We.value=(D==null?void 0:D.count)??0,we.value=(W==null?void 0:W.count)??0,Ye.value=(re==null?void 0:re.count)??0}catch(t){console.error("获取日期数量失败",t)}};function nn(){const t=()=>S();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const an=2e4;let ye=null;function sn(){typeof document<"u"&&document.hidden||(x({silent:!0}).catch(()=>{}),S())}const P=t=>String(t).padStart(2,"0"),he=ee(()=>{const t=new Date;return`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Fe=ee(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Me=ee(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Ue=ee(()=>{const t=new Date;return t.setDate(t.getDate()-1),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Oe=ee(()=>{const t=new Date;return t.setDate(t.getDate()-2),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),ot=c([]),dt=c([]),_e=c([]),rt=c([]),ln=async()=>{try{const[t,e,r,g]=await Promise.all([at({type:"diagnosis_type"}),at({type:"syndrome_type"}),at({type:"channels"}),cs()]);ot.value=(t==null?void 0:t.diagnosis_type)||[],dt.value=(e==null?void 0:e.syndrome_type)||[],rt.value=((r==null?void 0:r.channels)||[]).filter(u=>u.status!==0).sort((u,y)=>{const D=Number((y==null?void 0:y.sort)??0)-Number((u==null?void 0:u.sort)??0);return D!==0?D:Number((y==null?void 0:y.id)??0)-Number((u==null?void 0:u.id)??0)}).map(u=>({name:String((u==null?void 0:u.name)??(u==null?void 0:u.value)??""),value:(u==null?void 0:u.value)!=null&&u.value!==""?String(u.value):""})),_e.value=g||[]}catch(t){console.error("获取字典数据失败:",t)}},pe=()=>{s.latest_appointment_start_date="",s.latest_appointment_end_date="",s.latest_appointment_channel_source=""},ut=()=>!!(s.latest_appointment_start_date||s.latest_appointment_end_date||s.latest_appointment_channel_source),_t=()=>{ut()&&(s.appointment_date="",s.pending_booking="",s.completed_appointment="",s.has_appointment==="0"&&(s.has_appointment="")),B()},on=()=>{B()},dn=({prop:t,order:e})=>{t==="unserved_days"?s.sort_unserved_days=e==="ascending"?"asc":e==="descending"?"desc":"":s.sort_unserved_days="",V.page=1,x()},pt=t=>{const e=String((t==null?void 0:t.latest_appointment_channel_source_desc)||"").trim(),r=String((t==null?void 0:t.latest_appointment_channel_source)||"").trim(),g=String((t==null?void 0:t.latest_appointment_channel_source_detail)||"").trim(),u=e||r;return u?g?`${u}(${g})`:u:""},rn=t=>{if(!t&&t!==0)return"-";const e=typeof t=="string"?parseInt(t):t;if(_e.value.length===0)return"...";const r=_e.value.find(g=>(typeof g.id=="string"?parseInt(g.id):g.id)===e);return r?r.name:"-"},{pager:V,getLists:x}=xs({fetchFun:Ht,params:s}),un=()=>x({silent:!0}),_n=()=>{it.value="all",s.keyword="",s.diagnosis_type="",s.syndrome_type="",s.assistant_id="",s.latest_appointment_start_date="",s.latest_appointment_end_date="",s.latest_appointment_channel_source="",s.latest_assign_start_date="",s.latest_assign_end_date="",s.sort_unserved_days="",s.diagnosis_confirmed="",s.appointment_date="",s.has_appointment="",s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="",s.completed_appointment="",V.page=1,x(),S()},mt=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(r=>r.is_confirmed==1)},pn=t=>{if(t==null)return"unserved-muted";const e=Number(t);return Number.isFinite(e)?e>=7?"unserved-red":e>=3?"unserved-orange":"unserved-green":"unserved-muted"},mn=({row:t})=>mt(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",se=c(),cn=c(),ct=c(),gt=c(),ke=c(null),be=Ds();Va([se,ke],()=>{const t=ke.value,e=se.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),ke.value=null)},{flush:"post"});const Ce=c(!1),ft=c(0),gn=t=>{var r;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((r=be.userInfo)==null?void 0:r.id)},fn=t=>{ft.value=Number(t.id)||0,Ce.value=!0},vn=t=>gn(t)&&O(["tcm.diagnosis/watchCall"]),xe=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},yn=t=>{const e=t.video_call_hint,r="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${r}。开始时间:${Yt(e.start_time)}`:r},hn=t=>{const e=xe(t);return e==="live"||e==="pending_room"},kn=t=>xe(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":yn(t),bn=t=>{if(xe(t)!=="live"){f.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}fn(t)},Cn=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},xn=t=>{const e=xe(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const r=t.video_call_hint;return(r==null?void 0:r.label)||"—"},ie=c(!1),De=c(),qe=c(!1),h=nt({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),Dn={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Vn=t=>{var e;h.patient_id=t.patient_id||t.id,h.patient_name=t.patient_name,h.phone=t.phone||"",h.order_type="",h.amount=0,h.remark="",h.has_appointment=!!t.has_appointment,h.appointment_time_text=t.appointment_time_text||"",(e=De.value)==null||e.clearValidate(),ie.value=!0},An=()=>{var t;h.patient_id="",h.patient_name="",h.phone="",h.order_type="",h.amount=0,h.remark="",h.has_appointment=!1,h.appointment_time_text="",(t=De.value)==null||t.clearValidate()},En=async()=>{var t;try{await((t=De.value)==null?void 0:t.validate()),qe.value=!0;const e=await Cs({patient_id:h.patient_id,order_type:h.order_type,amount:h.amount,remark:h.remark});ie.value=!1,x();const r=e==null?void 0:e.order_no;if(r){Q.value=!0,K.value=!0,j.value="",J.value={patient_name:h.patient_name,has_appointment:h.has_appointment,appointment_time_text:h.appointment_time_text};try{const g=await gs({order_no:r});g!=null&&g.qrcode_url?j.value=g.qrcode_url:f.msgError("二维码生成失败")}catch(g){f.msgError((g==null?void 0:g.msg)||"生成二维码失败")}finally{K.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{qe.value=!1}},Q=c(!1),K=c(!1),j=c(""),J=c(null),Sn=ee(()=>{const t=J.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Be=c("小程序二维码"),Qe=c("confirm"),T=c([]),le=c([]),te=c(!1),Ge=c(!1),me=c("batch"),ce=c(null),A=c({assistant_id:null,is_inherit:!1});function Rn(){le.value=[],A.value.assistant_id=null,A.value.is_inherit=!1}const $n=t=>{T.value=t.map(e=>e.id)},Ve=t=>Number((t==null?void 0:t.assistant_id)??(t==null?void 0:t.assistant)??0)>0,Tn=ee(()=>{if(!T.value.length)return!1;const t=new Set(T.value);return V.lists.some(e=>t.has(e.id)&&Ve(e))}),Ln=t=>{me.value="single",ce.value=t,le.value=[],A.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,A.value.is_inherit=!1,te.value=!0},In=()=>{if(T.value.length===0){f.msgWarning("请先选择要指派的诊单");return}me.value="batch",ce.value=null,A.value.assistant_id=null,A.value.is_inherit=!1,le.value=[...T.value],te.value=!0},Nn=async()=>{if(!A.value.assistant_id){f.msgWarning("请选择医助");return}Ge.value=!0;try{if(me.value==="single")await Ne({id:ce.value.id,assistant_id:A.value.assistant_id,is_inherit:A.value.is_inherit?1:0});else{const t=le.value;if(!t.length){f.msgWarning("没有可指派的诊单,请关闭后重新勾选");return}for(const e of t)await Ne({id:e,assistant_id:A.value.assistant_id,is_inherit:A.value.is_inherit?1:0});T.value=[],le.value=[]}te.value=!1,x()}catch(t){console.error("指派失败:",t)}finally{Ge.value=!1}},Pn=async t=>{if(!(t!=null&&t.id)||!Ve(t)){f.msgWarning("该诊单未指派医助");return}await f.confirm("确定取消该诊单的医助指派吗?"),await Ne({id:t.id,assistant_id:0}),x()},zn=async()=>{if(!T.value.length){f.msgWarning("请先选择诊单");return}const t=new Set(T.value),e=V.lists.filter(r=>t.has(r.id)&&Ve(r));if(!e.length){f.msgWarning("所选诊单中没有已指派医助的记录");return}await f.confirm(`确定取消 ${e.length} 条诊单的医助指派吗?`),await Promise.all(e.map(r=>Ne({id:r.id,assistant_id:0}))),T.value=[],x()},Wn=()=>{se.value.open("add")},wn=t=>{se.value.open("edit",t)};function Yn(t){return s.pending_assign==="1"?"开方":Number(t==null?void 0:t.prescription_audit_status)===1&&Number(t==null?void 0:t.prescription_void_status)!==1?"查看":"开方"}const Fn=t=>{var e;if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}(e=ct.value)==null||e.open({...t,diagnosis_id:t.id,id:t.appointment_id||0})},Mn=()=>{var t,e;x(),(e=(t=se.value)==null?void 0:t.refreshCaseList)==null||e.call(t)},Un=async t=>{await f.confirm("确定要删除该诊单吗?"),await ks({id:t}),x()},On=(t,e)=>{switch(t){case"assign":Ln(e);break;case"cancelAssign":Pn(e);break;case"videoQr":if(!ge(e)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}ht(e);break;case"confirmQr":kt(e);break;case"cancelApt":Kn(e);break;case"guahaoLogs":Zn(e);break;case"order":Vn(e);break;case"delete":Un(e.id);break}},qn=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},Bn=t=>{const e=Number(t);return e===3?"已完成":e===4?"已过号":"已挂号"},Ae=t=>{const e=Array.isArray(t.appointments)?t.appointments:[];return e.length>0?e:t.has_appointment?[{id:t.appointment_id,status:t.appointment_status,doctor_id:t.appointment_doctor_id,doctor_name:t.appointment_doctor_name,time_text:t.appointment_time_text}]:[]},Qn=t=>{const e=Number(t==null?void 0:t.status);return{"apt-item-done":e===3,"apt-item-missed":e===4,"apt-item-active":e===1}},Gn=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},ge=t=>t.has_appointment&&Number(t.appointment_status)===1,vt=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},He=t=>{const e=Number(t==null?void 0:t.status);return!!(t!=null&&t.id&&(e===1||e===4))},Hn=t=>vt(t)?Ae(t).length<=1:!1,Kn=async t=>{var u;if(!vt(t)){const y=Number(t.appointment_status);t.has_appointment&&y===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该诊单未挂号或挂号信息异常");return}const e=Ae(t),r=e.length===1?e[0]:null,g=r!=null&&r.id&&He(r)?r.id:t.appointment_id;try{await f.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await $t({id:g}),f.msgSuccess("取消挂号成功"),x(),S(),ne.value&&((u=G.value)==null?void 0:u.id)===t.id&&await Se(t.id)}catch(y){y!=="cancel"&&f.msgError((y==null?void 0:y.msg)||"取消挂号失败")}},jn=async(t,e)=>{var u;if(!He(e)){Number(e==null?void 0:e.status)===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该挂号无法取消");return}const r=e.doctor_name||"—",g=e.time_text||"—";try{await f.confirm(`确定取消「${r}」${g} 的挂号吗?(患者:${t.patient_name||"—"})`),await $t({id:e.id}),f.msgSuccess("取消挂号成功"),x(),S(),ne.value&&((u=G.value)==null?void 0:u.id)===t.id&&await Se(t.id)}catch(y){y!=="cancel"&&f.msgError((y==null?void 0:y.msg)||"取消挂号失败")}},ne=c(!1),Ee=c(!1),oe=c([]),G=c(null);function Jn(){oe.value=[],G.value=null}function Xn(t){const e=String((t==null?void 0:t.admin_name)||"").trim(),r=Number(t==null?void 0:t.admin_id);return e||(r>0?`管理员 #${r}`:"—")}async function Se(t){Ee.value=!0;try{const e=await fs({id:t});oe.value=Array.isArray(e==null?void 0:e.data)?e.data:Array.isArray(e)?e:[]}catch{oe.value=[]}finally{Ee.value=!1}}async function Zn(t){if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}G.value=t,ne.value=!0,await Se(Number(t.id))}async function ea(){var t;await x({silent:!0}),S(),ne.value&&((t=G.value)!=null&&t.id)&&await Se(Number(G.value.id))}const ta=t=>{var e;if(!t.patient_id){f.msgWarning("患者信息不完整");return}(e=gt.value)==null||e.open(t)},de=c(!1),Ke=c(!1),yt=c(),z=nt({id:0,patient_name:"",id_card:""}),na={id_card:[{required:!0,validator:(t,e,r)=>{if(!e){r(new Error("请输入身份证号"));return}const g=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),u=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);g||u?r():r(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},aa=t=>{z.id=t.id,z.patient_name=t.patient_name||"-",z.id_card=t.id_card||"",de.value=!0},sa=async()=>{var t;await((t=yt.value)==null?void 0:t.validate()),Ke.value=!0;try{await vs({id:z.id,id_card:z.id_card}),f.msgSuccess("补全成功,年龄已自动更新"),de.value=!1,x()}catch(e){f.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ke.value=!1}},ht=async t=>{var e;if(!ge(t)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}Qe.value="video",J.value=t,Q.value=!0,K.value=!0,j.value="",Be.value="视频二维码";try{const r=await Tt();if(!(r!=null&&r.app_id)){f.msgError("小程序未配置,请先配置小程序信息"),Q.value=!1;return}const g=await St({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=be.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});g!=null&&g.qrcode_url?j.value=g.qrcode_url:f.msgError("二维码生成失败")}catch(r){f.msgError((r==null?void 0:r.msg)||"生成二维码失败,请重试")}finally{K.value=!1}},kt=async t=>{if(!ge(t)){f.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}Qe.value="confirm",J.value=t,Q.value=!0,K.value=!0,j.value="",Be.value="诊单二维码";try{const e=await Tt();if(!(e!=null&&e.app_id)){f.msgError("小程序未配置,请先配置小程序信息"),Q.value=!1;return}const r=be.userInfo,g=await St({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(r==null?void 0:r.id)||""});g!=null&&g.qrcode_url?j.value=g.qrcode_url:f.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),f.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{K.value=!1}},ia=()=>{J.value&&(Qe.value==="video"?ht(J.value):kt(J.value))},Re=c(!1),I=c(null),X=c([]),$e=c(0),je=c(!1),N=c(null),ae=c(""),Je=c(!1),Xe=c(1),la=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return Pe(e).format("YYYY-MM-DD HH:mm")},oa=async t=>{I.value=t,Re.value=!0,X.value=[],$e.value=0,N.value=null,ae.value="",Xe.value=1,je.value=!0;try{const[e,r]=await Promise.all([Rt({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),bs({patient_id:t.patient_id||t.id}).catch(()=>null)]);X.value=(e==null?void 0:e.lists)||[],$e.value=(e==null?void 0:e.count)||0,N.value=r}catch(e){console.error("加载企业微信记录失败:",e)}finally{je.value=!1}},da=async()=>{if(I.value){Xe.value++;try{const t=await Rt({diagnosis_id:I.value.id,patient_id:I.value.patient_id,page_no:Xe.value,page_size:20});X.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},ra=async()=>{var t;if(!ae.value.trim()){f.msgWarning("请输入内容");return}Je.value=!0;try{await ys({diagnosis_id:I.value.id,patient_id:I.value.patient_id,content:ae.value.trim(),msg_type:"note",staff_name:((t=be.userInfo)==null?void 0:t.name)||"",external_name:I.value.patient_name||""}),ae.value="",oa(I.value)}catch(e){f.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Je.value=!1}},ua=async t=>{await f.confirm("确定删除该记录吗?");try{await hs({id:t}),X.value=X.value.filter(e=>e.id!==t),$e.value--}catch(e){f.msgError((e==null?void 0:e.msg)||"删除失败")}},_a=Aa(),pa=Ea(),bt=t=>{if(!O(["tcm.diagnosis/readonlyDetail"]))return;const e=Number(t==null?void 0:t.id);!e||e<=0||pa.push({path:"/tcm/diagnosis-readonly",query:{id:String(e)}})};return Sa(()=>{s.appointment_date=he.value,ln(),x(),nn(),ye=setInterval(sn,an);const t=_a.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(ke.value=e)}}),Ra(()=>{ye!=null&&(clearInterval(ye),ye=null)}),(t,e)=>{var Dt;const r=Ta,g=La,u=Ia,y=Na,D=za,W=Pa,re=wa,L=Fa,w=Ma,Ct=Ua,Z=Ba,ma=qa,ca=Oa,ga=Ya,fa=ms,va=Za,ya=ts,ha=es,xt=ns,Te=ss,Y=ls,ka=os,Ze=is,ba=ds,Le=us,Ca=rs,xa=_s,Da=ps,F=$a("perms"),et=Xa;return o(),_("div",As,[l(re,{class:"filter-card !border-none",shadow:"never"},{default:i(()=>[d("div",Es,[d("div",Ss,[(o(!0),_(E,null,$(jt.value,n=>(o(),_("span",{key:n.value,class:M(["chip",{active:a(s).pending_assign!=="1"&&a(s).pending_booking!=="1"&&a(s).completed_appointment!=="1"&&!ut()&&a(s).appointment_date===n.value}]),onClick:k=>Jt(n.value)},[p(m(n.label)+" ",1),a(ze)[n.value]!==void 0?(o(),_("em",$s,m(a(ze)[n.value]),1)):b("",!0)],10,Rs))),128)),d("span",{class:M(["chip","chip-pending-booking",{active:a(s).pending_booking==="1"}]),onClick:Xt},[e[34]||(e[34]=p(" 待预约 ",-1)),a(We)!==void 0?(o(),_("em",Ts,m(a(We)),1)):b("",!0)],2),d("span",{class:M(["chip","chip-completed-visit",{active:a(s).completed_appointment==="1"}]),onClick:Zt},[e[35]||(e[35]=p(" 已完成 ",-1)),a(we)!==void 0?(o(),_("em",Ls,m(a(we)),1)):b("",!0)],2),R((o(),_("span",Is,[d("span",{class:M(["chip","chip-pending",{active:a(s).pending_assign==="1"}]),onClick:en},[e[36]||(e[36]=p(" 待分配医助 ",-1)),a(Ye)!==void 0?(o(),_("em",Ns,m(a(Ye)),1)):b("",!0)],2),a(s).pending_assign==="1"?(o(),v(r,{key:0,modelValue:a(s).pending_assign_order_month,"onUpdate:modelValue":e[0]||(e[0]=n=>a(s).pending_assign_order_month=n),type:"month",placeholder:"订单月份","value-format":"YYYY-MM",clearable:"",class:"pending-assign-month",onChange:tn},null,8,["modelValue"])):b("",!0),a(s).pending_assign==="1"?(o(),v(g,{key:1,modelValue:a(s).pending_assign_keyword,"onUpdate:modelValue":e[1]||(e[1]=n=>a(s).pending_assign_keyword=n),placeholder:"搜身份证/诊单ID/患者号/备注…",clearable:"",class:"pending-assign-search",onKeyup:Vt(B,["enter"]),onClear:B},null,8,["modelValue"])):b("",!0)])),[[F,["tcm.diagnosis/assign"]]])]),d("div",Ps,[l(g,{modelValue:a(s).keyword,"onUpdate:modelValue":e[2]||(e[2]=n=>a(s).keyword=n),placeholder:"患者姓名 / 手机号",clearable:"",class:"search-input",onKeyup:Vt(B,["enter"])},null,8,["modelValue"]),l(u,{type:"primary",onClick:B},{default:i(()=>[...e[37]||(e[37]=[p("查询",-1)])]),_:1})])]),d("div",zs,[e[38]||(e[38]=d("span",{class:"chip-label"},"挂号:",-1)),(o(),_(E,null,$(Ft,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(s).has_appointment===n.value}]),onClick:k=>Ut(n.value)},m(n.label),11,Ws)),64)),e[39]||(e[39]=d("span",{class:"chip-divider"},null,-1)),e[40]||(e[40]=d("span",{class:"chip-label"},"确认:",-1)),(o(),_(E,null,$(Mt,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(s).diagnosis_confirmed===n.value}]),onClick:k=>Ot(n.value)},m(n.label),11,ws)),64)),l(u,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[3]||(e[3]=n=>ue.value=!a(ue))},{default:i(()=>[p(m(a(ue)?"收起":"更多筛选")+" ",1),l(y,{class:M({"rotate-180":a(ue)})},{default:i(()=>[l(a(At))]),_:1},8,["class"])]),_:1})]),R(d("div",Ys,[l(W,{modelValue:a(s).diagnosis_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(s).diagnosis_type=n),placeholder:"诊断类型",clearable:"",size:"small",onChange:B},{default:i(()=>[(o(!0),_(E,null,$(a(ot),n=>(o(),v(D,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(W,{modelValue:a(s).syndrome_type,"onUpdate:modelValue":e[5]||(e[5]=n=>a(s).syndrome_type=n),placeholder:"证型",clearable:"",size:"small",onChange:B},{default:i(()=>[(o(!0),_(E,null,$(a(dt),n=>(o(),v(D,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(W,{modelValue:a(s).assistant_id,"onUpdate:modelValue":e[6]||(e[6]=n=>a(s).assistant_id=n),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:B},{default:i(()=>[(o(!0),_(E,null,$(a(_e),n=>(o(),v(D,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(Lt,{class:"latest-appointment-range",startTime:a(s).latest_appointment_start_date,"onUpdate:startTime":e[7]||(e[7]=n=>a(s).latest_appointment_start_date=n),endTime:a(s).latest_appointment_end_date,"onUpdate:endTime":e[8]||(e[8]=n=>a(s).latest_appointment_end_date=n),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"最近挂号开始","end-placeholder":"最近挂号结束",onChange:_t},null,8,["startTime","endTime"]),l(Lt,{class:"latest-assign-range",startTime:a(s).latest_assign_start_date,"onUpdate:startTime":e[9]||(e[9]=n=>a(s).latest_assign_start_date=n),endTime:a(s).latest_assign_end_date,"onUpdate:endTime":e[10]||(e[10]=n=>a(s).latest_assign_end_date=n),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"最近指派开始","end-placeholder":"最近指派结束",onChange:on},null,8,["startTime","endTime"]),l(W,{modelValue:a(s).latest_appointment_channel_source,"onUpdate:modelValue":e[11]||(e[11]=n=>a(s).latest_appointment_channel_source=n),placeholder:"最近挂号渠道",clearable:"",filterable:"",size:"small",class:"latest-appointment-channel",onChange:_t},{default:i(()=>[(o(!0),_(E,null,$(a(rt),n=>(o(),v(D,{key:String(n.value),label:n.name,value:String(n.value)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(u,{size:"small",onClick:_n},{default:i(()=>[...e[41]||(e[41]=[p("重置",-1)])]),_:1})],512),[[Wa,a(ue)]])]),_:1}),l(re,{class:"!border-none mt-3 list-card",shadow:"never"},{default:i(()=>[d("div",Fs,[d("div",Ms,[R((o(),v(u,{type:"primary",onClick:Wn},{default:i(()=>[...e[42]||(e[42]=[p("新增诊单",-1)])]),_:1})),[[F,["tcm.diagnosis/add"]]]),R((o(),v(u,{type:"success",onClick:In,disabled:a(T).length===0},{default:i(()=>[...e[43]||(e[43]=[p(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[F,["tcm.diagnosis/assign"]]]),R((o(),v(u,{type:"warning",plain:"",onClick:zn,disabled:!Tn.value},{default:i(()=>[...e[44]||(e[44]=[p(" 批量取消指派 ",-1)])]),_:1},8,["disabled"])),[[F,["tcm.diagnosis/assign"]]])]),a(T).length>0?(o(),_("div",Us,"已选 "+m(a(T).length)+" 条",1)):b("",!0)]),d("div",Os,[R((o(),v(ga,{data:a(V).lists,"row-key":"id",size:"default",onSelectionChange:$n,onRowDblclick:bt,onSortChange:dn,"row-class-name":mn,class:"diagnosis-table",stripe:""},{default:i(()=>[l(L,{type:"selection",width:"48",align:"center"}),l(L,{label:"ID","min-width":"70"},{default:i(({row:n})=>[d("div",qs,[d("div",Bs,[d("div",Qs,[p(m(n.id)+" ",1),n.assign_read_at===null&&n.assistant_id>0?(o(),v(w,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:i(()=>[...e[45]||(e[45]=[p("NEW",-1)])]),_:1})):b("",!0)])])])]),_:1}),l(L,{label:"患者","min-width":"60"},{default:i(({row:n})=>[d("div",Gs,[d("div",Hs,[d("div",Ks,m(n.patient_name),1)])])]),_:1}),l(L,{label:" 性别 / 年龄",width:"100",align:"left"},{default:i(({row:n})=>[d("div",null,m(n.gender_desc||"-")+" · "+m(n.age??"-")+"岁",1)]),_:1}),l(L,{label:"挂号","min-width":"175"},{default:i(({row:n})=>[d("div",{class:M(["appointment-cell",Gn(n)])},[n.has_appointment?(o(),_(E,{key:0},[Ae(n).length?(o(!0),_(E,{key:0},$(Ae(n),k=>(o(),_("div",{key:k.id||`${k.doctor_id}-${k.time_text}`,class:M(["apt-item",Qn(k)])},[d("div",js,m(Bn(k.status)),1),d("div",Js,m(k.doctor_name||"-"),1),d("div",Xs,m(k.time_text||"-"),1),He(k)?(o(),_("div",Zs,[R((o(),v(u,{type:"danger",link:"",size:"small",onClick:tt(C=>jn(n,k),["stop"])},{default:i(()=>[...e[46]||(e[46]=[p(" 取消挂号 ",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/guahao"]]])])):b("",!0)],2))),128)):(o(),_(E,{key:1},[d("div",ei,m(qn(n)),1),d("div",ti,m(n.appointment_doctor_name||"-"),1),d("div",ni,m(n.appointment_time_text||"-"),1)],64)),pt(n)?(o(),_("div",ai," 最近渠道:"+m(pt(n)),1)):b("",!0)],64)):(o(),_("span",si,"未挂号"))],2)]),_:1}),l(L,{label:"确认",width:"88",align:"center"},{default:i(({row:n})=>[mt(n)?(o(),_("span",ii,"已确认")):(o(),_("span",li,"未确认"))]),_:1}),l(L,{label:"复诊","min-width":"120"},{default:i(({row:n})=>[n.has_prescription?(o(),_("div",oi,[d("div",di,m(n.followup_time_text||"—"),1),d("div",ri,m(n.followup_doctor_name||"—"),1),n.followup_rx_voided?(o(),v(w,{key:0,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:i(()=>[...e[47]||(e[47]=[p(" 处方已作废 ",-1)])]),_:1})):b("",!0)])):(o(),_("span",ui,"无"))]),_:1}),l(L,{label:"助理",width:"100","show-overflow-tooltip":""},{default:i(({row:n})=>[d("span",_i,m(rn(n.assistant_id||n.assistant)),1)]),_:1}),l(L,{label:"开方",width:"72",align:"center"},{default:i(({row:n})=>[n.has_prescription?(o(),_("span",pi,"已开方")):(o(),_("span",mi,"未开方"))]),_:1}),l(L,{label:"未服务天数",prop:"unserved_days",width:"110",align:"center",sortable:"custom","sort-orders":["descending","ascending"]},{default:i(({row:n})=>[n.last_blood_record_at?(o(),v(Ct,{key:0,content:`最近一次健康打卡:${n.last_blood_record_at}`,placement:"top"},{default:i(()=>[d("span",{class:M(["unserved-days",pn(n.unserved_days)])},m(n.unserved_days??"—"),3)]),_:2},1032,["content"])):(o(),_("span",ci,"—"))]),_:1}),l(L,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:i(({row:n})=>[d("div",gi,[vn(n)?(o(),_(E,{key:0},[hn(n)?(o(),v(Ct,{key:0,content:kn(n),placement:"top"},{default:i(()=>[d("span",fi,[l(u,{type:"primary",link:"",size:"small",onClick:k=>bn(n)},{default:i(()=>[...e[48]||(e[48]=[p(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(o(),_("span",vi,m(Cn(n)),1))],64)):(o(),_("span",yi,m(xn(n)),1))])]),_:1}),l(L,{label:"操作",width:"340",fixed:"right",align:"left"},{default:i(({row:n})=>[d("div",{class:"action-cell",onClick:e[12]||(e[12]=tt(()=>{},["stop"])),onDblclick:e[13]||(e[13]=tt(()=>{},["stop"]))},[R((o(),v(u,{type:"primary",link:"",size:"small",onClick:k=>bt(n)},{default:i(()=>[...e[49]||(e[49]=[p(" 查看 ",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/readonlyDetail"]]]),R((o(),v(u,{type:"primary",link:"",size:"small",onClick:k=>wn(n.id)},{default:i(()=>[...e[50]||(e[50]=[p("诊单",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/edit"]]]),R((o(),v(u,{type:"primary",link:"",size:"small",onClick:k=>Fn(n)},{default:i(()=>[p(m(Yn(n)),1)]),_:2},1032,["onClick"])),[[F,["tcm.diagnosis/kaifang"]]]),R((o(),v(u,{type:"success",link:"",size:"small",onClick:k=>ta(n)},{default:i(()=>[...e[51]||(e[51]=[p("预约",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/guahao"]]]),R((o(),v(u,{type:"warning",link:"",size:"small",onClick:k=>aa(n)},{default:i(()=>[...e[52]||(e[52]=[p("补全身份证",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/edit"]]]),l(ca,{trigger:"click",onCommand:k=>On(k,n),placement:"bottom-end"},{dropdown:i(()=>[l(ma,null,{default:i(()=>[a(O)(["tcm.diagnosis/assign"])?(o(),v(Z,{key:0,command:"assign"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Qa))]),_:1}),e[54]||(e[54]=p("指派",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/assign"])&&Ve(n)?(o(),v(Z,{key:1,command:"cancelAssign"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ga))]),_:1}),e[55]||(e[55]=p("取消指派 ",-1))]),_:1})):b("",!0),ge(n)&&a(O)(["tcm.diagnosis/videoQr"])?(o(),v(Z,{key:2,command:"videoQr"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Et))]),_:1}),e[56]||(e[56]=p("视频二维码",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/guahao"])&&ge(n)?(o(),v(Z,{key:3,command:"confirmQr"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Et))]),_:1}),e[57]||(e[57]=p("二维码",-1))]),_:1})):b("",!0),Hn(n)&&a(O)(["tcm.diagnosis/guahao"])?(o(),v(Z,{key:4,command:"cancelApt"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ha))]),_:1}),e[58]||(e[58]=p("取消挂号 ",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/guahaoLogList"])?(o(),v(Z,{key:5,command:"guahaoLogs"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ka))]),_:1}),e[59]||(e[59]=p("挂号日志",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/order"])?(o(),v(Z,{key:6,command:"order"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(ja))]),_:1}),e[60]||(e[60]=p("创建订单",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/delete"])?(o(),v(Z,{key:7,command:"delete",divided:""},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ja))]),_:1}),e[61]||(e[61]=d("span",{class:"text-danger"},"删除",-1))]),_:1})):b("",!0)]),_:2},1024)]),default:i(()=>[l(u,{type:"info",link:"",size:"small"},{default:i(()=>[e[53]||(e[53]=p("更多",-1)),l(y,{class:"el-icon--right"},{default:i(()=>[l(a(At))]),_:1})]),_:1})]),_:2},1032,["onCommand"])],32)]),_:1})]),_:1},8,["data"])),[[et,a(V).loading]]),d("div",hi,[l(fa,{modelValue:a(V),"onUpdate:modelValue":e[14]||(e[14]=n=>H(V)?V.value=n:null),onChange:a(x)},null,8,["modelValue","onChange"])])])]),_:1}),l(a(Nt),{ref_key:"editRef",ref:se,onSuccess:un},null,512),l(a(Pt),{ref_key:"detailRef",ref:cn},null,512),l(a(zt),{ref_key:"prescriptionRef",ref:ct,onSuccess:Mn},null,512),l(a(Wt),{ref_key:"appointmentRef",ref:gt,onSuccess:ea},null,512),l(a(wt),{modelValue:a(Ce),"onUpdate:modelValue":e[15]||(e[15]=n=>H(Ce)?Ce.value=n:null),"diagnosis-id":a(ft),onClosed:a(x)},null,8,["modelValue","diagnosis-id","onClosed"]),l(xt,{modelValue:a(ne),"onUpdate:modelValue":e[16]||(e[16]=n=>H(ne)?ne.value=n:null),title:"挂号操作日志",size:"460px","destroy-on-close":"",onClosed:Jn},{default:i(()=>[R((o(),_("div",ki,[a(G)?(o(),_("div",bi,[d("span",Ci,m(a(G).patient_name),1),e[62]||(e[62]=d("span",{class:"mx-2 text-gray-300"},"|",-1)),d("span",null,"诊单 #"+m(a(G).id),1)])):b("",!0),!a(Ee)&&a(oe).length===0?(o(),v(va,{key:1,description:"暂无挂号/取消挂号操作记录"})):a(oe).length>0?(o(),v(ha,{key:2},{default:i(()=>[(o(!0),_(E,null,$(a(oe),(n,k)=>(o(),v(ya,{key:n.id??k,timestamp:n.create_time_text||"—",placement:"top"},{default:i(()=>[d("div",xi,[l(w,{size:"small",type:"info"},{default:i(()=>[p(m(n.action_desc),1)]),_:2},1024),d("span",Di,m(Xn(n)),1)]),d("div",Vi,m(n.summary),1)]),_:2},1032,["timestamp"]))),128))]),_:1})):b("",!0)])),[[et,a(Ee)]])]),_:1},8,["modelValue"]),l(Te,{modelValue:a(Q),"onUpdate:modelValue":e[18]||(e[18]=n=>H(Q)?Q.value=n:null),title:a(Be),width:"400px","close-on-click-modal":!1},{footer:i(()=>[l(u,{onClick:e[17]||(e[17]=n=>Q.value=!1)},{default:i(()=>[...e[65]||(e[65]=[p("关闭",-1)])]),_:1}),a(K)?b("",!0):(o(),v(u,{key:0,type:"primary",onClick:ia},{default:i(()=>[...e[66]||(e[66]=[p(" 重新生成 ",-1)])]),_:1}))]),default:i(()=>{var n;return[d("div",Ai,[a(K)?(o(),_("div",Ei,[l(y,{class:"is-loading",size:40},{default:i(()=>[l(a(as))]),_:1}),e[63]||(e[63]=d("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):a(j)?(o(),_("div",Si,[d("img",{src:a(j),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,Ri),d("div",$i,[d("div",null,"患者:"+m((n=a(J))==null?void 0:n.patient_name),1),d("div",Ti,"挂号时间:"+m(Sn.value),1),e[64]||(e[64]=d("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(o(),_("div",Li," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),l(Te,{modelValue:a(te),"onUpdate:modelValue":e[22]||(e[22]=n=>H(te)?te.value=n:null),title:a(me)==="batch"?"批量指派医助":"指派医助",width:"500px",onClosed:Rn},{footer:i(()=>[l(u,{onClick:e[21]||(e[21]=n=>te.value=!1)},{default:i(()=>[...e[69]||(e[69]=[p("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:Nn,loading:a(Ge)},{default:i(()=>[...e[70]||(e[70]=[p(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(Ze,{model:a(A),"label-width":"100px"},{default:i(()=>[l(Y,{label:"选择医助",required:""},{default:i(()=>[l(W,{modelValue:a(A).assistant_id,"onUpdate:modelValue":e[19]||(e[19]=n=>a(A).assistant_id=n),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:""},{default:i(()=>[(o(!0),_(E,null,$(a(_e),n=>(o(),v(D,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(Y,{label:"继承"},{default:i(()=>[l(ka,{modelValue:a(A).is_inherit,"onUpdate:modelValue":e[20]||(e[20]=n=>a(A).is_inherit=n)},{default:i(()=>[...e[67]||(e[67]=[p("继承",-1)])]),_:1},8,["modelValue"]),e[68]||(e[68]=d("span",{class:"text-gray-400 text-xs ml-2"},"勾选后写入指派记录",-1))]),_:1}),a(me)==="batch"?(o(),v(Y,{key:0,label:"已选择"},{default:i(()=>[d("div",Ii,m(a(le).length)+" 条诊单记录",1)]),_:1})):(o(),v(Y,{key:1,label:"诊单信息"},{default:i(()=>{var n,k;return[d("div",Ni,[d("div",null,"患者:"+m((n=a(ce))==null?void 0:n.patient_name),1),d("div",null,"诊断日期:"+m((k=a(ce))==null?void 0:k.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(Te,{modelValue:a(ie),"onUpdate:modelValue":e[27]||(e[27]=n=>H(ie)?ie.value=n:null),title:"创建订单",width:"600px",onClose:An},{footer:i(()=>[l(u,{onClick:e[26]||(e[26]=n=>ie.value=!1)},{default:i(()=>[...e[71]||(e[71]=[p("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:En,loading:a(qe)},{default:i(()=>[...e[72]||(e[72]=[p("创建订单",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(Ze,{ref_key:"orderFormRef",ref:De,model:a(h),rules:Dn,"label-width":"100px"},{default:i(()=>[l(Y,{label:"患者"},{default:i(()=>[d("span",Pi,m(a(h).patient_name)+" ("+m(st(a(h).phone))+")",1)]),_:1}),l(Y,{label:"订单类型",prop:"order_type"},{default:i(()=>[l(W,{modelValue:a(h).order_type,"onUpdate:modelValue":e[23]||(e[23]=n=>a(h).order_type=n),placeholder:"请选择",class:"w-full"},{default:i(()=>[l(D,{label:"挂号费",value:1}),l(D,{label:"问诊费",value:2}),l(D,{label:"药品费用",value:3}),l(D,{label:"首付费用",value:4}),l(D,{label:"尾款费用",value:5}),l(D,{label:"其他费用",value:6}),l(D,{label:"全部费用",value:7}),l(D,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(Y,{label:"订单金额",prop:"amount"},{default:i(()=>[l(ba,{modelValue:a(h).amount,"onUpdate:modelValue":e[24]||(e[24]=n=>a(h).amount=n),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),l(Y,{label:"备注",prop:"remark"},{default:i(()=>[l(g,{modelValue:a(h).remark,"onUpdate:modelValue":e[25]||(e[25]=n=>a(h).remark=n),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(Te,{modelValue:a(de),"onUpdate:modelValue":e[30]||(e[30]=n=>H(de)?de.value=n:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[31]||(e[31]=n=>a(z).id_card="")},{footer:i(()=>[l(u,{onClick:e[29]||(e[29]=n=>de.value=!1)},{default:i(()=>[...e[73]||(e[73]=[p("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:sa,loading:a(Ke)},{default:i(()=>[...e[74]||(e[74]=[p("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(Ze,{ref_key:"fillIdCardFormRef",ref:yt,model:a(z),rules:na,"label-width":"80px"},{default:i(()=>[l(Y,{label:"患者"},{default:i(()=>[d("span",zi,m(a(z).patient_name),1)]),_:1}),l(Y,{label:"身份证号",prop:"id_card"},{default:i(()=>[l(g,{modelValue:a(z).id_card,"onUpdate:modelValue":e[28]||(e[28]=n=>a(z).id_card=n),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(xt,{modelValue:a(Re),"onUpdate:modelValue":e[33]||(e[33]=n=>H(Re)?Re.value=n:null),title:`企业微信记录 - ${((Dt=a(I))==null?void 0:Dt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:i(()=>{var n,k;return[a(N)?(o(),_("div",Wi,[l(Ca,{column:2,border:"",size:"small"},{default:i(()=>[l(Le,{label:"患者姓名"},{default:i(()=>{var C;return[p(m((C=a(I))==null?void 0:C.patient_name),1)]}),_:1}),l(Le,{label:"手机号"},{default:i(()=>[p(m(st(a(N).phone)||"-"),1)]),_:1}),l(Le,{label:"企微联系人ID"},{default:i(()=>[a(N).external_userid?(o(),_("span",wi,m(a(N).external_userid),1)):(o(),v(w,{key:1,type:"info",size:"small"},{default:i(()=>[...e[75]||(e[75]=[p("未关联",-1)])]),_:1}))]),_:1}),l(Le,{label:"会话存档"},{default:i(()=>[a(N).msgaudit_enabled?(o(),v(w,{key:0,type:"success",size:"small"},{default:i(()=>[...e[76]||(e[76]=[p("已开通",-1)])]),_:1})):(o(),v(w,{key:1,type:"info",size:"small"},{default:i(()=>[...e[77]||(e[77]=[p("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(n=a(N).permit_users)!=null&&n.length?(o(),_("div",Yi,[e[78]||(e[78]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(o(!0),_(E,null,$(a(N).permit_users,C=>(o(),v(w,{key:C,size:"small",class:"mr-1"},{default:i(()=>[p(m(C),1)]),_:2},1024))),128))])):b("",!0),(k=a(N).msgaudit_agree)!=null&&k.length?(o(),_("div",Fi,[e[79]||(e[79]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(o(!0),_(E,null,$(a(N).msgaudit_agree,(C,Ie)=>(o(),v(w,{key:Ie,type:C.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:i(()=>[p(m(C.userid)+": "+m(C.agree_status==="Agree"?"已同意":C.agree_status),1)]),_:2},1032,["type"]))),128))])):b("",!0)])):b("",!0),l(xa),d("div",Mi,[d("div",Ui,[l(g,{modelValue:a(ae),"onUpdate:modelValue":e[32]||(e[32]=C=>H(ae)?ae.value=C:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),l(u,{type:"primary",onClick:ra,loading:a(Je),class:"self-end"},{default:i(()=>[...e[80]||(e[80]=[p(" 添加 ",-1)])]),_:1},8,["loading"])])]),R((o(),_("div",null,[a(X).length===0?(o(),_("div",Oi," 暂无聊天记录 ")):(o(),_("div",qi,[(o(!0),_(E,null,$(a(X),C=>{var Ie;return o(),_("div",{key:C.id,class:"record-item"},[d("div",Bi,[d("div",Qi,[l(w,{type:C.direction===0?"primary":"success",size:"small"},{default:i(()=>[p(m(C.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),d("span",Gi,m(C.direction===0?C.staff_name:C.external_name||((Ie=a(I))==null?void 0:Ie.patient_name)),1),C.msg_type==="note"?(o(),v(w,{key:0,type:"warning",size:"small"},{default:i(()=>[...e[81]||(e[81]=[p("备注",-1)])]),_:1})):b("",!0)]),d("div",Hi,[d("span",Ki,m(la(C.chat_time)),1),l(u,{type:"danger",link:"",size:"small",onClick:al=>ua(C.id)},{default:i(()=>[...e[82]||(e[82]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])])]),d("div",ji,m(C.content),1),C.media_url?(o(),_("div",Ji,[l(Da,{src:C.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[C.media_url]},null,8,["src","preview-src-list"])])):b("",!0)])}),128))])),a($e)>a(X).length?(o(),_("div",Xi,[l(u,{link:"",type:"primary",onClick:da},{default:i(()=>[...e[83]||(e[83]=[p("加载更多",-1)])]),_:1})])):b("",!0)])),[[et,a(je)]])]}),_:1},8,["modelValue","title"])])}}}),gl=Vs(el,[["__scopeId","data-v-d726d51c"]]);export{gl as default};
+========
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-emC-q2iC.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BWNwZkyX.js","assets/index-C53kWH2_.js","assets/index-ynJZC2Ez.css","assets/perm-BICz51xi.js","assets/DailyMatrix-DiYUQo1w.js","assets/picker-Bo_aGeCY.js","assets/index-ByXR3YHf.js","assets/index-B3imPWFk.css","assets/index-ci6cz5MZ.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-ZgwwU4Et.js","assets/index-D0f1Mn00.css","assets/index-9XBsG-Cy.js","assets/file-Ci3F9EoX.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-C7qwIzjQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-BC4wO08v.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Dwk-zq8O.js","assets/RecordingPlaybackBlock-Cbli8dUQ.js","assets/RecordingVideoPlayer-PakpPQK-.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-OjhXvTzR.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-i8xnfggI.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-B9Qsv5NO.js","assets/doctor-CNnijzjL.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DcnSeCwS.js","assets/patient-cj6mW_46.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-PJG2qWT8.js","assets/PrescriptionOrderDetailDrawer-CL3jtI2P.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-Nz5F52Mm.js","assets/index-D25Fsd3W.js","assets/medicine-DWZ_n3IQ.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-B7NAp8JI.js","assets/appointment-ys1YAIGr.js","assets/first_visit-LvTGTIzk.js","assets/appointment-BmvdInUs.css","assets/AssistantWatchCallDialog-CDkKMtd6.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]);
+import{o as It,R as Va,Q as Aa,W as Ea,ap as Sa,aq as Ra,be as $a,q as o,r as _,v as l,D as i,s as d,F as E,G as $,ae as M,u as a,L as p,T as m,P as b,ac as R,O as v,bp as Ta,b7 as La,b8 as Vt,K as Ia,w as Na,ck as At,bm as Pa,bn as za,ad as Wa,bg as wa,bj as Ya,bk as Fa,br as Ma,aw as tt,a1 as Ua,$ as Oa,Z as qa,_ as Ba,cl as Qa,di as Ga,bE as Et,d5 as Ha,dc as Ka,bH as ja,d0 as Ja,bi as Xa,C as H,bB as Za,c3 as es,c4 as ts,B as ns,b5 as as,bt as ss,b9 as is,b6 as ls,bd as os,J as ds,c0 as rs,c1 as us,bD as _s,aa as ps,cb as fe,al as ve,ba as nt,M as c,p as ee}from"./.pnpm-BadRMC3e.js";import{_ as ms}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{ar as U,i as cs,S as gs,as as Ne,at as fs,au as vs,R as St,av as Rt,aw as ys,ax as hs,ay as ks,az as bs}from"./tcm-BWNwZkyX.js";import{i as Cs}from"./order-DRqgHj66.js";import{m as $t}from"./doctor-CNnijzjL.js";import{u as xs}from"./usePaging-DMqUvFG-.js";import{u as Ds,m as at,i as f,_ as Vs}from"./index-C53kWH2_.js";import{g as Tt}from"./weapp-DkO9N0-a.js";import{h as O}from"./perm-BICz51xi.js";import{d as Pe}from"./dayjs-Dr2Em-pV.js";import{_ as Lt}from"./index.vue_vue_type_script_setup_true_lang-CL1DOFtW.js";const As={class:"tcm-diagnosis"},Es={class:"filter-main"},Ss={class:"date-chips"},Rs=["onClick"],$s={key:0},Ts={key:0},Ls={key:0},Is={class:"pending-assign-wrap"},Ns={key:0},Ps={class:"search-row"},zs={class:"filter-chips"},Ws=["onClick"],ws=["onClick"],Ys={class:"filter-more"},Fs={class:"list-header"},Ms={class:"list-actions"},Us={key:0,class:"list-selected"},Os={class:"table-wrap px-4"},qs={class:"patient-cell"},Bs={class:"patient-info"},Qs={class:"patient-name"},Gs={class:"patient-cell"},Hs={class:"patient-info"},Ks={class:"patient-name"},js={class:"apt-badge"},Js={class:"apt-doctor"},Xs={class:"apt-time"},Zs={key:0,class:"apt-actions"},ei={class:"apt-badge"},ti={class:"apt-doctor"},ni={class:"apt-time"},ai={key:2,class:"apt-latest-channel"},si={key:1,class:"apt-none"},ii={key:0,class:"status-confirmed"},li={key:1,class:"status-unconfirmed"},oi={key:0,class:"followup-cell"},di={class:"followup-time"},ri={class:"followup-doctor"},ui={key:1,class:"followup-none"},_i={class:"assistant-cell"},pi={key:0,class:"status-prescribed"},mi={key:1,class:"status-unprescribed"},ci={key:1,class:"unserved-days unserved-muted"},gi={class:"video-watch-col"},fi={class:"video-watch-trigger"},vi={key:1,class:"video-watch-muted"},yi={key:1,class:"video-watch-muted"},hi={class:"pagination-wrap"},ki={class:"min-h-[100px]"},bi={key:0,class:"text-sm text-gray-600 mb-4 pb-3 border-b border-gray-100"},Ci={class:"font-medium text-gray-800"},xi={class:"flex flex-wrap items-center gap-2"},Di={class:"text-sm font-medium text-gray-800"},Vi={class:"text-xs text-gray-600 mt-1.5 leading-relaxed"},Ai={class:"flex flex-col items-center justify-center py-4"},Ei={key:0,class:"text-center"},Si={key:1,class:"text-center"},Ri=["src"],$i={class:"mt-4 text-sm text-gray-600"},Ti={class:"mt-2"},Li={key:2,class:"text-center text-gray-500"},Ii={class:"text-gray-500"},Ni={class:"text-gray-500"},Pi={class:"font-medium"},zi={class:"font-medium"},Wi={key:0,class:"mb-4"},wi={key:0},Yi={key:0,class:"mt-2"},Fi={key:1,class:"mt-2"},Mi={class:"mb-4"},Ui={class:"flex gap-2"},Oi={key:0,class:"text-center text-gray-400 py-10"},qi={key:1,class:"record-list"},Bi={class:"record-header"},Qi={class:"flex items-center gap-2"},Gi={class:"font-medium text-sm"},Hi={class:"flex items-center gap-2"},Ki={class:"text-xs text-gray-400"},ji={class:"record-content"},Ji={key:0,class:"mt-1"},Xi={key:2,class:"text-center mt-4"},Zi=It({name:"tcmDiagnosis"}),el=It({...Zi,setup(tl){const Nt=fe(()=>ve(()=>import("./edit-emC-q2iC.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]))),Pt=fe(()=>ve(()=>import("./detail-B7NAp8JI.js"),__vite__mapDeps([58,9,1,2,4,5,10,3]))),zt=fe(()=>ve(()=>import("./index-Nz5F52Mm.js"),__vite__mapDeps([50,1,2,51,52,4,5,53,54,3,55]))),Wt=fe(()=>ve(()=>import("./appointment-ys1YAIGr.js"),__vite__mapDeps([59,1,2,34,3,4,5,40,60,61]))),wt=fe(()=>ve(()=>import("./AssistantWatchCallDialog-CDkKMtd6.js"),__vite__mapDeps([62,1,2,3,4,5,63]))),Yt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return Pe(e).format("YYYY-MM-DD HH:mm:ss")},st=t=>!t||t.length<11?t:t.replace(/(\d{3})\d{4}(\d{4})/,"$1****$2"),s=nt({keyword:"",diagnosis_type:"",syndrome_type:"",assistant_id:"",start_time:"",end_time:"",latest_appointment_start_date:"",latest_appointment_end_date:"",latest_appointment_channel_source:"",latest_assign_start_date:"",latest_assign_end_date:"",sort_unserved_days:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",pending_assign:"",pending_booking:"",completed_appointment:"",pending_assign_order_month:"",pending_assign_keyword:""}),it=c("all"),ue=c(!1),Ft=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],Mt=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],Ut=t=>{s.has_appointment=t,s.pending_booking="",s.completed_appointment="",t==="0"&&pe(),V.page=1,x(),S()},Ot=t=>{s.diagnosis_confirmed=t,s.pending_booking="",s.completed_appointment="",V.page=1,x(),S()};function qt(t){if(!(t.pending_assign==="1"||t.pending_assign===1))return!1;const r=String(t.pending_assign_keyword??"").trim(),g=String(t.keyword??"").trim();return r!==""||g!==""}function lt(t){if(!qt(t))return t;const e=String(t.pending_assign_keyword??"").trim(),r=String(t.keyword??"").trim(),g=e!==""?e:r;return{page_no:t.page_no,page_size:t.page_size,pending_assign:1,pending_assign_keyword:g}}function Bt(){const t=String(s.pending_assign_order_month??"").trim();return t!==""?t:s.pending_assign==="1"?"":Pe().format("YYYY-MM")}function Qt(){return{keyword:s.keyword,diagnosis_type:s.diagnosis_type,syndrome_type:s.syndrome_type,assistant_id:s.assistant_id,diagnosis_confirmed:s.diagnosis_confirmed,has_appointment:s.has_appointment,latest_appointment_start_date:s.latest_appointment_start_date,latest_appointment_end_date:s.latest_appointment_end_date,latest_appointment_channel_source:s.latest_appointment_channel_source,latest_assign_start_date:s.latest_assign_start_date,latest_assign_end_date:s.latest_assign_end_date}}function q(t={}){return{page_no:1,page_size:1,...Qt(),appointment_date:"",pending_booking:"",completed_appointment:"",pending_assign:"",pending_assign_order_month:"",pending_assign_keyword:"",sort_unserved_days:"",...t}}function Gt(){return lt(q({pending_assign:1,has_appointment:"",pending_assign_order_month:Bt(),pending_assign_keyword:s.pending_assign_keyword}))}const Ht=t=>U(lt(t));function Kt(){if(s.pending_assign!=="1")return;const t=(s.pending_assign_keyword??"").trim(),e=(s.keyword??"").trim();t===""&&e===""||(s.appointment_date="",s.pending_booking="",s.completed_appointment="",s.diagnosis_confirmed="",s.has_appointment="",s.diagnosis_type="",s.syndrome_type="",s.assistant_id="",s.start_time="",s.end_time="",s.latest_appointment_start_date="",s.latest_appointment_end_date="",s.latest_appointment_channel_source="",s.latest_assign_start_date="",s.latest_assign_end_date="",s.sort_unserved_days="",s.pending_assign_order_month="",it.value="all",t!==""&&(s.keyword=""))}const B=()=>{Kt(),V.page=1,x(),S()},jt=ee(()=>[{label:"昨天挂号",value:Ue.value},{label:"前天挂号",value:Oe.value},{label:"当天挂号",value:he.value},{label:"明天挂号",value:Fe.value},{label:"后天挂号",value:Me.value},{label:"全部",value:""}]),ze=c({}),We=c(void 0),we=c(void 0),Ye=c(void 0),Jt=async t=>{s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="",s.completed_appointment="",s.has_appointment="",pe(),s.appointment_date=t,V.page=1,await x(),S()},Xt=async()=>{s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="1",s.completed_appointment="",s.appointment_date="",s.has_appointment="0",pe(),V.page=1,await x(),S()},Zt=async()=>{s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="",s.completed_appointment="1",s.has_appointment="",s.appointment_date="",pe(),V.page=1,await x(),S()},en=async()=>{s.pending_assign="1",s.pending_booking="",s.completed_appointment="",s.has_appointment="",s.appointment_date="",pe(),s.pending_assign_order_month||(s.pending_assign_order_month=Pe().format("YYYY-MM")),V.page=1,await x(),S()},tn=async t=>{s.pending_assign_order_month=t||"",s.pending_assign==="1"&&(V.page=1,await x(),S())},S=async()=>{try{const[t,e,r,g,u,y,D,W,re]=await Promise.all([U(q({appointment_date:Ue.value,has_appointment:""})),U(q({appointment_date:Oe.value,has_appointment:""})),U(q({appointment_date:he.value,has_appointment:""})),U(q({appointment_date:Fe.value,has_appointment:""})),U(q({appointment_date:Me.value,has_appointment:""})),U(q()),U(q({has_appointment:0})),U(q({completed_appointment:1,has_appointment:""})),U(Gt())]);ze.value={[Ue.value]:(t==null?void 0:t.count)??0,[Oe.value]:(e==null?void 0:e.count)??0,[he.value]:(r==null?void 0:r.count)??0,[Fe.value]:(g==null?void 0:g.count)??0,[Me.value]:(u==null?void 0:u.count)??0,"":(y==null?void 0:y.count)??0},We.value=(D==null?void 0:D.count)??0,we.value=(W==null?void 0:W.count)??0,Ye.value=(re==null?void 0:re.count)??0}catch(t){console.error("获取日期数量失败",t)}};function nn(){const t=()=>S();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const an=2e4;let ye=null;function sn(){typeof document<"u"&&document.hidden||(x({silent:!0}).catch(()=>{}),S())}const P=t=>String(t).padStart(2,"0"),he=ee(()=>{const t=new Date;return`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Fe=ee(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Me=ee(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Ue=ee(()=>{const t=new Date;return t.setDate(t.getDate()-1),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),Oe=ee(()=>{const t=new Date;return t.setDate(t.getDate()-2),`${t.getFullYear()}-${P(t.getMonth()+1)}-${P(t.getDate())}`}),ot=c([]),dt=c([]),_e=c([]),rt=c([]),ln=async()=>{try{const[t,e,r,g]=await Promise.all([at({type:"diagnosis_type"}),at({type:"syndrome_type"}),at({type:"channels"}),cs()]);ot.value=(t==null?void 0:t.diagnosis_type)||[],dt.value=(e==null?void 0:e.syndrome_type)||[],rt.value=((r==null?void 0:r.channels)||[]).filter(u=>u.status!==0).sort((u,y)=>{const D=Number((y==null?void 0:y.sort)??0)-Number((u==null?void 0:u.sort)??0);return D!==0?D:Number((y==null?void 0:y.id)??0)-Number((u==null?void 0:u.id)??0)}).map(u=>({name:String((u==null?void 0:u.name)??(u==null?void 0:u.value)??""),value:(u==null?void 0:u.value)!=null&&u.value!==""?String(u.value):""})),_e.value=g||[]}catch(t){console.error("获取字典数据失败:",t)}},pe=()=>{s.latest_appointment_start_date="",s.latest_appointment_end_date="",s.latest_appointment_channel_source=""},ut=()=>!!(s.latest_appointment_start_date||s.latest_appointment_end_date||s.latest_appointment_channel_source),_t=()=>{ut()&&(s.appointment_date="",s.pending_booking="",s.completed_appointment="",s.has_appointment==="0"&&(s.has_appointment="")),B()},on=()=>{B()},dn=({prop:t,order:e})=>{t==="unserved_days"?s.sort_unserved_days=e==="ascending"?"asc":e==="descending"?"desc":"":s.sort_unserved_days="",V.page=1,x()},pt=t=>{const e=String((t==null?void 0:t.latest_appointment_channel_source_desc)||"").trim(),r=String((t==null?void 0:t.latest_appointment_channel_source)||"").trim(),g=String((t==null?void 0:t.latest_appointment_channel_source_detail)||"").trim(),u=e||r;return u?g?`${u}(${g})`:u:""},rn=t=>{if(!t&&t!==0)return"-";const e=typeof t=="string"?parseInt(t):t;if(_e.value.length===0)return"...";const r=_e.value.find(g=>(typeof g.id=="string"?parseInt(g.id):g.id)===e);return r?r.name:"-"},{pager:V,getLists:x}=xs({fetchFun:Ht,params:s}),un=()=>x({silent:!0}),_n=()=>{it.value="all",s.keyword="",s.diagnosis_type="",s.syndrome_type="",s.assistant_id="",s.latest_appointment_start_date="",s.latest_appointment_end_date="",s.latest_appointment_channel_source="",s.latest_assign_start_date="",s.latest_assign_end_date="",s.sort_unserved_days="",s.diagnosis_confirmed="",s.appointment_date="",s.has_appointment="",s.pending_assign="",s.pending_assign_order_month="",s.pending_assign_keyword="",s.pending_booking="",s.completed_appointment="",V.page=1,x(),S()},mt=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(r=>r.is_confirmed==1)},pn=t=>{if(t==null)return"unserved-muted";const e=Number(t);return Number.isFinite(e)?e>=7?"unserved-red":e>=3?"unserved-orange":"unserved-green":"unserved-muted"},mn=({row:t})=>mt(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",se=c(),cn=c(),ct=c(),gt=c(),ke=c(null),be=Ds();Va([se,ke],()=>{const t=ke.value,e=se.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),ke.value=null)},{flush:"post"});const Ce=c(!1),ft=c(0),gn=t=>{var r;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((r=be.userInfo)==null?void 0:r.id)},fn=t=>{ft.value=Number(t.id)||0,Ce.value=!0},vn=t=>gn(t)&&O(["tcm.diagnosis/watchCall"]),xe=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},yn=t=>{const e=t.video_call_hint,r="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${r}。开始时间:${Yt(e.start_time)}`:r},hn=t=>{const e=xe(t);return e==="live"||e==="pending_room"},kn=t=>xe(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":yn(t),bn=t=>{if(xe(t)!=="live"){f.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}fn(t)},Cn=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},xn=t=>{const e=xe(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const r=t.video_call_hint;return(r==null?void 0:r.label)||"—"},ie=c(!1),De=c(),qe=c(!1),h=nt({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),Dn={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Vn=t=>{var e;h.patient_id=t.patient_id||t.id,h.patient_name=t.patient_name,h.phone=t.phone||"",h.order_type="",h.amount=0,h.remark="",h.has_appointment=!!t.has_appointment,h.appointment_time_text=t.appointment_time_text||"",(e=De.value)==null||e.clearValidate(),ie.value=!0},An=()=>{var t;h.patient_id="",h.patient_name="",h.phone="",h.order_type="",h.amount=0,h.remark="",h.has_appointment=!1,h.appointment_time_text="",(t=De.value)==null||t.clearValidate()},En=async()=>{var t;try{await((t=De.value)==null?void 0:t.validate()),qe.value=!0;const e=await Cs({patient_id:h.patient_id,order_type:h.order_type,amount:h.amount,remark:h.remark});ie.value=!1,x();const r=e==null?void 0:e.order_no;if(r){Q.value=!0,K.value=!0,j.value="",J.value={patient_name:h.patient_name,has_appointment:h.has_appointment,appointment_time_text:h.appointment_time_text};try{const g=await gs({order_no:r});g!=null&&g.qrcode_url?j.value=g.qrcode_url:f.msgError("二维码生成失败")}catch(g){f.msgError((g==null?void 0:g.msg)||"生成二维码失败")}finally{K.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{qe.value=!1}},Q=c(!1),K=c(!1),j=c(""),J=c(null),Sn=ee(()=>{const t=J.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Be=c("小程序二维码"),Qe=c("confirm"),T=c([]),le=c([]),te=c(!1),Ge=c(!1),me=c("batch"),ce=c(null),A=c({assistant_id:null,is_inherit:!1});function Rn(){le.value=[],A.value.assistant_id=null,A.value.is_inherit=!1}const $n=t=>{T.value=t.map(e=>e.id)},Ve=t=>Number((t==null?void 0:t.assistant_id)??(t==null?void 0:t.assistant)??0)>0,Tn=ee(()=>{if(!T.value.length)return!1;const t=new Set(T.value);return V.lists.some(e=>t.has(e.id)&&Ve(e))}),Ln=t=>{me.value="single",ce.value=t,le.value=[],A.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,A.value.is_inherit=!1,te.value=!0},In=()=>{if(T.value.length===0){f.msgWarning("请先选择要指派的诊单");return}me.value="batch",ce.value=null,A.value.assistant_id=null,A.value.is_inherit=!1,le.value=[...T.value],te.value=!0},Nn=async()=>{if(!A.value.assistant_id){f.msgWarning("请选择医助");return}Ge.value=!0;try{if(me.value==="single")await Ne({id:ce.value.id,assistant_id:A.value.assistant_id,is_inherit:A.value.is_inherit?1:0});else{const t=le.value;if(!t.length){f.msgWarning("没有可指派的诊单,请关闭后重新勾选");return}for(const e of t)await Ne({id:e,assistant_id:A.value.assistant_id,is_inherit:A.value.is_inherit?1:0});T.value=[],le.value=[]}te.value=!1,x()}catch(t){console.error("指派失败:",t)}finally{Ge.value=!1}},Pn=async t=>{if(!(t!=null&&t.id)||!Ve(t)){f.msgWarning("该诊单未指派医助");return}await f.confirm("确定取消该诊单的医助指派吗?"),await Ne({id:t.id,assistant_id:0}),x()},zn=async()=>{if(!T.value.length){f.msgWarning("请先选择诊单");return}const t=new Set(T.value),e=V.lists.filter(r=>t.has(r.id)&&Ve(r));if(!e.length){f.msgWarning("所选诊单中没有已指派医助的记录");return}await f.confirm(`确定取消 ${e.length} 条诊单的医助指派吗?`),await Promise.all(e.map(r=>Ne({id:r.id,assistant_id:0}))),T.value=[],x()},Wn=()=>{se.value.open("add")},wn=t=>{se.value.open("edit",t)};function Yn(t){return s.pending_assign==="1"?"开方":Number(t==null?void 0:t.prescription_audit_status)===1&&Number(t==null?void 0:t.prescription_void_status)!==1?"查看":"开方"}const Fn=t=>{var e;if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}(e=ct.value)==null||e.open({...t,diagnosis_id:t.id,id:t.appointment_id||0})},Mn=()=>{var t,e;x(),(e=(t=se.value)==null?void 0:t.refreshCaseList)==null||e.call(t)},Un=async t=>{await f.confirm("确定要删除该诊单吗?"),await ks({id:t}),x()},On=(t,e)=>{switch(t){case"assign":Ln(e);break;case"cancelAssign":Pn(e);break;case"videoQr":if(!ge(e)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}ht(e);break;case"confirmQr":kt(e);break;case"cancelApt":Kn(e);break;case"guahaoLogs":Zn(e);break;case"order":Vn(e);break;case"delete":Un(e.id);break}},qn=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},Bn=t=>{const e=Number(t);return e===3?"已完成":e===4?"已过号":"已挂号"},Ae=t=>{const e=Array.isArray(t.appointments)?t.appointments:[];return e.length>0?e:t.has_appointment?[{id:t.appointment_id,status:t.appointment_status,doctor_id:t.appointment_doctor_id,doctor_name:t.appointment_doctor_name,time_text:t.appointment_time_text}]:[]},Qn=t=>{const e=Number(t==null?void 0:t.status);return{"apt-item-done":e===3,"apt-item-missed":e===4,"apt-item-active":e===1}},Gn=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},ge=t=>t.has_appointment&&Number(t.appointment_status)===1,vt=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},He=t=>{const e=Number(t==null?void 0:t.status);return!!(t!=null&&t.id&&(e===1||e===4))},Hn=t=>vt(t)?Ae(t).length<=1:!1,Kn=async t=>{var u;if(!vt(t)){const y=Number(t.appointment_status);t.has_appointment&&y===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该诊单未挂号或挂号信息异常");return}const e=Ae(t),r=e.length===1?e[0]:null,g=r!=null&&r.id&&He(r)?r.id:t.appointment_id;try{await f.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await $t({id:g}),f.msgSuccess("取消挂号成功"),x(),S(),ne.value&&((u=G.value)==null?void 0:u.id)===t.id&&await Se(t.id)}catch(y){y!=="cancel"&&f.msgError((y==null?void 0:y.msg)||"取消挂号失败")}},jn=async(t,e)=>{var u;if(!He(e)){Number(e==null?void 0:e.status)===3?f.msgWarning("已完成就诊,无法取消挂号"):f.msgWarning("该挂号无法取消");return}const r=e.doctor_name||"—",g=e.time_text||"—";try{await f.confirm(`确定取消「${r}」${g} 的挂号吗?(患者:${t.patient_name||"—"})`),await $t({id:e.id}),f.msgSuccess("取消挂号成功"),x(),S(),ne.value&&((u=G.value)==null?void 0:u.id)===t.id&&await Se(t.id)}catch(y){y!=="cancel"&&f.msgError((y==null?void 0:y.msg)||"取消挂号失败")}},ne=c(!1),Ee=c(!1),oe=c([]),G=c(null);function Jn(){oe.value=[],G.value=null}function Xn(t){const e=String((t==null?void 0:t.admin_name)||"").trim(),r=Number(t==null?void 0:t.admin_id);return e||(r>0?`管理员 #${r}`:"—")}async function Se(t){Ee.value=!0;try{const e=await fs({id:t});oe.value=Array.isArray(e==null?void 0:e.data)?e.data:Array.isArray(e)?e:[]}catch{oe.value=[]}finally{Ee.value=!1}}async function Zn(t){if(!(t!=null&&t.id)){f.msgWarning("诊单信息不完整");return}G.value=t,ne.value=!0,await Se(Number(t.id))}async function ea(){var t;await x({silent:!0}),S(),ne.value&&((t=G.value)!=null&&t.id)&&await Se(Number(G.value.id))}const ta=t=>{var e;if(!t.patient_id){f.msgWarning("患者信息不完整");return}(e=gt.value)==null||e.open(t)},de=c(!1),Ke=c(!1),yt=c(),z=nt({id:0,patient_name:"",id_card:""}),na={id_card:[{required:!0,validator:(t,e,r)=>{if(!e){r(new Error("请输入身份证号"));return}const g=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),u=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);g||u?r():r(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},aa=t=>{z.id=t.id,z.patient_name=t.patient_name||"-",z.id_card=t.id_card||"",de.value=!0},sa=async()=>{var t;await((t=yt.value)==null?void 0:t.validate()),Ke.value=!0;try{await vs({id:z.id,id_card:z.id_card}),f.msgSuccess("补全成功,年龄已自动更新"),de.value=!1,x()}catch(e){f.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ke.value=!1}},ht=async t=>{var e;if(!ge(t)){f.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}Qe.value="video",J.value=t,Q.value=!0,K.value=!0,j.value="",Be.value="视频二维码";try{const r=await Tt();if(!(r!=null&&r.app_id)){f.msgError("小程序未配置,请先配置小程序信息"),Q.value=!1;return}const g=await St({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=be.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});g!=null&&g.qrcode_url?j.value=g.qrcode_url:f.msgError("二维码生成失败")}catch(r){f.msgError((r==null?void 0:r.msg)||"生成二维码失败,请重试")}finally{K.value=!1}},kt=async t=>{if(!ge(t)){f.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){f.msgWarning("患者信息不完整");return}Qe.value="confirm",J.value=t,Q.value=!0,K.value=!0,j.value="",Be.value="诊单二维码";try{const e=await Tt();if(!(e!=null&&e.app_id)){f.msgError("小程序未配置,请先配置小程序信息"),Q.value=!1;return}const r=be.userInfo,g=await St({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(r==null?void 0:r.id)||""});g!=null&&g.qrcode_url?j.value=g.qrcode_url:f.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),f.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{K.value=!1}},ia=()=>{J.value&&(Qe.value==="video"?ht(J.value):kt(J.value))},Re=c(!1),I=c(null),X=c([]),$e=c(0),je=c(!1),N=c(null),ae=c(""),Je=c(!1),Xe=c(1),la=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return Pe(e).format("YYYY-MM-DD HH:mm")},oa=async t=>{I.value=t,Re.value=!0,X.value=[],$e.value=0,N.value=null,ae.value="",Xe.value=1,je.value=!0;try{const[e,r]=await Promise.all([Rt({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),bs({patient_id:t.patient_id||t.id}).catch(()=>null)]);X.value=(e==null?void 0:e.lists)||[],$e.value=(e==null?void 0:e.count)||0,N.value=r}catch(e){console.error("加载企业微信记录失败:",e)}finally{je.value=!1}},da=async()=>{if(I.value){Xe.value++;try{const t=await Rt({diagnosis_id:I.value.id,patient_id:I.value.patient_id,page_no:Xe.value,page_size:20});X.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},ra=async()=>{var t;if(!ae.value.trim()){f.msgWarning("请输入内容");return}Je.value=!0;try{await ys({diagnosis_id:I.value.id,patient_id:I.value.patient_id,content:ae.value.trim(),msg_type:"note",staff_name:((t=be.userInfo)==null?void 0:t.name)||"",external_name:I.value.patient_name||""}),ae.value="",oa(I.value)}catch(e){f.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Je.value=!1}},ua=async t=>{await f.confirm("确定删除该记录吗?");try{await hs({id:t}),X.value=X.value.filter(e=>e.id!==t),$e.value--}catch(e){f.msgError((e==null?void 0:e.msg)||"删除失败")}},_a=Aa(),pa=Ea(),bt=t=>{if(!O(["tcm.diagnosis/readonlyDetail"]))return;const e=Number(t==null?void 0:t.id);!e||e<=0||pa.push({path:"/tcm/diagnosis-readonly",query:{id:String(e)}})};return Sa(()=>{s.appointment_date=he.value,ln(),x(),nn(),ye=setInterval(sn,an);const t=_a.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(ke.value=e)}}),Ra(()=>{ye!=null&&(clearInterval(ye),ye=null)}),(t,e)=>{var Dt;const r=Ta,g=La,u=Ia,y=Na,D=za,W=Pa,re=wa,L=Fa,w=Ma,Ct=Ua,Z=Ba,ma=qa,ca=Oa,ga=Ya,fa=ms,va=Za,ya=ts,ha=es,xt=ns,Te=ss,Y=ls,ka=os,Ze=is,ba=ds,Le=us,Ca=rs,xa=_s,Da=ps,F=$a("perms"),et=Xa;return o(),_("div",As,[l(re,{class:"filter-card !border-none",shadow:"never"},{default:i(()=>[d("div",Es,[d("div",Ss,[(o(!0),_(E,null,$(jt.value,n=>(o(),_("span",{key:n.value,class:M(["chip",{active:a(s).pending_assign!=="1"&&a(s).pending_booking!=="1"&&a(s).completed_appointment!=="1"&&!ut()&&a(s).appointment_date===n.value}]),onClick:k=>Jt(n.value)},[p(m(n.label)+" ",1),a(ze)[n.value]!==void 0?(o(),_("em",$s,m(a(ze)[n.value]),1)):b("",!0)],10,Rs))),128)),d("span",{class:M(["chip","chip-pending-booking",{active:a(s).pending_booking==="1"}]),onClick:Xt},[e[34]||(e[34]=p(" 待预约 ",-1)),a(We)!==void 0?(o(),_("em",Ts,m(a(We)),1)):b("",!0)],2),d("span",{class:M(["chip","chip-completed-visit",{active:a(s).completed_appointment==="1"}]),onClick:Zt},[e[35]||(e[35]=p(" 已完成 ",-1)),a(we)!==void 0?(o(),_("em",Ls,m(a(we)),1)):b("",!0)],2),R((o(),_("span",Is,[d("span",{class:M(["chip","chip-pending",{active:a(s).pending_assign==="1"}]),onClick:en},[e[36]||(e[36]=p(" 待分配医助 ",-1)),a(Ye)!==void 0?(o(),_("em",Ns,m(a(Ye)),1)):b("",!0)],2),a(s).pending_assign==="1"?(o(),v(r,{key:0,modelValue:a(s).pending_assign_order_month,"onUpdate:modelValue":e[0]||(e[0]=n=>a(s).pending_assign_order_month=n),type:"month",placeholder:"订单月份","value-format":"YYYY-MM",clearable:"",class:"pending-assign-month",onChange:tn},null,8,["modelValue"])):b("",!0),a(s).pending_assign==="1"?(o(),v(g,{key:1,modelValue:a(s).pending_assign_keyword,"onUpdate:modelValue":e[1]||(e[1]=n=>a(s).pending_assign_keyword=n),placeholder:"搜身份证/诊单ID/患者号/备注…",clearable:"",class:"pending-assign-search",onKeyup:Vt(B,["enter"]),onClear:B},null,8,["modelValue"])):b("",!0)])),[[F,["tcm.diagnosis/assign"]]])]),d("div",Ps,[l(g,{modelValue:a(s).keyword,"onUpdate:modelValue":e[2]||(e[2]=n=>a(s).keyword=n),placeholder:"患者姓名 / 手机号",clearable:"",class:"search-input",onKeyup:Vt(B,["enter"])},null,8,["modelValue"]),l(u,{type:"primary",onClick:B},{default:i(()=>[...e[37]||(e[37]=[p("查询",-1)])]),_:1})])]),d("div",zs,[e[38]||(e[38]=d("span",{class:"chip-label"},"挂号:",-1)),(o(),_(E,null,$(Ft,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(s).has_appointment===n.value}]),onClick:k=>Ut(n.value)},m(n.label),11,Ws)),64)),e[39]||(e[39]=d("span",{class:"chip-divider"},null,-1)),e[40]||(e[40]=d("span",{class:"chip-label"},"确认:",-1)),(o(),_(E,null,$(Mt,n=>d("span",{key:n.value,class:M(["chip","chip-sm",{active:a(s).diagnosis_confirmed===n.value}]),onClick:k=>Ot(n.value)},m(n.label),11,ws)),64)),l(u,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[3]||(e[3]=n=>ue.value=!a(ue))},{default:i(()=>[p(m(a(ue)?"收起":"更多筛选")+" ",1),l(y,{class:M({"rotate-180":a(ue)})},{default:i(()=>[l(a(At))]),_:1},8,["class"])]),_:1})]),R(d("div",Ys,[l(W,{modelValue:a(s).diagnosis_type,"onUpdate:modelValue":e[4]||(e[4]=n=>a(s).diagnosis_type=n),placeholder:"诊断类型",clearable:"",size:"small",onChange:B},{default:i(()=>[(o(!0),_(E,null,$(a(ot),n=>(o(),v(D,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(W,{modelValue:a(s).syndrome_type,"onUpdate:modelValue":e[5]||(e[5]=n=>a(s).syndrome_type=n),placeholder:"证型",clearable:"",size:"small",onChange:B},{default:i(()=>[(o(!0),_(E,null,$(a(dt),n=>(o(),v(D,{key:n.value,label:n.name,value:n.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(W,{modelValue:a(s).assistant_id,"onUpdate:modelValue":e[6]||(e[6]=n=>a(s).assistant_id=n),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:B},{default:i(()=>[(o(!0),_(E,null,$(a(_e),n=>(o(),v(D,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(Lt,{class:"latest-appointment-range",startTime:a(s).latest_appointment_start_date,"onUpdate:startTime":e[7]||(e[7]=n=>a(s).latest_appointment_start_date=n),endTime:a(s).latest_appointment_end_date,"onUpdate:endTime":e[8]||(e[8]=n=>a(s).latest_appointment_end_date=n),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"最近挂号开始","end-placeholder":"最近挂号结束",onChange:_t},null,8,["startTime","endTime"]),l(Lt,{class:"latest-assign-range",startTime:a(s).latest_assign_start_date,"onUpdate:startTime":e[9]||(e[9]=n=>a(s).latest_assign_start_date=n),endTime:a(s).latest_assign_end_date,"onUpdate:endTime":e[10]||(e[10]=n=>a(s).latest_assign_end_date=n),"picker-type":"daterange","value-format":"YYYY-MM-DD","start-placeholder":"最近指派开始","end-placeholder":"最近指派结束",onChange:on},null,8,["startTime","endTime"]),l(W,{modelValue:a(s).latest_appointment_channel_source,"onUpdate:modelValue":e[11]||(e[11]=n=>a(s).latest_appointment_channel_source=n),placeholder:"最近挂号渠道",clearable:"",filterable:"",size:"small",class:"latest-appointment-channel",onChange:_t},{default:i(()=>[(o(!0),_(E,null,$(a(rt),n=>(o(),v(D,{key:String(n.value),label:n.name,value:String(n.value)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(u,{size:"small",onClick:_n},{default:i(()=>[...e[41]||(e[41]=[p("重置",-1)])]),_:1})],512),[[Wa,a(ue)]])]),_:1}),l(re,{class:"!border-none mt-3 list-card",shadow:"never"},{default:i(()=>[d("div",Fs,[d("div",Ms,[R((o(),v(u,{type:"primary",onClick:Wn},{default:i(()=>[...e[42]||(e[42]=[p("新增诊单",-1)])]),_:1})),[[F,["tcm.diagnosis/add"]]]),R((o(),v(u,{type:"success",onClick:In,disabled:a(T).length===0},{default:i(()=>[...e[43]||(e[43]=[p(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[F,["tcm.diagnosis/assign"]]]),R((o(),v(u,{type:"warning",plain:"",onClick:zn,disabled:!Tn.value},{default:i(()=>[...e[44]||(e[44]=[p(" 批量取消指派 ",-1)])]),_:1},8,["disabled"])),[[F,["tcm.diagnosis/assign"]]])]),a(T).length>0?(o(),_("div",Us,"已选 "+m(a(T).length)+" 条",1)):b("",!0)]),d("div",Os,[R((o(),v(ga,{data:a(V).lists,"row-key":"id",size:"default",onSelectionChange:$n,onRowDblclick:bt,onSortChange:dn,"row-class-name":mn,class:"diagnosis-table",stripe:""},{default:i(()=>[l(L,{type:"selection",width:"48",align:"center"}),l(L,{label:"ID","min-width":"70"},{default:i(({row:n})=>[d("div",qs,[d("div",Bs,[d("div",Qs,[p(m(n.id)+" ",1),n.assign_read_at===null&&n.assistant_id>0?(o(),v(w,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:i(()=>[...e[45]||(e[45]=[p("NEW",-1)])]),_:1})):b("",!0)])])])]),_:1}),l(L,{label:"患者","min-width":"60"},{default:i(({row:n})=>[d("div",Gs,[d("div",Hs,[d("div",Ks,m(n.patient_name),1)])])]),_:1}),l(L,{label:" 性别 / 年龄",width:"100",align:"left"},{default:i(({row:n})=>[d("div",null,m(n.gender_desc||"-")+" · "+m(n.age??"-")+"岁",1)]),_:1}),l(L,{label:"挂号","min-width":"175"},{default:i(({row:n})=>[d("div",{class:M(["appointment-cell",Gn(n)])},[n.has_appointment?(o(),_(E,{key:0},[Ae(n).length?(o(!0),_(E,{key:0},$(Ae(n),k=>(o(),_("div",{key:k.id||`${k.doctor_id}-${k.time_text}`,class:M(["apt-item",Qn(k)])},[d("div",js,m(Bn(k.status)),1),d("div",Js,m(k.doctor_name||"-"),1),d("div",Xs,m(k.time_text||"-"),1),He(k)?(o(),_("div",Zs,[R((o(),v(u,{type:"danger",link:"",size:"small",onClick:tt(C=>jn(n,k),["stop"])},{default:i(()=>[...e[46]||(e[46]=[p(" 取消挂号 ",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/guahao"]]])])):b("",!0)],2))),128)):(o(),_(E,{key:1},[d("div",ei,m(qn(n)),1),d("div",ti,m(n.appointment_doctor_name||"-"),1),d("div",ni,m(n.appointment_time_text||"-"),1)],64)),pt(n)?(o(),_("div",ai," 最近渠道:"+m(pt(n)),1)):b("",!0)],64)):(o(),_("span",si,"未挂号"))],2)]),_:1}),l(L,{label:"确认",width:"88",align:"center"},{default:i(({row:n})=>[mt(n)?(o(),_("span",ii,"已确认")):(o(),_("span",li,"未确认"))]),_:1}),l(L,{label:"复诊","min-width":"120"},{default:i(({row:n})=>[n.has_prescription?(o(),_("div",oi,[d("div",di,m(n.followup_time_text||"—"),1),d("div",ri,m(n.followup_doctor_name||"—"),1),n.followup_rx_voided?(o(),v(w,{key:0,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:i(()=>[...e[47]||(e[47]=[p(" 处方已作废 ",-1)])]),_:1})):b("",!0)])):(o(),_("span",ui,"无"))]),_:1}),l(L,{label:"助理",width:"100","show-overflow-tooltip":""},{default:i(({row:n})=>[d("span",_i,m(rn(n.assistant_id||n.assistant)),1)]),_:1}),l(L,{label:"开方",width:"72",align:"center"},{default:i(({row:n})=>[n.has_prescription?(o(),_("span",pi,"已开方")):(o(),_("span",mi,"未开方"))]),_:1}),l(L,{label:"未服务天数",prop:"unserved_days",width:"110",align:"center",sortable:"custom","sort-orders":["descending","ascending"]},{default:i(({row:n})=>[n.last_blood_record_at?(o(),v(Ct,{key:0,content:`最近一次健康打卡:${n.last_blood_record_at}`,placement:"top"},{default:i(()=>[d("span",{class:M(["unserved-days",pn(n.unserved_days)])},m(n.unserved_days??"—"),3)]),_:2},1032,["content"])):(o(),_("span",ci,"—"))]),_:1}),l(L,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:i(({row:n})=>[d("div",gi,[vn(n)?(o(),_(E,{key:0},[hn(n)?(o(),v(Ct,{key:0,content:kn(n),placement:"top"},{default:i(()=>[d("span",fi,[l(u,{type:"primary",link:"",size:"small",onClick:k=>bn(n)},{default:i(()=>[...e[48]||(e[48]=[p(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(o(),_("span",vi,m(Cn(n)),1))],64)):(o(),_("span",yi,m(xn(n)),1))])]),_:1}),l(L,{label:"操作",width:"340",fixed:"right",align:"left"},{default:i(({row:n})=>[d("div",{class:"action-cell",onClick:e[12]||(e[12]=tt(()=>{},["stop"])),onDblclick:e[13]||(e[13]=tt(()=>{},["stop"]))},[R((o(),v(u,{type:"primary",link:"",size:"small",onClick:k=>bt(n)},{default:i(()=>[...e[49]||(e[49]=[p(" 查看 ",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/readonlyDetail"]]]),R((o(),v(u,{type:"primary",link:"",size:"small",onClick:k=>wn(n.id)},{default:i(()=>[...e[50]||(e[50]=[p("诊单",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/edit"]]]),R((o(),v(u,{type:"primary",link:"",size:"small",onClick:k=>Fn(n)},{default:i(()=>[p(m(Yn(n)),1)]),_:2},1032,["onClick"])),[[F,["tcm.diagnosis/kaifang"]]]),R((o(),v(u,{type:"success",link:"",size:"small",onClick:k=>ta(n)},{default:i(()=>[...e[51]||(e[51]=[p("预约",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/guahao"]]]),R((o(),v(u,{type:"warning",link:"",size:"small",onClick:k=>aa(n)},{default:i(()=>[...e[52]||(e[52]=[p("补全身份证",-1)])]),_:1},8,["onClick"])),[[F,["tcm.diagnosis/edit"]]]),l(ca,{trigger:"click",onCommand:k=>On(k,n),placement:"bottom-end"},{dropdown:i(()=>[l(ma,null,{default:i(()=>[a(O)(["tcm.diagnosis/assign"])?(o(),v(Z,{key:0,command:"assign"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Qa))]),_:1}),e[54]||(e[54]=p("指派",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/assign"])&&Ve(n)?(o(),v(Z,{key:1,command:"cancelAssign"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ga))]),_:1}),e[55]||(e[55]=p("取消指派 ",-1))]),_:1})):b("",!0),ge(n)&&a(O)(["tcm.diagnosis/videoQr"])?(o(),v(Z,{key:2,command:"videoQr"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Et))]),_:1}),e[56]||(e[56]=p("视频二维码",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/guahao"])&&ge(n)?(o(),v(Z,{key:3,command:"confirmQr"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Et))]),_:1}),e[57]||(e[57]=p("二维码",-1))]),_:1})):b("",!0),Hn(n)&&a(O)(["tcm.diagnosis/guahao"])?(o(),v(Z,{key:4,command:"cancelApt"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ha))]),_:1}),e[58]||(e[58]=p("取消挂号 ",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/guahaoLogList"])?(o(),v(Z,{key:5,command:"guahaoLogs"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ka))]),_:1}),e[59]||(e[59]=p("挂号日志",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/order"])?(o(),v(Z,{key:6,command:"order"},{default:i(()=>[l(y,null,{default:i(()=>[l(a(ja))]),_:1}),e[60]||(e[60]=p("创建订单",-1))]),_:1})):b("",!0),a(O)(["tcm.diagnosis/delete"])?(o(),v(Z,{key:7,command:"delete",divided:""},{default:i(()=>[l(y,null,{default:i(()=>[l(a(Ja))]),_:1}),e[61]||(e[61]=d("span",{class:"text-danger"},"删除",-1))]),_:1})):b("",!0)]),_:2},1024)]),default:i(()=>[l(u,{type:"info",link:"",size:"small"},{default:i(()=>[e[53]||(e[53]=p("更多",-1)),l(y,{class:"el-icon--right"},{default:i(()=>[l(a(At))]),_:1})]),_:1})]),_:2},1032,["onCommand"])],32)]),_:1})]),_:1},8,["data"])),[[et,a(V).loading]]),d("div",hi,[l(fa,{modelValue:a(V),"onUpdate:modelValue":e[14]||(e[14]=n=>H(V)?V.value=n:null),onChange:a(x)},null,8,["modelValue","onChange"])])])]),_:1}),l(a(Nt),{ref_key:"editRef",ref:se,onSuccess:un},null,512),l(a(Pt),{ref_key:"detailRef",ref:cn},null,512),l(a(zt),{ref_key:"prescriptionRef",ref:ct,onSuccess:Mn},null,512),l(a(Wt),{ref_key:"appointmentRef",ref:gt,onSuccess:ea},null,512),l(a(wt),{modelValue:a(Ce),"onUpdate:modelValue":e[15]||(e[15]=n=>H(Ce)?Ce.value=n:null),"diagnosis-id":a(ft),onClosed:a(x)},null,8,["modelValue","diagnosis-id","onClosed"]),l(xt,{modelValue:a(ne),"onUpdate:modelValue":e[16]||(e[16]=n=>H(ne)?ne.value=n:null),title:"挂号操作日志",size:"460px","destroy-on-close":"",onClosed:Jn},{default:i(()=>[R((o(),_("div",ki,[a(G)?(o(),_("div",bi,[d("span",Ci,m(a(G).patient_name),1),e[62]||(e[62]=d("span",{class:"mx-2 text-gray-300"},"|",-1)),d("span",null,"诊单 #"+m(a(G).id),1)])):b("",!0),!a(Ee)&&a(oe).length===0?(o(),v(va,{key:1,description:"暂无挂号/取消挂号操作记录"})):a(oe).length>0?(o(),v(ha,{key:2},{default:i(()=>[(o(!0),_(E,null,$(a(oe),(n,k)=>(o(),v(ya,{key:n.id??k,timestamp:n.create_time_text||"—",placement:"top"},{default:i(()=>[d("div",xi,[l(w,{size:"small",type:"info"},{default:i(()=>[p(m(n.action_desc),1)]),_:2},1024),d("span",Di,m(Xn(n)),1)]),d("div",Vi,m(n.summary),1)]),_:2},1032,["timestamp"]))),128))]),_:1})):b("",!0)])),[[et,a(Ee)]])]),_:1},8,["modelValue"]),l(Te,{modelValue:a(Q),"onUpdate:modelValue":e[18]||(e[18]=n=>H(Q)?Q.value=n:null),title:a(Be),width:"400px","close-on-click-modal":!1},{footer:i(()=>[l(u,{onClick:e[17]||(e[17]=n=>Q.value=!1)},{default:i(()=>[...e[65]||(e[65]=[p("关闭",-1)])]),_:1}),a(K)?b("",!0):(o(),v(u,{key:0,type:"primary",onClick:ia},{default:i(()=>[...e[66]||(e[66]=[p(" 重新生成 ",-1)])]),_:1}))]),default:i(()=>{var n;return[d("div",Ai,[a(K)?(o(),_("div",Ei,[l(y,{class:"is-loading",size:40},{default:i(()=>[l(a(as))]),_:1}),e[63]||(e[63]=d("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):a(j)?(o(),_("div",Si,[d("img",{src:a(j),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,Ri),d("div",$i,[d("div",null,"患者:"+m((n=a(J))==null?void 0:n.patient_name),1),d("div",Ti,"挂号时间:"+m(Sn.value),1),e[64]||(e[64]=d("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(o(),_("div",Li," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),l(Te,{modelValue:a(te),"onUpdate:modelValue":e[22]||(e[22]=n=>H(te)?te.value=n:null),title:a(me)==="batch"?"批量指派医助":"指派医助",width:"500px",onClosed:Rn},{footer:i(()=>[l(u,{onClick:e[21]||(e[21]=n=>te.value=!1)},{default:i(()=>[...e[69]||(e[69]=[p("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:Nn,loading:a(Ge)},{default:i(()=>[...e[70]||(e[70]=[p(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(Ze,{model:a(A),"label-width":"100px"},{default:i(()=>[l(Y,{label:"选择医助",required:""},{default:i(()=>[l(W,{modelValue:a(A).assistant_id,"onUpdate:modelValue":e[19]||(e[19]=n=>a(A).assistant_id=n),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:""},{default:i(()=>[(o(!0),_(E,null,$(a(_e),n=>(o(),v(D,{key:n.id,label:n.name,value:Number(n.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(Y,{label:"继承"},{default:i(()=>[l(ka,{modelValue:a(A).is_inherit,"onUpdate:modelValue":e[20]||(e[20]=n=>a(A).is_inherit=n)},{default:i(()=>[...e[67]||(e[67]=[p("继承",-1)])]),_:1},8,["modelValue"]),e[68]||(e[68]=d("span",{class:"text-gray-400 text-xs ml-2"},"勾选后写入指派记录",-1))]),_:1}),a(me)==="batch"?(o(),v(Y,{key:0,label:"已选择"},{default:i(()=>[d("div",Ii,m(a(le).length)+" 条诊单记录",1)]),_:1})):(o(),v(Y,{key:1,label:"诊单信息"},{default:i(()=>{var n,k;return[d("div",Ni,[d("div",null,"患者:"+m((n=a(ce))==null?void 0:n.patient_name),1),d("div",null,"诊断日期:"+m((k=a(ce))==null?void 0:k.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(Te,{modelValue:a(ie),"onUpdate:modelValue":e[27]||(e[27]=n=>H(ie)?ie.value=n:null),title:"创建订单",width:"600px",onClose:An},{footer:i(()=>[l(u,{onClick:e[26]||(e[26]=n=>ie.value=!1)},{default:i(()=>[...e[71]||(e[71]=[p("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:En,loading:a(qe)},{default:i(()=>[...e[72]||(e[72]=[p("创建订单",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(Ze,{ref_key:"orderFormRef",ref:De,model:a(h),rules:Dn,"label-width":"100px"},{default:i(()=>[l(Y,{label:"患者"},{default:i(()=>[d("span",Pi,m(a(h).patient_name)+" ("+m(st(a(h).phone))+")",1)]),_:1}),l(Y,{label:"订单类型",prop:"order_type"},{default:i(()=>[l(W,{modelValue:a(h).order_type,"onUpdate:modelValue":e[23]||(e[23]=n=>a(h).order_type=n),placeholder:"请选择",class:"w-full"},{default:i(()=>[l(D,{label:"挂号费",value:1}),l(D,{label:"问诊费",value:2}),l(D,{label:"药品费用",value:3}),l(D,{label:"首付费用",value:4}),l(D,{label:"尾款费用",value:5}),l(D,{label:"其他费用",value:6}),l(D,{label:"全部费用",value:7}),l(D,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(Y,{label:"订单金额",prop:"amount"},{default:i(()=>[l(ba,{modelValue:a(h).amount,"onUpdate:modelValue":e[24]||(e[24]=n=>a(h).amount=n),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),l(Y,{label:"备注",prop:"remark"},{default:i(()=>[l(g,{modelValue:a(h).remark,"onUpdate:modelValue":e[25]||(e[25]=n=>a(h).remark=n),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(Te,{modelValue:a(de),"onUpdate:modelValue":e[30]||(e[30]=n=>H(de)?de.value=n:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[31]||(e[31]=n=>a(z).id_card="")},{footer:i(()=>[l(u,{onClick:e[29]||(e[29]=n=>de.value=!1)},{default:i(()=>[...e[73]||(e[73]=[p("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:sa,loading:a(Ke)},{default:i(()=>[...e[74]||(e[74]=[p("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:i(()=>[l(Ze,{ref_key:"fillIdCardFormRef",ref:yt,model:a(z),rules:na,"label-width":"80px"},{default:i(()=>[l(Y,{label:"患者"},{default:i(()=>[d("span",zi,m(a(z).patient_name),1)]),_:1}),l(Y,{label:"身份证号",prop:"id_card"},{default:i(()=>[l(g,{modelValue:a(z).id_card,"onUpdate:modelValue":e[28]||(e[28]=n=>a(z).id_card=n),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(xt,{modelValue:a(Re),"onUpdate:modelValue":e[33]||(e[33]=n=>H(Re)?Re.value=n:null),title:`企业微信记录 - ${((Dt=a(I))==null?void 0:Dt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:i(()=>{var n,k;return[a(N)?(o(),_("div",Wi,[l(Ca,{column:2,border:"",size:"small"},{default:i(()=>[l(Le,{label:"患者姓名"},{default:i(()=>{var C;return[p(m((C=a(I))==null?void 0:C.patient_name),1)]}),_:1}),l(Le,{label:"手机号"},{default:i(()=>[p(m(st(a(N).phone)||"-"),1)]),_:1}),l(Le,{label:"企微联系人ID"},{default:i(()=>[a(N).external_userid?(o(),_("span",wi,m(a(N).external_userid),1)):(o(),v(w,{key:1,type:"info",size:"small"},{default:i(()=>[...e[75]||(e[75]=[p("未关联",-1)])]),_:1}))]),_:1}),l(Le,{label:"会话存档"},{default:i(()=>[a(N).msgaudit_enabled?(o(),v(w,{key:0,type:"success",size:"small"},{default:i(()=>[...e[76]||(e[76]=[p("已开通",-1)])]),_:1})):(o(),v(w,{key:1,type:"info",size:"small"},{default:i(()=>[...e[77]||(e[77]=[p("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(n=a(N).permit_users)!=null&&n.length?(o(),_("div",Yi,[e[78]||(e[78]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(o(!0),_(E,null,$(a(N).permit_users,C=>(o(),v(w,{key:C,size:"small",class:"mr-1"},{default:i(()=>[p(m(C),1)]),_:2},1024))),128))])):b("",!0),(k=a(N).msgaudit_agree)!=null&&k.length?(o(),_("div",Fi,[e[79]||(e[79]=d("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(o(!0),_(E,null,$(a(N).msgaudit_agree,(C,Ie)=>(o(),v(w,{key:Ie,type:C.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:i(()=>[p(m(C.userid)+": "+m(C.agree_status==="Agree"?"已同意":C.agree_status),1)]),_:2},1032,["type"]))),128))])):b("",!0)])):b("",!0),l(xa),d("div",Mi,[d("div",Ui,[l(g,{modelValue:a(ae),"onUpdate:modelValue":e[32]||(e[32]=C=>H(ae)?ae.value=C:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),l(u,{type:"primary",onClick:ra,loading:a(Je),class:"self-end"},{default:i(()=>[...e[80]||(e[80]=[p(" 添加 ",-1)])]),_:1},8,["loading"])])]),R((o(),_("div",null,[a(X).length===0?(o(),_("div",Oi," 暂无聊天记录 ")):(o(),_("div",qi,[(o(!0),_(E,null,$(a(X),C=>{var Ie;return o(),_("div",{key:C.id,class:"record-item"},[d("div",Bi,[d("div",Qi,[l(w,{type:C.direction===0?"primary":"success",size:"small"},{default:i(()=>[p(m(C.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),d("span",Gi,m(C.direction===0?C.staff_name:C.external_name||((Ie=a(I))==null?void 0:Ie.patient_name)),1),C.msg_type==="note"?(o(),v(w,{key:0,type:"warning",size:"small"},{default:i(()=>[...e[81]||(e[81]=[p("备注",-1)])]),_:1})):b("",!0)]),d("div",Hi,[d("span",Ki,m(la(C.chat_time)),1),l(u,{type:"danger",link:"",size:"small",onClick:al=>ua(C.id)},{default:i(()=>[...e[82]||(e[82]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])])]),d("div",ji,m(C.content),1),C.media_url?(o(),_("div",Ji,[l(Da,{src:C.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[C.media_url]},null,8,["src","preview-src-list"])])):b("",!0)])}),128))])),a($e)>a(X).length?(o(),_("div",Xi,[l(u,{link:"",type:"primary",onClick:da},{default:i(()=>[...e[83]||(e[83]=[p("加载更多",-1)])]),_:1})])):b("",!0)])),[[et,a(je)]])]}),_:1},8,["modelValue","title"])])}}}),gl=Vs(el,[["__scopeId","data-v-d726d51c"]]);export{gl as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CgoFyDEf.js
diff --git a/server/public/admin/assets/index-ChVP7wAV.js b/server/public/admin/assets/index-ChVP7wAV.js
new file mode 100644
index 000000000..4d05c5b01
--- /dev/null
+++ b/server/public/admin/assets/index-ChVP7wAV.js
@@ -0,0 +1 @@
+import{o as P,ba as L,ap as Q,ac as Z,bi as ee,q as i,r as u,s as e,T as s,v as o,D as r,u as V,cO as te,w as ae,L as m,P as $,by as le,K as ne,cP as se,F as b,G as f,O as v,bn as oe,bm as ie,bK as re,t as z,bB as de,bk as ue,ae as ce,bj as _e,bX as me,cJ as pe,M as ge,p as k,E as he}from"./.pnpm-BadRMC3e.js";import{f as be}from"./first_visit-LvTGTIzk.js";import{_ as fe}from"./index-C53kWH2_.js";const ye={class:"conversion-page","element-loading-text":"正在汇总权限范围内的数据"},ve={class:"page-heading"},ke={class:"heading-meta"},we={class:"scope-chip"},xe={key:0},Ve={class:"filter-strip"},Ne={class:"filter-item filter-item--time"},Ce={class:"filter-item"},Ee={class:"filter-item"},Me={class:"filter-item"},Se={class:"range-text"},De={class:"metric-grid","aria-label":"综合转化指标"},Oe={class:"ranking-grid"},Fe={class:"panel ranking-panel"},Le={key:0,class:"bar-list"},$e=["title"],ze={class:"bar-track"},Pe={class:"panel ranking-panel"},Be={key:0,class:"bar-list"},Te=["title"],Ae={class:"bar-track"},Ie={class:"panel detail-panel"},Ue={class:"panel-heading panel-heading--table"},je={class:"panel target-panel"},qe={class:"panel-heading"},Re={class:"target-layout"},Ge={class:"target-progress-list"},Ke={class:"target-summary"},He={class:"is-teal"},Je={class:"progress-block"},We={class:"progress-copy"},Xe={class:"progress-block progress-block--month"},Ye={class:"progress-copy"},Qe={key:0,class:"target-empty-note"},Ze={class:"trend-wrap"},et=P({name:"firstVisitConversionPage"}),tt=P({...et,setup(at){const N=()=>({meta:{time_type:"today",time_label:"今日",start_date:"",end_date:"",generated_at:"",scope_value:4,scope_label:"",selected_dept_name:"",selected_assistant_name:"",selected_media_channel_code:"",selected_media_channel_name:"",open_count_source:""},filters:{departments:[],assistants:[],media_channels:[]},summary:{},rankings:{orders:[],amounts:[]},rows:[],target:{year:new Date().getFullYear(),target_amount:0,actual_amount:0,completion_rate:null,current_month_target:0,current_month_actual:0,current_month_rate:null,department_count:0,months:[],target_cumulative:[],actual_cumulative:[]}}),l=L(N()),y=ge(!1),c=L({time_type:"today",dept_id:void 0,assistant_id:void 0,media_channel_code:""}),B={value:"id",label:"name",children:"children"},T=[{label:"今日",value:"today"},{label:"昨天",value:"yesterday"},{label:"本周",value:"week"},{label:"本月",value:"month"},{label:"本季度",value:"quarter"},{label:"本年",value:"year"}],A=[{key:"add_fans_count",label:"加粉数",type:"count",hint:"企微新增客户"},{key:"total_open_count",label:"开口数",type:"count",hint:"来源于个人业绩录入"},{key:"interview_count",label:"面诊",type:"count",hint:"已完成挂号"},{key:"completed_order_count",label:"接诊诊单",type:"count",hint:"业务订单,按创建人归属并过滤无效单"},{key:"completed_order_amount",label:"诊单金额",type:"money",hint:"排除取消、拒收、退款及已退款订单"},{key:"avg_unit_price",label:"平均客单价",type:"money",hint:"诊单金额 / 接诊诊单"},{key:"account_cost",label:"现金成本",type:"money",hint:"当前范围内实际投放成本"},{key:"roi",label:"ROI",type:"ratio",hint:"诊单金额 / 投放成本"}],I=k(()=>{const n=[`${l.meta.time_label||"当前区间"}数据`,l.meta.scope_label||"当前权限范围"];return l.meta.selected_dept_name&&n.push(l.meta.selected_dept_name),l.meta.selected_assistant_name&&n.push(l.meta.selected_assistant_name),l.meta.selected_media_channel_name&&n.push(`渠道:${l.meta.selected_media_channel_name}`),n.join(" · ")}),U=k(()=>Math.max(0,...l.rankings.orders.map(n=>Number(n.value||0)))),j=k(()=>Math.max(0,...l.rankings.amounts.map(n=>Number(n.value||0)))),q=k(()=>({animationDuration:450,color:["#0f9185","#2f78df"],tooltip:{trigger:"axis",valueFormatter:n=>_(n)},grid:{left:62,right:24,top:28,bottom:36},xAxis:{type:"category",boundaryGap:!1,data:l.target.months,axisLine:{lineStyle:{color:"#d9e1e9"}},axisLabel:{color:"#718096"}},yAxis:{type:"value",axisLabel:{color:"#718096",formatter:n=>K(n)},splitLine:{lineStyle:{color:"#edf1f5"}}},series:[{name:"实际完成",type:"line",smooth:!0,symbol:"none",lineStyle:{width:3},areaStyle:{color:"rgba(15,145,133,.08)"},data:l.target.actual_cumulative},{name:"目标值",type:"line",smooth:!0,symbol:"none",lineStyle:{width:2,type:"dashed"},data:l.target.target_cumulative}]}));async function p(){y.value=!0;try{const n=await be(c);Object.assign(l,N(),n||{})}catch(n){he.error((n==null?void 0:n.message)||"综合数据加载失败")}finally{y.value=!1}}function R(){c.assistant_id=void 0,p()}function G(n,a){const h=l.summary[n];return a==="money"?_(h):a==="ratio"?E(h):C(h)}function C(n){return Math.round(Number(n||0)).toLocaleString("zh-CN")}function _(n){return`¥${Number(n||0).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}`}function g(n){return`${Number(n||0).toFixed(1)}%`}function w(n){return n==null?"未设置":g(n)}function E(n){return Number(n||0).toFixed(2)}function K(n){return Math.abs(n)>=1e4?`${(n/1e4).toFixed(0)}万`:String(Math.round(n))}function M(n,a){return a<=0?"0%":`${Math.max(4,Math.min(100,Number(n||0)/a*100))}%`}function S(n){return Math.max(0,Math.min(100,Number(n||0)))}return Q(p),(n,a)=>{const h=ae,H=ne,J=se,D=oe,O=ie,W=re,x=de,d=ue,X=_e,F=me,Y=ee;return Z((i(),u("div",ye,[e("header",ve,[e("div",null,[a[4]||(a[4]=e("h1",null,"综合数据转化",-1)),e("p",null,s(I.value),1)]),e("div",ke,[e("span",we,[o(h,null,{default:r(()=>[o(V(te))]),_:1}),m(s(l.meta.scope_label||"数据范围"),1)]),l.meta.generated_at?(i(),u("span",xe,"更新于 "+s(l.meta.generated_at),1)):$("",!0),o(H,{icon:V(le),loading:y.value,onClick:p},{default:r(()=>[...a[5]||(a[5]=[m("刷新",-1)])]),_:1},8,["icon","loading"])])]),e("section",Ve,[e("div",Ne,[a[6]||(a[6]=e("span",{class:"filter-label"},"时间范围",-1)),o(J,{modelValue:c.time_type,"onUpdate:modelValue":a[0]||(a[0]=t=>c.time_type=t),options:T,onChange:p},null,8,["modelValue"])]),e("div",Ce,[a[7]||(a[7]=e("span",{class:"filter-label"},"搜索员工",-1)),o(O,{modelValue:c.assistant_id,"onUpdate:modelValue":a[1]||(a[1]=t=>c.assistant_id=t),clearable:"",filterable:"",placeholder:"全部员工",class:"employee-select",onChange:p},{default:r(()=>[(i(!0),u(b,null,f(l.filters.assistants,t=>(i(),v(D,{key:t.id,label:t.name,value:Number(t.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),e("div",Ee,[a[8]||(a[8]=e("span",{class:"filter-label"},"部门",-1)),o(W,{modelValue:c.dept_id,"onUpdate:modelValue":a[2]||(a[2]=t=>c.dept_id=t),data:l.filters.departments,props:B,"node-key":"id",clearable:"",filterable:"","check-strictly":"","default-expand-all":"",placeholder:"全部可见部门",class:"dept-select",onChange:R},null,8,["modelValue","data"])]),e("div",Me,[a[9]||(a[9]=e("span",{class:"filter-label"},"渠道",-1)),o(O,{modelValue:c.media_channel_code,"onUpdate:modelValue":a[3]||(a[3]=t=>c.media_channel_code=t),clearable:"",filterable:"",placeholder:"全部渠道",class:"channel-select",onChange:p},{default:r(()=>[(i(!0),u(b,null,f(l.filters.media_channels,t=>(i(),v(D,{key:t.code,label:t.name,value:t.code},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),e("span",Se,s(l.meta.start_date)+" 至 "+s(l.meta.end_date),1)]),e("section",De,[(i(),u(b,null,f(A,t=>e("article",{key:t.key,class:"metric-card"},[e("span",null,s(t.label),1),e("strong",null,s(G(t.key,t.type)),1),e("small",null,s(t.hint),1)])),64))]),e("section",Oe,[e("article",Fe,[a[10]||(a[10]=e("div",{class:"panel-heading"},[e("div",null,[e("h2",null,"部门订单量占比"),e("p",null,"按订单创建人归属,排除取消、拒收及退款")]),e("span",null,"单位:单")],-1)),l.rankings.orders.length?(i(),u("div",Le,[(i(!0),u(b,null,f(l.rankings.orders,t=>(i(),u("div",{key:`order-${t.id}`,class:"bar-row"},[e("span",{class:"bar-name",title:t.name},s(t.name),9,$e),e("div",ze,[e("i",{class:"is-teal",style:z({width:M(t.value,U.value)})},null,4)]),e("strong",null,s(C(t.value))+" 单",1)]))),128))])):(i(),v(x,{key:1,"image-size":54,description:"当前范围暂无订单数据"}))]),e("article",Pe,[a[11]||(a[11]=e("div",{class:"panel-heading"},[e("div",null,[e("h2",null,"部门金额占比"),e("p",null,"仅统计未取消、未拒收且未退款的有效金额")]),e("span",null,"单位:元")],-1)),l.rankings.amounts.length?(i(),u("div",Be,[(i(!0),u(b,null,f(l.rankings.amounts,t=>(i(),u("div",{key:`amount-${t.id}`,class:"bar-row"},[e("span",{class:"bar-name",title:t.name},s(t.name),9,Te),e("div",Ae,[e("i",{class:"is-blue",style:z({width:M(t.value,j.value)})},null,4)]),e("strong",null,s(_(t.value)),1)]))),128))])):(i(),v(x,{key:1,"image-size":54,description:"当前范围暂无金额数据"}))])]),e("section",Ie,[e("div",Ue,[a[12]||(a[12]=e("div",null,[e("h2",null,"明细数据列表"),e("p",null,"部门层级汇总;开口率=开口/加粉,挂号率=付费挂号/加粉,接诊率=接诊诊单/加粉")],-1)),e("span",null,s(l.rows.length)+" 个顶层节点",1)]),o(X,{data:l.rows,"row-key":"id","tree-props":{children:"children"},"default-expand-all":"",class:"detail-table"},{empty:r(()=>[o(x,{description:"当前权限范围内暂无转化数据"})]),default:r(()=>[o(d,{prop:"name",label:"部门","min-width":"230",fixed:"left"},{default:r(({row:t})=>[e("strong",{class:ce({"is-parent":Array.isArray(t.children)&&t.children.length})},s(t.name),3)]),_:1}),o(d,{prop:"add_fans_count",label:"加粉","min-width":"88",align:"right"}),o(d,{prop:"total_open_count",label:"开口","min-width":"88",align:"right"}),o(d,{prop:"paid_appointment_count",label:"挂号","min-width":"88",align:"right"}),o(d,{prop:"interview_count",label:"面诊","min-width":"88",align:"right"}),o(d,{prop:"completed_order_count",label:"接诊诊单","min-width":"104",align:"right"}),o(d,{label:"接诊金额","min-width":"120",align:"right"},{default:r(({row:t})=>[m(s(_(t.completed_order_amount)),1)]),_:1}),o(d,{label:"开口率","min-width":"96",align:"right"},{default:r(({row:t})=>[m(s(g(t.total_open_rate)),1)]),_:1}),o(d,{label:"挂号率","min-width":"96",align:"right"},{default:r(({row:t})=>[m(s(g(t.paid_appointment_rate)),1)]),_:1}),o(d,{label:"面诊接诊率","min-width":"116",align:"right"},{default:r(({row:t})=>[m(s(g(t.interview_receive_rate)),1)]),_:1}),o(d,{label:"接诊率","min-width":"96",align:"right"},{default:r(({row:t})=>[m(s(g(t.receive_rate)),1)]),_:1}),o(d,{label:"ROI","min-width":"86",align:"right"},{default:r(({row:t})=>[m(s(E(t.roi)),1)]),_:1})]),_:1},8,["data"])]),e("section",je,[e("div",qe,[e("div",null,[a[13]||(a[13]=e("h2",null,"一诊诊金目标追踪",-1)),e("p",null,s(l.target.year)+" 年 · 按当前角色、部门及员工筛选范围计算",1)]),e("span",null,s(l.target.department_count)+" 个目标部门",1)]),e("div",Re,[e("div",Ge,[e("div",Ke,[e("div",null,[a[14]||(a[14]=e("span",null,"年度目标",-1)),e("strong",null,s(_(l.target.target_amount)),1)]),e("div",null,[a[15]||(a[15]=e("span",null,"已完成",-1)),e("strong",null,s(_(l.target.actual_amount)),1)]),e("div",null,[a[16]||(a[16]=e("span",null,"完成率",-1)),e("strong",He,s(w(l.target.completion_rate)),1)])]),e("div",Je,[e("div",We,[a[17]||(a[17]=e("span",null,"年度范围目标",-1)),e("b",null,s(w(l.target.completion_rate)),1)]),o(F,{percentage:S(l.target.completion_rate),"show-text":!1,"stroke-width":12,color:"#0f9185"},null,8,["percentage"]),e("small",null,"已完成 "+s(_(l.target.actual_amount))+" / 目标 "+s(_(l.target.target_amount)),1)]),e("div",Xe,[e("div",Ye,[a[18]||(a[18]=e("span",null,"本月范围目标",-1)),e("b",null,s(w(l.target.current_month_rate)),1)]),o(F,{percentage:S(l.target.current_month_rate),"show-text":!1,"stroke-width":12,color:"#2f78df"},null,8,["percentage"]),e("small",null,"已完成 "+s(_(l.target.current_month_actual))+" / 目标 "+s(_(l.target.current_month_target)),1)]),Number(l.target.target_amount)<=0?(i(),u("div",Qe," 当前可见部门尚未维护本年度月度目标,实际诊单金额仍会正常统计。 ")):$("",!0)]),e("div",Ze,[a[19]||(a[19]=e("div",{class:"trend-title"},[e("span",null,"年度累计趋势"),e("div",null,[e("i",{class:"legend-line is-actual"}),m("实际完成 "),e("i",{class:"legend-line is-target"}),m("目标值")])],-1)),o(V(pe),{class:"target-chart",option:q.value,autoresize:""},null,8,["option"])])])])])),[[Y,y.value]])}}}),ot=fe(tt,[["__scopeId","data-v-430b0870"]]);export{ot as default};
diff --git a/server/public/admin/assets/index-ClZwmN7G.js b/server/public/admin/assets/index-ClZwmN7G.js
new file mode 100644
index 000000000..cc70f2b3e
--- /dev/null
+++ b/server/public/admin/assets/index-ClZwmN7G.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-BdRjIR2i.js
+import{o as y,bo as F,x as P,be as V,q as o,r as g,v as e,D as t,bh as B,bg as M,Y as D,u as l,C as O,F as U,G as q,X as z,ac as v,O as c,bj as S,bk as j,br as G,L as m,K,bi as X,M as Y,ba as H}from"./.pnpm-BadRMC3e.js";import{a as I}from"./message-ZpCahsyn.js";import{u as J}from"./usePaging-DMqUvFG-.js";import{k as N}from"./index-C360OAjQ.js";const Q=y({name:"notice"}),ae=y({...Q,setup(W){let p;(s=>{s[s.USER=1]="USER",s[s.PLATFORM=2]="PLATFORM"})(p||(p={}));const r=Y(1),k=[{name:"通知用户",type:1},{name:"通知平台",type:2}],w=H({recipient:r}),{pager:u,getLists:d}=J({fetchFun:I,params:w});return F(()=>{d()}),d(),(s,a)=>{const T=B,b=M,h=z,E=D,i=j,f=G,C=P("router-link"),L=K,x=S,R=V("perms"),A=X;return o(),g("div",null,[e(b,{class:"!border-none",shadow:"never"},{default:t(()=>[e(T,{type:"warning",title:"温馨提示:平台配置在各个场景下的通知发送方式和内容模板",closable:!1,"show-icon":""})]),_:1}),e(b,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[e(E,{modelValue:l(r),"onUpdate:modelValue":a[0]||(a[0]=n=>O(r)?r.value=n:null),onTabChange:l(d)},{default:t(()=>[(o(),g(U,null,q(k,(n,_)=>e(h,{key:_,label:n.name,name:n.type,lazy:""},null,8,["label","name"])),64))]),_:1},8,["modelValue","onTabChange"]),v((o(),c(x,{size:"large",data:l(u).lists},{default:t(()=>[e(i,{label:"通知场景",prop:"scene_name","min-width":"120"}),e(i,{label:"通知类型",prop:"type_desc","min-width":"160"}),e(i,{label:"短信通知","min-width":"80"},{default:t(({row:n})=>{var _;return[((_=n.sms_notice)==null?void 0:_.status)==1?(o(),c(f,{key:0},{default:t(()=>[...a[1]||(a[1]=[m("开启",-1)])]),_:1})):(o(),c(f,{key:1,type:"danger"},{default:t(()=>[...a[2]||(a[2]=[m("关闭",-1)])]),_:1}))]}),_:1}),e(i,{label:"操作","min-width":"80",fixed:"right"},{default:t(({row:n})=>[v((o(),c(L,{type:"primary",link:""},{default:t(()=>[e(C,{to:{path:l(N)("notice.notice/set"),query:{id:n.id}}},{default:t(()=>[...a[3]||(a[3]=[m(" 设置 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[R,["notice.notice/set"]]])]),_:1})]),_:1},8,["data"])),[[A,l(u).loading]])]),_:1})])}}});export{ae as default};
+========
+import{o as y,bo as F,x as P,be as V,q as o,r as g,v as e,D as t,bh as B,bg as M,Y as D,u as l,C as O,F as U,G as q,X as z,ac as v,O as c,bj as S,bk as j,br as G,L as m,K,bi as X,M as Y,ba as H}from"./.pnpm-BadRMC3e.js";import{a as I}from"./message-CHU4ohQK.js";import{u as J}from"./usePaging-DMqUvFG-.js";import{k as N}from"./index-C53kWH2_.js";const Q=y({name:"notice"}),ae=y({...Q,setup(W){let p;(s=>{s[s.USER=1]="USER",s[s.PLATFORM=2]="PLATFORM"})(p||(p={}));const r=Y(1),k=[{name:"通知用户",type:1},{name:"通知平台",type:2}],w=H({recipient:r}),{pager:u,getLists:d}=J({fetchFun:I,params:w});return F(()=>{d()}),d(),(s,a)=>{const T=B,b=M,h=z,E=D,i=j,f=G,C=P("router-link"),L=K,x=S,R=V("perms"),A=X;return o(),g("div",null,[e(b,{class:"!border-none",shadow:"never"},{default:t(()=>[e(T,{type:"warning",title:"温馨提示:平台配置在各个场景下的通知发送方式和内容模板",closable:!1,"show-icon":""})]),_:1}),e(b,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[e(E,{modelValue:l(r),"onUpdate:modelValue":a[0]||(a[0]=n=>O(r)?r.value=n:null),onTabChange:l(d)},{default:t(()=>[(o(),g(U,null,q(k,(n,_)=>e(h,{key:_,label:n.name,name:n.type,lazy:""},null,8,["label","name"])),64))]),_:1},8,["modelValue","onTabChange"]),v((o(),c(x,{size:"large",data:l(u).lists},{default:t(()=>[e(i,{label:"通知场景",prop:"scene_name","min-width":"120"}),e(i,{label:"通知类型",prop:"type_desc","min-width":"160"}),e(i,{label:"短信通知","min-width":"80"},{default:t(({row:n})=>{var _;return[((_=n.sms_notice)==null?void 0:_.status)==1?(o(),c(f,{key:0},{default:t(()=>[...a[1]||(a[1]=[m("开启",-1)])]),_:1})):(o(),c(f,{key:1,type:"danger"},{default:t(()=>[...a[2]||(a[2]=[m("关闭",-1)])]),_:1}))]}),_:1}),e(i,{label:"操作","min-width":"80",fixed:"right"},{default:t(({row:n})=>[v((o(),c(L,{type:"primary",link:""},{default:t(()=>[e(C,{to:{path:l(N)("notice.notice/set"),query:{id:n.id}}},{default:t(()=>[...a[3]||(a[3]=[m(" 设置 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[R,["notice.notice/set"]]])]),_:1})]),_:1},8,["data"])),[[A,l(u).loading]])]),_:1})])}}});export{ae as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-ClZwmN7G.js
diff --git a/server/public/admin/assets/index-CnxWnqiR.js b/server/public/admin/assets/index-CnxWnqiR.js
index b2e1896a1..deeea04eb 100644
--- a/server/public/admin/assets/index-CnxWnqiR.js
+++ b/server/public/admin/assets/index-CnxWnqiR.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-CnxWnqiR.js
import{o as E,be as P,q as s,r as g,v as t,D as n,s as w,ac as m,O as d,K as j,L as p,bj as q,u as i,bk as z,T as I,C as K,bi as M,bg as O,P as D,a8 as $,M as x,n as y}from"./.pnpm-BadRMC3e.js";import{_ as U}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as G,i as H}from"./index-C360OAjQ.js";import{c as J,d as Q}from"./role-Dvf0ojCz.js";import{u as W}from"./usePaging-DMqUvFG-.js";import{_ as X}from"./auth.vue_vue_type_script_setup_true_lang-D9HXgFQ_.js";import{_ as Y}from"./edit.vue_vue_type_script_setup_true_lang-DI878iTg.js";import"./menu-Bcewhq3C.js";import"./index-2cRJ7Pdu.js";const Z={class:"role-lists"},ee={class:"mt-4"},te={class:"flex justify-end mt-4"},ae=E({name:"role"}),pe=E({...ae,setup(oe){const f=$(),h=$(),_=x(!1),k=x(!1),{pager:u,getLists:c}=W({fetchFun:J}),V=async()=>{var a;_.value=!0,await y(),(a=f.value)==null||a.open("add")},R=async a=>{var e,r;_.value=!0,await y(),(e=f.value)==null||e.open("edit"),(r=f.value)==null||r.setFormData(a)},S=async a=>{var e,r;k.value=!0,await y(),(e=h.value)==null||e.open(),(r=h.value)==null||r.setFormData(a)},B=a=>{const e=Number(a)||1;return{1:"全部数据(免隔离)",2:"本部门及下级部门",3:"仅本部门",4:"仅本人"}[e]||"全部数据(免隔离)"},L=async a=>{await H.confirm("确定要删除?"),await Q({id:a}),c()};return c(),(a,e)=>{const r=G,v=j,l=z,N=q,T=U,A=O,b=P("perms"),F=M;return s(),g("div",Z,[t(A,{class:"!border-none",shadow:"never"},{default:n(()=>[w("div",null,[m((s(),d(v,{type:"primary",onClick:V},{icon:n(()=>[t(r,{name:"el-icon-Plus"})]),default:n(()=>[e[3]||(e[3]=p(" 新增 ",-1))]),_:1})),[[b,["auth.role/add"]]])]),m((s(),g("div",ee,[w("div",null,[t(N,{data:i(u).lists,size:"large"},{default:n(()=>[t(l,{prop:"id",label:"ID","min-width":"100"}),t(l,{prop:"name",label:"名称","min-width":"150"}),t(l,{prop:"desc",label:"备注","min-width":"150","show-overflow-tooltip":""}),t(l,{prop:"sort",label:"排序","min-width":"100"}),t(l,{label:"数据范围","min-width":"140"},{default:n(({row:o})=>[p(I(B(o.data_scope)),1)]),_:1}),t(l,{prop:"num",label:"管理员人数","min-width":"100"}),t(l,{prop:"create_time",label:"创建时间","min-width":"180"}),t(l,{label:"操作",width:"200",fixed:"right"},{default:n(({row:o})=>[m((s(),d(v,{link:"",type:"primary",onClick:C=>R(o)},{default:n(()=>[...e[4]||(e[4]=[p(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[b,["auth.role/edit"]]]),m((s(),d(v,{link:"",type:"primary",onClick:C=>S(o)},{default:n(()=>[...e[5]||(e[5]=[p(" 分配权限 ",-1)])]),_:1},8,["onClick"])),[[b,["auth.role/edit"]]]),m((s(),d(v,{link:"",type:"danger",onClick:C=>L(o.id)},{default:n(()=>[...e[6]||(e[6]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[b,["auth.role/delete"]]])]),_:1})]),_:1},8,["data"])]),w("div",te,[t(T,{modelValue:i(u),"onUpdate:modelValue":e[0]||(e[0]=o=>K(u)?u.value=o:null),onChange:i(c)},null,8,["modelValue","onChange"])])])),[[F,i(u).loading]])]),_:1}),i(_)?(s(),d(Y,{key:0,ref_key:"editRef",ref:f,onSuccess:i(c),onClose:e[1]||(e[1]=o=>_.value=!1)},null,8,["onSuccess"])):D("",!0),i(k)?(s(),d(X,{key:1,ref_key:"authRef",ref:h,onSuccess:i(c),onClose:e[2]||(e[2]=o=>k.value=!1)},null,8,["onSuccess"])):D("",!0)])}}});export{pe as default};
+========
+import{o as E,be as P,q as s,r as g,v as t,D as n,s as w,ac as m,O as d,K as j,L as p,bj as q,u as i,bk as z,T as I,C as K,bi as M,bg as O,P as D,a8 as $,M as x,n as y}from"./.pnpm-BadRMC3e.js";import{_ as U}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as G,i as H}from"./index-C53kWH2_.js";import{c as J,d as Q}from"./role-CjRVNnAJ.js";import{u as W}from"./usePaging-DMqUvFG-.js";import{_ as X}from"./auth.vue_vue_type_script_setup_true_lang-BUtbO3Z1.js";import{_ as Y}from"./edit.vue_vue_type_script_setup_true_lang-D2fwepmz.js";import"./menu-DXCUns_Y.js";import"./index-ByXR3YHf.js";const Z={class:"role-lists"},ee={class:"mt-4"},te={class:"flex justify-end mt-4"},ae=E({name:"role"}),pe=E({...ae,setup(oe){const f=$(),h=$(),_=x(!1),k=x(!1),{pager:u,getLists:c}=W({fetchFun:J}),V=async()=>{var a;_.value=!0,await y(),(a=f.value)==null||a.open("add")},R=async a=>{var e,r;_.value=!0,await y(),(e=f.value)==null||e.open("edit"),(r=f.value)==null||r.setFormData(a)},S=async a=>{var e,r;k.value=!0,await y(),(e=h.value)==null||e.open(),(r=h.value)==null||r.setFormData(a)},B=a=>{const e=Number(a)||1;return{1:"全部数据(免隔离)",2:"本部门及下级部门",3:"仅本部门",4:"仅本人"}[e]||"全部数据(免隔离)"},L=async a=>{await H.confirm("确定要删除?"),await Q({id:a}),c()};return c(),(a,e)=>{const r=G,v=j,l=z,N=q,T=U,A=O,b=P("perms"),F=M;return s(),g("div",Z,[t(A,{class:"!border-none",shadow:"never"},{default:n(()=>[w("div",null,[m((s(),d(v,{type:"primary",onClick:V},{icon:n(()=>[t(r,{name:"el-icon-Plus"})]),default:n(()=>[e[3]||(e[3]=p(" 新增 ",-1))]),_:1})),[[b,["auth.role/add"]]])]),m((s(),g("div",ee,[w("div",null,[t(N,{data:i(u).lists,size:"large"},{default:n(()=>[t(l,{prop:"id",label:"ID","min-width":"100"}),t(l,{prop:"name",label:"名称","min-width":"150"}),t(l,{prop:"desc",label:"备注","min-width":"150","show-overflow-tooltip":""}),t(l,{prop:"sort",label:"排序","min-width":"100"}),t(l,{label:"数据范围","min-width":"140"},{default:n(({row:o})=>[p(I(B(o.data_scope)),1)]),_:1}),t(l,{prop:"num",label:"管理员人数","min-width":"100"}),t(l,{prop:"create_time",label:"创建时间","min-width":"180"}),t(l,{label:"操作",width:"200",fixed:"right"},{default:n(({row:o})=>[m((s(),d(v,{link:"",type:"primary",onClick:C=>R(o)},{default:n(()=>[...e[4]||(e[4]=[p(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[b,["auth.role/edit"]]]),m((s(),d(v,{link:"",type:"primary",onClick:C=>S(o)},{default:n(()=>[...e[5]||(e[5]=[p(" 分配权限 ",-1)])]),_:1},8,["onClick"])),[[b,["auth.role/edit"]]]),m((s(),d(v,{link:"",type:"danger",onClick:C=>L(o.id)},{default:n(()=>[...e[6]||(e[6]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[b,["auth.role/delete"]]])]),_:1})]),_:1},8,["data"])]),w("div",te,[t(T,{modelValue:i(u),"onUpdate:modelValue":e[0]||(e[0]=o=>K(u)?u.value=o:null),onChange:i(c)},null,8,["modelValue","onChange"])])])),[[F,i(u).loading]])]),_:1}),i(_)?(s(),d(Y,{key:0,ref_key:"editRef",ref:f,onSuccess:i(c),onClose:e[1]||(e[1]=o=>_.value=!1)},null,8,["onSuccess"])):D("",!0),i(k)?(s(),d(X,{key:1,ref_key:"authRef",ref:h,onSuccess:i(c),onClose:e[2]||(e[2]=o=>k.value=!1)},null,8,["onSuccess"])):D("",!0)])}}});export{pe as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-Bu7z_l5b.js
diff --git a/server/public/admin/assets/index-Cr9M8HwA.js b/server/public/admin/assets/index-Cr9M8HwA.js
new file mode 100644
index 000000000..8e4b054f0
--- /dev/null
+++ b/server/public/admin/assets/index-Cr9M8HwA.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DIf4OeWm.js
+import{_ as F}from"./index-DIQ_14l3.js";import{o as I,be as L,q as t,r as l,s as n,ac as j,O as u,D as a,L as s,K as q,F as C,G,P as p,bj as K,v as m,bk as M,aa as O,u as f,bf as R,br as $,I as z,T as J,bg as Q,M as P,l as V}from"./.pnpm-BadRMC3e.js";import{b as X,c as Y}from"./pay-C1LplNKY.js";import"./index-C360OAjQ.js";const Z={key:0,class:"text-lg mb-[24px]"},ee={key:1,class:"text-lg mb-[24px]"},te={key:2,class:"text-lg mb-[24px]"},ae={key:3,class:"text-lg mb-[24px]"},le={key:4,class:"text-lg mb-[24px]"},se={key:1},oe={key:1},me=I({__name:"index",setup(ne){const i=P({}),r=P(!1);let v={};const b=async()=>{i.value=await X(),v=V.cloneDeep(i.value)},w=()=>{r.value=!0},E=(x,e)=>{i.value[e].forEach(_=>{_.is_default=0}),i.value[e][x].is_default=1},h=()=>{i.value=V.cloneDeep(v),r.value=!1},D=async()=>{await Y(i.value),r.value=!1,b()};return b(),(x,e)=>{const _=q,W=O,y=M,B=R,T=$,N=z,S=K,U=Q,H=F,A=L("perms");return t(),l("div",null,[n("div",null,[j((t(),u(_,{type:"primary",onClick:w},{default:a(()=>[...e[0]||(e[0]=[s(" 设置支付方式 ",-1)])]),_:1})),[[A,["setting.pay.pay_way/setPayWay"]]])]),(t(!0),l(C,null,G(f(i),(g,d)=>(t(),u(U,{shadow:"never",class:"mt-4 !border-none",key:d},{default:a(()=>[n("div",null,[d==1?(t(),l("div",Z,[...e[1]||(e[1]=[s(" 微信小程序 ",-1),n("span",{class:"form-tips ml-[10px]"},"在微信小程序中付款的场景",-1)])])):p("",!0),d==2?(t(),l("div",ee,[...e[2]||(e[2]=[s(" 微信公众号 ",-1),n("span",{class:"form-tips ml-[10px]"}," 在微信公众号H5页面中付款的场景,公众号类型一般为服务号 ",-1)])])):p("",!0),d==3?(t(),l("div",te,[...e[3]||(e[3]=[s(" H5支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器H5页面中付款的场景",-1)])])):p("",!0),d==4?(t(),l("div",ae,[...e[4]||(e[4]=[s(" PC支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器PC页面中付款的场景",-1)])])):p("",!0),d==5?(t(),l("div",le,[...e[5]||(e[5]=[s(" APP支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在APP付款的场景",-1)])])):p("",!0),g.length?(t(),u(S,{key:5,data:g,style:{width:"100%"}},{default:a(()=>[m(y,{label:"图标","min-width":"150"},{default:a(({row:o})=>[m(W,{src:o.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),m(y,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),m(y,{label:"默认支付","min-width":"150"},{default:a(({row:o,$index:c})=>[n("div",null,[f(r)?(t(),u(B,{key:0,modelValue:o.is_default,"onUpdate:modelValue":k=>o.is_default=k,label:1,onChange:k=>E(c,d)},{default:a(()=>[...e[6]||(e[6]=[s(" 设为默认 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])):(t(),l(C,{key:1},[o.is_default==1?(t(),u(T,{key:0},{default:a(()=>[...e[7]||(e[7]=[s("默认",-1)])]),_:1})):(t(),l("span",se,"-"))],64))])]),_:2},1024),m(y,{label:"开启状态","min-width":"150"},{default:a(({row:o})=>[f(r)?(t(),u(N,{key:0,modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0},null,8,["modelValue","onUpdate:modelValue"])):(t(),l("span",oe,J(o.status==1?"开启":"关闭"),1))]),_:1})]),_:2},1032,["data"])):p("",!0)])]),_:2},1024))),128)),f(r)?(t(),u(H,{key:0},{default:a(()=>[m(_,{onClick:h},{default:a(()=>[...e[8]||(e[8]=[s("取消",-1)])]),_:1}),m(_,{type:"primary",onClick:D},{default:a(()=>[...e[9]||(e[9]=[s("保存",-1)])]),_:1})]),_:1})):p("",!0)])}}});export{me as default};
+========
+import{_ as F}from"./index-CRMPOQmu.js";import{o as I,be as L,q as t,r as l,s as n,ac as j,O as u,D as a,L as s,K as q,F as C,G,P as p,bj as K,v as m,bk as M,aa as O,u as f,bf as R,br as $,I as z,T as J,bg as Q,M as P,l as V}from"./.pnpm-BadRMC3e.js";import{b as X,c as Y}from"./pay-F2f46yW9.js";import"./index-C53kWH2_.js";const Z={key:0,class:"text-lg mb-[24px]"},ee={key:1,class:"text-lg mb-[24px]"},te={key:2,class:"text-lg mb-[24px]"},ae={key:3,class:"text-lg mb-[24px]"},le={key:4,class:"text-lg mb-[24px]"},se={key:1},oe={key:1},me=I({__name:"index",setup(ne){const i=P({}),r=P(!1);let v={};const b=async()=>{i.value=await X(),v=V.cloneDeep(i.value)},w=()=>{r.value=!0},E=(x,e)=>{i.value[e].forEach(_=>{_.is_default=0}),i.value[e][x].is_default=1},h=()=>{i.value=V.cloneDeep(v),r.value=!1},D=async()=>{await Y(i.value),r.value=!1,b()};return b(),(x,e)=>{const _=q,W=O,y=M,B=R,T=$,N=z,S=K,U=Q,H=F,A=L("perms");return t(),l("div",null,[n("div",null,[j((t(),u(_,{type:"primary",onClick:w},{default:a(()=>[...e[0]||(e[0]=[s(" 设置支付方式 ",-1)])]),_:1})),[[A,["setting.pay.pay_way/setPayWay"]]])]),(t(!0),l(C,null,G(f(i),(g,d)=>(t(),u(U,{shadow:"never",class:"mt-4 !border-none",key:d},{default:a(()=>[n("div",null,[d==1?(t(),l("div",Z,[...e[1]||(e[1]=[s(" 微信小程序 ",-1),n("span",{class:"form-tips ml-[10px]"},"在微信小程序中付款的场景",-1)])])):p("",!0),d==2?(t(),l("div",ee,[...e[2]||(e[2]=[s(" 微信公众号 ",-1),n("span",{class:"form-tips ml-[10px]"}," 在微信公众号H5页面中付款的场景,公众号类型一般为服务号 ",-1)])])):p("",!0),d==3?(t(),l("div",te,[...e[3]||(e[3]=[s(" H5支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器H5页面中付款的场景",-1)])])):p("",!0),d==4?(t(),l("div",ae,[...e[4]||(e[4]=[s(" PC支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器PC页面中付款的场景",-1)])])):p("",!0),d==5?(t(),l("div",le,[...e[5]||(e[5]=[s(" APP支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在APP付款的场景",-1)])])):p("",!0),g.length?(t(),u(S,{key:5,data:g,style:{width:"100%"}},{default:a(()=>[m(y,{label:"图标","min-width":"150"},{default:a(({row:o})=>[m(W,{src:o.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),m(y,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),m(y,{label:"默认支付","min-width":"150"},{default:a(({row:o,$index:c})=>[n("div",null,[f(r)?(t(),u(B,{key:0,modelValue:o.is_default,"onUpdate:modelValue":k=>o.is_default=k,label:1,onChange:k=>E(c,d)},{default:a(()=>[...e[6]||(e[6]=[s(" 设为默认 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])):(t(),l(C,{key:1},[o.is_default==1?(t(),u(T,{key:0},{default:a(()=>[...e[7]||(e[7]=[s("默认",-1)])]),_:1})):(t(),l("span",se,"-"))],64))])]),_:2},1024),m(y,{label:"开启状态","min-width":"150"},{default:a(({row:o})=>[f(r)?(t(),u(N,{key:0,modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0},null,8,["modelValue","onUpdate:modelValue"])):(t(),l("span",oe,J(o.status==1?"开启":"关闭"),1))]),_:1})]),_:2},1032,["data"])):p("",!0)])]),_:2},1024))),128)),f(r)?(t(),u(H,{key:0},{default:a(()=>[m(_,{onClick:h},{default:a(()=>[...e[8]||(e[8]=[s("取消",-1)])]),_:1}),m(_,{type:"primary",onClick:D},{default:a(()=>[...e[9]||(e[9]=[s("保存",-1)])]),_:1})]),_:1})):p("",!0)])}}});export{me as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-Cr9M8HwA.js
diff --git a/server/public/admin/assets/index-Cu07jcQT.js b/server/public/admin/assets/index-Cu07jcQT.js
index 5735d0b4f..d1829b3c3 100644
--- a/server/public/admin/assets/index-Cu07jcQT.js
+++ b/server/public/admin/assets/index-Cu07jcQT.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-Cu07jcQT.js
import{o as x,ap as S,be as T,q as s,r as z,v as e,D as o,b9 as A,u as n,b6 as M,b7 as q,b8 as k,K as O,L as _,bg as G,ac as f,bi as H,O as m,s as V,bj as J,bk as Q,a0 as W,I as X,C as Y,P as Z,a8 as ee,ba as ae,M as te,n as E}from"./.pnpm-BadRMC3e.js";import{_ as oe}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as le,i as ne,_ as ie}from"./index-C360OAjQ.js";import{a as se,b as de,c as me}from"./admin-BrR2gadt.js";import{u as re}from"./usePaging-DMqUvFG-.js";import pe from"./edit-la1amI9m.js";import"./picker-BV4TmQgU.js";import"./index-2cRJ7Pdu.js";import"./index-CARk4iLN.js";import"./index-DcSBJkxh.js";import"./index-BHk2qnVA.js";import"./file-DAA7Hwft.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./department-BFDDlesw.js";import"./post-Iso6tncx.js";import"./useDictOptions-C5fytNbv.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=ee(),d=ae({account:"",name:"",role_id:1,apply_data_scope:1}),v=te(!1),{pager:r,getLists:p,resetParams:D,resetPage:w}=re({fetchFun:se,params:d}),P=t=>{de({id:t.id,avatar:t.avatar,account:t.account,name:t.name,role_id:t.role_id,jobs_id:t.jobs_id,dept_id:t.dept_id,disable:t.disable,multipoint_login:t.multipoint_login}).finally(()=>{p()})},I=async()=>{var t;v.value=!0,await E(),(t=b.value)==null||t.open("add")},K=async t=>{var a,c;v.value=!0,await E(),(a=b.value)==null||a.open("edit"),(c=b.value)==null||c.setFormData(t)},$=async t=>{await ne.confirm("确定要删除该医生吗?"),await me({id:t}),p()};return S(()=>{p()}),(t,a)=>{const c=q,y=M,u=O,B=A,C=G,L=le,i=Q,U=W,j=X,F=J,N=oe,g=T("perms"),R=H;return s(),z("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:o(()=>[e(B,{class:"mb-[-16px]",model:n(d),inline:""},{default:o(()=>[e(y,{class:"w-[280px]",label:"医生账号"},{default:o(()=>[e(c,{modelValue:n(d).account,"onUpdate:modelValue":a[0]||(a[0]=l=>n(d).account=l),placeholder:"请输入医生账号",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医生名称"},{default:o(()=>[e(c,{modelValue:n(d).name,"onUpdate:modelValue":a[1]||(a[1]=l=>n(d).name=l),placeholder:"请输入医生名称",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:o(()=>[e(u,{type:"primary",onClick:n(w)},{default:o(()=>[...a[4]||(a[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:o(()=>[...a[5]||(a[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((s(),m(C,{class:"mt-4 !border-none",shadow:"never"},{default:o(()=>[f((s(),m(u,{type:"primary",onClick:I},{icon:o(()=>[e(L,{name:"el-icon-Plus"})]),default:o(()=>[a[6]||(a[6]=_(" 新增医生 ",-1))]),_:1})),[[g,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(r).lists,size:"large"},{default:o(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),e(i,{label:"头像","min-width":"100"},{default:o(({row:l})=>[e(U,{size:50,src:l.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"120"}),e(i,{label:"姓名",prop:"name","min-width":"100"}),e(i,{label:"手机号",prop:"phone","min-width":"120"}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((s(),m(i,{label:"状态","min-width":"100"},{default:o(({row:l})=>[e(j,{modelValue:l.disable,"onUpdate:modelValue":h=>l.disable=h,"active-value":0,"inactive-value":1,onChange:h=>P(l)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[g,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:o(({row:l})=>[f((s(),m(u,{type:"primary",link:"",onClick:h=>K(l)},{default:o(()=>[...a[7]||(a[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/edit"]]]),f((s(),m(u,{type:"danger",link:"",onClick:h=>$(l.id)},{default:o(()=>[...a[8]||(a[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(N,{modelValue:n(r),"onUpdate:modelValue":a[2]||(a[2]=l=>Y(r)?r.value=l:null),onChange:n(p)},null,8,["modelValue","onChange"])])]),_:1})),[[R,n(r).loading]]),n(v)?(s(),m(pe,{key:0,ref_key:"editRef",ref:b,onSuccess:n(p),onClose:a[3]||(a[3]=l=>v.value=!1)},null,8,["onSuccess"])):Z("",!0)])}}}),Ue=ie(be,[["__scopeId","data-v-72ffb098"]]);export{Ue as default};
+========
+import{o as x,ap as S,be as T,q as s,r as z,v as e,D as o,b9 as A,u as n,b6 as M,b7 as q,b8 as k,K as O,L as _,bg as G,ac as f,bi as H,O as m,s as V,bj as J,bk as Q,a0 as W,I as X,C as Y,P as Z,a8 as ee,ba as ae,M as te,n as E}from"./.pnpm-BadRMC3e.js";import{_ as oe}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as le,i as ne,_ as ie}from"./index-C53kWH2_.js";import{a as se,b as de,c as me}from"./admin-d9-bezkf.js";import{u as re}from"./usePaging-DMqUvFG-.js";import pe from"./edit-CpaNM1Ec.js";import"./picker-Bo_aGeCY.js";import"./index-ByXR3YHf.js";import"./index-ci6cz5MZ.js";import"./index-ZgwwU4Et.js";import"./index-9XBsG-Cy.js";import"./file-Ci3F9EoX.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./department-drKzCnRw.js";import"./post-DzKn8_yS.js";import"./useDictOptions-D9FsmJj0.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=ee(),d=ae({account:"",name:"",role_id:1,apply_data_scope:1}),v=te(!1),{pager:r,getLists:p,resetParams:D,resetPage:w}=re({fetchFun:se,params:d}),P=t=>{de({id:t.id,avatar:t.avatar,account:t.account,name:t.name,role_id:t.role_id,jobs_id:t.jobs_id,dept_id:t.dept_id,disable:t.disable,multipoint_login:t.multipoint_login}).finally(()=>{p()})},I=async()=>{var t;v.value=!0,await E(),(t=b.value)==null||t.open("add")},K=async t=>{var a,c;v.value=!0,await E(),(a=b.value)==null||a.open("edit"),(c=b.value)==null||c.setFormData(t)},$=async t=>{await ne.confirm("确定要删除该医生吗?"),await me({id:t}),p()};return S(()=>{p()}),(t,a)=>{const c=q,y=M,u=O,B=A,C=G,L=le,i=Q,U=W,j=X,F=J,N=oe,g=T("perms"),R=H;return s(),z("div",ce,[e(C,{class:"!border-none",shadow:"never"},{default:o(()=>[e(B,{class:"mb-[-16px]",model:n(d),inline:""},{default:o(()=>[e(y,{class:"w-[280px]",label:"医生账号"},{default:o(()=>[e(c,{modelValue:n(d).account,"onUpdate:modelValue":a[0]||(a[0]=l=>n(d).account=l),placeholder:"请输入医生账号",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,{class:"w-[280px]",label:"医生名称"},{default:o(()=>[e(c,{modelValue:n(d).name,"onUpdate:modelValue":a[1]||(a[1]=l=>n(d).name=l),placeholder:"请输入医生名称",clearable:"",onKeyup:k(n(w),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(y,null,{default:o(()=>[e(u,{type:"primary",onClick:n(w)},{default:o(()=>[...a[4]||(a[4]=[_("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n(D)},{default:o(()=>[...a[5]||(a[5]=[_("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),f((s(),m(C,{class:"mt-4 !border-none",shadow:"never"},{default:o(()=>[f((s(),m(u,{type:"primary",onClick:I},{icon:o(()=>[e(L,{name:"el-icon-Plus"})]),default:o(()=>[a[6]||(a[6]=_(" 新增医生 ",-1))]),_:1})),[[g,["auth.admin/add"]]]),V("div",ue,[e(F,{data:n(r).lists,size:"large"},{default:o(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),e(i,{label:"头像","min-width":"100"},{default:o(({row:l})=>[e(U,{size:50,src:l.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"120"}),e(i,{label:"姓名",prop:"name","min-width":"100"}),e(i,{label:"手机号",prop:"phone","min-width":"120"}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),f((s(),m(i,{label:"状态","min-width":"100"},{default:o(({row:l})=>[e(j,{modelValue:l.disable,"onUpdate:modelValue":h=>l.disable=h,"active-value":0,"inactive-value":1,onChange:h=>P(l)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1})),[[g,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:o(({row:l})=>[f((s(),m(u,{type:"primary",link:"",onClick:h=>K(l)},{default:o(()=>[...a[7]||(a[7]=[_(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/edit"]]]),f((s(),m(u,{type:"danger",link:"",onClick:h=>$(l.id)},{default:o(()=>[...a[8]||(a[8]=[_(" 删除 ",-1)])]),_:1},8,["onClick"])),[[g,["auth.admin/delete"]]])]),_:1})]),_:1},8,["data"])]),V("div",_e,[e(N,{modelValue:n(r),"onUpdate:modelValue":a[2]||(a[2]=l=>Y(r)?r.value=l:null),onChange:n(p)},null,8,["modelValue","onChange"])])]),_:1})),[[R,n(r).loading]]),n(v)?(s(),m(pe,{key:0,ref_key:"editRef",ref:b,onSuccess:n(p),onClose:a[3]||(a[3]=l=>v.value=!1)},null,8,["onSuccess"])):Z("",!0)])}}}),Ue=ie(be,[["__scopeId","data-v-72ffb098"]]);export{Ue as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-BYpL77TV.js
diff --git a/server/public/admin/assets/index-Cv-zjZuZ.js b/server/public/admin/assets/index-Cv-zjZuZ.js
new file mode 100644
index 000000000..fb5e483f9
--- /dev/null
+++ b/server/public/admin/assets/index-Cv-zjZuZ.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-7hDdyAcv.js
+import{o as k,be as E,q as i,r as x,v as e,D as o,bh as R,bg as N,s as B,bj as V,u as d,bk as D,aa as L,ac as T,O as f,K as P,L as $,P as j,M as _,a8 as q}from"./.pnpm-BadRMC3e.js";import{a as A}from"./pay-C1LplNKY.js";import{u as H}from"./getExposeType-CWAjpevD.js";import u from"./edit-BO8BBX-p.js";import"./index-C360OAjQ.js";import"./picker-BV4TmQgU.js";import"./index-2cRJ7Pdu.js";import"./index-CARk4iLN.js";import"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import"./index-DcSBJkxh.js";import"./index-BHk2qnVA.js";import"./file-DAA7Hwft.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./usePaging-DMqUvFG-.js";import"./useLockFn-q1SV9nuT.js";const oe=k({__name:"index",setup(I){const r=H(),m=_([]),b=q(),c=_(!1),l=async()=>{const{lists:n}=await A();m.value=n},w=async n=>{var t;(t=r.value)==null||t.openHandle(n.id,!1)};return l(),(n,t)=>{const h=R,p=N,a=D,y=L,g=P,v=V,C=E("perms");return i(),x("div",null,[e(p,{class:"!border-none",shadow:"never"},{default:o(()=>[e(h,{type:"warning",title:"温馨提示:设置系统支持的支付方式",closable:!1,"show-icon":""})]),_:1}),e(p,{shadow:"never",class:"mt-4 !border-none"},{default:o(()=>[B("div",null,[e(v,{data:d(m)},{default:o(()=>[e(a,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),e(a,{prop:"name",label:"显示名称","min-width":"150"}),e(a,{label:"图标","min-width":"150"},{default:o(({row:s})=>[e(y,{src:s.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),e(a,{prop:"sort",label:"排序","min-width":"150"}),e(a,{label:"操作","min-width":"80",fixed:"right"},{default:o(({row:s})=>[T((i(),f(g,{link:"",type:"primary",onClick:K=>w(s)},{default:o(()=>[...t[1]||(t[1]=[$(" 配置 ",-1)])]),_:1},8,["onClick"])),[[C,["setting.pay.pay_config/setConfig"]]])]),_:1})]),_:1},8,["data"])])]),_:1}),d(c)?(i(),f(u,{key:0,ref_key:"editRef",ref:b,onSuccess:l,onClose:t[0]||(t[0]=s=>c.value=!1)},null,512)):j("",!0),e(u,{ref_key:"editNewRef",ref:r,onRefresh:l},null,512)])}}});export{oe as default};
+========
+import{o as k,be as E,q as i,r as x,v as e,D as o,bh as R,bg as N,s as B,bj as V,u as d,bk as D,aa as L,ac as T,O as f,K as P,L as $,P as j,M as _,a8 as q}from"./.pnpm-BadRMC3e.js";import{a as A}from"./pay-F2f46yW9.js";import{u as H}from"./getExposeType-CWAjpevD.js";import u from"./edit-iRTEJAs0.js";import"./index-C53kWH2_.js";import"./picker-Bo_aGeCY.js";import"./index-ByXR3YHf.js";import"./index-ci6cz5MZ.js";import"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import"./index-ZgwwU4Et.js";import"./index-9XBsG-Cy.js";import"./file-Ci3F9EoX.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./usePaging-DMqUvFG-.js";import"./useLockFn-q1SV9nuT.js";const oe=k({__name:"index",setup(I){const r=H(),m=_([]),b=q(),c=_(!1),l=async()=>{const{lists:n}=await A();m.value=n},w=async n=>{var t;(t=r.value)==null||t.openHandle(n.id,!1)};return l(),(n,t)=>{const h=R,p=N,a=D,y=L,g=P,v=V,C=E("perms");return i(),x("div",null,[e(p,{class:"!border-none",shadow:"never"},{default:o(()=>[e(h,{type:"warning",title:"温馨提示:设置系统支持的支付方式",closable:!1,"show-icon":""})]),_:1}),e(p,{shadow:"never",class:"mt-4 !border-none"},{default:o(()=>[B("div",null,[e(v,{data:d(m)},{default:o(()=>[e(a,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),e(a,{prop:"name",label:"显示名称","min-width":"150"}),e(a,{label:"图标","min-width":"150"},{default:o(({row:s})=>[e(y,{src:s.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),e(a,{prop:"sort",label:"排序","min-width":"150"}),e(a,{label:"操作","min-width":"80",fixed:"right"},{default:o(({row:s})=>[T((i(),f(g,{link:"",type:"primary",onClick:K=>w(s)},{default:o(()=>[...t[1]||(t[1]=[$(" 配置 ",-1)])]),_:1},8,["onClick"])),[[C,["setting.pay.pay_config/setConfig"]]])]),_:1})]),_:1},8,["data"])])]),_:1}),d(c)?(i(),f(u,{key:0,ref_key:"editRef",ref:b,onSuccess:l,onClose:t[0]||(t[0]=s=>c.value=!1)},null,512)):j("",!0),e(u,{ref_key:"editNewRef",ref:r,onRefresh:l},null,512)])}}});export{oe as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-Cv-zjZuZ.js
diff --git a/server/public/admin/assets/index-CvOSIMS2.css b/server/public/admin/assets/index-CvOSIMS2.css
deleted file mode 100644
index f24f93bdb..000000000
--- a/server/public/admin/assets/index-CvOSIMS2.css
+++ /dev/null
@@ -1 +0,0 @@
-.doctor-dashboard[data-v-e03dcb60]{--ink: #17243a;--muted: #768497;--line: #e2e8ee;--canvas: #f4f6f8;--teal: #139a8c;--blue: #3d78e7;min-height:100%;padding:18px;color:var(--ink);background:var(--canvas)}.page-heading[data-v-e03dcb60],.filter-strip[data-v-e03dcb60],.metric-card[data-v-e03dcb60],.panel[data-v-e03dcb60]{border:1px solid var(--line);background:#fff}.page-heading[data-v-e03dcb60]{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:14px 18px;border-radius:13px}.heading-copy[data-v-e03dcb60],.heading-actions[data-v-e03dcb60],.filter-item[data-v-e03dcb60],.threshold-control[data-v-e03dcb60]{display:flex;align-items:center}.heading-copy[data-v-e03dcb60]{gap:12px}.heading-mark[data-v-e03dcb60]{display:grid;width:40px;height:40px;place-items:center;border-radius:11px;color:#fff;background:var(--teal);box-shadow:0 8px 20px #139a8c29;font-size:20px}h1[data-v-e03dcb60],h2[data-v-e03dcb60],p[data-v-e03dcb60]{margin:0}h1[data-v-e03dcb60]{font-size:20px;line-height:1.3}h2[data-v-e03dcb60]{font-size:15px;line-height:1.4}.heading-copy p[data-v-e03dcb60],.panel-heading p[data-v-e03dcb60]{margin-top:4px;color:var(--muted);font-size:12px}.heading-actions[data-v-e03dcb60]{gap:10px;color:var(--muted);font-size:12px}.scope-chip[data-v-e03dcb60]{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #cce8e3;border-radius:7px;color:#117f75;background:#f2faf8}.filter-strip[data-v-e03dcb60]{display:flex;align-items:center;gap:20px;margin-top:14px;padding:11px 14px;border-radius:11px}.filter-item[data-v-e03dcb60]{gap:8px;color:#68778a;font-size:12px}.dept-select[data-v-e03dcb60]{width:190px}.doctor-select[data-v-e03dcb60]{width:160px}.view-switch[data-v-e03dcb60]{display:flex;margin-left:auto;padding-left:12px;border-left:1px solid #e6ebef}.view-switch button[data-v-e03dcb60]{min-width:82px;padding:9px 12px;border:0;border-bottom:2px solid transparent;color:#657488;background:transparent;cursor:pointer}.view-switch button.active[data-v-e03dcb60]{border-bottom-color:var(--teal);color:#0e8277;font-weight:700}.metric-grid[data-v-e03dcb60]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:14px}.metric-card[data-v-e03dcb60]{display:flex;align-items:center;gap:12px;min-height:105px;padding:16px;border-radius:11px}.metric-icon[data-v-e03dcb60]{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:10px;font-size:20px}.metric-card--teal .metric-icon[data-v-e03dcb60]{color:#0b887c;background:#e8f7f4}.metric-card--green .metric-icon[data-v-e03dcb60]{color:#37a465;background:#eef8f1}.metric-card--indigo .metric-icon[data-v-e03dcb60]{color:#556dde;background:#eef0fd}.metric-card--blue .metric-icon[data-v-e03dcb60]{color:#3976e6;background:#edf3ff}.metric-card--cyan .metric-icon[data-v-e03dcb60]{color:#138da1;background:#eaf7f8}.metric-card span[data-v-e03dcb60]{display:block;color:#748296;font-size:12px}.metric-card strong[data-v-e03dcb60]{display:block;margin:4px 0 3px;font-size:24px;line-height:1.1}.metric-card small[data-v-e03dcb60]{color:#8995a4;font-size:10px}.two-column-grid[data-v-e03dcb60]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel[data-v-e03dcb60]{margin-top:14px;border-radius:12px;overflow:hidden}.panel-heading[data-v-e03dcb60]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px 11px}.panel-heading>span[data-v-e03dcb60]{color:#8a96a5;font-size:11px}.ranking-panel[data-v-e03dcb60]{min-height:284px}.bar-list[data-v-e03dcb60]{padding:0 16px 15px}.bar-row[data-v-e03dcb60]{display:grid;grid-template-columns:24px minmax(80px,.35fr) minmax(140px,1fr) 110px;align-items:center;gap:9px;min-height:34px}.bar-row>b[data-v-e03dcb60]{color:#8793a2;text-align:center;font-size:10px}.bar-row>span[data-v-e03dcb60]{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.bar-row>strong[data-v-e03dcb60]{text-align:right;font-size:12px}.bar-track[data-v-e03dcb60]{height:9px;overflow:hidden;border-radius:6px;background:#edf1f4}.bar-track i[data-v-e03dcb60]{display:block;height:100%;border-radius:inherit}.bar-track .is-blue[data-v-e03dcb60]{background:var(--blue)}.bar-track .is-teal[data-v-e03dcb60]{background:var(--teal)}.analytics-grid .panel[data-v-e03dcb60]{min-height:300px}.funnel-wrap[data-v-e03dcb60]{display:flex;align-items:center;flex-direction:column;gap:5px;padding:12px 48px 7px}.funnel-stage[data-v-e03dcb60]{display:flex;align-items:center;justify-content:center;gap:8px;height:38px;clip-path:polygon(4% 0,96% 0,88% 100%,12% 100%);color:#fff;font-size:12px}.funnel-stage strong[data-v-e03dcb60]{font-size:14px}.stage-1[data-v-e03dcb60]{background:#258bd4}.stage-2[data-v-e03dcb60]{background:#20a290}.stage-3[data-v-e03dcb60]{background:#ed913f}.stage-4[data-v-e03dcb60]{background:#45a96d}.funnel-insight[data-v-e03dcb60]{margin:8px 16px 16px;padding:8px 10px;border-radius:7px;color:#617085;background:#f4f7f8;font-size:11px}.funnel-insight strong[data-v-e03dcb60]{color:#d4772c}.trend-chart[data-v-e03dcb60]{width:100%;height:238px}.alert-panel[data-v-e03dcb60]{border-color:#dfe8e7}.alert-panel.has-alerts[data-v-e03dcb60]{border-color:#efc4c4}.alert-heading h2[data-v-e03dcb60]{display:flex;align-items:center;gap:6px}.alert-heading h2 .el-icon[data-v-e03dcb60]{color:#ee5b5b}.threshold-control[data-v-e03dcb60]{gap:8px;color:#768497;font-size:11px}.threshold-select[data-v-e03dcb60]{width:88px}.alert-list[data-v-e03dcb60]{padding:0 14px 14px}.alert-row[data-v-e03dcb60]{display:grid;grid-template-columns:30px minmax(120px,.45fr) 82px 135px minmax(220px,1fr) 65px;align-items:center;gap:10px;min-height:54px;margin-top:8px;padding:0 12px;border:1px solid #f0dddd;border-radius:9px;background:snow}.alert-icon[data-v-e03dcb60]{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;color:#fff;background:#ef5a5a;font-weight:700}.alert-doctor strong[data-v-e03dcb60],.alert-doctor small[data-v-e03dcb60]{display:block}.alert-doctor strong[data-v-e03dcb60]{font-size:12px}.alert-doctor small[data-v-e03dcb60]{margin-top:2px;color:#8d98a6;font-size:10px}.severity[data-v-e03dcb60]{padding:4px 7px;border-radius:5px;text-align:center;font-size:10px}.severity.is-high[data-v-e03dcb60]{color:#d84444;background:#ffe9e9}.severity.is-medium[data-v-e03dcb60]{color:#c77726;background:#fff1df}.alert-data[data-v-e03dcb60]{color:#67768a;font-size:11px}.alert-row p[data-v-e03dcb60]{color:#7b8797;font-size:11px}.alert-rate[data-v-e03dcb60]{color:#e34949;text-align:right;font-size:15px}.alert-empty[data-v-e03dcb60]{display:flex;align-items:center;justify-content:center;gap:7px;min-height:94px;color:#4f8f77;font-size:12px}.alert-empty .el-icon[data-v-e03dcb60]{font-size:20px}.detail-panel[data-v-e03dcb60]{min-height:360px}.detail-table[data-v-e03dcb60]{border-top:1px solid #edf1f4;--el-table-header-bg-color: #f7f9fb}.detail-table[data-v-e03dcb60] th.el-table__cell{height:43px;color:#68778a;font-weight:500}.detail-table[data-v-e03dcb60] td.el-table__cell{height:47px}.detail-table[data-v-e03dcb60] .is-conversion-warning>td.el-table__cell{background:#fff0f0!important}.detail-table[data-v-e03dcb60] .is-zero-data>td.el-table__cell{color:#98a2af;background:#fafbfc!important}.money-text[data-v-e03dcb60]{color:#246bd3}.conversion-rate.is-low[data-v-e03dcb60]{color:#e04d4d;font-weight:700}.conversion-rate.is-good[data-v-e03dcb60]{color:#168f72}.conversion-rate.is-neutral[data-v-e03dcb60]{color:#919cab}.warning-mark[data-v-e03dcb60]{margin-right:3px;color:#ec4e4e;font-size:10px}.status-pill[data-v-e03dcb60]{display:inline-flex;align-items:center;min-height:22px;padding:0 9px;border-radius:11px;color:#16895f;background:#eaf8ef;font-size:11px}.status-pill.disabled[data-v-e03dcb60]{color:#9a6570;background:#f4ecee}.detail-action[data-v-e03dcb60]{font-size:12px}.zero-doctor-toggle[data-v-e03dcb60]{display:inline-flex;align-items:center;gap:5px;margin:10px 16px 15px;padding:4px 9px;border:0;border-radius:11px;color:#6e7d90;background:#eef3f6;cursor:pointer;font-size:11px}.zero-doctor-toggle[data-v-e03dcb60]:hover{color:#0e8277;background:#e7f4f1}.data-note[data-v-e03dcb60]{display:flex;align-items:center;gap:6px;padding:11px 2px 2px;color:#8b97a6;font-size:11px}@media (max-width: 1280px){.filter-strip[data-v-e03dcb60]{align-items:flex-start;flex-wrap:wrap}.view-switch[data-v-e03dcb60]{margin-left:0}.metric-grid[data-v-e03dcb60]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 900px){.doctor-dashboard[data-v-e03dcb60]{padding:10px}.page-heading[data-v-e03dcb60]{align-items:flex-start;flex-direction:column}.heading-actions[data-v-e03dcb60]{flex-wrap:wrap}.update-time[data-v-e03dcb60]{display:none}.metric-grid[data-v-e03dcb60],.two-column-grid[data-v-e03dcb60]{grid-template-columns:1fr}.metric-card[data-v-e03dcb60]{min-height:92px}.filter-item[data-v-e03dcb60]{width:100%;justify-content:space-between}.dept-select[data-v-e03dcb60],.doctor-select[data-v-e03dcb60]{width:calc(100% - 78px)}.filter-item--time[data-v-e03dcb60],.filter-item--status[data-v-e03dcb60]{justify-content:flex-start}.view-switch[data-v-e03dcb60]{width:100%;justify-content:flex-end;border-left:0}.alert-row[data-v-e03dcb60]{grid-template-columns:30px 1fr 80px 65px;padding:10px}.alert-data[data-v-e03dcb60],.alert-row p[data-v-e03dcb60]{grid-column:2/-1}}
diff --git a/server/public/admin/assets/index-D25Fsd3W.js b/server/public/admin/assets/index-D25Fsd3W.js
new file mode 100644
index 000000000..9cdc300ef
--- /dev/null
+++ b/server/public/admin/assets/index-D25Fsd3W.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-BE-7WCNj.js
+import{o as k,R as B,q as l,r as v,T as m,O as b,D as I,F as w,G as x,u,bn as M,s as p,bm as C,M as h,p as D}from"./.pnpm-BadRMC3e.js";import{m as E}from"./medicine-SFe5reN2.js";import{_ as O}from"./index-C360OAjQ.js";const S={key:0,class:"medicine-name-readonly"},q={class:"medicine-name-option"},F={class:"medicine-name-option__meta"},L=k({__name:"index",props:{modelValue:{},medicineId:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","update:medicineId"],setup(d,{emit:g}){const t=d,c=g,r=h(!1),o=h([]),V=D(()=>{const e=Number(t.medicineId);return Number.isInteger(e)&&e>0?e:(t.modelValue||"").trim()?0:""});function f(){const e=(t.modelValue||"").trim();if(!e)return;const n=Number(t.medicineId),a=Number.isInteger(n)&&n>0?n:0;o.value.some(s=>s.id===a)||(o.value=[{id:a,name:e},...o.value])}const _=async e=>{r.value=!0;try{const n=(e||"").trim(),a=await E({name:n||void 0,page_no:1,page_size:100,status:1});o.value=a.lists||[],f()}catch(n){console.error(n),o.value=[]}finally{r.value=!1}},y=e=>{e&&o.value.length===0&&_("")},N=e=>{const n=Number(e),a=n>0?o.value.find(s=>s.id===n):void 0;c("update:modelValue",(a==null?void 0:a.name)||""),c("update:medicineId",a==null?void 0:a.id)};return B(()=>[t.modelValue,t.medicineId],()=>{!(t.modelValue||"").trim()&&Number(t.medicineId)>0&&c("update:medicineId",void 0),f()},{immediate:!0}),(e,n)=>{const a=M,s=C;return d.disabled?(l(),v("span",S,m(d.modelValue||"—"),1)):(l(),b(s,{key:1,"model-value":u(V),class:"medicine-name-select w-full",filterable:"",remote:"","reserve-keyword":"",placeholder:"搜索药材名称或拼音首字母","remote-method":_,loading:u(r),clearable:"",onVisibleChange:y,"onUpdate:modelValue":N},{default:I(()=>[(l(!0),v(w,null,x(u(o),i=>(l(),b(a,{key:i.id,label:i.name,value:i.id},{default:I(()=>[p("div",q,[p("span",null,m(i.name),1),p("span",F,m(i.id>0?[i.supplier,i.unit,`ID ${i.id}`].filter(Boolean).join(" · "):"历史名称,请重新选择"),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["model-value","loading"]))}}}),G=O(L,[["__scopeId","data-v-ad63c295"]]);export{G as M};
+========
+import{o as k,R as B,q as l,r as v,T as m,O as b,D as I,F as w,G as x,u,bn as M,s as p,bm as C,M as h,p as D}from"./.pnpm-BadRMC3e.js";import{m as E}from"./medicine-DWZ_n3IQ.js";import{_ as O}from"./index-C53kWH2_.js";const S={key:0,class:"medicine-name-readonly"},q={class:"medicine-name-option"},F={class:"medicine-name-option__meta"},L=k({__name:"index",props:{modelValue:{},medicineId:{},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","update:medicineId"],setup(d,{emit:g}){const t=d,c=g,r=h(!1),o=h([]),V=D(()=>{const e=Number(t.medicineId);return Number.isInteger(e)&&e>0?e:(t.modelValue||"").trim()?0:""});function f(){const e=(t.modelValue||"").trim();if(!e)return;const n=Number(t.medicineId),a=Number.isInteger(n)&&n>0?n:0;o.value.some(s=>s.id===a)||(o.value=[{id:a,name:e},...o.value])}const _=async e=>{r.value=!0;try{const n=(e||"").trim(),a=await E({name:n||void 0,page_no:1,page_size:100,status:1});o.value=a.lists||[],f()}catch(n){console.error(n),o.value=[]}finally{r.value=!1}},y=e=>{e&&o.value.length===0&&_("")},N=e=>{const n=Number(e),a=n>0?o.value.find(s=>s.id===n):void 0;c("update:modelValue",(a==null?void 0:a.name)||""),c("update:medicineId",a==null?void 0:a.id)};return B(()=>[t.modelValue,t.medicineId],()=>{!(t.modelValue||"").trim()&&Number(t.medicineId)>0&&c("update:medicineId",void 0),f()},{immediate:!0}),(e,n)=>{const a=M,s=C;return d.disabled?(l(),v("span",S,m(d.modelValue||"—"),1)):(l(),b(s,{key:1,"model-value":u(V),class:"medicine-name-select w-full",filterable:"",remote:"","reserve-keyword":"",placeholder:"搜索药材名称或拼音首字母","remote-method":_,loading:u(r),clearable:"",onVisibleChange:y,"onUpdate:modelValue":N},{default:I(()=>[(l(!0),v(w,null,x(u(o),i=>(l(),b(a,{key:i.id,label:i.name,value:i.id},{default:I(()=>[p("div",q,[p("span",null,m(i.name),1),p("span",F,m(i.id>0?[i.supplier,i.unit,`ID ${i.id}`].filter(Boolean).join(" · "):"历史名称,请重新选择"),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["model-value","loading"]))}}}),G=O(L,[["__scopeId","data-v-ad63c295"]]);export{G as M};
+>>>>>>>> yz-0803:server/public/admin/assets/index-D25Fsd3W.js
diff --git a/server/public/admin/assets/index-D3sEdBiz.js b/server/public/admin/assets/index-D3sEdBiz.js
new file mode 100644
index 000000000..d75528e19
--- /dev/null
+++ b/server/public/admin/assets/index-D3sEdBiz.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-hNoogBA6.js
+import{o as D,bo as O,x as R,be as T,q as s,r as C,v as e,D as l,b9 as $,u as o,b6 as A,b7 as z,b8 as G,bm as H,bn as J,F as M,G as Q,O as d,K as W,L as p,bg as X,s as x,ac as _,bj as Y,bk as Z,P as ee,I as te,bi as le,C as ae,ba as oe}from"./.pnpm-BadRMC3e.js";import{_ as ne}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{k as E,c as ie,h as se,i as re}from"./index-C360OAjQ.js";import{k as de,l as ce,m as me,j as ue}from"./article-DcQj-MKn.js";import{u as pe}from"./useDictOptions-C5fytNbv.js";import{u as _e}from"./usePaging-DMqUvFG-.js";const fe={class:"article-lists"},be={class:"flex justify-end mt-4"},ve=D({name:"articleLists"}),xe=D({...ve,setup(we){const i=oe({title:"",cid:"",is_show:""}),{pager:c,getLists:r,resetPage:h,resetParams:P}=_e({fetchFun:de,params:i}),{optionsData:L}=pe({article_cate:{api:ue}}),U=async(f,a)=>{try{await ce({id:a,is_show:f}),r()}catch{r()}},B=async f=>{await re.confirm("确定要删除?"),await me({id:f}),r()};return O(()=>{r()}),r(),(f,a)=>{const g=z,b=A,m=J,k=H,u=W,F=$,V=X,S=ie,y=R("router-link"),n=Z,I=se,K=te,N=Y,j=ne,v=T("perms"),q=le;return s(),C("div",fe,[e(V,{class:"!border-none",shadow:"never"},{default:l(()=>[e(F,{ref:"formRef",class:"mb-[-16px]",model:o(i),inline:!0},{default:l(()=>[e(b,{class:"w-[280px]",label:"文章标题"},{default:l(()=>[e(g,{modelValue:o(i).title,"onUpdate:modelValue":a[0]||(a[0]=t=>o(i).title=t),placeholder:"输入文章标题",clearable:"",onKeyup:G(o(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(b,{class:"w-[280px]",label:"栏目名称"},{default:l(()=>[e(k,{modelValue:o(i).cid,"onUpdate:modelValue":a[1]||(a[1]=t=>o(i).cid=t)},{default:l(()=>[e(m,{label:"全部",value:""}),(s(!0),C(M,null,Q(o(L).article_cate,t=>(s(),d(m,{key:t.id,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(b,{class:"w-[280px]",label:"文章状态"},{default:l(()=>[e(k,{modelValue:o(i).is_show,"onUpdate:modelValue":a[2]||(a[2]=t=>o(i).is_show=t)},{default:l(()=>[e(m,{label:"全部",value:""}),e(m,{label:"显示",value:1}),e(m,{label:"隐藏",value:0})]),_:1},8,["modelValue"])]),_:1}),e(b,null,{default:l(()=>[e(u,{type:"primary",onClick:o(h)},{default:l(()=>[...a[4]||(a[4]=[p("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:o(P)},{default:l(()=>[...a[5]||(a[5]=[p("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),e(V,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[x("div",null,[_((s(),d(y,{to:{path:o(E)("article.article/add:edit")}},{default:l(()=>[e(u,{type:"primary",class:"mb-4"},{icon:l(()=>[e(S,{name:"el-icon-Plus"})]),default:l(()=>[a[6]||(a[6]=p(" 发布文章 ",-1))]),_:1})]),_:1},8,["to"])),[[v,["article.article/add","article.article/add:edit"]]])]),_((s(),d(N,{size:"large",data:o(c).lists},{default:l(()=>[e(n,{label:"ID",prop:"id","min-width":"80"}),e(n,{label:"封面","min-width":"100"},{default:l(({row:t})=>[t.image?(s(),d(I,{key:0,src:t.image,width:60,height:45,"preview-src-list":[t.image],"preview-teleported":"",fit:"contain"},null,8,["src","preview-src-list"])):ee("",!0)]),_:1}),e(n,{label:"标题",prop:"title","min-width":"160","show-tooltip-when-overflow":""}),e(n,{label:"栏目",prop:"cate_name","min-width":"100"}),e(n,{label:"作者",prop:"author","min-width":"120"}),e(n,{label:"浏览量",prop:"click","min-width":"100"}),e(n,{label:"状态","min-width":"100"},{default:l(({row:t})=>[_(e(K,{modelValue:t.is_show,"onUpdate:modelValue":w=>t.is_show=w,"active-value":1,"inactive-value":0,onChange:w=>U(w,t.id)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[v,["article.article/updateStatus"]]])]),_:1}),e(n,{label:"排序",prop:"sort","min-width":"100"}),e(n,{label:"发布时间",prop:"create_time","min-width":"120"}),e(n,{label:"操作",width:"120",fixed:"right"},{default:l(({row:t})=>[_((s(),d(u,{type:"primary",link:""},{default:l(()=>[e(y,{to:{path:o(E)("article.article/add:edit"),query:{id:t.id}}},{default:l(()=>[...a[7]||(a[7]=[p(" 编辑 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[v,["article.article/edit","article.article/add:edit"]]]),_((s(),d(u,{type:"danger",link:"",onClick:w=>B(t.id)},{default:l(()=>[...a[8]||(a[8]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[v,["article.article/delete"]]])]),_:1})]),_:1},8,["data"])),[[q,o(c).loading]]),x("div",be,[e(j,{modelValue:o(c),"onUpdate:modelValue":a[3]||(a[3]=t=>ae(c)?c.value=t:null),onChange:o(r)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{xe as default};
+========
+import{o as D,bo as O,x as R,be as T,q as s,r as C,v as e,D as l,b9 as $,u as o,b6 as A,b7 as z,b8 as G,bm as H,bn as J,F as M,G as Q,O as d,K as W,L as p,bg as X,s as x,ac as _,bj as Y,bk as Z,P as ee,I as te,bi as le,C as ae,ba as oe}from"./.pnpm-BadRMC3e.js";import{_ as ne}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{k as E,c as ie,h as se,i as re}from"./index-C53kWH2_.js";import{k as de,l as ce,m as me,j as ue}from"./article-CySqBxuC.js";import{u as pe}from"./useDictOptions-D9FsmJj0.js";import{u as _e}from"./usePaging-DMqUvFG-.js";const fe={class:"article-lists"},be={class:"flex justify-end mt-4"},ve=D({name:"articleLists"}),xe=D({...ve,setup(we){const i=oe({title:"",cid:"",is_show:""}),{pager:c,getLists:r,resetPage:h,resetParams:P}=_e({fetchFun:de,params:i}),{optionsData:L}=pe({article_cate:{api:ue}}),U=async(f,a)=>{try{await ce({id:a,is_show:f}),r()}catch{r()}},B=async f=>{await re.confirm("确定要删除?"),await me({id:f}),r()};return O(()=>{r()}),r(),(f,a)=>{const g=z,b=A,m=J,k=H,u=W,F=$,V=X,S=ie,y=R("router-link"),n=Z,I=se,K=te,N=Y,j=ne,v=T("perms"),q=le;return s(),C("div",fe,[e(V,{class:"!border-none",shadow:"never"},{default:l(()=>[e(F,{ref:"formRef",class:"mb-[-16px]",model:o(i),inline:!0},{default:l(()=>[e(b,{class:"w-[280px]",label:"文章标题"},{default:l(()=>[e(g,{modelValue:o(i).title,"onUpdate:modelValue":a[0]||(a[0]=t=>o(i).title=t),placeholder:"输入文章标题",clearable:"",onKeyup:G(o(h),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(b,{class:"w-[280px]",label:"栏目名称"},{default:l(()=>[e(k,{modelValue:o(i).cid,"onUpdate:modelValue":a[1]||(a[1]=t=>o(i).cid=t)},{default:l(()=>[e(m,{label:"全部",value:""}),(s(!0),C(M,null,Q(o(L).article_cate,t=>(s(),d(m,{key:t.id,label:t.name,value:t.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(b,{class:"w-[280px]",label:"文章状态"},{default:l(()=>[e(k,{modelValue:o(i).is_show,"onUpdate:modelValue":a[2]||(a[2]=t=>o(i).is_show=t)},{default:l(()=>[e(m,{label:"全部",value:""}),e(m,{label:"显示",value:1}),e(m,{label:"隐藏",value:0})]),_:1},8,["modelValue"])]),_:1}),e(b,null,{default:l(()=>[e(u,{type:"primary",onClick:o(h)},{default:l(()=>[...a[4]||(a[4]=[p("查询",-1)])]),_:1},8,["onClick"]),e(u,{onClick:o(P)},{default:l(()=>[...a[5]||(a[5]=[p("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),e(V,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[x("div",null,[_((s(),d(y,{to:{path:o(E)("article.article/add:edit")}},{default:l(()=>[e(u,{type:"primary",class:"mb-4"},{icon:l(()=>[e(S,{name:"el-icon-Plus"})]),default:l(()=>[a[6]||(a[6]=p(" 发布文章 ",-1))]),_:1})]),_:1},8,["to"])),[[v,["article.article/add","article.article/add:edit"]]])]),_((s(),d(N,{size:"large",data:o(c).lists},{default:l(()=>[e(n,{label:"ID",prop:"id","min-width":"80"}),e(n,{label:"封面","min-width":"100"},{default:l(({row:t})=>[t.image?(s(),d(I,{key:0,src:t.image,width:60,height:45,"preview-src-list":[t.image],"preview-teleported":"",fit:"contain"},null,8,["src","preview-src-list"])):ee("",!0)]),_:1}),e(n,{label:"标题",prop:"title","min-width":"160","show-tooltip-when-overflow":""}),e(n,{label:"栏目",prop:"cate_name","min-width":"100"}),e(n,{label:"作者",prop:"author","min-width":"120"}),e(n,{label:"浏览量",prop:"click","min-width":"100"}),e(n,{label:"状态","min-width":"100"},{default:l(({row:t})=>[_(e(K,{modelValue:t.is_show,"onUpdate:modelValue":w=>t.is_show=w,"active-value":1,"inactive-value":0,onChange:w=>U(w,t.id)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[v,["article.article/updateStatus"]]])]),_:1}),e(n,{label:"排序",prop:"sort","min-width":"100"}),e(n,{label:"发布时间",prop:"create_time","min-width":"120"}),e(n,{label:"操作",width:"120",fixed:"right"},{default:l(({row:t})=>[_((s(),d(u,{type:"primary",link:""},{default:l(()=>[e(y,{to:{path:o(E)("article.article/add:edit"),query:{id:t.id}}},{default:l(()=>[...a[7]||(a[7]=[p(" 编辑 ",-1)])]),_:1},8,["to"])]),_:2},1024)),[[v,["article.article/edit","article.article/add:edit"]]]),_((s(),d(u,{type:"danger",link:"",onClick:w=>B(t.id)},{default:l(()=>[...a[8]||(a[8]=[p(" 删除 ",-1)])]),_:1},8,["onClick"])),[[v,["article.article/delete"]]])]),_:1})]),_:1},8,["data"])),[[q,o(c).loading]]),x("div",be,[e(j,{modelValue:o(c),"onUpdate:modelValue":a[3]||(a[3]=t=>ae(c)?c.value=t:null),onChange:o(r)},null,8,["modelValue","onChange"])])]),_:1})])}}});export{xe as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-D3sEdBiz.js
diff --git a/server/public/admin/assets/index-D8x72ZRL.js b/server/public/admin/assets/index-D8x72ZRL.js
index 5d835c9df..a70f9c76c 100644
--- a/server/public/admin/assets/index-D8x72ZRL.js
+++ b/server/public/admin/assets/index-D8x72ZRL.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-D8x72ZRL.js
import{o as N,Q as M,ba as B,be as Q,q as s,r as V,v as t,D as a,bl as J,b9 as W,u as l,b6 as X,bm as Y,F as Z,G as ee,O as r,bn as te,b7 as ae,b8 as le,K as ne,L as u,bg as oe,s as D,ac as y,bj as se,bk as ie,br as de,C as re,bi as ue,P as me,M as L,a8 as pe,n as R}from"./.pnpm-BadRMC3e.js";import{_ as ce}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as _e,i as fe}from"./index-C360OAjQ.js";import{c as be,e as ye,f as ve}from"./dict-Bp-jeYX-.js";import{u as ge}from"./usePaging-DMqUvFG-.js";import{_ as ke}from"./edit.vue_vue_type_script_setup_true_lang-DJu7Y5YJ.js";import"./index-2cRJ7Pdu.js";const Ce={class:"dict-type"},we={class:"mt-4"},Ve={class:"flex justify-end mt-4"},De=N({name:"dictData"}),Re=N({...De,setup(Ee){const{query:S}=M(),v=L(!1),_=pe(),i=B({type:"",type_id:Number(S.id),name:"",status:""}),C=B({dict_type:[]}),{pager:f,getLists:b,resetPage:E,resetParams:K}=ge({fetchFun:be,params:i}),w=L([]),U=o=>{w.value=o.map(({id:e})=>e)},q=async()=>{var e,m;v.value=!0,await R();const o=C.dict_type.find(p=>p.id==i.type_id);(e=_.value)==null||e.setFormData({type_value:o==null?void 0:o.type,type_id:o.id}),(m=_.value)==null||m.open("add")},I=async o=>{var e,m;v.value=!0,await R(),(e=_.value)==null||e.open("edit"),(m=_.value)==null||m.setFormData(o)},x=async o=>{await fe.confirm("确定要删除?"),await ye({id:o}),b()},h=async()=>{const o=await ve({page_type:0});C.dict_type=o.lists};return b(),h(),(o,e)=>{const m=J,p=te,$=Y,g=X,j=ae,c=ne,O=W,F=oe,P=_e,d=ie,T=de,z=se,A=ce,k=Q("perms"),G=ue;return s(),V("div",Ce,[t(F,{class:"!border-none",shadow:"never"},{default:a(()=>[t(m,{class:"mb-4",content:"数据管理",onBack:e[0]||(e[0]=n=>o.$router.back())}),t(O,{ref:"formRef",class:"mb-[-16px]",model:l(i),inline:""},{default:a(()=>[t(g,{class:"w-[280px]",label:"字典名称"},{default:a(()=>[t($,{modelValue:l(i).type_id,"onUpdate:modelValue":e[1]||(e[1]=n=>l(i).type_id=n),onChange:l(b)},{default:a(()=>[(s(!0),V(Z,null,ee(l(C).dict_type,n=>(s(),r(p,{label:n.name,value:n.id,key:n.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1}),t(g,{class:"w-[280px]",label:"数据名称"},{default:a(()=>[t(j,{modelValue:l(i).name,"onUpdate:modelValue":e[2]||(e[2]=n=>l(i).name=n),clearable:"",onKeyup:le(l(E),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(g,{class:"w-[280px]",label:"数据状态"},{default:a(()=>[t($,{modelValue:l(i).status,"onUpdate:modelValue":e[3]||(e[3]=n=>l(i).status=n)},{default:a(()=>[t(p,{label:"全部",value:""}),t(p,{label:"正常",value:1}),t(p,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(g,null,{default:a(()=>[t(c,{type:"primary",onClick:l(E)},{default:a(()=>[...e[7]||(e[7]=[u("查询",-1)])]),_:1},8,["onClick"]),t(c,{onClick:l(K)},{default:a(()=>[...e[8]||(e[8]=[u("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(F,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[D("div",null,[y((s(),r(c,{type:"primary",onClick:q},{icon:a(()=>[t(P,{name:"el-icon-Plus"})]),default:a(()=>[e[9]||(e[9]=u(" 添加数据 ",-1))]),_:1})),[[k,["setting.dict.dict_data/add"]]]),y((s(),r(c,{disabled:!l(w).length,type:"danger",onClick:e[4]||(e[4]=n=>x(l(w)))},{icon:a(()=>[t(P,{name:"el-icon-Delete"})]),default:a(()=>[e[10]||(e[10]=u(" 删除 ",-1))]),_:1},8,["disabled"])),[[k,["setting.dict.dict_data/delete"]]])]),y((s(),V("div",we,[D("div",null,[t(z,{data:l(f).lists,size:"large",onSelectionChange:U},{default:a(()=>[t(d,{type:"selection",width:"55"}),t(d,{label:"ID",prop:"id"}),t(d,{label:"数据名称",prop:"name","min-width":"120"}),t(d,{label:"数据值",prop:"value","min-width":"120"}),t(d,{label:"状态"},{default:a(({row:n})=>[n.status==1?(s(),r(T,{key:0},{default:a(()=>[...e[11]||(e[11]=[u("正常",-1)])]),_:1})):(s(),r(T,{key:1,type:"danger"},{default:a(()=>[...e[12]||(e[12]=[u("停用",-1)])]),_:1}))]),_:1}),t(d,{label:"备注",prop:"remark","min-width":"120","show-tooltip-when-overflow":""}),t(d,{label:"排序",prop:"sort"}),t(d,{label:"操作",width:"120",fixed:"right"},{default:a(({row:n})=>[y((s(),r(c,{link:"",type:"primary",onClick:H=>I(n)},{default:a(()=>[...e[13]||(e[13]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/edit"]]]),y((s(),r(c,{link:"",type:"danger",onClick:H=>x(n.id)},{default:a(()=>[...e[14]||(e[14]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/delete"]]])]),_:1})]),_:1},8,["data"])]),D("div",Ve,[t(A,{modelValue:l(f),"onUpdate:modelValue":e[5]||(e[5]=n=>re(f)?f.value=n:null),onChange:l(b)},null,8,["modelValue","onChange"])])])),[[G,l(f).loading]])]),_:1}),l(v)?(s(),r(ke,{key:0,ref_key:"editRef",ref:_,onSuccess:l(b),onClose:e[6]||(e[6]=n=>v.value=!1)},null,8,["onSuccess"])):me("",!0)])}}});export{Re as default};
+========
+import{o as N,Q as M,ba as B,be as Q,q as s,r as V,v as t,D as a,bl as J,b9 as W,u as l,b6 as X,bm as Y,F as Z,G as ee,O as r,bn as te,b7 as ae,b8 as le,K as ne,L as u,bg as oe,s as D,ac as y,bj as se,bk as ie,br as de,C as re,bi as ue,P as me,M as L,a8 as pe,n as R}from"./.pnpm-BadRMC3e.js";import{_ as ce}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as _e,i as fe}from"./index-C53kWH2_.js";import{c as be,e as ye,f as ve}from"./dict-Cg6TZGrn.js";import{u as ge}from"./usePaging-DMqUvFG-.js";import{_ as ke}from"./edit.vue_vue_type_script_setup_true_lang-B2tuwnue.js";import"./index-ByXR3YHf.js";const Ce={class:"dict-type"},we={class:"mt-4"},Ve={class:"flex justify-end mt-4"},De=N({name:"dictData"}),Re=N({...De,setup(Ee){const{query:S}=M(),v=L(!1),_=pe(),i=B({type:"",type_id:Number(S.id),name:"",status:""}),C=B({dict_type:[]}),{pager:f,getLists:b,resetPage:E,resetParams:K}=ge({fetchFun:be,params:i}),w=L([]),U=o=>{w.value=o.map(({id:e})=>e)},q=async()=>{var e,m;v.value=!0,await R();const o=C.dict_type.find(p=>p.id==i.type_id);(e=_.value)==null||e.setFormData({type_value:o==null?void 0:o.type,type_id:o.id}),(m=_.value)==null||m.open("add")},I=async o=>{var e,m;v.value=!0,await R(),(e=_.value)==null||e.open("edit"),(m=_.value)==null||m.setFormData(o)},x=async o=>{await fe.confirm("确定要删除?"),await ye({id:o}),b()},h=async()=>{const o=await ve({page_type:0});C.dict_type=o.lists};return b(),h(),(o,e)=>{const m=J,p=te,$=Y,g=X,j=ae,c=ne,O=W,F=oe,P=_e,d=ie,T=de,z=se,A=ce,k=Q("perms"),G=ue;return s(),V("div",Ce,[t(F,{class:"!border-none",shadow:"never"},{default:a(()=>[t(m,{class:"mb-4",content:"数据管理",onBack:e[0]||(e[0]=n=>o.$router.back())}),t(O,{ref:"formRef",class:"mb-[-16px]",model:l(i),inline:""},{default:a(()=>[t(g,{class:"w-[280px]",label:"字典名称"},{default:a(()=>[t($,{modelValue:l(i).type_id,"onUpdate:modelValue":e[1]||(e[1]=n=>l(i).type_id=n),onChange:l(b)},{default:a(()=>[(s(!0),V(Z,null,ee(l(C).dict_type,n=>(s(),r(p,{label:n.name,value:n.id,key:n.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onChange"])]),_:1}),t(g,{class:"w-[280px]",label:"数据名称"},{default:a(()=>[t(j,{modelValue:l(i).name,"onUpdate:modelValue":e[2]||(e[2]=n=>l(i).name=n),clearable:"",onKeyup:le(l(E),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(g,{class:"w-[280px]",label:"数据状态"},{default:a(()=>[t($,{modelValue:l(i).status,"onUpdate:modelValue":e[3]||(e[3]=n=>l(i).status=n)},{default:a(()=>[t(p,{label:"全部",value:""}),t(p,{label:"正常",value:1}),t(p,{label:"停用",value:0})]),_:1},8,["modelValue"])]),_:1}),t(g,null,{default:a(()=>[t(c,{type:"primary",onClick:l(E)},{default:a(()=>[...e[7]||(e[7]=[u("查询",-1)])]),_:1},8,["onClick"]),t(c,{onClick:l(K)},{default:a(()=>[...e[8]||(e[8]=[u("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),t(F,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[D("div",null,[y((s(),r(c,{type:"primary",onClick:q},{icon:a(()=>[t(P,{name:"el-icon-Plus"})]),default:a(()=>[e[9]||(e[9]=u(" 添加数据 ",-1))]),_:1})),[[k,["setting.dict.dict_data/add"]]]),y((s(),r(c,{disabled:!l(w).length,type:"danger",onClick:e[4]||(e[4]=n=>x(l(w)))},{icon:a(()=>[t(P,{name:"el-icon-Delete"})]),default:a(()=>[e[10]||(e[10]=u(" 删除 ",-1))]),_:1},8,["disabled"])),[[k,["setting.dict.dict_data/delete"]]])]),y((s(),V("div",we,[D("div",null,[t(z,{data:l(f).lists,size:"large",onSelectionChange:U},{default:a(()=>[t(d,{type:"selection",width:"55"}),t(d,{label:"ID",prop:"id"}),t(d,{label:"数据名称",prop:"name","min-width":"120"}),t(d,{label:"数据值",prop:"value","min-width":"120"}),t(d,{label:"状态"},{default:a(({row:n})=>[n.status==1?(s(),r(T,{key:0},{default:a(()=>[...e[11]||(e[11]=[u("正常",-1)])]),_:1})):(s(),r(T,{key:1,type:"danger"},{default:a(()=>[...e[12]||(e[12]=[u("停用",-1)])]),_:1}))]),_:1}),t(d,{label:"备注",prop:"remark","min-width":"120","show-tooltip-when-overflow":""}),t(d,{label:"排序",prop:"sort"}),t(d,{label:"操作",width:"120",fixed:"right"},{default:a(({row:n})=>[y((s(),r(c,{link:"",type:"primary",onClick:H=>I(n)},{default:a(()=>[...e[13]||(e[13]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/edit"]]]),y((s(),r(c,{link:"",type:"danger",onClick:H=>x(n.id)},{default:a(()=>[...e[14]||(e[14]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[k,["setting.dict.dict_data/delete"]]])]),_:1})]),_:1},8,["data"])]),D("div",Ve,[t(A,{modelValue:l(f),"onUpdate:modelValue":e[5]||(e[5]=n=>re(f)?f.value=n:null),onChange:l(b)},null,8,["modelValue","onChange"])])])),[[G,l(f).loading]])]),_:1}),l(v)?(s(),r(ke,{key:0,ref_key:"editRef",ref:_,onSuccess:l(b),onClose:e[6]||(e[6]=n=>v.value=!1)},null,8,["onSuccess"])):me("",!0)])}}});export{Re as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-jWu_1X2u.js
diff --git a/server/public/admin/assets/index-DGR9l_9c.js b/server/public/admin/assets/index-DGR9l_9c.js
index 034da72ff..66e2e64a7 100644
--- a/server/public/admin/assets/index-DGR9l_9c.js
+++ b/server/public/admin/assets/index-DGR9l_9c.js
@@ -1,2 +1,7 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DGR9l_9c.js
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DcWYtxZL.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BvgN1Mad.js","assets/index-C360OAjQ.js","assets/index-ynJZC2Ez.css","assets/perm-Bld5tS_J.js","assets/DailyMatrix-Ul2kFeS6.js","assets/picker-BV4TmQgU.js","assets/index-2cRJ7Pdu.js","assets/index-B3imPWFk.css","assets/index-CARk4iLN.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-DcSBJkxh.js","assets/index-D0f1Mn00.css","assets/index-BHk2qnVA.js","assets/file-DAA7Hwft.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-xc20843U.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-DEkFP89f.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DkG-bj5N.js","assets/RecordingPlaybackBlock-C05dVpO0.js","assets/RecordingVideoPlayer-Lo03HGYz.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-BfhOODqn.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-CxGhWCjD.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-DClURTxz.js","assets/doctor-BqTrXcfF.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-nGgu5OlD.js","assets/patient-BgHF8SY_.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-DCvdZKjF.js","assets/PrescriptionOrderDetailDrawer-U3_w-Wbd.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-ykEzOnay.js","assets/index-BE-7WCNj.js","assets/medicine-SFe5reN2.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-Boynwh4R.js","assets/appointment-m-lF1rck.js","assets/first_visit-BH-WCx1t.js","assets/appointment-BmvdInUs.css","assets/AssistantWatchCallDialog-BsqBq4B0.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]);
import{o as mt,R as Da,Q as wa,ap as Ea,aq as Aa,be as Ra,q as i,r as u,v as l,D as s,s as r,F as D,G as I,ae as ie,u as n,L as c,T as p,P as b,b7 as Ia,b8 as Na,K as $a,w as Sa,ck as lt,ac as q,bm as Ta,O as v,bn as za,ad as La,bg as Pa,bj as Fa,bk as Wa,br as Oa,a1 as Ua,$ as qa,Z as Ma,_ as Qa,cl as Ya,bE as st,d5 as Ba,bH as Ha,d0 as ja,bi as Ka,C as M,b5 as Ga,bt as Ja,b9 as Xa,b6 as Za,bd as en,J as tn,c0 as an,c1 as nn,bD as ln,aa as sn,B as on,cb as be,al as he,ba as Le,M as m,p as X}from"./.pnpm-BadRMC3e.js";import{_ as dn}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{ar as ke,i as rn,S as un,as as it,au as cn,R as ot,av as dt,aw as mn,ax as pn,ay as _n,az as fn}from"./tcm-BvgN1Mad.js";import{d as vn}from"./department-BFDDlesw.js";import{i as gn}from"./order-DvF5Kg77.js";import{m as yn}from"./doctor-BqTrXcfF.js";import{u as bn}from"./usePaging-DMqUvFG-.js";import{u as hn,m as rt,i as g,_ as kn}from"./index-C360OAjQ.js";import{g as ut}from"./weapp-DlNhz_sp.js";import{h as B}from"./perm-Bld5tS_J.js";import{d as ct}from"./dayjs-Dr2Em-pV.js";const Cn={class:"tcm-diagnosis"},Vn={class:"filter-main"},xn={class:"date-chips"},Dn=["onClick"],wn={key:0},En={class:"search-row"},An={class:"filter-chips"},Rn=["onClick"],In=["onClick"],Nn={class:"filter-more"},$n={class:"list-header"},Sn={class:"list-actions"},Tn={key:0,class:"list-selected"},zn={class:"table-wrap px-4"},Ln={class:"patient-cell"},Pn={class:"patient-info"},Fn={class:"patient-name"},Wn={class:"patient-cell"},On={class:"patient-info"},Un={class:"patient-name"},qn={class:"apt-badge"},Mn={class:"apt-doctor"},Qn={class:"apt-time"},Yn={key:1,class:"apt-none"},Bn={key:0,class:"status-confirmed"},Hn={key:1,class:"status-unconfirmed"},jn={key:0,class:"followup-cell"},Kn={class:"followup-time"},Gn={class:"followup-doctor"},Jn={key:0,class:"followup-count"},Xn={key:1,class:"followup-none"},Zn={class:"assistant-cell"},el={class:"assistant-name"},tl={key:0,class:"assistant-dept"},al={key:0,class:"prescription-status-cell"},nl={class:"prescription-times"},ll={key:1,class:"status-unprescribed"},sl={class:"video-watch-col"},il={class:"video-watch-trigger"},ol={key:1,class:"video-watch-muted"},dl={key:1,class:"video-watch-muted"},rl={class:"action-cell"},ul={class:"pagination-wrap"},cl={class:"flex flex-col items-center justify-center py-4"},ml={key:0,class:"text-center"},pl={key:1,class:"text-center"},_l=["src"],fl={class:"mt-4 text-sm text-gray-600"},vl={class:"mt-2"},gl={key:2,class:"text-center text-gray-500"},yl={class:"text-gray-500"},bl={class:"text-gray-500"},hl={class:"font-medium"},kl={class:"font-medium"},Cl={key:0,class:"mb-4"},Vl={key:0},xl={key:0,class:"mt-2"},Dl={key:1,class:"mt-2"},wl={class:"mb-4"},El={class:"flex gap-2"},Al={key:0,class:"text-center text-gray-400 py-10"},Rl={key:1,class:"record-list"},Il={class:"record-header"},Nl={class:"flex items-center gap-2"},$l={class:"font-medium text-sm"},Sl={class:"flex items-center gap-2"},Tl={class:"text-xs text-gray-400"},zl={class:"record-content"},Ll={key:0,class:"mt-1"},Pl={key:2,class:"text-center mt-4"},Fl=mt({name:"tcmDiagnosis"}),Wl=mt({...Fl,setup(Ol){const pt=be(()=>he(()=>import("./edit-DcWYtxZL.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]))),_t=be(()=>he(()=>import("./detail-Boynwh4R.js"),__vite__mapDeps([58,9,1,2,4,5,10,3]))),ft=be(()=>he(()=>import("./appointment-m-lF1rck.js"),__vite__mapDeps([59,1,2,34,3,4,5,40,60,61]))),vt=be(()=>he(()=>import("./AssistantWatchCallDialog-BsqBq4B0.js"),__vite__mapDeps([62,1,2,3,4,5,63]))),gt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return ct(e).format("YYYY-MM-DD HH:mm:ss")},Pe={only_has_prescription:"1"},_=Le({patient_name:"",diagnosis_type:"",syndrome_type:"",assistant_dept_id:"",assistant_id:"",start_time:"",end_time:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",...Pe}),yt=m("all"),Z=m(!1),bt=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],ht=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],kt=t=>{_.has_appointment=t,w.page=1,h(),S()},Ct=t=>{_.diagnosis_confirmed=t,w.page=1,h(),S()},ee=()=>{w.page=1,h(),S()},Vt=X(()=>[{label:"当天挂号",value:de.value},{label:"明天挂号",value:xe.value},{label:"后天挂号",value:De.value},{label:"全部",value:""}]),Ce=m({}),xt=async t=>{_.appointment_date=t,w.page=1,await h(),S()},Ve=t=>({...Pe,patient_name:_.patient_name,diagnosis_type:_.diagnosis_type,syndrome_type:_.syndrome_type,diagnosis_confirmed:_.diagnosis_confirmed,has_appointment:_.has_appointment,assistant_dept_id:_.assistant_dept_id,assistant_id:_.assistant_id,appointment_date:t,page_no:1,page_size:1}),S=async()=>{try{const[t,e,d]=await Promise.all([ke(Ve(de.value)),ke(Ve(xe.value)),ke(Ve(De.value))]);Ce.value={[de.value]:(t==null?void 0:t.count)??0,[xe.value]:(e==null?void 0:e.count)??0,[De.value]:(d==null?void 0:d.count)??0}}catch(t){console.error("获取日期数量失败",t)}};function Dt(){const t=()=>S();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const wt=1e4;let oe=null;function Et(){typeof document<"u"&&document.hidden||(h({silent:!0}).catch(()=>{}),S())}const H=t=>String(t).padStart(2,"0"),de=X(()=>{const t=new Date;return`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),xe=X(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),De=X(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),Fe=m([]),We=m([]),L=m([]),Oe=m([]);function Ue(t,e="",d=[]){for(const o of t||[]){if(o==null)continue;const V=Number(o.id);if(!Number.isFinite(V))continue;const k=e?`${e} / ${o.name}`:String(o.name??"");d.push({id:V,label:k}),Array.isArray(o.children)&&o.children.length&&Ue(o.children,k,d)}return d}const qe=X(()=>{const t=_.assistant_dept_id;if(t===""||t==null)return L.value;const e=Number(t);return Number.isFinite(e)?L.value.filter(d=>{const o=d.dept_ids;return!Array.isArray(o)||o.length===0?!1:o.map(Number).includes(e)}):L.value}),At=()=>{const t=_.assistant_id;if(t!==""&&t!=null){const e=Number(t);qe.value.some(o=>Number(o.id)===e)||(_.assistant_id="")}w.page=1,h(),S()},Rt=async()=>{try{const[t,e,d,o]=await Promise.all([rt({type:"diagnosis_type"}),rt({type:"syndrome_type"}),rn(),vn()]);Fe.value=(t==null?void 0:t.diagnosis_type)||[],We.value=(e==null?void 0:e.syndrome_type)||[],L.value=d||[],Oe.value=Ue(Array.isArray(o)?o:[])}catch(t){console.error("获取字典数据失败:",t)}},Me=t=>{if(t!==0&&!t)return null;const e=typeof t=="string"?parseInt(t,10):t;return L.value.find(d=>(typeof d.id=="string"?parseInt(d.id,10):d.id)===e)??null},Qe=t=>{if(!t&&t!==0||L.value.length===0)return"-";const e=Me(t);return e?e.name:"-"},Ye=t=>{const e=t.assistant_id||t.assistant,d=Qe(e),o=we(e);return d==="-"&&!o?"":o?`${d} / ${o}`:d},we=t=>{if(!t&&t!==0||L.value.length===0)return"";const e=Me(t),d=e==null?void 0:e.dept_names;return typeof d=="string"?d.trim():""},{pager:w,getLists:h}=bn({fetchFun:ke,params:_}),Be=()=>h({silent:!0}),It=()=>{yt.value="all",_.patient_name="",_.diagnosis_type="",_.syndrome_type="",_.assistant_dept_id="",_.assistant_id="",_.diagnosis_confirmed="",_.appointment_date="",_.has_appointment="",w.page=1,h(),S()},He=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(d=>d.is_confirmed==1)},Nt=({row:t})=>He(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",te=m(),$t=m(),je=m(),re=m(null),ue=hn();Da([te,re],()=>{const t=re.value,e=te.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),re.value=null)},{flush:"post"});const ce=m(!1),Ke=m(0),St=t=>{var d;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((d=ue.userInfo)==null?void 0:d.id)},Tt=t=>{Ke.value=Number(t.id)||0,ce.value=!0},zt=t=>St(t)&&B(["tcm.diagnosis/watchCall"]),me=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},Lt=t=>{const e=t.video_call_hint,d="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${d}。开始时间:${gt(e.start_time)}`:d},Pt=t=>{const e=me(t);return e==="live"||e==="pending_room"},Ft=t=>me(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":Lt(t),Wt=t=>{if(me(t)!=="live"){g.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}Tt(t)},Ot=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},Ut=t=>{const e=me(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const d=t.video_call_hint;return(d==null?void 0:d.label)||"—"},j=m(!1),pe=m(),Ee=m(!1),f=Le({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),qt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Mt=t=>{var e;f.patient_id=t.patient_id||t.id,f.patient_name=t.patient_name,f.phone=t.phone||"",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!!t.has_appointment,f.appointment_time_text=t.appointment_time_text||"",(e=pe.value)==null||e.clearValidate(),j.value=!0},Qt=()=>{var t;f.patient_id="",f.patient_name="",f.phone="",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!1,f.appointment_time_text="",(t=pe.value)==null||t.clearValidate()},Yt=async()=>{var t;try{await((t=pe.value)==null?void 0:t.validate()),Ee.value=!0;const e=await gn({patient_id:f.patient_id,order_type:f.order_type,amount:f.amount,remark:f.remark});j.value=!1,h();const d=e==null?void 0:e.order_no;if(d){T.value=!0,P.value=!0,F.value="",W.value={patient_name:f.patient_name,has_appointment:f.has_appointment,appointment_time_text:f.appointment_time_text};try{const o=await un({order_no:d});o!=null&&o.qrcode_url?F.value=o.qrcode_url:g.msgError("二维码生成失败")}catch(o){g.msgError((o==null?void 0:o.msg)||"生成二维码失败")}finally{P.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Ee.value=!1}},T=m(!1),P=m(!1),F=m(""),W=m(null),Bt=X(()=>{const t=W.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Ae=m("小程序二维码"),Re=m("confirm"),O=m([]),Q=m(!1),Ie=m(!1),ae=m("batch"),ne=m(null),C=m({assistant_id:null,is_inherit:!1}),Ht=t=>{O.value=t.map(e=>e.id)},jt=t=>{ae.value="single",ne.value=t,C.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,C.value.is_inherit=!1,Q.value=!0},Kt=()=>{if(O.value.length===0){g.msgWarning("请先选择要指派的诊单");return}ae.value="batch",ne.value=null,C.value.assistant_id=null,C.value.is_inherit=!1,Q.value=!0},Gt=async()=>{if(!C.value.assistant_id){g.msgWarning("请选择医助");return}Ie.value=!0;try{if(ae.value==="single")await it({id:ne.value.id,assistant_id:C.value.assistant_id,is_inherit:C.value.is_inherit?1:0});else{const t=O.value.map(e=>it({id:e,assistant_id:C.value.assistant_id,is_inherit:C.value.is_inherit?1:0}));await Promise.all(t),O.value=[]}Q.value=!1,h()}catch(t){console.error("指派失败:",t)}finally{Ie.value=!1}},Jt=()=>{te.value.open("add")},Xt=t=>{te.value.open("edit",t)},Zt=async t=>{await g.confirm("确定要删除该诊单吗?"),await _n({id:t}),h()},ea=(t,e)=>{switch(t){case"assign":jt(e);break;case"videoQr":if(!le(e)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}Xe(e);break;case"confirmQr":Ze(e);break;case"cancelApt":na(e);break;case"order":Mt(e);break;case"delete":Zt(e.id);break}},ta=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},aa=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},le=t=>t.has_appointment&&Number(t.appointment_status)===1,Ge=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},na=async t=>{if(!Ge(t)){const e=Number(t.appointment_status);t.has_appointment&&e===3?g.msgWarning("已完成就诊,无法取消挂号"):g.msgWarning("该诊单未挂号或挂号信息异常");return}try{await g.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await yn({id:t.appointment_id}),g.msgSuccess("取消挂号成功"),h(),S()}catch(e){e!=="cancel"&&g.msgError((e==null?void 0:e.msg)||"取消挂号失败")}},la=t=>{var e;if(!t.patient_id){g.msgWarning("患者信息不完整");return}(e=je.value)==null||e.open(t)},K=m(!1),Ne=m(!1),Je=m(),N=Le({id:0,patient_name:"",id_card:""}),sa={id_card:[{required:!0,validator:(t,e,d)=>{if(!e){d(new Error("请输入身份证号"));return}const o=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),V=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);o||V?d():d(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},ia=t=>{N.id=t.id,N.patient_name=t.patient_name||"-",N.id_card=t.id_card||"",K.value=!0},oa=async()=>{var t;await((t=Je.value)==null?void 0:t.validate()),Ne.value=!0;try{await cn({id:N.id,id_card:N.id_card}),g.msgSuccess("补全成功,年龄已自动更新"),K.value=!1,h()}catch(e){g.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ne.value=!1}},Xe=async t=>{var e;if(!le(t)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}Re.value="video",W.value=t,T.value=!0,P.value=!0,F.value="",Ae.value="视频二维码";try{const d=await ut();if(!(d!=null&&d.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),T.value=!1;return}const o=await ot({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ue.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});o!=null&&o.qrcode_url?F.value=o.qrcode_url:g.msgError("二维码生成失败")}catch(d){g.msgError((d==null?void 0:d.msg)||"生成二维码失败,请重试")}finally{P.value=!1}},Ze=async t=>{if(!le(t)){g.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}Re.value="confirm",W.value=t,T.value=!0,P.value=!0,F.value="",Ae.value="诊单二维码";try{const e=await ut();if(!(e!=null&&e.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),T.value=!1;return}const d=ue.userInfo,o=await ot({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(d==null?void 0:d.id)||""});o!=null&&o.qrcode_url?F.value=o.qrcode_url:g.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),g.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{P.value=!1}},da=()=>{W.value&&(Re.value==="video"?Xe(W.value):Ze(W.value))},_e=m(!1),E=m(null),U=m([]),fe=m(0),$e=m(!1),A=m(null),Y=m(""),Se=m(!1),Te=m(1),ra=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return ct(e).format("YYYY-MM-DD HH:mm")},ua=async t=>{E.value=t,_e.value=!0,U.value=[],fe.value=0,A.value=null,Y.value="",Te.value=1,$e.value=!0;try{const[e,d]=await Promise.all([dt({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),fn({patient_id:t.patient_id||t.id}).catch(()=>null)]);U.value=(e==null?void 0:e.lists)||[],fe.value=(e==null?void 0:e.count)||0,A.value=d}catch(e){console.error("加载企业微信记录失败:",e)}finally{$e.value=!1}},ca=async()=>{if(E.value){Te.value++;try{const t=await dt({diagnosis_id:E.value.id,patient_id:E.value.patient_id,page_no:Te.value,page_size:20});U.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},ma=async()=>{var t;if(!Y.value.trim()){g.msgWarning("请输入内容");return}Se.value=!0;try{await mn({diagnosis_id:E.value.id,patient_id:E.value.patient_id,content:Y.value.trim(),msg_type:"note",staff_name:((t=ue.userInfo)==null?void 0:t.name)||"",external_name:E.value.patient_name||""}),Y.value="",ua(E.value)}catch(e){g.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Se.value=!1}},pa=async t=>{await g.confirm("确定删除该记录吗?");try{await pn({id:t}),U.value=U.value.filter(e=>e.id!==t),fe.value--}catch(e){g.msgError((e==null?void 0:e.msg)||"删除失败")}},_a=wa();return Ea(()=>{_.appointment_date=de.value,Rt(),h(),Dt(),oe=setInterval(Et,wt);const t=_a.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(re.value=e)}}),Aa(()=>{oe!=null&&(clearInterval(oe),oe=null)}),(t,e)=>{var nt;const d=Ia,o=$a,V=Sa,k=za,G=Ta,et=Pa,R=Wa,z=Oa,tt=Ua,J=Qa,fa=Ma,va=qa,ga=Fa,ya=dn,ve=Ja,$=Za,ba=en,ze=Xa,ha=tn,ge=nn,ka=an,Ca=ln,Va=sn,xa=on,se=Ra("perms"),at=Ka;return i(),u("div",Cn,[l(et,{class:"filter-card !border-none",shadow:"never"},{default:s(()=>[r("div",Vn,[r("div",xn,[(i(!0),u(D,null,I(Vt.value,a=>(i(),u("span",{key:a.value,class:ie(["chip",{active:n(_).appointment_date===a.value}]),onClick:x=>xt(a.value)},[c(p(a.label)+" ",1),a.value&&n(Ce)[a.value]!==void 0?(i(),u("em",wn,p(n(Ce)[a.value]),1)):b("",!0)],10,Dn))),128))]),r("div",En,[l(d,{modelValue:n(_).patient_name,"onUpdate:modelValue":e[0]||(e[0]=a=>n(_).patient_name=a),placeholder:"患者姓名",clearable:"",class:"search-input",onKeyup:Na(ee,["enter"])},null,8,["modelValue"]),l(o,{type:"primary",onClick:ee},{default:s(()=>[...e[25]||(e[25]=[c("查询",-1)])]),_:1})])]),r("div",An,[e[26]||(e[26]=r("span",{class:"chip-label"},"挂号:",-1)),(i(),u(D,null,I(bt,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).has_appointment===a.value}]),onClick:x=>kt(a.value)},p(a.label),11,Rn)),64)),e[27]||(e[27]=r("span",{class:"chip-divider"},null,-1)),e[28]||(e[28]=r("span",{class:"chip-label"},"确认:",-1)),(i(),u(D,null,I(ht,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).diagnosis_confirmed===a.value}]),onClick:x=>Ct(a.value)},p(a.label),11,In)),64)),l(o,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[1]||(e[1]=a=>Z.value=!n(Z))},{default:s(()=>[c(p(n(Z)?"收起":"更多筛选")+" ",1),l(V,{class:ie({"rotate-180":n(Z)})},{default:s(()=>[l(n(lt))]),_:1},8,["class"])]),_:1})]),q(r("div",Nn,[l(G,{modelValue:n(_).assistant_dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>n(_).assistant_dept_id=a),placeholder:"医助部门",clearable:"",filterable:"",size:"small",class:"filter-dept-select",onChange:At},{default:s(()=>[(i(!0),u(D,null,I(n(Oe),a=>(i(),v(k,{key:a.id,label:a.label,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(G,{modelValue:n(_).diagnosis_type,"onUpdate:modelValue":e[3]||(e[3]=a=>n(_).diagnosis_type=a),placeholder:"诊断类型",clearable:"",size:"small",onChange:ee},{default:s(()=>[(i(!0),u(D,null,I(n(Fe),a=>(i(),v(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(G,{modelValue:n(_).syndrome_type,"onUpdate:modelValue":e[4]||(e[4]=a=>n(_).syndrome_type=a),placeholder:"证型",clearable:"",size:"small",onChange:ee},{default:s(()=>[(i(!0),u(D,null,I(n(We),a=>(i(),v(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(G,{modelValue:n(_).assistant_id,"onUpdate:modelValue":e[5]||(e[5]=a=>n(_).assistant_id=a),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:ee},{default:s(()=>[(i(!0),u(D,null,I(qe.value,a=>(i(),v(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(o,{size:"small",onClick:It},{default:s(()=>[...e[29]||(e[29]=[c("重置",-1)])]),_:1})],512),[[La,n(Z)]])]),_:1}),l(et,{class:"!border-none mt-3 list-card",shadow:"never"},{default:s(()=>[r("div",$n,[r("div",Sn,[q((i(),v(o,{type:"primary",onClick:Jt},{default:s(()=>[...e[30]||(e[30]=[c("新增诊单",-1)])]),_:1})),[[se,["tcm.diagnosis/add"]]]),q((i(),v(o,{type:"success",onClick:Kt,disabled:n(O).length===0},{default:s(()=>[...e[31]||(e[31]=[c(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[se,["tcm.diagnosis/assign"]]])]),n(O).length>0?(i(),u("div",Tn,"已选 "+p(n(O).length)+" 条",1)):b("",!0)]),r("div",zn,[q((i(),v(ga,{data:n(w).lists,size:"default",onSelectionChange:Ht,"row-class-name":Nt,class:"diagnosis-table",stripe:""},{default:s(()=>[l(R,{type:"selection",width:"48",align:"center"}),l(R,{label:"ID","min-width":"70"},{default:s(({row:a})=>[r("div",Ln,[r("div",Pn,[r("div",Fn,[c(p(a.id)+" ",1),a.assign_read_at===null&&a.assistant_id>0?(i(),v(z,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:s(()=>[...e[32]||(e[32]=[c("NEW",-1)])]),_:1})):b("",!0)])])])]),_:1}),l(R,{label:"患者","min-width":"60"},{default:s(({row:a})=>[r("div",Wn,[r("div",On,[r("div",Un,p(a.patient_name),1)])])]),_:1}),l(R,{label:" 性别 / 年龄",width:"100",align:"left"},{default:s(({row:a})=>[r("div",null,p(a.gender_desc||"-")+" · "+p(a.age??"-")+"岁",1)]),_:1}),l(R,{label:"挂号","min-width":"180"},{default:s(({row:a})=>[r("div",{class:ie(["appointment-cell",aa(a)])},[a.has_appointment?(i(),u(D,{key:0},[r("div",qn,p(ta(a)),1),r("div",Mn,p(a.appointment_doctor_name||"-"),1),r("div",Qn,p(a.appointment_time_text||"-"),1)],64)):(i(),u("span",Yn,"未挂号"))],2)]),_:1}),l(R,{label:"确认",width:"88",align:"center"},{default:s(({row:a})=>[He(a)?(i(),u("span",Bn,"已确认")):(i(),u("span",Hn,"未确认"))]),_:1}),l(R,{label:"复诊","min-width":"150"},{default:s(({row:a})=>[a.has_prescription?(i(),u("div",jn,[r("div",Kn,p(a.followup_time_text||"—"),1),r("div",Gn,p(a.followup_doctor_name||"—"),1),a.followup_prescription_count>0?(i(),u("div",Jn," 第"+p(a.followup_prescription_count)+"次复诊 ",1)):b("",!0),a.followup_rx_voided?(i(),v(z,{key:1,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:s(()=>[...e[33]||(e[33]=[c(" 处方已作废 ",-1)])]),_:1})):b("",!0)])):(i(),u("span",Xn,"无"))]),_:1}),l(R,{label:"助理","min-width":"120"},{default:s(({row:a})=>[l(tt,{disabled:!Ye(a),content:Ye(a),placement:"top"},{default:s(()=>[r("div",Zn,[r("div",el,p(Qe(a.assistant_id||a.assistant)),1),we(a.assistant_id||a.assistant)?(i(),u("div",tl,p(we(a.assistant_id||a.assistant)),1)):b("",!0)])]),_:2},1032,["disabled","content"])]),_:1}),l(R,{label:"开方","min-width":"96",align:"center"},{default:s(({row:a})=>[a.has_prescription?(i(),u("div",al,[e[34]||(e[34]=r("span",{class:"status-prescribed"},"已开方",-1)),r("span",nl,"("+p(a.followup_prescription_count||1)+"次)",1)])):(i(),u("span",ll,"未开方"))]),_:1}),l(R,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:s(({row:a})=>[r("div",sl,[zt(a)?(i(),u(D,{key:0},[Pt(a)?(i(),v(tt,{key:0,content:Ft(a),placement:"top"},{default:s(()=>[r("span",il,[l(o,{type:"primary",link:"",size:"small",onClick:x=>Wt(a)},{default:s(()=>[...e[35]||(e[35]=[c(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(i(),u("span",ol,p(Ot(a)),1))],64)):(i(),u("span",dl,p(Ut(a)),1))])]),_:1}),l(R,{label:"操作",width:"260",fixed:"right",align:"left"},{default:s(({row:a})=>[r("div",rl,[q((i(),v(o,{type:"primary",link:"",size:"small",onClick:x=>Xt(a.id)},{default:s(()=>[...e[36]||(e[36]=[c("诊单",-1)])]),_:1},8,["onClick"])),[[se,["tcm.diagnosis/edit"]]]),q((i(),v(o,{type:"success",link:"",size:"small",onClick:x=>la(a)},{default:s(()=>[...e[37]||(e[37]=[c("预约",-1)])]),_:1},8,["onClick"])),[[se,["tcm.diagnosis/guahao"]]]),q((i(),v(o,{type:"warning",link:"",size:"small",onClick:x=>ia(a)},{default:s(()=>[...e[38]||(e[38]=[c("补全身份证",-1)])]),_:1},8,["onClick"])),[[se,["tcm.diagnosis/edit"]]]),l(va,{trigger:"click",onCommand:x=>ea(x,a),placement:"bottom-end"},{dropdown:s(()=>[l(fa,null,{default:s(()=>[n(B)(["tcm.diagnosis/assign"])?(i(),v(J,{key:0,command:"assign"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(Ya))]),_:1}),e[40]||(e[40]=c("指派",-1))]),_:1})):b("",!0),le(a)&&n(B)(["tcm.diagnosis/videoQr"])?(i(),v(J,{key:1,command:"videoQr"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(st))]),_:1}),e[41]||(e[41]=c("视频二维码",-1))]),_:1})):b("",!0),n(B)(["tcm.diagnosis/guahao"])&&le(a)?(i(),v(J,{key:2,command:"confirmQr"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(st))]),_:1}),e[42]||(e[42]=c("二维码",-1))]),_:1})):b("",!0),Ge(a)&&n(B)(["tcm.diagnosis/guahao"])?(i(),v(J,{key:3,command:"cancelApt"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(Ba))]),_:1}),e[43]||(e[43]=c("取消挂号",-1))]),_:1})):b("",!0),n(B)(["tcm.diagnosis/order"])?(i(),v(J,{key:4,command:"order"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(Ha))]),_:1}),e[44]||(e[44]=c("创建订单",-1))]),_:1})):b("",!0),n(B)(["tcm.diagnosis/delete"])?(i(),v(J,{key:5,command:"delete",divided:""},{default:s(()=>[l(V,null,{default:s(()=>[l(n(ja))]),_:1}),e[45]||(e[45]=r("span",{class:"text-danger"},"删除",-1))]),_:1})):b("",!0)]),_:2},1024)]),default:s(()=>[l(o,{type:"info",link:"",size:"small"},{default:s(()=>[e[39]||(e[39]=c("更多",-1)),l(V,{class:"el-icon--right"},{default:s(()=>[l(n(lt))]),_:1})]),_:1})]),_:2},1032,["onCommand"])])]),_:1})]),_:1},8,["data"])),[[at,n(w).loading]]),r("div",ul,[l(ya,{modelValue:n(w),"onUpdate:modelValue":e[6]||(e[6]=a=>M(w)?w.value=a:null),onChange:n(h)},null,8,["modelValue","onChange"])])])]),_:1}),l(n(pt),{ref_key:"editRef",ref:te,onSuccess:Be},null,512),l(n(_t),{ref_key:"detailRef",ref:$t},null,512),l(n(ft),{ref_key:"appointmentRef",ref:je,onSuccess:Be},null,512),l(n(vt),{modelValue:n(ce),"onUpdate:modelValue":e[7]||(e[7]=a=>M(ce)?ce.value=a:null),"diagnosis-id":n(Ke),onClosed:n(h)},null,8,["modelValue","diagnosis-id","onClosed"]),l(ve,{modelValue:n(T),"onUpdate:modelValue":e[9]||(e[9]=a=>M(T)?T.value=a:null),title:n(Ae),width:"400px","close-on-click-modal":!1},{footer:s(()=>[l(o,{onClick:e[8]||(e[8]=a=>T.value=!1)},{default:s(()=>[...e[48]||(e[48]=[c("关闭",-1)])]),_:1}),n(P)?b("",!0):(i(),v(o,{key:0,type:"primary",onClick:da},{default:s(()=>[...e[49]||(e[49]=[c(" 重新生成 ",-1)])]),_:1}))]),default:s(()=>{var a;return[r("div",cl,[n(P)?(i(),u("div",ml,[l(V,{class:"is-loading",size:40},{default:s(()=>[l(n(Ga))]),_:1}),e[46]||(e[46]=r("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):n(F)?(i(),u("div",pl,[r("img",{src:n(F),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,_l),r("div",fl,[r("div",null,"患者:"+p((a=n(W))==null?void 0:a.patient_name),1),r("div",vl,"挂号时间:"+p(Bt.value),1),e[47]||(e[47]=r("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(i(),u("div",gl," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),l(ve,{modelValue:n(Q),"onUpdate:modelValue":e[13]||(e[13]=a=>M(Q)?Q.value=a:null),title:n(ae)==="batch"?"批量指派医助":"指派医助",width:"500px"},{footer:s(()=>[l(o,{onClick:e[12]||(e[12]=a=>Q.value=!1)},{default:s(()=>[...e[52]||(e[52]=[c("取消",-1)])]),_:1}),l(o,{type:"primary",onClick:Gt,loading:n(Ie)},{default:s(()=>[...e[53]||(e[53]=[c(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(ze,{model:n(C),"label-width":"100px"},{default:s(()=>[l($,{label:"选择医助",required:""},{default:s(()=>[l(G,{modelValue:n(C).assistant_id,"onUpdate:modelValue":e[10]||(e[10]=a=>n(C).assistant_id=a),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:"","value-key":"id"},{default:s(()=>[(i(!0),u(D,null,I(n(L),a=>(i(),v(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l($,{label:"继承"},{default:s(()=>[l(ba,{modelValue:n(C).is_inherit,"onUpdate:modelValue":e[11]||(e[11]=a=>n(C).is_inherit=a)},{default:s(()=>[...e[50]||(e[50]=[c("继承",-1)])]),_:1},8,["modelValue"]),e[51]||(e[51]=r("span",{class:"text-gray-400 text-xs ml-2"},"勾选后写入指派记录",-1))]),_:1}),n(ae)==="batch"?(i(),v($,{key:0,label:"已选择"},{default:s(()=>[r("div",yl,p(n(O).length)+" 条诊单记录",1)]),_:1})):(i(),v($,{key:1,label:"诊单信息"},{default:s(()=>{var a,x;return[r("div",bl,[r("div",null,"患者:"+p((a=n(ne))==null?void 0:a.patient_name),1),r("div",null,"诊断日期:"+p((x=n(ne))==null?void 0:x.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(ve,{modelValue:n(j),"onUpdate:modelValue":e[18]||(e[18]=a=>M(j)?j.value=a:null),title:"创建订单",width:"600px",onClose:Qt},{footer:s(()=>[l(o,{onClick:e[17]||(e[17]=a=>j.value=!1)},{default:s(()=>[...e[54]||(e[54]=[c("取消",-1)])]),_:1}),l(o,{type:"primary",onClick:Yt,loading:n(Ee)},{default:s(()=>[...e[55]||(e[55]=[c("创建订单",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(ze,{ref_key:"orderFormRef",ref:pe,model:n(f),rules:qt,"label-width":"100px"},{default:s(()=>[l($,{label:"患者"},{default:s(()=>[r("span",hl,p(n(f).patient_name)+" ("+p(n(f).phone)+")",1)]),_:1}),l($,{label:"订单类型",prop:"order_type"},{default:s(()=>[l(G,{modelValue:n(f).order_type,"onUpdate:modelValue":e[14]||(e[14]=a=>n(f).order_type=a),placeholder:"请选择",class:"w-full"},{default:s(()=>[l(k,{label:"挂号费",value:1}),l(k,{label:"问诊费",value:2}),l(k,{label:"药品费用",value:3}),l(k,{label:"首付费用",value:4}),l(k,{label:"尾款费用",value:5}),l(k,{label:"其他费用",value:6}),l(k,{label:"全部费用",value:7}),l(k,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l($,{label:"订单金额",prop:"amount"},{default:s(()=>[l(ha,{modelValue:n(f).amount,"onUpdate:modelValue":e[15]||(e[15]=a=>n(f).amount=a),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),l($,{label:"备注",prop:"remark"},{default:s(()=>[l(d,{modelValue:n(f).remark,"onUpdate:modelValue":e[16]||(e[16]=a=>n(f).remark=a),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(ve,{modelValue:n(K),"onUpdate:modelValue":e[21]||(e[21]=a=>M(K)?K.value=a:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[22]||(e[22]=a=>n(N).id_card="")},{footer:s(()=>[l(o,{onClick:e[20]||(e[20]=a=>K.value=!1)},{default:s(()=>[...e[56]||(e[56]=[c("取消",-1)])]),_:1}),l(o,{type:"primary",onClick:oa,loading:n(Ne)},{default:s(()=>[...e[57]||(e[57]=[c("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(ze,{ref_key:"fillIdCardFormRef",ref:Je,model:n(N),rules:sa,"label-width":"80px"},{default:s(()=>[l($,{label:"患者"},{default:s(()=>[r("span",kl,p(n(N).patient_name),1)]),_:1}),l($,{label:"身份证号",prop:"id_card"},{default:s(()=>[l(d,{modelValue:n(N).id_card,"onUpdate:modelValue":e[19]||(e[19]=a=>n(N).id_card=a),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(xa,{modelValue:n(_e),"onUpdate:modelValue":e[24]||(e[24]=a=>M(_e)?_e.value=a:null),title:`企业微信记录 - ${((nt=n(E))==null?void 0:nt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:s(()=>{var a,x;return[n(A)?(i(),u("div",Cl,[l(ka,{column:2,border:"",size:"small"},{default:s(()=>[l(ge,{label:"患者姓名"},{default:s(()=>{var y;return[c(p((y=n(E))==null?void 0:y.patient_name),1)]}),_:1}),l(ge,{label:"手机号"},{default:s(()=>[c(p(n(A).phone||"-"),1)]),_:1}),l(ge,{label:"企微联系人ID"},{default:s(()=>[n(A).external_userid?(i(),u("span",Vl,p(n(A).external_userid),1)):(i(),v(z,{key:1,type:"info",size:"small"},{default:s(()=>[...e[58]||(e[58]=[c("未关联",-1)])]),_:1}))]),_:1}),l(ge,{label:"会话存档"},{default:s(()=>[n(A).msgaudit_enabled?(i(),v(z,{key:0,type:"success",size:"small"},{default:s(()=>[...e[59]||(e[59]=[c("已开通",-1)])]),_:1})):(i(),v(z,{key:1,type:"info",size:"small"},{default:s(()=>[...e[60]||(e[60]=[c("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(a=n(A).permit_users)!=null&&a.length?(i(),u("div",xl,[e[61]||(e[61]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(i(!0),u(D,null,I(n(A).permit_users,y=>(i(),v(z,{key:y,size:"small",class:"mr-1"},{default:s(()=>[c(p(y),1)]),_:2},1024))),128))])):b("",!0),(x=n(A).msgaudit_agree)!=null&&x.length?(i(),u("div",Dl,[e[62]||(e[62]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(i(!0),u(D,null,I(n(A).msgaudit_agree,(y,ye)=>(i(),v(z,{key:ye,type:y.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:s(()=>[c(p(y.userid)+": "+p(y.agree_status==="Agree"?"已同意":y.agree_status),1)]),_:2},1032,["type"]))),128))])):b("",!0)])):b("",!0),l(Ca),r("div",wl,[r("div",El,[l(d,{modelValue:n(Y),"onUpdate:modelValue":e[23]||(e[23]=y=>M(Y)?Y.value=y:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),l(o,{type:"primary",onClick:ma,loading:n(Se),class:"self-end"},{default:s(()=>[...e[63]||(e[63]=[c(" 添加 ",-1)])]),_:1},8,["loading"])])]),q((i(),u("div",null,[n(U).length===0?(i(),u("div",Al," 暂无聊天记录 ")):(i(),u("div",Rl,[(i(!0),u(D,null,I(n(U),y=>{var ye;return i(),u("div",{key:y.id,class:"record-item"},[r("div",Il,[r("div",Nl,[l(z,{type:y.direction===0?"primary":"success",size:"small"},{default:s(()=>[c(p(y.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),r("span",$l,p(y.direction===0?y.staff_name:y.external_name||((ye=n(E))==null?void 0:ye.patient_name)),1),y.msg_type==="note"?(i(),v(z,{key:0,type:"warning",size:"small"},{default:s(()=>[...e[64]||(e[64]=[c("备注",-1)])]),_:1})):b("",!0)]),r("div",Sl,[r("span",Tl,p(ra(y.chat_time)),1),l(o,{type:"danger",link:"",size:"small",onClick:ql=>pa(y.id)},{default:s(()=>[...e[65]||(e[65]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])])]),r("div",zl,p(y.content),1),y.media_url?(i(),u("div",Ll,[l(Va,{src:y.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[y.media_url]},null,8,["src","preview-src-list"])])):b("",!0)])}),128))])),n(fe)>n(U).length?(i(),u("div",Pl,[l(o,{link:"",type:"primary",onClick:ca},{default:s(()=>[...e[66]||(e[66]=[c("加载更多",-1)])]),_:1})])):b("",!0)])),[[at,n($e)]])]}),_:1},8,["modelValue","title"])])}}}),es=kn(Wl,[["__scopeId","data-v-5f089050"]]);export{es as default};
+========
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-emC-q2iC.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BWNwZkyX.js","assets/index-C53kWH2_.js","assets/index-ynJZC2Ez.css","assets/perm-BICz51xi.js","assets/DailyMatrix-DiYUQo1w.js","assets/picker-Bo_aGeCY.js","assets/index-ByXR3YHf.js","assets/index-B3imPWFk.css","assets/index-ci6cz5MZ.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-ZgwwU4Et.js","assets/index-D0f1Mn00.css","assets/index-9XBsG-Cy.js","assets/file-Ci3F9EoX.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-C7qwIzjQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-BC4wO08v.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Dwk-zq8O.js","assets/RecordingPlaybackBlock-Cbli8dUQ.js","assets/RecordingVideoPlayer-PakpPQK-.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-OjhXvTzR.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-i8xnfggI.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-B9Qsv5NO.js","assets/doctor-CNnijzjL.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DcnSeCwS.js","assets/patient-cj6mW_46.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-PJG2qWT8.js","assets/PrescriptionOrderDetailDrawer-CL3jtI2P.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-Nz5F52Mm.js","assets/index-D25Fsd3W.js","assets/medicine-DWZ_n3IQ.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/detail-B7NAp8JI.js","assets/appointment-ys1YAIGr.js","assets/first_visit-LvTGTIzk.js","assets/appointment-BmvdInUs.css","assets/AssistantWatchCallDialog-CDkKMtd6.js","assets/AssistantWatchCallDialog-BIPZRgaH.css"])))=>i.map(i=>d[i]);
+import{o as mt,R as Da,Q as wa,ap as Ea,aq as Aa,be as Ra,q as i,r as u,v as l,D as s,s as r,F as D,G as I,ae as ie,u as n,L as c,T as p,P as b,b7 as Ia,b8 as Na,K as $a,w as Sa,ck as lt,ac as q,bm as Ta,O as v,bn as za,ad as La,bg as Pa,bj as Fa,bk as Wa,br as Oa,a1 as Ua,$ as qa,Z as Ma,_ as Qa,cl as Ya,bE as st,d5 as Ba,bH as Ha,d0 as ja,bi as Ka,C as M,b5 as Ga,bt as Ja,b9 as Xa,b6 as Za,bd as en,J as tn,c0 as an,c1 as nn,bD as ln,aa as sn,B as on,cb as be,al as he,ba as Le,M as m,p as X}from"./.pnpm-BadRMC3e.js";import{_ as dn}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{ar as ke,i as rn,S as un,as as it,au as cn,R as ot,av as dt,aw as mn,ax as pn,ay as _n,az as fn}from"./tcm-BWNwZkyX.js";import{d as vn}from"./department-drKzCnRw.js";import{i as gn}from"./order-DRqgHj66.js";import{m as yn}from"./doctor-CNnijzjL.js";import{u as bn}from"./usePaging-DMqUvFG-.js";import{u as hn,m as rt,i as g,_ as kn}from"./index-C53kWH2_.js";import{g as ut}from"./weapp-DkO9N0-a.js";import{h as B}from"./perm-BICz51xi.js";import{d as ct}from"./dayjs-Dr2Em-pV.js";const Cn={class:"tcm-diagnosis"},Vn={class:"filter-main"},xn={class:"date-chips"},Dn=["onClick"],wn={key:0},En={class:"search-row"},An={class:"filter-chips"},Rn=["onClick"],In=["onClick"],Nn={class:"filter-more"},$n={class:"list-header"},Sn={class:"list-actions"},Tn={key:0,class:"list-selected"},zn={class:"table-wrap px-4"},Ln={class:"patient-cell"},Pn={class:"patient-info"},Fn={class:"patient-name"},Wn={class:"patient-cell"},On={class:"patient-info"},Un={class:"patient-name"},qn={class:"apt-badge"},Mn={class:"apt-doctor"},Qn={class:"apt-time"},Yn={key:1,class:"apt-none"},Bn={key:0,class:"status-confirmed"},Hn={key:1,class:"status-unconfirmed"},jn={key:0,class:"followup-cell"},Kn={class:"followup-time"},Gn={class:"followup-doctor"},Jn={key:0,class:"followup-count"},Xn={key:1,class:"followup-none"},Zn={class:"assistant-cell"},el={class:"assistant-name"},tl={key:0,class:"assistant-dept"},al={key:0,class:"prescription-status-cell"},nl={class:"prescription-times"},ll={key:1,class:"status-unprescribed"},sl={class:"video-watch-col"},il={class:"video-watch-trigger"},ol={key:1,class:"video-watch-muted"},dl={key:1,class:"video-watch-muted"},rl={class:"action-cell"},ul={class:"pagination-wrap"},cl={class:"flex flex-col items-center justify-center py-4"},ml={key:0,class:"text-center"},pl={key:1,class:"text-center"},_l=["src"],fl={class:"mt-4 text-sm text-gray-600"},vl={class:"mt-2"},gl={key:2,class:"text-center text-gray-500"},yl={class:"text-gray-500"},bl={class:"text-gray-500"},hl={class:"font-medium"},kl={class:"font-medium"},Cl={key:0,class:"mb-4"},Vl={key:0},xl={key:0,class:"mt-2"},Dl={key:1,class:"mt-2"},wl={class:"mb-4"},El={class:"flex gap-2"},Al={key:0,class:"text-center text-gray-400 py-10"},Rl={key:1,class:"record-list"},Il={class:"record-header"},Nl={class:"flex items-center gap-2"},$l={class:"font-medium text-sm"},Sl={class:"flex items-center gap-2"},Tl={class:"text-xs text-gray-400"},zl={class:"record-content"},Ll={key:0,class:"mt-1"},Pl={key:2,class:"text-center mt-4"},Fl=mt({name:"tcmDiagnosis"}),Wl=mt({...Fl,setup(Ol){const pt=be(()=>he(()=>import("./edit-emC-q2iC.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]))),_t=be(()=>he(()=>import("./detail-B7NAp8JI.js"),__vite__mapDeps([58,9,1,2,4,5,10,3]))),ft=be(()=>he(()=>import("./appointment-ys1YAIGr.js"),__vite__mapDeps([59,1,2,34,3,4,5,40,60,61]))),vt=be(()=>he(()=>import("./AssistantWatchCallDialog-CDkKMtd6.js"),__vite__mapDeps([62,1,2,3,4,5,63]))),gt=t=>{if(!t)return"-";const e=String(t).length===10?Number(t)*1e3:Number(t);return ct(e).format("YYYY-MM-DD HH:mm:ss")},Pe={only_has_prescription:"1"},_=Le({patient_name:"",diagnosis_type:"",syndrome_type:"",assistant_dept_id:"",assistant_id:"",start_time:"",end_time:"",diagnosis_confirmed:"",appointment_date:"",has_appointment:"",...Pe}),yt=m("all"),Z=m(!1),bt=[{label:"全部",value:""},{label:"已挂号",value:"1"},{label:"未挂号",value:"0"}],ht=[{label:"全部",value:""},{label:"已确认",value:"1"},{label:"未确认",value:"0"}],kt=t=>{_.has_appointment=t,w.page=1,h(),S()},Ct=t=>{_.diagnosis_confirmed=t,w.page=1,h(),S()},ee=()=>{w.page=1,h(),S()},Vt=X(()=>[{label:"当天挂号",value:de.value},{label:"明天挂号",value:xe.value},{label:"后天挂号",value:De.value},{label:"全部",value:""}]),Ce=m({}),xt=async t=>{_.appointment_date=t,w.page=1,await h(),S()},Ve=t=>({...Pe,patient_name:_.patient_name,diagnosis_type:_.diagnosis_type,syndrome_type:_.syndrome_type,diagnosis_confirmed:_.diagnosis_confirmed,has_appointment:_.has_appointment,assistant_dept_id:_.assistant_dept_id,assistant_id:_.assistant_id,appointment_date:t,page_no:1,page_size:1}),S=async()=>{try{const[t,e,d]=await Promise.all([ke(Ve(de.value)),ke(Ve(xe.value)),ke(Ve(De.value))]);Ce.value={[de.value]:(t==null?void 0:t.count)??0,[xe.value]:(e==null?void 0:e.count)??0,[De.value]:(d==null?void 0:d.count)??0}}catch(t){console.error("获取日期数量失败",t)}};function Dt(){const t=()=>S();typeof requestIdleCallback=="function"?requestIdleCallback(t,{timeout:2500}):setTimeout(t,120)}const wt=1e4;let oe=null;function Et(){typeof document<"u"&&document.hidden||(h({silent:!0}).catch(()=>{}),S())}const H=t=>String(t).padStart(2,"0"),de=X(()=>{const t=new Date;return`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),xe=X(()=>{const t=new Date;return t.setDate(t.getDate()+1),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),De=X(()=>{const t=new Date;return t.setDate(t.getDate()+2),`${t.getFullYear()}-${H(t.getMonth()+1)}-${H(t.getDate())}`}),Fe=m([]),We=m([]),L=m([]),Oe=m([]);function Ue(t,e="",d=[]){for(const o of t||[]){if(o==null)continue;const V=Number(o.id);if(!Number.isFinite(V))continue;const k=e?`${e} / ${o.name}`:String(o.name??"");d.push({id:V,label:k}),Array.isArray(o.children)&&o.children.length&&Ue(o.children,k,d)}return d}const qe=X(()=>{const t=_.assistant_dept_id;if(t===""||t==null)return L.value;const e=Number(t);return Number.isFinite(e)?L.value.filter(d=>{const o=d.dept_ids;return!Array.isArray(o)||o.length===0?!1:o.map(Number).includes(e)}):L.value}),At=()=>{const t=_.assistant_id;if(t!==""&&t!=null){const e=Number(t);qe.value.some(o=>Number(o.id)===e)||(_.assistant_id="")}w.page=1,h(),S()},Rt=async()=>{try{const[t,e,d,o]=await Promise.all([rt({type:"diagnosis_type"}),rt({type:"syndrome_type"}),rn(),vn()]);Fe.value=(t==null?void 0:t.diagnosis_type)||[],We.value=(e==null?void 0:e.syndrome_type)||[],L.value=d||[],Oe.value=Ue(Array.isArray(o)?o:[])}catch(t){console.error("获取字典数据失败:",t)}},Me=t=>{if(t!==0&&!t)return null;const e=typeof t=="string"?parseInt(t,10):t;return L.value.find(d=>(typeof d.id=="string"?parseInt(d.id,10):d.id)===e)??null},Qe=t=>{if(!t&&t!==0||L.value.length===0)return"-";const e=Me(t);return e?e.name:"-"},Ye=t=>{const e=t.assistant_id||t.assistant,d=Qe(e),o=we(e);return d==="-"&&!o?"":o?`${d} / ${o}`:d},we=t=>{if(!t&&t!==0||L.value.length===0)return"";const e=Me(t),d=e==null?void 0:e.dept_names;return typeof d=="string"?d.trim():""},{pager:w,getLists:h}=bn({fetchFun:ke,params:_}),Be=()=>h({silent:!0}),It=()=>{yt.value="all",_.patient_name="",_.diagnosis_type="",_.syndrome_type="",_.assistant_dept_id="",_.assistant_id="",_.diagnosis_confirmed="",_.appointment_date="",_.has_appointment="",w.page=1,h(),S()},He=t=>{const e=t.DiagnosisViewRecord||[];return e.length>0&&e.some(d=>d.is_confirmed==1)},Nt=({row:t})=>He(t)?t.has_appointment?"":"row-no-appointment":"row-unconfirmed",te=m(),$t=m(),je=m(),re=m(null),ue=hn();Da([te,re],()=>{const t=re.value,e=te.value;t==null||!(e!=null&&e.open)||(e.open("edit",t),re.value=null)},{flush:"post"});const ce=m(!1),Ke=m(0),St=t=>{var d;const e=t.assistant_id??t.assistant;return e==null||e===""?!1:Number(e)===Number((d=ue.userInfo)==null?void 0:d.id)},Tt=t=>{Ke.value=Number(t.id)||0,ce.value=!0},zt=t=>St(t)&&B(["tcm.diagnosis/watchCall"]),me=t=>{var e;return((e=t.video_call_hint)==null?void 0:e.state)||"none"},Lt=t=>{const e=t.video_call_hint,d="点击进入实时房间(仅观看,不推流、不上麦)";return e!=null&&e.start_time?`${d}。开始时间:${gt(e.start_time)}`:d},Pt=t=>{const e=me(t);return e==="live"||e==="pending_room"},Ft=t=>me(t)==="pending_room"?"医生尚未接通或未同步房间号,接通后再点此进入":Lt(t),Wt=t=>{if(me(t)!=="live"){g.msgWarning("医生尚未接通或未同步房间号,请稍后再试");return}Tt(t)},Ot=t=>{const e=t.video_call_hint;return e!=null&&e.label?e.label:"暂无可旁观通话"},Ut=t=>{const e=me(t);if(e==="none")return"—";if(e==="live")return"通话中";if(e==="pending_room")return"接通中";const d=t.video_call_hint;return(d==null?void 0:d.label)||"—"},j=m(!1),pe=m(),Ee=m(!1),f=Le({patient_id:"",patient_name:"",phone:"",order_type:"",amount:0,remark:"",has_appointment:!1,appointment_time_text:""}),qt={order_type:[{required:!0,message:"请选择订单类型",trigger:"change"}],amount:[{required:!0,message:"请输入订单金额",trigger:"blur"}]},Mt=t=>{var e;f.patient_id=t.patient_id||t.id,f.patient_name=t.patient_name,f.phone=t.phone||"",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!!t.has_appointment,f.appointment_time_text=t.appointment_time_text||"",(e=pe.value)==null||e.clearValidate(),j.value=!0},Qt=()=>{var t;f.patient_id="",f.patient_name="",f.phone="",f.order_type="",f.amount=0,f.remark="",f.has_appointment=!1,f.appointment_time_text="",(t=pe.value)==null||t.clearValidate()},Yt=async()=>{var t;try{await((t=pe.value)==null?void 0:t.validate()),Ee.value=!0;const e=await gn({patient_id:f.patient_id,order_type:f.order_type,amount:f.amount,remark:f.remark});j.value=!1,h();const d=e==null?void 0:e.order_no;if(d){T.value=!0,P.value=!0,F.value="",W.value={patient_name:f.patient_name,has_appointment:f.has_appointment,appointment_time_text:f.appointment_time_text};try{const o=await un({order_no:d});o!=null&&o.qrcode_url?F.value=o.qrcode_url:g.msgError("二维码生成失败")}catch(o){g.msgError((o==null?void 0:o.msg)||"生成二维码失败")}finally{P.value=!1}}}catch(e){console.error("创建订单失败:",e)}finally{Ee.value=!1}},T=m(!1),P=m(!1),F=m(""),W=m(null),Bt=X(()=>{const t=W.value;return t?t.has_appointment?t.appointment_time_text||"—":"未挂号":"—"}),Ae=m("小程序二维码"),Re=m("confirm"),O=m([]),Q=m(!1),Ie=m(!1),ae=m("batch"),ne=m(null),C=m({assistant_id:null,is_inherit:!1}),Ht=t=>{O.value=t.map(e=>e.id)},jt=t=>{ae.value="single",ne.value=t,C.value.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,C.value.is_inherit=!1,Q.value=!0},Kt=()=>{if(O.value.length===0){g.msgWarning("请先选择要指派的诊单");return}ae.value="batch",ne.value=null,C.value.assistant_id=null,C.value.is_inherit=!1,Q.value=!0},Gt=async()=>{if(!C.value.assistant_id){g.msgWarning("请选择医助");return}Ie.value=!0;try{if(ae.value==="single")await it({id:ne.value.id,assistant_id:C.value.assistant_id,is_inherit:C.value.is_inherit?1:0});else{const t=O.value.map(e=>it({id:e,assistant_id:C.value.assistant_id,is_inherit:C.value.is_inherit?1:0}));await Promise.all(t),O.value=[]}Q.value=!1,h()}catch(t){console.error("指派失败:",t)}finally{Ie.value=!1}},Jt=()=>{te.value.open("add")},Xt=t=>{te.value.open("edit",t)},Zt=async t=>{await g.confirm("确定要删除该诊单吗?"),await _n({id:t}),h()},ea=(t,e)=>{switch(t){case"assign":jt(e);break;case"videoQr":if(!le(e)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}Xe(e);break;case"confirmQr":Ze(e);break;case"cancelApt":na(e);break;case"order":Mt(e);break;case"delete":Zt(e.id);break}},ta=t=>{const e=Number(t.appointment_status);return e===3?"已完成":e===4?"已过号":"已挂号"},aa=t=>{const e=Number(t.appointment_status);return{"has-apt":t.has_appointment,"apt-row-done":t.has_appointment&&e===3,"apt-row-missed":t.has_appointment&&e===4}},le=t=>t.has_appointment&&Number(t.appointment_status)===1,Ge=t=>{const e=Number(t.appointment_status);return!!(t.has_appointment&&t.appointment_id&&(e===1||e===4))},na=async t=>{if(!Ge(t)){const e=Number(t.appointment_status);t.has_appointment&&e===3?g.msgWarning("已完成就诊,无法取消挂号"):g.msgWarning("该诊单未挂号或挂号信息异常");return}try{await g.confirm(`确定要取消患者「${t.patient_name}」的挂号吗?`),await yn({id:t.appointment_id}),g.msgSuccess("取消挂号成功"),h(),S()}catch(e){e!=="cancel"&&g.msgError((e==null?void 0:e.msg)||"取消挂号失败")}},la=t=>{var e;if(!t.patient_id){g.msgWarning("患者信息不完整");return}(e=je.value)==null||e.open(t)},K=m(!1),Ne=m(!1),Je=m(),N=Le({id:0,patient_name:"",id_card:""}),sa={id_card:[{required:!0,validator:(t,e,d)=>{if(!e){d(new Error("请输入身份证号"));return}const o=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(e),V=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(e);o||V?d():d(new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]},ia=t=>{N.id=t.id,N.patient_name=t.patient_name||"-",N.id_card=t.id_card||"",K.value=!0},oa=async()=>{var t;await((t=Je.value)==null?void 0:t.validate()),Ne.value=!0;try{await cn({id:N.id,id_card:N.id_card}),g.msgSuccess("补全成功,年龄已自动更新"),K.value=!1,h()}catch(e){g.msgError((e==null?void 0:e.msg)||"补全失败")}finally{Ne.value=!1}},Xe=async t=>{var e;if(!le(t)){g.msgWarning("仅「已预约」状态可生成视频二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}Re.value="video",W.value=t,T.value=!0,P.value=!0,F.value="",Ae.value="视频二维码";try{const d=await ut();if(!(d!=null&&d.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),T.value=!1;return}const o=await ot({doctor_id:t.appointment_doctor_id,diagnosis_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:((e=ue.userInfo)==null?void 0:e.id)||"",mini_program_path:"pages/login/login"});o!=null&&o.qrcode_url?F.value=o.qrcode_url:g.msgError("二维码生成失败")}catch(d){g.msgError((d==null?void 0:d.msg)||"生成二维码失败,请重试")}finally{P.value=!1}},Ze=async t=>{if(!le(t)){g.msgWarning("仅「已预约」状态可使用诊单二维码");return}if(!t.patient_id){g.msgWarning("患者信息不完整");return}Re.value="confirm",W.value=t,T.value=!0,P.value=!0,F.value="",Ae.value="诊单二维码";try{const e=await ut();if(!(e!=null&&e.app_id)){g.msgError("小程序未配置,请先配置小程序信息"),T.value=!1;return}const d=ue.userInfo,o=await ot({diagnosis_id:t.id,doctor_id:t.appointment_doctor_id,patient_id:t.patient_id,share_user_id:(d==null?void 0:d.id)||""});o!=null&&o.qrcode_url?F.value=o.qrcode_url:g.msgError("二维码生成失败")}catch(e){console.error("生成小程序二维码失败:",e),g.msgError((e==null?void 0:e.msg)||"生成二维码失败,请重试")}finally{P.value=!1}},da=()=>{W.value&&(Re.value==="video"?Xe(W.value):Ze(W.value))},_e=m(!1),E=m(null),U=m([]),fe=m(0),$e=m(!1),A=m(null),Y=m(""),Se=m(!1),Te=m(1),ra=t=>{if(!t)return"-";const e=String(t).length===10?t*1e3:t;return ct(e).format("YYYY-MM-DD HH:mm")},ua=async t=>{E.value=t,_e.value=!0,U.value=[],fe.value=0,A.value=null,Y.value="",Te.value=1,$e.value=!0;try{const[e,d]=await Promise.all([dt({diagnosis_id:t.id,patient_id:t.patient_id,page_no:1,page_size:20}),fn({patient_id:t.patient_id||t.id}).catch(()=>null)]);U.value=(e==null?void 0:e.lists)||[],fe.value=(e==null?void 0:e.count)||0,A.value=d}catch(e){console.error("加载企业微信记录失败:",e)}finally{$e.value=!1}},ca=async()=>{if(E.value){Te.value++;try{const t=await dt({diagnosis_id:E.value.id,patient_id:E.value.patient_id,page_no:Te.value,page_size:20});U.value.push(...(t==null?void 0:t.lists)||[])}catch(t){console.error("加载更多记录失败:",t)}}},ma=async()=>{var t;if(!Y.value.trim()){g.msgWarning("请输入内容");return}Se.value=!0;try{await mn({diagnosis_id:E.value.id,patient_id:E.value.patient_id,content:Y.value.trim(),msg_type:"note",staff_name:((t=ue.userInfo)==null?void 0:t.name)||"",external_name:E.value.patient_name||""}),Y.value="",ua(E.value)}catch(e){g.msgError((e==null?void 0:e.msg)||"添加失败")}finally{Se.value=!1}},pa=async t=>{await g.confirm("确定删除该记录吗?");try{await pn({id:t}),U.value=U.value.filter(e=>e.id!==t),fe.value--}catch(e){g.msgError((e==null?void 0:e.msg)||"删除失败")}},_a=wa();return Ea(()=>{_.appointment_date=de.value,Rt(),h(),Dt(),oe=setInterval(Et,wt);const t=_a.query.id;if(t!=null&&t!==""){const e=Number(t);Number.isNaN(e)||(re.value=e)}}),Aa(()=>{oe!=null&&(clearInterval(oe),oe=null)}),(t,e)=>{var nt;const d=Ia,o=$a,V=Sa,k=za,G=Ta,et=Pa,R=Wa,z=Oa,tt=Ua,J=Qa,fa=Ma,va=qa,ga=Fa,ya=dn,ve=Ja,$=Za,ba=en,ze=Xa,ha=tn,ge=nn,ka=an,Ca=ln,Va=sn,xa=on,se=Ra("perms"),at=Ka;return i(),u("div",Cn,[l(et,{class:"filter-card !border-none",shadow:"never"},{default:s(()=>[r("div",Vn,[r("div",xn,[(i(!0),u(D,null,I(Vt.value,a=>(i(),u("span",{key:a.value,class:ie(["chip",{active:n(_).appointment_date===a.value}]),onClick:x=>xt(a.value)},[c(p(a.label)+" ",1),a.value&&n(Ce)[a.value]!==void 0?(i(),u("em",wn,p(n(Ce)[a.value]),1)):b("",!0)],10,Dn))),128))]),r("div",En,[l(d,{modelValue:n(_).patient_name,"onUpdate:modelValue":e[0]||(e[0]=a=>n(_).patient_name=a),placeholder:"患者姓名",clearable:"",class:"search-input",onKeyup:Na(ee,["enter"])},null,8,["modelValue"]),l(o,{type:"primary",onClick:ee},{default:s(()=>[...e[25]||(e[25]=[c("查询",-1)])]),_:1})])]),r("div",An,[e[26]||(e[26]=r("span",{class:"chip-label"},"挂号:",-1)),(i(),u(D,null,I(bt,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).has_appointment===a.value}]),onClick:x=>kt(a.value)},p(a.label),11,Rn)),64)),e[27]||(e[27]=r("span",{class:"chip-divider"},null,-1)),e[28]||(e[28]=r("span",{class:"chip-label"},"确认:",-1)),(i(),u(D,null,I(ht,a=>r("span",{key:a.value,class:ie(["chip","chip-sm",{active:n(_).diagnosis_confirmed===a.value}]),onClick:x=>Ct(a.value)},p(a.label),11,In)),64)),l(o,{link:"",type:"primary",size:"small",class:"more-btn",onClick:e[1]||(e[1]=a=>Z.value=!n(Z))},{default:s(()=>[c(p(n(Z)?"收起":"更多筛选")+" ",1),l(V,{class:ie({"rotate-180":n(Z)})},{default:s(()=>[l(n(lt))]),_:1},8,["class"])]),_:1})]),q(r("div",Nn,[l(G,{modelValue:n(_).assistant_dept_id,"onUpdate:modelValue":e[2]||(e[2]=a=>n(_).assistant_dept_id=a),placeholder:"医助部门",clearable:"",filterable:"",size:"small",class:"filter-dept-select",onChange:At},{default:s(()=>[(i(!0),u(D,null,I(n(Oe),a=>(i(),v(k,{key:a.id,label:a.label,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(G,{modelValue:n(_).diagnosis_type,"onUpdate:modelValue":e[3]||(e[3]=a=>n(_).diagnosis_type=a),placeholder:"诊断类型",clearable:"",size:"small",onChange:ee},{default:s(()=>[(i(!0),u(D,null,I(n(Fe),a=>(i(),v(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(G,{modelValue:n(_).syndrome_type,"onUpdate:modelValue":e[4]||(e[4]=a=>n(_).syndrome_type=a),placeholder:"证型",clearable:"",size:"small",onChange:ee},{default:s(()=>[(i(!0),u(D,null,I(n(We),a=>(i(),v(k,{key:a.value,label:a.name,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(G,{modelValue:n(_).assistant_id,"onUpdate:modelValue":e[5]||(e[5]=a=>n(_).assistant_id=a),placeholder:"医助",clearable:"",filterable:"",size:"small",onChange:ee},{default:s(()=>[(i(!0),u(D,null,I(qe.value,a=>(i(),v(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),l(o,{size:"small",onClick:It},{default:s(()=>[...e[29]||(e[29]=[c("重置",-1)])]),_:1})],512),[[La,n(Z)]])]),_:1}),l(et,{class:"!border-none mt-3 list-card",shadow:"never"},{default:s(()=>[r("div",$n,[r("div",Sn,[q((i(),v(o,{type:"primary",onClick:Jt},{default:s(()=>[...e[30]||(e[30]=[c("新增诊单",-1)])]),_:1})),[[se,["tcm.diagnosis/add"]]]),q((i(),v(o,{type:"success",onClick:Kt,disabled:n(O).length===0},{default:s(()=>[...e[31]||(e[31]=[c(" 批量指派医助 ",-1)])]),_:1},8,["disabled"])),[[se,["tcm.diagnosis/assign"]]])]),n(O).length>0?(i(),u("div",Tn,"已选 "+p(n(O).length)+" 条",1)):b("",!0)]),r("div",zn,[q((i(),v(ga,{data:n(w).lists,size:"default",onSelectionChange:Ht,"row-class-name":Nt,class:"diagnosis-table",stripe:""},{default:s(()=>[l(R,{type:"selection",width:"48",align:"center"}),l(R,{label:"ID","min-width":"70"},{default:s(({row:a})=>[r("div",Ln,[r("div",Pn,[r("div",Fn,[c(p(a.id)+" ",1),a.assign_read_at===null&&a.assistant_id>0?(i(),v(z,{key:0,type:"danger",size:"small",effect:"dark",class:"ml-1"},{default:s(()=>[...e[32]||(e[32]=[c("NEW",-1)])]),_:1})):b("",!0)])])])]),_:1}),l(R,{label:"患者","min-width":"60"},{default:s(({row:a})=>[r("div",Wn,[r("div",On,[r("div",Un,p(a.patient_name),1)])])]),_:1}),l(R,{label:" 性别 / 年龄",width:"100",align:"left"},{default:s(({row:a})=>[r("div",null,p(a.gender_desc||"-")+" · "+p(a.age??"-")+"岁",1)]),_:1}),l(R,{label:"挂号","min-width":"180"},{default:s(({row:a})=>[r("div",{class:ie(["appointment-cell",aa(a)])},[a.has_appointment?(i(),u(D,{key:0},[r("div",qn,p(ta(a)),1),r("div",Mn,p(a.appointment_doctor_name||"-"),1),r("div",Qn,p(a.appointment_time_text||"-"),1)],64)):(i(),u("span",Yn,"未挂号"))],2)]),_:1}),l(R,{label:"确认",width:"88",align:"center"},{default:s(({row:a})=>[He(a)?(i(),u("span",Bn,"已确认")):(i(),u("span",Hn,"未确认"))]),_:1}),l(R,{label:"复诊","min-width":"150"},{default:s(({row:a})=>[a.has_prescription?(i(),u("div",jn,[r("div",Kn,p(a.followup_time_text||"—"),1),r("div",Gn,p(a.followup_doctor_name||"—"),1),a.followup_prescription_count>0?(i(),u("div",Jn," 第"+p(a.followup_prescription_count)+"次复诊 ",1)):b("",!0),a.followup_rx_voided?(i(),v(z,{key:1,type:"info",size:"small",effect:"plain",class:"followup-void-tag"},{default:s(()=>[...e[33]||(e[33]=[c(" 处方已作废 ",-1)])]),_:1})):b("",!0)])):(i(),u("span",Xn,"无"))]),_:1}),l(R,{label:"助理","min-width":"120"},{default:s(({row:a})=>[l(tt,{disabled:!Ye(a),content:Ye(a),placement:"top"},{default:s(()=>[r("div",Zn,[r("div",el,p(Qe(a.assistant_id||a.assistant)),1),we(a.assistant_id||a.assistant)?(i(),u("div",tl,p(we(a.assistant_id||a.assistant)),1)):b("",!0)])]),_:2},1032,["disabled","content"])]),_:1}),l(R,{label:"开方","min-width":"96",align:"center"},{default:s(({row:a})=>[a.has_prescription?(i(),u("div",al,[e[34]||(e[34]=r("span",{class:"status-prescribed"},"已开方",-1)),r("span",nl,"("+p(a.followup_prescription_count||1)+"次)",1)])):(i(),u("span",ll,"未开方"))]),_:1}),l(R,{label:"视频旁观",width:"120",fixed:"right",align:"center"},{default:s(({row:a})=>[r("div",sl,[zt(a)?(i(),u(D,{key:0},[Pt(a)?(i(),v(tt,{key:0,content:Ft(a),placement:"top"},{default:s(()=>[r("span",il,[l(o,{type:"primary",link:"",size:"small",onClick:x=>Wt(a)},{default:s(()=>[...e[35]||(e[35]=[c(" 进入旁观 ",-1)])]),_:1},8,["onClick"])])]),_:2},1032,["content"])):(i(),u("span",ol,p(Ot(a)),1))],64)):(i(),u("span",dl,p(Ut(a)),1))])]),_:1}),l(R,{label:"操作",width:"260",fixed:"right",align:"left"},{default:s(({row:a})=>[r("div",rl,[q((i(),v(o,{type:"primary",link:"",size:"small",onClick:x=>Xt(a.id)},{default:s(()=>[...e[36]||(e[36]=[c("诊单",-1)])]),_:1},8,["onClick"])),[[se,["tcm.diagnosis/edit"]]]),q((i(),v(o,{type:"success",link:"",size:"small",onClick:x=>la(a)},{default:s(()=>[...e[37]||(e[37]=[c("预约",-1)])]),_:1},8,["onClick"])),[[se,["tcm.diagnosis/guahao"]]]),q((i(),v(o,{type:"warning",link:"",size:"small",onClick:x=>ia(a)},{default:s(()=>[...e[38]||(e[38]=[c("补全身份证",-1)])]),_:1},8,["onClick"])),[[se,["tcm.diagnosis/edit"]]]),l(va,{trigger:"click",onCommand:x=>ea(x,a),placement:"bottom-end"},{dropdown:s(()=>[l(fa,null,{default:s(()=>[n(B)(["tcm.diagnosis/assign"])?(i(),v(J,{key:0,command:"assign"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(Ya))]),_:1}),e[40]||(e[40]=c("指派",-1))]),_:1})):b("",!0),le(a)&&n(B)(["tcm.diagnosis/videoQr"])?(i(),v(J,{key:1,command:"videoQr"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(st))]),_:1}),e[41]||(e[41]=c("视频二维码",-1))]),_:1})):b("",!0),n(B)(["tcm.diagnosis/guahao"])&&le(a)?(i(),v(J,{key:2,command:"confirmQr"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(st))]),_:1}),e[42]||(e[42]=c("二维码",-1))]),_:1})):b("",!0),Ge(a)&&n(B)(["tcm.diagnosis/guahao"])?(i(),v(J,{key:3,command:"cancelApt"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(Ba))]),_:1}),e[43]||(e[43]=c("取消挂号",-1))]),_:1})):b("",!0),n(B)(["tcm.diagnosis/order"])?(i(),v(J,{key:4,command:"order"},{default:s(()=>[l(V,null,{default:s(()=>[l(n(Ha))]),_:1}),e[44]||(e[44]=c("创建订单",-1))]),_:1})):b("",!0),n(B)(["tcm.diagnosis/delete"])?(i(),v(J,{key:5,command:"delete",divided:""},{default:s(()=>[l(V,null,{default:s(()=>[l(n(ja))]),_:1}),e[45]||(e[45]=r("span",{class:"text-danger"},"删除",-1))]),_:1})):b("",!0)]),_:2},1024)]),default:s(()=>[l(o,{type:"info",link:"",size:"small"},{default:s(()=>[e[39]||(e[39]=c("更多",-1)),l(V,{class:"el-icon--right"},{default:s(()=>[l(n(lt))]),_:1})]),_:1})]),_:2},1032,["onCommand"])])]),_:1})]),_:1},8,["data"])),[[at,n(w).loading]]),r("div",ul,[l(ya,{modelValue:n(w),"onUpdate:modelValue":e[6]||(e[6]=a=>M(w)?w.value=a:null),onChange:n(h)},null,8,["modelValue","onChange"])])])]),_:1}),l(n(pt),{ref_key:"editRef",ref:te,onSuccess:Be},null,512),l(n(_t),{ref_key:"detailRef",ref:$t},null,512),l(n(ft),{ref_key:"appointmentRef",ref:je,onSuccess:Be},null,512),l(n(vt),{modelValue:n(ce),"onUpdate:modelValue":e[7]||(e[7]=a=>M(ce)?ce.value=a:null),"diagnosis-id":n(Ke),onClosed:n(h)},null,8,["modelValue","diagnosis-id","onClosed"]),l(ve,{modelValue:n(T),"onUpdate:modelValue":e[9]||(e[9]=a=>M(T)?T.value=a:null),title:n(Ae),width:"400px","close-on-click-modal":!1},{footer:s(()=>[l(o,{onClick:e[8]||(e[8]=a=>T.value=!1)},{default:s(()=>[...e[48]||(e[48]=[c("关闭",-1)])]),_:1}),n(P)?b("",!0):(i(),v(o,{key:0,type:"primary",onClick:da},{default:s(()=>[...e[49]||(e[49]=[c(" 重新生成 ",-1)])]),_:1}))]),default:s(()=>{var a;return[r("div",cl,[n(P)?(i(),u("div",ml,[l(V,{class:"is-loading",size:40},{default:s(()=>[l(n(Ga))]),_:1}),e[46]||(e[46]=r("div",{class:"mt-4 text-gray-500"},"生成中...",-1))])):n(F)?(i(),u("div",pl,[r("img",{src:n(F),alt:"小程序二维码",class:"w-64 h-64 border border-gray-200 rounded"},null,8,_l),r("div",fl,[r("div",null,"患者:"+p((a=n(W))==null?void 0:a.patient_name),1),r("div",vl,"挂号时间:"+p(Bt.value),1),e[47]||(e[47]=r("div",{class:"mt-2"},"请使用企业微信扫描二维码,然后转发给患者",-1))])])):(i(),u("div",gl," 生成失败,请重试 "))])]}),_:1},8,["modelValue","title"]),l(ve,{modelValue:n(Q),"onUpdate:modelValue":e[13]||(e[13]=a=>M(Q)?Q.value=a:null),title:n(ae)==="batch"?"批量指派医助":"指派医助",width:"500px"},{footer:s(()=>[l(o,{onClick:e[12]||(e[12]=a=>Q.value=!1)},{default:s(()=>[...e[52]||(e[52]=[c("取消",-1)])]),_:1}),l(o,{type:"primary",onClick:Gt,loading:n(Ie)},{default:s(()=>[...e[53]||(e[53]=[c(" 确定指派 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(ze,{model:n(C),"label-width":"100px"},{default:s(()=>[l($,{label:"选择医助",required:""},{default:s(()=>[l(G,{modelValue:n(C).assistant_id,"onUpdate:modelValue":e[10]||(e[10]=a=>n(C).assistant_id=a),placeholder:"请选择医助",class:"w-full",filterable:"",clearable:"","value-key":"id"},{default:s(()=>[(i(!0),u(D,null,I(n(L),a=>(i(),v(k,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l($,{label:"继承"},{default:s(()=>[l(ba,{modelValue:n(C).is_inherit,"onUpdate:modelValue":e[11]||(e[11]=a=>n(C).is_inherit=a)},{default:s(()=>[...e[50]||(e[50]=[c("继承",-1)])]),_:1},8,["modelValue"]),e[51]||(e[51]=r("span",{class:"text-gray-400 text-xs ml-2"},"勾选后写入指派记录",-1))]),_:1}),n(ae)==="batch"?(i(),v($,{key:0,label:"已选择"},{default:s(()=>[r("div",yl,p(n(O).length)+" 条诊单记录",1)]),_:1})):(i(),v($,{key:1,label:"诊单信息"},{default:s(()=>{var a,x;return[r("div",bl,[r("div",null,"患者:"+p((a=n(ne))==null?void 0:a.patient_name),1),r("div",null,"诊断日期:"+p((x=n(ne))==null?void 0:x.diagnosis_date_text),1)])]}),_:1}))]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(ve,{modelValue:n(j),"onUpdate:modelValue":e[18]||(e[18]=a=>M(j)?j.value=a:null),title:"创建订单",width:"600px",onClose:Qt},{footer:s(()=>[l(o,{onClick:e[17]||(e[17]=a=>j.value=!1)},{default:s(()=>[...e[54]||(e[54]=[c("取消",-1)])]),_:1}),l(o,{type:"primary",onClick:Yt,loading:n(Ee)},{default:s(()=>[...e[55]||(e[55]=[c("创建订单",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(ze,{ref_key:"orderFormRef",ref:pe,model:n(f),rules:qt,"label-width":"100px"},{default:s(()=>[l($,{label:"患者"},{default:s(()=>[r("span",hl,p(n(f).patient_name)+" ("+p(n(f).phone)+")",1)]),_:1}),l($,{label:"订单类型",prop:"order_type"},{default:s(()=>[l(G,{modelValue:n(f).order_type,"onUpdate:modelValue":e[14]||(e[14]=a=>n(f).order_type=a),placeholder:"请选择",class:"w-full"},{default:s(()=>[l(k,{label:"挂号费",value:1}),l(k,{label:"问诊费",value:2}),l(k,{label:"药品费用",value:3}),l(k,{label:"首付费用",value:4}),l(k,{label:"尾款费用",value:5}),l(k,{label:"其他费用",value:6}),l(k,{label:"全部费用",value:7}),l(k,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l($,{label:"订单金额",prop:"amount"},{default:s(()=>[l(ha,{modelValue:n(f).amount,"onUpdate:modelValue":e[15]||(e[15]=a=>n(f).amount=a),min:0,step:.01,precision:2,placeholder:"请输入金额",class:"w-full"},null,8,["modelValue"])]),_:1}),l($,{label:"备注",prop:"remark"},{default:s(()=>[l(d,{modelValue:n(f).remark,"onUpdate:modelValue":e[16]||(e[16]=a=>n(f).remark=a),type:"textarea",rows:3,placeholder:"请输入备注(可选)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(ve,{modelValue:n(K),"onUpdate:modelValue":e[21]||(e[21]=a=>M(K)?K.value=a:null),title:"补全身份证号",width:"400px","close-on-click-modal":!1,onClose:e[22]||(e[22]=a=>n(N).id_card="")},{footer:s(()=>[l(o,{onClick:e[20]||(e[20]=a=>K.value=!1)},{default:s(()=>[...e[56]||(e[56]=[c("取消",-1)])]),_:1}),l(o,{type:"primary",onClick:oa,loading:n(Ne)},{default:s(()=>[...e[57]||(e[57]=[c("提交(自动更新年龄)",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(ze,{ref_key:"fillIdCardFormRef",ref:Je,model:n(N),rules:sa,"label-width":"80px"},{default:s(()=>[l($,{label:"患者"},{default:s(()=>[r("span",kl,p(n(N).patient_name),1)]),_:1}),l($,{label:"身份证号",prop:"id_card"},{default:s(()=>[l(d,{modelValue:n(N).id_card,"onUpdate:modelValue":e[19]||(e[19]=a=>n(N).id_card=a),placeholder:"请输入15或18位身份证号",maxlength:"18","show-word-limit":"",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(xa,{modelValue:n(_e),"onUpdate:modelValue":e[24]||(e[24]=a=>M(_e)?_e.value=a:null),title:`企业微信记录 - ${((nt=n(E))==null?void 0:nt.patient_name)||""}`,size:"600px","destroy-on-close":!0},{default:s(()=>{var a,x;return[n(A)?(i(),u("div",Cl,[l(ka,{column:2,border:"",size:"small"},{default:s(()=>[l(ge,{label:"患者姓名"},{default:s(()=>{var y;return[c(p((y=n(E))==null?void 0:y.patient_name),1)]}),_:1}),l(ge,{label:"手机号"},{default:s(()=>[c(p(n(A).phone||"-"),1)]),_:1}),l(ge,{label:"企微联系人ID"},{default:s(()=>[n(A).external_userid?(i(),u("span",Vl,p(n(A).external_userid),1)):(i(),v(z,{key:1,type:"info",size:"small"},{default:s(()=>[...e[58]||(e[58]=[c("未关联",-1)])]),_:1}))]),_:1}),l(ge,{label:"会话存档"},{default:s(()=>[n(A).msgaudit_enabled?(i(),v(z,{key:0,type:"success",size:"small"},{default:s(()=>[...e[59]||(e[59]=[c("已开通",-1)])]),_:1})):(i(),v(z,{key:1,type:"info",size:"small"},{default:s(()=>[...e[60]||(e[60]=[c("未配置",-1)])]),_:1}))]),_:1})]),_:1}),(a=n(A).permit_users)!=null&&a.length?(i(),u("div",xl,[e[61]||(e[61]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档成员:",-1)),(i(!0),u(D,null,I(n(A).permit_users,y=>(i(),v(z,{key:y,size:"small",class:"mr-1"},{default:s(()=>[c(p(y),1)]),_:2},1024))),128))])):b("",!0),(x=n(A).msgaudit_agree)!=null&&x.length?(i(),u("div",Dl,[e[62]||(e[62]=r("span",{class:"text-sm text-gray-500 mr-2"},"存档同意:",-1)),(i(!0),u(D,null,I(n(A).msgaudit_agree,(y,ye)=>(i(),v(z,{key:ye,type:y.agree_status==="Agree"?"success":"warning",size:"small",class:"mr-1"},{default:s(()=>[c(p(y.userid)+": "+p(y.agree_status==="Agree"?"已同意":y.agree_status),1)]),_:2},1032,["type"]))),128))])):b("",!0)])):b("",!0),l(Ca),r("div",wl,[r("div",El,[l(d,{modelValue:n(Y),"onUpdate:modelValue":e[23]||(e[23]=y=>M(Y)?Y.value=y:null),type:"textarea",rows:2,placeholder:"添加沟通记录...",class:"flex-1"},null,8,["modelValue"]),l(o,{type:"primary",onClick:ma,loading:n(Se),class:"self-end"},{default:s(()=>[...e[63]||(e[63]=[c(" 添加 ",-1)])]),_:1},8,["loading"])])]),q((i(),u("div",null,[n(U).length===0?(i(),u("div",Al," 暂无聊天记录 ")):(i(),u("div",Rl,[(i(!0),u(D,null,I(n(U),y=>{var ye;return i(),u("div",{key:y.id,class:"record-item"},[r("div",Il,[r("div",Nl,[l(z,{type:y.direction===0?"primary":"success",size:"small"},{default:s(()=>[c(p(y.direction===0?"员工":"客户"),1)]),_:2},1032,["type"]),r("span",$l,p(y.direction===0?y.staff_name:y.external_name||((ye=n(E))==null?void 0:ye.patient_name)),1),y.msg_type==="note"?(i(),v(z,{key:0,type:"warning",size:"small"},{default:s(()=>[...e[64]||(e[64]=[c("备注",-1)])]),_:1})):b("",!0)]),r("div",Sl,[r("span",Tl,p(ra(y.chat_time)),1),l(o,{type:"danger",link:"",size:"small",onClick:ql=>pa(y.id)},{default:s(()=>[...e[65]||(e[65]=[c(" 删除 ",-1)])]),_:1},8,["onClick"])])]),r("div",zl,p(y.content),1),y.media_url?(i(),u("div",Ll,[l(Va,{src:y.media_url,style:{"max-width":"200px"},fit:"contain","preview-src-list":[y.media_url]},null,8,["src","preview-src-list"])])):b("",!0)])}),128))])),n(fe)>n(U).length?(i(),u("div",Pl,[l(o,{link:"",type:"primary",onClick:ca},{default:s(()=>[...e[66]||(e[66]=[c("加载更多",-1)])]),_:1})])):b("",!0)])),[[at,n($e)]])]}),_:1},8,["modelValue","title"])])}}}),es=kn(Wl,[["__scopeId","data-v-5f089050"]]);export{es as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-9cpHBQHY.js
diff --git a/server/public/admin/assets/index-DHhh-URo.js b/server/public/admin/assets/index-DHhh-URo.js
index 1dd8a2de6..68f0a31e5 100644
--- a/server/public/admin/assets/index-DHhh-URo.js
+++ b/server/public/admin/assets/index-DHhh-URo.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DHhh-URo.js
import{o as U,R as $,ap as J,be as Q,q as r,r as b,v as t,D as s,b9 as X,b6 as Z,bp as ee,bm as le,bn as ae,b7 as te,b8 as se,K as ne,L as c,s as u,bg as oe,ac as D,O as C,T as i,P as B,bj as ie,u as N,bk as de,br as re,F as M,bi as ce,C as ue,M as h,ba as _e}from"./.pnpm-BadRMC3e.js";import{_ as me}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{s as be,t as pe}from"./stats-Cz14TIwi.js";import{u as fe}from"./usePaging-DMqUvFG-.js";import{i as L,_ as ge}from"./index-C360OAjQ.js";const ke={class:"auto-assign-log-page"},he={class:"toolbar mb-3"},ye={key:0,class:"toolbar-tip"},ve={class:"cell-sub"},we={class:"cell-sub"},Ve={key:0,class:"cell-sub"},Ce={key:2},Ne={class:"cell-sub"},xe={key:1},Re={class:"cell-sub"},Ee={key:1,class:"cell-sub"},De={class:"flex justify-end mt-4"},Le=U({name:"statsAutoAssignLog"}),Se=U({...Le,setup(Ae){const y=h(null),v=h(null),x=h(),_=h([]),w=h(!1),n=_e({start_date:"",end_date:"",start_time:"",end_time:"",action:"",is_rollback:"",keyword:""});$(y,a=>{n.start_date=(a==null?void 0:a[0])??"",n.end_date=(a==null?void 0:a[1])??""}),$(v,a=>{n.start_time=(a==null?void 0:a[0])??"",n.end_time=(a==null?void 0:a[1])??""});const{pager:f,getLists:R,resetPage:F}=fe({fetchFun:be,params:n}),m=()=>{var a,l;_.value=[],(l=(a=x.value)==null?void 0:a.clearSelection)==null||l.call(a),F()},P=()=>{y.value=null,v.value=null,n.start_date="",n.end_date="",n.start_time="",n.end_time="",n.action="",n.is_rollback="",n.keyword="",m()},T=a=>a==null?"—":`${a}%`,z=a=>Number(a.can_rollback)===1,I=a=>{_.value=a.filter(l=>Number(l.can_rollback)===1)},S=async a=>{var l,g;if(a.length!==0){await L.confirm(`确认回退选中的 ${a.length} 条自动分配?将把诊单医助撤回到自动分配前的原医助,并写入指派日志。`),w.value=!0;try{const o=await pe({ids:a}),p=Number((o==null?void 0:o.success)??0),k=Number((o==null?void 0:o.failed)??0);k>0&&Array.isArray(o==null?void 0:o.messages)&&o.messages.length?L.msgWarning(`回退成功 ${p} 条,跳过/失败 ${k} 条:${o.messages.slice(0,3).join(";")}`):L.msgSuccess(`回退成功 ${p} 条`),_.value=[],(g=(l=x.value)==null?void 0:l.clearSelection)==null||g.call(l),await R()}finally{w.value=!1}}},j=()=>{const a=_.value.map(l=>Number(l.id)).filter(l=>l>0);return S(a)},K=a=>{const l=Number((a==null?void 0:a.id)??0);if(!(l<=0))return S([l])};return J(()=>R()),(a,l)=>{const g=ee,o=Z,p=ae,k=le,q=te,V=ne,H=X,A=oe,d=de,E=re,O=ie,W=me,Y=Q("perms"),G=ce;return r(),b("div",ke,[t(A,{class:"!border-none",shadow:"never"},{default:s(()=>[t(H,{inline:!0,class:"log-filter-form"},{default:s(()=>[t(o,{label:"记录时间"},{default:s(()=>[t(g,{modelValue:v.value,"onUpdate:modelValue":l[0]||(l[0]=e=>v.value=e),type:"datetimerange","range-separator":"至","start-placeholder":"开始时间","end-placeholder":"结束时间","value-format":"YYYY-MM-DD HH:mm:ss",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"执行日期"},{default:s(()=>[t(g,{modelValue:y.value,"onUpdate:modelValue":l[1]||(l[1]=e=>y.value=e),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"结果"},{default:s(()=>[t(k,{modelValue:n.action,"onUpdate:modelValue":l[2]||(l[2]=e=>n.action=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"已分配",value:"1"}),t(p,{label:"未分配",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"回退"},{default:s(()=>[t(k,{modelValue:n.is_rollback,"onUpdate:modelValue":l[3]||(l[3]=e=>n.is_rollback=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"未回退",value:"0"}),t(p,{label:"已回退",value:"1"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"关键词"},{default:s(()=>[t(q,{modelValue:n.keyword,"onUpdate:modelValue":l[4]||(l[4]=e=>n.keyword=e),placeholder:"患者/手机号/医助/诊单ID",clearable:"",class:"w-[220px]",onKeyup:se(m,["enter"]),onClear:m},null,8,["modelValue"])]),_:1}),t(o,null,{default:s(()=>[t(V,{type:"primary",onClick:m},{default:s(()=>[...l[6]||(l[6]=[c("查询",-1)])]),_:1}),t(V,{onClick:P},{default:s(()=>[...l[7]||(l[7]=[c("重置",-1)])]),_:1})]),_:1})]),_:1}),l[8]||(l[8]=u("div",{class:"log-hint"}," 由每日定时任务「待分配诊单自动指派」写入:按上月二诊复诊接诊率分档轮询分配(>70% 每人3条/日,60%~70% 每人2条/日,50%~60% 每人1条/日,<50% 不分)。「回退」可将已分配医助撤回到自动分配前的原医助(通常为一中心),并写入指派日志。 ",-1))]),_:1}),t(A,{class:"!border-none mt-3",shadow:"never"},{default:s(()=>[u("div",he,[D((r(),C(V,{type:"warning",disabled:_.value.length===0,loading:w.value,onClick:j},{default:s(()=>[c(" 回退选中("+i(_.value.length)+") ",1)]),_:1},8,["disabled","loading"])),[[Y,["stats.autoAssignLog/rollback"]]]),_.value.length>0?(r(),b("span",ye," 已选 "+i(_.value.length)+" 条可回退记录 ",1)):B("",!0)]),D((r(),C(O,{ref_key:"tableRef",ref:x,data:N(f).lists,size:"default",stripe:"","row-key":"id",onSelectionChange:I},{default:s(()=>[t(d,{type:"selection",width:"48",selectable:z,"reserve-selection":""}),t(d,{label:"记录时间",width:"160"},{default:s(({row:e})=>[c(i(e.create_time_text||"—"),1)]),_:1}),t(d,{label:"诊单",width:"90",prop:"diagnosis_id"}),t(d,{label:"患者","min-width":"110"},{default:s(({row:e})=>[u("div",null,i(e.patient_name||"—"),1),u("div",ve,i(e.patient_phone||""),1)]),_:1}),t(d,{label:"结果",width:"90",align:"center"},{default:s(({row:e})=>[t(E,{type:Number(e.action)===1?"success":"info",size:"small"},{default:s(()=>[c(i(e.action_text),1)]),_:2},1032,["type"])]),_:1}),t(d,{label:"回退状态",width:"140"},{default:s(({row:e})=>[Number(e.is_rollback)===1?(r(),b(M,{key:0},[t(E,{type:"warning",size:"small"},{default:s(()=>[...l[9]||(l[9]=[c("已回退",-1)])]),_:1}),u("div",we,i(e.rollback_time_text),1),e.rollback_admin_name?(r(),b("div",Ve,i(e.rollback_admin_name),1)):B("",!0)],64)):Number(e.can_rollback)===1?(r(),C(E,{key:1,type:"success",size:"small"},{default:s(()=>[...l[10]||(l[10]=[c(" 可回退 ",-1)])]),_:1})):(r(),b("span",Ce,"—"))]),_:1}),t(d,{label:"医助","min-width":"110"},{default:s(({row:e})=>[Number(e.assistant_id)>0?(r(),b(M,{key:0},[u("div",null,i(e.assistant_name||"#"+e.assistant_id),1),u("div",Ne,"上月二诊接诊率 "+i(T(e.visit2_rate)),1)],64)):(r(),b("span",xe,"—"))]),_:1}),t(d,{label:"档位",width:"100",align:"center"},{default:s(({row:e})=>[c(i(e.tier_text||"—"),1)]),_:1}),t(d,{label:"轮次",width:"70",align:"center"},{default:s(({row:e})=>[c(i(Number(e.round_no)>0?"第"+e.round_no+"轮":"—"),1)]),_:1}),t(d,{label:"原因","min-width":"280","show-overflow-tooltip":""},{default:s(({row:e})=>[c(i(e.reason),1)]),_:1}),t(d,{label:"统计月",width:"90",prop:"stat_month",align:"center"}),t(d,{label:"批次",width:"160"},{default:s(({row:e})=>[u("span",Re,i(e.batch_no),1)]),_:1}),t(d,{label:"操作",width:"90",fixed:"right",align:"center"},{default:s(({row:e})=>[Number(e.can_rollback)===1?D((r(),C(V,{key:0,link:"",type:"warning",loading:w.value,onClick:Ye=>K(e)},{default:s(()=>[...l[11]||(l[11]=[c(" 回退 ",-1)])]),_:1},8,["loading","onClick"])),[[Y,["stats.autoAssignLog/rollback"]]]):(r(),b("span",Ee,"—"))]),_:1})]),_:1},8,["data"])),[[G,N(f).loading]]),u("div",De,[t(W,{modelValue:N(f),"onUpdate:modelValue":l[5]||(l[5]=e=>ue(f)?f.value=e:null),onChange:N(R)},null,8,["modelValue","onChange"])])]),_:1})])}}}),Pe=ge(Se,[["__scopeId","data-v-bc0fccd4"]]);export{Pe as default};
+========
+import{o as U,R as $,ap as J,be as Q,q as r,r as b,v as t,D as s,b9 as X,b6 as Z,bp as ee,bm as le,bn as ae,b7 as te,b8 as se,K as ne,L as c,s as u,bg as oe,ac as D,O as C,T as i,P as B,bj as ie,u as N,bk as de,br as re,F as M,bi as ce,C as ue,M as h,ba as _e}from"./.pnpm-BadRMC3e.js";import{_ as me}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{s as be,t as pe}from"./stats-O2EioTJv.js";import{u as fe}from"./usePaging-DMqUvFG-.js";import{i as L,_ as ge}from"./index-C53kWH2_.js";const ke={class:"auto-assign-log-page"},he={class:"toolbar mb-3"},ye={key:0,class:"toolbar-tip"},ve={class:"cell-sub"},we={class:"cell-sub"},Ve={key:0,class:"cell-sub"},Ce={key:2},Ne={class:"cell-sub"},xe={key:1},Re={class:"cell-sub"},Ee={key:1,class:"cell-sub"},De={class:"flex justify-end mt-4"},Le=U({name:"statsAutoAssignLog"}),Se=U({...Le,setup(Ae){const y=h(null),v=h(null),x=h(),_=h([]),w=h(!1),n=_e({start_date:"",end_date:"",start_time:"",end_time:"",action:"",is_rollback:"",keyword:""});$(y,a=>{n.start_date=(a==null?void 0:a[0])??"",n.end_date=(a==null?void 0:a[1])??""}),$(v,a=>{n.start_time=(a==null?void 0:a[0])??"",n.end_time=(a==null?void 0:a[1])??""});const{pager:f,getLists:R,resetPage:F}=fe({fetchFun:be,params:n}),m=()=>{var a,l;_.value=[],(l=(a=x.value)==null?void 0:a.clearSelection)==null||l.call(a),F()},P=()=>{y.value=null,v.value=null,n.start_date="",n.end_date="",n.start_time="",n.end_time="",n.action="",n.is_rollback="",n.keyword="",m()},T=a=>a==null?"—":`${a}%`,z=a=>Number(a.can_rollback)===1,I=a=>{_.value=a.filter(l=>Number(l.can_rollback)===1)},S=async a=>{var l,g;if(a.length!==0){await L.confirm(`确认回退选中的 ${a.length} 条自动分配?将把诊单医助撤回到自动分配前的原医助,并写入指派日志。`),w.value=!0;try{const o=await pe({ids:a}),p=Number((o==null?void 0:o.success)??0),k=Number((o==null?void 0:o.failed)??0);k>0&&Array.isArray(o==null?void 0:o.messages)&&o.messages.length?L.msgWarning(`回退成功 ${p} 条,跳过/失败 ${k} 条:${o.messages.slice(0,3).join(";")}`):L.msgSuccess(`回退成功 ${p} 条`),_.value=[],(g=(l=x.value)==null?void 0:l.clearSelection)==null||g.call(l),await R()}finally{w.value=!1}}},j=()=>{const a=_.value.map(l=>Number(l.id)).filter(l=>l>0);return S(a)},K=a=>{const l=Number((a==null?void 0:a.id)??0);if(!(l<=0))return S([l])};return J(()=>R()),(a,l)=>{const g=ee,o=Z,p=ae,k=le,q=te,V=ne,H=X,A=oe,d=de,E=re,O=ie,W=me,Y=Q("perms"),G=ce;return r(),b("div",ke,[t(A,{class:"!border-none",shadow:"never"},{default:s(()=>[t(H,{inline:!0,class:"log-filter-form"},{default:s(()=>[t(o,{label:"记录时间"},{default:s(()=>[t(g,{modelValue:v.value,"onUpdate:modelValue":l[0]||(l[0]=e=>v.value=e),type:"datetimerange","range-separator":"至","start-placeholder":"开始时间","end-placeholder":"结束时间","value-format":"YYYY-MM-DD HH:mm:ss",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"执行日期"},{default:s(()=>[t(g,{modelValue:y.value,"onUpdate:modelValue":l[1]||(l[1]=e=>y.value=e),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"结果"},{default:s(()=>[t(k,{modelValue:n.action,"onUpdate:modelValue":l[2]||(l[2]=e=>n.action=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"已分配",value:"1"}),t(p,{label:"未分配",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"回退"},{default:s(()=>[t(k,{modelValue:n.is_rollback,"onUpdate:modelValue":l[3]||(l[3]=e=>n.is_rollback=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"未回退",value:"0"}),t(p,{label:"已回退",value:"1"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"关键词"},{default:s(()=>[t(q,{modelValue:n.keyword,"onUpdate:modelValue":l[4]||(l[4]=e=>n.keyword=e),placeholder:"患者/手机号/医助/诊单ID",clearable:"",class:"w-[220px]",onKeyup:se(m,["enter"]),onClear:m},null,8,["modelValue"])]),_:1}),t(o,null,{default:s(()=>[t(V,{type:"primary",onClick:m},{default:s(()=>[...l[6]||(l[6]=[c("查询",-1)])]),_:1}),t(V,{onClick:P},{default:s(()=>[...l[7]||(l[7]=[c("重置",-1)])]),_:1})]),_:1})]),_:1}),l[8]||(l[8]=u("div",{class:"log-hint"}," 由每日定时任务「待分配诊单自动指派」写入:按上月二诊复诊接诊率分档轮询分配(>70% 每人3条/日,60%~70% 每人2条/日,50%~60% 每人1条/日,<50% 不分)。「回退」可将已分配医助撤回到自动分配前的原医助(通常为一中心),并写入指派日志。 ",-1))]),_:1}),t(A,{class:"!border-none mt-3",shadow:"never"},{default:s(()=>[u("div",he,[D((r(),C(V,{type:"warning",disabled:_.value.length===0,loading:w.value,onClick:j},{default:s(()=>[c(" 回退选中("+i(_.value.length)+") ",1)]),_:1},8,["disabled","loading"])),[[Y,["stats.autoAssignLog/rollback"]]]),_.value.length>0?(r(),b("span",ye," 已选 "+i(_.value.length)+" 条可回退记录 ",1)):B("",!0)]),D((r(),C(O,{ref_key:"tableRef",ref:x,data:N(f).lists,size:"default",stripe:"","row-key":"id",onSelectionChange:I},{default:s(()=>[t(d,{type:"selection",width:"48",selectable:z,"reserve-selection":""}),t(d,{label:"记录时间",width:"160"},{default:s(({row:e})=>[c(i(e.create_time_text||"—"),1)]),_:1}),t(d,{label:"诊单",width:"90",prop:"diagnosis_id"}),t(d,{label:"患者","min-width":"110"},{default:s(({row:e})=>[u("div",null,i(e.patient_name||"—"),1),u("div",ve,i(e.patient_phone||""),1)]),_:1}),t(d,{label:"结果",width:"90",align:"center"},{default:s(({row:e})=>[t(E,{type:Number(e.action)===1?"success":"info",size:"small"},{default:s(()=>[c(i(e.action_text),1)]),_:2},1032,["type"])]),_:1}),t(d,{label:"回退状态",width:"140"},{default:s(({row:e})=>[Number(e.is_rollback)===1?(r(),b(M,{key:0},[t(E,{type:"warning",size:"small"},{default:s(()=>[...l[9]||(l[9]=[c("已回退",-1)])]),_:1}),u("div",we,i(e.rollback_time_text),1),e.rollback_admin_name?(r(),b("div",Ve,i(e.rollback_admin_name),1)):B("",!0)],64)):Number(e.can_rollback)===1?(r(),C(E,{key:1,type:"success",size:"small"},{default:s(()=>[...l[10]||(l[10]=[c(" 可回退 ",-1)])]),_:1})):(r(),b("span",Ce,"—"))]),_:1}),t(d,{label:"医助","min-width":"110"},{default:s(({row:e})=>[Number(e.assistant_id)>0?(r(),b(M,{key:0},[u("div",null,i(e.assistant_name||"#"+e.assistant_id),1),u("div",Ne,"上月二诊接诊率 "+i(T(e.visit2_rate)),1)],64)):(r(),b("span",xe,"—"))]),_:1}),t(d,{label:"档位",width:"100",align:"center"},{default:s(({row:e})=>[c(i(e.tier_text||"—"),1)]),_:1}),t(d,{label:"轮次",width:"70",align:"center"},{default:s(({row:e})=>[c(i(Number(e.round_no)>0?"第"+e.round_no+"轮":"—"),1)]),_:1}),t(d,{label:"原因","min-width":"280","show-overflow-tooltip":""},{default:s(({row:e})=>[c(i(e.reason),1)]),_:1}),t(d,{label:"统计月",width:"90",prop:"stat_month",align:"center"}),t(d,{label:"批次",width:"160"},{default:s(({row:e})=>[u("span",Re,i(e.batch_no),1)]),_:1}),t(d,{label:"操作",width:"90",fixed:"right",align:"center"},{default:s(({row:e})=>[Number(e.can_rollback)===1?D((r(),C(V,{key:0,link:"",type:"warning",loading:w.value,onClick:Ye=>K(e)},{default:s(()=>[...l[11]||(l[11]=[c(" 回退 ",-1)])]),_:1},8,["loading","onClick"])),[[Y,["stats.autoAssignLog/rollback"]]]):(r(),b("span",Ee,"—"))]),_:1})]),_:1},8,["data"])),[[G,N(f).loading]]),u("div",De,[t(W,{modelValue:N(f),"onUpdate:modelValue":l[5]||(l[5]=e=>ue(f)?f.value=e:null),onChange:N(R)},null,8,["modelValue","onChange"])])]),_:1})])}}}),Pe=ge(Se,[["__scopeId","data-v-bc0fccd4"]]);export{Pe as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-Df90uVtq.js
diff --git a/server/public/admin/assets/index-DIQ_14l3.js b/server/public/admin/assets/index-DIQ_14l3.js
index 7cce3912a..b59985bf9 100644
--- a/server/public/admin/assets/index-DIQ_14l3.js
+++ b/server/public/admin/assets/index-DIQ_14l3.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DIQ_14l3.js
import{o as t,q as s,r as n,s as a,ah as r,t as _}from"./.pnpm-BadRMC3e.js";import{_ as c}from"./index-C360OAjQ.js";const i={class:"footer-btns"},d=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,l)=>(s(),n("div",i,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),m=c(d,[["__scopeId","data-v-9f638557"]]);export{m as _};
+========
+import{o as t,q as s,r as n,s as a,ah as r,t as _}from"./.pnpm-BadRMC3e.js";import{_ as c}from"./index-C53kWH2_.js";const i={class:"footer-btns"},d=t({__name:"index",props:{fixed:{type:Boolean,default:!0}},setup(e){return(o,l)=>(s(),n("div",i,[a("div",{class:"footer-btns__content",style:_(e.fixed?"position: fixed":"")},[r(o.$slots,"default",{},void 0,!0)],4)]))}}),m=c(d,[["__scopeId","data-v-9f638557"]]);export{m as _};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CRMPOQmu.js
diff --git a/server/public/admin/assets/index-DIf4OeWm.js b/server/public/admin/assets/index-DIf4OeWm.js
index 33bc10805..8e4b054f0 100644
--- a/server/public/admin/assets/index-DIf4OeWm.js
+++ b/server/public/admin/assets/index-DIf4OeWm.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DIf4OeWm.js
import{_ as F}from"./index-DIQ_14l3.js";import{o as I,be as L,q as t,r as l,s as n,ac as j,O as u,D as a,L as s,K as q,F as C,G,P as p,bj as K,v as m,bk as M,aa as O,u as f,bf as R,br as $,I as z,T as J,bg as Q,M as P,l as V}from"./.pnpm-BadRMC3e.js";import{b as X,c as Y}from"./pay-C1LplNKY.js";import"./index-C360OAjQ.js";const Z={key:0,class:"text-lg mb-[24px]"},ee={key:1,class:"text-lg mb-[24px]"},te={key:2,class:"text-lg mb-[24px]"},ae={key:3,class:"text-lg mb-[24px]"},le={key:4,class:"text-lg mb-[24px]"},se={key:1},oe={key:1},me=I({__name:"index",setup(ne){const i=P({}),r=P(!1);let v={};const b=async()=>{i.value=await X(),v=V.cloneDeep(i.value)},w=()=>{r.value=!0},E=(x,e)=>{i.value[e].forEach(_=>{_.is_default=0}),i.value[e][x].is_default=1},h=()=>{i.value=V.cloneDeep(v),r.value=!1},D=async()=>{await Y(i.value),r.value=!1,b()};return b(),(x,e)=>{const _=q,W=O,y=M,B=R,T=$,N=z,S=K,U=Q,H=F,A=L("perms");return t(),l("div",null,[n("div",null,[j((t(),u(_,{type:"primary",onClick:w},{default:a(()=>[...e[0]||(e[0]=[s(" 设置支付方式 ",-1)])]),_:1})),[[A,["setting.pay.pay_way/setPayWay"]]])]),(t(!0),l(C,null,G(f(i),(g,d)=>(t(),u(U,{shadow:"never",class:"mt-4 !border-none",key:d},{default:a(()=>[n("div",null,[d==1?(t(),l("div",Z,[...e[1]||(e[1]=[s(" 微信小程序 ",-1),n("span",{class:"form-tips ml-[10px]"},"在微信小程序中付款的场景",-1)])])):p("",!0),d==2?(t(),l("div",ee,[...e[2]||(e[2]=[s(" 微信公众号 ",-1),n("span",{class:"form-tips ml-[10px]"}," 在微信公众号H5页面中付款的场景,公众号类型一般为服务号 ",-1)])])):p("",!0),d==3?(t(),l("div",te,[...e[3]||(e[3]=[s(" H5支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器H5页面中付款的场景",-1)])])):p("",!0),d==4?(t(),l("div",ae,[...e[4]||(e[4]=[s(" PC支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器PC页面中付款的场景",-1)])])):p("",!0),d==5?(t(),l("div",le,[...e[5]||(e[5]=[s(" APP支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在APP付款的场景",-1)])])):p("",!0),g.length?(t(),u(S,{key:5,data:g,style:{width:"100%"}},{default:a(()=>[m(y,{label:"图标","min-width":"150"},{default:a(({row:o})=>[m(W,{src:o.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),m(y,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),m(y,{label:"默认支付","min-width":"150"},{default:a(({row:o,$index:c})=>[n("div",null,[f(r)?(t(),u(B,{key:0,modelValue:o.is_default,"onUpdate:modelValue":k=>o.is_default=k,label:1,onChange:k=>E(c,d)},{default:a(()=>[...e[6]||(e[6]=[s(" 设为默认 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])):(t(),l(C,{key:1},[o.is_default==1?(t(),u(T,{key:0},{default:a(()=>[...e[7]||(e[7]=[s("默认",-1)])]),_:1})):(t(),l("span",se,"-"))],64))])]),_:2},1024),m(y,{label:"开启状态","min-width":"150"},{default:a(({row:o})=>[f(r)?(t(),u(N,{key:0,modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0},null,8,["modelValue","onUpdate:modelValue"])):(t(),l("span",oe,J(o.status==1?"开启":"关闭"),1))]),_:1})]),_:2},1032,["data"])):p("",!0)])]),_:2},1024))),128)),f(r)?(t(),u(H,{key:0},{default:a(()=>[m(_,{onClick:h},{default:a(()=>[...e[8]||(e[8]=[s("取消",-1)])]),_:1}),m(_,{type:"primary",onClick:D},{default:a(()=>[...e[9]||(e[9]=[s("保存",-1)])]),_:1})]),_:1})):p("",!0)])}}});export{me as default};
+========
+import{_ as F}from"./index-CRMPOQmu.js";import{o as I,be as L,q as t,r as l,s as n,ac as j,O as u,D as a,L as s,K as q,F as C,G,P as p,bj as K,v as m,bk as M,aa as O,u as f,bf as R,br as $,I as z,T as J,bg as Q,M as P,l as V}from"./.pnpm-BadRMC3e.js";import{b as X,c as Y}from"./pay-F2f46yW9.js";import"./index-C53kWH2_.js";const Z={key:0,class:"text-lg mb-[24px]"},ee={key:1,class:"text-lg mb-[24px]"},te={key:2,class:"text-lg mb-[24px]"},ae={key:3,class:"text-lg mb-[24px]"},le={key:4,class:"text-lg mb-[24px]"},se={key:1},oe={key:1},me=I({__name:"index",setup(ne){const i=P({}),r=P(!1);let v={};const b=async()=>{i.value=await X(),v=V.cloneDeep(i.value)},w=()=>{r.value=!0},E=(x,e)=>{i.value[e].forEach(_=>{_.is_default=0}),i.value[e][x].is_default=1},h=()=>{i.value=V.cloneDeep(v),r.value=!1},D=async()=>{await Y(i.value),r.value=!1,b()};return b(),(x,e)=>{const _=q,W=O,y=M,B=R,T=$,N=z,S=K,U=Q,H=F,A=L("perms");return t(),l("div",null,[n("div",null,[j((t(),u(_,{type:"primary",onClick:w},{default:a(()=>[...e[0]||(e[0]=[s(" 设置支付方式 ",-1)])]),_:1})),[[A,["setting.pay.pay_way/setPayWay"]]])]),(t(!0),l(C,null,G(f(i),(g,d)=>(t(),u(U,{shadow:"never",class:"mt-4 !border-none",key:d},{default:a(()=>[n("div",null,[d==1?(t(),l("div",Z,[...e[1]||(e[1]=[s(" 微信小程序 ",-1),n("span",{class:"form-tips ml-[10px]"},"在微信小程序中付款的场景",-1)])])):p("",!0),d==2?(t(),l("div",ee,[...e[2]||(e[2]=[s(" 微信公众号 ",-1),n("span",{class:"form-tips ml-[10px]"}," 在微信公众号H5页面中付款的场景,公众号类型一般为服务号 ",-1)])])):p("",!0),d==3?(t(),l("div",te,[...e[3]||(e[3]=[s(" H5支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器H5页面中付款的场景",-1)])])):p("",!0),d==4?(t(),l("div",ae,[...e[4]||(e[4]=[s(" PC支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在浏览器PC页面中付款的场景",-1)])])):p("",!0),d==5?(t(),l("div",le,[...e[5]||(e[5]=[s(" APP支付 ",-1),n("span",{class:"form-tips ml-[10px]"},"在APP付款的场景",-1)])])):p("",!0),g.length?(t(),u(S,{key:5,data:g,style:{width:"100%"}},{default:a(()=>[m(y,{label:"图标","min-width":"150"},{default:a(({row:o})=>[m(W,{src:o.icon,alt:"图标",style:{width:"34px",height:"34px"}},null,8,["src"])]),_:1}),m(y,{prop:"pay_way_name",label:"支付方式","min-width":"150"}),m(y,{label:"默认支付","min-width":"150"},{default:a(({row:o,$index:c})=>[n("div",null,[f(r)?(t(),u(B,{key:0,modelValue:o.is_default,"onUpdate:modelValue":k=>o.is_default=k,label:1,onChange:k=>E(c,d)},{default:a(()=>[...e[6]||(e[6]=[s(" 设为默认 ",-1)])]),_:1},8,["modelValue","onUpdate:modelValue","onChange"])):(t(),l(C,{key:1},[o.is_default==1?(t(),u(T,{key:0},{default:a(()=>[...e[7]||(e[7]=[s("默认",-1)])]),_:1})):(t(),l("span",se,"-"))],64))])]),_:2},1024),m(y,{label:"开启状态","min-width":"150"},{default:a(({row:o})=>[f(r)?(t(),u(N,{key:0,modelValue:o.status,"onUpdate:modelValue":c=>o.status=c,"active-value":1,"inactive-value":0},null,8,["modelValue","onUpdate:modelValue"])):(t(),l("span",oe,J(o.status==1?"开启":"关闭"),1))]),_:1})]),_:2},1032,["data"])):p("",!0)])]),_:2},1024))),128)),f(r)?(t(),u(H,{key:0},{default:a(()=>[m(_,{onClick:h},{default:a(()=>[...e[8]||(e[8]=[s("取消",-1)])]),_:1}),m(_,{type:"primary",onClick:D},{default:a(()=>[...e[9]||(e[9]=[s("保存",-1)])]),_:1})]),_:1})):p("",!0)])}}});export{me as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-Cr9M8HwA.js
diff --git a/server/public/admin/assets/index-DJi9hjoZ.js b/server/public/admin/assets/index-DJi9hjoZ.js
index 810abee3a..dd0cd2f48 100644
--- a/server/public/admin/assets/index-DJi9hjoZ.js
+++ b/server/public/admin/assets/index-DJi9hjoZ.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DJi9hjoZ.js
import{o as K,ap as G,n as E,be as H,q as p,r as J,v as t,D as a,b9 as Q,u as i,b6 as W,b7 as X,b8 as Y,bm as Z,bn as ee,K as te,L as s,bg as ae,s as L,ac as b,O as c,bj as le,bk as ne,T as N,br as oe,P,bi as se,a8 as x,M as V,ba as ie}from"./.pnpm-BadRMC3e.js";import{c as de,i as re}from"./index-C360OAjQ.js";import{e as pe,f as me}from"./department-BFDDlesw.js";import{_ as ue}from"./edit.vue_vue_type_script_setup_true_lang-DEy4nRqi.js";import"./index-2cRJ7Pdu.js";import"./useDictOptions-C5fytNbv.js";const fe={class:"department"},ce=K({name:"department"}),Ce=K({...ce,setup(_e){const D=x(),_=x(),R=x();let k=!1;const w=V(!1),g=V([]),m=ie({status:"",name:""}),v=V(!1),u=async()=>{w.value=!0,g.value=await pe(m),w.value=!1},S=()=>{var l;(l=R.value)==null||l.resetFields(),u()},$=async l=>{var e,o;v.value=!0,await E(),l&&((e=_.value)==null||e.setFormData({pid:l})),(o=_.value)==null||o.open("add")},q=async l=>{var e,o;v.value=!0,await E(),(e=_.value)==null||e.open("edit"),(o=_.value)==null||o.getDetail(l)},I=async l=>{await re.confirm("确定要删除?"),await me({id:l}),u()},T=()=>{k=!k,h(g.value,k)},h=(l,e=!0)=>{var o;for(const d in l)(o=D.value)==null||o.toggleRowExpansion(l[d],e),l[d].children&&h(l[d].children,e)};return G(async()=>{await u(),E(()=>{T()})}),(l,e)=>{const o=X,d=W,C=ee,M=Z,r=te,O=Q,B=ae,U=de,f=ne,j=oe,z=le,y=H("perms"),A=se;return p(),J("div",fe,[t(B,{class:"!border-none",shadow:"never"},{default:a(()=>[t(O,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(m),inline:!0},{default:a(()=>[t(d,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:a(()=>[t(o,{modelValue:i(m).name,"onUpdate:modelValue":e[0]||(e[0]=n=>i(m).name=n),placeholder:"输入部门名称",clearable:"",onKeyup:Y(u,["enter"])},null,8,["modelValue"])]),_:1}),t(d,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:a(()=>[t(M,{modelValue:i(m).status,"onUpdate:modelValue":e[1]||(e[1]=n=>i(m).status=n)},{default:a(()=>[t(C,{label:"全部",value:""}),t(C,{label:"正常",value:"1"}),t(C,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(d,null,{default:a(()=>[t(r,{type:"primary",onClick:u},{default:a(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(r,{onClick:S},{default:a(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(B,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[L("div",null,[b((p(),c(r,{type:"primary",onClick:e[2]||(e[2]=n=>$())},{icon:a(()=>[t(U,{name:"el-icon-Plus"})]),default:a(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[y,["dept.dept/add"]]]),t(r,{onClick:T},{default:a(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),b((p(),c(z,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(g),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:a(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:a(()=>[...e[8]||(e[8]=[L("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:a(({row:n})=>[s(N(n.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:a(({row:n})=>[t(j,{class:"ml-2",type:n.status?"primary":"danger"},{default:a(()=>[s(N(n.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:a(({row:n})=>[b((p(),c(r,{type:"primary",link:"",onClick:F=>$(n.id)},{default:a(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/add"]]]),b((p(),c(r,{type:"primary",link:"",onClick:F=>q(n)},{default:a(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/edit"]]]),n.pid!==0?b((p(),c(r,{key:0,type:"danger",link:"",onClick:F=>I(n.id)},{default:a(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/delete"]]]):P("",!0)]),_:1})]),_:1},8,["data"])),[[A,i(w)]])]),_:1}),i(v)?(p(),c(ue,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=n=>v.value=!1)},null,512)):P("",!0)])}}});export{Ce as default};
+========
+import{o as K,ap as G,n as E,be as H,q as p,r as J,v as t,D as a,b9 as Q,u as i,b6 as W,b7 as X,b8 as Y,bm as Z,bn as ee,K as te,L as s,bg as ae,s as L,ac as b,O as c,bj as le,bk as ne,T as N,br as oe,P,bi as se,a8 as x,M as V,ba as ie}from"./.pnpm-BadRMC3e.js";import{c as de,i as re}from"./index-C53kWH2_.js";import{e as pe,f as me}from"./department-drKzCnRw.js";import{_ as ue}from"./edit.vue_vue_type_script_setup_true_lang-DhQJmfke.js";import"./index-ByXR3YHf.js";import"./useDictOptions-D9FsmJj0.js";const fe={class:"department"},ce=K({name:"department"}),Ce=K({...ce,setup(_e){const D=x(),_=x(),R=x();let k=!1;const w=V(!1),g=V([]),m=ie({status:"",name:""}),v=V(!1),u=async()=>{w.value=!0,g.value=await pe(m),w.value=!1},S=()=>{var l;(l=R.value)==null||l.resetFields(),u()},$=async l=>{var e,o;v.value=!0,await E(),l&&((e=_.value)==null||e.setFormData({pid:l})),(o=_.value)==null||o.open("add")},q=async l=>{var e,o;v.value=!0,await E(),(e=_.value)==null||e.open("edit"),(o=_.value)==null||o.getDetail(l)},I=async l=>{await re.confirm("确定要删除?"),await me({id:l}),u()},T=()=>{k=!k,h(g.value,k)},h=(l,e=!0)=>{var o;for(const d in l)(o=D.value)==null||o.toggleRowExpansion(l[d],e),l[d].children&&h(l[d].children,e)};return G(async()=>{await u(),E(()=>{T()})}),(l,e)=>{const o=X,d=W,C=ee,M=Z,r=te,O=Q,B=ae,U=de,f=ne,j=oe,z=le,y=H("perms"),A=se;return p(),J("div",fe,[t(B,{class:"!border-none",shadow:"never"},{default:a(()=>[t(O,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(m),inline:!0},{default:a(()=>[t(d,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:a(()=>[t(o,{modelValue:i(m).name,"onUpdate:modelValue":e[0]||(e[0]=n=>i(m).name=n),placeholder:"输入部门名称",clearable:"",onKeyup:Y(u,["enter"])},null,8,["modelValue"])]),_:1}),t(d,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:a(()=>[t(M,{modelValue:i(m).status,"onUpdate:modelValue":e[1]||(e[1]=n=>i(m).status=n)},{default:a(()=>[t(C,{label:"全部",value:""}),t(C,{label:"正常",value:"1"}),t(C,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(d,null,{default:a(()=>[t(r,{type:"primary",onClick:u},{default:a(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(r,{onClick:S},{default:a(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(B,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[L("div",null,[b((p(),c(r,{type:"primary",onClick:e[2]||(e[2]=n=>$())},{icon:a(()=>[t(U,{name:"el-icon-Plus"})]),default:a(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[y,["dept.dept/add"]]]),t(r,{onClick:T},{default:a(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),b((p(),c(z,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(g),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:a(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:a(()=>[...e[8]||(e[8]=[L("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:a(({row:n})=>[s(N(n.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:a(({row:n})=>[t(j,{class:"ml-2",type:n.status?"primary":"danger"},{default:a(()=>[s(N(n.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:a(({row:n})=>[b((p(),c(r,{type:"primary",link:"",onClick:F=>$(n.id)},{default:a(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/add"]]]),b((p(),c(r,{type:"primary",link:"",onClick:F=>q(n)},{default:a(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/edit"]]]),n.pid!==0?b((p(),c(r,{key:0,type:"danger",link:"",onClick:F=>I(n.id)},{default:a(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/delete"]]]):P("",!0)]),_:1})]),_:1},8,["data"])),[[A,i(w)]])]),_:1}),i(v)?(p(),c(ue,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=n=>v.value=!1)},null,512)):P("",!0)])}}});export{Ce as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-DYGf5UVd.js
diff --git a/server/public/admin/assets/index-DPM6i5Y-.js b/server/public/admin/assets/index-DPM6i5Y-.js
index f14e4d346..523731e96 100644
--- a/server/public/admin/assets/index-DPM6i5Y-.js
+++ b/server/public/admin/assets/index-DPM6i5Y-.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DPM6i5Y-.js
import{o as te,q as g,r as z,v as l,D as t,b9 as xe,u as o,b6 as Ce,b7 as De,b8 as W,bm as Ee,bn as Re,K as Ue,L as i,bg as Fe,s as w,ac as Z,O as x,bj as Ye,bk as $e,T as h,br as Me,bi as he,C as T,J as Te,bc as He,bf as Le,bt as Ne,P as qe,B as Se,bp as Be,M as u}from"./.pnpm-BadRMC3e.js";import{_ as Ke}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{f as Pe,a as ze,b as Ae,h as Ie,g as je,c as Oe,d as Ge,e as Je}from"./fans-B03EiF7U.js";import{u as Xe}from"./usePaging-DMqUvFG-.js";import{i as ee}from"./index-C360OAjQ.js";import{d as le}from"./dayjs-Dr2Em-pV.js";const Qe={class:"fans-management"},We={class:"mb-4"},Ze={key:1,class:"text-gray-400"},el={class:"flex mt-4 justify-end"},ll={class:"mb-4"},tl={key:0,class:"text-center mt-4"},al=te({name:"fansManagement"}),ml=te({...al,setup(ol){const ae=n=>{if(!n)return"-";const e=String(n).length===10?Number(n)*1e3:Number(n);return le(e).format("YYYY-MM-DD HH:mm:ss")},f=u({name:"",phone:"",gender:"",status:""}),{pager:k,getLists:C,resetParams:oe,resetPage:H}=Xe({fetchFun:Pe,params:f.value}),b=u(!1),D=u("add"),L=u(),N=u(!1),d=u({id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""}),ne={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"手机号格式不正确",trigger:"blur"}],id_card:[{pattern:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:"身份证号格式不正确",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}]},ie=()=>{D.value="add",b.value=!0},de=n=>{D.value="edit",d.value={id:n.id,name:n.name,phone:n.phone,id_card:n.id_card,age:n.age,gender:n.gender,status:n.status,remark:n.remark},b.value=!0},se=()=>{var n;d.value={id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""},(n=L.value)==null||n.resetFields()},re=async()=>{var n;await((n=L.value)==null?void 0:n.validate()),N.value=!0;try{D.value==="add"?await ze(d.value):await Ae(d.value),b.value=!1,C()}catch{}finally{N.value=!1}},ue=async n=>{await ee.confirm("确定要删除该粉丝吗?");try{await Ie({id:n}),C()}catch{}},E=u(!1),R=u(null),y=u([]),q=u(!1),A=u(0),c=u(1),me={1:"",2:"success",3:"info",4:"warning",5:"danger"},pe=n=>{R.value=n,E.value=!0,c.value=1,y.value=[],U()},U=async()=>{q.value=!0;try{const n=await je({fan_id:R.value.id,page_no:c.value,page_size:15});c.value===1?y.value=n.lists||[]:y.value=[...y.value,...n.lists||[]],A.value=n.count||0}catch(n){console.error("获取回访记录失败:",n)}finally{q.value=!1}},fe=()=>{c.value++,U()},V=u(!1),F=u("add"),S=u(),B=u(!1),m=u({id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""}),ve={visit_type:[{required:!0,message:"请选择回访类型",trigger:"change"}],visit_time:[{required:!0,message:"请选择回访时间",trigger:"change"}],content:[{required:!0,message:"请输入回访内容",trigger:"blur"}]},_e=()=>{F.value="add",m.value={id:0,fan_id:R.value.id,visit_type:1,visit_time:le().format("YYYY-MM-DD HH:mm:ss"),content:"",result:"",next_visit_time:""},V.value=!0},ge=n=>{F.value="edit",m.value={id:n.id,fan_id:n.fan_id,visit_type:n.visit_type,visit_time:n.visit_time_text||"",content:n.content||"",result:n.result||"",next_visit_time:n.next_visit_time_text||""},V.value=!0},be=()=>{var n;m.value={id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""},(n=S.value)==null||n.resetFields()},Ve=async()=>{var n;await((n=S.value)==null?void 0:n.validate()),B.value=!0;try{F.value==="add"?await Oe(m.value):await Ge(m.value),V.value=!1,c.value=1,U()}catch{}finally{B.value=!1}},ye=async n=>{await ee.confirm("确定要删除该回访记录吗?");try{await Je({id:n}),c.value=1,U()}catch{}};return C(),(n,e)=>{var Q;const _=De,r=Ce,v=Re,K=Ee,p=Ue,P=xe,I=Fe,s=$e,Y=Me,j=Ye,ce=Ke,ke=Te,$=Le,O=He,G=Ne,we=Se,J=Be,X=he;return g(),z("div",Qe,[l(I,{class:"!border-none",shadow:"never"},{default:t(()=>[l(P,{class:"ls-form",model:o(f),inline:""},{default:t(()=>[l(r,{class:"w-[280px]",label:"姓名"},{default:t(()=>[l(_,{placeholder:"请输入姓名",modelValue:o(f).name,"onUpdate:modelValue":e[0]||(e[0]=a=>o(f).name=a),clearable:"",onKeyup:W(o(H),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[280px]",label:"手机号"},{default:t(()=>[l(_,{placeholder:"请输入手机号",modelValue:o(f).phone,"onUpdate:modelValue":e[1]||(e[1]=a=>o(f).phone=a),clearable:"",onKeyup:W(o(H),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[180px]",label:"性别"},{default:t(()=>[l(K,{modelValue:o(f).gender,"onUpdate:modelValue":e[2]||(e[2]=a=>o(f).gender=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"男",value:1}),l(v,{label:"女",value:2})]),_:1},8,["modelValue"])]),_:1}),l(r,{class:"w-[180px]",label:"状态"},{default:t(()=>[l(K,{modelValue:o(f).status,"onUpdate:modelValue":e[3]||(e[3]=a=>o(f).status=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"启用",value:1}),l(v,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),l(r,null,{default:t(()=>[l(p,{type:"primary",onClick:o(H)},{default:t(()=>[...e[22]||(e[22]=[i("查询",-1)])]),_:1},8,["onClick"]),l(p,{onClick:o(oe)},{default:t(()=>[...e[23]||(e[23]=[i("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),l(I,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[w("div",We,[l(p,{type:"primary",onClick:ie},{default:t(()=>[...e[24]||(e[24]=[i("新增粉丝",-1)])]),_:1})]),Z((g(),x(j,{data:o(k).lists,size:"large"},{default:t(()=>[l(s,{label:"ID",prop:"id",width:"70"}),l(s,{label:"姓名",prop:"name","min-width":"100"}),l(s,{label:"手机号",prop:"phone","min-width":"130"}),l(s,{label:"身份证号",prop:"id_card","min-width":"180"}),l(s,{label:"性别",prop:"gender_desc",width:"80"}),l(s,{label:"年龄",prop:"age",width:"70"}),l(s,{label:"备注",prop:"remark","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"登记人",prop:"creator_name","min-width":"100"},{default:t(({row:a})=>[w("span",null,h(a.creator_name||"-"),1)]),_:1}),l(s,{label:"回访次数",width:"90",align:"center"},{default:t(({row:a})=>[a.visit_count>0?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[i(h(a.visit_count),1)]),_:2},1024)):(g(),z("span",Ze,"0"))]),_:1}),l(s,{label:"状态",width:"80"},{default:t(({row:a})=>[a.status==1?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[...e[25]||(e[25]=[i("启用",-1)])]),_:1})):(g(),x(Y,{key:1,type:"danger"},{default:t(()=>[...e[26]||(e[26]=[i("禁用",-1)])]),_:1}))]),_:1}),l(s,{label:"创建时间","min-width":"170"},{default:t(({row:a})=>[w("span",null,h(ae(a.create_time)),1)]),_:1}),l(s,{label:"操作",width:"220",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:M=>de(a)},{default:t(()=>[...e[27]||(e[27]=[i("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"success",link:"",onClick:M=>pe(a)},{default:t(()=>[...e[28]||(e[28]=[i("回访记录",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:M=>ue(a.id)},{default:t(()=>[...e[29]||(e[29]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[X,o(k).loading]]),w("div",el,[l(ce,{modelValue:o(k),"onUpdate:modelValue":e[4]||(e[4]=a=>T(k)?k.value=a:null),onChange:o(C)},null,8,["modelValue","onChange"])])]),_:1}),l(G,{modelValue:o(b),"onUpdate:modelValue":e[13]||(e[13]=a=>T(b)?b.value=a:null),title:o(D)==="add"?"新增粉丝":"编辑粉丝",width:"600px","close-on-click-modal":!1,onClosed:se},{footer:t(()=>[l(p,{onClick:e[12]||(e[12]=a=>b.value=!1)},{default:t(()=>[...e[34]||(e[34]=[i("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(N),onClick:re},{default:t(()=>[...e[35]||(e[35]=[i("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(P,{ref_key:"fanFormRef",ref:L,model:o(d),rules:ne,"label-width":"100px"},{default:t(()=>[l(r,{label:"姓名",prop:"name"},{default:t(()=>[l(_,{modelValue:o(d).name,"onUpdate:modelValue":e[5]||(e[5]=a=>o(d).name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),l(r,{label:"手机号",prop:"phone"},{default:t(()=>[l(_,{modelValue:o(d).phone,"onUpdate:modelValue":e[6]||(e[6]=a=>o(d).phone=a),placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"])]),_:1}),l(r,{label:"身份证号",prop:"id_card"},{default:t(()=>[l(_,{modelValue:o(d).id_card,"onUpdate:modelValue":e[7]||(e[7]=a=>o(d).id_card=a),placeholder:"请输入身份证号码",maxlength:"18"},null,8,["modelValue"])]),_:1}),l(r,{label:"年龄",prop:"age"},{default:t(()=>[l(ke,{modelValue:o(d).age,"onUpdate:modelValue":e[8]||(e[8]=a=>o(d).age=a),min:0,max:150},null,8,["modelValue"])]),_:1}),l(r,{label:"性别",prop:"gender"},{default:t(()=>[l(O,{modelValue:o(d).gender,"onUpdate:modelValue":e[9]||(e[9]=a=>o(d).gender=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[30]||(e[30]=[i("男",-1)])]),_:1}),l($,{label:2},{default:t(()=>[...e[31]||(e[31]=[i("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"状态",prop:"status"},{default:t(()=>[l(O,{modelValue:o(d).status,"onUpdate:modelValue":e[10]||(e[10]=a=>o(d).status=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[32]||(e[32]=[i("启用",-1)])]),_:1}),l($,{label:0},{default:t(()=>[...e[33]||(e[33]=[i("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"备注",prop:"remark"},{default:t(()=>[l(_,{modelValue:o(d).remark,"onUpdate:modelValue":e[11]||(e[11]=a=>o(d).remark=a),type:"textarea",rows:3,placeholder:"请输入备注",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(we,{modelValue:o(E),"onUpdate:modelValue":e[14]||(e[14]=a=>T(E)?E.value=a:null),title:`回访记录 - ${((Q=o(R))==null?void 0:Q.name)||""}`,size:"700px","close-on-click-modal":!1},{default:t(()=>[w("div",ll,[l(p,{type:"primary",onClick:_e},{default:t(()=>[...e[36]||(e[36]=[i("新增回访记录",-1)])]),_:1})]),Z((g(),x(j,{data:o(y),size:"large"},{default:t(()=>[l(s,{label:"回访类型",width:"100"},{default:t(({row:a})=>[l(Y,{type:me[a.visit_type]},{default:t(()=>[i(h(a.visit_type_desc),1)]),_:2},1032,["type"])]),_:1}),l(s,{label:"回访时间",prop:"visit_time_text","min-width":"150"}),l(s,{label:"回访内容",prop:"content","min-width":"200","show-overflow-tooltip":""}),l(s,{label:"回访结果",prop:"result","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"下次回访",prop:"next_visit_time_text","min-width":"150"}),l(s,{label:"操作人",prop:"operator_name",width:"100"}),l(s,{label:"操作",width:"120",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:M=>ge(a)},{default:t(()=>[...e[37]||(e[37]=[i("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:M=>ye(a.id)},{default:t(()=>[...e[38]||(e[38]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[X,o(q)]]),o(A)>o(y).length?(g(),z("div",tl,[l(p,{link:"",type:"primary",onClick:fe},{default:t(()=>[...e[39]||(e[39]=[i("加载更多",-1)])]),_:1})])):qe("",!0)]),_:1},8,["modelValue","title"]),l(G,{modelValue:o(V),"onUpdate:modelValue":e[21]||(e[21]=a=>T(V)?V.value=a:null),title:o(F)==="add"?"新增回访记录":"编辑回访记录",width:"600px","close-on-click-modal":!1,onClosed:be},{footer:t(()=>[l(p,{onClick:e[20]||(e[20]=a=>V.value=!1)},{default:t(()=>[...e[40]||(e[40]=[i("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(B),onClick:Ve},{default:t(()=>[...e[41]||(e[41]=[i("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(P,{ref_key:"visitFormRef",ref:S,model:o(m),rules:ve,"label-width":"120px"},{default:t(()=>[l(r,{label:"回访类型",prop:"visit_type"},{default:t(()=>[l(K,{modelValue:o(m).visit_type,"onUpdate:modelValue":e[15]||(e[15]=a=>o(m).visit_type=a),placeholder:"请选择回访类型"},{default:t(()=>[l(v,{label:"电话",value:1}),l(v,{label:"微信",value:2}),l(v,{label:"短信",value:3}),l(v,{label:"上门",value:4}),l(v,{label:"其他",value:5})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"回访时间",prop:"visit_time"},{default:t(()=>[l(J,{modelValue:o(m).visit_time,"onUpdate:modelValue":e[16]||(e[16]=a=>o(m).visit_time=a),type:"datetime",placeholder:"请选择回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(r,{label:"回访内容",prop:"content"},{default:t(()=>[l(_,{modelValue:o(m).content,"onUpdate:modelValue":e[17]||(e[17]=a=>o(m).content=a),type:"textarea",rows:4,placeholder:"请输入回访内容"},null,8,["modelValue"])]),_:1}),l(r,{label:"回访结果",prop:"result"},{default:t(()=>[l(_,{modelValue:o(m).result,"onUpdate:modelValue":e[18]||(e[18]=a=>o(m).result=a),type:"textarea",rows:3,placeholder:"请输入回访结果"},null,8,["modelValue"])]),_:1}),l(r,{label:"下次回访时间",prop:"next_visit_time"},{default:t(()=>[l(J,{modelValue:o(m).next_visit_time,"onUpdate:modelValue":e[19]||(e[19]=a=>o(m).next_visit_time=a),type:"datetime",placeholder:"请选择下次回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}});export{ml as default};
+========
+import{o as te,q as g,r as z,v as l,D as t,b9 as xe,u as o,b6 as Ce,b7 as De,b8 as W,bm as Ee,bn as Re,K as Ue,L as i,bg as Fe,s as w,ac as Z,O as x,bj as Ye,bk as $e,T as h,br as Me,bi as he,C as T,J as Te,bc as He,bf as Le,bt as Ne,P as qe,B as Se,bp as Be,M as u}from"./.pnpm-BadRMC3e.js";import{_ as Ke}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{f as Pe,a as ze,b as Ae,h as Ie,g as je,c as Oe,d as Ge,e as Je}from"./fans-DPtGjUpC.js";import{u as Xe}from"./usePaging-DMqUvFG-.js";import{i as ee}from"./index-C53kWH2_.js";import{d as le}from"./dayjs-Dr2Em-pV.js";const Qe={class:"fans-management"},We={class:"mb-4"},Ze={key:1,class:"text-gray-400"},el={class:"flex mt-4 justify-end"},ll={class:"mb-4"},tl={key:0,class:"text-center mt-4"},al=te({name:"fansManagement"}),ml=te({...al,setup(ol){const ae=n=>{if(!n)return"-";const e=String(n).length===10?Number(n)*1e3:Number(n);return le(e).format("YYYY-MM-DD HH:mm:ss")},f=u({name:"",phone:"",gender:"",status:""}),{pager:k,getLists:C,resetParams:oe,resetPage:H}=Xe({fetchFun:Pe,params:f.value}),b=u(!1),D=u("add"),L=u(),N=u(!1),d=u({id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""}),ne={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"手机号格式不正确",trigger:"blur"}],id_card:[{pattern:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,message:"身份证号格式不正确",trigger:"blur"}],gender:[{required:!0,message:"请选择性别",trigger:"change"}]},ie=()=>{D.value="add",b.value=!0},de=n=>{D.value="edit",d.value={id:n.id,name:n.name,phone:n.phone,id_card:n.id_card,age:n.age,gender:n.gender,status:n.status,remark:n.remark},b.value=!0},se=()=>{var n;d.value={id:0,name:"",phone:"",id_card:"",age:0,gender:1,status:1,remark:""},(n=L.value)==null||n.resetFields()},re=async()=>{var n;await((n=L.value)==null?void 0:n.validate()),N.value=!0;try{D.value==="add"?await ze(d.value):await Ae(d.value),b.value=!1,C()}catch{}finally{N.value=!1}},ue=async n=>{await ee.confirm("确定要删除该粉丝吗?");try{await Ie({id:n}),C()}catch{}},E=u(!1),R=u(null),y=u([]),q=u(!1),A=u(0),c=u(1),me={1:"",2:"success",3:"info",4:"warning",5:"danger"},pe=n=>{R.value=n,E.value=!0,c.value=1,y.value=[],U()},U=async()=>{q.value=!0;try{const n=await je({fan_id:R.value.id,page_no:c.value,page_size:15});c.value===1?y.value=n.lists||[]:y.value=[...y.value,...n.lists||[]],A.value=n.count||0}catch(n){console.error("获取回访记录失败:",n)}finally{q.value=!1}},fe=()=>{c.value++,U()},V=u(!1),F=u("add"),S=u(),B=u(!1),m=u({id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""}),ve={visit_type:[{required:!0,message:"请选择回访类型",trigger:"change"}],visit_time:[{required:!0,message:"请选择回访时间",trigger:"change"}],content:[{required:!0,message:"请输入回访内容",trigger:"blur"}]},_e=()=>{F.value="add",m.value={id:0,fan_id:R.value.id,visit_type:1,visit_time:le().format("YYYY-MM-DD HH:mm:ss"),content:"",result:"",next_visit_time:""},V.value=!0},ge=n=>{F.value="edit",m.value={id:n.id,fan_id:n.fan_id,visit_type:n.visit_type,visit_time:n.visit_time_text||"",content:n.content||"",result:n.result||"",next_visit_time:n.next_visit_time_text||""},V.value=!0},be=()=>{var n;m.value={id:0,fan_id:0,visit_type:1,visit_time:"",content:"",result:"",next_visit_time:""},(n=S.value)==null||n.resetFields()},Ve=async()=>{var n;await((n=S.value)==null?void 0:n.validate()),B.value=!0;try{F.value==="add"?await Oe(m.value):await Ge(m.value),V.value=!1,c.value=1,U()}catch{}finally{B.value=!1}},ye=async n=>{await ee.confirm("确定要删除该回访记录吗?");try{await Je({id:n}),c.value=1,U()}catch{}};return C(),(n,e)=>{var Q;const _=De,r=Ce,v=Re,K=Ee,p=Ue,P=xe,I=Fe,s=$e,Y=Me,j=Ye,ce=Ke,ke=Te,$=Le,O=He,G=Ne,we=Se,J=Be,X=he;return g(),z("div",Qe,[l(I,{class:"!border-none",shadow:"never"},{default:t(()=>[l(P,{class:"ls-form",model:o(f),inline:""},{default:t(()=>[l(r,{class:"w-[280px]",label:"姓名"},{default:t(()=>[l(_,{placeholder:"请输入姓名",modelValue:o(f).name,"onUpdate:modelValue":e[0]||(e[0]=a=>o(f).name=a),clearable:"",onKeyup:W(o(H),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[280px]",label:"手机号"},{default:t(()=>[l(_,{placeholder:"请输入手机号",modelValue:o(f).phone,"onUpdate:modelValue":e[1]||(e[1]=a=>o(f).phone=a),clearable:"",onKeyup:W(o(H),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(r,{class:"w-[180px]",label:"性别"},{default:t(()=>[l(K,{modelValue:o(f).gender,"onUpdate:modelValue":e[2]||(e[2]=a=>o(f).gender=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"男",value:1}),l(v,{label:"女",value:2})]),_:1},8,["modelValue"])]),_:1}),l(r,{class:"w-[180px]",label:"状态"},{default:t(()=>[l(K,{modelValue:o(f).status,"onUpdate:modelValue":e[3]||(e[3]=a=>o(f).status=a),placeholder:"请选择",clearable:""},{default:t(()=>[l(v,{label:"启用",value:1}),l(v,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),l(r,null,{default:t(()=>[l(p,{type:"primary",onClick:o(H)},{default:t(()=>[...e[22]||(e[22]=[i("查询",-1)])]),_:1},8,["onClick"]),l(p,{onClick:o(oe)},{default:t(()=>[...e[23]||(e[23]=[i("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),l(I,{class:"!border-none mt-4",shadow:"never"},{default:t(()=>[w("div",We,[l(p,{type:"primary",onClick:ie},{default:t(()=>[...e[24]||(e[24]=[i("新增粉丝",-1)])]),_:1})]),Z((g(),x(j,{data:o(k).lists,size:"large"},{default:t(()=>[l(s,{label:"ID",prop:"id",width:"70"}),l(s,{label:"姓名",prop:"name","min-width":"100"}),l(s,{label:"手机号",prop:"phone","min-width":"130"}),l(s,{label:"身份证号",prop:"id_card","min-width":"180"}),l(s,{label:"性别",prop:"gender_desc",width:"80"}),l(s,{label:"年龄",prop:"age",width:"70"}),l(s,{label:"备注",prop:"remark","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"登记人",prop:"creator_name","min-width":"100"},{default:t(({row:a})=>[w("span",null,h(a.creator_name||"-"),1)]),_:1}),l(s,{label:"回访次数",width:"90",align:"center"},{default:t(({row:a})=>[a.visit_count>0?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[i(h(a.visit_count),1)]),_:2},1024)):(g(),z("span",Ze,"0"))]),_:1}),l(s,{label:"状态",width:"80"},{default:t(({row:a})=>[a.status==1?(g(),x(Y,{key:0,type:"success"},{default:t(()=>[...e[25]||(e[25]=[i("启用",-1)])]),_:1})):(g(),x(Y,{key:1,type:"danger"},{default:t(()=>[...e[26]||(e[26]=[i("禁用",-1)])]),_:1}))]),_:1}),l(s,{label:"创建时间","min-width":"170"},{default:t(({row:a})=>[w("span",null,h(ae(a.create_time)),1)]),_:1}),l(s,{label:"操作",width:"220",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:M=>de(a)},{default:t(()=>[...e[27]||(e[27]=[i("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"success",link:"",onClick:M=>pe(a)},{default:t(()=>[...e[28]||(e[28]=[i("回访记录",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:M=>ue(a.id)},{default:t(()=>[...e[29]||(e[29]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[X,o(k).loading]]),w("div",el,[l(ce,{modelValue:o(k),"onUpdate:modelValue":e[4]||(e[4]=a=>T(k)?k.value=a:null),onChange:o(C)},null,8,["modelValue","onChange"])])]),_:1}),l(G,{modelValue:o(b),"onUpdate:modelValue":e[13]||(e[13]=a=>T(b)?b.value=a:null),title:o(D)==="add"?"新增粉丝":"编辑粉丝",width:"600px","close-on-click-modal":!1,onClosed:se},{footer:t(()=>[l(p,{onClick:e[12]||(e[12]=a=>b.value=!1)},{default:t(()=>[...e[34]||(e[34]=[i("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(N),onClick:re},{default:t(()=>[...e[35]||(e[35]=[i("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(P,{ref_key:"fanFormRef",ref:L,model:o(d),rules:ne,"label-width":"100px"},{default:t(()=>[l(r,{label:"姓名",prop:"name"},{default:t(()=>[l(_,{modelValue:o(d).name,"onUpdate:modelValue":e[5]||(e[5]=a=>o(d).name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),l(r,{label:"手机号",prop:"phone"},{default:t(()=>[l(_,{modelValue:o(d).phone,"onUpdate:modelValue":e[6]||(e[6]=a=>o(d).phone=a),placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"])]),_:1}),l(r,{label:"身份证号",prop:"id_card"},{default:t(()=>[l(_,{modelValue:o(d).id_card,"onUpdate:modelValue":e[7]||(e[7]=a=>o(d).id_card=a),placeholder:"请输入身份证号码",maxlength:"18"},null,8,["modelValue"])]),_:1}),l(r,{label:"年龄",prop:"age"},{default:t(()=>[l(ke,{modelValue:o(d).age,"onUpdate:modelValue":e[8]||(e[8]=a=>o(d).age=a),min:0,max:150},null,8,["modelValue"])]),_:1}),l(r,{label:"性别",prop:"gender"},{default:t(()=>[l(O,{modelValue:o(d).gender,"onUpdate:modelValue":e[9]||(e[9]=a=>o(d).gender=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[30]||(e[30]=[i("男",-1)])]),_:1}),l($,{label:2},{default:t(()=>[...e[31]||(e[31]=[i("女",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"状态",prop:"status"},{default:t(()=>[l(O,{modelValue:o(d).status,"onUpdate:modelValue":e[10]||(e[10]=a=>o(d).status=a)},{default:t(()=>[l($,{label:1},{default:t(()=>[...e[32]||(e[32]=[i("启用",-1)])]),_:1}),l($,{label:0},{default:t(()=>[...e[33]||(e[33]=[i("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"备注",prop:"remark"},{default:t(()=>[l(_,{modelValue:o(d).remark,"onUpdate:modelValue":e[11]||(e[11]=a=>o(d).remark=a),type:"textarea",rows:3,placeholder:"请输入备注",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(we,{modelValue:o(E),"onUpdate:modelValue":e[14]||(e[14]=a=>T(E)?E.value=a:null),title:`回访记录 - ${((Q=o(R))==null?void 0:Q.name)||""}`,size:"700px","close-on-click-modal":!1},{default:t(()=>[w("div",ll,[l(p,{type:"primary",onClick:_e},{default:t(()=>[...e[36]||(e[36]=[i("新增回访记录",-1)])]),_:1})]),Z((g(),x(j,{data:o(y),size:"large"},{default:t(()=>[l(s,{label:"回访类型",width:"100"},{default:t(({row:a})=>[l(Y,{type:me[a.visit_type]},{default:t(()=>[i(h(a.visit_type_desc),1)]),_:2},1032,["type"])]),_:1}),l(s,{label:"回访时间",prop:"visit_time_text","min-width":"150"}),l(s,{label:"回访内容",prop:"content","min-width":"200","show-overflow-tooltip":""}),l(s,{label:"回访结果",prop:"result","min-width":"150","show-overflow-tooltip":""}),l(s,{label:"下次回访",prop:"next_visit_time_text","min-width":"150"}),l(s,{label:"操作人",prop:"operator_name",width:"100"}),l(s,{label:"操作",width:"120",fixed:"right"},{default:t(({row:a})=>[l(p,{type:"primary",link:"",onClick:M=>ge(a)},{default:t(()=>[...e[37]||(e[37]=[i("编辑",-1)])]),_:1},8,["onClick"]),l(p,{type:"danger",link:"",onClick:M=>ye(a.id)},{default:t(()=>[...e[38]||(e[38]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[X,o(q)]]),o(A)>o(y).length?(g(),z("div",tl,[l(p,{link:"",type:"primary",onClick:fe},{default:t(()=>[...e[39]||(e[39]=[i("加载更多",-1)])]),_:1})])):qe("",!0)]),_:1},8,["modelValue","title"]),l(G,{modelValue:o(V),"onUpdate:modelValue":e[21]||(e[21]=a=>T(V)?V.value=a:null),title:o(F)==="add"?"新增回访记录":"编辑回访记录",width:"600px","close-on-click-modal":!1,onClosed:be},{footer:t(()=>[l(p,{onClick:e[20]||(e[20]=a=>V.value=!1)},{default:t(()=>[...e[40]||(e[40]=[i("取消",-1)])]),_:1}),l(p,{type:"primary",loading:o(B),onClick:Ve},{default:t(()=>[...e[41]||(e[41]=[i("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(P,{ref_key:"visitFormRef",ref:S,model:o(m),rules:ve,"label-width":"120px"},{default:t(()=>[l(r,{label:"回访类型",prop:"visit_type"},{default:t(()=>[l(K,{modelValue:o(m).visit_type,"onUpdate:modelValue":e[15]||(e[15]=a=>o(m).visit_type=a),placeholder:"请选择回访类型"},{default:t(()=>[l(v,{label:"电话",value:1}),l(v,{label:"微信",value:2}),l(v,{label:"短信",value:3}),l(v,{label:"上门",value:4}),l(v,{label:"其他",value:5})]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"回访时间",prop:"visit_time"},{default:t(()=>[l(J,{modelValue:o(m).visit_time,"onUpdate:modelValue":e[16]||(e[16]=a=>o(m).visit_time=a),type:"datetime",placeholder:"请选择回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(r,{label:"回访内容",prop:"content"},{default:t(()=>[l(_,{modelValue:o(m).content,"onUpdate:modelValue":e[17]||(e[17]=a=>o(m).content=a),type:"textarea",rows:4,placeholder:"请输入回访内容"},null,8,["modelValue"])]),_:1}),l(r,{label:"回访结果",prop:"result"},{default:t(()=>[l(_,{modelValue:o(m).result,"onUpdate:modelValue":e[18]||(e[18]=a=>o(m).result=a),type:"textarea",rows:3,placeholder:"请输入回访结果"},null,8,["modelValue"])]),_:1}),l(r,{label:"下次回访时间",prop:"next_visit_time"},{default:t(()=>[l(J,{modelValue:o(m).next_visit_time,"onUpdate:modelValue":e[19]||(e[19]=a=>o(m).next_visit_time=a),type:"datetime",placeholder:"请选择下次回访时间","value-format":"YYYY-MM-DD HH:mm:ss",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}});export{ml as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-DvQN8Qia.js
diff --git a/server/public/admin/assets/index-DRRCNrxz.js b/server/public/admin/assets/index-DRRCNrxz.js
index 45e49263a..60f101bee 100644
--- a/server/public/admin/assets/index-DRRCNrxz.js
+++ b/server/public/admin/assets/index-DRRCNrxz.js
@@ -1,2 +1,7 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DRRCNrxz.js
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-lyRL22p6.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/file-DAA7Hwft.js","assets/index-C360OAjQ.js","assets/index-ynJZC2Ez.css","assets/patient-BgHF8SY_.js","assets/tcm-BvgN1Mad.js","assets/im-business-message-parse-DoOLrDi4.js","assets/dayjs-Dr2Em-pV.js","assets/@tencentcloud/chat-C6eYQUo-.js","assets/@tencentcloud/chat-uikit-engine-TY6XO9dW.js","assets/tim-upload-plugin-BUYgI52i.js","assets/tim-profanity-filter-plugin-DM0QTuQO.js","assets/@tencentcloud/call-engine-js-DFqo23EQ.js","assets/rtc-detect-BahOTccE.js","assets/index-BqRj5hg7.css","assets/edit-DcWYtxZL.js","assets/perm-Bld5tS_J.js","assets/DailyMatrix-Ul2kFeS6.js","assets/picker-BV4TmQgU.js","assets/index-2cRJ7Pdu.js","assets/index-B3imPWFk.css","assets/index-CARk4iLN.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-DcSBJkxh.js","assets/index-D0f1Mn00.css","assets/index-BHk2qnVA.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-xc20843U.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-DEkFP89f.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DkG-bj5N.js","assets/RecordingPlaybackBlock-C05dVpO0.js","assets/RecordingVideoPlayer-Lo03HGYz.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-BfhOODqn.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-CxGhWCjD.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-DClURTxz.js","assets/doctor-BqTrXcfF.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-nGgu5OlD.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-DCvdZKjF.js","assets/PrescriptionOrderDetailDrawer-U3_w-Wbd.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-ykEzOnay.js","assets/index-BE-7WCNj.js","assets/medicine-SFe5reN2.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
import{o as Ze,R as Je,ap as Xe,n as et,aq as tt,be as at,q as d,r as h,s,T as k,u as a,ae as W,v as r,D as v,w as nt,bA as st,b8 as lt,C as ue,b7 as it,ac as F,bi as ot,F as qe,G as ut,L as D,O as C,br as dt,P as q,aw as rt,b5 as ct,as as vt,a1 as ft,d6 as pt,bB as mt,K as gt,ab as _t,bt as ht,a4 as Ie,cb as xe,al as Re,M as o,p as Y}from"./.pnpm-BadRMC3e.js";import{r as Te,n as yt,a as St,b as kt}from"./patient-BgHF8SY_.js";import bt from"./NoteTimeline-nGgu5OlD.js";import Ct from"./PatientInfoCard-Rjxno8JG.js";import wt from"./PatientCaseCard-Cf_k3C2_.js";import Et from"./DailyMatrix-Ul2kFeS6.js";import{l as Dt}from"./doctor-BqTrXcfF.js";import{T as qt}from"./tcm-BvgN1Mad.js";import{i as g,_ as It}from"./index-C360OAjQ.js";import{f as xt}from"./diag-display-DCz_VAqj.js";import"./picker-BV4TmQgU.js";import"./index-2cRJ7Pdu.js";import"./index-CARk4iLN.js";import"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import"./index-DcSBJkxh.js";import"./index-BHk2qnVA.js";import"./file-DAA7Hwft.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./usePaging-DMqUvFG-.js";import"./perm-Bld5tS_J.js";import"./blood-thresholds-CJ1fqMjh.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./DiagnosisTodoList-xc20843U.js";const Rt={class:"reception-page"},Tt={class:"reception-header"},$t={class:"header-left"},Nt={class:"header-meta"},Vt={class:"header-right"},Pt={class:"live-pill"},Lt={class:"filter-shell"},Mt={class:"filter-tabs"},zt={class:"main-area"},At={class:"queue-col"},Bt={class:"queue-panel"},Ft={class:"queue-head"},Ot={class:"queue-title"},Ut={class:"queue-meta"},jt=["onClick"],Gt={class:"row-name"},Kt={class:"name-line"},Qt={class:"name-meta"},Wt={class:"time-line"},Yt=["disabled","onClick"],Ht=["onClick"],Zt={key:0},Jt={key:1,class:"no-more"},Xt={class:"sidebar"},ea={key:0,class:"placeholder-card"},ta={class:"card note-card"},aa={class:"card metric-card"},na={key:0,class:"float-bar"},de=5e3,re=15,sa=Ze({__name:"index",setup(la){const $e=xe(()=>Re(()=>import("./index-lyRL22p6.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]))),Ne=xe(()=>Re(()=>import("./edit-DcWYtxZL.js"),__vite__mapDeps([17,1,2,7,4,5,18,19,20,21,22,23,24,25,26,27,3,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,9,8,45,46,47,48,49,50,51,6,52,53,54,55,56,57,58,59,60,61,62,63,64,65]))),_=o(1),y=o([]),O=o(0),H=o(0),Z=o(0),J=o(1),U=o(!0),j=o(!1),G=o(!1),X=o(!1),c=o(null),p=o(null),ee=o(!1),b=o(""),V=o(!1),P=o(de/1e3),L=o(null);let I=null,x=null,te=!1,M=!1,w=null,K=0,R=0;const ae=o(null),Q=o(null),ce=o(),ve=o(),T=o(!1),z=o(""),ne=o(!1),$=Y(()=>{var e;return((e=p.value)==null?void 0:e.appointment)||{}}),S=Y(()=>{var e;return((e=p.value)==null?void 0:e.diagnosis)||{}}),Ve=Y(()=>{var e;return((e=p.value)==null?void 0:e.doctor_notes)||[]}),Pe=Y(()=>{const e=new Date,t=["周日","周一","周二","周三","周四","周五","周六"][e.getDay()],n=l=>String(l).padStart(2,"0");return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())} ${t}`}),Le=()=>{const e=new Date,t=n=>String(n).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}`},Me=e=>[xt(e.gender),e.age!=null?e.age+"岁":""].filter(n=>n&&n!=="—").join(" "),ze=e=>e?e.replace(/^(\d{2}:\d{2})(:\d{2})?$/,"$1"):"—",se=async(e,t,n)=>{const l=Le(),i=await kt({status:t??_.value,start_date:l,end_date:l,patient_name:(n??b.value)||void 0,page_no:e,page_size:re}),E=(i==null?void 0:i.lists)||(i==null?void 0:i.data)||[],f=Number((i==null?void 0:i.count)??(i==null?void 0:i.total)??0);return{list:E,count:f}},Ae=async(e,t,n)=>{const l=e===1?4:1;try{const{count:i}=await se(1,l,t||void 0);if(n!==K||_.value!==e||b.value!==t)return;l===1?H.value=i:Z.value=i}catch{}},A=async e=>{const t=(e==null?void 0:e.silent)===!0;if(t&&te)return;const n=++K,l=_.value,i=b.value,E=(e==null?void 0:e.autoSelect)??!t;te=!0,t||(G.value=!0);try{J.value=1;const{list:f,count:m}=await se(1,l,i||void 0);if(n!==K||_.value!==l||b.value!==i)return;y.value=f,O.value=m||f.length,l===1?H.value=m:Z.value=m,U.value=f.length>=re&&y.value.length<(m||0),Ae(l,i,n),c.value&&!f.some(ie=>ie.id===c.value)&&(c.value=null,p.value=null),!c.value&&E&&f.length>0&&await fe(f[0])}catch(f){t||console.error("加载队列失败:",f)}finally{n===K&&(G.value=!1,te=!1)}},Be=async()=>{if(j.value||!U.value)return;const e=_.value,t=b.value;j.value=!0;try{const n=J.value+1,{list:l,count:i}=await se(n,e,t||void 0);if(_.value!==e||b.value!==t)return;const E=new Set(y.value.map(m=>m.id)),f=l.filter(m=>!E.has(m.id));y.value=[...y.value,...f],J.value=n,O.value=i||O.value,U.value=l.length>=re&&y.value.length<(i||0)}catch(n){console.error("加载更多失败:",n)}finally{j.value=!1}},Fe=async()=>{if(!c.value||M)return;const e=c.value,t=++R;M=!0;try{const n=await Te({id:e});if(t!==R||c.value!==e)return;p.value=n||p.value}catch{}finally{t===R&&(M=!1)}},fe=async e=>{if(c.value===e.id)return;const t=e.id,n=++R;c.value=e.id,p.value=null,X.value=!0,M=!0,B();try{const l=await Te({id:t});if(n!==R||c.value!==t)return;p.value=l||null}catch(l){console.error("加载详情失败:",l),g.msgError("加载患者详情失败")}finally{n===R&&(X.value=!1,M=!1)}},pe=async e=>{_.value!==e&&(_.value=e,c.value=null,p.value=null,await A(),B())},me=async()=>{c.value=null,p.value=null,await A(),B()},Oe=async e=>{var t;if(!e.patient_id){g.msgWarning("患者信息不完整");return}try{const n=await qt({patient_id:e.patient_id,diagnosis_id:e.diagnosis_id||e.id});(t=ce.value)==null||t.open({patientId:e.patient_id,patientName:e.patient_name,diagnosisId:e.diagnosis_id||e.id,signatureData:n})}catch(n){console.error("获取通话签名失败:",n),g.msgError((n==null?void 0:n.message)||"获取通话签名失败")}},Ue=async e=>{if(!L.value){L.value=e.id;try{await yt({id:e.id}),g.msgSuccess(`已通知医助 ${e.assistant_name||""}`),await N()}catch(t){g.msgError((t==null?void 0:t.message)||"通知失败")}finally{L.value=null}}},je=()=>{var e,t;(e=S.value)!=null&&e.patient_id&&((t=ve.value)==null||t.open("edit",S.value.patient_id))},Ge=async()=>{await N()},N=async()=>{const e=c.value;await A({silent:!0,autoSelect:!1}),e&&c.value===e&&await Fe(),B()},Ke=async()=>{var e;if((e=$.value)!=null&&e.id){try{await g.confirm("确认将该患者标记为「已完成接诊」?此操作不可撤销。")}catch{return}ee.value=!0;try{await Dt({id:$.value.id}),g.msgSuccess("已完成接诊"),c.value=null,p.value=null,await A({autoSelect:!0}),B()}catch(t){g.msgError((t==null?void 0:t.message)||"操作失败")}finally{ee.value=!1}}},Qe=async()=>{var n;const e=(n=S.value)==null?void 0:n.id;if(!e){g.msgWarning("当前患者无诊单,无法添加备注");return}const t=z.value.trim();if(!t){g.msgWarning("请输入备注内容");return}ne.value=!0;try{await St({diagnosis_id:e,content:t}),g.msgSuccess("备注保存成功"),z.value="",T.value=!1,await N()}catch(l){g.msgError((l==null?void 0:l.message)||"保存失败")}finally{ne.value=!1}},We=()=>{P.value=de/1e3},Ye=()=>{x&&clearInterval(x),We(),x=setInterval(()=>{V.value||(P.value>1?P.value-=1:P.value=1)},1e3)},ge=()=>{I&&clearTimeout(I),!V.value&&(Ye(),I=setTimeout(async()=>{await N()},de))},B=()=>{ge()},He=()=>{le(),ge()},le=()=>{I&&(clearTimeout(I),I=null),x&&(clearInterval(x),x=null)},_e=()=>{V.value=document.hidden,document.hidden?le():N()},he=e=>{var n;const t=String(((n=e==null?void 0:e.reason)==null?void 0:n.message)||(e==null?void 0:e.reason)||"");/Receiving end does not exist|Could not establish connection/i.test(t)&&e.preventDefault()},ye=()=>{!Q.value||!ae.value||(w==null||w.disconnect(),w=new IntersectionObserver(e=>{for(const t of e)t.isIntersecting&&Be()},{root:ae.value,rootMargin:"80px",threshold:0}),w.observe(Q.value))};return Je(Q,()=>ye()),Xe(()=>{A(),He(),document.addEventListener("visibilitychange",_e),window.addEventListener("unhandledrejection",he),et(()=>ye())}),tt(()=>{le(),w==null||w.disconnect(),document.removeEventListener("visibilitychange",_e),window.removeEventListener("unhandledrejection",he)}),(e,t)=>{var ke,be,Ce,we,Ee;const n=nt,l=it,i=dt,E=ft,f=mt,m=gt,ie=ht,Se=ot,oe=at("perms");return d(),h("div",Rt,[s("div",Tt,[s("div",$t,[t[8]||(t[8]=s("h1",{class:"header-title"},"接诊台",-1)),s("div",Nt,k(a(Pe)),1)]),s("div",Vt,[s("div",Pt,[s("span",{class:W(["live-dot",{paused:a(V)}])},null,2),s("span",null,k(a(V)?"已暂停":`${a(P)}s 后刷新`),1)])])]),s("div",Lt,[r(l,{modelValue:a(b),"onUpdate:modelValue":t[0]||(t[0]=u=>ue(b)?b.value=u:null),placeholder:"请输入患者姓名",clearable:"",size:"default",class:"search-input",onKeyup:lt(me,["enter"]),onClear:me},{prefix:v(()=>[r(n,null,{default:v(()=>[r(a(st))]),_:1})]),_:1},8,["modelValue"]),s("div",Mt,[s("span",{class:W(["filter-tab",{active:a(_)===1}]),onClick:t[1]||(t[1]=u=>pe(1))},"待接诊 "+k(a(H))+" 人",3),t[9]||(t[9]=s("span",{class:"filter-sep"},"·",-1)),s("span",{class:W(["filter-tab",{active:a(_)===4}]),onClick:t[2]||(t[2]=u=>pe(4))},"已过号 "+k(a(Z))+" 人",3)])]),s("div",zt,[s("aside",At,[s("div",Bt,[s("div",Ft,[s("span",Ot,k(a(_)===1?"待接诊":"已过号"),1),s("span",Ut,k(a(O))+" 人",1)]),F((d(),h("div",{ref_key:"queueScrollRef",ref:ae,class:"queue-list"},[(d(!0),h(qe,null,ut(a(y),u=>(d(),h("div",{key:u.id,class:W(["queue-row",{active:a(c)===u.id,passed:u.status===4}]),onClick:De=>fe(u)},[s("div",Gt,[s("div",Kt,[D(k(u.patient_name||"未命名")+" ",1),s("span",Qt,k(Me(u)),1),u.status===4?(d(),C(i,{key:0,size:"small",type:"warning",class:"ml-1"},{default:v(()=>[...t[10]||(t[10]=[D("已过号",-1)])]),_:1})):q("",!0)]),s("div",Wt,k(ze(u.appointment_time))+" · 医助 "+k(u.assistant_name||"—"),1)]),s("div",{class:"row-actions",onClick:t[3]||(t[3]=rt(()=>{},["stop"]))},[r(E,{content:"通知医助(企业微信)",placement:"top"},{default:v(()=>[s("button",{class:"row-icon-btn notify",disabled:a(L)===u.id,onClick:De=>Ue(u)},[a(L)===u.id?(d(),C(n,{key:0,class:"is-loading"},{default:v(()=>[r(a(ct))]),_:1})):(d(),C(n,{key:1},{default:v(()=>[r(a(vt))]),_:1}))],8,Yt)]),_:2},1024),r(E,{content:"发起通话",placement:"top"},{default:v(()=>[s("button",{class:"row-icon-btn call",onClick:De=>Oe(u)},[r(n,null,{default:v(()=>[r(a(pt))]),_:1})],8,Ht)]),_:2},1024)])],10,jt))),128)),a(y).length>0?(d(),h("div",{key:0,ref_key:"sentinelRef",ref:Q,class:"scroll-sentinel"},[a(j)?(d(),h("span",Zt,"加载中…")):a(U)?q("",!0):(d(),h("span",Jt,"— 已全部加载 —"))],512)):q("",!0),!a(G)&&a(y).length===0?(d(),C(f,{key:1,description:"暂无待接诊患者","image-size":64})):q("",!0)])),[[Se,a(G)&&a(y).length===0]])])]),F((d(),h("section",Xt,[a(c)?a(p)?(d(),h(qe,{key:1},[r(Ct,{apt:a($),diag:a(S)},null,8,["apt","diag"]),r(wt,{apt:a($),diag:a(S)},null,8,["apt","diag"]),s("div",ta,[t[11]||(t[11]=s("div",{class:"card-title"},"医生备注 & 舌苔照片 & 检查报告",-1)),r(bt,{notes:a(Ve),"diagnosis-id":(ke=a(S))==null?void 0:ke.id,onRefresh:N},null,8,["notes","diagnosis-id"])]),s("div",aa,[t[12]||(t[12]=s("div",{class:"card-title"},"日常记录",-1)),r(Et,{"diagnosis-id":Number(((be=a(S))==null?void 0:be.id)??0),"patient-id":Number(((Ce=a(S))==null?void 0:Ce.patient_id)??0),age:((we=a(S))==null?void 0:we.age)??null,"patient-name":((Ee=a(S))==null?void 0:Ee.patient_name)||"","read-only":!0},null,8,["diagnosis-id","patient-id","age","patient-name"])])],64)):q("",!0):(d(),h("div",ea,[r(f,{description:"请从左侧选择一位待接诊患者"})]))])),[[Se,a(X)&&!a(p)]])]),r(_t,{name:"fade"},{default:v(()=>[a(c)&&a(p)?(d(),h("div",na,[F((d(),C(m,{class:"float-action note",size:"large",onClick:t[4]||(t[4]=u=>T.value=!0)},{default:v(()=>[...t[13]||(t[13]=[D(" 备注 ",-1)])]),_:1})),[[oe,["doctor.appointment/addDoctorNote"]]]),F((d(),C(m,{class:"float-action edit",size:"large",onClick:je},{default:v(()=>[...t[14]||(t[14]=[D(" 编辑病历 ",-1)])]),_:1})),[[oe,["tcm.diagnosis/edit"]]]),a($).status===1||a($).status===4?F((d(),C(m,{key:0,class:"float-action finish",size:"large",loading:a(ee),onClick:Ke},{default:v(()=>[...t[15]||(t[15]=[D(" 完成接诊 ",-1)])]),_:1},8,["loading"])),[[oe,["doctor.appointment/complete"]]]):q("",!0)])):q("",!0)]),_:1}),r(ie,{modelValue:a(T),"onUpdate:modelValue":t[7]||(t[7]=u=>ue(T)?T.value=u:null),title:"添加备注",width:"480px","append-to-body":""},{footer:v(()=>[r(m,{onClick:t[6]||(t[6]=u=>T.value=!1)},{default:v(()=>[...t[16]||(t[16]=[D("取消",-1)])]),_:1}),r(m,{type:"primary",loading:a(ne),onClick:Qe},{default:v(()=>[...t[17]||(t[17]=[D("保存",-1)])]),_:1},8,["loading"])]),default:v(()=>[r(l,{modelValue:a(z),"onUpdate:modelValue":t[5]||(t[5]=u=>ue(z)?z.value=u:null),type:"textarea",rows:4,placeholder:"输入今日备注...",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1},8,["modelValue"]),(d(),C(Ie(a($e)),{ref_key:"chatDialogRef",ref:ce},null,512)),(d(),C(Ie(a(Ne)),{ref_key:"diagnosisEditRef",ref:ve,onSuccess:Ge},null,544))])}}}),xa=It(sa,[["__scopeId","data-v-2cfceb5b"]]);export{xa as default};
+========
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BQLLY3YQ.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/file-Ci3F9EoX.js","assets/index-C53kWH2_.js","assets/index-ynJZC2Ez.css","assets/patient-cj6mW_46.js","assets/tcm-BWNwZkyX.js","assets/im-business-message-parse-DoOLrDi4.js","assets/dayjs-Dr2Em-pV.js","assets/@tencentcloud/chat-C6eYQUo-.js","assets/@tencentcloud/chat-uikit-engine-TY6XO9dW.js","assets/tim-upload-plugin-BUYgI52i.js","assets/tim-profanity-filter-plugin-DM0QTuQO.js","assets/@tencentcloud/call-engine-js-DFqo23EQ.js","assets/rtc-detect-BahOTccE.js","assets/index-BqRj5hg7.css","assets/edit-emC-q2iC.js","assets/perm-BICz51xi.js","assets/DailyMatrix-DiYUQo1w.js","assets/picker-Bo_aGeCY.js","assets/index-ByXR3YHf.js","assets/index-B3imPWFk.css","assets/index-ci6cz5MZ.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-ZgwwU4Et.js","assets/index-D0f1Mn00.css","assets/index-9XBsG-Cy.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-C7qwIzjQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-BC4wO08v.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Dwk-zq8O.js","assets/RecordingPlaybackBlock-Cbli8dUQ.js","assets/RecordingVideoPlayer-PakpPQK-.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-OjhXvTzR.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-i8xnfggI.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-B9Qsv5NO.js","assets/doctor-CNnijzjL.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DcnSeCwS.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-PJG2qWT8.js","assets/PrescriptionOrderDetailDrawer-CL3jtI2P.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-Nz5F52Mm.js","assets/index-D25Fsd3W.js","assets/medicine-DWZ_n3IQ.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
+import{o as Ze,R as Je,ap as Xe,n as et,aq as tt,be as at,q as d,r as h,s,T as k,u as a,ae as W,v as r,D as v,w as nt,bA as st,b8 as lt,C as ue,b7 as it,ac as F,bi as ot,F as qe,G as ut,L as D,O as C,br as dt,P as q,aw as rt,b5 as ct,as as vt,a1 as ft,d6 as pt,bB as mt,K as gt,ab as _t,bt as ht,a4 as Ie,cb as xe,al as Re,M as o,p as Y}from"./.pnpm-BadRMC3e.js";import{r as Te,n as yt,a as St,b as kt}from"./patient-cj6mW_46.js";import bt from"./NoteTimeline-DcnSeCwS.js";import Ct from"./PatientInfoCard-BUJFMusH.js";import wt from"./PatientCaseCard-DjIQuPYN.js";import Et from"./DailyMatrix-DiYUQo1w.js";import{l as Dt}from"./doctor-CNnijzjL.js";import{T as qt}from"./tcm-BWNwZkyX.js";import{i as g,_ as It}from"./index-C53kWH2_.js";import{f as xt}from"./diag-display-DCz_VAqj.js";import"./picker-Bo_aGeCY.js";import"./index-ByXR3YHf.js";import"./index-ci6cz5MZ.js";import"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import"./index-ZgwwU4Et.js";import"./index-9XBsG-Cy.js";import"./file-Ci3F9EoX.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./usePaging-DMqUvFG-.js";import"./perm-BICz51xi.js";import"./blood-thresholds-CJ1fqMjh.js";import"./diabetes-discovery-display-B_wmGXQJ.js";import"./DiagnosisTodoList-C7qwIzjQ.js";const Rt={class:"reception-page"},Tt={class:"reception-header"},$t={class:"header-left"},Nt={class:"header-meta"},Vt={class:"header-right"},Pt={class:"live-pill"},Lt={class:"filter-shell"},Mt={class:"filter-tabs"},zt={class:"main-area"},At={class:"queue-col"},Bt={class:"queue-panel"},Ft={class:"queue-head"},Ot={class:"queue-title"},Ut={class:"queue-meta"},jt=["onClick"],Gt={class:"row-name"},Kt={class:"name-line"},Qt={class:"name-meta"},Wt={class:"time-line"},Yt=["disabled","onClick"],Ht=["onClick"],Zt={key:0},Jt={key:1,class:"no-more"},Xt={class:"sidebar"},ea={key:0,class:"placeholder-card"},ta={class:"card note-card"},aa={class:"card metric-card"},na={key:0,class:"float-bar"},de=5e3,re=15,sa=Ze({__name:"index",setup(la){const $e=xe(()=>Re(()=>import("./index-BQLLY3YQ.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]))),Ne=xe(()=>Re(()=>import("./edit-emC-q2iC.js"),__vite__mapDeps([17,1,2,7,4,5,18,19,20,21,22,23,24,25,26,27,3,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,9,8,45,46,47,48,49,50,51,6,52,53,54,55,56,57,58,59,60,61,62,63,64,65]))),_=o(1),y=o([]),O=o(0),H=o(0),Z=o(0),J=o(1),U=o(!0),j=o(!1),G=o(!1),X=o(!1),c=o(null),p=o(null),ee=o(!1),b=o(""),V=o(!1),P=o(de/1e3),L=o(null);let I=null,x=null,te=!1,M=!1,w=null,K=0,R=0;const ae=o(null),Q=o(null),ce=o(),ve=o(),T=o(!1),z=o(""),ne=o(!1),$=Y(()=>{var e;return((e=p.value)==null?void 0:e.appointment)||{}}),S=Y(()=>{var e;return((e=p.value)==null?void 0:e.diagnosis)||{}}),Ve=Y(()=>{var e;return((e=p.value)==null?void 0:e.doctor_notes)||[]}),Pe=Y(()=>{const e=new Date,t=["周日","周一","周二","周三","周四","周五","周六"][e.getDay()],n=l=>String(l).padStart(2,"0");return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())} ${t}`}),Le=()=>{const e=new Date,t=n=>String(n).padStart(2,"0");return`${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}`},Me=e=>[xt(e.gender),e.age!=null?e.age+"岁":""].filter(n=>n&&n!=="—").join(" "),ze=e=>e?e.replace(/^(\d{2}:\d{2})(:\d{2})?$/,"$1"):"—",se=async(e,t,n)=>{const l=Le(),i=await kt({status:t??_.value,start_date:l,end_date:l,patient_name:(n??b.value)||void 0,page_no:e,page_size:re}),E=(i==null?void 0:i.lists)||(i==null?void 0:i.data)||[],f=Number((i==null?void 0:i.count)??(i==null?void 0:i.total)??0);return{list:E,count:f}},Ae=async(e,t,n)=>{const l=e===1?4:1;try{const{count:i}=await se(1,l,t||void 0);if(n!==K||_.value!==e||b.value!==t)return;l===1?H.value=i:Z.value=i}catch{}},A=async e=>{const t=(e==null?void 0:e.silent)===!0;if(t&&te)return;const n=++K,l=_.value,i=b.value,E=(e==null?void 0:e.autoSelect)??!t;te=!0,t||(G.value=!0);try{J.value=1;const{list:f,count:m}=await se(1,l,i||void 0);if(n!==K||_.value!==l||b.value!==i)return;y.value=f,O.value=m||f.length,l===1?H.value=m:Z.value=m,U.value=f.length>=re&&y.value.length<(m||0),Ae(l,i,n),c.value&&!f.some(ie=>ie.id===c.value)&&(c.value=null,p.value=null),!c.value&&E&&f.length>0&&await fe(f[0])}catch(f){t||console.error("加载队列失败:",f)}finally{n===K&&(G.value=!1,te=!1)}},Be=async()=>{if(j.value||!U.value)return;const e=_.value,t=b.value;j.value=!0;try{const n=J.value+1,{list:l,count:i}=await se(n,e,t||void 0);if(_.value!==e||b.value!==t)return;const E=new Set(y.value.map(m=>m.id)),f=l.filter(m=>!E.has(m.id));y.value=[...y.value,...f],J.value=n,O.value=i||O.value,U.value=l.length>=re&&y.value.length<(i||0)}catch(n){console.error("加载更多失败:",n)}finally{j.value=!1}},Fe=async()=>{if(!c.value||M)return;const e=c.value,t=++R;M=!0;try{const n=await Te({id:e});if(t!==R||c.value!==e)return;p.value=n||p.value}catch{}finally{t===R&&(M=!1)}},fe=async e=>{if(c.value===e.id)return;const t=e.id,n=++R;c.value=e.id,p.value=null,X.value=!0,M=!0,B();try{const l=await Te({id:t});if(n!==R||c.value!==t)return;p.value=l||null}catch(l){console.error("加载详情失败:",l),g.msgError("加载患者详情失败")}finally{n===R&&(X.value=!1,M=!1)}},pe=async e=>{_.value!==e&&(_.value=e,c.value=null,p.value=null,await A(),B())},me=async()=>{c.value=null,p.value=null,await A(),B()},Oe=async e=>{var t;if(!e.patient_id){g.msgWarning("患者信息不完整");return}try{const n=await qt({patient_id:e.patient_id,diagnosis_id:e.diagnosis_id||e.id});(t=ce.value)==null||t.open({patientId:e.patient_id,patientName:e.patient_name,diagnosisId:e.diagnosis_id||e.id,signatureData:n})}catch(n){console.error("获取通话签名失败:",n),g.msgError((n==null?void 0:n.message)||"获取通话签名失败")}},Ue=async e=>{if(!L.value){L.value=e.id;try{await yt({id:e.id}),g.msgSuccess(`已通知医助 ${e.assistant_name||""}`),await N()}catch(t){g.msgError((t==null?void 0:t.message)||"通知失败")}finally{L.value=null}}},je=()=>{var e,t;(e=S.value)!=null&&e.patient_id&&((t=ve.value)==null||t.open("edit",S.value.patient_id))},Ge=async()=>{await N()},N=async()=>{const e=c.value;await A({silent:!0,autoSelect:!1}),e&&c.value===e&&await Fe(),B()},Ke=async()=>{var e;if((e=$.value)!=null&&e.id){try{await g.confirm("确认将该患者标记为「已完成接诊」?此操作不可撤销。")}catch{return}ee.value=!0;try{await Dt({id:$.value.id}),g.msgSuccess("已完成接诊"),c.value=null,p.value=null,await A({autoSelect:!0}),B()}catch(t){g.msgError((t==null?void 0:t.message)||"操作失败")}finally{ee.value=!1}}},Qe=async()=>{var n;const e=(n=S.value)==null?void 0:n.id;if(!e){g.msgWarning("当前患者无诊单,无法添加备注");return}const t=z.value.trim();if(!t){g.msgWarning("请输入备注内容");return}ne.value=!0;try{await St({diagnosis_id:e,content:t}),g.msgSuccess("备注保存成功"),z.value="",T.value=!1,await N()}catch(l){g.msgError((l==null?void 0:l.message)||"保存失败")}finally{ne.value=!1}},We=()=>{P.value=de/1e3},Ye=()=>{x&&clearInterval(x),We(),x=setInterval(()=>{V.value||(P.value>1?P.value-=1:P.value=1)},1e3)},ge=()=>{I&&clearTimeout(I),!V.value&&(Ye(),I=setTimeout(async()=>{await N()},de))},B=()=>{ge()},He=()=>{le(),ge()},le=()=>{I&&(clearTimeout(I),I=null),x&&(clearInterval(x),x=null)},_e=()=>{V.value=document.hidden,document.hidden?le():N()},he=e=>{var n;const t=String(((n=e==null?void 0:e.reason)==null?void 0:n.message)||(e==null?void 0:e.reason)||"");/Receiving end does not exist|Could not establish connection/i.test(t)&&e.preventDefault()},ye=()=>{!Q.value||!ae.value||(w==null||w.disconnect(),w=new IntersectionObserver(e=>{for(const t of e)t.isIntersecting&&Be()},{root:ae.value,rootMargin:"80px",threshold:0}),w.observe(Q.value))};return Je(Q,()=>ye()),Xe(()=>{A(),He(),document.addEventListener("visibilitychange",_e),window.addEventListener("unhandledrejection",he),et(()=>ye())}),tt(()=>{le(),w==null||w.disconnect(),document.removeEventListener("visibilitychange",_e),window.removeEventListener("unhandledrejection",he)}),(e,t)=>{var ke,be,Ce,we,Ee;const n=nt,l=it,i=dt,E=ft,f=mt,m=gt,ie=ht,Se=ot,oe=at("perms");return d(),h("div",Rt,[s("div",Tt,[s("div",$t,[t[8]||(t[8]=s("h1",{class:"header-title"},"接诊台",-1)),s("div",Nt,k(a(Pe)),1)]),s("div",Vt,[s("div",Pt,[s("span",{class:W(["live-dot",{paused:a(V)}])},null,2),s("span",null,k(a(V)?"已暂停":`${a(P)}s 后刷新`),1)])])]),s("div",Lt,[r(l,{modelValue:a(b),"onUpdate:modelValue":t[0]||(t[0]=u=>ue(b)?b.value=u:null),placeholder:"请输入患者姓名",clearable:"",size:"default",class:"search-input",onKeyup:lt(me,["enter"]),onClear:me},{prefix:v(()=>[r(n,null,{default:v(()=>[r(a(st))]),_:1})]),_:1},8,["modelValue"]),s("div",Mt,[s("span",{class:W(["filter-tab",{active:a(_)===1}]),onClick:t[1]||(t[1]=u=>pe(1))},"待接诊 "+k(a(H))+" 人",3),t[9]||(t[9]=s("span",{class:"filter-sep"},"·",-1)),s("span",{class:W(["filter-tab",{active:a(_)===4}]),onClick:t[2]||(t[2]=u=>pe(4))},"已过号 "+k(a(Z))+" 人",3)])]),s("div",zt,[s("aside",At,[s("div",Bt,[s("div",Ft,[s("span",Ot,k(a(_)===1?"待接诊":"已过号"),1),s("span",Ut,k(a(O))+" 人",1)]),F((d(),h("div",{ref_key:"queueScrollRef",ref:ae,class:"queue-list"},[(d(!0),h(qe,null,ut(a(y),u=>(d(),h("div",{key:u.id,class:W(["queue-row",{active:a(c)===u.id,passed:u.status===4}]),onClick:De=>fe(u)},[s("div",Gt,[s("div",Kt,[D(k(u.patient_name||"未命名")+" ",1),s("span",Qt,k(Me(u)),1),u.status===4?(d(),C(i,{key:0,size:"small",type:"warning",class:"ml-1"},{default:v(()=>[...t[10]||(t[10]=[D("已过号",-1)])]),_:1})):q("",!0)]),s("div",Wt,k(ze(u.appointment_time))+" · 医助 "+k(u.assistant_name||"—"),1)]),s("div",{class:"row-actions",onClick:t[3]||(t[3]=rt(()=>{},["stop"]))},[r(E,{content:"通知医助(企业微信)",placement:"top"},{default:v(()=>[s("button",{class:"row-icon-btn notify",disabled:a(L)===u.id,onClick:De=>Ue(u)},[a(L)===u.id?(d(),C(n,{key:0,class:"is-loading"},{default:v(()=>[r(a(ct))]),_:1})):(d(),C(n,{key:1},{default:v(()=>[r(a(vt))]),_:1}))],8,Yt)]),_:2},1024),r(E,{content:"发起通话",placement:"top"},{default:v(()=>[s("button",{class:"row-icon-btn call",onClick:De=>Oe(u)},[r(n,null,{default:v(()=>[r(a(pt))]),_:1})],8,Ht)]),_:2},1024)])],10,jt))),128)),a(y).length>0?(d(),h("div",{key:0,ref_key:"sentinelRef",ref:Q,class:"scroll-sentinel"},[a(j)?(d(),h("span",Zt,"加载中…")):a(U)?q("",!0):(d(),h("span",Jt,"— 已全部加载 —"))],512)):q("",!0),!a(G)&&a(y).length===0?(d(),C(f,{key:1,description:"暂无待接诊患者","image-size":64})):q("",!0)])),[[Se,a(G)&&a(y).length===0]])])]),F((d(),h("section",Xt,[a(c)?a(p)?(d(),h(qe,{key:1},[r(Ct,{apt:a($),diag:a(S)},null,8,["apt","diag"]),r(wt,{apt:a($),diag:a(S)},null,8,["apt","diag"]),s("div",ta,[t[11]||(t[11]=s("div",{class:"card-title"},"医生备注 & 舌苔照片 & 检查报告",-1)),r(bt,{notes:a(Ve),"diagnosis-id":(ke=a(S))==null?void 0:ke.id,onRefresh:N},null,8,["notes","diagnosis-id"])]),s("div",aa,[t[12]||(t[12]=s("div",{class:"card-title"},"日常记录",-1)),r(Et,{"diagnosis-id":Number(((be=a(S))==null?void 0:be.id)??0),"patient-id":Number(((Ce=a(S))==null?void 0:Ce.patient_id)??0),age:((we=a(S))==null?void 0:we.age)??null,"patient-name":((Ee=a(S))==null?void 0:Ee.patient_name)||"","read-only":!0},null,8,["diagnosis-id","patient-id","age","patient-name"])])],64)):q("",!0):(d(),h("div",ea,[r(f,{description:"请从左侧选择一位待接诊患者"})]))])),[[Se,a(X)&&!a(p)]])]),r(_t,{name:"fade"},{default:v(()=>[a(c)&&a(p)?(d(),h("div",na,[F((d(),C(m,{class:"float-action note",size:"large",onClick:t[4]||(t[4]=u=>T.value=!0)},{default:v(()=>[...t[13]||(t[13]=[D(" 备注 ",-1)])]),_:1})),[[oe,["doctor.appointment/addDoctorNote"]]]),F((d(),C(m,{class:"float-action edit",size:"large",onClick:je},{default:v(()=>[...t[14]||(t[14]=[D(" 编辑病历 ",-1)])]),_:1})),[[oe,["tcm.diagnosis/edit"]]]),a($).status===1||a($).status===4?F((d(),C(m,{key:0,class:"float-action finish",size:"large",loading:a(ee),onClick:Ke},{default:v(()=>[...t[15]||(t[15]=[D(" 完成接诊 ",-1)])]),_:1},8,["loading"])),[[oe,["doctor.appointment/complete"]]]):q("",!0)])):q("",!0)]),_:1}),r(ie,{modelValue:a(T),"onUpdate:modelValue":t[7]||(t[7]=u=>ue(T)?T.value=u:null),title:"添加备注",width:"480px","append-to-body":""},{footer:v(()=>[r(m,{onClick:t[6]||(t[6]=u=>T.value=!1)},{default:v(()=>[...t[16]||(t[16]=[D("取消",-1)])]),_:1}),r(m,{type:"primary",loading:a(ne),onClick:Qe},{default:v(()=>[...t[17]||(t[17]=[D("保存",-1)])]),_:1},8,["loading"])]),default:v(()=>[r(l,{modelValue:a(z),"onUpdate:modelValue":t[5]||(t[5]=u=>ue(z)?z.value=u:null),type:"textarea",rows:4,placeholder:"输入今日备注...",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1},8,["modelValue"]),(d(),C(Ie(a($e)),{ref_key:"chatDialogRef",ref:ce},null,512)),(d(),C(Ie(a(Ne)),{ref_key:"diagnosisEditRef",ref:ve,onSuccess:Ge},null,544))])}}}),xa=It(sa,[["__scopeId","data-v-2cfceb5b"]]);export{xa as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-BbRV3Ohw.js
diff --git a/server/public/admin/assets/index-DUhHLcYh.js b/server/public/admin/assets/index-DUhHLcYh.js
index 6758d515f..9be93f97f 100644
--- a/server/public/admin/assets/index-DUhHLcYh.js
+++ b/server/public/admin/assets/index-DUhHLcYh.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DUhHLcYh.js
import{_ as B}from"./index-DIQ_14l3.js";import{o as f,be as k,q as p,r as y,v as o,D as t,b9 as D,u as n,b6 as R,s as l,bc as N,bf as q,L as r,b7 as F,bg as I,ac as O,O as U,K as h,ba as j}from"./.pnpm-BadRMC3e.js";import{r as c}from"./index-C360OAjQ.js";function G(){return c.get({url:"/recharge.recharge/getConfig"})}function K(u){return c.post({url:"/recharge.recharge/setConfig",params:u})}const L=f({name:"rechargeConfig"}),A=f({...L,setup(u){const a=j({status:1,min_amount:""}),i=async()=>{const m=await G();Object.assign(a,m)},g=async()=>{await K(a),i()};return i(),(m,e)=>{const d=q,b=N,_=R,v=F,C=D,V=I,E=h,x=B,w=k("perms");return p(),y("div",null,[o(V,{shadow:"never",class:"!border-none"},{header:t(()=>[...e[2]||(e[2]=[l("span",{class:"font-extrabold text-lg"},"充值设置",-1)])]),default:t(()=>[o(C,{model:n(a),"label-width":"120px"},{default:t(()=>[o(_,{label:"状态"},{default:t(()=>[l("div",null,[o(b,{modelValue:n(a).status,"onUpdate:modelValue":e[0]||(e[0]=s=>n(a).status=s),class:"ml-4"},{default:t(()=>[o(d,{value:1},{default:t(()=>[...e[3]||(e[3]=[r("开启",-1)])]),_:1}),o(d,{value:0},{default:t(()=>[...e[4]||(e[4]=[r("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),e[5]||(e[5]=l("div",{class:"form-tips"},"关闭或开启充值功能,关闭后将不显示充值入口",-1))])]),_:1}),o(_,{label:"最低充值金额"},{default:t(()=>[l("div",null,[o(v,{modelValue:n(a).min_amount,"onUpdate:modelValue":e[1]||(e[1]=s=>n(a).min_amount=s),placeholder:"请输入最低充值金额",clearable:""},null,8,["modelValue"]),e[6]||(e[6]=l("div",{class:"form-tips"}," 最低充值金额要求,不填或填0表示不限制最低充值金额 ",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),O((p(),U(x,null,{default:t(()=>[o(E,{type:"primary",onClick:g},{default:t(()=>[...e[7]||(e[7]=[r("保存",-1)])]),_:1})]),_:1})),[[w,["recharge.recharge/setConfig"]]])])}}});export{A as default};
+========
+import{_ as B}from"./index-CRMPOQmu.js";import{o as f,be as k,q as p,r as y,v as o,D as t,b9 as D,u as n,b6 as R,s as l,bc as N,bf as q,L as r,b7 as F,bg as I,ac as O,O as U,K as h,ba as j}from"./.pnpm-BadRMC3e.js";import{r as c}from"./index-C53kWH2_.js";function G(){return c.get({url:"/recharge.recharge/getConfig"})}function K(u){return c.post({url:"/recharge.recharge/setConfig",params:u})}const L=f({name:"rechargeConfig"}),A=f({...L,setup(u){const a=j({status:1,min_amount:""}),i=async()=>{const m=await G();Object.assign(a,m)},g=async()=>{await K(a),i()};return i(),(m,e)=>{const d=q,b=N,_=R,v=F,C=D,V=I,E=h,x=B,w=k("perms");return p(),y("div",null,[o(V,{shadow:"never",class:"!border-none"},{header:t(()=>[...e[2]||(e[2]=[l("span",{class:"font-extrabold text-lg"},"充值设置",-1)])]),default:t(()=>[o(C,{model:n(a),"label-width":"120px"},{default:t(()=>[o(_,{label:"状态"},{default:t(()=>[l("div",null,[o(b,{modelValue:n(a).status,"onUpdate:modelValue":e[0]||(e[0]=s=>n(a).status=s),class:"ml-4"},{default:t(()=>[o(d,{value:1},{default:t(()=>[...e[3]||(e[3]=[r("开启",-1)])]),_:1}),o(d,{value:0},{default:t(()=>[...e[4]||(e[4]=[r("关闭",-1)])]),_:1})]),_:1},8,["modelValue"]),e[5]||(e[5]=l("div",{class:"form-tips"},"关闭或开启充值功能,关闭后将不显示充值入口",-1))])]),_:1}),o(_,{label:"最低充值金额"},{default:t(()=>[l("div",null,[o(v,{modelValue:n(a).min_amount,"onUpdate:modelValue":e[1]||(e[1]=s=>n(a).min_amount=s),placeholder:"请输入最低充值金额",clearable:""},null,8,["modelValue"]),e[6]||(e[6]=l("div",{class:"form-tips"}," 最低充值金额要求,不填或填0表示不限制最低充值金额 ",-1))])]),_:1})]),_:1},8,["model"])]),_:1}),O((p(),U(x,null,{default:t(()=>[o(E,{type:"primary",onClick:g},{default:t(()=>[...e[7]||(e[7]=[r("保存",-1)])]),_:1})]),_:1})),[[w,["recharge.recharge/setConfig"]]])])}}});export{A as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-COk53yM8.js
diff --git a/server/public/admin/assets/index-DYGf5UVd.js b/server/public/admin/assets/index-DYGf5UVd.js
new file mode 100644
index 000000000..dd0cd2f48
--- /dev/null
+++ b/server/public/admin/assets/index-DYGf5UVd.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DJi9hjoZ.js
+import{o as K,ap as G,n as E,be as H,q as p,r as J,v as t,D as a,b9 as Q,u as i,b6 as W,b7 as X,b8 as Y,bm as Z,bn as ee,K as te,L as s,bg as ae,s as L,ac as b,O as c,bj as le,bk as ne,T as N,br as oe,P,bi as se,a8 as x,M as V,ba as ie}from"./.pnpm-BadRMC3e.js";import{c as de,i as re}from"./index-C360OAjQ.js";import{e as pe,f as me}from"./department-BFDDlesw.js";import{_ as ue}from"./edit.vue_vue_type_script_setup_true_lang-DEy4nRqi.js";import"./index-2cRJ7Pdu.js";import"./useDictOptions-C5fytNbv.js";const fe={class:"department"},ce=K({name:"department"}),Ce=K({...ce,setup(_e){const D=x(),_=x(),R=x();let k=!1;const w=V(!1),g=V([]),m=ie({status:"",name:""}),v=V(!1),u=async()=>{w.value=!0,g.value=await pe(m),w.value=!1},S=()=>{var l;(l=R.value)==null||l.resetFields(),u()},$=async l=>{var e,o;v.value=!0,await E(),l&&((e=_.value)==null||e.setFormData({pid:l})),(o=_.value)==null||o.open("add")},q=async l=>{var e,o;v.value=!0,await E(),(e=_.value)==null||e.open("edit"),(o=_.value)==null||o.getDetail(l)},I=async l=>{await re.confirm("确定要删除?"),await me({id:l}),u()},T=()=>{k=!k,h(g.value,k)},h=(l,e=!0)=>{var o;for(const d in l)(o=D.value)==null||o.toggleRowExpansion(l[d],e),l[d].children&&h(l[d].children,e)};return G(async()=>{await u(),E(()=>{T()})}),(l,e)=>{const o=X,d=W,C=ee,M=Z,r=te,O=Q,B=ae,U=de,f=ne,j=oe,z=le,y=H("perms"),A=se;return p(),J("div",fe,[t(B,{class:"!border-none",shadow:"never"},{default:a(()=>[t(O,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(m),inline:!0},{default:a(()=>[t(d,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:a(()=>[t(o,{modelValue:i(m).name,"onUpdate:modelValue":e[0]||(e[0]=n=>i(m).name=n),placeholder:"输入部门名称",clearable:"",onKeyup:Y(u,["enter"])},null,8,["modelValue"])]),_:1}),t(d,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:a(()=>[t(M,{modelValue:i(m).status,"onUpdate:modelValue":e[1]||(e[1]=n=>i(m).status=n)},{default:a(()=>[t(C,{label:"全部",value:""}),t(C,{label:"正常",value:"1"}),t(C,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(d,null,{default:a(()=>[t(r,{type:"primary",onClick:u},{default:a(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(r,{onClick:S},{default:a(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(B,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[L("div",null,[b((p(),c(r,{type:"primary",onClick:e[2]||(e[2]=n=>$())},{icon:a(()=>[t(U,{name:"el-icon-Plus"})]),default:a(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[y,["dept.dept/add"]]]),t(r,{onClick:T},{default:a(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),b((p(),c(z,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(g),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:a(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:a(()=>[...e[8]||(e[8]=[L("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:a(({row:n})=>[s(N(n.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:a(({row:n})=>[t(j,{class:"ml-2",type:n.status?"primary":"danger"},{default:a(()=>[s(N(n.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:a(({row:n})=>[b((p(),c(r,{type:"primary",link:"",onClick:F=>$(n.id)},{default:a(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/add"]]]),b((p(),c(r,{type:"primary",link:"",onClick:F=>q(n)},{default:a(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/edit"]]]),n.pid!==0?b((p(),c(r,{key:0,type:"danger",link:"",onClick:F=>I(n.id)},{default:a(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/delete"]]]):P("",!0)]),_:1})]),_:1},8,["data"])),[[A,i(w)]])]),_:1}),i(v)?(p(),c(ue,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=n=>v.value=!1)},null,512)):P("",!0)])}}});export{Ce as default};
+========
+import{o as K,ap as G,n as E,be as H,q as p,r as J,v as t,D as a,b9 as Q,u as i,b6 as W,b7 as X,b8 as Y,bm as Z,bn as ee,K as te,L as s,bg as ae,s as L,ac as b,O as c,bj as le,bk as ne,T as N,br as oe,P,bi as se,a8 as x,M as V,ba as ie}from"./.pnpm-BadRMC3e.js";import{c as de,i as re}from"./index-C53kWH2_.js";import{e as pe,f as me}from"./department-drKzCnRw.js";import{_ as ue}from"./edit.vue_vue_type_script_setup_true_lang-DhQJmfke.js";import"./index-ByXR3YHf.js";import"./useDictOptions-D9FsmJj0.js";const fe={class:"department"},ce=K({name:"department"}),Ce=K({...ce,setup(_e){const D=x(),_=x(),R=x();let k=!1;const w=V(!1),g=V([]),m=ie({status:"",name:""}),v=V(!1),u=async()=>{w.value=!0,g.value=await pe(m),w.value=!1},S=()=>{var l;(l=R.value)==null||l.resetFields(),u()},$=async l=>{var e,o;v.value=!0,await E(),l&&((e=_.value)==null||e.setFormData({pid:l})),(o=_.value)==null||o.open("add")},q=async l=>{var e,o;v.value=!0,await E(),(e=_.value)==null||e.open("edit"),(o=_.value)==null||o.getDetail(l)},I=async l=>{await re.confirm("确定要删除?"),await me({id:l}),u()},T=()=>{k=!k,h(g.value,k)},h=(l,e=!0)=>{var o;for(const d in l)(o=D.value)==null||o.toggleRowExpansion(l[d],e),l[d].children&&h(l[d].children,e)};return G(async()=>{await u(),E(()=>{T()})}),(l,e)=>{const o=X,d=W,C=ee,M=Z,r=te,O=Q,B=ae,U=de,f=ne,j=oe,z=le,y=H("perms"),A=se;return p(),J("div",fe,[t(B,{class:"!border-none",shadow:"never"},{default:a(()=>[t(O,{ref_key:"formRef",ref:R,class:"mb-[-16px]",model:i(m),inline:!0},{default:a(()=>[t(d,{class:"w-[280px]",label:"部门名称",prop:"name"},{default:a(()=>[t(o,{modelValue:i(m).name,"onUpdate:modelValue":e[0]||(e[0]=n=>i(m).name=n),placeholder:"输入部门名称",clearable:"",onKeyup:Y(u,["enter"])},null,8,["modelValue"])]),_:1}),t(d,{class:"w-[280px]",label:"部门状态",prop:"status"},{default:a(()=>[t(M,{modelValue:i(m).status,"onUpdate:modelValue":e[1]||(e[1]=n=>i(m).status=n)},{default:a(()=>[t(C,{label:"全部",value:""}),t(C,{label:"正常",value:"1"}),t(C,{label:"停用",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(d,null,{default:a(()=>[t(r,{type:"primary",onClick:u},{default:a(()=>[...e[4]||(e[4]=[s("查询",-1)])]),_:1}),t(r,{onClick:S},{default:a(()=>[...e[5]||(e[5]=[s("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(B,{class:"!border-none mt-4",shadow:"never"},{default:a(()=>[L("div",null,[b((p(),c(r,{type:"primary",onClick:e[2]||(e[2]=n=>$())},{icon:a(()=>[t(U,{name:"el-icon-Plus"})]),default:a(()=>[e[6]||(e[6]=s(" 新增 ",-1))]),_:1})),[[y,["dept.dept/add"]]]),t(r,{onClick:T},{default:a(()=>[...e[7]||(e[7]=[s(" 展开/折叠 ",-1)])]),_:1})]),b((p(),c(z,{ref_key:"tableRef",ref:D,class:"mt-4",size:"large",data:i(g),"row-key":"id","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:a(()=>[t(f,{label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""}),t(f,{label:"人数","min-width":"100",align:"center","show-overflow-tooltip":""},{header:a(()=>[...e[8]||(e[8]=[L("span",{title:"含本部门及所有下级部门的管理员数"},"人数(含下级)",-1)])]),default:a(({row:n})=>[s(N(n.admin_count??0),1)]),_:1}),t(f,{label:"部门状态",prop:"status","min-width":"100"},{default:a(({row:n})=>[t(j,{class:"ml-2",type:n.status?"primary":"danger"},{default:a(()=>[s(N(n.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:a(({row:n})=>[b((p(),c(r,{type:"primary",link:"",onClick:F=>$(n.id)},{default:a(()=>[...e[9]||(e[9]=[s(" 新增 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/add"]]]),b((p(),c(r,{type:"primary",link:"",onClick:F=>q(n)},{default:a(()=>[...e[10]||(e[10]=[s(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/edit"]]]),n.pid!==0?b((p(),c(r,{key:0,type:"danger",link:"",onClick:F=>I(n.id)},{default:a(()=>[...e[11]||(e[11]=[s(" 删除 ",-1)])]),_:1},8,["onClick"])),[[y,["dept.dept/delete"]]]):P("",!0)]),_:1})]),_:1},8,["data"])),[[A,i(w)]])]),_:1}),i(v)?(p(),c(ue,{key:0,ref_key:"editRef",ref:_,onSuccess:u,onClose:e[3]||(e[3]=n=>v.value=!1)},null,512)):P("",!0)])}}});export{Ce as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-DYGf5UVd.js
diff --git a/server/public/admin/assets/index-D_8JiCMv.css b/server/public/admin/assets/index-D_8JiCMv.css
new file mode 100644
index 000000000..e0f330691
--- /dev/null
+++ b/server/public/admin/assets/index-D_8JiCMv.css
@@ -0,0 +1 @@
+.performance-dashboard[data-v-f346ea9a]{--dash-accent: #0f8f83;--dash-accent-soft: rgba(15, 143, 131, .1);--dash-border: var(--el-border-color-lighter);--dash-surface: var(--el-bg-color);--dash-surface-muted: var(--el-fill-color-extra-light);--dash-text: var(--el-text-color-primary);--dash-text-muted: var(--el-text-color-secondary);min-height:100%;padding:18px;color:var(--dash-text);background:var(--el-bg-color-page)}.dashboard-header[data-v-f346ea9a]{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;margin-bottom:14px;border:1px solid var(--dash-border);border-radius:14px;background:var(--dash-surface)}.dashboard-heading[data-v-f346ea9a],.dashboard-title-row[data-v-f346ea9a],.dashboard-actions[data-v-f346ea9a],.metric-label-row[data-v-f346ea9a],.metric-foot[data-v-f346ea9a],.panel-header[data-v-f346ea9a],.ranking-row[data-v-f346ea9a],.ranking-copy>div[data-v-f346ea9a],.target-copy>div[data-v-f346ea9a],.dashboard-notes[data-v-f346ea9a]{display:flex;align-items:center}.dashboard-heading[data-v-f346ea9a]{gap:12px;min-width:0}.dashboard-heading__icon[data-v-f346ea9a]{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;color:#fff;font-size:21px;background:var(--dash-accent)}.dashboard-title-row[data-v-f346ea9a]{flex-wrap:wrap;gap:9px}.dashboard-title-row h1[data-v-f346ea9a]{margin:0;font-size:20px;line-height:1.25;letter-spacing:-.02em}.dashboard-heading p[data-v-f346ea9a],.panel-header p[data-v-f346ea9a],.target-copy p[data-v-f346ea9a]{margin:4px 0 0;color:var(--dash-text-muted);font-size:12px;line-height:1.5}.scope-badge[data-v-f346ea9a],.panel-meta[data-v-f346ea9a]{display:inline-flex;align-items:center;gap:4px;border-radius:8px;white-space:nowrap}.scope-badge[data-v-f346ea9a]{padding:4px 8px;color:var(--dash-accent);font-size:12px;font-weight:650;background:var(--dash-accent-soft)}.dashboard-actions[data-v-f346ea9a]{gap:12px;flex-shrink:0}.updated-at[data-v-f346ea9a]{color:var(--el-text-color-placeholder);font-size:11px}.dashboard-error[data-v-f346ea9a]{margin-bottom:14px}.dashboard-skeleton[data-v-f346ea9a],.dashboard-empty[data-v-f346ea9a]{padding:24px;border:1px solid var(--dash-border);border-radius:14px;background:var(--dash-surface)}.performance-strip[data-v-f346ea9a],.operating-grid[data-v-f346ea9a]{display:grid;gap:12px}.performance-strip[data-v-f346ea9a]{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:12px}.operating-grid[data-v-f346ea9a]{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.metric-card[data-v-f346ea9a],.dashboard-panel[data-v-f346ea9a]{border:1px solid var(--dash-border);border-radius:14px;background:var(--dash-surface)}.metric-card[data-v-f346ea9a]{min-width:0;padding:16px}.metric-card--primary[data-v-f346ea9a]{border-color:color-mix(in srgb,var(--dash-accent) 28%,var(--dash-border));background:linear-gradient(145deg,var(--dash-accent-soft),var(--dash-surface) 52%)}.metric-card--compact[data-v-f346ea9a]{padding:14px 16px}.metric-card--clock[data-v-f346ea9a]{background:var(--dash-surface-muted)}.metric-label[data-v-f346ea9a],.metric-label-row[data-v-f346ea9a]{color:var(--dash-text-muted);font-size:12px;font-weight:500}.metric-label-row[data-v-f346ea9a]{justify-content:space-between;gap:8px}.metric-help[data-v-f346ea9a]{cursor:help;color:var(--el-text-color-placeholder)}.metric-value[data-v-f346ea9a]{margin-top:8px;overflow:hidden;color:var(--dash-text);font-family:DIN Alternate,Roboto Mono,SFMono-Regular,Consolas,monospace;font-size:clamp(24px,2vw,30px);font-weight:760;line-height:1.12;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap}.metric-value--money[data-v-f346ea9a]{font-size:clamp(23px,1.8vw,28px)}.metric-value--time[data-v-f346ea9a]{letter-spacing:-.02em}.metric-value--pair[data-v-f346ea9a]{font-size:clamp(21px,1.6vw,26px)}.metric-value--pair span[data-v-f346ea9a]{margin:0 4px;color:var(--el-text-color-placeholder);font-weight:400}.metric-foot[data-v-f346ea9a]{gap:3px;min-height:18px;margin-top:5px;color:var(--el-text-color-placeholder);font-size:11px}.metric-foot.is-positive[data-v-f346ea9a]{color:#18865f}.metric-foot.is-negative[data-v-f346ea9a]{color:#d04c55}.metric-foot.is-flat[data-v-f346ea9a]{color:var(--el-text-color-secondary)}.metric-comparisons[data-v-f346ea9a]{display:flex;flex-wrap:wrap;-moz-column-gap:12px;column-gap:12px;min-height:18px}.metric-hint[data-v-f346ea9a]{margin-top:2px;overflow:hidden;color:var(--el-text-color-placeholder);font-size:10px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}.dashboard-grid[data-v-f346ea9a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.dashboard-grid--rankings[data-v-f346ea9a]{align-items:stretch}.dashboard-grid--bottom[data-v-f346ea9a]{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)}.dashboard-panel[data-v-f346ea9a]{min-width:0;padding:16px}.panel-header[data-v-f346ea9a]{justify-content:space-between;gap:16px;margin-bottom:14px}.panel-header h2[data-v-f346ea9a]{margin:0;font-size:15px;line-height:1.35}.panel-header-actions[data-v-f346ea9a]{display:flex;align-items:center;gap:8px;flex-shrink:0}.ranking-dept-select[data-v-f346ea9a]{width:180px}.panel-meta[data-v-f346ea9a]{padding:4px 7px;color:var(--dash-text-muted);font-size:10px;background:var(--dash-surface-muted)}.ranking-list[data-v-f346ea9a]{display:grid;gap:8px}.ranking-row[data-v-f346ea9a]{gap:10px;min-height:47px;padding:7px 9px;border-radius:11px;background:var(--dash-surface-muted)}.ranking-index[data-v-f346ea9a]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex:0 0 26px;border-radius:8px;color:var(--dash-text-muted);font-size:11px;font-weight:750;background:var(--el-fill-color-light)}.ranking-index.is-top[data-v-f346ea9a]{color:#fff;background:var(--dash-accent)}.ranking-main[data-v-f346ea9a]{min-width:0;flex:1}.ranking-copy[data-v-f346ea9a]{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:5px}.ranking-copy strong[data-v-f346ea9a]{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ranking-copy span[data-v-f346ea9a]{flex-shrink:0;color:var(--el-text-color-placeholder);font-size:10px}.ranking-meter[data-v-f346ea9a]{height:5px;overflow:hidden;border-radius:5px;background:var(--el-fill-color-light)}.ranking-meter span[data-v-f346ea9a]{display:block;height:100%;border-radius:inherit;background:var(--dash-accent);transition:width .25s ease}.ranking-value[data-v-f346ea9a]{min-width:38px;color:var(--dash-text);font-family:DIN Alternate,Roboto Mono,monospace;font-size:13px;text-align:right}.ranking-value--money[data-v-f346ea9a]{min-width:78px}.trend-chart[data-v-f346ea9a]{width:100%;height:300px}.target-panel[data-v-f346ea9a]{display:flex;flex-direction:column}.target-block[data-v-f346ea9a]{padding:14px;border-radius:12px;background:var(--dash-surface-muted)}.target-block+.target-block[data-v-f346ea9a]{margin-top:10px}.target-block--secondary[data-v-f346ea9a]{margin-top:10px}.target-copy[data-v-f346ea9a]{margin-bottom:10px}.target-copy>div[data-v-f346ea9a]{justify-content:space-between;gap:12px}.target-copy span[data-v-f346ea9a]{color:var(--dash-text-muted);font-size:12px}.target-copy strong[data-v-f346ea9a]{font-family:DIN Alternate,Roboto Mono,monospace;font-size:18px}.target-empty-note[data-v-f346ea9a]{margin-top:10px;padding:9px 10px;border-radius:10px;color:var(--el-text-color-secondary);font-size:11px;line-height:1.5;background:color-mix(in srgb,var(--el-color-warning) 8%,transparent)}.dashboard-notes[data-v-f346ea9a]{gap:6px;padding:0 2px 8px;color:var(--el-text-color-placeholder);font-size:11px;line-height:1.5}@media (prefers-reduced-motion: reduce){.ranking-meter span[data-v-f346ea9a]{transition:none}}@media (max-width: 1200px){.performance-strip[data-v-f346ea9a]{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid--bottom[data-v-f346ea9a]{grid-template-columns:1fr}.operating-grid[data-v-f346ea9a]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.operating-grid[data-v-f346ea9a],.dashboard-grid[data-v-f346ea9a]{grid-template-columns:1fr}.dashboard-header[data-v-f346ea9a]{align-items:flex-start}.updated-at[data-v-f346ea9a]{display:none}}@media (max-width: 640px){.performance-dashboard[data-v-f346ea9a]{padding:10px}.dashboard-header[data-v-f346ea9a]{flex-direction:column;padding:14px}.dashboard-actions[data-v-f346ea9a],.dashboard-actions[data-v-f346ea9a] .el-button{width:100%}.performance-strip[data-v-f346ea9a]{grid-template-columns:1fr}.panel-header--stack-mobile[data-v-f346ea9a]{align-items:flex-start;flex-direction:column}.panel-header-actions[data-v-f346ea9a]{align-items:flex-end;flex-direction:column}.ranking-dept-select[data-v-f346ea9a]{width:150px}.ranking-copy span[data-v-f346ea9a]{display:none}.ranking-value--money[data-v-f346ea9a]{min-width:65px;font-size:12px}}
diff --git a/server/public/admin/assets/index-DbmIgFPx.js b/server/public/admin/assets/index-DbmIgFPx.js
new file mode 100644
index 000000000..89444924b
--- /dev/null
+++ b/server/public/admin/assets/index-DbmIgFPx.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-Bd7UJRqW.js
+import{o as U,ap as se,be as de,q as i,r as b,v as n,D as o,s as c,T as _,u as t,bg as ie,b9 as re,C as F,b6 as ce,bm as me,bn as ue,F as R,G as B,O as p,cB as _e,bK as pe,b7 as fe,b8 as he,K as ge,L as u,ac as x,bj as be,bk as ve,br as ye,bi as Ce,P as ke,a8 as we,M as xe,ba as Ee,p as E,n as P}from"./.pnpm-BadRMC3e.js";import{_ as Ve}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as Te,i as Le,_ as De}from"./index-C360OAjQ.js";import{e as Fe,f as Se}from"./finance-B0N777VW.js";import{u as Ae}from"./usePaging-DMqUvFG-.js";import{L as Re,u as Be}from"./useListTimeFilter-BJxb8Pfi.js";import Pe from"./edit-CLaM2cle.js";import"./index-2cRJ7Pdu.js";const Ue={class:"account-cost-list"},Oe={class:"flex flex-wrap"},$e={class:"w-1/2 md:w-1/3"},Ge={class:"text-4xl"},Ke={class:"w-1/2 md:w-1/3"},Ne={class:"text-4xl"},ze={class:"channel-opt-row"},Ie={class:"opt-name"},Me={key:0},je={key:1},qe={class:"flex justify-end mt-4"},Qe=U({name:"accountCostList"}),He=U({...Qe,setup(Je){const v=we(),y=xe(!1),r=Ee({media_channel_code:"",dept_id:"",remark:""}),{time_type:V,dateRange:T,resolve:O,handleTimeTypeChange:$,handleCustomDateChange:G,resetTimeFilter:K}=Be("today"),{pager:s,getLists:f}=Ae({fetchFun:async l=>{const[e,d]=O();return Fe({...l,start_date:e,end_date:d})},params:r}),C=()=>{s.page=1,f()},N=()=>$(C),z=()=>G(C),I=E(()=>{const l=s.extend.media_channel_options;return Array.isArray(l)?l.map(e=>({code:String(e.code||""),name:String(e.name||"")})):[]}),L=E(()=>{const l=s.extend.media_channel_groups;if(Array.isArray(l)&&l.length>0)return l;const e=I.value;return e.length?[{group_name:"渠道",channels:e.map(d=>({channel_code:d.code,channel_name:d.name}))}]:[]}),S=E(()=>{const l=s.extend.dept_options;return Array.isArray(l)?l:[]}),M=E(()=>String(s.extend.default_media_channel_code||"")),A=l=>{if(!l)return"";for(const e of L.value)if(e.channels.find(k=>k.channel_code===l))return e.group_name;return""},j={value:"id",label:"name",children:"children"},q=async()=>{var l;y.value=!0,await P(),(l=v.value)==null||l.open("add")},Q=async l=>{var e,d;y.value=!0,await P(),(e=v.value)==null||e.open("edit"),(d=v.value)==null||d.getDetail(l)},H=async l=>{await Le.confirm("确定要删除这条账户消耗记录吗?"),await Se({id:l}),f()},J=()=>{K(),r.media_channel_code="",r.dept_id="",r.remark="",s.page=1,s.size=15,f()};return se(()=>{f()}),(l,e)=>{const d=ie,k=ue,W=_e,X=me,w=ce,Y=pe,Z=fe,g=ge,ee=re,ne=Te,m=ve,ae=ye,te=be,le=Ve,D=de("perms"),oe=Ce;return i(),b("div",Ue,[n(d,{class:"!border-none mb-4",shadow:"never"},{default:o(()=>[c("div",Oe,[c("div",$e,[e[7]||(e[7]=c("div",{class:"leading-10"},"当前筛选天数",-1)),c("div",Ge,_(t(s).extend.days_count??0),1)]),c("div",Ke,[e[8]||(e[8]=c("div",{class:"leading-10"},"累计账户消耗 (元)",-1)),c("div",Ne,"¥"+_(t(s).extend.total_amount??"0.00"),1)])])]),_:1}),n(d,{class:"!border-none",shadow:"never"},{default:o(()=>[n(ee,{inline:!0,model:t(r),class:"stats-filter-form"},{default:o(()=>[n(Re,{"time-type":t(V),"onUpdate:timeType":e[0]||(e[0]=a=>F(V)?V.value=a:null),"date-range":t(T),"onUpdate:dateRange":e[1]||(e[1]=a=>F(T)?T.value=a:null),onTimeTypeChange:N,onCustomChange:z},null,8,["time-type","date-range"]),n(w,{label:"自媒体渠道"},{default:o(()=>[n(X,{modelValue:t(r).media_channel_code,"onUpdate:modelValue":e[2]||(e[2]=a=>t(r).media_channel_code=a),placeholder:"筛选全部渠道",clearable:"",filterable:"",class:"account-cost-channel-select w-[220px]"},{default:o(()=>[n(k,{label:"全部",value:""}),(i(!0),b(R,null,B(t(L),a=>(i(),p(W,{key:a.group_name,label:a.group_name},{default:o(()=>[(i(!0),b(R,null,B(a.channels,h=>(i(),p(k,{key:h.channel_code,label:h.channel_name,value:h.channel_code},{default:o(()=>[c("div",ze,[c("span",Ie,_(h.channel_name),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(w,{label:"部门"},{default:o(()=>[n(Y,{modelValue:t(r).dept_id,"onUpdate:modelValue":e[3]||(e[3]=a=>t(r).dept_id=a),data:t(S),"node-key":"id",props:j,"default-expand-all":!0,"check-strictly":"",placeholder:"筛选全部部门",clearable:"",filterable:"",class:"w-[220px]"},null,8,["modelValue","data"])]),_:1}),n(w,{class:"w-[280px]",label:"备注/维护人"},{default:o(()=>[n(Z,{modelValue:t(r).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>t(r).remark=a),placeholder:"备注 / 创建人 / 修改人",clearable:"",onKeyup:he(C,["enter"])},null,8,["modelValue"])]),_:1}),n(w,null,{default:o(()=>[n(g,{type:"primary",loading:t(s).loading,onClick:C},{default:o(()=>[...e[9]||(e[9]=[u("查询",-1)])]),_:1},8,["loading"]),n(g,{onClick:J},{default:o(()=>[...e[10]||(e[10]=[u("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),n(d,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[c("div",null,[x((i(),p(g,{type:"primary",onClick:q},{icon:o(()=>[n(ne,{name:"el-icon-Plus"})]),default:o(()=>[e[11]||(e[11]=u(" 新增 ",-1))]),_:1})),[[D,["finance.account_cost/add"]]])]),x((i(),p(te,{class:"mt-4",size:"large",data:t(s).lists},{default:o(()=>[n(m,{label:"日期",prop:"cost_date","min-width":"120"}),n(m,{label:"自媒体渠道","min-width":"160"},{default:o(({row:a})=>[A(a.media_channel_code)?(i(),b("span",Me,[n(ae,{size:"small",class:"mr-1"},{default:o(()=>[u(_(A(a.media_channel_code)),1)]),_:2},1024),u(" "+_(a.media_channel_name),1)])):(i(),b("span",je,_(a.media_channel_name),1))]),_:1}),n(m,{label:"部门",prop:"dept_name","min-width":"140"}),n(m,{label:"账户消耗","min-width":"120"},{default:o(({row:a})=>[u("¥"+_(a.amount),1)]),_:1}),n(m,{label:"备注",prop:"remark","min-width":"260","show-overflow-tooltip":""}),n(m,{label:"创建人",prop:"creator_name","min-width":"100"}),n(m,{label:"最后修改人",prop:"updater_name","min-width":"100"}),n(m,{label:"更新时间",prop:"update_time","min-width":"180"}),n(m,{label:"操作",width:"160",fixed:"right"},{default:o(({row:a})=>[x((i(),p(g,{type:"primary",link:"",onClick:h=>Q(a)},{default:o(()=>[...e[12]||(e[12]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[D,["finance.account_cost/edit"]]]),x((i(),p(g,{type:"danger",link:"",onClick:h=>H(a.id)},{default:o(()=>[...e[13]||(e[13]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[D,["finance.account_cost/delete"]]])]),_:1})]),_:1},8,["data"])),[[oe,t(s).loading]]),c("div",qe,[n(le,{modelValue:t(s),"onUpdate:modelValue":e[5]||(e[5]=a=>F(s)?s.value=a:null),onChange:t(f)},null,8,["modelValue","onChange"])])]),_:1}),t(y)?(i(),p(Pe,{key:0,ref_key:"editRef",ref:v,"media-channel-groups":t(L),"dept-options":t(S),"default-media-channel-code":t(M),onSuccess:t(f),onClose:e[6]||(e[6]=a=>y.value=!1)},null,8,["media-channel-groups","dept-options","default-media-channel-code","onSuccess"])):ke("",!0)])}}}),ln=De(He,[["__scopeId","data-v-c0f83fa0"]]);export{ln as default};
+========
+import{o as U,ap as se,be as de,q as i,r as b,v as n,D as o,s as c,T as _,u as t,bg as ie,b9 as re,C as F,b6 as ce,bm as me,bn as ue,F as R,G as B,O as p,cB as _e,bK as pe,b7 as fe,b8 as he,K as ge,L as u,ac as x,bj as be,bk as ve,br as ye,bi as Ce,P as ke,a8 as we,M as xe,ba as Ee,p as E,n as P}from"./.pnpm-BadRMC3e.js";import{_ as Ve}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as Te,i as Le,_ as De}from"./index-C53kWH2_.js";import{e as Fe,f as Se}from"./finance-Bq17dJIj.js";import{u as Ae}from"./usePaging-DMqUvFG-.js";import{L as Re,u as Be}from"./useListTimeFilter-DAT-jls6.js";import Pe from"./edit-B8KL1Fm3.js";import"./index-ByXR3YHf.js";const Ue={class:"account-cost-list"},Oe={class:"flex flex-wrap"},$e={class:"w-1/2 md:w-1/3"},Ge={class:"text-4xl"},Ke={class:"w-1/2 md:w-1/3"},Ne={class:"text-4xl"},ze={class:"channel-opt-row"},Ie={class:"opt-name"},Me={key:0},je={key:1},qe={class:"flex justify-end mt-4"},Qe=U({name:"accountCostList"}),He=U({...Qe,setup(Je){const v=we(),y=xe(!1),r=Ee({media_channel_code:"",dept_id:"",remark:""}),{time_type:V,dateRange:T,resolve:O,handleTimeTypeChange:$,handleCustomDateChange:G,resetTimeFilter:K}=Be("today"),{pager:s,getLists:f}=Ae({fetchFun:async l=>{const[e,d]=O();return Fe({...l,start_date:e,end_date:d})},params:r}),C=()=>{s.page=1,f()},N=()=>$(C),z=()=>G(C),I=E(()=>{const l=s.extend.media_channel_options;return Array.isArray(l)?l.map(e=>({code:String(e.code||""),name:String(e.name||"")})):[]}),L=E(()=>{const l=s.extend.media_channel_groups;if(Array.isArray(l)&&l.length>0)return l;const e=I.value;return e.length?[{group_name:"渠道",channels:e.map(d=>({channel_code:d.code,channel_name:d.name}))}]:[]}),S=E(()=>{const l=s.extend.dept_options;return Array.isArray(l)?l:[]}),M=E(()=>String(s.extend.default_media_channel_code||"")),A=l=>{if(!l)return"";for(const e of L.value)if(e.channels.find(k=>k.channel_code===l))return e.group_name;return""},j={value:"id",label:"name",children:"children"},q=async()=>{var l;y.value=!0,await P(),(l=v.value)==null||l.open("add")},Q=async l=>{var e,d;y.value=!0,await P(),(e=v.value)==null||e.open("edit"),(d=v.value)==null||d.getDetail(l)},H=async l=>{await Le.confirm("确定要删除这条账户消耗记录吗?"),await Se({id:l}),f()},J=()=>{K(),r.media_channel_code="",r.dept_id="",r.remark="",s.page=1,s.size=15,f()};return se(()=>{f()}),(l,e)=>{const d=ie,k=ue,W=_e,X=me,w=ce,Y=pe,Z=fe,g=ge,ee=re,ne=Te,m=ve,ae=ye,te=be,le=Ve,D=de("perms"),oe=Ce;return i(),b("div",Ue,[n(d,{class:"!border-none mb-4",shadow:"never"},{default:o(()=>[c("div",Oe,[c("div",$e,[e[7]||(e[7]=c("div",{class:"leading-10"},"当前筛选天数",-1)),c("div",Ge,_(t(s).extend.days_count??0),1)]),c("div",Ke,[e[8]||(e[8]=c("div",{class:"leading-10"},"累计账户消耗 (元)",-1)),c("div",Ne,"¥"+_(t(s).extend.total_amount??"0.00"),1)])])]),_:1}),n(d,{class:"!border-none",shadow:"never"},{default:o(()=>[n(ee,{inline:!0,model:t(r),class:"stats-filter-form"},{default:o(()=>[n(Re,{"time-type":t(V),"onUpdate:timeType":e[0]||(e[0]=a=>F(V)?V.value=a:null),"date-range":t(T),"onUpdate:dateRange":e[1]||(e[1]=a=>F(T)?T.value=a:null),onTimeTypeChange:N,onCustomChange:z},null,8,["time-type","date-range"]),n(w,{label:"自媒体渠道"},{default:o(()=>[n(X,{modelValue:t(r).media_channel_code,"onUpdate:modelValue":e[2]||(e[2]=a=>t(r).media_channel_code=a),placeholder:"筛选全部渠道",clearable:"",filterable:"",class:"account-cost-channel-select w-[220px]"},{default:o(()=>[n(k,{label:"全部",value:""}),(i(!0),b(R,null,B(t(L),a=>(i(),p(W,{key:a.group_name,label:a.group_name},{default:o(()=>[(i(!0),b(R,null,B(a.channels,h=>(i(),p(k,{key:h.channel_code,label:h.channel_name,value:h.channel_code},{default:o(()=>[c("div",ze,[c("span",Ie,_(h.channel_name),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])]),_:1}),n(w,{label:"部门"},{default:o(()=>[n(Y,{modelValue:t(r).dept_id,"onUpdate:modelValue":e[3]||(e[3]=a=>t(r).dept_id=a),data:t(S),"node-key":"id",props:j,"default-expand-all":!0,"check-strictly":"",placeholder:"筛选全部部门",clearable:"",filterable:"",class:"w-[220px]"},null,8,["modelValue","data"])]),_:1}),n(w,{class:"w-[280px]",label:"备注/维护人"},{default:o(()=>[n(Z,{modelValue:t(r).remark,"onUpdate:modelValue":e[4]||(e[4]=a=>t(r).remark=a),placeholder:"备注 / 创建人 / 修改人",clearable:"",onKeyup:he(C,["enter"])},null,8,["modelValue"])]),_:1}),n(w,null,{default:o(()=>[n(g,{type:"primary",loading:t(s).loading,onClick:C},{default:o(()=>[...e[9]||(e[9]=[u("查询",-1)])]),_:1},8,["loading"]),n(g,{onClick:J},{default:o(()=>[...e[10]||(e[10]=[u("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),n(d,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[c("div",null,[x((i(),p(g,{type:"primary",onClick:q},{icon:o(()=>[n(ne,{name:"el-icon-Plus"})]),default:o(()=>[e[11]||(e[11]=u(" 新增 ",-1))]),_:1})),[[D,["finance.account_cost/add"]]])]),x((i(),p(te,{class:"mt-4",size:"large",data:t(s).lists},{default:o(()=>[n(m,{label:"日期",prop:"cost_date","min-width":"120"}),n(m,{label:"自媒体渠道","min-width":"160"},{default:o(({row:a})=>[A(a.media_channel_code)?(i(),b("span",Me,[n(ae,{size:"small",class:"mr-1"},{default:o(()=>[u(_(A(a.media_channel_code)),1)]),_:2},1024),u(" "+_(a.media_channel_name),1)])):(i(),b("span",je,_(a.media_channel_name),1))]),_:1}),n(m,{label:"部门",prop:"dept_name","min-width":"140"}),n(m,{label:"账户消耗","min-width":"120"},{default:o(({row:a})=>[u("¥"+_(a.amount),1)]),_:1}),n(m,{label:"备注",prop:"remark","min-width":"260","show-overflow-tooltip":""}),n(m,{label:"创建人",prop:"creator_name","min-width":"100"}),n(m,{label:"最后修改人",prop:"updater_name","min-width":"100"}),n(m,{label:"更新时间",prop:"update_time","min-width":"180"}),n(m,{label:"操作",width:"160",fixed:"right"},{default:o(({row:a})=>[x((i(),p(g,{type:"primary",link:"",onClick:h=>Q(a)},{default:o(()=>[...e[12]||(e[12]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[D,["finance.account_cost/edit"]]]),x((i(),p(g,{type:"danger",link:"",onClick:h=>H(a.id)},{default:o(()=>[...e[13]||(e[13]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[D,["finance.account_cost/delete"]]])]),_:1})]),_:1},8,["data"])),[[oe,t(s).loading]]),c("div",qe,[n(le,{modelValue:t(s),"onUpdate:modelValue":e[5]||(e[5]=a=>F(s)?s.value=a:null),onChange:t(f)},null,8,["modelValue","onChange"])])]),_:1}),t(y)?(i(),p(Pe,{key:0,ref_key:"editRef",ref:v,"media-channel-groups":t(L),"dept-options":t(S),"default-media-channel-code":t(M),onSuccess:t(f),onClose:e[6]||(e[6]=a=>y.value=!1)},null,8,["media-channel-groups","dept-options","default-media-channel-code","onSuccess"])):ke("",!0)])}}}),ln=De(He,[["__scopeId","data-v-c0f83fa0"]]);export{ln as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-DbmIgFPx.js
diff --git a/server/public/admin/assets/index-DcSBJkxh.js b/server/public/admin/assets/index-DcSBJkxh.js
index 03330257d..c796e7633 100644
--- a/server/public/admin/assets/index-DcSBJkxh.js
+++ b/server/public/admin/assets/index-DcSBJkxh.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DcSBJkxh.js
import{_ as r,c}from"./index-C360OAjQ.js";import{o as d,q as s,r as n,ah as p,aw as i,v as _,P as m}from"./.pnpm-BadRMC3e.js";const f=d({props:{showClose:{type:Boolean,default:!0}},emits:["close"],setup(e,{emit:o}){return{handleClose:()=>{o("close")}}}}),u={class:"del-wrap"};function C(e,o,t,h,$,v){const a=c;return s(),n("div",u,[p(e.$slots,"default",{},void 0,!0),e.showClose?(s(),n("div",{key:0,class:"icon-close",onClick:o[0]||(o[0]=i((...l)=>e.handleClose&&e.handleClose(...l),["stop"]))},[_(a,{size:12,name:"el-icon-CloseBold"})])):m("",!0)])}const B=r(f,[["render",C],["__scopeId","data-v-acafd744"]]);export{B as _};
+========
+import{_ as r,c}from"./index-C53kWH2_.js";import{o as d,q as s,r as n,ah as p,aw as i,v as _,P as m}from"./.pnpm-BadRMC3e.js";const f=d({props:{showClose:{type:Boolean,default:!0}},emits:["close"],setup(e,{emit:o}){return{handleClose:()=>{o("close")}}}}),u={class:"del-wrap"};function C(e,o,t,h,$,v){const a=c;return s(),n("div",u,[p(e.$slots,"default",{},void 0,!0),e.showClose?(s(),n("div",{key:0,class:"icon-close",onClick:o[0]||(o[0]=i((...l)=>e.handleClose&&e.handleClose(...l),["stop"]))},[_(a,{size:12,name:"el-icon-CloseBold"})])):m("",!0)])}const B=r(f,[["render",C],["__scopeId","data-v-acafd744"]]);export{B as _};
+>>>>>>>> yz-0803:server/public/admin/assets/index-ZgwwU4Et.js
diff --git a/server/public/admin/assets/index-Ddmx9uTb.js b/server/public/admin/assets/index-Ddmx9uTb.js
index c05c1ffd7..dc83916f7 100644
--- a/server/public/admin/assets/index-Ddmx9uTb.js
+++ b/server/public/admin/assets/index-Ddmx9uTb.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-Ddmx9uTb.js
import{o as T,x as O,be as Z,q as s,r as y,v as t,D as o,b9 as H,u as n,b6 as J,b7 as Q,b8 as K,K as W,L as d,bg as X,ac as i,bi as Y,O as u,s as w,bj as ee,bk as te,$ as oe,Z as ne,_ as ae,C as le,P as se,ba as S,M as re}from"./.pnpm-BadRMC3e.js";import{_ as de}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as ie,k as me,i as x}from"./index-C360OAjQ.js";import{b as ue,c as pe,d as _e,e as ce,s as fe}from"./code-E0zUPemA.js";import{u as be}from"./usePaging-DMqUvFG-.js";import{_ as ge}from"./code-preview.vue_vue_type_script_setup_true_lang-0t8uHLli.js";import{_ as ye}from"./data-table.vue_vue_type_script_setup_true_lang-CdfS9qil.js";import"./index-2cRJ7Pdu.js";const we={class:"code-generation"},ve={class:"flex"},ke={class:"mt-4"},Ce={class:"flex items-center"},Ve={class:"flex justify-end mt-4"},xe=T({name:"codeGenerate"}),Ie=T({...xe,setup(Ee){const p=S({table_name:"",table_comment:""}),_=S({show:!1,loading:!1,code:[]}),{pager:f,getLists:g,resetParams:B,resetPage:v}=be({fetchFun:ue,params:p}),b=re([]),I=a=>{b.value=a.map(({id:e})=>e)},N=async a=>{await x.confirm("确定要同步表结构?"),await fe({id:a})},E=async a=>{await x.confirm("确定要删除?"),await pe({id:a}),g()},U=async a=>{const e=await _e({id:a});_.code=e,_.show=!0},F=a=>a.some(e=>e.generate_type==1),D=async a=>{if(F(a))return x.msgError("生成方式为生成到模块,请在前端开发模式下使用,详细参考文档");const e=await ce({id:a});e.file&&window.open(e.file,"_blank")},G=(a,e)=>{switch(a){case"generate":D([e.id]);break;case"sync":N(e.id);break;case"delete":E(e.id)}};return g(),(a,e)=>{const P=Q,k=J,r=W,L=H,$=X,C=ie,c=te,M=O("router-link"),V=ae,j=ne,q=oe,z=ee,R=de,m=Z("perms"),A=Y;return s(),y("div",we,[t($,{class:"!border-none",shadow:"never"},{default:o(()=>[t(L,{class:"mb-[-16px]",model:n(p),inline:""},{default:o(()=>[t(k,{class:"w-[280px]",label:"表名称"},{default:o(()=>[t(P,{modelValue:n(p).table_name,"onUpdate:modelValue":e[0]||(e[0]=l=>n(p).table_name=l),clearable:"",onKeyup:K(n(v),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,{class:"w-[280px]",label:"表描述"},{default:o(()=>[t(P,{modelValue:n(p).table_comment,"onUpdate:modelValue":e[1]||(e[1]=l=>n(p).table_comment=l),clearable:"",onKeyup:K(n(v),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,null,{default:o(()=>[t(r,{type:"primary",onClick:n(v)},{default:o(()=>[...e[6]||(e[6]=[d("查询",-1)])]),_:1},8,["onClick"]),t(r,{onClick:n(B)},{default:o(()=>[...e[7]||(e[7]=[d("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),i((s(),u($,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[w("div",ve,[i((s(),u(ye,{class:"inline-block mr-[10px]",onSuccess:n(g)},{default:o(()=>[t(r,{type:"primary"},{icon:o(()=>[t(C,{name:"el-icon-Plus"})]),default:o(()=>[e[8]||(e[8]=d(" 导入数据表 ",-1))]),_:1})]),_:1},8,["onSuccess"])),[[m,["tools.generator/selectTable"]]]),i((s(),u(r,{disabled:!n(b).length,onClick:e[2]||(e[2]=l=>E(n(b))),type:"danger"},{icon:o(()=>[t(C,{name:"el-icon-Delete"})]),default:o(()=>[e[9]||(e[9]=d(" 删除 ",-1))]),_:1},8,["disabled"])),[[m,["tools.generator/delete"]]]),i((s(),u(r,{disabled:!n(b).length,onClick:e[3]||(e[3]=l=>D(n(b)))},{default:o(()=>[...e[10]||(e[10]=[d(" 生成代码 ",-1)])]),_:1},8,["disabled"])),[[m,["tools.generator/generate"]]])]),w("div",ke,[t(z,{data:n(f).lists,size:"large",onSelectionChange:I},{default:o(()=>[t(c,{type:"selection",width:"55"}),t(c,{label:"表名称",prop:"table_name","min-width":"180"}),t(c,{label:"表描述",prop:"table_comment","min-width":"180"}),t(c,{label:"创建时间",prop:"create_time","min-width":"180"}),t(c,{label:"更新时间",prop:"update_time","min-width":"180"}),t(c,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[w("div",Ce,[i((s(),u(r,{type:"primary",link:"",onClick:h=>U(l.id)},{default:o(()=>[...e[11]||(e[11]=[d(" 预览 ",-1)])]),_:1},8,["onClick"])),[[m,["tools.generator/preview"]]]),t(r,{type:"primary",link:""},{default:o(()=>[i((s(),u(M,{to:{path:n(me)("tools.generator/edit"),query:{id:l.id}}},{default:o(()=>[...e[12]||(e[12]=[d(" 编辑 ",-1)])]),_:1},8,["to"])),[[m,["tools.generator/edit"]]])]),_:2},1024),i((s(),u(q,{class:"ml-2",onCommand:h=>G(h,l)},{dropdown:o(()=>[t(j,null,{default:o(()=>[i((s(),y("div",null,[t(V,{command:"generate"},{default:o(()=>[t(r,{type:"primary",link:""},{default:o(()=>[...e[14]||(e[14]=[d(" 生成代码 ",-1)])]),_:1})]),_:1})])),[[m,["tools.generator/generate"]]]),i((s(),y("div",null,[t(V,{command:"sync"},{default:o(()=>[t(r,{type:"primary",link:""},{default:o(()=>[...e[15]||(e[15]=[d(" 同步 ",-1)])]),_:1})]),_:1})])),[[m,["tools.generator/syncColumn"]]]),i((s(),y("div",null,[t(V,{command:"delete"},{default:o(()=>[t(r,{type:"danger",link:""},{default:o(()=>[...e[16]||(e[16]=[d(" 删除 ",-1)])]),_:1})]),_:1})])),[[m,["tools.generator/delete"]]])]),_:1})]),default:o(()=>[t(r,{type:"primary",link:""},{default:o(()=>[e[13]||(e[13]=d(" 更多 ",-1)),t(C,{name:"el-icon-ArrowDown",size:14})]),_:1})]),_:1},8,["onCommand"])),[[m,["tools.generator/generate","tools.generator/syncColumn","tools.generator/delete"]]])])]),_:1})]),_:1},8,["data"])]),w("div",Ve,[t(R,{modelValue:n(f),"onUpdate:modelValue":e[4]||(e[4]=l=>le(f)?f.value=l:null),onChange:n(g)},null,8,["modelValue","onChange"])])]),_:1})),[[A,n(f).loading]]),n(_).show?(s(),u(ge,{key:0,modelValue:n(_).show,"onUpdate:modelValue":e[5]||(e[5]=l=>n(_).show=l),code:n(_).code},null,8,["modelValue","code"])):se("",!0)])}}});export{Ie as default};
+========
+import{o as T,x as O,be as Z,q as s,r as y,v as t,D as o,b9 as H,u as n,b6 as J,b7 as Q,b8 as K,K as W,L as d,bg as X,ac as i,bi as Y,O as u,s as w,bj as ee,bk as te,$ as oe,Z as ne,_ as ae,C as le,P as se,ba as S,M as re}from"./.pnpm-BadRMC3e.js";import{_ as de}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as ie,k as me,i as x}from"./index-C53kWH2_.js";import{b as ue,c as pe,d as _e,e as ce,s as fe}from"./code-LycBF-nK.js";import{u as be}from"./usePaging-DMqUvFG-.js";import{_ as ge}from"./code-preview.vue_vue_type_script_setup_true_lang-_t4O_5yy.js";import{_ as ye}from"./data-table.vue_vue_type_script_setup_true_lang-CAkRlDYl.js";import"./index-ByXR3YHf.js";const we={class:"code-generation"},ve={class:"flex"},ke={class:"mt-4"},Ce={class:"flex items-center"},Ve={class:"flex justify-end mt-4"},xe=T({name:"codeGenerate"}),Ie=T({...xe,setup(Ee){const p=S({table_name:"",table_comment:""}),_=S({show:!1,loading:!1,code:[]}),{pager:f,getLists:g,resetParams:B,resetPage:v}=be({fetchFun:ue,params:p}),b=re([]),I=a=>{b.value=a.map(({id:e})=>e)},N=async a=>{await x.confirm("确定要同步表结构?"),await fe({id:a})},E=async a=>{await x.confirm("确定要删除?"),await pe({id:a}),g()},U=async a=>{const e=await _e({id:a});_.code=e,_.show=!0},F=a=>a.some(e=>e.generate_type==1),D=async a=>{if(F(a))return x.msgError("生成方式为生成到模块,请在前端开发模式下使用,详细参考文档");const e=await ce({id:a});e.file&&window.open(e.file,"_blank")},G=(a,e)=>{switch(a){case"generate":D([e.id]);break;case"sync":N(e.id);break;case"delete":E(e.id)}};return g(),(a,e)=>{const P=Q,k=J,r=W,L=H,$=X,C=ie,c=te,M=O("router-link"),V=ae,j=ne,q=oe,z=ee,R=de,m=Z("perms"),A=Y;return s(),y("div",we,[t($,{class:"!border-none",shadow:"never"},{default:o(()=>[t(L,{class:"mb-[-16px]",model:n(p),inline:""},{default:o(()=>[t(k,{class:"w-[280px]",label:"表名称"},{default:o(()=>[t(P,{modelValue:n(p).table_name,"onUpdate:modelValue":e[0]||(e[0]=l=>n(p).table_name=l),clearable:"",onKeyup:K(n(v),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,{class:"w-[280px]",label:"表描述"},{default:o(()=>[t(P,{modelValue:n(p).table_comment,"onUpdate:modelValue":e[1]||(e[1]=l=>n(p).table_comment=l),clearable:"",onKeyup:K(n(v),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),t(k,null,{default:o(()=>[t(r,{type:"primary",onClick:n(v)},{default:o(()=>[...e[6]||(e[6]=[d("查询",-1)])]),_:1},8,["onClick"]),t(r,{onClick:n(B)},{default:o(()=>[...e[7]||(e[7]=[d("重置",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["model"])]),_:1}),i((s(),u($,{class:"!border-none mt-4",shadow:"never"},{default:o(()=>[w("div",ve,[i((s(),u(ye,{class:"inline-block mr-[10px]",onSuccess:n(g)},{default:o(()=>[t(r,{type:"primary"},{icon:o(()=>[t(C,{name:"el-icon-Plus"})]),default:o(()=>[e[8]||(e[8]=d(" 导入数据表 ",-1))]),_:1})]),_:1},8,["onSuccess"])),[[m,["tools.generator/selectTable"]]]),i((s(),u(r,{disabled:!n(b).length,onClick:e[2]||(e[2]=l=>E(n(b))),type:"danger"},{icon:o(()=>[t(C,{name:"el-icon-Delete"})]),default:o(()=>[e[9]||(e[9]=d(" 删除 ",-1))]),_:1},8,["disabled"])),[[m,["tools.generator/delete"]]]),i((s(),u(r,{disabled:!n(b).length,onClick:e[3]||(e[3]=l=>D(n(b)))},{default:o(()=>[...e[10]||(e[10]=[d(" 生成代码 ",-1)])]),_:1},8,["disabled"])),[[m,["tools.generator/generate"]]])]),w("div",ke,[t(z,{data:n(f).lists,size:"large",onSelectionChange:I},{default:o(()=>[t(c,{type:"selection",width:"55"}),t(c,{label:"表名称",prop:"table_name","min-width":"180"}),t(c,{label:"表描述",prop:"table_comment","min-width":"180"}),t(c,{label:"创建时间",prop:"create_time","min-width":"180"}),t(c,{label:"更新时间",prop:"update_time","min-width":"180"}),t(c,{label:"操作",width:"160",fixed:"right"},{default:o(({row:l})=>[w("div",Ce,[i((s(),u(r,{type:"primary",link:"",onClick:h=>U(l.id)},{default:o(()=>[...e[11]||(e[11]=[d(" 预览 ",-1)])]),_:1},8,["onClick"])),[[m,["tools.generator/preview"]]]),t(r,{type:"primary",link:""},{default:o(()=>[i((s(),u(M,{to:{path:n(me)("tools.generator/edit"),query:{id:l.id}}},{default:o(()=>[...e[12]||(e[12]=[d(" 编辑 ",-1)])]),_:1},8,["to"])),[[m,["tools.generator/edit"]]])]),_:2},1024),i((s(),u(q,{class:"ml-2",onCommand:h=>G(h,l)},{dropdown:o(()=>[t(j,null,{default:o(()=>[i((s(),y("div",null,[t(V,{command:"generate"},{default:o(()=>[t(r,{type:"primary",link:""},{default:o(()=>[...e[14]||(e[14]=[d(" 生成代码 ",-1)])]),_:1})]),_:1})])),[[m,["tools.generator/generate"]]]),i((s(),y("div",null,[t(V,{command:"sync"},{default:o(()=>[t(r,{type:"primary",link:""},{default:o(()=>[...e[15]||(e[15]=[d(" 同步 ",-1)])]),_:1})]),_:1})])),[[m,["tools.generator/syncColumn"]]]),i((s(),y("div",null,[t(V,{command:"delete"},{default:o(()=>[t(r,{type:"danger",link:""},{default:o(()=>[...e[16]||(e[16]=[d(" 删除 ",-1)])]),_:1})]),_:1})])),[[m,["tools.generator/delete"]]])]),_:1})]),default:o(()=>[t(r,{type:"primary",link:""},{default:o(()=>[e[13]||(e[13]=d(" 更多 ",-1)),t(C,{name:"el-icon-ArrowDown",size:14})]),_:1})]),_:1},8,["onCommand"])),[[m,["tools.generator/generate","tools.generator/syncColumn","tools.generator/delete"]]])])]),_:1})]),_:1},8,["data"])]),w("div",Ve,[t(R,{modelValue:n(f),"onUpdate:modelValue":e[4]||(e[4]=l=>le(f)?f.value=l:null),onChange:n(g)},null,8,["modelValue","onChange"])])]),_:1})),[[A,n(f).loading]]),n(_).show?(s(),u(ge,{key:0,modelValue:n(_).show,"onUpdate:modelValue":e[5]||(e[5]=l=>n(_).show=l),code:n(_).code},null,8,["modelValue","code"])):se("",!0)])}}});export{Ie as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-BC1bIz8e.js
diff --git a/server/public/admin/assets/index-Df90uVtq.js b/server/public/admin/assets/index-Df90uVtq.js
new file mode 100644
index 000000000..68f0a31e5
--- /dev/null
+++ b/server/public/admin/assets/index-Df90uVtq.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DHhh-URo.js
+import{o as U,R as $,ap as J,be as Q,q as r,r as b,v as t,D as s,b9 as X,b6 as Z,bp as ee,bm as le,bn as ae,b7 as te,b8 as se,K as ne,L as c,s as u,bg as oe,ac as D,O as C,T as i,P as B,bj as ie,u as N,bk as de,br as re,F as M,bi as ce,C as ue,M as h,ba as _e}from"./.pnpm-BadRMC3e.js";import{_ as me}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{s as be,t as pe}from"./stats-Cz14TIwi.js";import{u as fe}from"./usePaging-DMqUvFG-.js";import{i as L,_ as ge}from"./index-C360OAjQ.js";const ke={class:"auto-assign-log-page"},he={class:"toolbar mb-3"},ye={key:0,class:"toolbar-tip"},ve={class:"cell-sub"},we={class:"cell-sub"},Ve={key:0,class:"cell-sub"},Ce={key:2},Ne={class:"cell-sub"},xe={key:1},Re={class:"cell-sub"},Ee={key:1,class:"cell-sub"},De={class:"flex justify-end mt-4"},Le=U({name:"statsAutoAssignLog"}),Se=U({...Le,setup(Ae){const y=h(null),v=h(null),x=h(),_=h([]),w=h(!1),n=_e({start_date:"",end_date:"",start_time:"",end_time:"",action:"",is_rollback:"",keyword:""});$(y,a=>{n.start_date=(a==null?void 0:a[0])??"",n.end_date=(a==null?void 0:a[1])??""}),$(v,a=>{n.start_time=(a==null?void 0:a[0])??"",n.end_time=(a==null?void 0:a[1])??""});const{pager:f,getLists:R,resetPage:F}=fe({fetchFun:be,params:n}),m=()=>{var a,l;_.value=[],(l=(a=x.value)==null?void 0:a.clearSelection)==null||l.call(a),F()},P=()=>{y.value=null,v.value=null,n.start_date="",n.end_date="",n.start_time="",n.end_time="",n.action="",n.is_rollback="",n.keyword="",m()},T=a=>a==null?"—":`${a}%`,z=a=>Number(a.can_rollback)===1,I=a=>{_.value=a.filter(l=>Number(l.can_rollback)===1)},S=async a=>{var l,g;if(a.length!==0){await L.confirm(`确认回退选中的 ${a.length} 条自动分配?将把诊单医助撤回到自动分配前的原医助,并写入指派日志。`),w.value=!0;try{const o=await pe({ids:a}),p=Number((o==null?void 0:o.success)??0),k=Number((o==null?void 0:o.failed)??0);k>0&&Array.isArray(o==null?void 0:o.messages)&&o.messages.length?L.msgWarning(`回退成功 ${p} 条,跳过/失败 ${k} 条:${o.messages.slice(0,3).join(";")}`):L.msgSuccess(`回退成功 ${p} 条`),_.value=[],(g=(l=x.value)==null?void 0:l.clearSelection)==null||g.call(l),await R()}finally{w.value=!1}}},j=()=>{const a=_.value.map(l=>Number(l.id)).filter(l=>l>0);return S(a)},K=a=>{const l=Number((a==null?void 0:a.id)??0);if(!(l<=0))return S([l])};return J(()=>R()),(a,l)=>{const g=ee,o=Z,p=ae,k=le,q=te,V=ne,H=X,A=oe,d=de,E=re,O=ie,W=me,Y=Q("perms"),G=ce;return r(),b("div",ke,[t(A,{class:"!border-none",shadow:"never"},{default:s(()=>[t(H,{inline:!0,class:"log-filter-form"},{default:s(()=>[t(o,{label:"记录时间"},{default:s(()=>[t(g,{modelValue:v.value,"onUpdate:modelValue":l[0]||(l[0]=e=>v.value=e),type:"datetimerange","range-separator":"至","start-placeholder":"开始时间","end-placeholder":"结束时间","value-format":"YYYY-MM-DD HH:mm:ss",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"执行日期"},{default:s(()=>[t(g,{modelValue:y.value,"onUpdate:modelValue":l[1]||(l[1]=e=>y.value=e),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"结果"},{default:s(()=>[t(k,{modelValue:n.action,"onUpdate:modelValue":l[2]||(l[2]=e=>n.action=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"已分配",value:"1"}),t(p,{label:"未分配",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"回退"},{default:s(()=>[t(k,{modelValue:n.is_rollback,"onUpdate:modelValue":l[3]||(l[3]=e=>n.is_rollback=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"未回退",value:"0"}),t(p,{label:"已回退",value:"1"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"关键词"},{default:s(()=>[t(q,{modelValue:n.keyword,"onUpdate:modelValue":l[4]||(l[4]=e=>n.keyword=e),placeholder:"患者/手机号/医助/诊单ID",clearable:"",class:"w-[220px]",onKeyup:se(m,["enter"]),onClear:m},null,8,["modelValue"])]),_:1}),t(o,null,{default:s(()=>[t(V,{type:"primary",onClick:m},{default:s(()=>[...l[6]||(l[6]=[c("查询",-1)])]),_:1}),t(V,{onClick:P},{default:s(()=>[...l[7]||(l[7]=[c("重置",-1)])]),_:1})]),_:1})]),_:1}),l[8]||(l[8]=u("div",{class:"log-hint"}," 由每日定时任务「待分配诊单自动指派」写入:按上月二诊复诊接诊率分档轮询分配(>70% 每人3条/日,60%~70% 每人2条/日,50%~60% 每人1条/日,<50% 不分)。「回退」可将已分配医助撤回到自动分配前的原医助(通常为一中心),并写入指派日志。 ",-1))]),_:1}),t(A,{class:"!border-none mt-3",shadow:"never"},{default:s(()=>[u("div",he,[D((r(),C(V,{type:"warning",disabled:_.value.length===0,loading:w.value,onClick:j},{default:s(()=>[c(" 回退选中("+i(_.value.length)+") ",1)]),_:1},8,["disabled","loading"])),[[Y,["stats.autoAssignLog/rollback"]]]),_.value.length>0?(r(),b("span",ye," 已选 "+i(_.value.length)+" 条可回退记录 ",1)):B("",!0)]),D((r(),C(O,{ref_key:"tableRef",ref:x,data:N(f).lists,size:"default",stripe:"","row-key":"id",onSelectionChange:I},{default:s(()=>[t(d,{type:"selection",width:"48",selectable:z,"reserve-selection":""}),t(d,{label:"记录时间",width:"160"},{default:s(({row:e})=>[c(i(e.create_time_text||"—"),1)]),_:1}),t(d,{label:"诊单",width:"90",prop:"diagnosis_id"}),t(d,{label:"患者","min-width":"110"},{default:s(({row:e})=>[u("div",null,i(e.patient_name||"—"),1),u("div",ve,i(e.patient_phone||""),1)]),_:1}),t(d,{label:"结果",width:"90",align:"center"},{default:s(({row:e})=>[t(E,{type:Number(e.action)===1?"success":"info",size:"small"},{default:s(()=>[c(i(e.action_text),1)]),_:2},1032,["type"])]),_:1}),t(d,{label:"回退状态",width:"140"},{default:s(({row:e})=>[Number(e.is_rollback)===1?(r(),b(M,{key:0},[t(E,{type:"warning",size:"small"},{default:s(()=>[...l[9]||(l[9]=[c("已回退",-1)])]),_:1}),u("div",we,i(e.rollback_time_text),1),e.rollback_admin_name?(r(),b("div",Ve,i(e.rollback_admin_name),1)):B("",!0)],64)):Number(e.can_rollback)===1?(r(),C(E,{key:1,type:"success",size:"small"},{default:s(()=>[...l[10]||(l[10]=[c(" 可回退 ",-1)])]),_:1})):(r(),b("span",Ce,"—"))]),_:1}),t(d,{label:"医助","min-width":"110"},{default:s(({row:e})=>[Number(e.assistant_id)>0?(r(),b(M,{key:0},[u("div",null,i(e.assistant_name||"#"+e.assistant_id),1),u("div",Ne,"上月二诊接诊率 "+i(T(e.visit2_rate)),1)],64)):(r(),b("span",xe,"—"))]),_:1}),t(d,{label:"档位",width:"100",align:"center"},{default:s(({row:e})=>[c(i(e.tier_text||"—"),1)]),_:1}),t(d,{label:"轮次",width:"70",align:"center"},{default:s(({row:e})=>[c(i(Number(e.round_no)>0?"第"+e.round_no+"轮":"—"),1)]),_:1}),t(d,{label:"原因","min-width":"280","show-overflow-tooltip":""},{default:s(({row:e})=>[c(i(e.reason),1)]),_:1}),t(d,{label:"统计月",width:"90",prop:"stat_month",align:"center"}),t(d,{label:"批次",width:"160"},{default:s(({row:e})=>[u("span",Re,i(e.batch_no),1)]),_:1}),t(d,{label:"操作",width:"90",fixed:"right",align:"center"},{default:s(({row:e})=>[Number(e.can_rollback)===1?D((r(),C(V,{key:0,link:"",type:"warning",loading:w.value,onClick:Ye=>K(e)},{default:s(()=>[...l[11]||(l[11]=[c(" 回退 ",-1)])]),_:1},8,["loading","onClick"])),[[Y,["stats.autoAssignLog/rollback"]]]):(r(),b("span",Ee,"—"))]),_:1})]),_:1},8,["data"])),[[G,N(f).loading]]),u("div",De,[t(W,{modelValue:N(f),"onUpdate:modelValue":l[5]||(l[5]=e=>ue(f)?f.value=e:null),onChange:N(R)},null,8,["modelValue","onChange"])])]),_:1})])}}}),Pe=ge(Se,[["__scopeId","data-v-bc0fccd4"]]);export{Pe as default};
+========
+import{o as U,R as $,ap as J,be as Q,q as r,r as b,v as t,D as s,b9 as X,b6 as Z,bp as ee,bm as le,bn as ae,b7 as te,b8 as se,K as ne,L as c,s as u,bg as oe,ac as D,O as C,T as i,P as B,bj as ie,u as N,bk as de,br as re,F as M,bi as ce,C as ue,M as h,ba as _e}from"./.pnpm-BadRMC3e.js";import{_ as me}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{s as be,t as pe}from"./stats-O2EioTJv.js";import{u as fe}from"./usePaging-DMqUvFG-.js";import{i as L,_ as ge}from"./index-C53kWH2_.js";const ke={class:"auto-assign-log-page"},he={class:"toolbar mb-3"},ye={key:0,class:"toolbar-tip"},ve={class:"cell-sub"},we={class:"cell-sub"},Ve={key:0,class:"cell-sub"},Ce={key:2},Ne={class:"cell-sub"},xe={key:1},Re={class:"cell-sub"},Ee={key:1,class:"cell-sub"},De={class:"flex justify-end mt-4"},Le=U({name:"statsAutoAssignLog"}),Se=U({...Le,setup(Ae){const y=h(null),v=h(null),x=h(),_=h([]),w=h(!1),n=_e({start_date:"",end_date:"",start_time:"",end_time:"",action:"",is_rollback:"",keyword:""});$(y,a=>{n.start_date=(a==null?void 0:a[0])??"",n.end_date=(a==null?void 0:a[1])??""}),$(v,a=>{n.start_time=(a==null?void 0:a[0])??"",n.end_time=(a==null?void 0:a[1])??""});const{pager:f,getLists:R,resetPage:F}=fe({fetchFun:be,params:n}),m=()=>{var a,l;_.value=[],(l=(a=x.value)==null?void 0:a.clearSelection)==null||l.call(a),F()},P=()=>{y.value=null,v.value=null,n.start_date="",n.end_date="",n.start_time="",n.end_time="",n.action="",n.is_rollback="",n.keyword="",m()},T=a=>a==null?"—":`${a}%`,z=a=>Number(a.can_rollback)===1,I=a=>{_.value=a.filter(l=>Number(l.can_rollback)===1)},S=async a=>{var l,g;if(a.length!==0){await L.confirm(`确认回退选中的 ${a.length} 条自动分配?将把诊单医助撤回到自动分配前的原医助,并写入指派日志。`),w.value=!0;try{const o=await pe({ids:a}),p=Number((o==null?void 0:o.success)??0),k=Number((o==null?void 0:o.failed)??0);k>0&&Array.isArray(o==null?void 0:o.messages)&&o.messages.length?L.msgWarning(`回退成功 ${p} 条,跳过/失败 ${k} 条:${o.messages.slice(0,3).join(";")}`):L.msgSuccess(`回退成功 ${p} 条`),_.value=[],(g=(l=x.value)==null?void 0:l.clearSelection)==null||g.call(l),await R()}finally{w.value=!1}}},j=()=>{const a=_.value.map(l=>Number(l.id)).filter(l=>l>0);return S(a)},K=a=>{const l=Number((a==null?void 0:a.id)??0);if(!(l<=0))return S([l])};return J(()=>R()),(a,l)=>{const g=ee,o=Z,p=ae,k=le,q=te,V=ne,H=X,A=oe,d=de,E=re,O=ie,W=me,Y=Q("perms"),G=ce;return r(),b("div",ke,[t(A,{class:"!border-none",shadow:"never"},{default:s(()=>[t(H,{inline:!0,class:"log-filter-form"},{default:s(()=>[t(o,{label:"记录时间"},{default:s(()=>[t(g,{modelValue:v.value,"onUpdate:modelValue":l[0]||(l[0]=e=>v.value=e),type:"datetimerange","range-separator":"至","start-placeholder":"开始时间","end-placeholder":"结束时间","value-format":"YYYY-MM-DD HH:mm:ss",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"执行日期"},{default:s(()=>[t(g,{modelValue:y.value,"onUpdate:modelValue":l[1]||(l[1]=e=>y.value=e),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:"",onChange:m},null,8,["modelValue"])]),_:1}),t(o,{label:"结果"},{default:s(()=>[t(k,{modelValue:n.action,"onUpdate:modelValue":l[2]||(l[2]=e=>n.action=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"已分配",value:"1"}),t(p,{label:"未分配",value:"0"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"回退"},{default:s(()=>[t(k,{modelValue:n.is_rollback,"onUpdate:modelValue":l[3]||(l[3]=e=>n.is_rollback=e),clearable:"",placeholder:"全部",class:"w-[120px]",onChange:m},{default:s(()=>[t(p,{label:"未回退",value:"0"}),t(p,{label:"已回退",value:"1"})]),_:1},8,["modelValue"])]),_:1}),t(o,{label:"关键词"},{default:s(()=>[t(q,{modelValue:n.keyword,"onUpdate:modelValue":l[4]||(l[4]=e=>n.keyword=e),placeholder:"患者/手机号/医助/诊单ID",clearable:"",class:"w-[220px]",onKeyup:se(m,["enter"]),onClear:m},null,8,["modelValue"])]),_:1}),t(o,null,{default:s(()=>[t(V,{type:"primary",onClick:m},{default:s(()=>[...l[6]||(l[6]=[c("查询",-1)])]),_:1}),t(V,{onClick:P},{default:s(()=>[...l[7]||(l[7]=[c("重置",-1)])]),_:1})]),_:1})]),_:1}),l[8]||(l[8]=u("div",{class:"log-hint"}," 由每日定时任务「待分配诊单自动指派」写入:按上月二诊复诊接诊率分档轮询分配(>70% 每人3条/日,60%~70% 每人2条/日,50%~60% 每人1条/日,<50% 不分)。「回退」可将已分配医助撤回到自动分配前的原医助(通常为一中心),并写入指派日志。 ",-1))]),_:1}),t(A,{class:"!border-none mt-3",shadow:"never"},{default:s(()=>[u("div",he,[D((r(),C(V,{type:"warning",disabled:_.value.length===0,loading:w.value,onClick:j},{default:s(()=>[c(" 回退选中("+i(_.value.length)+") ",1)]),_:1},8,["disabled","loading"])),[[Y,["stats.autoAssignLog/rollback"]]]),_.value.length>0?(r(),b("span",ye," 已选 "+i(_.value.length)+" 条可回退记录 ",1)):B("",!0)]),D((r(),C(O,{ref_key:"tableRef",ref:x,data:N(f).lists,size:"default",stripe:"","row-key":"id",onSelectionChange:I},{default:s(()=>[t(d,{type:"selection",width:"48",selectable:z,"reserve-selection":""}),t(d,{label:"记录时间",width:"160"},{default:s(({row:e})=>[c(i(e.create_time_text||"—"),1)]),_:1}),t(d,{label:"诊单",width:"90",prop:"diagnosis_id"}),t(d,{label:"患者","min-width":"110"},{default:s(({row:e})=>[u("div",null,i(e.patient_name||"—"),1),u("div",ve,i(e.patient_phone||""),1)]),_:1}),t(d,{label:"结果",width:"90",align:"center"},{default:s(({row:e})=>[t(E,{type:Number(e.action)===1?"success":"info",size:"small"},{default:s(()=>[c(i(e.action_text),1)]),_:2},1032,["type"])]),_:1}),t(d,{label:"回退状态",width:"140"},{default:s(({row:e})=>[Number(e.is_rollback)===1?(r(),b(M,{key:0},[t(E,{type:"warning",size:"small"},{default:s(()=>[...l[9]||(l[9]=[c("已回退",-1)])]),_:1}),u("div",we,i(e.rollback_time_text),1),e.rollback_admin_name?(r(),b("div",Ve,i(e.rollback_admin_name),1)):B("",!0)],64)):Number(e.can_rollback)===1?(r(),C(E,{key:1,type:"success",size:"small"},{default:s(()=>[...l[10]||(l[10]=[c(" 可回退 ",-1)])]),_:1})):(r(),b("span",Ce,"—"))]),_:1}),t(d,{label:"医助","min-width":"110"},{default:s(({row:e})=>[Number(e.assistant_id)>0?(r(),b(M,{key:0},[u("div",null,i(e.assistant_name||"#"+e.assistant_id),1),u("div",Ne,"上月二诊接诊率 "+i(T(e.visit2_rate)),1)],64)):(r(),b("span",xe,"—"))]),_:1}),t(d,{label:"档位",width:"100",align:"center"},{default:s(({row:e})=>[c(i(e.tier_text||"—"),1)]),_:1}),t(d,{label:"轮次",width:"70",align:"center"},{default:s(({row:e})=>[c(i(Number(e.round_no)>0?"第"+e.round_no+"轮":"—"),1)]),_:1}),t(d,{label:"原因","min-width":"280","show-overflow-tooltip":""},{default:s(({row:e})=>[c(i(e.reason),1)]),_:1}),t(d,{label:"统计月",width:"90",prop:"stat_month",align:"center"}),t(d,{label:"批次",width:"160"},{default:s(({row:e})=>[u("span",Re,i(e.batch_no),1)]),_:1}),t(d,{label:"操作",width:"90",fixed:"right",align:"center"},{default:s(({row:e})=>[Number(e.can_rollback)===1?D((r(),C(V,{key:0,link:"",type:"warning",loading:w.value,onClick:Ye=>K(e)},{default:s(()=>[...l[11]||(l[11]=[c(" 回退 ",-1)])]),_:1},8,["loading","onClick"])),[[Y,["stats.autoAssignLog/rollback"]]]):(r(),b("span",Ee,"—"))]),_:1})]),_:1},8,["data"])),[[G,N(f).loading]]),u("div",De,[t(W,{modelValue:N(f),"onUpdate:modelValue":l[5]||(l[5]=e=>ue(f)?f.value=e:null),onChange:N(R)},null,8,["modelValue","onChange"])])]),_:1})])}}}),Pe=ge(Se,[["__scopeId","data-v-bc0fccd4"]]);export{Pe as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-Df90uVtq.js
diff --git a/server/public/admin/assets/index-Dk2zpNft.js b/server/public/admin/assets/index-Dk2zpNft.js
index 033e3585e..9c41fd576 100644
--- a/server/public/admin/assets/index-Dk2zpNft.js
+++ b/server/public/admin/assets/index-Dk2zpNft.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-Dk2zpNft.js
import{o as je,R as Ge,ap as Qe,bx as We,q as o,r,O as x,bh as Xe,P as f,s as a,v as l,D as i,K as Ye,u as y,w as Je,by as ve,a1 as Ze,bz as es,F as M,G as I,bn as ss,a0 as ts,L as v,T as d,bm as as,bA as ls,b8 as ns,b7 as is,bd as os,ac as ae,bi as us,bB as rs,ae as ds,bC as cs,br as _s,as as fs,X as vs,Y as ms,bD as ps,bj as gs,bk as ys,bt as hs,M as _,p as me,n as le}from"./.pnpm-BadRMC3e.js";import{i as C,t as ks,_ as bs}from"./index-C360OAjQ.js";import{u as ws}from"./usePaging-DMqUvFG-.js";import xs from"./MessageBubble-DXX2tG_H.js";import{q as Ss,S as Ts,a as Ms,b as zs,c as Es,d as Cs,e as ne,f as Ds,g as Vs,h as pe}from"./SendPanel-ZOr23Dss.js";import"./file-DAA7Hwft.js";const $s={class:"qywx-im"},Ls={class:"im-layout"},qs={class:"col-session"},As={class:"col-header"},Bs={class:"col-actions"},Is={class:"col-filters"},Ps={class:"staff-option"},Hs={class:"staff-userid"},Ns={class:"session-list"},Us={key:0,class:"empty-tip"},Rs=["onClick"],Ks={class:"session-meta"},Fs={class:"session-top"},Os={class:"session-name"},js={class:"session-time"},Gs={class:"session-bottom"},Qs={class:"session-preview"},Ws={key:0,class:"session-staff"},Xs={key:1,class:"session-load-more"},Ys={class:"col-message"},Js={key:0,class:"no-session"},Zs={class:"col-header"},et={class:"msg-header-title"},st={class:"msg-customer-name"},tt={class:"msg-customer-sub"},at={class:"col-actions"},lt={key:0,class:"load-history"},nt={key:1,class:"load-history end-tip"},it={key:2,class:"empty-tip"},ot={class:"col-profile"},ut={class:"profile-panel"},rt={class:"profile-name"},dt={class:"profile-fields"},ct={class:"field"},_t={class:"value"},ft={class:"field"},vt=["title"],mt={key:0,class:"field"},pt={class:"value"},gt={key:1,class:"field"},yt={class:"value"},ht={class:"field"},kt={class:"value"},bt={class:"field"},wt={class:"value"},xt={class:"tasks-panel"},St={key:0,class:"empty-tip"},Tt={class:"task-top"},Mt={class:"task-time"},zt={class:"task-body"},Et={key:0,class:"task-text"},Ct={key:1,class:"task-attachments"},Dt={key:2,class:"task-error"},Vt={class:"task-actions"},$t={key:1,class:"no-session"},Lt={class:"tips"},qt={key:1,class:"mt-2 text-center"},At=je({__name:"index",setup(Bt){const z=_(null),j=_(!1),ge=me(()=>{if(!z.value)return"";const s=z.value;return s.enabled?`会话存档 SDK 不可用:${s.error||"未知错误"}`:"「会话内容存档」未启用,实时消息不可用。请在后端 pay.php 中开启 msgaudit_enabled 并配置 SDK 动态库与 RSA 私钥。"});async function ye(){try{z.value=await Ms()}catch{}}async function he(){j.value=!0;try{await zs(5,!0),C.msgSuccess("已触发一次拉取,稍后刷新可见"),await S(!0),n.value&&await X()}catch(s){C.msgError((s==null?void 0:s.msg)||(s==null?void 0:s.message)||"拉取失败")}finally{j.value=!1}}const G=_([]);async function ke(){try{const s=await Es();G.value=Array.isArray(s)?s:(s==null?void 0:s.lists)||[]}catch{G.value=[]}}const E=_({staff_userid:"",keyword:"",only_unread:0}),Q=_(!1);Ge(Q,s=>{E.value.only_unread=s?1:0});const{pager:g,getLists:W}=ws({fetchFun:Ss,params:E.value,size:30});function S(s=!1){return s||(g.page=1),W()}async function be(){const s=[...g.lists||[]];g.page+=1;try{await W();const e=g.lists||[],u=new Set(s.map(m=>m.id)),c=[...s,...e.filter(m=>!u.has(m.id))];g.lists=c}catch{}}const n=_(null),h=_([]),P=_(!1),D=_(!1),V=_(!1),H=_(0),N=_(0),k=_(null),we=me(()=>!!n.value&&n.value.session_type!==2);async function xe(s){var e;if(((e=n.value)==null?void 0:e.id)!==s.id){if(n.value=s,h.value=[],H.value=0,N.value=0,V.value=!1,await X(),await ue(),s.unread_staff>0)try{await Cs(s.id),s.unread_staff=0}catch{}U.value="profile"}}async function X(){if(n.value){P.value=!0;try{const s=await ne({session_id:n.value.id,page_no:1,page_size:30}),e=(s==null?void 0:s.lists)||[];h.value=e,e.length&&(H.value=e[0].send_time,N.value=e[e.length-1].send_time),V.value=e.length>=30,await le(),oe()}catch(s){C.msgError((s==null?void 0:s.msg)||(s==null?void 0:s.message)||"加载消息失败")}finally{P.value=!1}}}async function ie(){var e;if(!n.value||D.value)return;D.value=!0;const s=((e=k.value)==null?void 0:e.scrollHeight)||0;try{const u=await ne({session_id:n.value.id,page_no:1,page_size:30,before_time:H.value}),c=(u==null?void 0:u.lists)||[];c.length&&(H.value=c[0].send_time,h.value=[...c,...h.value]),V.value=c.length>=30,await le(),k.value&&(k.value.scrollTop=k.value.scrollHeight-s)}finally{D.value=!1}}async function Se(){if(n.value)try{const s=await ne({session_id:n.value.id,page_no:1,page_size:50,after_time:N.value}),e=(s==null?void 0:s.lists)||[];if(!e.length)return;const u=new Set(h.value.map(T=>T.id)),c=e.filter(T=>!u.has(T.id));if(!c.length)return;h.value=[...h.value,...c],N.value=c[c.length-1].send_time;const m=k.value;(m?m.scrollHeight-m.scrollTop-m.clientHeight<120:!0)&&(await le(),oe())}catch{}}function Te(){const s=k.value;s&&s.scrollTop<40&&V.value&&!D.value&&ie()}function oe(){k.value&&(k.value.scrollTop=k.value.scrollHeight)}async function Me(s){if(n.value)try{await Ds({sender_userid:n.value.staff_userid,external_userids:[n.value.external_userid],msg_payload:s,chat_type:"single"}),C.msgSuccess("已创建群发任务,员工手机确认后送达客户"),await ue(),U.value="tasks"}catch(e){C.msgError((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"发送失败")}}const U=_("profile"),R=_([]),Y=_(!1);async function ue(){if(n.value){Y.value=!0;try{const s=await Vs({sender_userid:n.value.staff_userid,page_no:1,page_size:50}),e=(s==null?void 0:s.lists)||[];R.value=e.filter(u=>(u.external_userids||[]).includes(n.value.external_userid))}finally{Y.value=!1}}}function ze(s){return{0:"待提交",1:"已提交",2:"已送达",3:"失败"}[s]??`状态${s}`}function Ee(s){return{0:"info",1:"primary",2:"success",3:"danger"}[s]??"info"}function Ce(s){return{image:"图片",video:"视频",file:"文件",link:"链接",miniprogram:"小程序"}[s]||s}const J=_(!1),$=_(!1),re=_(0),b=_(null);async function De(s){re.value=s.id,b.value={detail_list:[],next_cursor:""},J.value=!0,$.value=!0;try{const e=await pe(s.id,"");b.value={detail_list:(e==null?void 0:e.detail_list)||[],next_cursor:(e==null?void 0:e.next_cursor)||"",task:e==null?void 0:e.task}}catch(e){C.msgError((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{$.value=!1}}async function Ve(){var s;if((s=b.value)!=null&&s.next_cursor){$.value=!0;try{const e=await pe(re.value,b.value.next_cursor);b.value={detail_list:[...b.value.detail_list,...(e==null?void 0:e.detail_list)||[]],next_cursor:(e==null?void 0:e.next_cursor)||"",task:e==null?void 0:e.task}}finally{$.value=!1}}}function $e(s){switch(s){case 0:return"未发送";case 1:return"已送达";case 2:return"被拒收";case 3:return"已送达(未读)";default:return`状态${s}`}}function Le(s){return s===1?"success":s===2?"warning":s===3?"primary":"info"}function L(s){var e;return(e=s.customer)!=null&&e.name?s.customer.name:s.session_type===2?`群聊 ${s.roomid.slice(-6)}`:s.external_userid||"未命名客户"}function qe(s){const e=s.last_msg_summary||"",u=s.last_msg_type;return e||(u==="image"?"[图片]":u==="video"?"[视频]":u==="voice"?"[语音]":u==="file"?"[文件]":u==="link"?"[链接]":u==="weapp"?"[小程序]":u==="chatrecord"?"[聊天记录]":u?`[${u}]`:"暂无消息")}function Z(s){return s?ks(s*1e3,"yyyy-mm-dd hh:MM"):"-"}function Ae(s){if(!s)return"";const u=Math.floor(Date.now()/1e3)-s;if(u<60)return`${u}秒前`;if(u<3600)return`${Math.floor(u/60)}分前`;if(u<86400)return`${Math.floor(u/3600)}小时前`;const c=new Date(s*1e3);return`${c.getMonth()+1}-${c.getDate()}`}let ee=null,se=null;return Qe(async()=>{await Promise.all([ye(),ke()]),await S(),ee=window.setInterval(()=>{W({silent:!0}).catch(()=>{})},15e3),se=window.setInterval(()=>{Se()},8e3)}),We(()=>{ee&&window.clearInterval(ee),se&&window.clearInterval(se)}),(s,e)=>{var ce,_e;const u=Xe,c=Je,m=Ye,K=Ze,T=ts,Be=ss,Ie=as,Pe=is,He=os,F=rs,Ne=cs,q=_s,de=vs,Ue=ms,Re=ps,O=ys,Ke=gs,Fe=hs,te=us;return o(),r("div",$s,[z.value&&!z.value.available?(o(),x(u,{key:0,title:ge.value,type:"warning",closable:!1,"show-icon":"",class:"archive-warning"},null,8,["title"])):f("",!0),a("div",Ls,[a("section",qs,[a("header",As,[e[11]||(e[11]=a("div",{class:"col-title"},"会话",-1)),a("div",Bs,[l(K,{content:"刷新"},{default:i(()=>[l(m,{size:"small",link:"",loading:y(g).loading,onClick:e[0]||(e[0]=t=>S(!0))},{default:i(()=>[l(c,null,{default:i(()=>[l(y(ve))]),_:1})]),_:1},8,["loading"])]),_:1}),l(K,{content:"手动拉一次存档"},{default:i(()=>{var t;return[l(m,{size:"small",link:"",disabled:!((t=z.value)!=null&&t.available),loading:j.value,onClick:he},{default:i(()=>[l(c,null,{default:i(()=>[l(y(es))]),_:1})]),_:1},8,["disabled","loading"])]}),_:1})])]),a("div",Is,[l(Ie,{modelValue:E.value.staff_userid,"onUpdate:modelValue":e[1]||(e[1]=t=>E.value.staff_userid=t),placeholder:"全部员工",clearable:"",filterable:"",size:"default",style:{width:"100%"},onChange:e[2]||(e[2]=t=>S())},{default:i(()=>[(o(!0),r(M,null,I(G.value,t=>(o(),x(Be,{key:t.userid,label:(t.name||t.userid)+"("+t.userid+")",value:t.userid},{default:i(()=>[a("div",Ps,[l(T,{size:20,src:t.avatar},{default:i(()=>[v(d((t.name||"").slice(-2)),1)]),_:2},1032,["src"]),a("span",null,d(t.name),1),a("span",Hs,d(t.userid),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue"]),l(Pe,{modelValue:E.value.keyword,"onUpdate:modelValue":e[3]||(e[3]=t=>E.value.keyword=t),placeholder:"搜索客户或消息",clearable:"",size:"default",onKeyup:e[4]||(e[4]=ns(t=>S(),["enter"])),onClear:e[5]||(e[5]=t=>S())},{prefix:i(()=>[l(c,null,{default:i(()=>[l(y(ls))]),_:1})]),_:1},8,["modelValue"]),l(He,{modelValue:Q.value,"onUpdate:modelValue":e[6]||(e[6]=t=>Q.value=t),onChange:e[7]||(e[7]=t=>S())},{default:i(()=>[...e[12]||(e[12]=[v(" 仅未读 ",-1)])]),_:1},8,["modelValue"])]),ae((o(),r("div",Ns,[!y(g).lists.length&&!y(g).loading?(o(),r("div",Us,[l(F,{description:"暂无会话","image-size":80})])):f("",!0),(o(!0),r(M,null,I(y(g).lists,t=>{var p;return o(),r("div",{key:t.id,class:ds(["session-item",{active:((p=n.value)==null?void 0:p.id)===t.id}]),onClick:w=>xe(t)},[l(Ne,{value:t.unread_staff,hidden:!t.unread_staff,max:99},{default:i(()=>{var w;return[l(T,{size:42,src:((w=t.customer)==null?void 0:w.avatar)||""},{default:i(()=>[v(d(L(t).slice(-2)),1)]),_:2},1032,["src"])]}),_:2},1032,["value","hidden"]),a("div",Ks,[a("div",Fs,[a("span",Os,d(L(t)),1),a("span",js,d(Ae(t.last_msg_time)),1)]),a("div",Gs,[a("span",Qs,d(qe(t)),1),t.session_type===2?(o(),x(q,{key:0,size:"small",type:"info",class:"session-tag"},{default:i(()=>[...e[13]||(e[13]=[v(" 群 ",-1)])]),_:1})):f("",!0)]),t.staff?(o(),r("div",Ws," 员工: "+d(t.staff.name||t.staff_userid),1)):f("",!0)])],10,Rs)}),128)),y(g).lists.length
${e.marker}${e.seriesName}: ¥${Number(e.value).toFixed(2)}`}},grid:{left:60,right:24,top:36,bottom:36},xAxis:{type:"category",data:s.chart.dates,axisLabel:{interval:s.chart.dates.length>15?"auto":0,rotate:s.chart.dates.length>10?30:0}},yAxis:{type:"value",name:"金额(元)",axisLabel:{formatter:t=>t>=1e4?(t/1e4).toFixed(1)+"万":String(t)}},series:[{name:"业绩",type:"line",smooth:!0,showSymbol:!0,symbolSize:6,lineStyle:{width:3,color:"#4a78ff"},itemStyle:{color:"#4a78ff"},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(74, 120, 255, 0.25)"},{offset:1,color:"rgba(74, 120, 255, 0.02)"}]}},data:s.chart.amounts}]})),F=(t,e)=>{var p;const l=((p=s.summary)==null?void 0:p[t])??0;return e==="money"?`¥${Number(l).toFixed(2)}`:String(l)},u=async()=>{_.value=!0;try{const t={time_type:d.time_type};d.time_type==="custom"&&(t.start_date=r.value[0]||"",t.end_date=r.value[1]||"");const e=await X(t);Object.assign(s,e||{})}catch(t){console.error("获取业绩数据失败:",t),W.error((t==null?void 0:t.msg)||"获取业绩数据失败")}finally{_.value=!1}},N=()=>{d.time_type!=="custom"&&(r.value=[],u())},$=()=>{var t;((t=r.value)==null?void 0:t.length)===2&&u()},P=()=>{d.time_type="month",r.value=[],u()};return L(()=>{u()}),(t,e)=>{const l=q,p=z,y=Y,M=A,v=H,R=O,h=I,T=Q;return c(),k("div",ee,[o(h,{class:"!border-none",shadow:"never"},{default:a(()=>[o(R,{inline:!0,class:"stats-filter-form"},{default:a(()=>[o(y,{label:"时间范围"},{default:a(()=>[o(p,{modelValue:d.time_type,"onUpdate:modelValue":e[0]||(e[0]=n=>d.time_type=n),onChange:N},{default:a(()=>[o(l,{label:"today"},{default:a(()=>[...e[2]||(e[2]=[i("今天",-1)])]),_:1}),o(l,{label:"yesterday"},{default:a(()=>[...e[3]||(e[3]=[i("昨天",-1)])]),_:1}),o(l,{label:"week"},{default:a(()=>[...e[4]||(e[4]=[i("最近7天",-1)])]),_:1}),o(l,{label:"month"},{default:a(()=>[...e[5]||(e[5]=[i("最近30天",-1)])]),_:1}),o(l,{label:"custom"},{default:a(()=>[...e[6]||(e[6]=[i("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.time_type==="custom"?(c(),f(y,{key:0},{default:a(()=>[o(M,{modelValue:r.value,"onUpdate:modelValue":e[1]||(e[1]=n=>r.value=n),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:$},null,8,["modelValue"])]),_:1})):G("",!0),o(y,null,{default:a(()=>[o(v,{type:"primary",loading:_.value,onClick:u},{default:a(()=>[...e[7]||(e[7]=[i("查询",-1)])]),_:1},8,["loading"]),o(v,{onClick:P},{default:a(()=>[...e[8]||(e[8]=[i("重置",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),m("div",te,[(c(),k(U,null,j(w,n=>m("div",{key:n.key,class:x(["stats-kpi-card",n.cardClass])},[m("div",ae,g(n.label),1),m("div",{class:x(["stats-kpi-value",{"is-money":n.type==="money"}])},g(F(n.key,n.type)),3)],2)),64))]),o(h,{class:"!border-none mt-4",shadow:"never"},{header:a(()=>[m("div",oe,[e[9]||(e[9]=m("span",{class:"card-title"},"业绩趋势",-1)),m("span",se,g(S.value)+" · 履约完成业绩",1)])]),default:a(()=>[D.value?(c(),f(J(K),{key:0,class:"stats-chart",option:B.value,autoresize:""},null,8,["option"])):(c(),f(T,{key:1,description:"暂无数据"}))]),_:1})])}}}),ue=Z(le,[["__scopeId","data-v-297158c8"]]);export{ue as default};
+========
+import{o as V,ap as L,q as c,r as k,v as o,D as a,b9 as O,b6 as Y,bc as z,bb as q,L as i,O as f,bp as A,P as G,K as H,bg as I,s as m,F as U,G as j,ae as x,T as g,u as J,cJ as K,bB as Q,M as C,ba as E,p as b,E as W}from"./.pnpm-BadRMC3e.js";import{r as X}from"./stats-O2EioTJv.js";import{_ as Z}from"./index-C53kWH2_.js";const ee={class:"assistant-performance-page"},te={class:"stats-kpi-grid"},ae={class:"stats-kpi-label"},oe={class:"card-header"},se={class:"card-hint"},ne=V({name:"assistantPerformancePage"}),le=V({...ne,setup(re){const _=C(!1),r=C([]),d=E({time_type:"month",start_date:"",end_date:""}),s=E({date_range:[],summary:{total_amount:0,total_count:0},chart:{dates:[],amounts:[],counts:[]}}),w=[{key:"total_amount",label:"业绩",type:"money",cardClass:""},{key:"total_count",label:"有效订单数",type:"count",cardClass:""}],S=b(()=>{var t;return(t=s.date_range)!=null&&t.length?`${s.date_range[0]} 至 ${s.date_range[1]}`:"未选择"}),D=b(()=>s.chart.dates.length>0&&s.chart.amounts.some(t=>t>0)),B=b(()=>({tooltip:{trigger:"axis",formatter:t=>{const e=t[0];return`${e.axisValue}
${e.marker}${e.seriesName}: ¥${Number(e.value).toFixed(2)}`}},grid:{left:60,right:24,top:36,bottom:36},xAxis:{type:"category",data:s.chart.dates,axisLabel:{interval:s.chart.dates.length>15?"auto":0,rotate:s.chart.dates.length>10?30:0}},yAxis:{type:"value",name:"金额(元)",axisLabel:{formatter:t=>t>=1e4?(t/1e4).toFixed(1)+"万":String(t)}},series:[{name:"业绩",type:"line",smooth:!0,showSymbol:!0,symbolSize:6,lineStyle:{width:3,color:"#4a78ff"},itemStyle:{color:"#4a78ff"},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(74, 120, 255, 0.25)"},{offset:1,color:"rgba(74, 120, 255, 0.02)"}]}},data:s.chart.amounts}]})),F=(t,e)=>{var p;const l=((p=s.summary)==null?void 0:p[t])??0;return e==="money"?`¥${Number(l).toFixed(2)}`:String(l)},u=async()=>{_.value=!0;try{const t={time_type:d.time_type};d.time_type==="custom"&&(t.start_date=r.value[0]||"",t.end_date=r.value[1]||"");const e=await X(t);Object.assign(s,e||{})}catch(t){console.error("获取业绩数据失败:",t),W.error((t==null?void 0:t.msg)||"获取业绩数据失败")}finally{_.value=!1}},N=()=>{d.time_type!=="custom"&&(r.value=[],u())},$=()=>{var t;((t=r.value)==null?void 0:t.length)===2&&u()},P=()=>{d.time_type="month",r.value=[],u()};return L(()=>{u()}),(t,e)=>{const l=q,p=z,y=Y,M=A,v=H,R=O,h=I,T=Q;return c(),k("div",ee,[o(h,{class:"!border-none",shadow:"never"},{default:a(()=>[o(R,{inline:!0,class:"stats-filter-form"},{default:a(()=>[o(y,{label:"时间范围"},{default:a(()=>[o(p,{modelValue:d.time_type,"onUpdate:modelValue":e[0]||(e[0]=n=>d.time_type=n),onChange:N},{default:a(()=>[o(l,{label:"today"},{default:a(()=>[...e[2]||(e[2]=[i("今天",-1)])]),_:1}),o(l,{label:"yesterday"},{default:a(()=>[...e[3]||(e[3]=[i("昨天",-1)])]),_:1}),o(l,{label:"week"},{default:a(()=>[...e[4]||(e[4]=[i("最近7天",-1)])]),_:1}),o(l,{label:"month"},{default:a(()=>[...e[5]||(e[5]=[i("最近30天",-1)])]),_:1}),o(l,{label:"custom"},{default:a(()=>[...e[6]||(e[6]=[i("自定义",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.time_type==="custom"?(c(),f(y,{key:0},{default:a(()=>[o(M,{modelValue:r.value,"onUpdate:modelValue":e[1]||(e[1]=n=>r.value=n),type:"daterange","value-format":"YYYY-MM-DD","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期",style:{width:"260px"},onChange:$},null,8,["modelValue"])]),_:1})):G("",!0),o(y,null,{default:a(()=>[o(v,{type:"primary",loading:_.value,onClick:u},{default:a(()=>[...e[7]||(e[7]=[i("查询",-1)])]),_:1},8,["loading"]),o(v,{onClick:P},{default:a(()=>[...e[8]||(e[8]=[i("重置",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),m("div",te,[(c(),k(U,null,j(w,n=>m("div",{key:n.key,class:x(["stats-kpi-card",n.cardClass])},[m("div",ae,g(n.label),1),m("div",{class:x(["stats-kpi-value",{"is-money":n.type==="money"}])},g(F(n.key,n.type)),3)],2)),64))]),o(h,{class:"!border-none mt-4",shadow:"never"},{header:a(()=>[m("div",oe,[e[9]||(e[9]=m("span",{class:"card-title"},"业绩趋势",-1)),m("span",se,g(S.value)+" · 履约完成业绩",1)])]),default:a(()=>[D.value?(c(),f(J(K),{key:0,class:"stats-chart",option:B.value,autoresize:""},null,8,["option"])):(c(),f(T,{key:1,description:"暂无数据"}))]),_:1})])}}}),ue=Z(le,[["__scopeId","data-v-297158c8"]]);export{ue as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-CQe_otmJ.js
diff --git a/server/public/admin/assets/index-ZgwwU4Et.js b/server/public/admin/assets/index-ZgwwU4Et.js
new file mode 100644
index 000000000..c796e7633
--- /dev/null
+++ b/server/public/admin/assets/index-ZgwwU4Et.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-DcSBJkxh.js
+import{_ as r,c}from"./index-C360OAjQ.js";import{o as d,q as s,r as n,ah as p,aw as i,v as _,P as m}from"./.pnpm-BadRMC3e.js";const f=d({props:{showClose:{type:Boolean,default:!0}},emits:["close"],setup(e,{emit:o}){return{handleClose:()=>{o("close")}}}}),u={class:"del-wrap"};function C(e,o,t,h,$,v){const a=c;return s(),n("div",u,[p(e.$slots,"default",{},void 0,!0),e.showClose?(s(),n("div",{key:0,class:"icon-close",onClick:o[0]||(o[0]=i((...l)=>e.handleClose&&e.handleClose(...l),["stop"]))},[_(a,{size:12,name:"el-icon-CloseBold"})])):m("",!0)])}const B=r(f,[["render",C],["__scopeId","data-v-acafd744"]]);export{B as _};
+========
+import{_ as r,c}from"./index-C53kWH2_.js";import{o as d,q as s,r as n,ah as p,aw as i,v as _,P as m}from"./.pnpm-BadRMC3e.js";const f=d({props:{showClose:{type:Boolean,default:!0}},emits:["close"],setup(e,{emit:o}){return{handleClose:()=>{o("close")}}}}),u={class:"del-wrap"};function C(e,o,t,h,$,v){const a=c;return s(),n("div",u,[p(e.$slots,"default",{},void 0,!0),e.showClose?(s(),n("div",{key:0,class:"icon-close",onClick:o[0]||(o[0]=i((...l)=>e.handleClose&&e.handleClose(...l),["stop"]))},[_(a,{size:12,name:"el-icon-CloseBold"})])):m("",!0)])}const B=r(f,[["render",C],["__scopeId","data-v-acafd744"]]);export{B as _};
+>>>>>>>> yz-0803:server/public/admin/assets/index-ZgwwU4Et.js
diff --git a/server/public/admin/assets/index-a6oMaTSF.js b/server/public/admin/assets/index-a6oMaTSF.js
new file mode 100644
index 000000000..9bb9a94e7
--- /dev/null
+++ b/server/public/admin/assets/index-a6oMaTSF.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-PclEbBEq.js
+import{o as p,q as s,r as l,v as a,D as n,Y as c,C as u,u as f,F as y,G as b,X as x,bg as g,M as v}from"./.pnpm-BadRMC3e.js";import{a as C}from"./index-CARk4iLN.js";import{_ as E}from"./index-C360OAjQ.js";import"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import"./index-DcSBJkxh.js";import"./index-2cRJ7Pdu.js";import"./index-BHk2qnVA.js";import"./file-DAA7Hwft.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./usePaging-DMqUvFG-.js";const V={class:"material-index"},k=p({name:"material"}),z=p({...k,setup(T){const r=[{type:"image",name:"图片"},{type:"video",name:"视频"},{type:"file",name:"文件"}],t=v("image");return(h,o)=>{const m=C,_=x,i=c,d=g;return s(),l("div",V,[a(d,{class:"!border-none",shadow:"never"},{default:n(()=>[a(i,{modelValue:f(t),"onUpdate:modelValue":o[0]||(o[0]=e=>u(t)?t.value=e:null)},{default:n(()=>[(s(),l(y,null,b(r,e=>a(_,{label:e.name,name:e.type,index:e.type,key:e.type,lazy:""},{default:n(()=>[a(m,{type:e.type,mode:"page","file-size":"120px",limit:-1,"page-size":20},null,8,["type"])]),_:2},1032,["label","name","index"])),64))]),_:1},8,["modelValue"])]),_:1})])}}}),P=E(z,[["__scopeId","data-v-01f37926"]]);export{P as default};
+========
+import{o as p,q as s,r as l,v as a,D as n,Y as c,C as u,u as f,F as y,G as b,X as x,bg as g,M as v}from"./.pnpm-BadRMC3e.js";import{a as C}from"./index-ci6cz5MZ.js";import{_ as E}from"./index-C53kWH2_.js";import"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import"./index-ZgwwU4Et.js";import"./index-ByXR3YHf.js";import"./index-9XBsG-Cy.js";import"./file-Ci3F9EoX.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./usePaging-DMqUvFG-.js";const V={class:"material-index"},k=p({name:"material"}),z=p({...k,setup(T){const r=[{type:"image",name:"图片"},{type:"video",name:"视频"},{type:"file",name:"文件"}],t=v("image");return(h,o)=>{const m=C,_=x,i=c,d=g;return s(),l("div",V,[a(d,{class:"!border-none",shadow:"never"},{default:n(()=>[a(i,{modelValue:f(t),"onUpdate:modelValue":o[0]||(o[0]=e=>u(t)?t.value=e:null)},{default:n(()=>[(s(),l(y,null,b(r,e=>a(_,{label:e.name,name:e.type,index:e.type,key:e.type,lazy:""},{default:n(()=>[a(m,{type:e.type,mode:"page","file-size":"120px",limit:-1,"page-size":20},null,8,["type"])]),_:2},1032,["label","name","index"])),64))]),_:1},8,["modelValue"])]),_:1})])}}}),P=E(z,[["__scopeId","data-v-01f37926"]]);export{P as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-a6oMaTSF.js
diff --git a/server/public/admin/assets/index-aEvl4WTN.js b/server/public/admin/assets/index-aEvl4WTN.js
new file mode 100644
index 000000000..9353fe51d
--- /dev/null
+++ b/server/public/admin/assets/index-aEvl4WTN.js
@@ -0,0 +1,2 @@
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-emC-q2iC.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BWNwZkyX.js","assets/index-C53kWH2_.js","assets/index-ynJZC2Ez.css","assets/perm-BICz51xi.js","assets/DailyMatrix-DiYUQo1w.js","assets/picker-Bo_aGeCY.js","assets/index-ByXR3YHf.js","assets/index-B3imPWFk.css","assets/index-ci6cz5MZ.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-ZgwwU4Et.js","assets/index-D0f1Mn00.css","assets/index-9XBsG-Cy.js","assets/file-Ci3F9EoX.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-C7qwIzjQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-BC4wO08v.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Dwk-zq8O.js","assets/RecordingPlaybackBlock-Cbli8dUQ.js","assets/RecordingVideoPlayer-PakpPQK-.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-OjhXvTzR.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-i8xnfggI.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-B9Qsv5NO.js","assets/doctor-CNnijzjL.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DcnSeCwS.js","assets/patient-cj6mW_46.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-PJG2qWT8.js","assets/PrescriptionOrderDetailDrawer-CL3jtI2P.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-Nz5F52Mm.js","assets/index-D25Fsd3W.js","assets/medicine-DWZ_n3IQ.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css","assets/appointment-ys1YAIGr.js","assets/first_visit-LvTGTIzk.js","assets/appointment-BmvdInUs.css","assets/OrderPanel-CaVyDZcc.js","assets/OrderActionHost-BLEHV28s.js","assets/OrderActionHost-l_dVpDKK.css","assets/OrderPanel-SJ9oM2y4.css","assets/ProgressPanel-bvPKqRZC.js","assets/ProgressPanel-Cm25AULh.css"])))=>i.map(i=>d[i]);
+import{o as it,W as dt,ap as rt,q as m,r as Y,s as n,v as l,D as s,L as u,T as r,br as ut,u as c,by as mt,K as pt,Y as _t,X as ct,ac as ke,b7 as ft,b8 as Ce,bA as De,bc as gt,F as M,G as oe,bb as vt,bp as yt,w as bt,ce as Ve,cS as kt,cO as Ct,O as g,bj as Dt,bk as Vt,P as D,ae as Et,bB as xt,bi as Yt,C as Rt,ad as wt,bg as Nt,b9 as Pt,b6 as It,bm as ht,bn as At,bd as $t,bt as St,b5 as Mt,cb as K,al as j,M as _,ba as ie,p as E}from"./.pnpm-BadRMC3e.js";import{_ as Ft}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{d as Lt}from"./dayjs-Dr2Em-pV.js";import{u as Ot}from"./usePaging-DMqUvFG-.js";import{h as F}from"./perm-BICz51xi.js";import{u as qt,i as f,_ as Tt}from"./index-C53kWH2_.js";import{r as Ut,s as Bt,t as Wt,u as zt,v as Qt}from"./first_visit-LvTGTIzk.js";import{R as Kt}from"./tcm-BWNwZkyX.js";import{g as jt}from"./weapp-DkO9N0-a.js";const Gt={class:"my-patients-page"},Xt={class:"page-heading"},Ht={class:"heading-actions"},Jt={class:"filter-panel"},Zt={class:"filter-row filter-row-main"},ea={class:"filter-group status-group"},ta={class:"filter-row date-filter-row"},aa={class:"quick-dates"},na={class:"summary-grid"},la={class:"summary-icon"},sa={class:"summary-copy"},oa={class:"summary-date"},ia={class:"summary-icon"},da={class:"summary-copy"},ra={class:"summary-date"},ua={class:"summary-icon"},ma={class:"summary-copy"},pa={class:"summary-date"},_a={class:"table-heading"},ca={class:"table-scope"},fa={class:"patient-cell"},ga={class:"patient-avatar"},va={class:"doctor-cell"},ya={class:"revisit-count"},ba={class:"row-actions"},ka={class:"pagination-wrap"},Ca={class:"dialog-patient-name"},Da={class:"inherit-field"},Va={class:"dialog-patient-name"},Ea={class:"qrcode-body"},xa=["src"],Ya={class:"qrcode-meta"},Ra={key:2,class:"qrcode-error"},wa=it({__name:"index",setup(Na){const Ee=K(()=>j(()=>import("./edit-emC-q2iC.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]))),xe=K(()=>j(()=>import("./appointment-ys1YAIGr.js"),__vite__mapDeps([58,1,2,34,3,4,5,40,59,60]))),Ye=K(()=>j(()=>import("./OrderPanel-CaVyDZcc.js"),__vite__mapDeps([61,1,2,12,18,59,4,5,62,46,3,47,48,6,63,64]))),Re=K(()=>j(()=>import("./ProgressPanel-bvPKqRZC.js"),__vite__mapDeps([65,1,2,12,34,18,59,4,5,66]))),G=dt(),we=qt(),V=_("patients"),w=_("all"),L=_([]),de=_(),re=_(),X=_(),H=_(),O=_(!1),q=_(!1),T=_(""),N=_(null),P=_(!1),J=_(!1),Z=_(!1),U=_([]),I=_(null),k=ie({assistant_id:null,is_inherit:!1}),h=_(!1),B=_(!1),ee=_(),v=ie({id:0,patient_name:"",id_card:""}),d=ie({keyword:"",status_filter:"",start_date:"",end_date:""}),Ne=[{label:"全部",value:""},{label:"未预约",value:"unbooked"},{label:"待面诊",value:"pending_interview"},{label:"已完成",value:"completed"},{label:"已过号",value:"missed"}],Pe=[{label:"全部时间",value:"all"},{label:"今日挂号",value:"today"},{label:"明日",value:"tomorrow"},{label:"后天",value:"day_after"},{label:"近7天",value:"last7"},{label:"近30天",value:"last30"}],{pager:y,getLists:A,resetPage:$}=Ot({fetchFun:Ut,params:d,size:15,firstLoading:!0}),te=E(()=>{var t,e,i,o,p,b;return{today:Number(((e=(t=y.extend)==null?void 0:t.summary)==null?void 0:e.today)||0),tomorrow:Number(((o=(i=y.extend)==null?void 0:i.summary)==null?void 0:o.tomorrow)||0),day_after:Number(((b=(p=y.extend)==null?void 0:p.summary)==null?void 0:b.day_after)||0)}}),ae=E(()=>{var t;return((t=y.extend)==null?void 0:t.dates)||{}}),ue=E(()=>{var t,e;return((e=(t=y.extend)==null?void 0:t.scope)==null?void 0:e.label)||"按权限加载"}),me=E(()=>F(["tcm.diagnosis/edit"])),pe=E(()=>F(["tcm.diagnosis/readonlyDetail"])),ne=E(()=>F(["tcm.diagnosis/guahao"])),Ie=E(()=>F(["tcm.diagnosis/assign"])),he=E(()=>F(["tcm.diagnosis/edit"])),Ae=E(()=>{var t,e;return V.value==="orders"?!!((t=X.value)!=null&&t.loading):V.value==="progress"?!!((e=H.value)!=null&&e.loading):y.loading});function le(){$()}function $e(){$()}function W(){var t,e,i,o;return V.value==="orders"?(e=(t=X.value)==null?void 0:t.refresh)==null?void 0:e.call(t):V.value==="progress"?(o=(i=H.value)==null?void 0:i.refresh)==null?void 0:o.call(i):A()}function Se(){d.keyword="",d.status_filter="",d.start_date="",d.end_date="",w.value="all",L.value=[],$()}function z(t){w.value=t,L.value=[];const e=Lt();t==="all"?(d.start_date="",d.end_date=""):t==="today"?(d.start_date=e.format("YYYY-MM-DD"),d.end_date=d.start_date):t==="tomorrow"?(d.start_date=e.add(1,"day").format("YYYY-MM-DD"),d.end_date=d.start_date):t==="day_after"?(d.start_date=e.add(2,"day").format("YYYY-MM-DD"),d.end_date=d.start_date):t==="last7"?(d.start_date=e.subtract(6,"day").format("YYYY-MM-DD"),d.end_date=e.format("YYYY-MM-DD")):t==="last30"&&(d.start_date=e.subtract(29,"day").format("YYYY-MM-DD"),d.end_date=e.format("YYYY-MM-DD")),$()}function Me(t){t!=null&&t.length?(w.value="custom",d.start_date=t[0]||"",d.end_date=t[1]||t[0]||""):(w.value="all",d.start_date="",d.end_date=""),$()}function Q(t){var e,i;if(!me.value){_e(t);return}(i=(e=de.value)==null?void 0:e.open)==null||i.call(e,"edit",Number(t.diagnosis_id||t.id))}function _e(t){if(!pe.value){f.msgWarning("当前角色没有诊单查看权限");return}const e=G.getRoutes().find(i=>{var o;return((o=i.meta)==null?void 0:o.perms)==="tcm.diagnosis/readonlyDetail"});e!=null&&e.path?G.push({path:e.path,query:{id:String(t.diagnosis_id||t.id)}}):G.push({path:"/tcm/diagnosis-readonly",query:{id:String(t.diagnosis_id||t.id)}})}function Fe(t){var e,i;(i=(e=re.value)==null?void 0:e.open)==null||i.call(e,{...t,id:Number(t.diagnosis_id||t.id),patient_id:Number(t.diagnosis_id||t.id)})}function Le(t){const e=String((t==null?void 0:t.name)||(t==null?void 0:t.account)||`医助${(t==null?void 0:t.id)||""}`),i=String((t==null?void 0:t.dept_names)||"").trim();return i?`${e} · ${i}`:e}async function Oe(){Z.value=!0;try{const t=await Qt();U.value=Array.isArray(t)?t:[]}catch(t){U.value=[],f.msgError((t==null?void 0:t.msg)||"医助列表加载失败")}finally{Z.value=!1}}async function qe(t){I.value=t,k.assistant_id=Number(t.assistant_id)>0?Number(t.assistant_id):null,k.is_inherit=!1,P.value=!0,U.value.length===0&&await Oe()}async function Te(){var e,i;const t=Number(((e=I.value)==null?void 0:e.diagnosis_id)||((i=I.value)==null?void 0:i.id));if(t<=0){f.msgWarning("患者诊单信息不完整");return}if(!k.assistant_id){f.msgWarning("请选择医助");return}J.value=!0;try{await Bt({id:t,assistant_id:Number(k.assistant_id),is_inherit:k.is_inherit?1:0}),f.msgSuccess("指派成功"),P.value=!1,await A()}catch(o){f.msgError((o==null?void 0:o.msg)||"指派失败")}finally{J.value=!1}}const Ue={id_card:[{required:!0,validator:(t,e,i)=>{const o=String(e||"").trim();if(!o){i(new Error("请输入身份证号"));return}const p=/^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/.test(o),b=/^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$/.test(o);i(p||b?void 0:new Error("请输入15或18位有效身份证号"))},trigger:"blur"}]};function Be(t){v.id=Number(t.diagnosis_id||t.id),v.patient_name=String(t.patient_name||""),v.id_card="",h.value=!0}function We(){var t,e;v.id=0,v.patient_name="",v.id_card="",(e=(t=ee.value)==null?void 0:t.clearValidate)==null||e.call(t)}async function ce(){var t,e;if(!B.value){try{await((e=(t=ee.value)==null?void 0:t.validate)==null?void 0:e.call(t))}catch{return}B.value=!0;try{await Wt({id:v.id,id_card:v.id_card.trim()}),f.msgSuccess("补全成功,年龄已自动更新"),h.value=!1,await A()}catch(i){f.msgError((i==null?void 0:i.msg)||"补全身份证失败")}finally{B.value=!1}}}function fe(t){return ne.value&&Number(t.appointment_id)>0&&Number(t.appointment_status)===1&&Number(t.appointment_doctor_id)>0}async function ge(t){var o;if(!fe(t)){f.msgWarning("仅已挂号患者可以生成诊单二维码");return}const e=Number(t.diagnosis_id||t.id),i=Number(t.source_patient_id||t.diagnosis_id||t.id);if(e<=0||i<=0){f.msgWarning("患者诊单信息不完整");return}N.value=t,O.value=!0,q.value=!0,T.value="";try{const p=await jt();if(!(p!=null&&p.app_id))throw new Error("小程序未配置,请先配置小程序信息");const b=await Kt({diagnosis_id:e,doctor_id:Number(t.appointment_doctor_id),patient_id:i,share_user_id:((o=we.userInfo)==null?void 0:o.id)||""});if(!(b!=null&&b.qrcode_url))throw new Error("二维码生成失败");T.value=b.qrcode_url}catch(p){f.msgError((p==null?void 0:p.msg)||(p==null?void 0:p.message)||"生成二维码失败,请重试")}finally{q.value=!1}}function ze(){N.value&&ge(N.value)}function ve(t){return Number(t.appointment_id)>0&&[1,4].includes(Number(t.appointment_status))}async function Qe(t){if(ve(t))try{await f.confirm(`确定取消“${t.patient_name||"该患者"}”的挂号吗?`),await zt({id:Number(t.appointment_id)}),f.msgSuccess("取消挂号成功"),await W()}catch(e){e!=="cancel"&&f.msgError((e==null?void 0:e.msg)||"取消挂号失败")}}function Ke(t){return String(t||"患").trim().slice(0,1)}function je(t){return{1:"primary",3:"success",4:"warning"}[Number(t)]||"info"}function Ge({row:t}){return t.confirmed?Number(t.appointment_status)===4?"patient-row-missed":"":"patient-row-unconfirmed"}return rt(()=>{A()}),(t,e)=>{const i=ut,o=pt,p=ct,b=_t,ye=ft,Xe=vt,He=gt,Je=yt,S=bt,x=Vt,Ze=xt,et=Dt,tt=Ft,at=Nt,R=It,nt=At,lt=ht,st=$t,be=Pt,se=St,ot=Yt;return m(),Y("div",Gt,[n("div",Xt,[e[18]||(e[18]=n("div",null,[n("div",{class:"eyebrow"},"一诊"),n("h1",null,"我的患者"),n("p",null,"患者、挂号与诊单信息按当前角色和部门数据范围展示")],-1)),n("div",Ht,[l(i,{effect:"plain",round:""},{default:s(()=>[u(r(ue.value),1)]),_:1}),l(o,{icon:c(mt),loading:Ae.value,onClick:W},{default:s(()=>[...e[17]||(e[17]=[u("刷新",-1)])]),_:1},8,["icon","loading"])])]),l(at,{class:"workspace-card",shadow:"never"},{default:s(()=>[l(b,{modelValue:V.value,"onUpdate:modelValue":e[0]||(e[0]=a=>V.value=a),class:"workspace-tabs"},{default:s(()=>[l(p,{label:"患者列表",name:"patients"}),l(p,{label:"订单管理",name:"orders"}),l(p,{label:"面诊进度",name:"progress"})]),_:1},8,["modelValue"]),ke(n("div",null,[n("div",Jt,[n("div",Zt,[l(ye,{modelValue:d.keyword,"onUpdate:modelValue":e[1]||(e[1]=a=>d.keyword=a),class:"keyword-input",clearable:"","prefix-icon":c(De),placeholder:"患者姓名 / 手机号 / 助理 / 医生",onKeyup:Ce(le,["enter"]),onClear:le},null,8,["modelValue","prefix-icon"]),n("div",ea,[e[19]||(e[19]=n("span",{class:"filter-label"},"状态",-1)),l(He,{modelValue:d.status_filter,"onUpdate:modelValue":e[2]||(e[2]=a=>d.status_filter=a),onChange:$e},{default:s(()=>[(m(),Y(M,null,oe(Ne,a=>l(Xe,{key:a.value,value:a.value},{default:s(()=>[u(r(a.label),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"])]),l(o,{type:"primary",icon:c(De),onClick:le},{default:s(()=>[...e[20]||(e[20]=[u("查询",-1)])]),_:1},8,["icon"]),l(o,{onClick:Se},{default:s(()=>[...e[21]||(e[21]=[u("重置",-1)])]),_:1})]),n("div",ta,[e[22]||(e[22]=n("span",{class:"filter-label"},"挂号时间",-1)),n("div",aa,[(m(),Y(M,null,oe(Pe,a=>l(o,{key:a.value,type:w.value===a.value?"primary":"default",onClick:C=>z(a.value)},{default:s(()=>[u(r(a.label),1)]),_:2},1032,["type","onClick"])),64))]),l(Je,{modelValue:L.value,"onUpdate:modelValue":e[3]||(e[3]=a=>L.value=a),class:"date-range",type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:!0,onChange:Me},null,8,["modelValue"])])]),n("div",na,[n("button",{class:"summary-card summary-today",type:"button",onClick:e[4]||(e[4]=a=>z("today"))},[n("span",la,[l(S,null,{default:s(()=>[l(c(Ve))]),_:1})]),n("span",sa,[e[23]||(e[23]=n("small",null,"今日挂号",-1)),n("strong",null,r(te.value.today),1),e[24]||(e[24]=n("em",null,"人",-1))]),n("span",oa,r(ae.value.today||"—"),1)]),n("button",{class:"summary-card summary-tomorrow",type:"button",onClick:e[5]||(e[5]=a=>z("tomorrow"))},[n("span",ia,[l(S,null,{default:s(()=>[l(c(kt))]),_:1})]),n("span",da,[e[25]||(e[25]=n("small",null,"明日预约",-1)),n("strong",null,r(te.value.tomorrow),1),e[26]||(e[26]=n("em",null,"人",-1))]),n("span",ra,r(ae.value.tomorrow||"—"),1)]),n("button",{class:"summary-card summary-after",type:"button",onClick:e[6]||(e[6]=a=>z("day_after"))},[n("span",ua,[l(S,null,{default:s(()=>[l(c(Ve))]),_:1})]),n("span",ma,[e[27]||(e[27]=n("small",null,"后天预约",-1)),n("strong",null,r(te.value.day_after),1),e[28]||(e[28]=n("em",null,"人",-1))]),n("span",pa,r(ae.value.day_after||"—"),1)])]),n("div",_a,[n("div",null,[e[29]||(e[29]=n("h2",null,"患者列表",-1)),n("span",null,"共 "+r(c(y).count)+" 位患者",1)]),n("span",ca,[l(S,null,{default:s(()=>[l(c(Ct))]),_:1}),u(r(ue.value),1)])]),ke((m(),g(et,{data:c(y).lists,class:"patient-table","row-class-name":Ge,onRowDblclick:Q},{empty:s(()=>[l(Ze,{description:"当前范围内暂无患者"})]),default:s(()=>[l(x,{label:"患者","min-width":"190",fixed:"left"},{default:s(({row:a})=>[n("div",fa,[n("span",ga,r(Ke(a.patient_name)),1),n("div",null,[n("strong",null,r(a.patient_name||"未命名患者"),1),n("p",null,r(a.gender_desc)+" · "+r(a.age||"—")+"岁 · "+r(a.phone_masked||"无手机号"),1)])])]),_:1}),l(x,{prop:"assistant_name",label:"归属助理","min-width":"120"}),l(x,{label:"预约医生","min-width":"150"},{default:s(({row:a})=>[n("div",va,[n("span",null,r(a.appointment_doctor_name||"未预约"),1),a.appointment_status?(m(),g(i,{key:0,size:"small",type:je(a.appointment_status),effect:"light"},{default:s(()=>[u(r(a.appointment_status_text),1)]),_:2},1032,["type"])):D("",!0)])]),_:1}),l(x,{label:"预约时间","min-width":"165"},{default:s(({row:a})=>[n("span",{class:Et(["appointment-time",{empty:!a.appointment_time_text}])},r(a.appointment_time_text||"暂无预约"),3)]),_:1}),l(x,{label:"复诊次数",width:"105",align:"center"},{default:s(({row:a})=>[n("span",ya,r(a.revisit_count||0)+" 次",1)]),_:1}),l(x,{label:"确认信息",width:"110",align:"center"},{default:s(({row:a})=>[l(i,{size:"small",type:a.confirmed?"success":"warning",effect:"light"},{default:s(()=>[u(r(a.confirmation_text),1)]),_:2},1032,["type"])]),_:1}),l(x,{label:"诊单日期",width:"118"},{default:s(({row:a})=>[u(r(a.diagnosis_date_text||"—"),1)]),_:1}),l(x,{label:"操作","min-width":"430",fixed:"right"},{default:s(({row:a})=>[n("div",ba,[me.value?(m(),g(o,{key:0,type:"primary",link:"",onClick:C=>Q(a)},{default:s(()=>[...e[30]||(e[30]=[u("诊单",-1)])]),_:1},8,["onClick"])):pe.value?(m(),g(o,{key:1,type:"primary",link:"",onClick:C=>_e(a)},{default:s(()=>[...e[31]||(e[31]=[u("查看",-1)])]),_:1},8,["onClick"])):D("",!0),ne.value?(m(),g(o,{key:2,type:"primary",link:"",onClick:C=>Fe(a)},{default:s(()=>[...e[32]||(e[32]=[u("预约",-1)])]),_:1},8,["onClick"])):D("",!0),Ie.value?(m(),g(o,{key:3,type:"warning",link:"",onClick:C=>qe(a)},{default:s(()=>[u(r(Number(a.assistant_id)>0?"重新指派":"指派"),1)]),_:2},1032,["onClick"])):D("",!0),he.value&&!Number(a.has_id_card)?(m(),g(o,{key:4,type:"warning",link:"",onClick:C=>Be(a)},{default:s(()=>[...e[33]||(e[33]=[u(" 补全身份证 ",-1)])]),_:1},8,["onClick"])):D("",!0),fe(a)?(m(),g(o,{key:5,type:"primary",link:"",onClick:C=>ge(a)},{default:s(()=>[...e[34]||(e[34]=[u(" 诊单二维码 ",-1)])]),_:1},8,["onClick"])):D("",!0),ne.value&&ve(a)?(m(),g(o,{key:6,type:"danger",link:"",onClick:C=>Qe(a)},{default:s(()=>[...e[35]||(e[35]=[u(" 取消挂号 ",-1)])]),_:1},8,["onClick"])):D("",!0)])]),_:1})]),_:1},8,["data"])),[[ot,c(y).loading]]),n("div",ka,[l(tt,{modelValue:c(y),"onUpdate:modelValue":e[7]||(e[7]=a=>Rt(y)?y.value=a:null),onChange:c(A)},null,8,["modelValue","onChange"])])],512),[[wt,V.value==="patients"]]),V.value==="orders"?(m(),g(c(Ye),{key:0,ref_key:"orderPanelRef",ref:X,onOpenDiagnosis:Q},null,512)):D("",!0),V.value==="progress"?(m(),g(c(Re),{key:1,ref_key:"progressPanelRef",ref:H,onOpenDiagnosis:Q},null,512)):D("",!0)]),_:1}),l(c(Ee),{ref_key:"editRef",ref:de,onSuccess:W},null,512),l(c(xe),{ref_key:"appointmentRef",ref:re,"api-scene":"my_patient",onSuccess:W},null,512),l(se,{modelValue:P.value,"onUpdate:modelValue":e[11]||(e[11]=a=>P.value=a),title:"指派医助",width:"500px","close-on-click-modal":!1},{footer:s(()=>[l(o,{onClick:e[10]||(e[10]=a=>P.value=!1)},{default:s(()=>[...e[38]||(e[38]=[u("取消",-1)])]),_:1}),l(o,{type:"primary",loading:J.value,onClick:Te},{default:s(()=>[...e[39]||(e[39]=[u("确定指派",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(be,{model:k,"label-width":"88px"},{default:s(()=>[l(R,{label:"患者"},{default:s(()=>{var a;return[n("span",Ca,r(((a=I.value)==null?void 0:a.patient_name)||"—"),1)]}),_:1}),l(R,{label:"当前助理"},{default:s(()=>{var a;return[n("span",null,r(((a=I.value)==null?void 0:a.assistant_name)||"未分配"),1)]}),_:1}),l(R,{label:"选择医助",required:""},{default:s(()=>[l(lt,{modelValue:k.assistant_id,"onUpdate:modelValue":e[8]||(e[8]=a=>k.assistant_id=a),class:"dialog-full-width",filterable:"",clearable:"",loading:Z.value,placeholder:"请选择当前范围内的医助"},{default:s(()=>[(m(!0),Y(M,null,oe(U.value,a=>(m(),g(nt,{key:a.id,label:Le(a),value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1}),l(R,{label:"继承"},{default:s(()=>[n("div",Da,[l(st,{modelValue:k.is_inherit,"onUpdate:modelValue":e[9]||(e[9]=a=>k.is_inherit=a)},{default:s(()=>[...e[36]||(e[36]=[u("作为继承指派",-1)])]),_:1},8,["modelValue"]),e[37]||(e[37]=n("small",null,"用于区分继承关系,指派操作仍会完整记录。",-1))])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(se,{modelValue:h.value,"onUpdate:modelValue":e[14]||(e[14]=a=>h.value=a),title:"补全身份证号",width:"430px","close-on-click-modal":!1,onClosed:We},{footer:s(()=>[l(o,{onClick:e[13]||(e[13]=a=>h.value=!1)},{default:s(()=>[...e[40]||(e[40]=[u("取消",-1)])]),_:1}),l(o,{type:"primary",loading:B.value,onClick:ce},{default:s(()=>[...e[41]||(e[41]=[u(" 提交并更新年龄 ",-1)])]),_:1},8,["loading"])]),default:s(()=>[l(be,{ref_key:"fillIdCardFormRef",ref:ee,model:v,rules:Ue,"label-width":"88px"},{default:s(()=>[l(R,{label:"患者"},{default:s(()=>[n("span",Va,r(v.patient_name||"—"),1)]),_:1}),l(R,{label:"身份证号",prop:"id_card"},{default:s(()=>[l(ye,{modelValue:v.id_card,"onUpdate:modelValue":e[12]||(e[12]=a=>v.id_card=a),maxlength:"18",clearable:"","show-word-limit":"",placeholder:"请输入15或18位身份证号",onKeyup:Ce(ce,["enter"])},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(se,{modelValue:O.value,"onUpdate:modelValue":e[16]||(e[16]=a=>O.value=a),title:"诊单二维码",width:"400px","close-on-click-modal":!1},{footer:s(()=>[l(o,{onClick:e[15]||(e[15]=a=>O.value=!1)},{default:s(()=>[...e[44]||(e[44]=[u("关闭",-1)])]),_:1}),q.value?D("",!0):(m(),g(o,{key:0,type:"primary",onClick:ze},{default:s(()=>[...e[45]||(e[45]=[u("重新生成",-1)])]),_:1}))]),default:s(()=>{var a,C;return[n("div",Ea,[q.value?(m(),Y(M,{key:0},[l(S,{class:"is-loading",size:40},{default:s(()=>[l(c(Mt))]),_:1}),e[42]||(e[42]=n("span",null,"二维码生成中...",-1))],64)):T.value?(m(),Y(M,{key:1},[n("img",{src:T.value,alt:"诊单二维码",class:"qrcode-image"},null,8,xa),n("div",Ya,[n("div",null,"患者:"+r(((a=N.value)==null?void 0:a.patient_name)||"—"),1),n("div",null,"挂号时间:"+r(((C=N.value)==null?void 0:C.appointment_time_text)||"—"),1),e[43]||(e[43]=n("div",null,"请使用企业微信扫描二维码,然后转发给患者",-1))])],64)):(m(),Y("span",Ra,"生成失败,请重试"))])]}),_:1},8,["modelValue"])])}}}),qa=Tt(wa,[["__scopeId","data-v-eb709398"]]);export{qa as default};
diff --git a/server/public/admin/assets/index-anyGvpRt.js b/server/public/admin/assets/index-anyGvpRt.js
index 729210fe3..a505231e4 100644
--- a/server/public/admin/assets/index-anyGvpRt.js
+++ b/server/public/admin/assets/index-anyGvpRt.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-anyGvpRt.js
import{o as Z,ap as ee,q as L,r as ae,v as a,D as l,b9 as te,b6 as le,b7 as oe,b8 as se,K as ne,L as i,bg as re,s as b,ac as ie,O as ue,bj as de,bk as pe,T as R,a1 as me,w as ce,u as fe,bu as ve,I as ge,bi as _e,bs as ke,bt as be,M as n,ba as D,E as V,e as ye}from"./.pnpm-BadRMC3e.js";import{e as Ve,f as z,g as he,h as we}from"./asset-C4F2zuLo.js";import"./index-C360OAjQ.js";const xe={class:"asset-user-container"},Ce={class:"mb-4"},Ee={class:"flex items-center gap-1 min-w-0"},Ue=["title"],De={class:"mt-4 flex justify-end"},ze={class:"text-sm text-gray-500 mb-3"},$e=Z({__name:"index",setup(Te){const h=n(!1),w=n([]),T=n(0),c=D({phone:""}),u=D({page_no:1,page_size:15}),p=n(!1),x=n(""),C=n(!1),E=n(),f=n(!1),U=n(!1),v=n(""),y=n(""),S=n(""),s=D({id:"",phone:"",password:"",remark:"",status:1}),M={phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]},d=async()=>{h.value=!0;try{const o={...u,...c},e=await Ve(o);w.value=e.lists,T.value=e.count}catch(o){console.error(o)}finally{h.value=!1}},A=()=>{u.page_no=1,d()},P=()=>{c.phone="",u.page_no=1,d()},q=async o=>{try{await z({id:o.id,status:o.status}),V.success(o.status===1?"已启用":"已禁用")}catch(e){o.status=o.status===1?0:1,console.error(e)}},F=()=>{x.value="新增账号",Object.assign(s,{id:"",phone:"",password:"",remark:"",status:1}),p.value=!0},K=o=>{x.value="编辑账号",Object.assign(s,{id:o.id,phone:o.phone,password:"",remark:o.remark||"",status:o.status}),p.value=!0},N=o=>{y.value=o.id,S.value=o.phone||"",v.value=o.remark||"",f.value=!0},O=async()=>{if(y.value){U.value=!0;try{await z({id:y.value,remark:v.value});const o=w.value.find(e=>e.id===y.value);o&&(o.remark=v.value),V.success("备注已保存"),f.value=!1}catch(o){console.error(o)}finally{U.value=!1}}},Q=async o=>{try{await ye.confirm("确定要删除该账号及其关联资源吗?","提示",{type:"warning"}),await he({id:o.id}),V.success("删除成功"),d()}catch{}},G=async()=>{E.value&&await E.value.validate(async o=>{if(o){C.value=!0;try{s.id?await z(s):await we(s),V.success("操作成功"),p.value=!1,d()}catch(e){console.error(e)}finally{C.value=!1}}})};return ee(()=>{d()}),(o,e)=>{const g=oe,m=le,r=ne,B=te,$=re,_=pe,H=ce,J=me,j=ge,W=de,X=ke,I=be,Y=_e;return L(),ae("div",xe,[a($,{class:"!border-none",shadow:"never"},{default:l(()=>[a(B,{class:"ls-form",model:c,inline:""},{default:l(()=>[a(m,{class:"w-[280px]",label:"手机号"},{default:l(()=>[a(g,{placeholder:"请输入手机号",modelValue:c.phone,"onUpdate:modelValue":e[0]||(e[0]=t=>c.phone=t),clearable:"",onKeyup:se(A,["enter"])},null,8,["modelValue"])]),_:1}),a(m,null,{default:l(()=>[a(r,{type:"primary",onClick:A},{default:l(()=>[...e[12]||(e[12]=[i("查询",-1)])]),_:1}),a(r,{onClick:P},{default:l(()=>[...e[13]||(e[13]=[i("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),a($,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[b("div",Ce,[a(r,{type:"primary",onClick:F},{default:l(()=>[...e[14]||(e[14]=[i("新增账号",-1)])]),_:1})]),ie((L(),ue(W,{data:w.value},{default:l(()=>[a(_,{prop:"phone",label:"手机号"}),a(_,{label:"备注","min-width":"200"},{default:l(({row:t})=>[b("div",Ee,[b("span",{class:"truncate text-gray-600",title:t.remark||""},R(t.remark||"—"),9,Ue),a(J,{content:"编辑备注",placement:"top"},{default:l(()=>[a(H,{class:"shrink-0 cursor-pointer text-gray-400 hover:text-primary",onClick:k=>N(t)},{default:l(()=>[a(fe(ve))]),_:1},8,["onClick"])]),_:2},1024)])]),_:1}),a(_,{prop:"create_time",label:"创建时间",width:"180"}),a(_,{prop:"status",label:"状态",width:"100"},{default:l(({row:t})=>[a(j,{modelValue:t.status,"onUpdate:modelValue":k=>t.status=k,"active-value":1,"inactive-value":0,"active-text":"正常","inactive-text":"禁用","inline-prompt":"",onChange:k=>q(t)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),a(_,{label:"操作",width:"200",fixed:"right"},{default:l(({row:t})=>[a(r,{type:"primary",link:"",onClick:k=>K(t)},{default:l(()=>[...e[15]||(e[15]=[i("编辑",-1)])]),_:1},8,["onClick"]),a(r,{type:"danger",link:"",onClick:k=>Q(t)},{default:l(()=>[...e[16]||(e[16]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Y,h.value]]),b("div",De,[a(X,{"current-page":u.page_no,"onUpdate:currentPage":e[1]||(e[1]=t=>u.page_no=t),"page-size":u.page_size,"onUpdate:pageSize":e[2]||(e[2]=t=>u.page_size=t),total:T.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:d,onCurrentChange:d},null,8,["current-page","page-size","total"])])]),_:1}),a(I,{modelValue:p.value,"onUpdate:modelValue":e[8]||(e[8]=t=>p.value=t),title:x.value,width:"500px","destroy-on-close":""},{footer:l(()=>[a(r,{onClick:e[7]||(e[7]=t=>p.value=!1)},{default:l(()=>[...e[17]||(e[17]=[i("取消",-1)])]),_:1}),a(r,{type:"primary",onClick:G,loading:C.value},{default:l(()=>[...e[18]||(e[18]=[i("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(B,{ref_key:"formRef",ref:E,model:s,rules:M,"label-width":"80px"},{default:l(()=>[a(m,{label:"手机号",prop:"phone"},{default:l(()=>[a(g,{modelValue:s.phone,"onUpdate:modelValue":e[3]||(e[3]=t=>s.phone=t),placeholder:"请输入手机号(作为登录账号)"},null,8,["modelValue"])]),_:1}),a(m,{label:"密码",prop:"password"},{default:l(()=>[a(g,{modelValue:s.password,"onUpdate:modelValue":e[4]||(e[4]=t=>s.password=t),placeholder:"为空则默认为 123456","show-password":""},null,8,["modelValue"])]),_:1}),a(m,{label:"备注",prop:"remark"},{default:l(()=>[a(g,{modelValue:s.remark,"onUpdate:modelValue":e[5]||(e[5]=t=>s.remark=t),type:"textarea",rows:3,maxlength:"500","show-word-limit":"",placeholder:"可填写用户相关信息,仅管理员可见"},null,8,["modelValue"])]),_:1}),a(m,{label:"状态",prop:"status"},{default:l(()=>[a(j,{modelValue:s.status,"onUpdate:modelValue":e[6]||(e[6]=t=>s.status=t),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(I,{modelValue:f.value,"onUpdate:modelValue":e[11]||(e[11]=t=>f.value=t),title:"快捷备注",width:"420px","destroy-on-close":""},{footer:l(()=>[a(r,{onClick:e[10]||(e[10]=t=>f.value=!1)},{default:l(()=>[...e[19]||(e[19]=[i("取消",-1)])]),_:1}),a(r,{type:"primary",loading:U.value,onClick:O},{default:l(()=>[...e[20]||(e[20]=[i("保存",-1)])]),_:1},8,["loading"])]),default:l(()=>[b("div",ze,"账号:"+R(S.value),1),a(g,{modelValue:v.value,"onUpdate:modelValue":e[9]||(e[9]=t=>v.value=t),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"可填写用户相关信息,仅管理员可见"},null,8,["modelValue"])]),_:1},8,["modelValue"])])}}});export{$e as default};
+========
+import{o as Z,ap as ee,q as L,r as ae,v as a,D as l,b9 as te,b6 as le,b7 as oe,b8 as se,K as ne,L as i,bg as re,s as b,ac as ie,O as ue,bj as de,bk as pe,T as R,a1 as me,w as ce,u as fe,bu as ve,I as ge,bi as _e,bs as ke,bt as be,M as n,ba as D,E as V,e as ye}from"./.pnpm-BadRMC3e.js";import{e as Ve,f as z,g as he,h as we}from"./asset-1ie1q3ci.js";import"./index-C53kWH2_.js";const xe={class:"asset-user-container"},Ce={class:"mb-4"},Ee={class:"flex items-center gap-1 min-w-0"},Ue=["title"],De={class:"mt-4 flex justify-end"},ze={class:"text-sm text-gray-500 mb-3"},$e=Z({__name:"index",setup(Te){const h=n(!1),w=n([]),T=n(0),c=D({phone:""}),u=D({page_no:1,page_size:15}),p=n(!1),x=n(""),C=n(!1),E=n(),f=n(!1),U=n(!1),v=n(""),y=n(""),S=n(""),s=D({id:"",phone:"",password:"",remark:"",status:1}),M={phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]},d=async()=>{h.value=!0;try{const o={...u,...c},e=await Ve(o);w.value=e.lists,T.value=e.count}catch(o){console.error(o)}finally{h.value=!1}},A=()=>{u.page_no=1,d()},P=()=>{c.phone="",u.page_no=1,d()},q=async o=>{try{await z({id:o.id,status:o.status}),V.success(o.status===1?"已启用":"已禁用")}catch(e){o.status=o.status===1?0:1,console.error(e)}},F=()=>{x.value="新增账号",Object.assign(s,{id:"",phone:"",password:"",remark:"",status:1}),p.value=!0},K=o=>{x.value="编辑账号",Object.assign(s,{id:o.id,phone:o.phone,password:"",remark:o.remark||"",status:o.status}),p.value=!0},N=o=>{y.value=o.id,S.value=o.phone||"",v.value=o.remark||"",f.value=!0},O=async()=>{if(y.value){U.value=!0;try{await z({id:y.value,remark:v.value});const o=w.value.find(e=>e.id===y.value);o&&(o.remark=v.value),V.success("备注已保存"),f.value=!1}catch(o){console.error(o)}finally{U.value=!1}}},Q=async o=>{try{await ye.confirm("确定要删除该账号及其关联资源吗?","提示",{type:"warning"}),await he({id:o.id}),V.success("删除成功"),d()}catch{}},G=async()=>{E.value&&await E.value.validate(async o=>{if(o){C.value=!0;try{s.id?await z(s):await we(s),V.success("操作成功"),p.value=!1,d()}catch(e){console.error(e)}finally{C.value=!1}}})};return ee(()=>{d()}),(o,e)=>{const g=oe,m=le,r=ne,B=te,$=re,_=pe,H=ce,J=me,j=ge,W=de,X=ke,I=be,Y=_e;return L(),ae("div",xe,[a($,{class:"!border-none",shadow:"never"},{default:l(()=>[a(B,{class:"ls-form",model:c,inline:""},{default:l(()=>[a(m,{class:"w-[280px]",label:"手机号"},{default:l(()=>[a(g,{placeholder:"请输入手机号",modelValue:c.phone,"onUpdate:modelValue":e[0]||(e[0]=t=>c.phone=t),clearable:"",onKeyup:se(A,["enter"])},null,8,["modelValue"])]),_:1}),a(m,null,{default:l(()=>[a(r,{type:"primary",onClick:A},{default:l(()=>[...e[12]||(e[12]=[i("查询",-1)])]),_:1}),a(r,{onClick:P},{default:l(()=>[...e[13]||(e[13]=[i("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),a($,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[b("div",Ce,[a(r,{type:"primary",onClick:F},{default:l(()=>[...e[14]||(e[14]=[i("新增账号",-1)])]),_:1})]),ie((L(),ue(W,{data:w.value},{default:l(()=>[a(_,{prop:"phone",label:"手机号"}),a(_,{label:"备注","min-width":"200"},{default:l(({row:t})=>[b("div",Ee,[b("span",{class:"truncate text-gray-600",title:t.remark||""},R(t.remark||"—"),9,Ue),a(J,{content:"编辑备注",placement:"top"},{default:l(()=>[a(H,{class:"shrink-0 cursor-pointer text-gray-400 hover:text-primary",onClick:k=>N(t)},{default:l(()=>[a(fe(ve))]),_:1},8,["onClick"])]),_:2},1024)])]),_:1}),a(_,{prop:"create_time",label:"创建时间",width:"180"}),a(_,{prop:"status",label:"状态",width:"100"},{default:l(({row:t})=>[a(j,{modelValue:t.status,"onUpdate:modelValue":k=>t.status=k,"active-value":1,"inactive-value":0,"active-text":"正常","inactive-text":"禁用","inline-prompt":"",onChange:k=>q(t)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),_:1}),a(_,{label:"操作",width:"200",fixed:"right"},{default:l(({row:t})=>[a(r,{type:"primary",link:"",onClick:k=>K(t)},{default:l(()=>[...e[15]||(e[15]=[i("编辑",-1)])]),_:1},8,["onClick"]),a(r,{type:"danger",link:"",onClick:k=>Q(t)},{default:l(()=>[...e[16]||(e[16]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Y,h.value]]),b("div",De,[a(X,{"current-page":u.page_no,"onUpdate:currentPage":e[1]||(e[1]=t=>u.page_no=t),"page-size":u.page_size,"onUpdate:pageSize":e[2]||(e[2]=t=>u.page_size=t),total:T.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:d,onCurrentChange:d},null,8,["current-page","page-size","total"])])]),_:1}),a(I,{modelValue:p.value,"onUpdate:modelValue":e[8]||(e[8]=t=>p.value=t),title:x.value,width:"500px","destroy-on-close":""},{footer:l(()=>[a(r,{onClick:e[7]||(e[7]=t=>p.value=!1)},{default:l(()=>[...e[17]||(e[17]=[i("取消",-1)])]),_:1}),a(r,{type:"primary",onClick:G,loading:C.value},{default:l(()=>[...e[18]||(e[18]=[i("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(B,{ref_key:"formRef",ref:E,model:s,rules:M,"label-width":"80px"},{default:l(()=>[a(m,{label:"手机号",prop:"phone"},{default:l(()=>[a(g,{modelValue:s.phone,"onUpdate:modelValue":e[3]||(e[3]=t=>s.phone=t),placeholder:"请输入手机号(作为登录账号)"},null,8,["modelValue"])]),_:1}),a(m,{label:"密码",prop:"password"},{default:l(()=>[a(g,{modelValue:s.password,"onUpdate:modelValue":e[4]||(e[4]=t=>s.password=t),placeholder:"为空则默认为 123456","show-password":""},null,8,["modelValue"])]),_:1}),a(m,{label:"备注",prop:"remark"},{default:l(()=>[a(g,{modelValue:s.remark,"onUpdate:modelValue":e[5]||(e[5]=t=>s.remark=t),type:"textarea",rows:3,maxlength:"500","show-word-limit":"",placeholder:"可填写用户相关信息,仅管理员可见"},null,8,["modelValue"])]),_:1}),a(m,{label:"状态",prop:"status"},{default:l(()=>[a(j,{modelValue:s.status,"onUpdate:modelValue":e[6]||(e[6]=t=>s.status=t),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(I,{modelValue:f.value,"onUpdate:modelValue":e[11]||(e[11]=t=>f.value=t),title:"快捷备注",width:"420px","destroy-on-close":""},{footer:l(()=>[a(r,{onClick:e[10]||(e[10]=t=>f.value=!1)},{default:l(()=>[...e[19]||(e[19]=[i("取消",-1)])]),_:1}),a(r,{type:"primary",loading:U.value,onClick:O},{default:l(()=>[...e[20]||(e[20]=[i("保存",-1)])]),_:1},8,["loading"])]),default:l(()=>[b("div",ze,"账号:"+R(S.value),1),a(g,{modelValue:v.value,"onUpdate:modelValue":e[9]||(e[9]=t=>v.value=t),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"可填写用户相关信息,仅管理员可见"},null,8,["modelValue"])]),_:1},8,["modelValue"])])}}});export{$e as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-BAzYHrY0.js
diff --git a/server/public/admin/assets/index-ci6cz5MZ.js b/server/public/admin/assets/index-ci6cz5MZ.js
new file mode 100644
index 000000000..efe5f31c6
--- /dev/null
+++ b/server/public/admin/assets/index-ci6cz5MZ.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-CARk4iLN.js
+import{o as fe,q as i,r as m,s as o,O as h,aa as Ye,v as n,P as p,ah as qe,t as Re,M as E,a8 as pe,E as De,ba as Ke,R as Z,n as Ee,ac as Q,ad as ce,u as l,bt as Ze,C as L,D as a,p as Te,bS as Qe,bR as Je,bT as Oe,ap as Xe,bi as He,a2 as et,bU as tt,Z as lt,_ as nt,L as r,K as at,aw as K,bm as st,F as D,G as W,b7 as ot,b8 as it,a1 as dt,ae as ze,bd as ut,bj as rt,bk as ct,bq as mt,T as ue,$ as ft,bn as pt}from"./.pnpm-BadRMC3e.js";import{_ as vt}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{_ as yt}from"./index-DcSBJkxh.js";import{_ as Ie,c as Le,i as me,o as _t}from"./index-C360OAjQ.js";import{_ as gt}from"./index-2cRJ7Pdu.js";import{U as Ct}from"./index-BHk2qnVA.js";import{_ as ht}from"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import{f as kt,b as bt,c as wt,d as $e,e as xt,g as St,h as At,i as Vt}from"./file-DAA7Hwft.js";import{u as Et}from"./usePaging-DMqUvFG-.js";const zt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAgCAYAAABgrToAAAACJElEQVRYR+2YMWsUURSFz3m7s+nskjUIQSutbMRi7WzUVjSadMHCbVLkByjmLygaCVYWRqMEUhkFS9Gg0cJfYCPZjYUQFbPs+I7c2R1Q2ZjZfRNYYS4MAzPv3vnmvDvL3kMA2Hl5/CjLI9ckf4ZwY3Zt15C+gfwIao3So0rt3XsJtPUk9M/cAW6y9ap2DIyfAjgCwANwGeoYiEFtk/5e5CvXeer1D2neATcGgiTZM4+t9RNLEKcBtAFEGeBsiRWzl7EoSXo+8rV9gWc/fDc1B1VSEoEnDpj0KTB33tS26DGaEezvZQZpRxmODyoT5+vwBwS3zeTcT4yjTdZNJEiPSykk1bjZX6HeD/WQJ1zUApgq2w+etcsniBuAVlH9vELOx6Yo1VywgkmTB4X1kEGGhyAtg/Ecq3NNqnknDwVTrNBaactEts88OHs5b8Bw/Tof4M+kr4WrwwhoL9n5uRPWhxWwsxPEl+EGNMacP5I8evCPGgVgqKSFgoWCoQqE5hc9WCgYqkBoftGDeSiYz1/+UJLe+foftvh2A2B1fwQIrapkaFoDcK4PVyH0qVnyU4fjGdW4NQ2WlgDE5hLkMoJmQdh9zW9Dk59K5lhtLjyE01TX/jDILP5MGEbvbFPOJroIXvc5PjvTBbx7GM4vAjjd9WdSc2g/IPaqaTv5Aq58haP1TSb2Au20GGErvgTxIqiTAA7tVSnn+2Z9vAXdCsa4bD6Nsf0C/gYA5PMzcW0AAAAASUVORK5CYII=",$t=fe({props:{uri:{type:String},fileSize:{type:String,default:"100px"},width:{type:String,default:""},height:{type:String,default:""},type:{type:String,default:"image"}},emits:["close"]}),Rt=["src"],Dt={key:3,class:"absolute left-1/2 top-1/2 translate-x-[-50%] translate-y-[-50%] rounded-full w-5 h-5 flex justify-center items-center bg-[rgba(0,0,0,0.3)]"};function Tt(s,$,x,_,k,z){const S=Ye,u=Le;return i(),m("div",null,[o("div",{class:"file-item relative",style:Re({height:s.height||s.fileSize,width:s.width||s.fileSize})},[s.type=="image"?(i(),h(S,{key:0,class:"image",fit:"contain",src:s.uri},null,8,["src"])):s.type=="video"?(i(),m("video",{key:1,class:"video",src:s.uri},null,8,Rt)):(i(),h(S,{key:2,class:"image",src:"https://img95.699pic.com/element/40103/3946.png_860.png"})),s.type=="video"?(i(),m("div",Dt,[n(u,{name:"el-icon-CaretRight",size:18,color:"#fff"})])):p("",!0),qe(s.$slots,"default",{},void 0,!0)],4)])}const re=Ie($t,[["render",Tt],["__scopeId","data-v-60d59d9e"]]);function It(s){const $=pe(),x=E([]),_=E(""),k=async()=>{const f=await kt({page_type:0,type:s}),C=[{name:"全部",id:""},{name:"未分组",id:0}];x.value=f.lists,x.value.unshift(...C),setTimeout(()=>{var b;(b=$.value)==null||b.setCurrentKey(_.value)},0)};return{treeRef:$,cateId:_,cateLists:x,handleAddCate:async f=>{await $e({type:s,name:f,pid:0}),k()},handleAddChildCate:async(f,C)=>{await $e({type:s,name:f,pid:C}),k()},handleEditCate:async(f,C)=>{await wt({id:C,name:f}),k()},handleDeleteCate:async(f,C)=>{C?await me.confirm("删除文件夹将会永久删除文件夹及其所有内容。您确定要继续吗?"):await me.confirm("确定要删除?"),await bt({id:f}),_.value="",k()},getCateLists:k,handleCatSelect:f=>{_.value=f.id}}}function Lt(s,$,x,_){const k=pe(),z=E("normal"),S=E(0),u=E([]),R=E(!1),g=E(!1),f=Ke({name:"",type:$,cid:s,source:""}),{pager:C,getLists:b,resetPage:M}=Et({fetchFun:Vt,params:f,firstLoading:!0,size:_}),U=()=>{b()},J=()=>{M()},O=c=>!!u.value.find(d=>d.id==c),X=async c=>{await me.confirm("确认删除后,本地或云存储文件也将同步删除,如文件已被使用,请谨慎操作!");const d=c||u.value.map(V=>V.id);await At({ids:d}),U(),F()},H=async()=>{const c=u.value.map(d=>d.id);await St({ids:c,cid:S.value}),S.value=0,U(),F()},ee=c=>{const d=u.value.findIndex(V=>V.id==c.id);if(d!=-1){u.value.splice(d,1);return}if(u.value.length==x.value){if(x.value==1){u.value=[],u.value.push(c);return}De.warning("已达到选择上限");return}u.value.push(c)},F=()=>{u.value=[]};return{listShowType:z,tableRef:k,moveId:S,pager:C,fileParams:f,select:u,isCheckAll:R,isIndeterminate:g,getFileList:U,refresh:J,batchFileDelete:X,batchFileMove:H,selectFile:ee,isSelect:O,clearSelect:F,cancelSelete:c=>{u.value=u.value.filter(d=>d.id!=c)},selectAll:c=>{var d;if(g.value=!1,(d=k.value)==null||d.toggleAllSelection(),c){u.value=[...C.lists];return}F()},handleFileRename:async(c,d)=>{await xt({id:d,name:c}),U()}}}const Ut={key:0},Ft={key:1},jt={class:"aspect-video overflow-hidden"},Mt={class:"size-full",controls:""},Pt=["src"],Bt=fe({__name:"preview",props:{modelValue:{type:Boolean,default:!1},url:{type:String,default:""},type:{type:String,default:"image"}},emits:["update:modelValue"],setup(s,{emit:$}){const x=s,_=$,k=pe(),z=Te({get(){return x.modelValue},set(R){_("update:modelValue",R)}}),S=()=>{_("update:modelValue",!1)},u=E([]);return Z(()=>x.modelValue,R=>{R?Ee(()=>{var g;u.value=[x.url],(g=k.value)==null||g.play()}):Ee(()=>{var g;u.value=[],(g=k.value)==null||g.pause()})}),(R,g)=>{const f=Qe,C=Ze;return Q((i(),m("div",null,[s.type=="image"?(i(),m("div",Ut,[l(u).length?(i(),h(f,{key:0,"url-list":l(u),"hide-on-click-modal":"",onClose:S},null,8,["url-list"])):p("",!0)])):p("",!0),s.type=="video"?(i(),m("div",Ft,[n(C,{modelValue:l(z),"onUpdate:modelValue":g[0]||(g[0]=b=>L(z)?z.value=b:null),width:"740px",title:"视频预览","before-close":S},{default:a(()=>[o("div",jt,[o("video",Mt,[o("source",{src:s.url,type:"video/mp4"},null,8,Pt)])])]),_:1},8,["modelValue"])])):p("",!0)],512)),[[ce,s.modelValue]])}}}),Nt={class:"material"},Gt={class:"material__left"},Wt={class:"flex-1 min-h-0"},Yt={class:"material-left__content pt-4 p-b-4"},qt={class:"flex flex-1 items-center min-w-0 pr-4"},Kt={class:"flex-1 truncate mr-2"},Zt=["onClick"],Qt={class:"flex justify-center p-2 border-t border-br"},Jt={class:"material__center flex flex-col"},Ot={class:"operate-btn flex"},Xt={class:"flex-1 flex"},Ht={class:"flex items-center ml-2"},el={key:0,class:"mt-3"},tl={class:"material-center__content flex flex-col flex-1 mb-1 min-h-0"},ll={class:"file-list flex flex-wrap mt-4"},nl={key:0,class:"item-selected"},al={class:"operation-btns flex items-center"},sl={class:"inline-block"},ol={class:"inline-block"},il={class:"inline-block"},dl={key:1,class:"flex flex-1 justify-center items-center"},ul={class:"material-center__footer flex justify-between items-center mt-2"},rl={class:"flex"},cl={class:"mr-3"},ml={key:0,class:"material__right"},fl={class:"flex justify-between p-2 flex-wrap"},pl={class:"sm flex items-center"},vl={key:0},yl={class:"flex-1 min-h-0"},_l={class:"select-lists flex flex-col p-t-3"},gl={class:"select-item"},Cl=fe({__name:"index",props:{fileSize:{type:String,default:"100px"},limit:{type:Number,default:1},type:{type:String,default:"image"},mode:{type:String,default:"picker"},pageSize:{type:Number,default:15}},emits:["change"],setup(s,{expose:$,emit:x}){const _=s,k=x,{limit:z}=Je(_),S=Te(()=>{switch(_.type){case"image":return 10;case"video":return 20;case"file":return 30;default:return 0}}),u=[{value:"0",label:"后台上传"},{value:"1",label:"前端上传"}],R=Oe("visible",E(!1)),g=E(""),f=E(!1),{treeRef:C,cateId:b,cateLists:M,handleAddCate:U,handleAddChildCate:J,handleEditCate:O,handleDeleteCate:X,getCateLists:H,handleCatSelect:ee}=It(S.value),{tableRef:F,listShowType:T,moveId:I,pager:A,fileParams:c,select:d,isCheckAll:V,isIndeterminate:P,getFileList:ve,refresh:j,batchFileDelete:Y,batchFileMove:ye,selectFile:te,isSelect:_e,clearSelect:ge,cancelSelete:Ue,selectAll:Ce,handleFileRename:he}=Lt(b,S,z,_.pageSize),ke=async()=>{var w;await H(),(w=C.value)==null||w.setCurrentKey(b.value),ve()},le=w=>{g.value=w,f.value=!0};Z(()=>R.value,async w=>{w&&ke()},{immediate:!0}),Z(b,()=>{c.name="",j()}),Z(d,w=>{if(k("change",w),w.length==A.lists.length&&w.length!==0){P.value=!1,V.value=!0;return}w.length>0?P.value=!0:(V.value=!1,P.value=!1)},{deep:!0}),Xe(()=>{_.mode=="page"&&ke()}),$({clearSelect:ge});const be=E(),Fe=w=>{const e=w,B=be.value;B.value=e,B.select(),document.execCommand("copy"),De({message:"地址复制成功",type:"success"})};return(w,e)=>{const B=_t,ne=nt,N=ht,je=lt,Me=ft,Pe=tt,ae=et,y=at,se=Ct,oe=pt,ie=st,we=gt,q=Le,Be=ot,xe=dt,de=ut,Se=yt,Ae=mt,G=ct,Ne=rt,Ge=vt,We=He;return Q((i(),m("div",Nt,[o("div",Gt,[o("div",Wt,[n(ae,null,{default:a(()=>[o("div",Yt,[n(Pe,{ref_key:"treeRef",ref:C,"node-key":"id",data:l(M),"empty-text":"","highlight-current":!0,"expand-on-click-node":!1,"current-node-key":l(b),onNodeClick:l(ee)},{default:a(({data:t})=>[o("div",qt,[e[16]||(e[16]=o("img",{class:"w-[20px] h-[16px] mr-3",src:zt},null,-1)),o("span",Kt,[n(B,{content:t.name},null,8,["content"])]),t.id>0?(i(),h(Me,{key:0,"hide-on-click":!1},{dropdown:a(()=>[n(je,null,{default:a(()=>[n(N,{onConfirm:v=>l(O)(v,t.id),size:"default",value:t.name,width:"400px",limit:20,"show-limit":"",teleported:""},{default:a(()=>[o("div",null,[n(ne,null,{default:a(()=>[...e[12]||(e[12]=[r(" 命名分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm","value"]),n(N,{onConfirm:v=>l(J)(v,t.id),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:a(()=>[o("div",null,[n(ne,null,{default:a(()=>[...e[13]||(e[13]=[r(" 添加分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm"]),o("div",{onClick:v=>{var Ve;return l(X)(t.id,(Ve=t==null?void 0:t.children)==null?void 0:Ve.length)}},[n(ne,null,{default:a(()=>[...e[14]||(e[14]=[r("删除分组",-1)])]),_:1})],8,Zt)]),_:2},1024)]),default:a(()=>[e[15]||(e[15]=o("span",{class:"muted m-r-10"},"···",-1))]),_:2},1024)):p("",!0)])]),_:1},8,["data","current-node-key","onNodeClick"])])]),_:1})]),o("div",Qt,[n(N,{onConfirm:l(U),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:a(()=>[n(y,null,{default:a(()=>[...e[17]||(e[17]=[r(" 添加分组 ",-1)])]),_:1})]),_:1},8,["onConfirm"])])]),o("div",Jt,[o("div",Ot,[o("div",Xt,[s.type=="image"?(i(),h(se,{key:0,class:"mr-3",data:{cid:l(b)},type:s.type,"show-progress":!0,onChange:l(j)},{default:a(()=>[n(y,{type:"primary"},{default:a(()=>[...e[18]||(e[18]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onChange"])):p("",!0),s.type=="video"?(i(),h(se,{key:1,class:"mr-3",data:{cid:l(b)},type:s.type,"show-progress":!0,onAllSuccess:l(j)},{default:a(()=>[n(y,{type:"primary"},{default:a(()=>[...e[19]||(e[19]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),s.type=="file"?(i(),h(se,{key:2,class:"mr-3",data:{cid:l(b)},type:s.type,"show-progress":!0,onAllSuccess:l(j)},{default:a(()=>[n(y,{type:"primary"},{default:a(()=>[...e[20]||(e[20]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),s.mode=="page"?(i(),h(y,{key:3,disabled:!l(d).length,onClick:e[0]||(e[0]=K(t=>l(Y)(),["stop"]))},{default:a(()=>[...e[21]||(e[21]=[r(" 删除 ",-1)])]),_:1},8,["disabled"])):p("",!0),s.mode=="page"?(i(),h(we,{key:4,class:"ml-3",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:a(()=>[n(y,{disabled:!l(d).length},{default:a(()=>[...e[22]||(e[22]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:a(()=>[o("div",null,[e[23]||(e[23]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(I),"onUpdate:modelValue":e[1]||(e[1]=t=>L(I)?I.value=t:null),placeholder:"请选择"},{default:a(()=>[(i(!0),m(D,null,W(l(M),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])):p("",!0)]),n(ie,{modelValue:l(c).source,"onUpdate:modelValue":e[2]||(e[2]=t=>l(c).source=t),placeholder:"请选择文件来源",clearable:"",style:{"margin-right":"20px"},class:"max-w-52 ml-3"},{default:a(()=>[(i(),m(D,null,W(u,t=>n(oe,{key:t.value,label:t.label,value:t.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),n(Be,{class:"w-60",placeholder:"请输入名称",modelValue:l(c).name,"onUpdate:modelValue":e[3]||(e[3]=t=>l(c).name=t),onKeyup:it(l(j),["enter"])},{append:a(()=>[n(y,{onClick:l(j)},{icon:a(()=>[n(q,{name:"el-icon-Search"})]),_:1},8,["onClick"])]),_:1},8,["modelValue","onKeyup"]),o("div",Ht,[n(xe,{content:"列表视图",placement:"top"},{default:a(()=>[o("div",{class:ze(["list-icon",{select:l(T)=="table"}]),onClick:e[4]||(e[4]=t=>T.value="table")},[n(q,{name:"local-icon-list-2",size:18})],2)]),_:1}),n(xe,{content:"平铺视图",placement:"top"},{default:a(()=>[o("div",{class:ze(["list-icon",{select:l(T)=="normal"}]),onClick:e[5]||(e[5]=t=>T.value="normal")},[n(q,{name:"el-icon-Menu",size:18})],2)]),_:1})])]),s.mode=="page"?(i(),m("div",el,[n(de,{disabled:!l(A).lists.length,modelValue:l(V),"onUpdate:modelValue":e[6]||(e[6]=t=>L(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(P)},{default:a(()=>[...e[24]||(e[24]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])])):p("",!0),o("div",tl,[l(A).lists.length?Q((i(),h(ae,{key:0},{default:a(()=>[o("ul",ll,[(i(!0),m(D,null,W(l(A).lists,t=>(i(),m("li",{class:"file-item-wrap",key:t.id,style:Re({width:s.fileSize})},[n(Se,{onClose:v=>l(Y)([t.id])},{default:a(()=>[n(re,{uri:t.url,"file-size":s.fileSize,type:s.type,onClick:v=>l(te)(t)},{default:a(()=>[l(_e)(t.id)?(i(),m("div",nl,[n(q,{size:24,name:"el-icon-Check",color:"#fff"})])):p("",!0)]),_:2},1032,["uri","file-size","type","onClick"])]),_:2},1032,["onClose"]),n(B,{class:"mt-1",content:t.name},null,8,["content"]),o("div",al,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:a(()=>[n(y,{type:"primary",link:""},{default:a(()=>[...e[25]||(e[25]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"]),t.type===10||t.type===20?(i(),h(y,{key:0,type:"primary",link:"",onClick:v=>le(t.url)},{default:a(()=>[...e[26]||(e[26]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])):p("",!0),t.type===10||t.type===20?(i(),h(y,{key:1,type:"primary",link:"",onClick:v=>Fe(t.url),style:{"margin-left":"1px"}},{default:a(()=>[...e[27]||(e[27]=[r("地址",-1)])]),_:1},8,["onClick"])):(i(),h(Ae,{key:2,type:"primary",underline:!1,style:{"margin-left":"25px"},href:t.url},{default:a(()=>[...e[28]||(e[28]=[r("下载",-1)])]),_:1},8,["href"]))])],4))),128))])]),_:1},512)),[[ce,l(T)=="normal"]]):p("",!0),Q(n(Ne,{ref_key:"tableRef",ref:F,class:"mt-4",data:l(A).lists,width:"100%",height:"100%",size:"large",onRowClick:l(te)},{default:a(()=>[n(G,{width:"55"},{default:a(({row:t})=>[n(de,{modelValue:l(_e)(t.id),onChange:v=>l(te)(t)},null,8,["modelValue","onChange"])]),_:1}),n(G,{label:"图片",width:"100"},{default:a(({row:t})=>[n(re,{uri:t.url,"file-size":"50px",type:s.type},null,8,["uri","type"])]),_:1}),n(G,{label:"名称","min-width":"100","show-overflow-tooltip":""},{default:a(({row:t})=>[n(Ae,{onClick:K(v=>le(t.url),["stop"]),underline:!1},{default:a(()=>[r(ue(t.name),1)]),_:2},1032,["onClick"])]),_:1}),n(G,{prop:"create_time",label:"上传时间","min-width":"100"}),n(G,{label:"操作",width:"150",fixed:"right"},{default:a(({row:t})=>[o("div",sl,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:a(()=>[n(y,{type:"primary",link:""},{default:a(()=>[...e[29]||(e[29]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"])]),o("div",ol,[n(y,{type:"primary",link:"",onClick:K(v=>le(t.url),["stop"])},{default:a(()=>[...e[30]||(e[30]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])]),o("div",il,[n(y,{type:"primary",link:"",onClick:K(v=>l(Y)([t.id]),["stop"])},{default:a(()=>[...e[31]||(e[31]=[r(" 删除 ",-1)])]),_:1},8,["onClick"])])]),_:1})]),_:1},8,["data","onRowClick"]),[[ce,l(T)=="table"]]),!l(A).loading&&!l(A).lists.length?(i(),m("div",dl," 暂无数据~ ")):p("",!0)]),o("div",ul,[o("div",rl,[s.mode=="page"?(i(),m(D,{key:0},[o("span",cl,[n(de,{disabled:!l(A).lists.length,modelValue:l(V),"onUpdate:modelValue":e[7]||(e[7]=t=>L(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(P)},{default:a(()=>[...e[32]||(e[32]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])]),n(y,{disabled:!l(d).length,onClick:e[8]||(e[8]=t=>l(Y)())},{default:a(()=>[...e[33]||(e[33]=[r(" 删除 ",-1)])]),_:1},8,["disabled"]),n(we,{class:"ml-3 inline",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:a(()=>[n(y,{disabled:!l(d).length},{default:a(()=>[...e[34]||(e[34]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:a(()=>[o("div",null,[e[35]||(e[35]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(I),"onUpdate:modelValue":e[9]||(e[9]=t=>L(I)?I.value=t:null),placeholder:"请选择"},{default:a(()=>[(i(!0),m(D,null,W(l(M),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])],64)):p("",!0)]),n(Ge,{modelValue:l(A),"onUpdate:modelValue":e[10]||(e[10]=t=>L(A)?A.value=t:null),onChange:l(ve),layout:"total, prev, pager, next, jumper"},null,8,["modelValue","onChange"])])]),s.mode=="picker"?(i(),m("div",ml,[o("div",fl,[o("div",pl,[r(" 已选择 "+ue(l(d).length)+" ",1),l(z)?(i(),m("span",vl,"/"+ue(l(z)),1)):p("",!0)]),n(y,{type:"primary",link:"",onClick:l(ge)},{default:a(()=>[...e[36]||(e[36]=[r("清空",-1)])]),_:1},8,["onClick"])]),o("div",yl,[n(ae,{class:"ls-scrollbar"},{default:a(()=>[o("ul",_l,[(i(!0),m(D,null,W(l(d),t=>(i(),m("li",{class:"mb-4",key:t.id},[o("div",gl,[n(Se,{onClose:v=>l(Ue)(t.id)},{default:a(()=>[n(re,{uri:t.url,"file-size":"100px",type:s.type},null,8,["uri","type"])]),_:2},1032,["onClose"])])]))),128))])]),_:1})])])):p("",!0),n(Bt,{modelValue:l(f),"onUpdate:modelValue":e[11]||(e[11]=t=>L(f)?f.value=t:null),url:l(g),type:s.type},null,8,["modelValue","url","type"]),o("input",{ref_key:"textCopys",ref:be,id:"textCopys",value:"",style:{opacity:"0",position:"absolute"}},null,512)])),[[We,l(A).loading]])}}}),zl=Ie(Cl,[["__scopeId","data-v-1e1d2cd0"]]);export{re as F,Bt as _,zl as a};
+========
+import{o as fe,q as i,r as m,s as o,O as h,aa as Ye,v as n,P as p,ah as qe,t as Re,M as E,a8 as pe,E as De,ba as Ke,R as Z,n as Ee,ac as Q,ad as ce,u as l,bt as Ze,C as L,D as a,p as Te,bS as Qe,bR as Je,bT as Oe,ap as Xe,bi as He,a2 as et,bU as tt,Z as lt,_ as nt,L as r,K as at,aw as K,bm as st,F as D,G as W,b7 as ot,b8 as it,a1 as dt,ae as ze,bd as ut,bj as rt,bk as ct,bq as mt,T as ue,$ as ft,bn as pt}from"./.pnpm-BadRMC3e.js";import{_ as vt}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{_ as yt}from"./index-ZgwwU4Et.js";import{_ as Ie,c as Le,i as me,o as _t}from"./index-C53kWH2_.js";import{_ as gt}from"./index-ByXR3YHf.js";import{U as Ct}from"./index-9XBsG-Cy.js";import{_ as ht}from"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import{f as kt,b as bt,c as wt,d as $e,e as xt,g as St,h as At,i as Vt}from"./file-Ci3F9EoX.js";import{u as Et}from"./usePaging-DMqUvFG-.js";const zt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAgCAYAAABgrToAAAACJElEQVRYR+2YMWsUURSFz3m7s+nskjUIQSutbMRi7WzUVjSadMHCbVLkByjmLygaCVYWRqMEUhkFS9Gg0cJfYCPZjYUQFbPs+I7c2R1Q2ZjZfRNYYS4MAzPv3vnmvDvL3kMA2Hl5/CjLI9ckf4ZwY3Zt15C+gfwIao3So0rt3XsJtPUk9M/cAW6y9ap2DIyfAjgCwANwGeoYiEFtk/5e5CvXeer1D2neATcGgiTZM4+t9RNLEKcBtAFEGeBsiRWzl7EoSXo+8rV9gWc/fDc1B1VSEoEnDpj0KTB33tS26DGaEezvZQZpRxmODyoT5+vwBwS3zeTcT4yjTdZNJEiPSykk1bjZX6HeD/WQJ1zUApgq2w+etcsniBuAVlH9vELOx6Yo1VywgkmTB4X1kEGGhyAtg/Ecq3NNqnknDwVTrNBaactEts88OHs5b8Bw/Tof4M+kr4WrwwhoL9n5uRPWhxWwsxPEl+EGNMacP5I8evCPGgVgqKSFgoWCoQqE5hc9WCgYqkBoftGDeSiYz1/+UJLe+foftvh2A2B1fwQIrapkaFoDcK4PVyH0qVnyU4fjGdW4NQ2WlgDE5hLkMoJmQdh9zW9Dk59K5lhtLjyE01TX/jDILP5MGEbvbFPOJroIXvc5PjvTBbx7GM4vAjjd9WdSc2g/IPaqaTv5Aq58haP1TSb2Au20GGErvgTxIqiTAA7tVSnn+2Z9vAXdCsa4bD6Nsf0C/gYA5PMzcW0AAAAASUVORK5CYII=",$t=fe({props:{uri:{type:String},fileSize:{type:String,default:"100px"},width:{type:String,default:""},height:{type:String,default:""},type:{type:String,default:"image"}},emits:["close"]}),Rt=["src"],Dt={key:3,class:"absolute left-1/2 top-1/2 translate-x-[-50%] translate-y-[-50%] rounded-full w-5 h-5 flex justify-center items-center bg-[rgba(0,0,0,0.3)]"};function Tt(s,$,x,_,k,z){const S=Ye,u=Le;return i(),m("div",null,[o("div",{class:"file-item relative",style:Re({height:s.height||s.fileSize,width:s.width||s.fileSize})},[s.type=="image"?(i(),h(S,{key:0,class:"image",fit:"contain",src:s.uri},null,8,["src"])):s.type=="video"?(i(),m("video",{key:1,class:"video",src:s.uri},null,8,Rt)):(i(),h(S,{key:2,class:"image",src:"https://img95.699pic.com/element/40103/3946.png_860.png"})),s.type=="video"?(i(),m("div",Dt,[n(u,{name:"el-icon-CaretRight",size:18,color:"#fff"})])):p("",!0),qe(s.$slots,"default",{},void 0,!0)],4)])}const re=Ie($t,[["render",Tt],["__scopeId","data-v-60d59d9e"]]);function It(s){const $=pe(),x=E([]),_=E(""),k=async()=>{const f=await kt({page_type:0,type:s}),C=[{name:"全部",id:""},{name:"未分组",id:0}];x.value=f.lists,x.value.unshift(...C),setTimeout(()=>{var b;(b=$.value)==null||b.setCurrentKey(_.value)},0)};return{treeRef:$,cateId:_,cateLists:x,handleAddCate:async f=>{await $e({type:s,name:f,pid:0}),k()},handleAddChildCate:async(f,C)=>{await $e({type:s,name:f,pid:C}),k()},handleEditCate:async(f,C)=>{await wt({id:C,name:f}),k()},handleDeleteCate:async(f,C)=>{C?await me.confirm("删除文件夹将会永久删除文件夹及其所有内容。您确定要继续吗?"):await me.confirm("确定要删除?"),await bt({id:f}),_.value="",k()},getCateLists:k,handleCatSelect:f=>{_.value=f.id}}}function Lt(s,$,x,_){const k=pe(),z=E("normal"),S=E(0),u=E([]),R=E(!1),g=E(!1),f=Ke({name:"",type:$,cid:s,source:""}),{pager:C,getLists:b,resetPage:M}=Et({fetchFun:Vt,params:f,firstLoading:!0,size:_}),U=()=>{b()},J=()=>{M()},O=c=>!!u.value.find(d=>d.id==c),X=async c=>{await me.confirm("确认删除后,本地或云存储文件也将同步删除,如文件已被使用,请谨慎操作!");const d=c||u.value.map(V=>V.id);await At({ids:d}),U(),F()},H=async()=>{const c=u.value.map(d=>d.id);await St({ids:c,cid:S.value}),S.value=0,U(),F()},ee=c=>{const d=u.value.findIndex(V=>V.id==c.id);if(d!=-1){u.value.splice(d,1);return}if(u.value.length==x.value){if(x.value==1){u.value=[],u.value.push(c);return}De.warning("已达到选择上限");return}u.value.push(c)},F=()=>{u.value=[]};return{listShowType:z,tableRef:k,moveId:S,pager:C,fileParams:f,select:u,isCheckAll:R,isIndeterminate:g,getFileList:U,refresh:J,batchFileDelete:X,batchFileMove:H,selectFile:ee,isSelect:O,clearSelect:F,cancelSelete:c=>{u.value=u.value.filter(d=>d.id!=c)},selectAll:c=>{var d;if(g.value=!1,(d=k.value)==null||d.toggleAllSelection(),c){u.value=[...C.lists];return}F()},handleFileRename:async(c,d)=>{await xt({id:d,name:c}),U()}}}const Ut={key:0},Ft={key:1},jt={class:"aspect-video overflow-hidden"},Mt={class:"size-full",controls:""},Pt=["src"],Bt=fe({__name:"preview",props:{modelValue:{type:Boolean,default:!1},url:{type:String,default:""},type:{type:String,default:"image"}},emits:["update:modelValue"],setup(s,{emit:$}){const x=s,_=$,k=pe(),z=Te({get(){return x.modelValue},set(R){_("update:modelValue",R)}}),S=()=>{_("update:modelValue",!1)},u=E([]);return Z(()=>x.modelValue,R=>{R?Ee(()=>{var g;u.value=[x.url],(g=k.value)==null||g.play()}):Ee(()=>{var g;u.value=[],(g=k.value)==null||g.pause()})}),(R,g)=>{const f=Qe,C=Ze;return Q((i(),m("div",null,[s.type=="image"?(i(),m("div",Ut,[l(u).length?(i(),h(f,{key:0,"url-list":l(u),"hide-on-click-modal":"",onClose:S},null,8,["url-list"])):p("",!0)])):p("",!0),s.type=="video"?(i(),m("div",Ft,[n(C,{modelValue:l(z),"onUpdate:modelValue":g[0]||(g[0]=b=>L(z)?z.value=b:null),width:"740px",title:"视频预览","before-close":S},{default:a(()=>[o("div",jt,[o("video",Mt,[o("source",{src:s.url,type:"video/mp4"},null,8,Pt)])])]),_:1},8,["modelValue"])])):p("",!0)],512)),[[ce,s.modelValue]])}}}),Nt={class:"material"},Gt={class:"material__left"},Wt={class:"flex-1 min-h-0"},Yt={class:"material-left__content pt-4 p-b-4"},qt={class:"flex flex-1 items-center min-w-0 pr-4"},Kt={class:"flex-1 truncate mr-2"},Zt=["onClick"],Qt={class:"flex justify-center p-2 border-t border-br"},Jt={class:"material__center flex flex-col"},Ot={class:"operate-btn flex"},Xt={class:"flex-1 flex"},Ht={class:"flex items-center ml-2"},el={key:0,class:"mt-3"},tl={class:"material-center__content flex flex-col flex-1 mb-1 min-h-0"},ll={class:"file-list flex flex-wrap mt-4"},nl={key:0,class:"item-selected"},al={class:"operation-btns flex items-center"},sl={class:"inline-block"},ol={class:"inline-block"},il={class:"inline-block"},dl={key:1,class:"flex flex-1 justify-center items-center"},ul={class:"material-center__footer flex justify-between items-center mt-2"},rl={class:"flex"},cl={class:"mr-3"},ml={key:0,class:"material__right"},fl={class:"flex justify-between p-2 flex-wrap"},pl={class:"sm flex items-center"},vl={key:0},yl={class:"flex-1 min-h-0"},_l={class:"select-lists flex flex-col p-t-3"},gl={class:"select-item"},Cl=fe({__name:"index",props:{fileSize:{type:String,default:"100px"},limit:{type:Number,default:1},type:{type:String,default:"image"},mode:{type:String,default:"picker"},pageSize:{type:Number,default:15}},emits:["change"],setup(s,{expose:$,emit:x}){const _=s,k=x,{limit:z}=Je(_),S=Te(()=>{switch(_.type){case"image":return 10;case"video":return 20;case"file":return 30;default:return 0}}),u=[{value:"0",label:"后台上传"},{value:"1",label:"前端上传"}],R=Oe("visible",E(!1)),g=E(""),f=E(!1),{treeRef:C,cateId:b,cateLists:M,handleAddCate:U,handleAddChildCate:J,handleEditCate:O,handleDeleteCate:X,getCateLists:H,handleCatSelect:ee}=It(S.value),{tableRef:F,listShowType:T,moveId:I,pager:A,fileParams:c,select:d,isCheckAll:V,isIndeterminate:P,getFileList:ve,refresh:j,batchFileDelete:Y,batchFileMove:ye,selectFile:te,isSelect:_e,clearSelect:ge,cancelSelete:Ue,selectAll:Ce,handleFileRename:he}=Lt(b,S,z,_.pageSize),ke=async()=>{var w;await H(),(w=C.value)==null||w.setCurrentKey(b.value),ve()},le=w=>{g.value=w,f.value=!0};Z(()=>R.value,async w=>{w&&ke()},{immediate:!0}),Z(b,()=>{c.name="",j()}),Z(d,w=>{if(k("change",w),w.length==A.lists.length&&w.length!==0){P.value=!1,V.value=!0;return}w.length>0?P.value=!0:(V.value=!1,P.value=!1)},{deep:!0}),Xe(()=>{_.mode=="page"&&ke()}),$({clearSelect:ge});const be=E(),Fe=w=>{const e=w,B=be.value;B.value=e,B.select(),document.execCommand("copy"),De({message:"地址复制成功",type:"success"})};return(w,e)=>{const B=_t,ne=nt,N=ht,je=lt,Me=ft,Pe=tt,ae=et,y=at,se=Ct,oe=pt,ie=st,we=gt,q=Le,Be=ot,xe=dt,de=ut,Se=yt,Ae=mt,G=ct,Ne=rt,Ge=vt,We=He;return Q((i(),m("div",Nt,[o("div",Gt,[o("div",Wt,[n(ae,null,{default:a(()=>[o("div",Yt,[n(Pe,{ref_key:"treeRef",ref:C,"node-key":"id",data:l(M),"empty-text":"","highlight-current":!0,"expand-on-click-node":!1,"current-node-key":l(b),onNodeClick:l(ee)},{default:a(({data:t})=>[o("div",qt,[e[16]||(e[16]=o("img",{class:"w-[20px] h-[16px] mr-3",src:zt},null,-1)),o("span",Kt,[n(B,{content:t.name},null,8,["content"])]),t.id>0?(i(),h(Me,{key:0,"hide-on-click":!1},{dropdown:a(()=>[n(je,null,{default:a(()=>[n(N,{onConfirm:v=>l(O)(v,t.id),size:"default",value:t.name,width:"400px",limit:20,"show-limit":"",teleported:""},{default:a(()=>[o("div",null,[n(ne,null,{default:a(()=>[...e[12]||(e[12]=[r(" 命名分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm","value"]),n(N,{onConfirm:v=>l(J)(v,t.id),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:a(()=>[o("div",null,[n(ne,null,{default:a(()=>[...e[13]||(e[13]=[r(" 添加分组 ",-1)])]),_:1})])]),_:1},8,["onConfirm"]),o("div",{onClick:v=>{var Ve;return l(X)(t.id,(Ve=t==null?void 0:t.children)==null?void 0:Ve.length)}},[n(ne,null,{default:a(()=>[...e[14]||(e[14]=[r("删除分组",-1)])]),_:1})],8,Zt)]),_:2},1024)]),default:a(()=>[e[15]||(e[15]=o("span",{class:"muted m-r-10"},"···",-1))]),_:2},1024)):p("",!0)])]),_:1},8,["data","current-node-key","onNodeClick"])])]),_:1})]),o("div",Qt,[n(N,{onConfirm:l(U),size:"default",width:"400px",limit:20,"show-limit":"",teleported:""},{default:a(()=>[n(y,null,{default:a(()=>[...e[17]||(e[17]=[r(" 添加分组 ",-1)])]),_:1})]),_:1},8,["onConfirm"])])]),o("div",Jt,[o("div",Ot,[o("div",Xt,[s.type=="image"?(i(),h(se,{key:0,class:"mr-3",data:{cid:l(b)},type:s.type,"show-progress":!0,onChange:l(j)},{default:a(()=>[n(y,{type:"primary"},{default:a(()=>[...e[18]||(e[18]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onChange"])):p("",!0),s.type=="video"?(i(),h(se,{key:1,class:"mr-3",data:{cid:l(b)},type:s.type,"show-progress":!0,onAllSuccess:l(j)},{default:a(()=>[n(y,{type:"primary"},{default:a(()=>[...e[19]||(e[19]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),s.type=="file"?(i(),h(se,{key:2,class:"mr-3",data:{cid:l(b)},type:s.type,"show-progress":!0,onAllSuccess:l(j)},{default:a(()=>[n(y,{type:"primary"},{default:a(()=>[...e[20]||(e[20]=[r("本地上传",-1)])]),_:1})]),_:1},8,["data","type","onAllSuccess"])):p("",!0),s.mode=="page"?(i(),h(y,{key:3,disabled:!l(d).length,onClick:e[0]||(e[0]=K(t=>l(Y)(),["stop"]))},{default:a(()=>[...e[21]||(e[21]=[r(" 删除 ",-1)])]),_:1},8,["disabled"])):p("",!0),s.mode=="page"?(i(),h(we,{key:4,class:"ml-3",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:a(()=>[n(y,{disabled:!l(d).length},{default:a(()=>[...e[22]||(e[22]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:a(()=>[o("div",null,[e[23]||(e[23]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(I),"onUpdate:modelValue":e[1]||(e[1]=t=>L(I)?I.value=t:null),placeholder:"请选择"},{default:a(()=>[(i(!0),m(D,null,W(l(M),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])):p("",!0)]),n(ie,{modelValue:l(c).source,"onUpdate:modelValue":e[2]||(e[2]=t=>l(c).source=t),placeholder:"请选择文件来源",clearable:"",style:{"margin-right":"20px"},class:"max-w-52 ml-3"},{default:a(()=>[(i(),m(D,null,W(u,t=>n(oe,{key:t.value,label:t.label,value:t.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),n(Be,{class:"w-60",placeholder:"请输入名称",modelValue:l(c).name,"onUpdate:modelValue":e[3]||(e[3]=t=>l(c).name=t),onKeyup:it(l(j),["enter"])},{append:a(()=>[n(y,{onClick:l(j)},{icon:a(()=>[n(q,{name:"el-icon-Search"})]),_:1},8,["onClick"])]),_:1},8,["modelValue","onKeyup"]),o("div",Ht,[n(xe,{content:"列表视图",placement:"top"},{default:a(()=>[o("div",{class:ze(["list-icon",{select:l(T)=="table"}]),onClick:e[4]||(e[4]=t=>T.value="table")},[n(q,{name:"local-icon-list-2",size:18})],2)]),_:1}),n(xe,{content:"平铺视图",placement:"top"},{default:a(()=>[o("div",{class:ze(["list-icon",{select:l(T)=="normal"}]),onClick:e[5]||(e[5]=t=>T.value="normal")},[n(q,{name:"el-icon-Menu",size:18})],2)]),_:1})])]),s.mode=="page"?(i(),m("div",el,[n(de,{disabled:!l(A).lists.length,modelValue:l(V),"onUpdate:modelValue":e[6]||(e[6]=t=>L(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(P)},{default:a(()=>[...e[24]||(e[24]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])])):p("",!0),o("div",tl,[l(A).lists.length?Q((i(),h(ae,{key:0},{default:a(()=>[o("ul",ll,[(i(!0),m(D,null,W(l(A).lists,t=>(i(),m("li",{class:"file-item-wrap",key:t.id,style:Re({width:s.fileSize})},[n(Se,{onClose:v=>l(Y)([t.id])},{default:a(()=>[n(re,{uri:t.url,"file-size":s.fileSize,type:s.type,onClick:v=>l(te)(t)},{default:a(()=>[l(_e)(t.id)?(i(),m("div",nl,[n(q,{size:24,name:"el-icon-Check",color:"#fff"})])):p("",!0)]),_:2},1032,["uri","file-size","type","onClick"])]),_:2},1032,["onClose"]),n(B,{class:"mt-1",content:t.name},null,8,["content"]),o("div",al,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:a(()=>[n(y,{type:"primary",link:""},{default:a(()=>[...e[25]||(e[25]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"]),t.type===10||t.type===20?(i(),h(y,{key:0,type:"primary",link:"",onClick:v=>le(t.url)},{default:a(()=>[...e[26]||(e[26]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])):p("",!0),t.type===10||t.type===20?(i(),h(y,{key:1,type:"primary",link:"",onClick:v=>Fe(t.url),style:{"margin-left":"1px"}},{default:a(()=>[...e[27]||(e[27]=[r("地址",-1)])]),_:1},8,["onClick"])):(i(),h(Ae,{key:2,type:"primary",underline:!1,style:{"margin-left":"25px"},href:t.url},{default:a(()=>[...e[28]||(e[28]=[r("下载",-1)])]),_:1},8,["href"]))])],4))),128))])]),_:1},512)),[[ce,l(T)=="normal"]]):p("",!0),Q(n(Ne,{ref_key:"tableRef",ref:F,class:"mt-4",data:l(A).lists,width:"100%",height:"100%",size:"large",onRowClick:l(te)},{default:a(()=>[n(G,{width:"55"},{default:a(({row:t})=>[n(de,{modelValue:l(_e)(t.id),onChange:v=>l(te)(t)},null,8,["modelValue","onChange"])]),_:1}),n(G,{label:"图片",width:"100"},{default:a(({row:t})=>[n(re,{uri:t.url,"file-size":"50px",type:s.type},null,8,["uri","type"])]),_:1}),n(G,{label:"名称","min-width":"100","show-overflow-tooltip":""},{default:a(({row:t})=>[n(Ae,{onClick:K(v=>le(t.url),["stop"]),underline:!1},{default:a(()=>[r(ue(t.name),1)]),_:2},1032,["onClick"])]),_:1}),n(G,{prop:"create_time",label:"上传时间","min-width":"100"}),n(G,{label:"操作",width:"150",fixed:"right"},{default:a(({row:t})=>[o("div",sl,[n(N,{onConfirm:v=>l(he)(v,t.id),size:"default",value:t.name,width:"400px",limit:50,"show-limit":"",teleported:""},{default:a(()=>[n(y,{type:"primary",link:""},{default:a(()=>[...e[29]||(e[29]=[r(" 重命名 ",-1)])]),_:1})]),_:1},8,["onConfirm","value"])]),o("div",ol,[n(y,{type:"primary",link:"",onClick:K(v=>le(t.url),["stop"])},{default:a(()=>[...e[30]||(e[30]=[r(" 查看 ",-1)])]),_:1},8,["onClick"])]),o("div",il,[n(y,{type:"primary",link:"",onClick:K(v=>l(Y)([t.id]),["stop"])},{default:a(()=>[...e[31]||(e[31]=[r(" 删除 ",-1)])]),_:1},8,["onClick"])])]),_:1})]),_:1},8,["data","onRowClick"]),[[ce,l(T)=="table"]]),!l(A).loading&&!l(A).lists.length?(i(),m("div",dl," 暂无数据~ ")):p("",!0)]),o("div",ul,[o("div",rl,[s.mode=="page"?(i(),m(D,{key:0},[o("span",cl,[n(de,{disabled:!l(A).lists.length,modelValue:l(V),"onUpdate:modelValue":e[7]||(e[7]=t=>L(V)?V.value=t:null),onChange:l(Ce),indeterminate:l(P)},{default:a(()=>[...e[32]||(e[32]=[r(" 当页全选 ",-1)])]),_:1},8,["disabled","modelValue","onChange","indeterminate"])]),n(y,{disabled:!l(d).length,onClick:e[8]||(e[8]=t=>l(Y)())},{default:a(()=>[...e[33]||(e[33]=[r(" 删除 ",-1)])]),_:1},8,["disabled"]),n(we,{class:"ml-3 inline",onConfirm:l(ye),disabled:!l(d).length,title:"移动文件"},{trigger:a(()=>[n(y,{disabled:!l(d).length},{default:a(()=>[...e[34]||(e[34]=[r("移动",-1)])]),_:1},8,["disabled"])]),default:a(()=>[o("div",null,[e[35]||(e[35]=o("span",{class:"mr-5"},"移动文件至",-1)),n(ie,{modelValue:l(I),"onUpdate:modelValue":e[9]||(e[9]=t=>L(I)?I.value=t:null),placeholder:"请选择"},{default:a(()=>[(i(!0),m(D,null,W(l(M),t=>(i(),m(D,{key:t.id},[t.id!==""?(i(),h(oe,{key:0,label:t.name,value:t.id},null,8,["label","value"])):p("",!0)],64))),128))]),_:1},8,["modelValue"])])]),_:1},8,["onConfirm","disabled"])],64)):p("",!0)]),n(Ge,{modelValue:l(A),"onUpdate:modelValue":e[10]||(e[10]=t=>L(A)?A.value=t:null),onChange:l(ve),layout:"total, prev, pager, next, jumper"},null,8,["modelValue","onChange"])])]),s.mode=="picker"?(i(),m("div",ml,[o("div",fl,[o("div",pl,[r(" 已选择 "+ue(l(d).length)+" ",1),l(z)?(i(),m("span",vl,"/"+ue(l(z)),1)):p("",!0)]),n(y,{type:"primary",link:"",onClick:l(ge)},{default:a(()=>[...e[36]||(e[36]=[r("清空",-1)])]),_:1},8,["onClick"])]),o("div",yl,[n(ae,{class:"ls-scrollbar"},{default:a(()=>[o("ul",_l,[(i(!0),m(D,null,W(l(d),t=>(i(),m("li",{class:"mb-4",key:t.id},[o("div",gl,[n(Se,{onClose:v=>l(Ue)(t.id)},{default:a(()=>[n(re,{uri:t.url,"file-size":"100px",type:s.type},null,8,["uri","type"])]),_:2},1032,["onClose"])])]))),128))])]),_:1})])])):p("",!0),n(Bt,{modelValue:l(f),"onUpdate:modelValue":e[11]||(e[11]=t=>L(f)?f.value=t:null),url:l(g),type:s.type},null,8,["modelValue","url","type"]),o("input",{ref_key:"textCopys",ref:be,id:"textCopys",value:"",style:{opacity:"0",position:"absolute"}},null,512)])),[[We,l(A).loading]])}}}),zl=Ie(Cl,[["__scopeId","data-v-1e1d2cd0"]]);export{re as F,Bt as _,zl as a};
+>>>>>>>> yz-0803:server/public/admin/assets/index-ci6cz5MZ.js
diff --git a/server/public/admin/assets/index-dWnSbuQk.js b/server/public/admin/assets/index-dWnSbuQk.js
index 01542d340..4d573f6c3 100644
--- a/server/public/admin/assets/index-dWnSbuQk.js
+++ b/server/public/admin/assets/index-dWnSbuQk.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-dWnSbuQk.js
import{o as K,ap as G,be as H,q as s,r as E,v as e,D as o,b9 as J,u as t,b6 as Q,b7 as W,b8 as x,bm as X,bn as Y,F as Z,G as ee,O as d,K as ae,L as u,bg as le,ac as b,bi as te,s as D,bj as oe,bk as ne,a0 as ie,I as se,P as y,C as me,a8 as de,ba as re,M as pe,n as $}from"./.pnpm-BadRMC3e.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as ce,i as _e}from"./index-C360OAjQ.js";import{_ as fe}from"./index.vue_vue_type_script_setup_true_lang-comvoFwL.js";import{a as F,b as be,c as ve}from"./admin-BrR2gadt.js";import{r as we}from"./role-Dvf0ojCz.js";import{u as ge}from"./useDictOptions-C5fytNbv.js";import{u as he}from"./usePaging-DMqUvFG-.js";import{_ as ke}from"./edit.vue_vue_type_script_setup_true_lang-COTBmEfN.js";import"./index-2cRJ7Pdu.js";import"./picker-BV4TmQgU.js";import"./index-CARk4iLN.js";import"./index-DcSBJkxh.js";import"./index-BHk2qnVA.js";import"./file-DAA7Hwft.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./department-BFDDlesw.js";import"./post-Iso6tncx.js";const ye={class:"admin"},Ce={class:"mt-4"},Ve={class:"flex mt-4 justify-end"},Ee=K({name:"admin"}),qe=K({...Ee,setup(xe){const v=de(),m=re({account:"",name:"",role_id:""}),w=pe(!1),{pager:r,getLists:c,resetParams:P,resetPage:k}=he({fetchFun:F,params:m}),U=n=>{be({id:n.id,avatar:n.avatar,account:n.account,name:n.name,role_id:n.role_id,job_id:n.job_id,dept_id:n.dept_id,disable:n.disable,multipoint_login:n.multipoint_login}).finally(()=>{c()})},z=async()=>{var n;w.value=!0,await $(),(n=v.value)==null||n.open("add")},B=async n=>{var a,_;w.value=!0,await $(),(a=v.value)==null||a.open("edit"),(_=v.value)==null||_.setFormData(n)},I=async n=>{await _e.confirm("确定要删除?"),await ve({id:n}),c()},{optionsData:L}=ge({role:{api:we}});return G(()=>{c()}),(n,a)=>{const _=W,g=Q,C=Y,S=X,f=ae,j=fe,N=J,V=le,R=ce,i=ne,T=ie,A=se,O=oe,M=ue,h=H("perms"),q=te;return s(),E("div",ye,[e(V,{class:"!border-none",shadow:"never"},{default:o(()=>[e(N,{class:"mb-[-16px]",model:t(m),inline:""},{default:o(()=>[e(g,{class:"w-[280px]",label:"管理员账号"},{default:o(()=>[e(_,{modelValue:t(m).account,"onUpdate:modelValue":a[0]||(a[0]=l=>t(m).account=l),placeholder:"请输入管理员账号",clearable:"",onKeyup:x(t(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员名称"},{default:o(()=>[e(_,{modelValue:t(m).name,"onUpdate:modelValue":a[1]||(a[1]=l=>t(m).name=l),placeholder:"请输入管理员名称",clearable:"",onKeyup:x(t(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员角色"},{default:o(()=>[e(S,{modelValue:t(m).role_id,"onUpdate:modelValue":a[2]||(a[2]=l=>t(m).role_id=l)},{default:o(()=>[e(C,{label:"全部",value:""}),(s(!0),E(Z,null,ee(t(L).role,(l,p)=>(s(),d(C,{key:p,label:l.name,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(g,null,{default:o(()=>[e(f,{type:"primary",onClick:t(k)},{default:o(()=>[...a[5]||(a[5]=[u("查询",-1)])]),_:1},8,["onClick"]),e(f,{onClick:t(P)},{default:o(()=>[...a[6]||(a[6]=[u("重置",-1)])]),_:1},8,["onClick"]),e(j,{class:"ml-2.5","fetch-fun":t(F),params:t(m),"page-size":t(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),b((s(),d(V,{class:"mt-4 !border-none",shadow:"never"},{default:o(()=>[b((s(),d(f,{type:"primary",onClick:z},{icon:o(()=>[e(R,{name:"el-icon-Plus"})]),default:o(()=>[a[7]||(a[7]=u(" 新增 ",-1))]),_:1})),[[h,["auth.admin/add"]]]),D("div",Ce,[e(O,{data:t(r).lists,size:"large"},{default:o(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),a[10]||(a[10]=u("> ",-1)),e(i,{label:"头像","min-width":"100"},{default:o(({row:l})=>[e(T,{size:50,src:l.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"100"}),e(i,{label:"名称",prop:"name","min-width":"100"}),e(i,{label:"角色",prop:"role_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"部门",prop:"dept_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),b((s(),d(i,{label:"状态","min-width":"100"},{default:o(({row:l})=>[l.root!=1?(s(),d(A,{key:0,modelValue:l.disable,"onUpdate:modelValue":p=>l.disable=p,"active-value":0,"inactive-value":1,onChange:p=>U(l)},null,8,["modelValue","onUpdate:modelValue","onChange"])):y("",!0)]),_:1})),[[h,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:o(({row:l})=>[b((s(),d(f,{type:"primary",link:"",onClick:p=>B(l)},{default:o(()=>[...a[8]||(a[8]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/edit"]]]),l.root!=1?b((s(),d(f,{key:0,type:"danger",link:"",onClick:p=>I(l.id)},{default:o(()=>[...a[9]||(a[9]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/delete"]]]):y("",!0)]),_:1})]),_:1},8,["data"])]),D("div",Ve,[e(M,{modelValue:t(r),"onUpdate:modelValue":a[3]||(a[3]=l=>me(r)?r.value=l:null),onChange:t(c)},null,8,["modelValue","onChange"])])]),_:1})),[[q,t(r).loading]]),t(w)?(s(),d(ke,{key:0,ref_key:"editRef",ref:v,onSuccess:t(c),onClose:a[4]||(a[4]=l=>w.value=!1)},null,8,["onSuccess"])):y("",!0)])}}});export{qe as default};
+========
+import{o as K,ap as G,be as H,q as s,r as E,v as e,D as o,b9 as J,u as t,b6 as Q,b7 as W,b8 as x,bm as X,bn as Y,F as Z,G as ee,O as d,K as ae,L as u,bg as le,ac as b,bi as te,s as D,bj as oe,bk as ne,a0 as ie,I as se,P as y,C as me,a8 as de,ba as re,M as pe,n as $}from"./.pnpm-BadRMC3e.js";import{_ as ue}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{c as ce,i as _e}from"./index-C53kWH2_.js";import{_ as fe}from"./index.vue_vue_type_script_setup_true_lang-DILFg-Lp.js";import{a as F,b as be,c as ve}from"./admin-d9-bezkf.js";import{r as we}from"./role-CjRVNnAJ.js";import{u as ge}from"./useDictOptions-D9FsmJj0.js";import{u as he}from"./usePaging-DMqUvFG-.js";import{_ as ke}from"./edit.vue_vue_type_script_setup_true_lang-Bp9ati-m.js";import"./index-ByXR3YHf.js";import"./picker-Bo_aGeCY.js";import"./index-ci6cz5MZ.js";import"./index-ZgwwU4Et.js";import"./index-9XBsG-Cy.js";import"./file-Ci3F9EoX.js";import"./index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js";import"./department-drKzCnRw.js";import"./post-DzKn8_yS.js";const ye={class:"admin"},Ce={class:"mt-4"},Ve={class:"flex mt-4 justify-end"},Ee=K({name:"admin"}),qe=K({...Ee,setup(xe){const v=de(),m=re({account:"",name:"",role_id:""}),w=pe(!1),{pager:r,getLists:c,resetParams:P,resetPage:k}=he({fetchFun:F,params:m}),U=n=>{be({id:n.id,avatar:n.avatar,account:n.account,name:n.name,role_id:n.role_id,job_id:n.job_id,dept_id:n.dept_id,disable:n.disable,multipoint_login:n.multipoint_login}).finally(()=>{c()})},z=async()=>{var n;w.value=!0,await $(),(n=v.value)==null||n.open("add")},B=async n=>{var a,_;w.value=!0,await $(),(a=v.value)==null||a.open("edit"),(_=v.value)==null||_.setFormData(n)},I=async n=>{await _e.confirm("确定要删除?"),await ve({id:n}),c()},{optionsData:L}=ge({role:{api:we}});return G(()=>{c()}),(n,a)=>{const _=W,g=Q,C=Y,S=X,f=ae,j=fe,N=J,V=le,R=ce,i=ne,T=ie,A=se,O=oe,M=ue,h=H("perms"),q=te;return s(),E("div",ye,[e(V,{class:"!border-none",shadow:"never"},{default:o(()=>[e(N,{class:"mb-[-16px]",model:t(m),inline:""},{default:o(()=>[e(g,{class:"w-[280px]",label:"管理员账号"},{default:o(()=>[e(_,{modelValue:t(m).account,"onUpdate:modelValue":a[0]||(a[0]=l=>t(m).account=l),placeholder:"请输入管理员账号",clearable:"",onKeyup:x(t(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员名称"},{default:o(()=>[e(_,{modelValue:t(m).name,"onUpdate:modelValue":a[1]||(a[1]=l=>t(m).name=l),placeholder:"请输入管理员名称",clearable:"",onKeyup:x(t(k),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),e(g,{class:"w-[280px]",label:"管理员角色"},{default:o(()=>[e(S,{modelValue:t(m).role_id,"onUpdate:modelValue":a[2]||(a[2]=l=>t(m).role_id=l)},{default:o(()=>[e(C,{label:"全部",value:""}),(s(!0),E(Z,null,ee(t(L).role,(l,p)=>(s(),d(C,{key:p,label:l.name,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(g,null,{default:o(()=>[e(f,{type:"primary",onClick:t(k)},{default:o(()=>[...a[5]||(a[5]=[u("查询",-1)])]),_:1},8,["onClick"]),e(f,{onClick:t(P)},{default:o(()=>[...a[6]||(a[6]=[u("重置",-1)])]),_:1},8,["onClick"]),e(j,{class:"ml-2.5","fetch-fun":t(F),params:t(m),"page-size":t(r).size},null,8,["fetch-fun","params","page-size"])]),_:1})]),_:1},8,["model"])]),_:1}),b((s(),d(V,{class:"mt-4 !border-none",shadow:"never"},{default:o(()=>[b((s(),d(f,{type:"primary",onClick:z},{icon:o(()=>[e(R,{name:"el-icon-Plus"})]),default:o(()=>[a[7]||(a[7]=u(" 新增 ",-1))]),_:1})),[[h,["auth.admin/add"]]]),D("div",Ce,[e(O,{data:t(r).lists,size:"large"},{default:o(()=>[e(i,{label:"ID",prop:"id","min-width":"60"}),a[10]||(a[10]=u("> ",-1)),e(i,{label:"头像","min-width":"100"},{default:o(({row:l})=>[e(T,{size:50,src:l.avatar},null,8,["src"])]),_:1}),e(i,{label:"账号",prop:"account","min-width":"100"}),e(i,{label:"名称",prop:"name","min-width":"100"}),e(i,{label:"角色",prop:"role_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"部门",prop:"dept_name","min-width":"100","show-tooltip-when-overflow":""}),e(i,{label:"创建时间",prop:"create_time","min-width":"180"}),e(i,{label:"最近登录时间",prop:"login_time","min-width":"180"}),e(i,{label:"最近登录IP",prop:"login_ip","min-width":"120"}),b((s(),d(i,{label:"状态","min-width":"100"},{default:o(({row:l})=>[l.root!=1?(s(),d(A,{key:0,modelValue:l.disable,"onUpdate:modelValue":p=>l.disable=p,"active-value":0,"inactive-value":1,onChange:p=>U(l)},null,8,["modelValue","onUpdate:modelValue","onChange"])):y("",!0)]),_:1})),[[h,["auth.admin/edit"]]]),e(i,{label:"操作",width:"120",fixed:"right"},{default:o(({row:l})=>[b((s(),d(f,{type:"primary",link:"",onClick:p=>B(l)},{default:o(()=>[...a[8]||(a[8]=[u(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/edit"]]]),l.root!=1?b((s(),d(f,{key:0,type:"danger",link:"",onClick:p=>I(l.id)},{default:o(()=>[...a[9]||(a[9]=[u(" 删除 ",-1)])]),_:1},8,["onClick"])),[[h,["auth.admin/delete"]]]):y("",!0)]),_:1})]),_:1},8,["data"])]),D("div",Ve,[e(M,{modelValue:t(r),"onUpdate:modelValue":a[3]||(a[3]=l=>me(r)?r.value=l:null),onChange:t(c)},null,8,["modelValue","onChange"])])]),_:1})),[[q,t(r).loading]]),t(w)?(s(),d(ke,{key:0,ref_key:"editRef",ref:v,onSuccess:t(c),onClose:a[4]||(a[4]=l=>w.value=!1)},null,8,["onSuccess"])):y("",!0)])}}});export{qe as default};
+>>>>>>>> yz-0803:server/public/admin/assets/index-BE6S3jBo.js
diff --git a/server/public/admin/assets/index-fKZf1wl9.js b/server/public/admin/assets/index-fKZf1wl9.js
index 0f908368a..15047363f 100644
--- a/server/public/admin/assets/index-fKZf1wl9.js
+++ b/server/public/admin/assets/index-fKZf1wl9.js
@@ -1,3 +1,7 @@
+<<<<<<<< HEAD:server/public/admin/assets/index-fKZf1wl9.js
import{o as Me,R as Ee,E as p,ap as pt,ac as Te,bi as ft,q as d,r as g,s as n,v as a,D as i,u as c,cV as gt,w as vt,cO as bt,L as r,T as u,P as D,by as fe,K as yt,cN as kt,cW as Nt,bI as Ct,cX as wt,ae as I,cY as Ue,cZ as ze,c_ as Vt,c$ as ne,cv as ge,F,G as K,cD as $t,at as Oe,bu as xt,d0 as St,O as y,bh as Pt,bk as It,I as At,$ as Dt,ck as Lt,Z as ht,_ as Et,bB as Tt,bj as Ut,cl as zt,as as Ot,b6 as Mt,bm as Ft,bn as qt,bA as jt,b9 as Bt,bs as Rt,a4 as Jt,d1 as Kt,bq as Yt,d2 as Ht,d3 as Zt,cp as Gt,d4 as Wt,b7 as Xt,bt as Qt,J as en,bp as tn,ba as Y,M as V,p as q,e as le}from"./.pnpm-BadRMC3e.js";import{x as nn,y as ln,z as an,A as sn,B as on,C as un,D as dn,E as rn,F as mn,G as cn,H as _n,I as pn}from"./first_visit-BH-WCx1t.js";import{_ as fn}from"./index-C360OAjQ.js";const gn={class:"promotion-page","element-loading-text":"正在加载推广配置"},vn={class:"page-header"},bn={class:"heading-copy"},yn={class:"heading-icon"},kn={class:"heading-actions"},Nn={class:"scope-chip"},Cn={key:0,class:"update-time"},wn={class:"metric-grid"},Vn={class:"metric-card"},$n={class:"metric-icon is-teal"},xn={class:"metric-card"},Sn={class:"metric-icon is-blue"},Pn={class:"metric-card"},In={class:"metric-icon is-green"},An={class:"metric-card"},Dn={class:"metric-icon is-orange"},Ln={class:"workspace-card"},hn={class:"tab-nav","aria-label":"企业微信获客助手功能"},En={key:0,class:"tab-content links-tab"},Tn={class:"section-heading"},Un={key:0,class:"pool-layout"},zn={class:"pool-sidebar"},On=["onClick"],Mn={class:"pool-main"},Fn={key:0,class:"pool-toolbar"},qn={class:"pool-title-row"},jn={class:"owner-tag"},Bn={class:"toolbar-actions"},Rn={class:"member-cell"},Jn=["title"],Kn={key:1,class:"legacy-tag"},Yn={key:1,class:"tab-content customer-stats-tab"},Hn={class:"section-heading customer-stats-heading"},Zn={class:"customer-heading-actions"},Gn={key:0,class:"update-time"},Wn={class:"customer-metric-grid","aria-label":"获客客户消息汇总"},Xn={class:"customer-metric-card"},Qn={class:"metric-icon is-teal"},el={class:"customer-metric-card"},tl={class:"metric-icon is-blue"},nl={class:"customer-metric-card"},ll={class:"metric-icon is-green"},al={class:"customer-metric-card"},sl={class:"metric-icon is-orange"},il={class:"customer-filter-bar"},ol=["title"],ul={class:"member-cell"},dl={class:"member-cell"},rl={class:"customer-pagination"},ml={key:2,class:"tab-content authorization-tab"},cl={class:"configuration-state"},_l={key:0},pl={key:1},fl={key:0,class:"missing-fields"},gl={class:"callback-list"},vl={class:"configuration-actions"},bl={key:3,class:"tab-content install-tab"},yl={class:"section-heading"},kl={class:"install-grid"},Nl={class:"code-card"},Cl={class:"code-card"},wl={class:"rule-panel"},Vl={class:"test-row"},$l={class:"form-grid"},xl={class:"form-grid"},Sl=Me({name:"firstVisitWecomPromotionPage"}),Pl=Me({...Sl,setup(Il){const ve=()=>({meta:{scope_label:"",generated_at:""},config:{mode:"internal",configured:!1,ready:!1,missing:[],corp_id_masked:"",agent_id:"",secret_configured:!1,official_doc:""},summary:{configured_apps:0,pool_count:0,online_links:0,today_clicks:0},pools:[],links:[],member_options:[],customer_acquisition_link_example:"https://work.weixin.qq.com/ca/xxxxxxxx"}),m=Y(ve()),W=V(!1),$=V("links"),T=V(),j=V(),H=V(!1),Z=V(!1),ae=V(!1),se=V(!1),X=V(!1),ie=V(!1),oe=V(0),L=Y({id:0,name:"",fallback_url:"",status:1}),_=Y({id:0,pool_id:0,name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),G=V(!1),be=V(!1),ue=V(!1),N=Y({link_id:"",userid:"",chat_status:""}),x=Y({page_no:1,page_size:20,total:0}),b=Y({summary:{customer_count:0,messaged_customer_count:0,message_customer_rate:0,received_message_count:0,message_count_known_count:0},rows:[],link_options:[],member_options:[],meta:{last_synced_at:""}}),C=q(()=>m.pools.find(t=>Number(t.id)===T.value)),de=q(()=>m.links.filter(t=>Number(t.pool_id)===T.value)),ye=q(()=>de.value.filter(t=>!!t.remote_link_id).length),ke=q(()=>de.value.length-ye.value),U=q(()=>m.pools.find(t=>Number(t.id)===j.value)),Fe=q(()=>b.link_options.length?b.link_options:m.links.filter(t=>t.id).map(t=>({id:Number(t.id),name:t.name||t.remote_link_id||`链接 ${t.id}`}))),qe=q(()=>b.member_options.length?b.member_options:m.member_options.map(t=>({id:Number(t.id),userid:String(t.userid||""),name:t.name,department_name:Array.isArray(t.dept_names)?t.dept_names.join(" / "):t.department_name||t.dept_name||""})));Ee(()=>m.pools.map(t=>Number(t.id)).join(","),()=>{const t=m.pools.map(e=>Number(e.id));(!T.value||!t.includes(T.value))&&(T.value=t[0]),(!j.value||!t.includes(j.value))&&(j.value=t[0])},{immediate:!0}),Ee($,t=>{t==="customer-stats"&&!be.value&&z()});async function S(){W.value=!0;try{const t=await ln();Object.assign(m,ve(),t||{})}catch(t){p.error((t==null?void 0:t.message)||"企业微信推广配置加载失败")}finally{W.value=!1}}function je(t){return m.links.filter(e=>Number(e.pool_id)===Number(t)).length}function re(t){Object.assign(L,t?{id:Number(t.id),name:t.name,fallback_url:t.fallback_url||"",status:Number(t.status)}:{id:0,name:"",fallback_url:"",status:1}),H.value=!0}async function Be(){if(!L.name.trim())return p.warning("请输入分流方案名称");ae.value=!0;try{const t=await an({...L});H.value=!1,await S(),t!=null&&t.id&&(T.value=Number(t.id)),p.success("分流方案已保存")}catch(t){p.error((t==null?void 0:t.message)||"分流方案保存失败")}finally{ae.value=!1}}async function Re(t){await le.confirm(`删除“${t.name}”后,该方案下的获客助手链接也会停用。确认继续?`,"删除分流方案",{type:"warning"});try{await sn({id:Number(t.id)}),p.success("分流方案已删除"),await S()}catch(e){p.error((e==null?void 0:e.message)||"删除失败")}}function Ne(t){if(!C.value)return;const e=t&&Number(t.active_start)>0&&Number(t.active_end)>0?[Ie(t.active_start),Ie(t.active_end)]:[],s=new Set(((t==null?void 0:t.range_userids)||[]).map(k=>String(k))),o=m.member_options.filter(k=>s.has(String(k.userid))).map(k=>Number(k.id));Object.assign(_,t?{id:Number(t.id),pool_id:Number(t.pool_id),name:t.name,group_name:t.group_name||"默认分组",wecom_url:t.wecom_url,member_admin_ids:o,skip_verify:Number(t.skip_verify)===1?1:0,legacy:!t.is_official,weight:Number(t.weight)||1,status:Number(t.status),daily_limit:Number(t.daily_limit)||0,active_range:e,remark:t.remark||""}:{id:0,pool_id:Number(C.value.id),name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),Z.value=!0}async function Je(){var t,e;if(!_.name.trim())return p.warning("请输入获客链接名称");if(_.legacy&&!_.wecom_url.trim())return p.warning("请填写企业微信获客助手链接");if(!_.legacy&&!_.member_admin_ids.length)return p.warning("请至少选择一名获客成员");se.value=!0;try{await on({..._,active_start:((t=_.active_range)==null?void 0:t[0])||"",active_end:((e=_.active_range)==null?void 0:e[1])||""}),Z.value=!1,await S(),p.success(_.legacy?"本地分流规则已保存":"企业微信官方获客链接已保存")}catch(s){p.error((s==null?void 0:s.message)||"获客助手链接保存失败")}finally{se.value=!1}}async function Ce(){X.value=!0;try{const t=await un();t!=null&&t.has_link?p.success((t==null?void 0:t.message)||"API 验证通过:应用凭证、可信 IP 与获客助手权限均可用"):p.warning((t==null?void 0:t.message)||"API 权限可用,但当前应用还没有创建官方获客链接")}catch(t){p.error((t==null?void 0:t.message)||"获客助手 API 验证失败")}finally{X.value=!1}}async function Ke(){await S(),$.value==="customer-stats"&&await z()}function B(t,e){for(const s of e)if((t==null?void 0:t[s])!==void 0&&(t==null?void 0:t[s])!==null&&(t==null?void 0:t[s])!==""){const o=Number(t[s]);return Number.isFinite(o)?o:0}return 0}async function z(){var t,e;G.value=!0;try{const s=await nn({page_no:x.page_no,page_size:x.page_size,promotion_link_id:N.link_id?Number(N.link_id):void 0,userid:N.userid||void 0,chat_status:N.chat_status===""?void 0:N.chat_status==="messaged"?1:N.chat_status==="unknown"?2:0}),o=(s==null?void 0:s.summary)||(s==null?void 0:s.stats)||{},k=B(o,["customer_count","total_customers","customer_total","total"]),f=B(o,["messaged_customer_count","started_chat_count","chat_customer_count","message_customer_count","chatting_customers"]),A=["message_customer_rate","chat_customer_rate","messaged_rate","chat_rate"],Q=A.some(P=>(o==null?void 0:o[P])!==void 0&&(o==null?void 0:o[P])!==null&&(o==null?void 0:o[P])!=="");Object.assign(b.summary,{customer_count:k,messaged_customer_count:f,message_customer_rate:Q?B(o,A):k?f/k*100:0,received_message_count:B(o,["received_message_count","recv_msg_cnt","recv_msg_count","total_recv_msg_cnt","message_count"]),message_count_known_count:B(o,["message_count_known_count","exact_message_customer_count"])}),b.rows=Array.isArray(s==null?void 0:s.lists)?s.lists:Array.isArray(s==null?void 0:s.list)?s.list:Array.isArray(s==null?void 0:s.rows)?s.rows:[],x.total=Number((s==null?void 0:s.total)??(s==null?void 0:s.count)??((t=s==null?void 0:s.page)==null?void 0:t.total)??b.rows.length)||0;const w=(s==null?void 0:s.filters)||{},ee=(s==null?void 0:s.link_options)||(w==null?void 0:w.link_options)||(w==null?void 0:w.links),O=(s==null?void 0:s.member_options)||(w==null?void 0:w.member_options)||(w==null?void 0:w.members);Array.isArray(ee)&&(b.link_options=ee),Array.isArray(O)&&(b.member_options=O);const te=b.rows.reduce((P,v)=>{const R=v.last_synced_at||v.last_sync_time||v.synced_at||v.sync_time||"";return Number(R||0)>Number(P||0)?R:P},""),E=((e=s==null?void 0:s.meta)==null?void 0:e.last_synced_at)||(s==null?void 0:s.last_synced_at)||te||b.meta.last_synced_at||"";Object.assign(b.meta,(s==null?void 0:s.meta)||{},{last_synced_at:E?_e(E):""}),be.value=!0}catch(s){p.error((s==null?void 0:s.message)||"获客客户统计加载失败")}finally{G.value=!1}}function Ye(){x.page_no=1,z()}function He(){Object.assign(N,{link_id:"",userid:"",chat_status:""}),x.page_no=1,z()}function Ze(){x.page_no=1,z()}async function Ge(){var t,e,s;ue.value=!0;try{const o=await dn({promotion_link_id:N.link_id?Number(N.link_id):void 0}),k=Number((o==null?void 0:o.scanned)??(o==null?void 0:o.customer_scanned)??((t=o==null?void 0:o.customers)==null?void 0:t.scanned)??0),f=Number((o==null?void 0:o.created)??(o==null?void 0:o.customer_created)??((e=o==null?void 0:o.customers)==null?void 0:e.created)??0),A=Number((o==null?void 0:o.updated)??(o==null?void 0:o.customer_updated)??((s=o==null?void 0:o.customers)==null?void 0:s.updated)??0);p.success((o==null?void 0:o.message)||`客户同步完成:扫描 ${h(k)} 位,新增 ${h(f)} 位,更新 ${h(A)} 位`),x.page_no=1,await Promise.all([S(),z()])}catch(o){p.error((o==null?void 0:o.message)||"获客客户同步失败")}finally{ue.value=!1}}async function We(){if(!C.value)return p.warning("请先选择分流方案");ie.value=!0;try{const t=await rn({pool_id:Number(C.value.id)}),e=`扫描 ${Number((t==null?void 0:t.scanned)||0)} 条,新建 ${Number((t==null?void 0:t.created)||0)} 条,更新 ${Number((t==null?void 0:t.updated)||0)} 条,按权限跳过 ${Number((t==null?void 0:t.skipped)||0)} 条,失败 ${Number((t==null?void 0:t.failed)||0)} 条`;Number((t==null?void 0:t.scanned)||0)===0?await le.alert(`${(t==null?void 0:t.empty_reason)||"当前应用没有可同步的官方获客链接"}
+========
+import{o as Me,R as Ee,E as p,ap as pt,ac as Te,bi as ft,q as d,r as g,s as n,v as a,D as i,u as c,cV as gt,w as vt,cO as bt,L as r,T as u,P as D,by as fe,K as yt,cN as kt,cW as Nt,bI as Ct,cX as wt,ae as I,cY as Ue,cZ as ze,c_ as Vt,c$ as ne,cv as ge,F,G as K,cD as $t,at as Oe,bu as xt,d0 as St,O as y,bh as Pt,bk as It,I as At,$ as Dt,ck as Lt,Z as ht,_ as Et,bB as Tt,bj as Ut,cl as zt,as as Ot,b6 as Mt,bm as Ft,bn as qt,bA as jt,b9 as Bt,bs as Rt,a4 as Jt,d1 as Kt,bq as Yt,d2 as Ht,d3 as Zt,cp as Gt,d4 as Wt,b7 as Xt,bt as Qt,J as en,bp as tn,ba as Y,M as V,p as q,e as le}from"./.pnpm-BadRMC3e.js";import{x as nn,y as ln,z as an,A as sn,B as on,C as un,D as dn,E as rn,F as mn,G as cn,H as _n,I as pn}from"./first_visit-LvTGTIzk.js";import{_ as fn}from"./index-C53kWH2_.js";const gn={class:"promotion-page","element-loading-text":"正在加载推广配置"},vn={class:"page-header"},bn={class:"heading-copy"},yn={class:"heading-icon"},kn={class:"heading-actions"},Nn={class:"scope-chip"},Cn={key:0,class:"update-time"},wn={class:"metric-grid"},Vn={class:"metric-card"},$n={class:"metric-icon is-teal"},xn={class:"metric-card"},Sn={class:"metric-icon is-blue"},Pn={class:"metric-card"},In={class:"metric-icon is-green"},An={class:"metric-card"},Dn={class:"metric-icon is-orange"},Ln={class:"workspace-card"},hn={class:"tab-nav","aria-label":"企业微信获客助手功能"},En={key:0,class:"tab-content links-tab"},Tn={class:"section-heading"},Un={key:0,class:"pool-layout"},zn={class:"pool-sidebar"},On=["onClick"],Mn={class:"pool-main"},Fn={key:0,class:"pool-toolbar"},qn={class:"pool-title-row"},jn={class:"owner-tag"},Bn={class:"toolbar-actions"},Rn={class:"member-cell"},Jn=["title"],Kn={key:1,class:"legacy-tag"},Yn={key:1,class:"tab-content customer-stats-tab"},Hn={class:"section-heading customer-stats-heading"},Zn={class:"customer-heading-actions"},Gn={key:0,class:"update-time"},Wn={class:"customer-metric-grid","aria-label":"获客客户消息汇总"},Xn={class:"customer-metric-card"},Qn={class:"metric-icon is-teal"},el={class:"customer-metric-card"},tl={class:"metric-icon is-blue"},nl={class:"customer-metric-card"},ll={class:"metric-icon is-green"},al={class:"customer-metric-card"},sl={class:"metric-icon is-orange"},il={class:"customer-filter-bar"},ol=["title"],ul={class:"member-cell"},dl={class:"member-cell"},rl={class:"customer-pagination"},ml={key:2,class:"tab-content authorization-tab"},cl={class:"configuration-state"},_l={key:0},pl={key:1},fl={key:0,class:"missing-fields"},gl={class:"callback-list"},vl={class:"configuration-actions"},bl={key:3,class:"tab-content install-tab"},yl={class:"section-heading"},kl={class:"install-grid"},Nl={class:"code-card"},Cl={class:"code-card"},wl={class:"rule-panel"},Vl={class:"test-row"},$l={class:"form-grid"},xl={class:"form-grid"},Sl=Me({name:"firstVisitWecomPromotionPage"}),Pl=Me({...Sl,setup(Il){const ve=()=>({meta:{scope_label:"",generated_at:""},config:{mode:"internal",configured:!1,ready:!1,missing:[],corp_id_masked:"",agent_id:"",secret_configured:!1,official_doc:""},summary:{configured_apps:0,pool_count:0,online_links:0,today_clicks:0},pools:[],links:[],member_options:[],customer_acquisition_link_example:"https://work.weixin.qq.com/ca/xxxxxxxx"}),m=Y(ve()),W=V(!1),$=V("links"),T=V(),j=V(),H=V(!1),Z=V(!1),ae=V(!1),se=V(!1),X=V(!1),ie=V(!1),oe=V(0),L=Y({id:0,name:"",fallback_url:"",status:1}),_=Y({id:0,pool_id:0,name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),G=V(!1),be=V(!1),ue=V(!1),N=Y({link_id:"",userid:"",chat_status:""}),x=Y({page_no:1,page_size:20,total:0}),b=Y({summary:{customer_count:0,messaged_customer_count:0,message_customer_rate:0,received_message_count:0,message_count_known_count:0},rows:[],link_options:[],member_options:[],meta:{last_synced_at:""}}),C=q(()=>m.pools.find(t=>Number(t.id)===T.value)),de=q(()=>m.links.filter(t=>Number(t.pool_id)===T.value)),ye=q(()=>de.value.filter(t=>!!t.remote_link_id).length),ke=q(()=>de.value.length-ye.value),U=q(()=>m.pools.find(t=>Number(t.id)===j.value)),Fe=q(()=>b.link_options.length?b.link_options:m.links.filter(t=>t.id).map(t=>({id:Number(t.id),name:t.name||t.remote_link_id||`链接 ${t.id}`}))),qe=q(()=>b.member_options.length?b.member_options:m.member_options.map(t=>({id:Number(t.id),userid:String(t.userid||""),name:t.name,department_name:Array.isArray(t.dept_names)?t.dept_names.join(" / "):t.department_name||t.dept_name||""})));Ee(()=>m.pools.map(t=>Number(t.id)).join(","),()=>{const t=m.pools.map(e=>Number(e.id));(!T.value||!t.includes(T.value))&&(T.value=t[0]),(!j.value||!t.includes(j.value))&&(j.value=t[0])},{immediate:!0}),Ee($,t=>{t==="customer-stats"&&!be.value&&z()});async function S(){W.value=!0;try{const t=await ln();Object.assign(m,ve(),t||{})}catch(t){p.error((t==null?void 0:t.message)||"企业微信推广配置加载失败")}finally{W.value=!1}}function je(t){return m.links.filter(e=>Number(e.pool_id)===Number(t)).length}function re(t){Object.assign(L,t?{id:Number(t.id),name:t.name,fallback_url:t.fallback_url||"",status:Number(t.status)}:{id:0,name:"",fallback_url:"",status:1}),H.value=!0}async function Be(){if(!L.name.trim())return p.warning("请输入分流方案名称");ae.value=!0;try{const t=await an({...L});H.value=!1,await S(),t!=null&&t.id&&(T.value=Number(t.id)),p.success("分流方案已保存")}catch(t){p.error((t==null?void 0:t.message)||"分流方案保存失败")}finally{ae.value=!1}}async function Re(t){await le.confirm(`删除“${t.name}”后,该方案下的获客助手链接也会停用。确认继续?`,"删除分流方案",{type:"warning"});try{await sn({id:Number(t.id)}),p.success("分流方案已删除"),await S()}catch(e){p.error((e==null?void 0:e.message)||"删除失败")}}function Ne(t){if(!C.value)return;const e=t&&Number(t.active_start)>0&&Number(t.active_end)>0?[Ie(t.active_start),Ie(t.active_end)]:[],s=new Set(((t==null?void 0:t.range_userids)||[]).map(k=>String(k))),o=m.member_options.filter(k=>s.has(String(k.userid))).map(k=>Number(k.id));Object.assign(_,t?{id:Number(t.id),pool_id:Number(t.pool_id),name:t.name,group_name:t.group_name||"默认分组",wecom_url:t.wecom_url,member_admin_ids:o,skip_verify:Number(t.skip_verify)===1?1:0,legacy:!t.is_official,weight:Number(t.weight)||1,status:Number(t.status),daily_limit:Number(t.daily_limit)||0,active_range:e,remark:t.remark||""}:{id:0,pool_id:Number(C.value.id),name:"",group_name:"默认分组",wecom_url:"",member_admin_ids:[],skip_verify:0,legacy:!1,weight:1,status:1,daily_limit:0,active_range:[],remark:""}),Z.value=!0}async function Je(){var t,e;if(!_.name.trim())return p.warning("请输入获客链接名称");if(_.legacy&&!_.wecom_url.trim())return p.warning("请填写企业微信获客助手链接");if(!_.legacy&&!_.member_admin_ids.length)return p.warning("请至少选择一名获客成员");se.value=!0;try{await on({..._,active_start:((t=_.active_range)==null?void 0:t[0])||"",active_end:((e=_.active_range)==null?void 0:e[1])||""}),Z.value=!1,await S(),p.success(_.legacy?"本地分流规则已保存":"企业微信官方获客链接已保存")}catch(s){p.error((s==null?void 0:s.message)||"获客助手链接保存失败")}finally{se.value=!1}}async function Ce(){X.value=!0;try{const t=await un();t!=null&&t.has_link?p.success((t==null?void 0:t.message)||"API 验证通过:应用凭证、可信 IP 与获客助手权限均可用"):p.warning((t==null?void 0:t.message)||"API 权限可用,但当前应用还没有创建官方获客链接")}catch(t){p.error((t==null?void 0:t.message)||"获客助手 API 验证失败")}finally{X.value=!1}}async function Ke(){await S(),$.value==="customer-stats"&&await z()}function B(t,e){for(const s of e)if((t==null?void 0:t[s])!==void 0&&(t==null?void 0:t[s])!==null&&(t==null?void 0:t[s])!==""){const o=Number(t[s]);return Number.isFinite(o)?o:0}return 0}async function z(){var t,e;G.value=!0;try{const s=await nn({page_no:x.page_no,page_size:x.page_size,promotion_link_id:N.link_id?Number(N.link_id):void 0,userid:N.userid||void 0,chat_status:N.chat_status===""?void 0:N.chat_status==="messaged"?1:N.chat_status==="unknown"?2:0}),o=(s==null?void 0:s.summary)||(s==null?void 0:s.stats)||{},k=B(o,["customer_count","total_customers","customer_total","total"]),f=B(o,["messaged_customer_count","started_chat_count","chat_customer_count","message_customer_count","chatting_customers"]),A=["message_customer_rate","chat_customer_rate","messaged_rate","chat_rate"],Q=A.some(P=>(o==null?void 0:o[P])!==void 0&&(o==null?void 0:o[P])!==null&&(o==null?void 0:o[P])!=="");Object.assign(b.summary,{customer_count:k,messaged_customer_count:f,message_customer_rate:Q?B(o,A):k?f/k*100:0,received_message_count:B(o,["received_message_count","recv_msg_cnt","recv_msg_count","total_recv_msg_cnt","message_count"]),message_count_known_count:B(o,["message_count_known_count","exact_message_customer_count"])}),b.rows=Array.isArray(s==null?void 0:s.lists)?s.lists:Array.isArray(s==null?void 0:s.list)?s.list:Array.isArray(s==null?void 0:s.rows)?s.rows:[],x.total=Number((s==null?void 0:s.total)??(s==null?void 0:s.count)??((t=s==null?void 0:s.page)==null?void 0:t.total)??b.rows.length)||0;const w=(s==null?void 0:s.filters)||{},ee=(s==null?void 0:s.link_options)||(w==null?void 0:w.link_options)||(w==null?void 0:w.links),O=(s==null?void 0:s.member_options)||(w==null?void 0:w.member_options)||(w==null?void 0:w.members);Array.isArray(ee)&&(b.link_options=ee),Array.isArray(O)&&(b.member_options=O);const te=b.rows.reduce((P,v)=>{const R=v.last_synced_at||v.last_sync_time||v.synced_at||v.sync_time||"";return Number(R||0)>Number(P||0)?R:P},""),E=((e=s==null?void 0:s.meta)==null?void 0:e.last_synced_at)||(s==null?void 0:s.last_synced_at)||te||b.meta.last_synced_at||"";Object.assign(b.meta,(s==null?void 0:s.meta)||{},{last_synced_at:E?_e(E):""}),be.value=!0}catch(s){p.error((s==null?void 0:s.message)||"获客客户统计加载失败")}finally{G.value=!1}}function Ye(){x.page_no=1,z()}function He(){Object.assign(N,{link_id:"",userid:"",chat_status:""}),x.page_no=1,z()}function Ze(){x.page_no=1,z()}async function Ge(){var t,e,s;ue.value=!0;try{const o=await dn({promotion_link_id:N.link_id?Number(N.link_id):void 0}),k=Number((o==null?void 0:o.scanned)??(o==null?void 0:o.customer_scanned)??((t=o==null?void 0:o.customers)==null?void 0:t.scanned)??0),f=Number((o==null?void 0:o.created)??(o==null?void 0:o.customer_created)??((e=o==null?void 0:o.customers)==null?void 0:e.created)??0),A=Number((o==null?void 0:o.updated)??(o==null?void 0:o.customer_updated)??((s=o==null?void 0:o.customers)==null?void 0:s.updated)??0);p.success((o==null?void 0:o.message)||`客户同步完成:扫描 ${h(k)} 位,新增 ${h(f)} 位,更新 ${h(A)} 位`),x.page_no=1,await Promise.all([S(),z()])}catch(o){p.error((o==null?void 0:o.message)||"获客客户同步失败")}finally{ue.value=!1}}async function We(){if(!C.value)return p.warning("请先选择分流方案");ie.value=!0;try{const t=await rn({pool_id:Number(C.value.id)}),e=`扫描 ${Number((t==null?void 0:t.scanned)||0)} 条,新建 ${Number((t==null?void 0:t.created)||0)} 条,更新 ${Number((t==null?void 0:t.updated)||0)} 条,按权限跳过 ${Number((t==null?void 0:t.skipped)||0)} 条,失败 ${Number((t==null?void 0:t.failed)||0)} 条`;Number((t==null?void 0:t.scanned)||0)===0?await le.alert(`${(t==null?void 0:t.empty_reason)||"当前应用没有可同步的官方获客链接"}
+>>>>>>>> yz-0803:server/public/admin/assets/index-BtQeIy4O.js
${(t==null?void 0:t.suggestion)||""}`,"没有可同步的官方链接",{type:"warning",confirmButtonText:"知道了"}):t!=null&&t.failed?p.warning(e):p.success(e),await S()}catch(t){p.error((t==null?void 0:t.message)||"同步企业微信获客链接失败")}finally{ie.value=!1}}async function Xe(t){oe.value=Number(t.id);try{await mn({id:Number(t.id)}),p.success("企业微信官方详情已刷新"),await S()}catch(e){p.error((e==null?void 0:e.message)||"刷新官方详情失败")}finally{oe.value=0}}async function Qe(t,e){if(t==="local"){await we(e);return}if(t==="remote"){await le.confirm(`将永久删除企业微信后台中的“${e.name}”,现有推广页面会立即失效,且无法恢复。确认继续?`,"永久删除企业微信获客链接",{type:"error",confirmButtonText:"永久删除",cancelButtonText:"取消"});try{await cn({id:Number(e.id)}),p.success("企业微信获客链接已永久删除,本地记录已保留并停止分流"),await S()}catch(s){p.error((s==null?void 0:s.message)||"永久删除失败")}}}async function et(t,e){try{await _n({id:Number(t.id),status:e?1:0}),t.status=e?1:0,p.success(e?"链接已上线":"链接已下线"),await S()}catch(s){p.error((s==null?void 0:s.message)||"状态更新失败"),await S()}}async function we(t){await le.confirm(`仅从本地分流池移除“${t.name}”,不会删除企业微信后台的官方链接。确认继续?`,"从本地移除",{type:"warning"});try{await pn({id:Number(t.id)}),p.success("已从本地分流池移除"),await S()}catch(e){p.error((e==null?void 0:e.message)||"删除失败")}}function Ve(t){const e=Math.floor(Date.now()/1e3);return Number(t.remote_status)===2?{label:"企业微信已删除",className:"is-error"}:t.valid_customer_acquisition_link===!1?{label:"非获客助手链接",className:"is-error"}:Number(t.status)!==1?{label:"已下线",className:"is-muted"}:Number(t.active_start)>0&&Number(t.active_start)>e?{label:"尚未生效",className:"is-waiting"}:Number(t.active_end)>0&&Number(t.active_end){var t;return((t=H.value)==null?void 0:t.detail)??null}),Pl=V(()=>{var e;const t=(e=$.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null}),La=V(()=>`${m.dose_unit||"剂"}数`),je=g(!1),Bt=g(!1),pt=g(),ce=fe({id:0,amount:void 0}),Ol={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,s)=>{const i=Number(e);if(!Number.isFinite(i)||i<0){s(new Error("订单金额不能为负数"));return}s()},trigger:"blur"}]},Ce=g(null),ct=g(!1),Me=V(()=>ei(Ce.value)),qe=g(!1),Ht=g(!1),Wt=g(),le=fe({patient_name:"",phone:""}),Al={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function Rl(){const t=Pl.value,e=$.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){N.msgWarning("无处方数据");return}le.patient_name=String(t.patient_name??"").trim(),le.phone=String(t.phone??"").trim(),qe.value=!0,lt(()=>{var s;return(s=Wt.value)==null?void 0:s.clearValidate()})}function Tl(){le.patient_name="",le.phone=""}function $l(){var t;ce.id=0,ce.amount=void 0,(t=pt.value)==null||t.clearValidate()}function El(){const t=$.value;if(!ws(t)){N.msgWarning("当前订单状态不允许修改金额");return}ce.id=Number(t==null?void 0:t.id)||0;const e=Number(t==null?void 0:t.amount);ce.amount=Number.isFinite(e)?e:void 0,je.value=!0,lt(()=>{var s;return(s=pt.value)==null?void 0:s.clearValidate()})}async function mt(){var t;await((t=H.value)==null?void 0:t.refresh())}async function Dl(){var s;const t=Wt.value;if(!t)return;try{await t.validate()}catch{return}const e=(s=$.value)==null?void 0:s.id;if(e){Ht.value=!0;try{await ci({id:e,patient_name:le.patient_name.trim(),phone:le.phone.trim()}),qe.value=!1,await mt()}catch(i){console.error(i)}finally{Ht.value=!1}}}async function Ia(){const t=pt.value;if(!t)return;try{await t.validate()}catch{return}if(!ws($.value)){N.msgWarning("当前订单状态不允许修改金额");return}const e=ce.id;Bt.value=!0;try{await mi({id:e,amount:Number(ce.amount)}),N.msgSuccess("修改成功"),je.value=!1,await mt(),U()}catch{}finally{Bt.value=!1}}async function Fl(t){var e;await((e=H.value)==null?void 0:e.open(t))}const ke=g(!1),Gt=g(!1),Kt=g(!1),I=g(0),ne=g(null),re=g(!1),_t=g(""),Ul=V(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][I.value]??""),za=V(()=>{const t=ne.value,e=ti(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const s=e.map(i=>`${i.name} ${i.dosage}g`).join("、");return s.length>120?`${s.slice(0,120)}…`:s}),Ll=["recipient_name","recipient_phone","region","shipping_address"],he=g(),m=fe({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:""}),Il=V(()=>ai(Ut.value,m.service_package)),ja=V(()=>{const t=String(m.diagnosis_creator_dept_path||"").trim();return t?t.split(";").map(e=>e.trim()).filter(Boolean).map(e=>e.includes(" / ")?e.split(" / ").map(s=>s.trim()).filter(Boolean):e.split("/").map(s=>s.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Be=g([]),Qt=g(!1),j=g(0);function ft(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const Jt=V(()=>{const t=new Set(m.pay_order_ids.map(s=>Number(s)));let e=0;for(const s of Be.value)t.has(Number(s.id))&&(e+=Number(s.amount)||0);return Math.round(e*100)/100}),zl=V(()=>{const t=j.value;return t>0?Math.round(t*100)/100:0});async function jl(t,e){var s,i;if(!t){Be.value=[];return}try{Qt.value=!0;const u=await Ps({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),p=(u==null?void 0:u.lists)??((s=u==null?void 0:u.data)==null?void 0:s.lists)??[];Be.value=Array.isArray(p)?p:[];const c=Number((u==null?void 0:u.deposit_min_amount)??((i=u==null?void 0:u.data)==null?void 0:i.deposit_min_amount));!Number.isNaN(c)&&c>=0&&(j.value=c)}catch{Be.value=[]}finally{Qt.value=!1}}const Ml=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,s,i)=>{const u=j.value,p=Number(s);if(u>0&&(!Number.isFinite(p)||p0){const e=`已开启关联支付门槛(¥${B(j.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function ql(){var t;I.value=0,ne.value=null,re.value=!1,_t.value="",(t=he.value)==null||t.clearValidate()}function Bl(){I.value>0&&(I.value-=1)}async function Hl(){const t=he.value;if(t)try{I.value===0?await t.validateField([...Ll]):I.value===1&&j.value>0&&await t.validateField(["pay_order_ids"]),I.value<2&&(I.value+=1)}catch{}}async function Wl(t){if(!Ra(t)){Oa(t)&&Aa(t)&&!Pa()&&N.msgWarning("处方与支付单均已审核通过,创建人不可再编辑");return}I.value=0,ne.value=null,ke.value=!0,Gt.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e;if(!s){N.msgError("加载数据结构异常"),ke.value=!1;return}const i=s.prescription;i&&typeof i=="object"?ne.value=i:Number(s.prescription_id)>0?ne.value={id:Number(s.prescription_id),sn:"",patient_name:String(s.recipient_name||""),herbs:[]}:ne.value=null,m.id=s.id,m.prescription_id=Number(s.prescription_id)||0,m.diagnosis_id=Number(s.diagnosis_id)||0,m.assistant_id=Number(s.assistant_id)||0,m.diagnosis_creator_id=Number(s.diagnosis_creator_id)||0,m.diagnosis_creator_name=s.diagnosis_creator_name!=null&&s.diagnosis_creator_name!==""?String(s.diagnosis_creator_name):"",m.diagnosis_creator_dept_path=s.diagnosis_creator_dept_path!=null&&s.diagnosis_creator_dept_path!==""?String(s.diagnosis_creator_dept_path):"",m.recipient_name=s.recipient_name||"",m.recipient_phone=s.recipient_phone||"";const u=s.shipping_province||"",p=s.shipping_city||"",c=s.shipping_district||"";u||p||c?m.region=[u,p,c].filter(T=>T!==""):m.region=[],m.shipping_address=s.shipping_address||"",m.is_follow_up=s.is_follow_up?1:0,m.medication_days=s.medication_days>0?s.medication_days:void 0,m.dose_count=s.dose_count>0?s.dose_count:1,m.dose_unit=s.dose_unit||"剂",m.prev_staff=s.prev_staff||"",m.service_channel=s.service_channel||"",m.service_package=si(s.service_package),m.express_company=String(s.express_company||"auto")||"auto",m.tracking_number=s.tracking_number||"",m.fee_type=Number(s.fee_type)||3,j.value=Number(s.deposit_min_amount)||0;let h=Number(s.amount)||0;const M=Math.round((Number(s.linked_pay_paid_total)||0)*100)/100,b=j.value;if(b>0){const T=Math.round(b*100)/100;hNumber(T)).filter(T=>!Number.isNaN(T)):[],m.internal_cost=s.internal_cost!=null&&s.internal_cost!==""?Number(s.internal_cost):void 0;const J=String(s.gancao_reciperl_order_no||"").trim(),R=Number(s.gancao_submit_time||0);re.value=J!==""||R>0,_t.value=J||"",await jl(m.diagnosis_id,m.id),lt(()=>{var T;(T=he.value)==null||T.clearValidate()})}catch(e){N.msgError((e==null?void 0:e.message)||"加载异常"),ke.value=!1}finally{Gt.value=!1}}async function Gl(){if(!he.value)return;const t=re.value;if(!(!t&&I.value!==2)){t?he.value.clearValidate():await he.value.validate(),Kt.value=!0;try{const e={id:m.id,recipient_name:m.recipient_name,recipient_phone:m.recipient_phone,shipping_address:m.shipping_address,is_follow_up:m.is_follow_up,prev_staff:m.prev_staff||"",service_channel:m.service_channel||"",service_package:Array.isArray(m.service_package)?m.service_package.join(","):"",express_company:m.express_company||"auto",tracking_number:m.tracking_number||"",fee_type:m.fee_type,amount:m.amount,remark_extra:m.remark_extra||"",remark_assistant:m.remark_assistant||"",medication_days:m.medication_days!=null&&String(m.medication_days).trim()!==""?m.medication_days:"",dose_unit:m.dose_unit||"剂",dose_count:m.dose_count||1,internal_cost:m.internal_cost!=null&&String(m.internal_cost).trim()!==""?m.internal_cost:""};m.region&&m.region.length>0?(e.shipping_province=m.region[0]||"",e.shipping_city=m.region[1]||"",e.shipping_district=m.region[2]||""):(e.shipping_province="",e.shipping_city="",e.shipping_district=""),e.pay_order_ids=[...m.pay_order_ids],await Ss(e),N.msgSuccess("保存成功"),ke.value=!1,U()}catch{}finally{Kt.value=!1}}}const He=g(!1),Yt=g("prescription"),Xt=g(0),We=g(null),Pe=g(""),vt=g(!1),Kl=V(()=>Yt.value==="prescription"?"处方业务审核":"关联支付单审核");function Ma(t,e){Yt.value=e,Xt.value=t.id,We.value=t,Pe.value="",He.value=!0}async function qa(t){var e;if(t==="reject"&&!Pe.value.trim()){N.msgError("驳回或阻止时必须填写明确的审核意见");return}vt.value=!0;try{const s={id:Xt.value,action:t,remark:Pe.value.trim()};Yt.value==="prescription"?await _i(s):await fi(s),N.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),He.value=!1,U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(Xt.value))}catch{}finally{vt.value=!1}}async function Ql(t){try{await Rt.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await vi({id:t.id}),N.msgSuccess("撤回成功"),U()}catch{}}const gt=g(0),yt=g(!1),Oe=g(!1),F=g(null);function Zt(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,s=Number(t.proces_cost)||0,i=Number(t.lis_cost)||0;return(e+s+i).toFixed(2)}function Jl(t,e){const s=parseFloat(Zt(t))||0,i=Number(e)||0;return i<=0?"—":(s/i*100).toFixed(2)}function Yl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((s,i)=>s+(Number(i.quantity)||0),0).toFixed(0)}async function Xl(){if(!m.id){N.msgError("请先保存订单");return}Oe.value=!0;try{const t=await Ns({id:m.id,dose_count:m.dose_count||1,medication_days:m.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(F.value=e,yt.value=!0,N.msgSuccess("预下单测试成功"))}catch{}finally{Oe.value=!1}}async function Zl(){var t,e;if(!((t=$.value)!=null&&t.id)){N.msgError("订单数据不存在");return}Oe.value=!0;try{const s=await Ns({id:$.value.id,dose_count:$.value.dose_count||1,medication_days:$.value.medication_days||void 0}),i=(s==null?void 0:s.data)??s;if(i&&i.success&&(F.value=i,yt.value=!0,Dt()&&i.fee)){const u=Zt(i.fee);try{const p=await Et({id:$.value.id}),c=(p==null?void 0:p.data)??p;if(c!=null&&c.id){const h=c.service_package,M=Array.isArray(h)?h.join(","):String(h||"");await Ss({id:c.id,recipient_name:c.recipient_name||"",recipient_phone:c.recipient_phone||"",shipping_province:c.shipping_province||"",shipping_city:c.shipping_city||"",shipping_district:c.shipping_district||"",shipping_address:c.shipping_address||"",is_follow_up:c.is_follow_up?1:0,medication_days:c.medication_days!=null&&String(c.medication_days).trim()!==""?c.medication_days:"",dose_unit:c.dose_unit||"剂",dose_count:c.dose_count>0?c.dose_count:1,prev_staff:c.prev_staff||"",service_channel:c.service_channel||"",service_package:M,express_company:c.express_company||"auto",tracking_number:c.tracking_number||"",fee_type:Number(c.fee_type)||3,amount:Number(c.amount)||0,remark_extra:c.remark_extra||"",remark_assistant:c.remark_assistant||"",internal_cost:u,pay_order_ids:Array.isArray(c.pay_order_ids)?c.pay_order_ids:[]}),N.msgSuccess("内部成本已按预报价总计更新"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(c.id))}}catch{}}}catch{}finally{Oe.value=!1}}async function Ba(t){var i;const s=Y(t.ship_mode)==="direct"?"洛阳药房":"甘草药房";try{await Rt.confirm(`将把本单关联处方提交至${s},提交成功后不可切换发货药房。确定继续?`,"上传药房",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),gt.value=t.id;const u=await gi({id:t.id}),p=(u==null?void 0:u.data)??u,c=(p==null?void 0:p.pharmacy_order_no)!=null?String(p.pharmacy_order_no):(p==null?void 0:p.recipel_order_no)!=null?String(p.recipel_order_no):"";N.msgSuccess(c?`上传成功,${s}单号:${c}`:"上传成功"),U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t.id))}catch{}finally{gt.value=0}}Hn(async()=>{await Ws(),await Gs(),await Bs(),ml(),await lt(),U()});const Ge=g(!1),bt=g(!1),ea=g(0),me=fe({express_company:"auto",tracking_number:""});function en(t){ea.value=t.id,me.express_company=String(t.express_company||"auto")||"auto",me.tracking_number=String(t.tracking_number||""),Ge.value=!0}async function Ha(){var t;if(!me.tracking_number.trim()){N.msgError("请填写快递单号");return}bt.value=!0;try{await yi({id:ea.value,express_company:me.express_company||"auto",tracking_number:me.tracking_number.trim()}),N.msgSuccess("快递单号已保存"),Ge.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(ea.value))}catch{}finally{bt.value=!1}}const we=g(!1),xt=g(!1),Ae=g(0),W=fe({ship_mode:"gancao",express_company:"auto",tracking_number:""});function tn(t){var e;return Mt((e=$.value)==null?void 0:e.id,t.id)?Y($.value.ship_mode):Y(t.ship_mode)}function Wa(t){Ae.value=Number(t.id),W.ship_mode=tn(t),W.express_company=String(t.express_company||"auto")||"auto",W.tracking_number=String(t.tracking_number||""),we.value=!0}da(()=>{var t;return(t=$.value)==null?void 0:t.ship_mode},t=>{var e;!we.value||!Ae.value||!Mt((e=$.value)==null?void 0:e.id,Ae.value)||(W.ship_mode=Y(t))});async function Ga(){var t;if(!W.tracking_number.trim()){N.msgError("请先填写快递单号再确认发货");return}xt.value=!0;try{await bi({id:Ae.value,ship_mode:Y(W.ship_mode),express_company:W.express_company||"auto",tracking_number:W.tracking_number.trim()}),N.msgSuccess("确认发货成功,订单已进入「已发货」状态"),we.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ae.value))}catch{}finally{xt.value=!1}}const an=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],Re=g(!1),Te=g(0),ye=g(3),Ke=g(!1),Qe=g(!1),de=g([]),ta=g(),ee=fe({reason:"",refund_amount:void 0}),be=g(0),sn=V(()=>aa(de.value)),ln=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=be.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));let Je=0;function nn(){var t;Te.value=0,de.value=[],Qe.value=!1,ee.reason="",ee.refund_amount=void 0,be.value=0,(t=ta.value)==null||t.clearValidate(),Je+=1,Ce.value=null,ct.value=!1}async function rn(t){if(!t){de.value=[];return}Qe.value=!0;try{const e=await Et({id:t}),s=(e==null?void 0:e.data)??e??null,i=s==null?void 0:s.linked_pay_orders;de.value=Array.isArray(i)?i:[];const u=aa(de.value),p=Number(s==null?void 0:s.paid)||0;be.value=u>0?u:p,ee.refund_amount=be.value}catch{de.value=[],be.value=0}finally{Qe.value=!1}}async function on(t){const e=Number(t.id),s=String(t.tracking_number||"").trim();if(!e||!s)return;const i=++Je;ct.value=!0,Ce.value=null;try{const u=String(t.recipient_phone||"").replace(/\D/g,""),p={id:e,express_company:String(t.express_company||"auto")||"auto"};u.length>=4&&(p.phone_tail=u);const c=await Ci(p);if(i!==Je||Te.value!==e)return;Ce.value=ni(c,s,e)}catch{if(i!==Je||Te.value!==e)return;Ce.value=null}finally{i===Je&&Te.value===e&&(ct.value=!1)}}async function un(){var e,s,i;const t=Te.value;if(t){if(ye.value===10){if(!await((e=ta.value)==null?void 0:e.validate().catch(()=>!1)))return;Ke.value=!0;try{await Cs({id:t,reason:ee.reason.trim(),refund_amount:Number(ee.refund_amount)}),N.msgSuccess("退款成功"),Re.value=!1,U(),await((s=H.value)==null?void 0:s.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}return}Ke.value=!0;try{await xi({id:t,fulfillment_status:ye.value}),N.msgSuccess("订单状态已更新"),Re.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}}}function aa(t){let e=0;for(const s of t||[]){const i=Number(s==null?void 0:s.status);(i===2||i===5)&&(e+=Number(s==null?void 0:s.amount)||0)}return Math.round(e*100)/100}const Ye=g(!1),sa=g(0),la=g(!1),na=g(),ie=g(0),Q=fe({reason:"",refund_amount:void 0}),dn=V(()=>{const t=B(ie.value),e=B(Q.refund_amount);return Number(Q.refund_amount)>=ie.value-.009?`确认全额退款 ¥${t}:关联收款将标记已退款,本单已付清零,且不可撤销。`:`确认部分退款 ¥${e}(可退上限 ¥${t}):将扣减本单已付,并按金额依次标记关联收款已退款。`}),pn=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=ie.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));function cn(){var t;sa.value=0,Q.reason="",Q.refund_amount=void 0,ie.value=0,(t=na.value)==null||t.clearValidate()}async function Ka(t){sa.value=t.id,Q.reason="",Q.refund_amount=void 0,ie.value=0,Ye.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e??null,i=Array.isArray(s==null?void 0:s.linked_pay_orders)?s.linked_pay_orders:[],u=aa(i),p=Number(s==null?void 0:s.paid)||0;ie.value=u>0?u:p,Q.refund_amount=ie.value}catch{ie.value=0}}async function mn(){var s,i;const t=sa.value;if(!(!t||!await((s=na.value)==null?void 0:s.validate().catch(()=>!1)))){la.value=!0;try{await Cs({id:t,reason:Q.reason.trim(),refund_amount:Number(Q.refund_amount)}),N.msgSuccess("退款成功"),Ye.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{la.value=!1}}}const Xe=g(!1),kt=g(!1),Ze=g(0),ht=g(),ra=g(!1),wt=g([]),_n=V(()=>C.add_mode==="completion_only"?"不创建或关联支付单,仅提交完单申请,由审核人员在支付审核时处理。":C.add_mode==="create_express"?"通过快递代收创建新支付单(流转同付呗),或关联已存在但未绑定的支付单。":"可以通过付呗创建新支付单,或关联已存在但未绑定的支付单。"),C=fe({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),fn=V(()=>{const t={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}]};return C.add_mode==="create"||C.add_mode==="create_express"?(t.order_type=[{required:!0,message:"请选择费用类别",trigger:"change"}],t.pay_amount=[{validator:(e,s,i)=>{if(s==null||s===""){i(new Error("请输入支付金额"));return}const u=Number(s);!Number.isFinite(u)||u<0?i(new Error("金额不能小于 0")):i()},trigger:"blur"}]):C.add_mode==="link"&&(t.link_pay_order_ids=[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(e,s,i)=>{!Array.isArray(s)||s.length===0?i(new Error("请至少选择一个支付单")):i()}}]),t});async function vn(t,e=[]){var s;if(!t){wt.value=[];return}try{ra.value=!0;const i=await Ps({diagnosis_id:t}),u=(i==null?void 0:i.lists)??((s=i==null?void 0:i.data)==null?void 0:s.lists)??[],p=Array.isArray(u)?u.filter(c=>!e.includes(c.id)):[];wt.value=p}catch{wt.value=[]}finally{ra.value=!1}}function Qa(t){var i,u;if(!qt(t)){N.msgWarning("订单总金额与已付金额一致,无需补齐支付单");return}Ze.value=t.id,C.add_mode="create",C.order_type=3,C.pay_amount=void 0,C.pay_remark="",C.link_pay_order_ids=[],C.completion_request=0,Xe.value=!0;const e=t.diagnosis_id||((i=$.value)==null?void 0:i.diagnosis_id),s=t.pay_order_ids||((u=$.value)==null?void 0:u.pay_order_ids)||[];e&&vn(e,s)}async function gn(){var t;if(ht.value){await ht.value.validate(),kt.value=!0;try{if(C.add_mode==="completion_only")await ki({id:Ze.value}),N.msgSuccess("完单申请已提交,请等待支付审核");else if(C.add_mode==="create"||C.add_mode==="create_express")await hi({id:Ze.value,order_type:C.order_type,pay_amount:C.pay_amount,pay_remark:C.pay_remark||"",completion_request:C.completion_request,pay_create_type:C.add_mode==="create_express"?"express_cod":"fubei"}),N.msgSuccess("支付单已新增,请等待审核");else{const e=C.link_pay_order_ids;if(e.length===0){N.msgError("请至少选择一个支付单");return}await wi({id:Ze.value,pay_order_ids:e,completion_request:C.completion_request}),N.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}Xe.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ze.value))}catch{}finally{kt.value=!1}}}function Ja(t){Te.value=t.id,ye.value=3,ee.reason="",ee.refund_amount=void 0,de.value=[],Ce.value=null,Re.value=!0,rn(t.id),String(t.tracking_number||"").trim()&&on(t)}async function yn(t){var e;try{await Rt.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Vi({id:t.id}),N.msgSuccess("处方审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}async function bn(t){var e;try{await Rt.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Si({id:t.id}),N.msgSuccess("支付单审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}const xn="成都双流甄养堂互联网医院 处方笺",Vt=g(!1),St=g(!1),x=g(null),$e=g(""),G=g("internal"),Ya=g(null),Ee=g(!1);function Xa(t,e,s){const i=t.prescription_type||"浓缩水丸",u=Number(t.times_per_day)>0?Number(t.times_per_day):3,p=t.dosage_amount!=null?Number(t.dosage_amount):10,c=t.dosage_unit||(i==="饮片"?"ml":"g"),h=t.usage_way||e||"温水送服",M=t.usage_time||s||"",b=[];if(b.push(`每天${u}次`),i==="浓缩水丸"){const te=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;b.push(`一次${te}袋`),b.push(`每袋${p}${c}`)}else b.push(`一次${p}${c}`);return b.push(h),M&&b.push(M),b.join(", ")}const et=V(()=>{var e;const t=(e=x.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),Nt=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="主方")),De=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="辅方")),Za=V(()=>{var t;return li((t=x.value)==null?void 0:t.dietary_taboo)}),es=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸")return null;const e=Number(t.medication_days??t.usage_days??t.dose_count),s=Number(t.times_per_day),i=Number(t.dosage_amount),u=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;return!Number.isFinite(e)||!Number.isFinite(s)||!Number.isFinite(i)||e<=0||s<=0||i<=0?null:e*s*i*u}),ts=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸"||!De.value.length)return null;const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸"),s=Number(t.medication_days??e.usage_days),i=Number(e.times_per_day),u=Number(e.dosage_amount),p=Number(e.dosage_bag_count)>0?Number(e.dosage_bag_count):1;return!Number.isFinite(s)||!Number.isFinite(i)||!Number.isFinite(u)||s<=0||i<=0||u<=0?null:s*i*u*p}),Ct=t=>String(t).padStart(2,"0"),kn=V(()=>{const t=x.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const s=String(e).length===10?Number(e)*1e3:Number(e),i=new Date(s);if(!isNaN(i.getTime()))return`${i.getFullYear()}-${Ct(i.getMonth()+1)}-${Ct(i.getDate())} ${Ct(i.getHours())}:${Ct(i.getMinutes())}`}return t.prescription_date||"—"}),hn=V(()=>{const t=x.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const s=String(t.visit_no??"").trim();return s||"—"}),wn=V(()=>{const t=x.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),as=V(()=>{const t=x.value;return t?String(t.order_no??"").trim():""}),Vn=V(()=>{const t=x.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let s=t.region;return Array.isArray(s)&&(s=s.filter(Boolean).join("")),s&&e.push(String(s)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),ss=V(()=>{var e;const t=Number((e=x.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Sn=V(()=>{const e=et.value.reduce((s,i)=>s+(Number(i==null?void 0:i.dosage)||0),0);return Ve(e)}),ls=t=>{const e=Number(t)||0;return Ve(e*ss.value)},Nn=V(()=>{const t=x.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return e==="饮片"?"饮片":/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),ns=V(()=>{const t=x.value;return t?t.usage_text?t.usage_text:Xa(t):"—"}),ia=V(()=>{const t=x.value;if(!t||!De.value.length)return"";const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸");return Xa({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),Cn=V(()=>{const t=es.value,e=ts.value,s=typeof t=="number"&&isFinite(t)&&t>0?t:0,i=typeof e=="number"&&isFinite(e)&&e>0?e:0,u=s+i;if(u>0)return Ve(u);const p=x.value;if(!p)return"";const c=p.out_pellet||p.total_weight;if(c&&Number(c)>0)return Ve(Number(c));const h=et.value;if(!h.length)return"";const M=h.reduce((b,te)=>b+(Number(te==null?void 0:te.dosage)||0),0);return Ve(M*ss.value)}),rs=V(()=>{const t=x.value;return t&&t.medical_advice||""}),is=V(()=>{const t=x.value;if(!t)return"";const e=[];return e.push(`共${et.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),os=V(()=>{const t=x.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),us=V(()=>{const t=Cn.value;if(!t)return"";const e=es.value,s=ts.value;return typeof e=="number"&&isFinite(e)&&e>0&&typeof s=="number"&&isFinite(s)&&s>0?`${t}克(主方 ${Ve(e)}克 + 辅方 ${Ve(s)}克)`:`${t}克`});function Ve(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function ds(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Pn(t){return t?ds(t):"—"}function On(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function An(t){return t==null||t===""?"—":`${t}岁`}function Rn(){cs(m)}function ps(t){return t.map(e=>`${String(e.name??"").trim()}:${Number(e.dosage)||0}`).sort().join("|")}function Tn(t,e){return!t.length||!e.length||t.length!==e.length?!1:ps(t)===ps(e)}function $n(t){if(!t||typeof t!="object")return"";const e=t;return String(e.prescription_name??e.library_name??"").trim()}async function En(t){const e=$n(t.aux_usage);if(e)return e;const i=(Array.isArray(t.herbs)?t.herbs:[]).filter(p=>_a(p==null?void 0:p.formula_type)==="辅方");if(!i.length)return"";const u=Number(t.creator_id)>0?Number(t.creator_id):0;if(!u)return"";try{const p=await Pi({page_no:1,page_size:200,formula_type:"辅方",prescribing_creator_id:u}),c=Array.isArray(p==null?void 0:p.lists)?p.lists:[];for(const h of c){const M=Array.isArray(h==null?void 0:h.herbs)?h.herbs:[];if(Tn(i,M))return String((h==null?void 0:h.prescription_name)??"").trim()}}catch{}return""}async function cs(t){if(!t.prescription_id){N.msgWarning("该订单未关联处方");return}Vt.value=!0,St.value=!0,x.value=null,$e.value="",G.value="internal";try{const e=await Ni({id:t.prescription_id}),s=(e==null?void 0:e.data)??e??null;if(s){const i=t.medication_days,u={...s};i!=null&&String(i).trim()!==""&&(u.medication_days=i),t.order_no&&!u.order_no&&(u.order_no=t.order_no),t.recipient_name&&!u.recipient_name&&(u.recipient_name=t.recipient_name),t.recipient_phone&&!u.recipient_phone&&(u.recipient_phone=t.recipient_phone),t.shipping_address&&!u.shipping_address&&(u.shipping_address=t.shipping_address),t.amount!=null&&u.order_amount==null&&(u.order_amount=t.amount),t.dose_count!=null&&String(t.dose_count).trim()!==""&&Number(t.dose_count)>0&&(u.dose_count=Number(t.dose_count)),t.dose_unit!=null&&String(t.dose_unit).trim()!==""&&(u.dose_unit=String(t.dose_unit));const p=t.linked_appointment;(!u.appointment_id||Number(u.appointment_id)<=0)&&p&&typeof p=="object"&&Number(p.id)>0&&(u.appointment_id=Number(p.id)),x.value=u,$e.value=await En(u)}else x.value=null,$e.value=""}catch(e){N.msgError((e==null?void 0:e.message)||"加载处方详情失败"),Vt.value=!1,$e.value=""}finally{St.value=!1}}async function Dn(t){const e=t.querySelectorAll('img[src^="http"]'),s=Array.from(e).map(async i=>{try{const u=await fetch(i.src,{mode:"cors"});if(!u.ok)return;const p=await u.blob(),c=await new Promise((h,M)=>{const b=new FileReader;b.onload=()=>h(b.result),b.onerror=M,b.readAsDataURL(p)});i.src=c}catch{}});await Promise.allSettled(s)}async function ms(){await lt();const t=Ya.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Dn(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),Lr(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 _s(){var s;const t=(s=x.value)==null?void 0:s.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function Fn(){if(x.value){Ee.value=!0;try{const t=await ms(),e=document.createElement("a");e.download=`${_s()}.png`,e.href=t.toDataURL("image/png"),e.click(),N.msgSuccess("图片已下载")}catch{N.msgError("下载图片失败")}finally{Ee.value=!1}}}async function Un(){if(x.value){Ee.value=!0;try{const t=await ms(),e=t.toDataURL("image/jpeg",.95),s=new Ur({orientation:"portrait",unit:"mm",format:"a4"}),i=210,u=297,p=i,c=t.height*p/t.width;if(c<=u)s.addImage(e,"JPEG",0,0,p,c);else{let h=c,M=0;for(;h>0;)s.addImage(e,"JPEG",0,M,p,c),h-=u,M-=u,h>0&&s.addPage()}s.save(`${_s()}.pdf`),N.msgSuccess("PDF已下载")}catch{N.msgError("下载PDF失败")}finally{Ee.value=!1}}}return(t,e)=>{const s=Gn,i=Kn,u=ar,p=tr,c=lr,h=sr,M=nr,b=rr,te=zr,J=er,R=or,T=ur,Pt=dr,Ot=cr,tt=ir,at=Ir,Se=fr,Fe=_r,ae=vr,X=gr,xe=yr,oa=kr,Ln=xr,z=wr,st=hr,In=Vr,zn=Cr,jn=Nr,Mn=Pr,Ue=Or,fs=Rr,qn=Ar,vs=Tr,pe=Er,ua=$r,_e=Zn,D=Wn("perms");return o(),f("div",Ei,[l(s,{class:"!border-none shadow-sm mb-4",shadow:"never"},{default:n(()=>[r("div",Di,[nt.value?(o(),f("div",Fi,[e[89]||(e[89]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),f(O,null,L(el,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.prescription_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>al(a.value)},[r("span",Li,d(a.label),1)],10,Ui)),64))])):v("",!0),r("div",Ii,[e[90]||(e[90]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),f(O,null,L(tl,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.payment_slip_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>sl(a.value)},[r("span",ji,d(a.label),1)],10,zi)),64))]),r("div",Mi,[e[91]||(e[91]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),f(O,null,L(Ks,a=>r("div",{key:"fs-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.fulfillment_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Qs(a.value)},[r("span",Bi,d(a.label),1)],10,qi)),64))]),r("div",Hi,[e[92]||(e[92]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),f(O,null,L(Js,a=>r("div",{key:"sm-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.supply_mode===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ys(a.value)},[r("span",Gi,d(a.label),1)],10,Wi)),64))]),r("div",Ki,[e[93]||(e[93]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),f(O,null,L(Xs,a=>r("div",{key:"ec-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.express_company===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Zs(a.value)},[r("span",Ji,d(a.label),1)],10,Qi)),64))])])]),_:1}),l(s,{class:"!border-none po-filter-card shadow-sm",shadow:"never"},{default:n(()=>[A((o(),f("div",Yi,[r("div",Xi,[e[94]||(e[94]=r("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)),r("div",Zi,[r("div",null,[r("div",eo,[l(i,{size:16,class:"text-sky-500"},{default:n(()=>[l(w(Qn))]),_:1}),_(" "+d(ue.value.orderHeading),1)]),r("div",to,[r("div",ao," ¥"+d(ue.value.orderPerformanceStr),1),r("div",so,[r("span",null,"合计 ¥"+d(ue.value.orderStr),1),r("span",lo,"已取消 ¥"+d(ue.value.orderCancelledStr),1)])])]),r("div",no,[l(i,{size:20},{default:n(()=>[l(w(Jn))]),_:1})])]),r("p",ro,d(ue.value.periodLine),1)]),r("div",io,[e[95]||(e[95]=r("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)),r("div",oo,[r("div",null,[r("div",uo,[l(i,{size:16,class:"text-emerald-500"},{default:n(()=>[l(w(Yn))]),_:1}),_(" "+d(ue.value.payHeading),1)]),r("div",po,[r("div",co," ¥"+d(ue.value.payPerformanceStr),1),r("div",mo,[r("span",null,"合计 ¥"+d(ue.value.payStr),1),r("span",_o,"已取消 ¥"+d(ue.value.payCancelledStr),1)])])]),r("div",fo,[l(i,{size:20},{default:n(()=>[l(w(Xn))]),_:1})])]),r("p",vo,d(ue.value.periodLine),1)])])),[[_e,w(Z).loading]]),l(J,{class:"ls-form",model:y,inline:""},{default:n(()=>[l(jr,{"time-type":w(ze),"onUpdate:timeType":e[0]||(e[0]=a=>pa(ze)?ze.value=a:null),"date-range":w(It),"onUpdate:dateRange":e[1]||(e[1]=a=>pa(It)?It.value=a:null),label:"创建时间",variant:"inline","show-all":"","picker-width":"230px",onTimeTypeChange:ol,onCustomChange:ul},null,8,["time-type","date-range"]),l(p,{class:"w-[260px]",label:"订单号"},{default:n(()=>[l(u,{modelValue:y.order_no,"onUpdate:modelValue":e[2]||(e[2]=a=>y.order_no=a),placeholder:"业务订单号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[140px]",label:"处方ID"},{default:n(()=>[l(u,{modelValue:y.prescription_id,"onUpdate:modelValue":e[3]||(e[3]=a=>y.prescription_id=a),placeholder:"处方ID",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"患者"},{default:n(()=>[l(u,{modelValue:y.patient_keyword,"onUpdate:modelValue":e[4]||(e[4]=a=>y.patient_keyword=a),placeholder:"姓名 / 手机号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"快递"},{default:n(()=>[l(u,{modelValue:y.express_keyword,"onUpdate:modelValue":e[5]||(e[5]=a=>y.express_keyword=a),placeholder:"快递单号 / 公司",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),Fs.value?(o(),k(p,{key:0,class:"w-[200px]",label:"下单人"},{default:n(()=>[l(h,{modelValue:y.audit_admin_id,"onUpdate:modelValue":e[6]||(e[6]=a=>y.audit_admin_id=a),clearable:"",filterable:"",placeholder:"全部下单人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(ga.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})):v("",!0),l(p,{class:"w-[200px]",label:"医生"},{default:n(()=>[l(h,{modelValue:y.doctor_id,"onUpdate:modelValue":e[7]||(e[7]=a=>y.doctor_id=a),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Lt.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:n(()=>[l(M,{modelValue:y.assistant_dept_id,"onUpdate:modelValue":e[8]||(e[8]=a=>y.assistant_dept_id=a),data:ot.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:Ms,placeholder:"医助部门(选父级含子级)",onChange:_l},null,8,["modelValue","data"])]),_:1}),l(p,{class:"w-[200px]",label:"医助"},{default:n(()=>[l(h,{modelValue:y.assistant_id,"onUpdate:modelValue":e[9]||(e[9]=a=>y.assistant_id=a),clearable:"",filterable:"",placeholder:"订单创建人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Sa.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[160px]",label:"服务渠道"},{default:n(()=>[l(h,{modelValue:y.service_channel,"onUpdate:modelValue":e[10]||(e[10]=a=>y.service_channel=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[140px]",label:"辅方"},{default:n(()=>[l(h,{modelValue:y.has_aux_formula,"onUpdate:modelValue":e[11]||(e[11]=a=>y.has_aux_formula=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"含辅方",value:"1"}),l(c,{label:"不含辅方",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,null,{default:n(()=>[l(b,{type:"primary",onClick:w(K)},{default:n(()=>[...e[96]||(e[96]=[_("查询",-1)])]),_:1},8,["onClick"]),l(b,{onClick:vl},{default:n(()=>[...e[97]||(e[97]=[_("重置",-1)])]),_:1}),A(l(te,{class:"ml-2.5","fetch-fun":w(ri),params:pl.value,"page-size":w(Z).size,"export-hint":"导出范围与上方筛选一致(履约状态、创建时间及其他条件均会生效)。含「自媒体渠道(挂号渠道来源)」:优先取该单关联处方登记的挂号;无则诊单下同患者挂号取 id 最大的一条(与前台挂号选择的记录一致);业绩侧栏带渠道筛选导出时与同页列表高亮挂号同源。「服务套餐」按字典 server_order 解析展示。「处方」导出主方/辅方药材明细;「主方/辅方服用方式、天数」与详情侧栏同口径(主方/辅方天数分别取处方 usage_days、辅方 aux_usage.usage_days;「天数」列为订单 medication_days)。「关联收款记录」与详情侧栏同源(已支付/已退款/待审核),每笔两行展示(摘要行+明细行),多笔空行分隔,单元格自动换行。「签收日期」与详情/业绩看板同源,仅读物流库(轨迹/签收时间):导出不再实时查快递100,速度只取决于数据库;签收时间由 `tcm:backfill-sign-time` 命令与物流自动更新定时任务落库,刚发货尚未同步的单子会暂时为空,待下次回填/定时任务刷新后显示。"},null,8,["fetch-fun","params","page-size"]),[[D,["tcm.prescriptionOrder/export"]]])]),_:1})]),_:1},8,["model"])]),_:1}),A((o(),k(s,{class:"!border-none mt-4 po-table-card shadow-sm",shadow:"never"},{default:n(()=>[r("div",go,[r("div",yo,[e[98]||(e[98]=r("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),r("span",bo,"共 "+d(w(Z).count)+" 条",1),ba.value?(o(),k(b,{key:0,type:"primary",plain:"",size:"small",class:"ml-3",disabled:ge.value.length===0,onClick:zs},{default:n(()=>[_(" 批量改派医助"+d(ge.value.length?`(${ge.value.length})`:""),1)]),_:1},8,["disabled"])):v("",!0)]),r("div",xo,[r("div",{class:q(["po-focus-board__item is-pending-rx",{"is-active":se.value==="pendingRx"}]),onClick:e[12]||(e[12]=a=>ut("pendingRx"))},[e[99]||(e[99]=r("span",{class:"po-focus-board__label"},"待处方审核",-1)),r("strong",ko,d(dt.value.pendingRx),1)],2),r("div",{class:q(["po-focus-board__item is-pending-pay",{"is-active":se.value==="pendingPay"}]),onClick:e[13]||(e[13]=a=>ut("pendingPay"))},[e[100]||(e[100]=r("span",{class:"po-focus-board__label"},"待支付审核",-1)),r("strong",ho,d(dt.value.pendingPay),1)],2),r("div",{class:q(["po-focus-board__item is-pending-ship",{"is-active":se.value==="pendingShip"}]),onClick:e[14]||(e[14]=a=>ut("pendingShip"))},[e[101]||(e[101]=r("span",{class:"po-focus-board__label"},"待发货",-1)),r("strong",wo,d(dt.value.pendingShip),1)],2),r("div",{class:q(["po-focus-board__item is-risk",{"is-active":se.value==="risk"}]),onClick:e[15]||(e[15]=a=>ut("risk"))},[e[102]||(e[102]=r("span",{class:"po-focus-board__label"},"重点异常",-1)),r("strong",Vo,d(dt.value.risk),1)],2)])]),l(tt,{data:w(Z).lists,size:"default",stripe:"",class:"po-data-table","row-class-name":fl,onSelectionChange:Is},{default:n(()=>[ba.value?(o(),k(R,{key:0,type:"selection",width:"44",selectable:()=>!0})):v("",!0),l(R,{label:"订单号","min-width":"178","show-overflow-tooltip":""},{default:n(({row:a})=>[r("div",So,[r("div",No,d(a.order_no||"—"),1),r("div",Co,[l(T,{size:"small",effect:"plain",type:w(Hr)(a)},{default:n(()=>[_(d(w(Wr)(a)),1)]),_:2},1032,["type"]),r("span",Po,"#"+d(a.id),1)])])]),_:1}),l(R,{label:"处方ID",prop:"prescription_id",width:"86"}),l(R,{label:"诊单ID",prop:"diagnosis_id",width:"86"}),l(R,{label:"收货人","min-width":"100"},{default:n(({row:a})=>[r("div",null,d(a.recipient_name||"—"),1),r("div",{class:q(["text-xs",w(ma)(a.recipient_phone,a.prescription_phone)?"text-red-600 font-semibold":"text-gray-400"])},[_(d(a.recipient_phone||"—")+" ",1),w(ma)(a.recipient_phone,a.prescription_phone)?(o(),f("span",Oo,"(与处方手机不一致)")):v("",!0)],2)]),_:1}),l(R,{label:"费用类别",width:"96"},{default:n(({row:a})=>[_(d(w(ks)(a.fee_type)),1)]),_:1}),l(R,{label:"金额","min-width":"100"},{default:n(({row:a})=>[r("div",Ao,[r("span",Ro,"¥"+d(a.amount),1),l(Pt,{placement:"top",width:200,trigger:"hover"},{reference:n(()=>[l(i,{class:"text-gray-400 cursor-pointer hover:text-primary"},{default:n(()=>[l(w(pr))]),_:1})]),default:n(()=>[r("div",To,[r("div",$o,[e[103]||(e[103]=r("span",{class:"text-gray-500"},"业务订单单据:",-1)),r("span",Eo,"¥"+d(a.amount),1)]),r("div",Do,[e[104]||(e[104]=r("span",{class:"text-gray-500"},"定金下限:",-1)),r("span",null,"¥"+d(w(B)(a.deposit_min_amount)),1)]),r("div",Fo,[e[105]||(e[105]=r("span",{class:"text-gray-500"},"实付(关联):",-1)),r("span",Uo,"¥"+d(w(B)(a.linked_pay_paid_total)),1)]),Dt()&&a.internal_cost!=null&&a.internal_cost!==""?(o(),f("div",Lo,[e[106]||(e[106]=r("span",{class:"text-gray-500"},"内部成本:",-1)),r("span",{class:q(["font-medium cursor-pointer select-none",oe.value?"text-orange-600":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[16]||(e[16]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${w(B)(a.internal_cost)}`:"****"),3)])):v("",!0)])]),_:2},1024)])]),_:1}),Dt()?(o(),k(R,{key:1,width:"100"},{header:n(()=>[r("span",{class:"cursor-pointer select-none hover:text-primary",title:"点击显示/隐藏内部成本",onClick:e[17]||(e[17]=Le(a=>oe.value=!oe.value,["stop"]))}," 内部成本 ")]),default:n(({row:a})=>[a.internal_cost!=null&&a.internal_cost!==""?(o(),f("span",{key:0,class:q(["cursor-pointer select-none",oe.value?"text-orange-600 font-medium":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[18]||(e[18]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${a.internal_cost}`:"****"),3)):(o(),f("span",Io,"—"))]),_:1})):v("",!0),l(R,{label:"处方审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.prescription_audit_status),size:"small",class:q(zt("rx",a))},{default:n(()=>[_(d(Na(a.prescription_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"支付单审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.payment_slip_audit_status),size:"small",class:q(zt("pay",a))},{default:n(()=>[_(d(Na(a.payment_slip_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"履约",width:"108"},{default:n(({row:a})=>[l(T,{type:w(Gr)(a.fulfillment_status),size:"small",class:q(zt("fulfillment",a))},{default:n(()=>[_(d(w(Kr)(a.fulfillment_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"关联支付单",width:"100"},{default:n(({row:a})=>[Number(a.linked_pay_order_count)>0?(o(),f("span",{key:0,class:"text-primary cursor-default",title:a.linked_pay_order_id?`#${a.linked_pay_order_id}…`:""},d(a.linked_pay_order_count)+" 笔 ",9,zo)):(o(),f("span",jo,"—"))]),_:1}),l(R,{label:"创建时间","min-width":"144"},{default:n(({row:a})=>[_(d(w(hs)(a.create_time)),1)]),_:1}),l(R,{label:"开方人",prop:"doctor_name",width:"90","show-overflow-tooltip":""}),l(R,{label:"创建人",prop:"creator_name",width:"90","show-overflow-tooltip":""}),l(R,{"min-width":"128","show-overflow-tooltip":""},{header:n(()=>[e[107]||(e[107]=r("span",null,"二中心·指派",-1)),l(Ot,{placement:"top","max-width":"320",content:"与诊单「指派记录」快照一致:仅当本条业务单在操作瞬间为快照中的「关联业务单」(创建人+创建时间命中)时显示。绿色=新医助在名称含「二中心」的部门及其下级;灰色=系统自动释放诊单医助。"},{default:n(()=>[l(i,{class:"ml-0.5 align-middle text-gray-400 cursor-help"},{default:n(()=>[l(w(mr))]),_:1})]),_:1})]),default:n(({row:a})=>[Number(a.po_assign_snapshot_hit)?Number(a.po_assign_is_release)?(o(),k(T,{key:1,type:"info",size:"small"},{default:n(()=>[...e[108]||(e[108]=[_("已释放",-1)])]),_:1})):Number(a.po_assign_to_er_center)?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[_(d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),k(T,{key:3,type:"warning",size:"small",effect:"plain"},{default:n(()=>[_(" 非二中心 "+d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),f("span",Mo,"—"))]),_:1}),l(R,{label:"操作",width:"310",fixed:"right"},{default:n(({row:a})=>[r("div",qo,[A((o(),k(b,{type:"primary",link:"",onClick:P=>Fl(a.id)},{default:n(()=>[_(d(Us.value),1)]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/detail"]]]),Ra(a)?A((o(),k(b,{key:0,type:"primary",link:"",onClick:P=>Wl(a)},{default:n(()=>[...e[109]||(e[109]=[_("编辑",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/edit"]]]):v("",!0),Cl(a)?A((o(),k(b,{key:1,type:"success",link:"",onClick:P=>en(a)},{default:n(()=>[...e[110]||(e[110]=[_("修改单号",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:2,type:"primary",link:"",onClick:P=>Wa(a)},{default:n(()=>[...e[111]||(e[111]=[_("确认发货",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:3,type:"success",link:"",onClick:P=>Qa(a)},{default:n(()=>[...e[112]||(e[112]=[_("补齐支付单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:4,type:"primary",link:"",onClick:P=>Ja(a)},{default:n(()=>[...e[113]||(e[113]=[_("完成订单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:5,type:"danger",link:"",onClick:P=>Ka(a)},{default:n(()=>[...e[114]||(e[114]=[_("退款",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0),kl(a)?A((o(),k(b,{key:6,type:"danger",link:"",onClick:P=>Ql(a)},{default:n(()=>[...e[115]||(e[115]=[_("撤回",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/withdraw"]]]):v("",!0),Ua(a)?A((o(),k(b,{key:7,type:"warning",link:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[116]||(e[116]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0)])]),_:1})]),_:1},8,["data"]),r("div",Bo,[l(at,{modelValue:w(Z),"onUpdate:modelValue":e[19]||(e[19]=a=>pa(Z)?Z.value=a:null),"page-sizes":[15,20,30,40,100,150,200],onChange:w(U)},null,8,["modelValue","onChange"])])]),_:1})),[[_e,w(Z).loading]]),l(qr,{ref_key:"detailDrawerRef",ref:H,"gancao-preview-loading":Oe.value,onUpdateAmount:El,onPatchRxPatient:Rl,onViewPrescription:e[20]||(e[20]=a=>$.value&&cs($.value)),onTestGancaoPreview:Zl,onViewPatient:Ts,onDetailChanged:w(U)},{"header-extra":n(({detail:a})=>[r("div",Ho,[e[119]||(e[119]=r("span",{class:"text-sm text-gray-500"},"发货类型",-1)),A((o(),k(Fe,{"model-value":Y(a.ship_mode),size:"small",disabled:jt.value||!Ea(a),onChange:Sl},{default:n(()=>[l(Se,{label:"gancao"},{default:n(()=>[...e[117]||(e[117]=[_("甘草药房",-1)])]),_:1}),l(Se,{label:"direct",disabled:$a(a)},{default:n(()=>[...e[118]||(e[118]=[_("洛阳药房",-1)])]),_:1},8,["disabled"])]),_:2},1032,["model-value","disabled"])),[[D,["tcm.prescriptionOrder/setShipMode"]]]),hl.value?v("",!0):(o(),k(T,{key:0,type:Y(a.ship_mode)==="direct"?"warning":"success",effect:"plain",round:""},{default:n(()=>[_(d(wl(a.ship_mode)),1)]),_:2},1032,["type"]))])]),"header-actions":n(({detail:a})=>[l(Br,{order:a,onResolved:Nl},null,8,["order"]),Ua(a)?A((o(),k(b,{key:0,type:"warning",size:"small",plain:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[120]||(e[120]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0),gl(a)?A((o(),k(b,{key:1,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"prescription")},{default:n(()=>[...e[121]||(e[121]=[_(" 处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),bl(a)?A((o(),k(b,{key:2,type:"info",size:"small",plain:"",onClick:P=>yn(a)},{default:n(()=>[...e[122]||(e[122]=[_(" 撤回处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),yl(a)?A((o(),k(b,{key:3,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"payment")},{default:n(()=>[...e[123]||(e[123]=[_(" 支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),xl(a)?A((o(),k(b,{key:4,type:"info",size:"small",plain:"",onClick:P=>bn(a)},{default:n(()=>[...e[124]||(e[124]=[_(" 撤回支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:5,type:"primary",size:"small",plain:"",onClick:P=>Wa(a)},{default:n(()=>[...e[125]||(e[125]=[_(" 确认发货 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:6,type:"success",size:"small",plain:"",onClick:P=>Qa(a)},{default:n(()=>[...e[126]||(e[126]=[_(" 关联支付单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:7,type:"primary",size:"small",plain:"",onClick:P=>Ja(a)},{default:n(()=>[...e[127]||(e[127]=[_(" 完成订单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:8,type:"danger",size:"small",plain:"",onClick:P=>Ka(a)},{default:n(()=>[...e[128]||(e[128]=[_(" 退款 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0)]),_:1},8,["gancao-preview-loading","onDetailChanged"]),l(X,{modelValue:je.value,"onUpdate:modelValue":e[23]||(e[23]=a=>je.value=a),title:"修改订单金额",width:"420px","destroy-on-close":"","close-on-click-modal":!1,onClosed:$l},{footer:n(()=>[l(b,{onClick:e[22]||(e[22]=a=>je.value=!1)},{default:n(()=>[...e[130]||(e[130]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Bt.value,onClick:Ia},{default:n(()=>[...e[131]||(e[131]=[_(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"updateAmountFormRef",ref:pt,model:ce,rules:Ol,"label-width":"96px",class:"pr-2",onSubmit:Le(Ia,["prevent"])},{default:n(()=>[l(p,{label:"当前金额"},{default:n(()=>{var a;return[r("div",Wo,"¥"+d(w(B)((a=$.value)==null?void 0:a.amount)),1)]}),_:1}),l(p,{label:"新金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:ce.amount,"onUpdate:modelValue":e[21]||(e[21]=a=>ce.amount=a),min:0,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[129]||(e[129]=r("div",{class:"text-xs text-gray-400 pl-[96px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(X,{modelValue:ke.value,"onUpdate:modelValue":e[46]||(e[46]=a=>ke.value=a),title:re.value?"修改物流信息(甘草订单)":"编辑业务订单",width:"940px",top:"4vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog",onClosed:ql},{footer:n(()=>[r("div",Pu,[re.value?v("",!0):(o(),f("div",Ou,[r("span",Au,"第 "+d(I.value+1)+" / 3 步",1),I.value===2&&j.value>0?(o(),f("span",Ru," 订单金额与关联支付单合计须 ≥ ¥"+d(w(B)(j.value)),1)):v("",!0)])),r("div",Tu,[l(b,{size:"large",onClick:e[45]||(e[45]=a=>ke.value=!1)},{default:n(()=>[...e[144]||(e[144]=[_("取消",-1)])]),_:1}),re.value?v("",!0):(o(),f(O,{key:0},[I.value>0?(o(),k(b,{key:0,size:"large",onClick:Bl},{default:n(()=>[...e[145]||(e[145]=[_("上一步",-1)])]),_:1})):v("",!0),I.value<2?(o(),k(b,{key:1,type:"primary",size:"large",onClick:Hl},{default:n(()=>[...e[146]||(e[146]=[_(" 下一步 ",-1)])]),_:1})):v("",!0)],64)),re.value||I.value===2?(o(),k(b,{key:1,type:"primary",size:"large",loading:Kt.value,onClick:Gl},{default:n(()=>[...e[147]||(e[147]=[_(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:n(()=>[A((o(),f("div",Go,[ne.value?(o(),f("div",Ko,[r("div",Qo,[e[132]||(e[132]=r("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),r("div",Jo,[r("span",Yo,"#"+d(ne.value.id),1),ne.value.sn?(o(),f("span",Xo,d(ne.value.sn),1)):v("",!0),r("span",Zo,d(ne.value.patient_name||"—"),1)])]),l(Ot,{content:za.value,placement:"bottom","show-after":300},{default:n(()=>[r("div",eu,d(za.value),1)]),_:1},8,["content"])])):v("",!0),re.value?(o(),k(xe,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4",title:"订单已提交甘草,仅可修改快递单号与承运商;地址、金额等变更请先走取消流程。"},br({_:2},[_t.value?{name:"default",fn:n(()=>[r("div",tu,"甘草处方单号:"+d(_t.value),1)]),key:"0"}:void 0]),1024)):v("",!0),re.value?v("",!0):(o(),f(O,{key:2},[l(Ln,{active:I.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:n(()=>[l(oa,{title:"患者与收货",description:"诊单与物流地址"}),l(oa,{title:"服务与支付单",description:"套餐与关联收款"}),l(oa,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),r("p",au,d(Ul.value),1)],64)),l(J,{ref_key:"editFormRef",ref:he,model:m,rules:Ml.value,"label-width":"108px",class:"create-order-form"},{default:n(()=>[re.value?(o(),k(st,{key:0,gutter:20},{default:n(()=>[l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",su,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[24]||(e[24]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[25]||(e[25]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1})]),_:1})):v("",!0),re.value?v("",!0):(o(),f(O,{key:1},[A(r("div",lu,[l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"收货人",prop:"recipient_name"},{default:n(()=>[l(u,{modelValue:m.recipient_name,"onUpdate:modelValue":e[26]||(e[26]=a=>m.recipient_name=a),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"收货手机",prop:"recipient_phone"},{default:n(()=>[l(u,{modelValue:m.recipient_phone,"onUpdate:modelValue":e[27]||(e[27]=a=>m.recipient_phone=a),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"省市区",prop:"region"},{default:n(()=>[l(In,{modelValue:m.region,"onUpdate:modelValue":e[28]||(e[28]=a=>m.region=a),options:it.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"详细地址",prop:"shipping_address"},{default:n(()=>[l(u,{modelValue:m.shipping_address,"onUpdate:modelValue":e[29]||(e[29]=a=>m.shipping_address=a),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===0]]),A(r("div",nu,[nt.value?(o(),k(st,{key:0,gutter:20,class:"mb-1"},{default:n(()=>[l(z,{span:24},{default:n(()=>[r("div",ru,[e[135]||(e[135]=r("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),m.prescription_id?(o(),k(b,{key:0,type:"primary",size:"small",link:"",onClick:Rn},{default:n(()=>[...e[133]||(e[133]=[_(" 详细 ",-1)])]),_:1})):v("",!0),m.id?(o(),k(b,{key:1,type:"warning",size:"small",link:"",loading:Oe.value,icon:w(Sr),onClick:Xl},{default:n(()=>[...e[134]||(e[134]=[_(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),r("span",iu,"ID: "+d(m.prescription_id||"—"),1)]),r("div",ou,[ja.value.length?(o(),f("div",uu,[e[136]||(e[136]=r("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),f(O,null,L(ja.value,(a,P)=>(o(),f("div",{key:P,class:"pl-0 min-w-0"},[a.length?(o(),k(jn,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:n(()=>[(o(!0),f(O,null,L(a,(S,E)=>(o(),k(zn,{key:E},{default:n(()=>[r("span",du,d(S),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),f("div",pu,"创建人所属部门:—"))])]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"复诊"},{default:n(()=>[l(Mn,{modelValue:m.is_follow_up,"onUpdate:modelValue":e[30]||(e[30]=a=>m.is_follow_up=a),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:n(()=>[r("div",cu,[l(ae,{modelValue:m.medication_days,"onUpdate:modelValue":e[31]||(e[31]=a=>m.medication_days=a),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[137]||(e[137]=r("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"上次医生"},{default:n(()=>[l(u,{modelValue:m.prev_staff,"onUpdate:modelValue":e[32]||(e[32]=a=>m.prev_staff=a),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:La.value,prop:"dose_count"},{default:n(()=>[l(ae,{modelValue:m.dose_count,"onUpdate:modelValue":e[33]||(e[33]=a=>m.dose_count=a),min:1,placeholder:La.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"剂量单位",prop:"dose_unit"},{default:n(()=>[l(h,{modelValue:m.dose_unit,"onUpdate:modelValue":e[34]||(e[34]=a=>m.dose_unit=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"剂",value:"剂"}),l(c,{label:"丸",value:"丸"}),l(c,{label:"袋",value:"袋"}),l(c,{label:"盒",value:"盒"}),l(c,{label:"瓶",value:"瓶"}),l(c,{label:"膏",value:"膏"}),l(c,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"服务渠道"},{default:n(()=>[l(h,{modelValue:m.service_channel,"onUpdate:modelValue":e[35]||(e[35]=a=>m.service_channel=a),class:"w-full",filterable:"","allow-create":"","default-first-option":"",clearable:"",placeholder:"可选或自定义输入"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"服务套餐"},{default:n(()=>[l(h,{modelValue:m.service_package,"onUpdate:modelValue":e[36]||(e[36]=a=>m.service_package=a),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:n(()=>[(o(!0),f(O,null,L(Il.value,a=>(o(),k(c,{key:a.value,label:a.name,value:a.value,disabled:a.status===0},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",mu,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[37]||(e[37]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[38]||(e[38]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"关联支付单",prop:"pay_order_ids",required:j.value>0},{default:n(()=>[l(h,{modelValue:m.pay_order_ids,"onUpdate:modelValue":e[39]||(e[39]=a=>m.pay_order_ids=a),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:j.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Qt.value},{default:n(()=>[(o(!0),f(O,null,L(Be.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id,class:"!h-auto py-1.5"},{default:n(()=>[r("div",_u,[r("div",fu,[r("span",vu,d(a.order_no),1),r("span",gu,"¥"+d(a.amount),1)]),r("div",yu,[r("span",bu,[_(d(ft(a.order_type))+" · "+d(w(Tt)(a)),1),a.remark?(o(),f(O,{key:0},[_(" · "+d(a.remark),1)],64)):v("",!0)]),r("span",xu,d(String(a.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),r("div",ku,[j.value>0?(o(),f(O,{key:0},[r("span",hu,"当前已开启关联支付门槛(¥"+d(w(B)(j.value))+"),须至少选择一笔支付单。",1),e[138]||(e[138]=r("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[140]||(e[140]=_(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),l(Ot,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:n(()=>[...e[139]||(e[139]=[r("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[ca,I.value===1]]),A(r("div",wu,[r("div",{class:q(["create-order-deposit-bar",Jt.value>=j.value?"is-ok":"is-warn"])},[r("div",Vu,[e[141]||(e[141]=r("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),r("strong",null,"¥"+d(w(B)(j.value)),1),r("span",Su,d(j.value>0?"须 ≥ 此值":"未设置"),1)]),e[143]||(e[143]=r("div",{class:"create-order-deposit-bar__sep"},null,-1)),r("div",Nu,[e[142]||(e[142]=r("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),r("strong",null,"¥"+d(w(B)(Jt.value)),1),r("span",Cu,d(Jt.value>=j.value?"已达标":"未达标"),1)])],2),l(st,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"费用类别",prop:"fee_type"},{default:n(()=>[l(h,{modelValue:m.fee_type,"onUpdate:modelValue":e[40]||(e[40]=a=>m.fee_type=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"总金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:m.amount,"onUpdate:modelValue":e[41]||(e[41]=a=>m.amount=a),min:zl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),A((o(),k(z,{span:12},{default:n(()=>[l(p,{label:"内部成本"},{default:n(()=>[l(ae,{modelValue:m.internal_cost,"onUpdate:modelValue":e[42]||(e[42]=a=>m.internal_cost=a),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[D,["finance.account_log/lists"]]]),l(z,{span:24},{default:n(()=>[A((o(),k(p,{label:"药房备注"},{default:n(()=>[l(u,{modelValue:m.remark_extra,"onUpdate:modelValue":e[43]||(e[43]=a=>m.remark_extra=a),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[D,["tcm.prescriptionOrder/editRemarkExtra"]]]),l(p,{label:"医助备注"},{default:n(()=>[l(u,{modelValue:m.remark_assistant,"onUpdate:modelValue":e[44]||(e[44]=a=>m.remark_assistant=a),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===2]])],64))]),_:1},8,["model","rules"])])),[[_e,Gt.value]])]),_:1},8,["modelValue","title"]),l(X,{modelValue:He.value,"onUpdate:modelValue":e[51]||(e[51]=a=>He.value=a),title:Kl.value,width:"480px","destroy-on-close":"",onClosed:e[52]||(e[52]=a=>Pe.value="")},{footer:n(()=>[l(b,{onClick:e[48]||(e[48]=a=>He.value=!1)},{default:n(()=>[...e[149]||(e[149]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:vt.value,onClick:e[49]||(e[49]=a=>qa("approve"))},{default:n(()=>[...e[150]||(e[150]=[_("同意通过",-1)])]),_:1},8,["loading"]),l(b,{type:"danger",loading:vt.value,onClick:e[50]||(e[50]=a=>qa("reject"))},{default:n(()=>[...e[151]||(e[151]=[_("驳回阻止",-1)])]),_:1},8,["loading"])]),default:n(()=>[We.value&&We.value.completion_request===1?(o(),k(xe,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:n(()=>[r("div",$u,[e[148]||(e[148]=r("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),r("div",Eu," 申请人:"+d(We.value.completion_request_by_name||"—"),1),r("div",Du," 申请时间:"+d(w(hs)(We.value.completion_request_time)),1)])]),_:1})):v("",!0),e[152]||(e[152]=r("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),l(u,{modelValue:Pe.value,"onUpdate:modelValue":e[47]||(e[47]=a=>Pe.value=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),l(X,{modelValue:Ge.value,"onUpdate:modelValue":e[56]||(e[56]=a=>Ge.value=a),title:"修改快递单号",width:"420px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[55]||(e[55]=a=>Ge.value=!1)},{default:n(()=>[...e[154]||(e[154]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:bt.value,onClick:Ha},{default:n(()=>[...e[155]||(e[155]=[_("保存单号",-1)])]),_:1},8,["loading"])]),default:n(()=>[A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ha,["prevent"])},{default:n(()=>[l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:me.express_company,"onUpdate:modelValue":e[53]||(e[53]=a=>me.express_company=a),class:"w-full",placeholder:"选择承运商"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:me.tracking_number,"onUpdate:modelValue":e[54]||(e[54]=a=>me.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:"",autofocus:""},null,8,["modelValue"])]),_:1}),e[153]||(e[153]=r("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[_e,bt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:we.value,"onUpdate:modelValue":e[60]||(e[60]=a=>we.value=a),title:"确认发货",width:"440px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[59]||(e[59]=a=>we.value=!1)},{default:n(()=>[...e[157]||(e[157]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:xt.value,onClick:Ga},{default:n(()=>[...e[158]||(e[158]=[_(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ga,["prevent"])},{default:n(()=>[l(p,{label:"发货方式"},{default:n(()=>[l(T,{type:Y(W.ship_mode)==="direct"?"warning":"success",effect:"plain",size:"default"},{default:n(()=>[_(d(Vl.value),1)]),_:1},8,["type"]),e[156]||(e[156]=r("span",{class:"text-xs text-gray-400 ml-2"},"请在订单详情顶部「发货类型」中设置,此处不可修改",-1))]),_:1}),l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:W.express_company,"onUpdate:modelValue":e[57]||(e[57]=a=>W.express_company=a),class:"w-full"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:W.tracking_number,"onUpdate:modelValue":e[58]||(e[58]=a=>W.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[_e,xt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Re.value,"onUpdate:modelValue":e[65]||(e[65]=a=>Re.value=a),title:"完成订单",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:nn},{footer:n(()=>[l(b,{onClick:e[64]||(e[64]=a=>Re.value=!1)},{default:n(()=>[...e[162]||(e[162]=[_("取消",-1)])]),_:1}),l(b,{type:ye.value===10?"danger":"primary",loading:Ke.value,onClick:un},{default:n(()=>[_(d(ye.value===10?"确认退款":"确定"),1)]),_:1},8,["type","loading"])]),default:n(()=>[A((o(),f("div",Fu,[Me.value.show?(o(),k(xe,{key:0,type:"error",effect:"dark",closable:!1,"show-icon":"",class:"mb-3 !items-start ring-2 ring-red-600/70",title:"物流异常:轨迹含拒收/退回等,请先核实处理再结案"},{default:n(()=>[r("div",Uu,[Me.value.keywords.length?(o(),f("div",Lu,[e[159]||(e[159]=r("span",{class:"text-red-100/90"},"命中:",-1)),(o(!0),f(O,null,L(Me.value.keywords,a=>(o(),k(T,{key:a,type:"danger",effect:"plain",size:"small",class:"!border-white/35 !text-white"},{default:n(()=>[_(d(a),1)]),_:2},1024))),128))])):v("",!0),Me.value.lines.length?(o(),f("ul",Iu,[(o(!0),f(O,null,L(Me.value.lines,(a,P)=>(o(),f("li",{key:P},d(a),1))),128))])):v("",!0),e[160]||(e[160]=r("div",{class:"text-red-100/85 border-t border-white/15 pt-1.5"}," 确认已协调拒收/退回后续(重发、退款、改址等)后再完成订单。 ",-1))])]),_:1})):v("",!0),e[161]||(e[161]=r("p",{class:"text-sm text-gray-600 mb-3"}," 请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总;选择「退款」时将关联收款单标记为已退款并清零本单已付。 ",-1)),l(h,{modelValue:ye.value,"onUpdate:modelValue":e[61]||(e[61]=a=>ye.value=a),class:"w-full",placeholder:"请选择"},{default:n(()=>[(o(),f(O,null,L(an,a=>l(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),ye.value===10?(o(),f(O,{key:1},[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mt-3 !items-start",title:"退款将处理本单全部关联收款单,已付总额清零,且不可撤销。"}),A((o(),f("div",zu,[de.value.length?(o(),f("div",ju,[r("div",Mu," 将退款的关联收款("+d(de.value.length)+" 笔 · 合计 ¥"+d(w(B)(sn.value))+") ",1),l(tt,{data:de.value,size:"small",border:"",stripe:"","max-height":"200"},{default:n(()=>[l(R,{prop:"order_no",label:"单号","min-width":"120","show-overflow-tooltip":""}),l(R,{label:"类型",width:"88"},{default:n(({row:a})=>[_(d(a.order_type_desc||w(ks)(a.order_type)),1)]),_:1}),l(R,{label:"金额",width:"88",align:"right"},{default:n(({row:a})=>[r("span",qu,"¥"+d(a.amount),1)]),_:1}),l(R,{label:"状态",width:"92",align:"center"},{default:n(({row:a})=>[l(T,{type:w(Qr)(a.status),size:"small"},{default:n(()=>[_(d(a.status_desc||w(Jr)(a.status)),1)]),_:2},1032,["type"])]),_:1})]),_:1},8,["data"])])):Qe.value?v("",!0):(o(),f("p",Bu," 当前无已关联的收款单;提交后仍将本单标记为「退款」并清零已付。 "))])),[[_e,Qe.value]]),l(J,{ref_key:"completeRefundFormRef",ref:ta,model:ee,rules:ln.value,"label-width":"88px",class:"mt-3"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:ee.refund_amount,"onUpdate:modelValue":e[62]||(e[62]=a=>ee.refund_amount=a),min:.01,max:be.value>0?be.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Hu," 可退上限 ¥"+d(w(B)(be.value)),1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:ee.reason,"onUpdate:modelValue":e[63]||(e[63]=a=>ee.reason=a),type:"textarea",rows:3,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])],64)):v("",!0)])),[[_e,ct.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Ye.value,"onUpdate:modelValue":e[69]||(e[69]=a=>Ye.value=a),title:"订单退款",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:cn},{footer:n(()=>[l(b,{onClick:e[68]||(e[68]=a=>Ye.value=!1)},{default:n(()=>[...e[163]||(e[163]=[_("取消",-1)])]),_:1}),l(b,{type:"danger",loading:la.value,onClick:mn},{default:n(()=>[...e[164]||(e[164]=[_(" 确认退款 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:dn.value},null,8,["title"]),l(J,{ref_key:"refundOrderFormRef",ref:na,model:Q,rules:pn.value,"label-width":"88px"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:Q.refund_amount,"onUpdate:modelValue":e[66]||(e[66]=a=>Q.refund_amount=a),min:.01,max:ie.value>0?ie.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Wu," 可退上限 ¥"+d(w(B)(ie.value))+"(默认全额);部分退款时按金额从关联收款单依次标记已退款,并扣减本单已付。 ",1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:Q.reason,"onUpdate:modelValue":e[67]||(e[67]=a=>Q.reason=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue"]),l(X,{modelValue:Xe.value,"onUpdate:modelValue":e[77]||(e[77]=a=>Xe.value=a),title:"补齐支付单",width:"600px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[78]||(e[78]=a=>{var P;return(P=ht.value)==null?void 0:P.clearValidate()})},{footer:n(()=>[l(b,{onClick:e[76]||(e[76]=a=>Xe.value=!1)},{default:n(()=>[...e[174]||(e[174]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:kt.value,onClick:gn},{default:n(()=>[_(d(C.add_mode==="completion_only"?"提交申请":"确认新增"),1)]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:_n.value,type:"info",closable:!1,"show-icon":"",class:"mb-4"},null,8,["title"]),A((o(),k(J,{ref_key:"addPayOrderFormRef",ref:ht,model:C,rules:fn.value,"label-width":"90px",class:"pr-2"},{default:n(()=>[l(p,{label:"添加方式",prop:"add_mode"},{default:n(()=>[l(Fe,{modelValue:C.add_mode,"onUpdate:modelValue":e[70]||(e[70]=a=>C.add_mode=a)},{default:n(()=>[l(Ue,{value:"create"},{default:n(()=>[...e[165]||(e[165]=[_("付呗",-1)])]),_:1}),l(Ue,{value:"create_express"},{default:n(()=>[...e[166]||(e[166]=[_("快递代收",-1)])]),_:1}),l(Ue,{value:"link"},{default:n(()=>[...e[167]||(e[167]=[_("关联已有",-1)])]),_:1}),l(Ue,{value:"completion_only"},{default:n(()=>[...e[168]||(e[168]=[_("直接完单申请",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),C.add_mode==="create"||C.add_mode==="create_express"?(o(),f(O,{key:0},[l(p,{label:"费用类别",prop:"order_type"},{default:n(()=>[l(h,{modelValue:C.order_type,"onUpdate:modelValue":e[71]||(e[71]=a=>C.order_type=a),class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"支付金额",prop:"pay_amount"},{default:n(()=>[l(ae,{modelValue:C.pay_amount,"onUpdate:modelValue":e[72]||(e[72]=a=>C.pay_amount=a),min:0,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元,可为 0)"},null,8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"pay_remark"},{default:n(()=>[l(u,{modelValue:C.pay_remark,"onUpdate:modelValue":e[73]||(e[73]=a=>C.pay_remark=a),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):C.add_mode==="completion_only"?(o(),k(xe,{key:1,type:"warning",closable:!1,"show-icon":"",class:"!mb-0"},{title:n(()=>[...e[169]||(e[169]=[_(" 不新增或关联支付单,仅向审核人员提交「完成订单」申请;提交后支付审核将变为待审核,审核通过后将自动结案。 ",-1)])]),_:1})):(o(),k(p,{key:2,label:"选择支付单",prop:"link_pay_order_id"},{default:n(()=>[l(h,{modelValue:C.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=a=>C.link_pay_order_ids=a),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:ra.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:n(()=>[(o(!0),f(O,null,L(wt.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id},{default:n(()=>[r("div",Gu,[r("div",Ku,[r("span",Qu,d(a.order_no),1),r("span",Ju,"¥"+d(a.amount),1)]),r("div",Yu,d(ft(a.order_type))+" · "+d(w(Tt)(a)),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[170]||(e[170]=r("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),C.add_mode!=="completion_only"?(o(),k(p,{key:3,label:"完单申请"},{default:n(()=>[l(Fe,{modelValue:C.completion_request,"onUpdate:modelValue":e[75]||(e[75]=a=>C.completion_request=a)},{default:n(()=>[l(Ue,{value:0},{default:n(()=>[...e[171]||(e[171]=[_("不申请",-1)])]),_:1}),l(Ue,{value:1},{default:n(()=>[...e[172]||(e[172]=[_("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[173]||(e[173]=r("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})):v("",!0)]),_:1},8,["model","rules"])),[[_e,kt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:qe.value,"onUpdate:modelValue":e[82]||(e[82]=a=>qe.value=a),title:"修改处方患者信息",width:"440px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:Tl},{footer:n(()=>[l(b,{onClick:e[81]||(e[81]=a=>qe.value=!1)},{default:n(()=>[...e[175]||(e[175]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ht.value,onClick:Dl},{default:n(()=>[...e[176]||(e[176]=[_(" 保存 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"patchRxPatientFormRef",ref:Wt,model:le,rules:Al,"label-width":"96px"},{default:n(()=>[l(p,{label:"患者姓名",prop:"patient_name"},{default:n(()=>[l(u,{modelValue:le.patient_name,"onUpdate:modelValue":e[79]||(e[79]=a=>le.patient_name=a),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),l(p,{label:"手机",prop:"phone"},{default:n(()=>[l(u,{modelValue:le.phone,"onUpdate:modelValue":e[80]||(e[80]=a=>le.phone=a),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(vs,{modelValue:Vt.value,"onUpdate:modelValue":e[84]||(e[84]=a=>Vt.value=a),size:"920px","close-on-click-modal":!1},{header:n(()=>[r("div",Xu,[e[179]||(e[179]=r("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),x.value&&!St.value?(o(),f("div",Zu,[l(b,{size:"small",loading:Ee.value,onClick:Fn},{default:n(()=>[...e[177]||(e[177]=[_(" 下载图片 ",-1)])]),_:1},8,["loading"]),l(b,{size:"small",loading:Ee.value,onClick:Un},{default:n(()=>[...e[178]||(e[178]=[_(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:n(()=>{var a,P;return[A((o(),f("div",ed,[x.value?(o(),k(qn,{key:0,modelValue:G.value,"onUpdate:modelValue":e[83]||(e[83]=S=>G.value=S),class:"mx-4 mt-2",style:{"margin-bottom":"0px","z-index":"1",position:"relative"}},{default:n(()=>[l(fs,{label:"药房联",name:"internal"}),l(fs,{label:"处方联",name:"user"})]),_:1},8,["modelValue"])):v("",!0),x.value?(o(),f("div",td,[Number(x.value.void_status)===1?(o(),k(T,{key:0,type:"danger",size:"small"},{default:n(()=>[...e[180]||(e[180]=[_("已作废",-1)])]),_:1})):Number(x.value.business_prescription_audit_rejected)===1?(o(),k(T,{key:1,type:"danger",size:"small"},{default:n(()=>[...e[181]||(e[181]=[_("业务订单已驳回",-1)])]),_:1})):Number(x.value.audit_status)===1?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[...e[182]||(e[182]=[_("已通过",-1)])]),_:1})):Number(x.value.audit_status)===0?(o(),k(T,{key:3,type:"warning",size:"small"},{default:n(()=>[...e[183]||(e[183]=[_("待审核",-1)])]),_:1})):(o(),k(T,{key:4,type:"danger",size:"small"},{default:n(()=>[...e[184]||(e[184]=[_("已驳回",-1)])]),_:1}))])):v("",!0),x.value&&Number(x.value.void_status)===1?(o(),f("div",ad," 作废人:"+d(x.value.void_by_name||"—")+",作废时间:"+d(Pn(x.value.void_time)),1)):x.value&&Number(x.value.business_prescription_audit_rejected)===1?(o(),f("div",sd,[e[185]||(e[185]=r("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),x.value.business_prescription_audit_remark?(o(),f("div",ld," 驳回意见:"+d(x.value.business_prescription_audit_remark),1)):v("",!0)])):x.value&&Number(x.value.audit_status)===2?(o(),f("div",nd,[e[186]||(e[186]=r("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),x.value.audit_remark?(o(),f("div",rd,"驳回意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0),x.value?(o(),f("div",{key:5,ref_key:"prescriptionSlipPrintRef",ref:Ya,class:"rx-paper"},[r("div",id,d(G.value==="internal"?"药房联":xn),1),r("div",od,[r("span",ud,d(G.value==="user"?"服药前请核对姓名、电话、医生等信息以及医嘱等要点":"服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点"),1),r("div",dd,[r("div",pd,[e[187]||(e[187]=r("span",{class:"rx-meta-label"},"日期",-1)),r("span",cd,d(kn.value),1)]),r("div",md,[e[188]||(e[188]=r("span",{class:"rx-meta-label"},"处方编号",-1)),r("span",_d,d(hn.value),1)]),r("div",fd,[e[189]||(e[189]=r("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),r("span",vd,d(wn.value),1)]),as.value?(o(),f("div",gd,[e[190]||(e[190]=r("span",{class:"rx-meta-label"},"业务单号",-1)),r("span",yd,d(as.value),1)])):v("",!0)])]),r("div",bd,[r("div",xd,[r("div",kd,[e[191]||(e[191]=r("span",{class:"rx-key"},"姓名",-1)),r("span",hd,d(x.value.patient_name||"—"),1)]),r("div",wd,[e[192]||(e[192]=r("span",{class:"rx-key"},"性别",-1)),r("span",Vd,d(On(x.value.gender)),1)]),r("div",Sd,[e[193]||(e[193]=r("span",{class:"rx-key"},"年龄",-1)),r("span",Nd,d(An(x.value.age)),1)]),r("div",Cd,[e[194]||(e[194]=r("span",{class:"rx-key"},"电话",-1)),r("span",Pd,d(x.value.phone||x.value.recipient_phone||"—"),1)])]),r("div",Od,[r("div",Ad,[e[195]||(e[195]=r("span",{class:"rx-key"},"收件信息",-1)),r("span",Rd,d(Vn.value),1)])]),r("div",Td,[r("div",$d,[e[196]||(e[196]=r("span",{class:"rx-key"},"临床诊断",-1)),r("span",Ed,d(x.value.clinical_diagnosis||"—"),1)])])]),r("div",Dd,[r("div",Fd,d(G.value==="internal"?"药房联":"处方联"),1),r("div",Ud,[e[199]||(e[199]=r("div",{class:"rx-rp-label"},"Rp.",-1)),r("div",Ld,[r("div",Id,[e[197]||(e[197]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)]),r("div",zd,[e[198]||(e[198]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)])])]),r("div",jd,[G.value==="internal"?(o(),f(O,{key:0},[Nt.value.length?(o(),f(O,{key:0},[e[200]||(e[200]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"main-"+E,class:"rx-herb-cell"},[r("span",Md,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",qd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[r("div",Bd,[e[201]||(e[201]=_(" 辅方",-1)),$e.value?(o(),f("span",Hd,"("+d($e.value)+")",1)):v("",!0)]),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"aux-"+E,class:"rx-herb-cell"},[r("span",Wd,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",Gd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0)],64)):(o(),f(O,{key:1},[Nt.value.length?(o(),f(O,{key:0},[e[202]||(e[202]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"user-main-"+E,class:"rx-herb-cell"},[r("span",Kd,d(S.name),1),r("span",Qd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[e[203]||(e[203]=r("div",{class:"rx-herb-section-label rx-herb-section-label--aux"},"辅方",-1)),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"user-aux-"+E,class:"rx-herb-cell"},[r("span",Jd,d(S.name),1),r("span",Yd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0)],64))])]),r("div",Xd,[G.value==="internal"?(o(),f(O,{key:0},[ia.value?(o(),f("p",Zd,"主服法:"+d(ns.value),1)):(o(),f("p",ep,"服法:"+d(ns.value),1)),ia.value?(o(),f("p",tp,"辅服法:"+d(ia.value),1)):v("",!0)],64)):v("",!0),rs.value?(o(),f("p",ap,"医嘱:"+d(rs.value),1)):v("",!0),Za.value?(o(),f("p",sp,"忌口:"+d(Za.value),1)):v("",!0),G.value==="internal"&&is.value?(o(),f("p",lp,"备注:"+d(is.value),1)):v("",!0),os.value?(o(),f("p",np," 药房备注:"+d(os.value),1)):v("",!0),G.value==="internal"&&us.value&&((a=x.value)==null?void 0:a.prescription_type)!=="饮片"?(o(),f("p",rp," 出丸:"+d(us.value),1)):v("",!0)]),r("div",ip,[r("div",{class:q(["rx-bot-row rx-bot-row-1",{"rx-bot-row-1--user":G.value==="user"}])},[r("div",op,[e[204]||(e[204]=r("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),r("div",up,[x.value.doctor_signature?(o(),f("img",{key:0,src:x.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,dp)):v("",!0),x.value.doctor_signature?v("",!0):(o(),f("span",pp,d(x.value.doctor_name||"—"),1))])]),G.value==="internal"?(o(),f("div",cp,[e[205]||(e[205]=r("span",{class:"rx-bot-meta-key"},"类型:",-1)),r("span",mp,d(Nn.value),1)])):v("",!0),r("div",_p,[e[206]||(e[206]=r("span",{class:"rx-bot-meta-key"},"天数:",-1)),r("span",fp,d(((P=$.value)==null?void 0:P.medication_days)!=null&&String($.value.medication_days).trim()!==""?$.value.medication_days+" 天":"—"),1)]),G.value==="internal"?(o(),f("div",vp,[e[207]||(e[207]=r("span",{class:"rx-bot-meta-key"},"剂量:",-1)),r("span",gp,d(Sn.value)+"克",1)])):v("",!0)],2)]),e[208]||(e[208]=r("div",{class:"rx-bot-row rx-hospital-row"},[r("div",{class:"rx-hospital-line"},"成都双流甄养堂互联网医院有限公司 联系方式:4001667339"),r("div",{class:"rx-hospital-line"},"地址:四川省成都市双流区黄甲街道黄龙大道二段280号")],-1))],512)):v("",!0),x.value&&(x.value.audit_by_name||x.value.audit_remark)?(o(),f("div",yp,[x.value.audit_by_name?(o(),f("div",bp,[_(" 审核人:"+d(x.value.audit_by_name)+" ",1),x.value.audit_time?(o(),f("span",xp,d(ds(x.value.audit_time)),1)):v("",!0)])):v("",!0),x.value.audit_remark?(o(),f("div",kp,"审核意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[_e,St.value]])]}),_:1},8,["modelValue"]),l(vs,{modelValue:yt.value,"onUpdate:modelValue":e[85]||(e[85]=a=>yt.value=a),title:"甘草预下单测试结果",size:"800px","destroy-on-close":""},{default:n(()=>{var a,P;return[F.value?(o(),f("div",hp,[l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[r("div",wp,[e[210]||(e[210]=r("span",{class:"font-semibold"},"价格信息",-1)),l(T,{type:"success"},{default:n(()=>[...e[209]||(e[209]=[_("预下单成功",-1)])]),_:1})])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"药材成本"},{default:n(()=>{var S;return[r("span",Vp,"¥"+d(((S=F.value.fee)==null?void 0:S.m_cost)||"0.00"),1)]}),_:1}),l(pe,{label:"制作费"},{default:n(()=>{var S;return[r("span",Sp,"¥"+d((((S=F.value.fee)==null?void 0:S.proces_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"物流费"},{default:n(()=>{var S;return[r("span",Np,"¥"+d((((S=F.value.fee)==null?void 0:S.lis_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"总计"},{default:n(()=>[r("div",null,[r("span",Cp," ¥"+d(Zt(F.value.fee)),1),A((o(),f("div",Pp,[e[211]||(e[211]=_(" 占订单总金额: ",-1)),r("span",Op,d(Jl(F.value.fee,F.value.amount)),1),F.value.amount>0?(o(),f("span",Ap,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[D,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[...e[212]||(e[212]=[r("span",{class:"font-semibold"},"配送信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"调配中心"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_name)||"—"),1)]}),_:1}),l(pe,{label:"调配中心ID"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_id)||"—"),1)]}),_:1}),l(pe,{label:"服用天数范围",span:2},{default:n(()=>{var S,E,gs,ys,bs,xs;return[_(d(((E=(S=F.value.result)==null?void 0:S.take_days)==null?void 0:E.min)||"—")+" - "+d(((ys=(gs=F.value.result)==null?void 0:gs.take_days)==null?void 0:ys.max)||"—")+" 天 (默认: "+d(((xs=(bs=F.value.result)==null?void 0:bs.take_days)==null?void 0:xs.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(a=F.value.result)==null?void 0:a.rule_check)!=null&&P.length?(o(),k(s,{key:0,shadow:"never",class:"mb-4"},{header:n(()=>[...e[213]||(e[213]=[r("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:n(()=>[r("div",Rp,d(F.value.result.rule_check.map(S=>S.msg).join(" ")),1)]),_:1})):v("",!0),l(s,{shadow:"never"},{header:n(()=>{var S,E;return[r("div",Tp,[e[214]||(e[214]=r("span",{class:"font-semibold"},"药材明细",-1)),r("span",$p,"共 "+d(((E=(S=F.value.result)==null?void 0:S.m_list)==null?void 0:E.length)||0)+" 味药",1)])]}),default:n(()=>{var S;return[l(tt,{data:((S=F.value.result)==null?void 0:S.m_list)||[],border:"",stripe:"","max-height":"400"},{default:n(()=>[l(R,{type:"index",label:"#",width:"50",align:"center"}),l(R,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),l(R,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:n(({row:E})=>[_(d(E.quantity)+d(E.unit),1)]),_:1}),l(R,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:n(({row:E})=>[_(" ¥"+d(Number(E.price).toFixed(4)),1)]),_:1}),l(R,{label:"小计",width:"100",align:"right"},{default:n(({row:E})=>[r("span",Ep," ¥"+d((Number(E.price)*Number(E.quantity)).toFixed(2)),1)]),_:1}),l(R,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:n(({row:E})=>[l(T,{type:E.is_available===1?"success":"danger",size:"small"},{default:n(()=>[_(d(E.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),l(R,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),l(s,{shadow:"never",class:"mt-4"},{header:n(()=>[...e[215]||(e[215]=[r("span",{class:"font-semibold"},"订单信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"订单号",span:2},{default:n(()=>[_(d(F.value.order_no||"—"),1)]),_:1}),l(pe,{label:"剂数"},{default:n(()=>[r("span",Dp,d(F.value.dose_count||"—")+"剂",1)]),_:1}),l(pe,{label:"单剂量"},{default:n(()=>{var S;return[r("span",Fp,d(Yl((S=F.value.result)==null?void 0:S.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),l(X,{modelValue:Ie.value,"onUpdate:modelValue":e[88]||(e[88]=a=>Ie.value=a),title:"批量改派医助",width:"440px","append-to-body":""},{footer:n(()=>[l(b,{onClick:e[87]||(e[87]=a=>Ie.value=!1)},{default:n(()=>[...e[218]||(e[218]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ft.value,onClick:js},{default:n(()=>[...e[219]||(e[219]=[_("确定改派",-1)])]),_:1},8,["loading"])]),default:n(()=>[r("div",Up,[e[216]||(e[216]=_(" 已选 ",-1)),r("strong",Lp,d(ge.value.length),1),e[217]||(e[217]=_(" 单,将订单「创建人(医助归属)」改派为: ",-1))]),l(h,{modelValue:rt.value,"onUpdate:modelValue":e[86]||(e[86]=a=>rt.value=a),clearable:"",filterable:"",placeholder:"选择目标医助",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Ne.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e[220]||(e[220]=r("p",{class:"text-xs text-gray-400 mt-2 leading-relaxed"}," 仅变更订单的业务归属(医助筛选 / 业绩口径),并写入操作日志;不影响处方、支付单及审核状态。已是该医助的订单会自动跳过。 ",-1))]),_:1},8,["modelValue"]),l(w(As),{ref_key:"diagnosisViewRef",ref:fa},null,512)])}}}),tc=Ri(zp,[["__scopeId","data-v-e7ad3e24"]]);export{tc as default};
+========
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-emC-q2iC.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BWNwZkyX.js","assets/index-C53kWH2_.js","assets/index-ynJZC2Ez.css","assets/perm-BICz51xi.js","assets/DailyMatrix-DiYUQo1w.js","assets/picker-Bo_aGeCY.js","assets/index-ByXR3YHf.js","assets/index-B3imPWFk.css","assets/index-ci6cz5MZ.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-ZgwwU4Et.js","assets/index-D0f1Mn00.css","assets/index-9XBsG-Cy.js","assets/file-Ci3F9EoX.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-C7qwIzjQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-BC4wO08v.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Dwk-zq8O.js","assets/RecordingPlaybackBlock-Cbli8dUQ.js","assets/RecordingVideoPlayer-PakpPQK-.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-OjhXvTzR.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-i8xnfggI.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-B9Qsv5NO.js","assets/doctor-CNnijzjL.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DcnSeCwS.js","assets/patient-cj6mW_46.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-PJG2qWT8.js","assets/PrescriptionOrderDetailDrawer-CL3jtI2P.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-Nz5F52Mm.js","assets/index-D25Fsd3W.js","assets/medicine-DWZ_n3IQ.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
+import{o as Os,Q as Bn,R as da,ap as Hn,n as lt,be as Wn,q as o,r as f,v as l,D as n,s as r,F as O,G as L,ae as q,T as d,P as v,bg as Gn,ac as A,w as Kn,u as w,ce as Qn,L as _,bH as Jn,bI as Yn,cf as Xn,bi as Zn,b9 as er,C as pa,b6 as tr,b7 as ar,b8 as At,O as k,bm as sr,bn as lr,bK as nr,K as rr,bj as ir,bk as or,br as ur,bY as dr,aw as Le,cg as pr,a1 as cr,ch as mr,bc as _r,bb as fr,J as vr,bt as gr,bh as yr,bM as br,b_ as xr,b$ as kr,c7 as hr,c8 as wr,ca as Vr,ad as ca,bA as Sr,U as Nr,S as Cr,I as Pr,bf as Or,Y as Ar,X as Rr,B as Tr,c0 as $r,c1 as Er,cb as Dr,al as Fr,M as g,p as V,ba as fe,e as Rt,cd as Ur,cc as Lr}from"./.pnpm-BadRMC3e.js";import{_ as Ir}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{_ as zr}from"./index.vue_vue_type_script_setup_true_lang-DILFg-Lp.js";import{L as jr,u as Mr}from"./useListTimeFilter-DAT-jls6.js";import qr from"./PrescriptionOrderDetailDrawer-CL3jtI2P.js";import{_ as Br}from"./GancaoSubmissionReconcileButton.vue_vue_type_script_setup_true_lang-Dj1Lr0Ug.js";import{z as Hr,A as Wr,s as ma,g as ks,b as B,B as Gr,a as Kr,f as hs,h as Tt,p as Qr,o as Jr,T as Yr,P as Xr,n as Zr,C as $t,y as ei,c as ws,u as ti,D as ai,E as si,F as _a,r as li,w as Vs,q as ni}from"./prescription-order-utils-B0fYlULc.js";import{x as ri,y as ii,g as oi,i as ui,t as di,z as pi,A as ci,B as mi,h as Et,C as Ss,D as _i,E as fi,F as vi,G as Ns,H as gi,I as yi,J as bi,K as Cs,L as xi,M as ki,N as hi,O as wi,P as Vi,Q as Si,k as Ni,f as Ps,c as Ci,o as Pi}from"./tcm-BWNwZkyX.js";import{u as Oi,i as N,m as Ai,_ as Ri}from"./index-C53kWH2_.js";import{d as Ti}from"./department-drKzCnRw.js";import{u as $i}from"./usePaging-DMqUvFG-.js";import"./index-ByXR3YHf.js";const Ei={class:"prescription-order-page prescription-order-list px-4 py-4 pb-8"},Di={class:"flex flex-col gap-3"},Fi={key:0,class:"flex items-center gap-2 flex-wrap"},Ui=["onClick"],Li={class:"font-medium"},Ii={class:"flex items-center gap-2 flex-wrap"},zi=["onClick"],ji={class:"font-medium"},Mi={class:"flex items-center gap-2 flex-wrap"},qi=["onClick"],Bi={class:"font-medium"},Hi={class:"flex items-center gap-2 flex-wrap"},Wi=["onClick"],Gi={class:"font-medium"},Ki={class:"flex items-center gap-2 flex-wrap"},Qi=["onClick"],Ji={class:"font-medium"},Yi={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},Xi={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Zi={class:"relative flex items-start justify-between gap-3"},eo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},to={class:"mt-2 space-y-1.5 min-w-0"},ao={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},so={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},lo={class:"text-slate-400"},no={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},ro={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},io={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},oo={class:"relative flex items-start justify-between gap-3"},uo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},po={class:"mt-2 space-y-1.5 min-w-0"},co={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},mo={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},_o={class:"text-slate-400"},fo={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},vo={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},go={class:"po-table-toolbar"},yo={class:"po-table-toolbar__title-wrap"},bo={class:"po-table-hint text-gray-400"},xo={class:"po-focus-board"},ko={class:"po-focus-board__value"},ho={class:"po-focus-board__value"},wo={class:"po-focus-board__value"},Vo={class:"po-focus-board__value"},So={class:"po-order-no-cell"},No={class:"po-order-no-main"},Co={class:"po-order-no-sub"},Po={class:"text-gray-400"},Oo={key:0,class:"ml-1"},Ao={class:"flex items-center gap-1"},Ro={class:"text-red-500 font-medium whitespace-nowrap"},To={class:"text-sm"},$o={class:"flex justify-between mb-1"},Eo={class:"font-medium text-red-500"},Do={class:"flex justify-between mb-1"},Fo={class:"flex justify-between mb-1"},Uo={class:"font-medium"},Lo={key:0,class:"flex justify-between"},Io={key:1},zo=["title"],jo={key:1},Mo={key:0,class:"text-gray-400"},qo={class:"flex items-center gap-1 flex-wrap"},Bo={class:"flex justify-end mt-4"},Ho={class:"flex items-center gap-2 ml-4 shrink-0"},Wo={class:"text-sm text-gray-700 font-medium"},Go={class:"create-order-dialog__inner"},Ko={key:0,class:"create-order-rx-card"},Qo={class:"create-order-rx-card__head"},Jo={class:"create-order-rx-card__meta"},Yo={class:"create-order-rx-card__id"},Xo={key:0,class:"create-order-rx-card__sn"},Zo={class:"create-order-rx-card__patient"},eu={class:"create-order-rx-card__herbs"},tu={class:"text-sm text-gray-700 mt-1"},au={class:"create-order-step-lead"},su={class:"flex gap-2 w-full"},lu={class:"create-order-step-panel"},nu={class:"create-order-step-panel"},ru={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},iu={class:"text-xs text-gray-400"},ou={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},uu={key:0,class:"space-y-1.5"},du={class:"text-gray-800 break-all"},pu={key:1,class:"text-gray-400"},cu={class:"flex items-center gap-1 w-full"},mu={class:"flex gap-2 w-full"},_u={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},fu={class:"flex items-center justify-between"},vu={class:"font-medium text-[13px] text-gray-800"},gu={class:"text-orange-500 font-medium ml-4"},yu={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},bu={class:"truncate pr-2"},xu={class:"shrink-0"},ku={class:"create-order-pay-hint text-gray-500"},hu={class:"text-amber-600 font-medium"},wu={class:"create-order-step-panel"},Vu={class:"create-order-deposit-bar__cell"},Su={class:"create-order-deposit-bar__sub"},Nu={class:"create-order-deposit-bar__cell"},Cu={class:"create-order-deposit-bar__sub"},Pu={class:"create-order-footer"},Ou={key:0,class:"create-order-footer__hint"},Au={class:"create-order-footer__step"},Ru={key:0,class:"create-order-footer__warn"},Tu={class:"create-order-footer__actions"},$u={class:"text-sm"},Eu={class:"text-gray-600"},Du={class:"text-gray-600"},Fu={class:"min-h-[52px]"},Uu={class:"text-xs leading-relaxed space-y-1.5"},Lu={key:0,class:"flex flex-wrap gap-1 items-center"},Iu={key:1,class:"list-disc pl-4 space-y-0.5 text-red-50"},zu={class:"mt-3"},ju={key:0,class:"rounded-lg border border-amber-200/80 bg-amber-50/50 p-3"},Mu={class:"text-xs font-semibold text-amber-900 mb-2"},qu={class:"text-red-500"},Bu={key:1,class:"text-xs text-gray-500 mt-2"},Hu={class:"text-xs text-gray-500 mt-1"},Wu={class:"text-xs text-gray-500 mt-1"},Gu={class:"flex flex-col gap-0.5 py-0.5"},Ku={class:"flex items-center justify-between"},Qu={class:"text-sm"},Ju={class:"text-orange-500 font-medium ml-4"},Yu={class:"text-xs text-gray-400"},Xu={class:"flex items-center justify-between w-full pr-2 gap-3"},Zu={key:0,class:"flex items-center gap-2 shrink-0"},ed={class:"rx-wrap"},td={key:1,class:"rx-statusbar"},ad={key:2,class:"rx-status rx-status-danger"},sd={key:3,class:"rx-status rx-status-danger"},ld={key:0,class:"mt-1"},nd={key:4,class:"rx-status rx-status-danger"},rd={key:0,class:"mt-1"},id={class:"rx-title"},od={class:"rx-notice"},ud={class:"rx-notice-text"},dd={class:"rx-notice-meta"},pd={class:"rx-meta-item"},cd={class:"rx-meta-value"},md={class:"rx-meta-item"},_d={class:"rx-meta-value"},fd={class:"rx-meta-item"},vd={class:"rx-meta-value"},gd={key:0,class:"rx-meta-item"},yd={class:"rx-meta-value"},bd={class:"rx-info"},xd={class:"rx-info-row"},kd={class:"rx-info-cell"},hd={class:"rx-val"},wd={class:"rx-info-cell"},Vd={class:"rx-val"},Sd={class:"rx-info-cell"},Nd={class:"rx-val"},Cd={class:"rx-info-cell"},Pd={class:"rx-val"},Od={class:"rx-info-row rx-info-row-full"},Ad={class:"rx-info-cell"},Rd={class:"rx-val"},Td={class:"rx-info-row rx-info-row-full"},$d={class:"rx-info-cell"},Ed={class:"rx-val"},Dd={class:"rx-rp"},Fd={class:"rx-watermark"},Ud={class:"rx-rp-head"},Ld={class:"rx-rp-cols-head"},Id={class:"rx-rp-col-head"},zd={class:"rx-rp-col-head"},jd={class:"rx-herbs"},Md={class:"rx-herb-name"},qd={class:"rx-herb-total"},Bd={class:"rx-herb-section-label rx-herb-section-label--aux"},Hd={key:0,class:"rx-herb-library-name"},Wd={class:"rx-herb-name"},Gd={class:"rx-herb-total"},Kd={class:"rx-herb-name"},Qd={class:"rx-herb-total"},Jd={class:"rx-herb-name"},Yd={class:"rx-herb-total"},Xd={class:"rx-text"},Zd={key:0},ep={key:1},tp={key:2},ap={key:1},sp={key:2},lp={key:3},np={key:4,class:"rx-text-warn"},rp={key:5,class:"rx-text-warn"},ip={class:"rx-bottom"},op={class:"rx-bot-cell rx-bot-doctor"},up={class:"rx-bot-doctor-body"},dp=["src"],pp={key:1,class:"rx-bot-doctor-name"},cp={key:0,class:"rx-bot-cell rx-bot-meta"},mp={class:"rx-bot-meta-val"},_p={class:"rx-bot-cell rx-bot-meta"},fp={class:"rx-bot-meta-val"},vp={key:1,class:"rx-bot-cell rx-bot-meta"},gp={class:"rx-bot-meta-val"},yp={key:6,class:"rx-audit"},bp={key:0},xp={key:0,class:"ml-2 text-gray-400"},kp={key:1,class:"mt-1"},hp={key:0,class:"px-4"},wp={class:"flex items-center justify-between"},Vp={class:"text-lg font-semibold text-orange-600"},Sp={class:"text-lg font-semibold text-blue-600"},Np={class:"text-lg font-semibold text-green-600"},Cp={class:"text-xl font-bold text-red-600"},Pp={class:"text-sm text-gray-500 mt-1.5"},Op={class:"font-medium text-gray-700"},Ap={key:0},Rp={class:"text-sm text-gray-700 leading-relaxed"},Tp={class:"flex items-center justify-between"},$p={class:"text-sm text-gray-500"},Ep={class:"font-medium text-orange-600"},Dp={class:"text-base font-medium"},Fp={class:"text-base font-medium"},Up={class:"text-sm text-gray-600 mb-3"},Lp={class:"text-primary"},Ip=Os({name:"prescriptionOrderList"}),zp=Os({...Ip,setup(jp){const As=Dr(()=>Fr(()=>import("./edit-emC-q2iC.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]))),ve=Oi(),Rs=Bn(),fa=g(null);function Ts(){var e,s;const t=Number((e=$.value)==null?void 0:e.diagnosis_id);if(!t){N.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(s=fa.value)==null||s.openViewOnly(t)}const $s=6,va=[3,8],Es=V(()=>{const t=ve.userInfo;if(!t||Number(t.root)===1)return!1;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes($s)?!va.some(s=>e.includes(s)):!1}),Ds=V(()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return va.some(s=>e.includes(s))}),Fs=V(()=>Es.value||Ds.value),ga=g([]),nt=V(()=>{const t=ve.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes(Yr)?e.some(s=>Xr.includes(s)):!0}),Us=V(()=>nt.value?"详情/审核":"详情"),Ls=[0,3,6],ya=[0,3],Dt=()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return Ls.some(s=>e.includes(s))},oe=g(!1),ba=V(()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return ya.some(s=>e.includes(s))}),ge=g([]);function Is(t){ge.value=Array.isArray(t)?t:[]}const Ie=g(!1),rt=g(""),Ft=g(!1);function zs(){if(ge.value.length===0){N.msgWarning("请先勾选要改派的订单");return}rt.value="",Ie.value=!0}async function js(){const t=Number(rt.value);if(!t){N.msgWarning("请选择目标医助");return}const e=ge.value.map(s=>Number(s.id)).filter(s=>s>0);if(e.length===0){N.msgWarning("请先勾选要改派的订单");return}Ft.value=!0;try{const s=await ii({order_ids:e,assistant_id:t}),i=Number((s==null?void 0:s.success)??0),u=Array.isArray(s==null?void 0:s.errors)?s.errors:[];let p=`已改派 ${i} 单`;u.length&&(p+=`;${u.join(";")}`),N.msgSuccess(p),Ie.value=!1,ge.value=[],U()}catch{}finally{Ft.value=!1}}const it=g([]),Ut=g([]),Lt=g([]),Ne=g([]),ot=g([]),Ms={value:"id",label:"name",children:"children"};function xa(t,e){for(const s of t||[]){if(s==null||typeof s!="object")continue;const i=s;if(Number(i.id)===e)return i;const u=xa(i.children||[],e);if(u)return u}return null}function ka(t){const e=Number(t.id),s=[];Number.isFinite(e)&&e>0&&s.push(e);for(const i of t.children||[])i&&typeof i=="object"&&s.push(...ka(i));return s}function qs(t,e){const s=xa(e,t);return s?ka(s):[t]}async function Bs(){try{const[t,e,s]=await Promise.all([oi(),ui(),Ti()]);Lt.value=Array.isArray(t)?t:[],Ne.value=Array.isArray(e)?e:[];const i=Array.isArray(s)?s:[];ot.value=i}catch{Lt.value=[],Ne.value=[],ot.value=[]}}const Hs=t=>t.map(e=>{var s;return{value:e.province,label:e.province,code:e.code,children:((s=e.citys)==null?void 0:s.map(i=>{var u;return{value:i.city,label:i.city,code:i.code,children:((u=i.areas)==null?void 0:u.map(p=>({value:p.area,label:p.area,code:p.code})))||[]}}))||[]}}),Ws=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const s=await e.json();console.log("加载的数据条数:",s==null?void 0:s.length),it.value=Hs(s),console.log("regionOptions 已设置,条数:",it.value.length)}catch(t){console.error("加载省市区数据失败:",t),it.value=[]}},Gs=async()=>{try{const t=await Ai({type:"server_order"});Ut.value=Zr(t==null?void 0:t.server_order)}catch(t){console.error("加载服务套餐选项失败:",t),Ut.value=[]}},Ks=[{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 Qs(t){se.value="",y.exclude_fulfillment_cancelled=0,y.fulfillment_status=t,K()}const se=g(""),Js=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"洛阳直发",value:"direct"},{label:"自营",value:"self"}];function Ys(t){y.supply_mode=t,K()}const Xs=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function Zs(t){y.express_company=t,K()}const y=fe({order_no:"",prescription_id:"",patient_keyword:"",express_keyword:"",express_company:"",doctor_id:"",assistant_id:"",assistant_dept_id:"",fulfillment_status:"",prescription_audit_status:"",payment_slip_audit_status:"",supply_mode:"",service_channel:"",has_aux_formula:"",exclude_fulfillment_cancelled:0,audit_admin_id:""}),el=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],tl=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function al(t){se.value="",y.exclude_fulfillment_cancelled=0,y.prescription_audit_status=t,K()}function sl(t){se.value="",y.exclude_fulfillment_cancelled=0,y.payment_slip_audit_status=t,K()}function ut(t){if(se.value===t){se.value="",y.prescription_audit_status="",y.payment_slip_audit_status="",y.fulfillment_status="",y.exclude_fulfillment_cancelled=0,K();return}se.value=t,y.prescription_audit_status="",y.payment_slip_audit_status="",y.fulfillment_status="",y.exclude_fulfillment_cancelled=0,t==="pendingRx"?(y.prescription_audit_status=0,y.exclude_fulfillment_cancelled=1):t==="pendingPay"?(y.prescription_audit_status=1,y.payment_slip_audit_status=0):t==="pendingShip"?y.fulfillment_status=2:t==="risk"&&(y.payment_slip_audit_status=2),K()}const{time_type:ze,dateRange:It,resolve:ha,handleTimeTypeChange:ll,handleCustomDateChange:nl,resetTimeFilter:rl,applyCustomRange:il}=Mr("all"),wa=()=>{Z.page=1,U()},ol=()=>ll(wa),ul=()=>nl(wa);function Va(t){const e={...t};if(e.prescription_id===""||e.prescription_id===void 0?delete e.prescription_id:e.prescription_id=Number(e.prescription_id),e.fulfillment_status===""||e.fulfillment_status===void 0||e.fulfillment_status===null?delete e.fulfillment_status:e.fulfillment_status=Number(e.fulfillment_status),e.prescription_audit_status===""||e.prescription_audit_status===void 0||e.prescription_audit_status===null?delete e.prescription_audit_status:e.prescription_audit_status=Number(e.prescription_audit_status),e.payment_slip_audit_status===""||e.payment_slip_audit_status===void 0||e.payment_slip_audit_status===null?delete e.payment_slip_audit_status:e.payment_slip_audit_status=Number(e.payment_slip_audit_status),(!e.supply_mode||e.supply_mode==="")&&delete e.supply_mode,e.doctor_id===""||e.doctor_id===void 0||e.doctor_id===null?delete e.doctor_id:e.doctor_id=Number(e.doctor_id),e.assistant_id===""||e.assistant_id===void 0||e.assistant_id===null?delete e.assistant_id:e.assistant_id=Number(e.assistant_id),e.assistant_dept_id===""||e.assistant_dept_id===void 0||e.assistant_dept_id===null?delete e.assistant_dept_id:e.assistant_dept_id=Number(e.assistant_dept_id),e.order_no||delete e.order_no,String(e.patient_keyword||"").trim()||delete e.patient_keyword,e.audit_admin_id===""||e.audit_admin_id===void 0||e.audit_admin_id===null?delete e.audit_admin_id:e.audit_admin_id=Number(e.audit_admin_id),String(e.express_keyword||"").trim()||delete e.express_keyword,(!e.express_company||e.express_company==="")&&delete e.express_company,e.service_channel===""||e.service_channel===void 0||e.service_channel===null?delete e.service_channel:(e.service_channel=String(e.service_channel).trim(),e.service_channel===""&&delete e.service_channel),e.has_aux_formula===""||e.has_aux_formula===void 0||e.has_aux_formula===null?delete e.has_aux_formula:e.has_aux_formula=Number(e.has_aux_formula),Number(e.exclude_fulfillment_cancelled)!==1&&delete e.exclude_fulfillment_cancelled,!String(e.start_time||"").trim()||!String(e.end_time||"").trim())delete e.start_time,delete e.end_time;else{const s=String(e.start_time||"").trim(),i=String(e.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(s)&&/^\d{4}-\d{2}-\d{2}$/.test(i)&&(e.start_time=`${s} 00:00:00`,e.end_time=`${i} 23:59:59`)}return e}async function dl(t){const[e,s]=ha(),i=Va({...t,start_time:e,end_time:s});return di(i)}const pl=V(()=>{const[t,e]=ha();return Va({...y,start_time:t,end_time:e})}),{pager:Z,getLists:U,resetPage:K,resetParams:cl}=$i({fetchFun:dl,params:y});da(()=>{var t;return(t=Z.extend)==null?void 0:t.audit_admin_options},t=>{Array.isArray(t)&&(ga.value=t.map(e=>{if(e==null||typeof e!="object")return null;const s=e,i=Number(s.id),u=String(s.name??"").trim();return!Number.isFinite(i)||i<=0||u===""?null:{id:i,name:u}}).filter(e=>e!=null))},{immediate:!0});function ml(){const t=Rs.query,e=c=>{const h=c!=null?String(c).trim():"";return h?h.length>=10?h.slice(0,10):h:""},s=e(t.start_time),i=e(t.end_time);s&&i&&il(s,i);const u=t.assistant_dept_id;if(u!=null&&String(u)!==""){const c=Number(u);Number.isFinite(c)&&c>0&&(y.assistant_dept_id=c)}const p=t.assistant_id;if(p!=null&&String(p)!==""){const c=Number(p);Number.isFinite(c)&&c>0&&(y.assistant_id=c)}}const Sa=V(()=>{const t=y.assistant_dept_id;if(t===""||t==null)return Ne.value;const e=Number(t);if(!Number.isFinite(e))return Ne.value;const s=new Set(qs(e,ot.value));return Ne.value.filter(i=>{const u=i.dept_ids;return!Array.isArray(u)||u.length===0?!1:u.map(Number).some(p=>s.has(p))})});function _l(){const t=y.assistant_id;if(t!==""&&t!=null){const e=Number(t);Sa.value.some(i=>Number(i.id)===e)||(y.assistant_id="")}K()}const ue=V(()=>{const t=Z.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),s=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),i=ae=>{const X=Number(ae);return Number.isFinite(X)?Math.round(X*100)/100:0},u=ae=>ae.toFixed(2),p=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,c=(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,h=i(p?t==null?void 0:t.stats_order_amount_not_cancelled:e),M=p?i(t==null?void 0:t.stats_order_amount_cancelled):0,b=i(c?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:s),te=c?i(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,J=(t==null?void 0:t.stats_order_amount_performance)!==void 0?i(t==null?void 0:t.stats_order_amount_performance):h,R=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?i(t==null?void 0:t.stats_linked_pay_amount_performance):b,T=String((t==null?void 0:t.stats_time_start)??"").trim(),Pt=String((t==null?void 0:t.stats_time_end)??"").trim(),tt=T&&Pt?`统计时间:${T} ~ ${Pt}`:"统计时间:—",at=String((t==null?void 0:t.stats_scope)??"restricted");let Se="统计口径:与当前列表数据可见范围一致";at==="all"?Se="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":at==="assistant"?Se="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":at==="own_rx"&&(Se="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const Fe=ze.value==="all"?"全部":ze.value==="today"?"今日":"区间";return{order:i(e),pay:i(s),orderStr:u(i(e)),payStr:u(i(s)),orderNotCancelledStr:u(h),orderCancelledStr:u(M),payNotCancelledStr:u(b),payCancelledStr:u(te),orderPerformanceStr:u(J),payPerformanceStr:u(R),orderHeading:`${Fe}业绩(业务订单额)`,payHeading:`${Fe}业绩(关联实付)`,periodLine:tt,scopeHint:Se,orderSplitHint:"业绩 = 排除履约已取消(4)、拒收(9)、退款(10)后的订单金额;下方为合计与排除项明细"}}),dt=V(()=>{const t=Z.extend,e=c=>{const h=Number(c);return!Number.isFinite(h)||h<0?0:Math.trunc(h)},s=e(t==null?void 0:t.focus_pending_rx_count),i=e(t==null?void 0:t.focus_pending_pay_count),u=e(t==null?void 0:t.focus_pending_ship_count),p=e(t==null?void 0:t.focus_risk_count);return{pendingRx:s,pendingPay:i,pendingShip:u,risk:p}});function zt(t,e){const s=Number(e==null?void 0:e.prescription_audit_status),i=Number(e==null?void 0:e.payment_slip_audit_status),u=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&s===0||t==="pay"&&s===1&&i===0||t==="fulfillment"&&u===2?"po-status-tag is-focus":t==="rx"&&s===2||t==="pay"&&i===2||t==="fulfillment"&&u===4?"po-status-tag is-risk":"po-status-tag"}function fl({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),s=Number(t==null?void 0:t.payment_slip_audit_status),i=Number(t==null?void 0:t.fulfillment_status),u=ma(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||s===2||u?"po-row-risk":e===0||e===1&&s===0||i===2?"po-row-focus":i===3||i===6?"po-row-done":""}da(nt,t=>{t||y.prescription_audit_status===""||y.prescription_audit_status===void 0||(y.prescription_audit_status="",y.exclude_fulfillment_cancelled=0,K())},{immediate:!0});function vl(){se.value="",rl(),y.order_no="",y.prescription_id="",y.patient_keyword="",y.express_keyword="",y.express_company="",y.doctor_id="",y.assistant_id="",y.assistant_dept_id="",y.fulfillment_status="",y.prescription_audit_status="",y.payment_slip_audit_status="",y.supply_mode="",y.service_channel="",y.has_aux_formula="",y.audit_admin_id="",y.exclude_fulfillment_cancelled=0,cl()}function Na(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function Ca(t){return t===1?"success":t===2?"danger":"info"}function Pa(){const t=ve.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[]).some(s=>ya.includes(s)):!1}function Oa(t){var s;const e=Number((s=ve.userInfo)==null?void 0:s.id);return e>0&&Number(t.creator_id)===e}function Aa(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function Ra(t){const e=Number(t.fulfillment_status);return e===3||e===4||Oa(t)&&Aa(t)&&!Pa()||$t(t)?!1:e===1||e===2}function gl(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function yl(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 bl(t){if($t(t))return!1;const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return(s===1||s===2)&&i===0}function xl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return s===1&&(i===1||i===2)}function kl(t){return $t(t)?!1:Number(t.fulfillment_status)===1}function Ta(t){return Number(t.fulfillment_status)===2}const hl=V(()=>{const t=ve.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/setShipMode")});function Y(t){return String(t||"").toLowerCase()==="direct"?"direct":"gancao"}function wl(t){return Y(t)==="direct"?"洛阳药房":"甘草药房"}function $a(t){return $t(t)}function Ea(t){const e=Number(t.fulfillment_status);return e!==3&&e!==4&&!$a(t)}const jt=g(!1);function Mt(t,e){const s=Number(t),i=Number(e);return s>0&&s===i}const Vl=V(()=>Y(W.ship_mode)==="direct"?"洛阳药房直发":"甘草药房直发");async function Sl(t){const e=$.value;if(!(e!=null&&e.id))return;const s=Y(t),i=Y(e.ship_mode);if(s!==i){if(!Ea(e)){N.msgWarning("当前订单状态不可修改发货类型");return}jt.value=!0;try{await pi({id:e.id,ship_mode:s}),$.value&&($.value.ship_mode=s),we.value&&Mt(Ae.value,e.id)&&(W.ship_mode=s),await mt(),N.msgSuccess("发货类型已保存"),U()}catch{}finally{jt.value=!1}}}async function Nl(){await mt(),U()}function qt(t){const e=Number(t.fulfillment_status);if(e!==5&&e!==6)return!1;const s=Math.round((Number(t.amount)||0)*100)/100;return Math.round((Number(t.linked_pay_paid_total)||0)*100)/100{var t;return((t=H.value)==null?void 0:t.detail)??null}),Pl=V(()=>{var e;const t=(e=$.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null}),La=V(()=>`${m.dose_unit||"剂"}数`),je=g(!1),Bt=g(!1),pt=g(),ce=fe({id:0,amount:void 0}),Ol={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,s)=>{const i=Number(e);if(!Number.isFinite(i)||i<0){s(new Error("订单金额不能为负数"));return}s()},trigger:"blur"}]},Ce=g(null),ct=g(!1),Me=V(()=>ei(Ce.value)),qe=g(!1),Ht=g(!1),Wt=g(),le=fe({patient_name:"",phone:""}),Al={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function Rl(){const t=Pl.value,e=$.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){N.msgWarning("无处方数据");return}le.patient_name=String(t.patient_name??"").trim(),le.phone=String(t.phone??"").trim(),qe.value=!0,lt(()=>{var s;return(s=Wt.value)==null?void 0:s.clearValidate()})}function Tl(){le.patient_name="",le.phone=""}function $l(){var t;ce.id=0,ce.amount=void 0,(t=pt.value)==null||t.clearValidate()}function El(){const t=$.value;if(!ws(t)){N.msgWarning("当前订单状态不允许修改金额");return}ce.id=Number(t==null?void 0:t.id)||0;const e=Number(t==null?void 0:t.amount);ce.amount=Number.isFinite(e)?e:void 0,je.value=!0,lt(()=>{var s;return(s=pt.value)==null?void 0:s.clearValidate()})}async function mt(){var t;await((t=H.value)==null?void 0:t.refresh())}async function Dl(){var s;const t=Wt.value;if(!t)return;try{await t.validate()}catch{return}const e=(s=$.value)==null?void 0:s.id;if(e){Ht.value=!0;try{await ci({id:e,patient_name:le.patient_name.trim(),phone:le.phone.trim()}),qe.value=!1,await mt()}catch(i){console.error(i)}finally{Ht.value=!1}}}async function Ia(){const t=pt.value;if(!t)return;try{await t.validate()}catch{return}if(!ws($.value)){N.msgWarning("当前订单状态不允许修改金额");return}const e=ce.id;Bt.value=!0;try{await mi({id:e,amount:Number(ce.amount)}),N.msgSuccess("修改成功"),je.value=!1,await mt(),U()}catch{}finally{Bt.value=!1}}async function Fl(t){var e;await((e=H.value)==null?void 0:e.open(t))}const ke=g(!1),Gt=g(!1),Kt=g(!1),I=g(0),ne=g(null),re=g(!1),_t=g(""),Ul=V(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][I.value]??""),za=V(()=>{const t=ne.value,e=ti(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const s=e.map(i=>`${i.name} ${i.dosage}g`).join("、");return s.length>120?`${s.slice(0,120)}…`:s}),Ll=["recipient_name","recipient_phone","region","shipping_address"],he=g(),m=fe({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:""}),Il=V(()=>ai(Ut.value,m.service_package)),ja=V(()=>{const t=String(m.diagnosis_creator_dept_path||"").trim();return t?t.split(";").map(e=>e.trim()).filter(Boolean).map(e=>e.includes(" / ")?e.split(" / ").map(s=>s.trim()).filter(Boolean):e.split("/").map(s=>s.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Be=g([]),Qt=g(!1),j=g(0);function ft(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const Jt=V(()=>{const t=new Set(m.pay_order_ids.map(s=>Number(s)));let e=0;for(const s of Be.value)t.has(Number(s.id))&&(e+=Number(s.amount)||0);return Math.round(e*100)/100}),zl=V(()=>{const t=j.value;return t>0?Math.round(t*100)/100:0});async function jl(t,e){var s,i;if(!t){Be.value=[];return}try{Qt.value=!0;const u=await Ps({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),p=(u==null?void 0:u.lists)??((s=u==null?void 0:u.data)==null?void 0:s.lists)??[];Be.value=Array.isArray(p)?p:[];const c=Number((u==null?void 0:u.deposit_min_amount)??((i=u==null?void 0:u.data)==null?void 0:i.deposit_min_amount));!Number.isNaN(c)&&c>=0&&(j.value=c)}catch{Be.value=[]}finally{Qt.value=!1}}const Ml=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,s,i)=>{const u=j.value,p=Number(s);if(u>0&&(!Number.isFinite(p)||p0){const e=`已开启关联支付门槛(¥${B(j.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function ql(){var t;I.value=0,ne.value=null,re.value=!1,_t.value="",(t=he.value)==null||t.clearValidate()}function Bl(){I.value>0&&(I.value-=1)}async function Hl(){const t=he.value;if(t)try{I.value===0?await t.validateField([...Ll]):I.value===1&&j.value>0&&await t.validateField(["pay_order_ids"]),I.value<2&&(I.value+=1)}catch{}}async function Wl(t){if(!Ra(t)){Oa(t)&&Aa(t)&&!Pa()&&N.msgWarning("处方与支付单均已审核通过,创建人不可再编辑");return}I.value=0,ne.value=null,ke.value=!0,Gt.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e;if(!s){N.msgError("加载数据结构异常"),ke.value=!1;return}const i=s.prescription;i&&typeof i=="object"?ne.value=i:Number(s.prescription_id)>0?ne.value={id:Number(s.prescription_id),sn:"",patient_name:String(s.recipient_name||""),herbs:[]}:ne.value=null,m.id=s.id,m.prescription_id=Number(s.prescription_id)||0,m.diagnosis_id=Number(s.diagnosis_id)||0,m.assistant_id=Number(s.assistant_id)||0,m.diagnosis_creator_id=Number(s.diagnosis_creator_id)||0,m.diagnosis_creator_name=s.diagnosis_creator_name!=null&&s.diagnosis_creator_name!==""?String(s.diagnosis_creator_name):"",m.diagnosis_creator_dept_path=s.diagnosis_creator_dept_path!=null&&s.diagnosis_creator_dept_path!==""?String(s.diagnosis_creator_dept_path):"",m.recipient_name=s.recipient_name||"",m.recipient_phone=s.recipient_phone||"";const u=s.shipping_province||"",p=s.shipping_city||"",c=s.shipping_district||"";u||p||c?m.region=[u,p,c].filter(T=>T!==""):m.region=[],m.shipping_address=s.shipping_address||"",m.is_follow_up=s.is_follow_up?1:0,m.medication_days=s.medication_days>0?s.medication_days:void 0,m.dose_count=s.dose_count>0?s.dose_count:1,m.dose_unit=s.dose_unit||"剂",m.prev_staff=s.prev_staff||"",m.service_channel=s.service_channel||"",m.service_package=si(s.service_package),m.express_company=String(s.express_company||"auto")||"auto",m.tracking_number=s.tracking_number||"",m.fee_type=Number(s.fee_type)||3,j.value=Number(s.deposit_min_amount)||0;let h=Number(s.amount)||0;const M=Math.round((Number(s.linked_pay_paid_total)||0)*100)/100,b=j.value;if(b>0){const T=Math.round(b*100)/100;hNumber(T)).filter(T=>!Number.isNaN(T)):[],m.internal_cost=s.internal_cost!=null&&s.internal_cost!==""?Number(s.internal_cost):void 0;const J=String(s.gancao_reciperl_order_no||"").trim(),R=Number(s.gancao_submit_time||0);re.value=J!==""||R>0,_t.value=J||"",await jl(m.diagnosis_id,m.id),lt(()=>{var T;(T=he.value)==null||T.clearValidate()})}catch(e){N.msgError((e==null?void 0:e.message)||"加载异常"),ke.value=!1}finally{Gt.value=!1}}async function Gl(){if(!he.value)return;const t=re.value;if(!(!t&&I.value!==2)){t?he.value.clearValidate():await he.value.validate(),Kt.value=!0;try{const e={id:m.id,recipient_name:m.recipient_name,recipient_phone:m.recipient_phone,shipping_address:m.shipping_address,is_follow_up:m.is_follow_up,prev_staff:m.prev_staff||"",service_channel:m.service_channel||"",service_package:Array.isArray(m.service_package)?m.service_package.join(","):"",express_company:m.express_company||"auto",tracking_number:m.tracking_number||"",fee_type:m.fee_type,amount:m.amount,remark_extra:m.remark_extra||"",remark_assistant:m.remark_assistant||"",medication_days:m.medication_days!=null&&String(m.medication_days).trim()!==""?m.medication_days:"",dose_unit:m.dose_unit||"剂",dose_count:m.dose_count||1,internal_cost:m.internal_cost!=null&&String(m.internal_cost).trim()!==""?m.internal_cost:""};m.region&&m.region.length>0?(e.shipping_province=m.region[0]||"",e.shipping_city=m.region[1]||"",e.shipping_district=m.region[2]||""):(e.shipping_province="",e.shipping_city="",e.shipping_district=""),e.pay_order_ids=[...m.pay_order_ids],await Ss(e),N.msgSuccess("保存成功"),ke.value=!1,U()}catch{}finally{Kt.value=!1}}}const He=g(!1),Yt=g("prescription"),Xt=g(0),We=g(null),Pe=g(""),vt=g(!1),Kl=V(()=>Yt.value==="prescription"?"处方业务审核":"关联支付单审核");function Ma(t,e){Yt.value=e,Xt.value=t.id,We.value=t,Pe.value="",He.value=!0}async function qa(t){var e;if(t==="reject"&&!Pe.value.trim()){N.msgError("驳回或阻止时必须填写明确的审核意见");return}vt.value=!0;try{const s={id:Xt.value,action:t,remark:Pe.value.trim()};Yt.value==="prescription"?await _i(s):await fi(s),N.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),He.value=!1,U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(Xt.value))}catch{}finally{vt.value=!1}}async function Ql(t){try{await Rt.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await vi({id:t.id}),N.msgSuccess("撤回成功"),U()}catch{}}const gt=g(0),yt=g(!1),Oe=g(!1),F=g(null);function Zt(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,s=Number(t.proces_cost)||0,i=Number(t.lis_cost)||0;return(e+s+i).toFixed(2)}function Jl(t,e){const s=parseFloat(Zt(t))||0,i=Number(e)||0;return i<=0?"—":(s/i*100).toFixed(2)}function Yl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((s,i)=>s+(Number(i.quantity)||0),0).toFixed(0)}async function Xl(){if(!m.id){N.msgError("请先保存订单");return}Oe.value=!0;try{const t=await Ns({id:m.id,dose_count:m.dose_count||1,medication_days:m.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(F.value=e,yt.value=!0,N.msgSuccess("预下单测试成功"))}catch{}finally{Oe.value=!1}}async function Zl(){var t,e;if(!((t=$.value)!=null&&t.id)){N.msgError("订单数据不存在");return}Oe.value=!0;try{const s=await Ns({id:$.value.id,dose_count:$.value.dose_count||1,medication_days:$.value.medication_days||void 0}),i=(s==null?void 0:s.data)??s;if(i&&i.success&&(F.value=i,yt.value=!0,Dt()&&i.fee)){const u=Zt(i.fee);try{const p=await Et({id:$.value.id}),c=(p==null?void 0:p.data)??p;if(c!=null&&c.id){const h=c.service_package,M=Array.isArray(h)?h.join(","):String(h||"");await Ss({id:c.id,recipient_name:c.recipient_name||"",recipient_phone:c.recipient_phone||"",shipping_province:c.shipping_province||"",shipping_city:c.shipping_city||"",shipping_district:c.shipping_district||"",shipping_address:c.shipping_address||"",is_follow_up:c.is_follow_up?1:0,medication_days:c.medication_days!=null&&String(c.medication_days).trim()!==""?c.medication_days:"",dose_unit:c.dose_unit||"剂",dose_count:c.dose_count>0?c.dose_count:1,prev_staff:c.prev_staff||"",service_channel:c.service_channel||"",service_package:M,express_company:c.express_company||"auto",tracking_number:c.tracking_number||"",fee_type:Number(c.fee_type)||3,amount:Number(c.amount)||0,remark_extra:c.remark_extra||"",remark_assistant:c.remark_assistant||"",internal_cost:u,pay_order_ids:Array.isArray(c.pay_order_ids)?c.pay_order_ids:[]}),N.msgSuccess("内部成本已按预报价总计更新"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(c.id))}}catch{}}}catch{}finally{Oe.value=!1}}async function Ba(t){var i;const s=Y(t.ship_mode)==="direct"?"洛阳药房":"甘草药房";try{await Rt.confirm(`将把本单关联处方提交至${s},提交成功后不可切换发货药房。确定继续?`,"上传药房",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),gt.value=t.id;const u=await gi({id:t.id}),p=(u==null?void 0:u.data)??u,c=(p==null?void 0:p.pharmacy_order_no)!=null?String(p.pharmacy_order_no):(p==null?void 0:p.recipel_order_no)!=null?String(p.recipel_order_no):"";N.msgSuccess(c?`上传成功,${s}单号:${c}`:"上传成功"),U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t.id))}catch{}finally{gt.value=0}}Hn(async()=>{await Ws(),await Gs(),await Bs(),ml(),await lt(),U()});const Ge=g(!1),bt=g(!1),ea=g(0),me=fe({express_company:"auto",tracking_number:""});function en(t){ea.value=t.id,me.express_company=String(t.express_company||"auto")||"auto",me.tracking_number=String(t.tracking_number||""),Ge.value=!0}async function Ha(){var t;if(!me.tracking_number.trim()){N.msgError("请填写快递单号");return}bt.value=!0;try{await yi({id:ea.value,express_company:me.express_company||"auto",tracking_number:me.tracking_number.trim()}),N.msgSuccess("快递单号已保存"),Ge.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(ea.value))}catch{}finally{bt.value=!1}}const we=g(!1),xt=g(!1),Ae=g(0),W=fe({ship_mode:"gancao",express_company:"auto",tracking_number:""});function tn(t){var e;return Mt((e=$.value)==null?void 0:e.id,t.id)?Y($.value.ship_mode):Y(t.ship_mode)}function Wa(t){Ae.value=Number(t.id),W.ship_mode=tn(t),W.express_company=String(t.express_company||"auto")||"auto",W.tracking_number=String(t.tracking_number||""),we.value=!0}da(()=>{var t;return(t=$.value)==null?void 0:t.ship_mode},t=>{var e;!we.value||!Ae.value||!Mt((e=$.value)==null?void 0:e.id,Ae.value)||(W.ship_mode=Y(t))});async function Ga(){var t;if(!W.tracking_number.trim()){N.msgError("请先填写快递单号再确认发货");return}xt.value=!0;try{await bi({id:Ae.value,ship_mode:Y(W.ship_mode),express_company:W.express_company||"auto",tracking_number:W.tracking_number.trim()}),N.msgSuccess("确认发货成功,订单已进入「已发货」状态"),we.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ae.value))}catch{}finally{xt.value=!1}}const an=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],Re=g(!1),Te=g(0),ye=g(3),Ke=g(!1),Qe=g(!1),de=g([]),ta=g(),ee=fe({reason:"",refund_amount:void 0}),be=g(0),sn=V(()=>aa(de.value)),ln=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=be.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));let Je=0;function nn(){var t;Te.value=0,de.value=[],Qe.value=!1,ee.reason="",ee.refund_amount=void 0,be.value=0,(t=ta.value)==null||t.clearValidate(),Je+=1,Ce.value=null,ct.value=!1}async function rn(t){if(!t){de.value=[];return}Qe.value=!0;try{const e=await Et({id:t}),s=(e==null?void 0:e.data)??e??null,i=s==null?void 0:s.linked_pay_orders;de.value=Array.isArray(i)?i:[];const u=aa(de.value),p=Number(s==null?void 0:s.paid)||0;be.value=u>0?u:p,ee.refund_amount=be.value}catch{de.value=[],be.value=0}finally{Qe.value=!1}}async function on(t){const e=Number(t.id),s=String(t.tracking_number||"").trim();if(!e||!s)return;const i=++Je;ct.value=!0,Ce.value=null;try{const u=String(t.recipient_phone||"").replace(/\D/g,""),p={id:e,express_company:String(t.express_company||"auto")||"auto"};u.length>=4&&(p.phone_tail=u);const c=await Ci(p);if(i!==Je||Te.value!==e)return;Ce.value=ni(c,s,e)}catch{if(i!==Je||Te.value!==e)return;Ce.value=null}finally{i===Je&&Te.value===e&&(ct.value=!1)}}async function un(){var e,s,i;const t=Te.value;if(t){if(ye.value===10){if(!await((e=ta.value)==null?void 0:e.validate().catch(()=>!1)))return;Ke.value=!0;try{await Cs({id:t,reason:ee.reason.trim(),refund_amount:Number(ee.refund_amount)}),N.msgSuccess("退款成功"),Re.value=!1,U(),await((s=H.value)==null?void 0:s.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}return}Ke.value=!0;try{await xi({id:t,fulfillment_status:ye.value}),N.msgSuccess("订单状态已更新"),Re.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}}}function aa(t){let e=0;for(const s of t||[]){const i=Number(s==null?void 0:s.status);(i===2||i===5)&&(e+=Number(s==null?void 0:s.amount)||0)}return Math.round(e*100)/100}const Ye=g(!1),sa=g(0),la=g(!1),na=g(),ie=g(0),Q=fe({reason:"",refund_amount:void 0}),dn=V(()=>{const t=B(ie.value),e=B(Q.refund_amount);return Number(Q.refund_amount)>=ie.value-.009?`确认全额退款 ¥${t}:关联收款将标记已退款,本单已付清零,且不可撤销。`:`确认部分退款 ¥${e}(可退上限 ¥${t}):将扣减本单已付,并按金额依次标记关联收款已退款。`}),pn=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=ie.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));function cn(){var t;sa.value=0,Q.reason="",Q.refund_amount=void 0,ie.value=0,(t=na.value)==null||t.clearValidate()}async function Ka(t){sa.value=t.id,Q.reason="",Q.refund_amount=void 0,ie.value=0,Ye.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e??null,i=Array.isArray(s==null?void 0:s.linked_pay_orders)?s.linked_pay_orders:[],u=aa(i),p=Number(s==null?void 0:s.paid)||0;ie.value=u>0?u:p,Q.refund_amount=ie.value}catch{ie.value=0}}async function mn(){var s,i;const t=sa.value;if(!(!t||!await((s=na.value)==null?void 0:s.validate().catch(()=>!1)))){la.value=!0;try{await Cs({id:t,reason:Q.reason.trim(),refund_amount:Number(Q.refund_amount)}),N.msgSuccess("退款成功"),Ye.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{la.value=!1}}}const Xe=g(!1),kt=g(!1),Ze=g(0),ht=g(),ra=g(!1),wt=g([]),_n=V(()=>C.add_mode==="completion_only"?"不创建或关联支付单,仅提交完单申请,由审核人员在支付审核时处理。":C.add_mode==="create_express"?"通过快递代收创建新支付单(流转同付呗),或关联已存在但未绑定的支付单。":"可以通过付呗创建新支付单,或关联已存在但未绑定的支付单。"),C=fe({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),fn=V(()=>{const t={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}]};return C.add_mode==="create"||C.add_mode==="create_express"?(t.order_type=[{required:!0,message:"请选择费用类别",trigger:"change"}],t.pay_amount=[{validator:(e,s,i)=>{if(s==null||s===""){i(new Error("请输入支付金额"));return}const u=Number(s);!Number.isFinite(u)||u<0?i(new Error("金额不能小于 0")):i()},trigger:"blur"}]):C.add_mode==="link"&&(t.link_pay_order_ids=[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(e,s,i)=>{!Array.isArray(s)||s.length===0?i(new Error("请至少选择一个支付单")):i()}}]),t});async function vn(t,e=[]){var s;if(!t){wt.value=[];return}try{ra.value=!0;const i=await Ps({diagnosis_id:t}),u=(i==null?void 0:i.lists)??((s=i==null?void 0:i.data)==null?void 0:s.lists)??[],p=Array.isArray(u)?u.filter(c=>!e.includes(c.id)):[];wt.value=p}catch{wt.value=[]}finally{ra.value=!1}}function Qa(t){var i,u;if(!qt(t)){N.msgWarning("订单总金额与已付金额一致,无需补齐支付单");return}Ze.value=t.id,C.add_mode="create",C.order_type=3,C.pay_amount=void 0,C.pay_remark="",C.link_pay_order_ids=[],C.completion_request=0,Xe.value=!0;const e=t.diagnosis_id||((i=$.value)==null?void 0:i.diagnosis_id),s=t.pay_order_ids||((u=$.value)==null?void 0:u.pay_order_ids)||[];e&&vn(e,s)}async function gn(){var t;if(ht.value){await ht.value.validate(),kt.value=!0;try{if(C.add_mode==="completion_only")await ki({id:Ze.value}),N.msgSuccess("完单申请已提交,请等待支付审核");else if(C.add_mode==="create"||C.add_mode==="create_express")await hi({id:Ze.value,order_type:C.order_type,pay_amount:C.pay_amount,pay_remark:C.pay_remark||"",completion_request:C.completion_request,pay_create_type:C.add_mode==="create_express"?"express_cod":"fubei"}),N.msgSuccess("支付单已新增,请等待审核");else{const e=C.link_pay_order_ids;if(e.length===0){N.msgError("请至少选择一个支付单");return}await wi({id:Ze.value,pay_order_ids:e,completion_request:C.completion_request}),N.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}Xe.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ze.value))}catch{}finally{kt.value=!1}}}function Ja(t){Te.value=t.id,ye.value=3,ee.reason="",ee.refund_amount=void 0,de.value=[],Ce.value=null,Re.value=!0,rn(t.id),String(t.tracking_number||"").trim()&&on(t)}async function yn(t){var e;try{await Rt.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Vi({id:t.id}),N.msgSuccess("处方审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}async function bn(t){var e;try{await Rt.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Si({id:t.id}),N.msgSuccess("支付单审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}const xn="成都双流甄养堂互联网医院 处方笺",Vt=g(!1),St=g(!1),x=g(null),$e=g(""),G=g("internal"),Ya=g(null),Ee=g(!1);function Xa(t,e,s){const i=t.prescription_type||"浓缩水丸",u=Number(t.times_per_day)>0?Number(t.times_per_day):3,p=t.dosage_amount!=null?Number(t.dosage_amount):10,c=t.dosage_unit||(i==="饮片"?"ml":"g"),h=t.usage_way||e||"温水送服",M=t.usage_time||s||"",b=[];if(b.push(`每天${u}次`),i==="浓缩水丸"){const te=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;b.push(`一次${te}袋`),b.push(`每袋${p}${c}`)}else b.push(`一次${p}${c}`);return b.push(h),M&&b.push(M),b.join(", ")}const et=V(()=>{var e;const t=(e=x.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),Nt=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="主方")),De=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="辅方")),Za=V(()=>{var t;return li((t=x.value)==null?void 0:t.dietary_taboo)}),es=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸")return null;const e=Number(t.medication_days??t.usage_days??t.dose_count),s=Number(t.times_per_day),i=Number(t.dosage_amount),u=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;return!Number.isFinite(e)||!Number.isFinite(s)||!Number.isFinite(i)||e<=0||s<=0||i<=0?null:e*s*i*u}),ts=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸"||!De.value.length)return null;const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸"),s=Number(t.medication_days??e.usage_days),i=Number(e.times_per_day),u=Number(e.dosage_amount),p=Number(e.dosage_bag_count)>0?Number(e.dosage_bag_count):1;return!Number.isFinite(s)||!Number.isFinite(i)||!Number.isFinite(u)||s<=0||i<=0||u<=0?null:s*i*u*p}),Ct=t=>String(t).padStart(2,"0"),kn=V(()=>{const t=x.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const s=String(e).length===10?Number(e)*1e3:Number(e),i=new Date(s);if(!isNaN(i.getTime()))return`${i.getFullYear()}-${Ct(i.getMonth()+1)}-${Ct(i.getDate())} ${Ct(i.getHours())}:${Ct(i.getMinutes())}`}return t.prescription_date||"—"}),hn=V(()=>{const t=x.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const s=String(t.visit_no??"").trim();return s||"—"}),wn=V(()=>{const t=x.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),as=V(()=>{const t=x.value;return t?String(t.order_no??"").trim():""}),Vn=V(()=>{const t=x.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let s=t.region;return Array.isArray(s)&&(s=s.filter(Boolean).join("")),s&&e.push(String(s)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),ss=V(()=>{var e;const t=Number((e=x.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Sn=V(()=>{const e=et.value.reduce((s,i)=>s+(Number(i==null?void 0:i.dosage)||0),0);return Ve(e)}),ls=t=>{const e=Number(t)||0;return Ve(e*ss.value)},Nn=V(()=>{const t=x.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return e==="饮片"?"饮片":/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),ns=V(()=>{const t=x.value;return t?t.usage_text?t.usage_text:Xa(t):"—"}),ia=V(()=>{const t=x.value;if(!t||!De.value.length)return"";const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸");return Xa({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),Cn=V(()=>{const t=es.value,e=ts.value,s=typeof t=="number"&&isFinite(t)&&t>0?t:0,i=typeof e=="number"&&isFinite(e)&&e>0?e:0,u=s+i;if(u>0)return Ve(u);const p=x.value;if(!p)return"";const c=p.out_pellet||p.total_weight;if(c&&Number(c)>0)return Ve(Number(c));const h=et.value;if(!h.length)return"";const M=h.reduce((b,te)=>b+(Number(te==null?void 0:te.dosage)||0),0);return Ve(M*ss.value)}),rs=V(()=>{const t=x.value;return t&&t.medical_advice||""}),is=V(()=>{const t=x.value;if(!t)return"";const e=[];return e.push(`共${et.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),os=V(()=>{const t=x.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),us=V(()=>{const t=Cn.value;if(!t)return"";const e=es.value,s=ts.value;return typeof e=="number"&&isFinite(e)&&e>0&&typeof s=="number"&&isFinite(s)&&s>0?`${t}克(主方 ${Ve(e)}克 + 辅方 ${Ve(s)}克)`:`${t}克`});function Ve(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function ds(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Pn(t){return t?ds(t):"—"}function On(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function An(t){return t==null||t===""?"—":`${t}岁`}function Rn(){cs(m)}function ps(t){return t.map(e=>`${String(e.name??"").trim()}:${Number(e.dosage)||0}`).sort().join("|")}function Tn(t,e){return!t.length||!e.length||t.length!==e.length?!1:ps(t)===ps(e)}function $n(t){if(!t||typeof t!="object")return"";const e=t;return String(e.prescription_name??e.library_name??"").trim()}async function En(t){const e=$n(t.aux_usage);if(e)return e;const i=(Array.isArray(t.herbs)?t.herbs:[]).filter(p=>_a(p==null?void 0:p.formula_type)==="辅方");if(!i.length)return"";const u=Number(t.creator_id)>0?Number(t.creator_id):0;if(!u)return"";try{const p=await Pi({page_no:1,page_size:200,formula_type:"辅方",prescribing_creator_id:u}),c=Array.isArray(p==null?void 0:p.lists)?p.lists:[];for(const h of c){const M=Array.isArray(h==null?void 0:h.herbs)?h.herbs:[];if(Tn(i,M))return String((h==null?void 0:h.prescription_name)??"").trim()}}catch{}return""}async function cs(t){if(!t.prescription_id){N.msgWarning("该订单未关联处方");return}Vt.value=!0,St.value=!0,x.value=null,$e.value="",G.value="internal";try{const e=await Ni({id:t.prescription_id}),s=(e==null?void 0:e.data)??e??null;if(s){const i=t.medication_days,u={...s};i!=null&&String(i).trim()!==""&&(u.medication_days=i),t.order_no&&!u.order_no&&(u.order_no=t.order_no),t.recipient_name&&!u.recipient_name&&(u.recipient_name=t.recipient_name),t.recipient_phone&&!u.recipient_phone&&(u.recipient_phone=t.recipient_phone),t.shipping_address&&!u.shipping_address&&(u.shipping_address=t.shipping_address),t.amount!=null&&u.order_amount==null&&(u.order_amount=t.amount),t.dose_count!=null&&String(t.dose_count).trim()!==""&&Number(t.dose_count)>0&&(u.dose_count=Number(t.dose_count)),t.dose_unit!=null&&String(t.dose_unit).trim()!==""&&(u.dose_unit=String(t.dose_unit));const p=t.linked_appointment;(!u.appointment_id||Number(u.appointment_id)<=0)&&p&&typeof p=="object"&&Number(p.id)>0&&(u.appointment_id=Number(p.id)),x.value=u,$e.value=await En(u)}else x.value=null,$e.value=""}catch(e){N.msgError((e==null?void 0:e.message)||"加载处方详情失败"),Vt.value=!1,$e.value=""}finally{St.value=!1}}async function Dn(t){const e=t.querySelectorAll('img[src^="http"]'),s=Array.from(e).map(async i=>{try{const u=await fetch(i.src,{mode:"cors"});if(!u.ok)return;const p=await u.blob(),c=await new Promise((h,M)=>{const b=new FileReader;b.onload=()=>h(b.result),b.onerror=M,b.readAsDataURL(p)});i.src=c}catch{}});await Promise.allSettled(s)}async function ms(){await lt();const t=Ya.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Dn(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),Lr(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 _s(){var s;const t=(s=x.value)==null?void 0:s.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function Fn(){if(x.value){Ee.value=!0;try{const t=await ms(),e=document.createElement("a");e.download=`${_s()}.png`,e.href=t.toDataURL("image/png"),e.click(),N.msgSuccess("图片已下载")}catch{N.msgError("下载图片失败")}finally{Ee.value=!1}}}async function Un(){if(x.value){Ee.value=!0;try{const t=await ms(),e=t.toDataURL("image/jpeg",.95),s=new Ur({orientation:"portrait",unit:"mm",format:"a4"}),i=210,u=297,p=i,c=t.height*p/t.width;if(c<=u)s.addImage(e,"JPEG",0,0,p,c);else{let h=c,M=0;for(;h>0;)s.addImage(e,"JPEG",0,M,p,c),h-=u,M-=u,h>0&&s.addPage()}s.save(`${_s()}.pdf`),N.msgSuccess("PDF已下载")}catch{N.msgError("下载PDF失败")}finally{Ee.value=!1}}}return(t,e)=>{const s=Gn,i=Kn,u=ar,p=tr,c=lr,h=sr,M=nr,b=rr,te=zr,J=er,R=or,T=ur,Pt=dr,Ot=cr,tt=ir,at=Ir,Se=fr,Fe=_r,ae=vr,X=gr,xe=yr,oa=kr,Ln=xr,z=wr,st=hr,In=Vr,zn=Cr,jn=Nr,Mn=Pr,Ue=Or,fs=Rr,qn=Ar,vs=Tr,pe=Er,ua=$r,_e=Zn,D=Wn("perms");return o(),f("div",Ei,[l(s,{class:"!border-none shadow-sm mb-4",shadow:"never"},{default:n(()=>[r("div",Di,[nt.value?(o(),f("div",Fi,[e[89]||(e[89]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),f(O,null,L(el,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.prescription_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>al(a.value)},[r("span",Li,d(a.label),1)],10,Ui)),64))])):v("",!0),r("div",Ii,[e[90]||(e[90]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),f(O,null,L(tl,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.payment_slip_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>sl(a.value)},[r("span",ji,d(a.label),1)],10,zi)),64))]),r("div",Mi,[e[91]||(e[91]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),f(O,null,L(Ks,a=>r("div",{key:"fs-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.fulfillment_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Qs(a.value)},[r("span",Bi,d(a.label),1)],10,qi)),64))]),r("div",Hi,[e[92]||(e[92]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),f(O,null,L(Js,a=>r("div",{key:"sm-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.supply_mode===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ys(a.value)},[r("span",Gi,d(a.label),1)],10,Wi)),64))]),r("div",Ki,[e[93]||(e[93]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),f(O,null,L(Xs,a=>r("div",{key:"ec-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.express_company===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Zs(a.value)},[r("span",Ji,d(a.label),1)],10,Qi)),64))])])]),_:1}),l(s,{class:"!border-none po-filter-card shadow-sm",shadow:"never"},{default:n(()=>[A((o(),f("div",Yi,[r("div",Xi,[e[94]||(e[94]=r("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)),r("div",Zi,[r("div",null,[r("div",eo,[l(i,{size:16,class:"text-sky-500"},{default:n(()=>[l(w(Qn))]),_:1}),_(" "+d(ue.value.orderHeading),1)]),r("div",to,[r("div",ao," ¥"+d(ue.value.orderPerformanceStr),1),r("div",so,[r("span",null,"合计 ¥"+d(ue.value.orderStr),1),r("span",lo,"已取消 ¥"+d(ue.value.orderCancelledStr),1)])])]),r("div",no,[l(i,{size:20},{default:n(()=>[l(w(Jn))]),_:1})])]),r("p",ro,d(ue.value.periodLine),1)]),r("div",io,[e[95]||(e[95]=r("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)),r("div",oo,[r("div",null,[r("div",uo,[l(i,{size:16,class:"text-emerald-500"},{default:n(()=>[l(w(Yn))]),_:1}),_(" "+d(ue.value.payHeading),1)]),r("div",po,[r("div",co," ¥"+d(ue.value.payPerformanceStr),1),r("div",mo,[r("span",null,"合计 ¥"+d(ue.value.payStr),1),r("span",_o,"已取消 ¥"+d(ue.value.payCancelledStr),1)])])]),r("div",fo,[l(i,{size:20},{default:n(()=>[l(w(Xn))]),_:1})])]),r("p",vo,d(ue.value.periodLine),1)])])),[[_e,w(Z).loading]]),l(J,{class:"ls-form",model:y,inline:""},{default:n(()=>[l(jr,{"time-type":w(ze),"onUpdate:timeType":e[0]||(e[0]=a=>pa(ze)?ze.value=a:null),"date-range":w(It),"onUpdate:dateRange":e[1]||(e[1]=a=>pa(It)?It.value=a:null),label:"创建时间",variant:"inline","show-all":"","picker-width":"230px",onTimeTypeChange:ol,onCustomChange:ul},null,8,["time-type","date-range"]),l(p,{class:"w-[260px]",label:"订单号"},{default:n(()=>[l(u,{modelValue:y.order_no,"onUpdate:modelValue":e[2]||(e[2]=a=>y.order_no=a),placeholder:"业务订单号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[140px]",label:"处方ID"},{default:n(()=>[l(u,{modelValue:y.prescription_id,"onUpdate:modelValue":e[3]||(e[3]=a=>y.prescription_id=a),placeholder:"处方ID",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"患者"},{default:n(()=>[l(u,{modelValue:y.patient_keyword,"onUpdate:modelValue":e[4]||(e[4]=a=>y.patient_keyword=a),placeholder:"姓名 / 手机号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"快递"},{default:n(()=>[l(u,{modelValue:y.express_keyword,"onUpdate:modelValue":e[5]||(e[5]=a=>y.express_keyword=a),placeholder:"快递单号 / 公司",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),Fs.value?(o(),k(p,{key:0,class:"w-[200px]",label:"下单人"},{default:n(()=>[l(h,{modelValue:y.audit_admin_id,"onUpdate:modelValue":e[6]||(e[6]=a=>y.audit_admin_id=a),clearable:"",filterable:"",placeholder:"全部下单人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(ga.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})):v("",!0),l(p,{class:"w-[200px]",label:"医生"},{default:n(()=>[l(h,{modelValue:y.doctor_id,"onUpdate:modelValue":e[7]||(e[7]=a=>y.doctor_id=a),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Lt.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:n(()=>[l(M,{modelValue:y.assistant_dept_id,"onUpdate:modelValue":e[8]||(e[8]=a=>y.assistant_dept_id=a),data:ot.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:Ms,placeholder:"医助部门(选父级含子级)",onChange:_l},null,8,["modelValue","data"])]),_:1}),l(p,{class:"w-[200px]",label:"医助"},{default:n(()=>[l(h,{modelValue:y.assistant_id,"onUpdate:modelValue":e[9]||(e[9]=a=>y.assistant_id=a),clearable:"",filterable:"",placeholder:"订单创建人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Sa.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[160px]",label:"服务渠道"},{default:n(()=>[l(h,{modelValue:y.service_channel,"onUpdate:modelValue":e[10]||(e[10]=a=>y.service_channel=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[140px]",label:"辅方"},{default:n(()=>[l(h,{modelValue:y.has_aux_formula,"onUpdate:modelValue":e[11]||(e[11]=a=>y.has_aux_formula=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"含辅方",value:"1"}),l(c,{label:"不含辅方",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,null,{default:n(()=>[l(b,{type:"primary",onClick:w(K)},{default:n(()=>[...e[96]||(e[96]=[_("查询",-1)])]),_:1},8,["onClick"]),l(b,{onClick:vl},{default:n(()=>[...e[97]||(e[97]=[_("重置",-1)])]),_:1}),A(l(te,{class:"ml-2.5","fetch-fun":w(ri),params:pl.value,"page-size":w(Z).size,"export-hint":"导出范围与上方筛选一致(履约状态、创建时间及其他条件均会生效)。含「自媒体渠道(挂号渠道来源)」:优先取该单关联处方登记的挂号;无则诊单下同患者挂号取 id 最大的一条(与前台挂号选择的记录一致);业绩侧栏带渠道筛选导出时与同页列表高亮挂号同源。「服务套餐」按字典 server_order 解析展示。「处方」导出主方/辅方药材明细;「主方/辅方服用方式、天数」与详情侧栏同口径(主方/辅方天数分别取处方 usage_days、辅方 aux_usage.usage_days;「天数」列为订单 medication_days)。「关联收款记录」与详情侧栏同源(已支付/已退款/待审核),每笔两行展示(摘要行+明细行),多笔空行分隔,单元格自动换行。「签收日期」与详情/业绩看板同源,仅读物流库(轨迹/签收时间):导出不再实时查快递100,速度只取决于数据库;签收时间由 `tcm:backfill-sign-time` 命令与物流自动更新定时任务落库,刚发货尚未同步的单子会暂时为空,待下次回填/定时任务刷新后显示。"},null,8,["fetch-fun","params","page-size"]),[[D,["tcm.prescriptionOrder/export"]]])]),_:1})]),_:1},8,["model"])]),_:1}),A((o(),k(s,{class:"!border-none mt-4 po-table-card shadow-sm",shadow:"never"},{default:n(()=>[r("div",go,[r("div",yo,[e[98]||(e[98]=r("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),r("span",bo,"共 "+d(w(Z).count)+" 条",1),ba.value?(o(),k(b,{key:0,type:"primary",plain:"",size:"small",class:"ml-3",disabled:ge.value.length===0,onClick:zs},{default:n(()=>[_(" 批量改派医助"+d(ge.value.length?`(${ge.value.length})`:""),1)]),_:1},8,["disabled"])):v("",!0)]),r("div",xo,[r("div",{class:q(["po-focus-board__item is-pending-rx",{"is-active":se.value==="pendingRx"}]),onClick:e[12]||(e[12]=a=>ut("pendingRx"))},[e[99]||(e[99]=r("span",{class:"po-focus-board__label"},"待处方审核",-1)),r("strong",ko,d(dt.value.pendingRx),1)],2),r("div",{class:q(["po-focus-board__item is-pending-pay",{"is-active":se.value==="pendingPay"}]),onClick:e[13]||(e[13]=a=>ut("pendingPay"))},[e[100]||(e[100]=r("span",{class:"po-focus-board__label"},"待支付审核",-1)),r("strong",ho,d(dt.value.pendingPay),1)],2),r("div",{class:q(["po-focus-board__item is-pending-ship",{"is-active":se.value==="pendingShip"}]),onClick:e[14]||(e[14]=a=>ut("pendingShip"))},[e[101]||(e[101]=r("span",{class:"po-focus-board__label"},"待发货",-1)),r("strong",wo,d(dt.value.pendingShip),1)],2),r("div",{class:q(["po-focus-board__item is-risk",{"is-active":se.value==="risk"}]),onClick:e[15]||(e[15]=a=>ut("risk"))},[e[102]||(e[102]=r("span",{class:"po-focus-board__label"},"重点异常",-1)),r("strong",Vo,d(dt.value.risk),1)],2)])]),l(tt,{data:w(Z).lists,size:"default",stripe:"",class:"po-data-table","row-class-name":fl,onSelectionChange:Is},{default:n(()=>[ba.value?(o(),k(R,{key:0,type:"selection",width:"44",selectable:()=>!0})):v("",!0),l(R,{label:"订单号","min-width":"178","show-overflow-tooltip":""},{default:n(({row:a})=>[r("div",So,[r("div",No,d(a.order_no||"—"),1),r("div",Co,[l(T,{size:"small",effect:"plain",type:w(Hr)(a)},{default:n(()=>[_(d(w(Wr)(a)),1)]),_:2},1032,["type"]),r("span",Po,"#"+d(a.id),1)])])]),_:1}),l(R,{label:"处方ID",prop:"prescription_id",width:"86"}),l(R,{label:"诊单ID",prop:"diagnosis_id",width:"86"}),l(R,{label:"收货人","min-width":"100"},{default:n(({row:a})=>[r("div",null,d(a.recipient_name||"—"),1),r("div",{class:q(["text-xs",w(ma)(a.recipient_phone,a.prescription_phone)?"text-red-600 font-semibold":"text-gray-400"])},[_(d(a.recipient_phone||"—")+" ",1),w(ma)(a.recipient_phone,a.prescription_phone)?(o(),f("span",Oo,"(与处方手机不一致)")):v("",!0)],2)]),_:1}),l(R,{label:"费用类别",width:"96"},{default:n(({row:a})=>[_(d(w(ks)(a.fee_type)),1)]),_:1}),l(R,{label:"金额","min-width":"100"},{default:n(({row:a})=>[r("div",Ao,[r("span",Ro,"¥"+d(a.amount),1),l(Pt,{placement:"top",width:200,trigger:"hover"},{reference:n(()=>[l(i,{class:"text-gray-400 cursor-pointer hover:text-primary"},{default:n(()=>[l(w(pr))]),_:1})]),default:n(()=>[r("div",To,[r("div",$o,[e[103]||(e[103]=r("span",{class:"text-gray-500"},"业务订单单据:",-1)),r("span",Eo,"¥"+d(a.amount),1)]),r("div",Do,[e[104]||(e[104]=r("span",{class:"text-gray-500"},"定金下限:",-1)),r("span",null,"¥"+d(w(B)(a.deposit_min_amount)),1)]),r("div",Fo,[e[105]||(e[105]=r("span",{class:"text-gray-500"},"实付(关联):",-1)),r("span",Uo,"¥"+d(w(B)(a.linked_pay_paid_total)),1)]),Dt()&&a.internal_cost!=null&&a.internal_cost!==""?(o(),f("div",Lo,[e[106]||(e[106]=r("span",{class:"text-gray-500"},"内部成本:",-1)),r("span",{class:q(["font-medium cursor-pointer select-none",oe.value?"text-orange-600":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[16]||(e[16]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${w(B)(a.internal_cost)}`:"****"),3)])):v("",!0)])]),_:2},1024)])]),_:1}),Dt()?(o(),k(R,{key:1,width:"100"},{header:n(()=>[r("span",{class:"cursor-pointer select-none hover:text-primary",title:"点击显示/隐藏内部成本",onClick:e[17]||(e[17]=Le(a=>oe.value=!oe.value,["stop"]))}," 内部成本 ")]),default:n(({row:a})=>[a.internal_cost!=null&&a.internal_cost!==""?(o(),f("span",{key:0,class:q(["cursor-pointer select-none",oe.value?"text-orange-600 font-medium":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[18]||(e[18]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${a.internal_cost}`:"****"),3)):(o(),f("span",Io,"—"))]),_:1})):v("",!0),l(R,{label:"处方审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.prescription_audit_status),size:"small",class:q(zt("rx",a))},{default:n(()=>[_(d(Na(a.prescription_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"支付单审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.payment_slip_audit_status),size:"small",class:q(zt("pay",a))},{default:n(()=>[_(d(Na(a.payment_slip_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"履约",width:"108"},{default:n(({row:a})=>[l(T,{type:w(Gr)(a.fulfillment_status),size:"small",class:q(zt("fulfillment",a))},{default:n(()=>[_(d(w(Kr)(a.fulfillment_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"关联支付单",width:"100"},{default:n(({row:a})=>[Number(a.linked_pay_order_count)>0?(o(),f("span",{key:0,class:"text-primary cursor-default",title:a.linked_pay_order_id?`#${a.linked_pay_order_id}…`:""},d(a.linked_pay_order_count)+" 笔 ",9,zo)):(o(),f("span",jo,"—"))]),_:1}),l(R,{label:"创建时间","min-width":"144"},{default:n(({row:a})=>[_(d(w(hs)(a.create_time)),1)]),_:1}),l(R,{label:"开方人",prop:"doctor_name",width:"90","show-overflow-tooltip":""}),l(R,{label:"创建人",prop:"creator_name",width:"90","show-overflow-tooltip":""}),l(R,{"min-width":"128","show-overflow-tooltip":""},{header:n(()=>[e[107]||(e[107]=r("span",null,"二中心·指派",-1)),l(Ot,{placement:"top","max-width":"320",content:"与诊单「指派记录」快照一致:仅当本条业务单在操作瞬间为快照中的「关联业务单」(创建人+创建时间命中)时显示。绿色=新医助在名称含「二中心」的部门及其下级;灰色=系统自动释放诊单医助。"},{default:n(()=>[l(i,{class:"ml-0.5 align-middle text-gray-400 cursor-help"},{default:n(()=>[l(w(mr))]),_:1})]),_:1})]),default:n(({row:a})=>[Number(a.po_assign_snapshot_hit)?Number(a.po_assign_is_release)?(o(),k(T,{key:1,type:"info",size:"small"},{default:n(()=>[...e[108]||(e[108]=[_("已释放",-1)])]),_:1})):Number(a.po_assign_to_er_center)?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[_(d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),k(T,{key:3,type:"warning",size:"small",effect:"plain"},{default:n(()=>[_(" 非二中心 "+d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),f("span",Mo,"—"))]),_:1}),l(R,{label:"操作",width:"310",fixed:"right"},{default:n(({row:a})=>[r("div",qo,[A((o(),k(b,{type:"primary",link:"",onClick:P=>Fl(a.id)},{default:n(()=>[_(d(Us.value),1)]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/detail"]]]),Ra(a)?A((o(),k(b,{key:0,type:"primary",link:"",onClick:P=>Wl(a)},{default:n(()=>[...e[109]||(e[109]=[_("编辑",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/edit"]]]):v("",!0),Cl(a)?A((o(),k(b,{key:1,type:"success",link:"",onClick:P=>en(a)},{default:n(()=>[...e[110]||(e[110]=[_("修改单号",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:2,type:"primary",link:"",onClick:P=>Wa(a)},{default:n(()=>[...e[111]||(e[111]=[_("确认发货",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:3,type:"success",link:"",onClick:P=>Qa(a)},{default:n(()=>[...e[112]||(e[112]=[_("补齐支付单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:4,type:"primary",link:"",onClick:P=>Ja(a)},{default:n(()=>[...e[113]||(e[113]=[_("完成订单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:5,type:"danger",link:"",onClick:P=>Ka(a)},{default:n(()=>[...e[114]||(e[114]=[_("退款",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0),kl(a)?A((o(),k(b,{key:6,type:"danger",link:"",onClick:P=>Ql(a)},{default:n(()=>[...e[115]||(e[115]=[_("撤回",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/withdraw"]]]):v("",!0),Ua(a)?A((o(),k(b,{key:7,type:"warning",link:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[116]||(e[116]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0)])]),_:1})]),_:1},8,["data"]),r("div",Bo,[l(at,{modelValue:w(Z),"onUpdate:modelValue":e[19]||(e[19]=a=>pa(Z)?Z.value=a:null),"page-sizes":[15,20,30,40,100,150,200],onChange:w(U)},null,8,["modelValue","onChange"])])]),_:1})),[[_e,w(Z).loading]]),l(qr,{ref_key:"detailDrawerRef",ref:H,"gancao-preview-loading":Oe.value,onUpdateAmount:El,onPatchRxPatient:Rl,onViewPrescription:e[20]||(e[20]=a=>$.value&&cs($.value)),onTestGancaoPreview:Zl,onViewPatient:Ts,onDetailChanged:w(U)},{"header-extra":n(({detail:a})=>[r("div",Ho,[e[119]||(e[119]=r("span",{class:"text-sm text-gray-500"},"发货类型",-1)),A((o(),k(Fe,{"model-value":Y(a.ship_mode),size:"small",disabled:jt.value||!Ea(a),onChange:Sl},{default:n(()=>[l(Se,{label:"gancao"},{default:n(()=>[...e[117]||(e[117]=[_("甘草药房",-1)])]),_:1}),l(Se,{label:"direct",disabled:$a(a)},{default:n(()=>[...e[118]||(e[118]=[_("洛阳药房",-1)])]),_:1},8,["disabled"])]),_:2},1032,["model-value","disabled"])),[[D,["tcm.prescriptionOrder/setShipMode"]]]),hl.value?v("",!0):(o(),k(T,{key:0,type:Y(a.ship_mode)==="direct"?"warning":"success",effect:"plain",round:""},{default:n(()=>[_(d(wl(a.ship_mode)),1)]),_:2},1032,["type"]))])]),"header-actions":n(({detail:a})=>[l(Br,{order:a,onResolved:Nl},null,8,["order"]),Ua(a)?A((o(),k(b,{key:0,type:"warning",size:"small",plain:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[120]||(e[120]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0),gl(a)?A((o(),k(b,{key:1,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"prescription")},{default:n(()=>[...e[121]||(e[121]=[_(" 处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),bl(a)?A((o(),k(b,{key:2,type:"info",size:"small",plain:"",onClick:P=>yn(a)},{default:n(()=>[...e[122]||(e[122]=[_(" 撤回处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),yl(a)?A((o(),k(b,{key:3,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"payment")},{default:n(()=>[...e[123]||(e[123]=[_(" 支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),xl(a)?A((o(),k(b,{key:4,type:"info",size:"small",plain:"",onClick:P=>bn(a)},{default:n(()=>[...e[124]||(e[124]=[_(" 撤回支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:5,type:"primary",size:"small",plain:"",onClick:P=>Wa(a)},{default:n(()=>[...e[125]||(e[125]=[_(" 确认发货 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:6,type:"success",size:"small",plain:"",onClick:P=>Qa(a)},{default:n(()=>[...e[126]||(e[126]=[_(" 关联支付单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:7,type:"primary",size:"small",plain:"",onClick:P=>Ja(a)},{default:n(()=>[...e[127]||(e[127]=[_(" 完成订单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:8,type:"danger",size:"small",plain:"",onClick:P=>Ka(a)},{default:n(()=>[...e[128]||(e[128]=[_(" 退款 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0)]),_:1},8,["gancao-preview-loading","onDetailChanged"]),l(X,{modelValue:je.value,"onUpdate:modelValue":e[23]||(e[23]=a=>je.value=a),title:"修改订单金额",width:"420px","destroy-on-close":"","close-on-click-modal":!1,onClosed:$l},{footer:n(()=>[l(b,{onClick:e[22]||(e[22]=a=>je.value=!1)},{default:n(()=>[...e[130]||(e[130]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Bt.value,onClick:Ia},{default:n(()=>[...e[131]||(e[131]=[_(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"updateAmountFormRef",ref:pt,model:ce,rules:Ol,"label-width":"96px",class:"pr-2",onSubmit:Le(Ia,["prevent"])},{default:n(()=>[l(p,{label:"当前金额"},{default:n(()=>{var a;return[r("div",Wo,"¥"+d(w(B)((a=$.value)==null?void 0:a.amount)),1)]}),_:1}),l(p,{label:"新金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:ce.amount,"onUpdate:modelValue":e[21]||(e[21]=a=>ce.amount=a),min:0,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[129]||(e[129]=r("div",{class:"text-xs text-gray-400 pl-[96px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(X,{modelValue:ke.value,"onUpdate:modelValue":e[46]||(e[46]=a=>ke.value=a),title:re.value?"修改物流信息(甘草订单)":"编辑业务订单",width:"940px",top:"4vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog",onClosed:ql},{footer:n(()=>[r("div",Pu,[re.value?v("",!0):(o(),f("div",Ou,[r("span",Au,"第 "+d(I.value+1)+" / 3 步",1),I.value===2&&j.value>0?(o(),f("span",Ru," 订单金额与关联支付单合计须 ≥ ¥"+d(w(B)(j.value)),1)):v("",!0)])),r("div",Tu,[l(b,{size:"large",onClick:e[45]||(e[45]=a=>ke.value=!1)},{default:n(()=>[...e[144]||(e[144]=[_("取消",-1)])]),_:1}),re.value?v("",!0):(o(),f(O,{key:0},[I.value>0?(o(),k(b,{key:0,size:"large",onClick:Bl},{default:n(()=>[...e[145]||(e[145]=[_("上一步",-1)])]),_:1})):v("",!0),I.value<2?(o(),k(b,{key:1,type:"primary",size:"large",onClick:Hl},{default:n(()=>[...e[146]||(e[146]=[_(" 下一步 ",-1)])]),_:1})):v("",!0)],64)),re.value||I.value===2?(o(),k(b,{key:1,type:"primary",size:"large",loading:Kt.value,onClick:Gl},{default:n(()=>[...e[147]||(e[147]=[_(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:n(()=>[A((o(),f("div",Go,[ne.value?(o(),f("div",Ko,[r("div",Qo,[e[132]||(e[132]=r("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),r("div",Jo,[r("span",Yo,"#"+d(ne.value.id),1),ne.value.sn?(o(),f("span",Xo,d(ne.value.sn),1)):v("",!0),r("span",Zo,d(ne.value.patient_name||"—"),1)])]),l(Ot,{content:za.value,placement:"bottom","show-after":300},{default:n(()=>[r("div",eu,d(za.value),1)]),_:1},8,["content"])])):v("",!0),re.value?(o(),k(xe,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4",title:"订单已提交甘草,仅可修改快递单号与承运商;地址、金额等变更请先走取消流程。"},br({_:2},[_t.value?{name:"default",fn:n(()=>[r("div",tu,"甘草处方单号:"+d(_t.value),1)]),key:"0"}:void 0]),1024)):v("",!0),re.value?v("",!0):(o(),f(O,{key:2},[l(Ln,{active:I.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:n(()=>[l(oa,{title:"患者与收货",description:"诊单与物流地址"}),l(oa,{title:"服务与支付单",description:"套餐与关联收款"}),l(oa,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),r("p",au,d(Ul.value),1)],64)),l(J,{ref_key:"editFormRef",ref:he,model:m,rules:Ml.value,"label-width":"108px",class:"create-order-form"},{default:n(()=>[re.value?(o(),k(st,{key:0,gutter:20},{default:n(()=>[l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",su,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[24]||(e[24]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[25]||(e[25]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1})]),_:1})):v("",!0),re.value?v("",!0):(o(),f(O,{key:1},[A(r("div",lu,[l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"收货人",prop:"recipient_name"},{default:n(()=>[l(u,{modelValue:m.recipient_name,"onUpdate:modelValue":e[26]||(e[26]=a=>m.recipient_name=a),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"收货手机",prop:"recipient_phone"},{default:n(()=>[l(u,{modelValue:m.recipient_phone,"onUpdate:modelValue":e[27]||(e[27]=a=>m.recipient_phone=a),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"省市区",prop:"region"},{default:n(()=>[l(In,{modelValue:m.region,"onUpdate:modelValue":e[28]||(e[28]=a=>m.region=a),options:it.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"详细地址",prop:"shipping_address"},{default:n(()=>[l(u,{modelValue:m.shipping_address,"onUpdate:modelValue":e[29]||(e[29]=a=>m.shipping_address=a),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===0]]),A(r("div",nu,[nt.value?(o(),k(st,{key:0,gutter:20,class:"mb-1"},{default:n(()=>[l(z,{span:24},{default:n(()=>[r("div",ru,[e[135]||(e[135]=r("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),m.prescription_id?(o(),k(b,{key:0,type:"primary",size:"small",link:"",onClick:Rn},{default:n(()=>[...e[133]||(e[133]=[_(" 详细 ",-1)])]),_:1})):v("",!0),m.id?(o(),k(b,{key:1,type:"warning",size:"small",link:"",loading:Oe.value,icon:w(Sr),onClick:Xl},{default:n(()=>[...e[134]||(e[134]=[_(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),r("span",iu,"ID: "+d(m.prescription_id||"—"),1)]),r("div",ou,[ja.value.length?(o(),f("div",uu,[e[136]||(e[136]=r("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),f(O,null,L(ja.value,(a,P)=>(o(),f("div",{key:P,class:"pl-0 min-w-0"},[a.length?(o(),k(jn,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:n(()=>[(o(!0),f(O,null,L(a,(S,E)=>(o(),k(zn,{key:E},{default:n(()=>[r("span",du,d(S),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),f("div",pu,"创建人所属部门:—"))])]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"复诊"},{default:n(()=>[l(Mn,{modelValue:m.is_follow_up,"onUpdate:modelValue":e[30]||(e[30]=a=>m.is_follow_up=a),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:n(()=>[r("div",cu,[l(ae,{modelValue:m.medication_days,"onUpdate:modelValue":e[31]||(e[31]=a=>m.medication_days=a),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[137]||(e[137]=r("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"上次医生"},{default:n(()=>[l(u,{modelValue:m.prev_staff,"onUpdate:modelValue":e[32]||(e[32]=a=>m.prev_staff=a),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:La.value,prop:"dose_count"},{default:n(()=>[l(ae,{modelValue:m.dose_count,"onUpdate:modelValue":e[33]||(e[33]=a=>m.dose_count=a),min:1,placeholder:La.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"剂量单位",prop:"dose_unit"},{default:n(()=>[l(h,{modelValue:m.dose_unit,"onUpdate:modelValue":e[34]||(e[34]=a=>m.dose_unit=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"剂",value:"剂"}),l(c,{label:"丸",value:"丸"}),l(c,{label:"袋",value:"袋"}),l(c,{label:"盒",value:"盒"}),l(c,{label:"瓶",value:"瓶"}),l(c,{label:"膏",value:"膏"}),l(c,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"服务渠道"},{default:n(()=>[l(h,{modelValue:m.service_channel,"onUpdate:modelValue":e[35]||(e[35]=a=>m.service_channel=a),class:"w-full",filterable:"","allow-create":"","default-first-option":"",clearable:"",placeholder:"可选或自定义输入"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"服务套餐"},{default:n(()=>[l(h,{modelValue:m.service_package,"onUpdate:modelValue":e[36]||(e[36]=a=>m.service_package=a),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:n(()=>[(o(!0),f(O,null,L(Il.value,a=>(o(),k(c,{key:a.value,label:a.name,value:a.value,disabled:a.status===0},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",mu,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[37]||(e[37]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[38]||(e[38]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"关联支付单",prop:"pay_order_ids",required:j.value>0},{default:n(()=>[l(h,{modelValue:m.pay_order_ids,"onUpdate:modelValue":e[39]||(e[39]=a=>m.pay_order_ids=a),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:j.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Qt.value},{default:n(()=>[(o(!0),f(O,null,L(Be.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id,class:"!h-auto py-1.5"},{default:n(()=>[r("div",_u,[r("div",fu,[r("span",vu,d(a.order_no),1),r("span",gu,"¥"+d(a.amount),1)]),r("div",yu,[r("span",bu,[_(d(ft(a.order_type))+" · "+d(w(Tt)(a)),1),a.remark?(o(),f(O,{key:0},[_(" · "+d(a.remark),1)],64)):v("",!0)]),r("span",xu,d(String(a.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),r("div",ku,[j.value>0?(o(),f(O,{key:0},[r("span",hu,"当前已开启关联支付门槛(¥"+d(w(B)(j.value))+"),须至少选择一笔支付单。",1),e[138]||(e[138]=r("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[140]||(e[140]=_(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),l(Ot,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:n(()=>[...e[139]||(e[139]=[r("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[ca,I.value===1]]),A(r("div",wu,[r("div",{class:q(["create-order-deposit-bar",Jt.value>=j.value?"is-ok":"is-warn"])},[r("div",Vu,[e[141]||(e[141]=r("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),r("strong",null,"¥"+d(w(B)(j.value)),1),r("span",Su,d(j.value>0?"须 ≥ 此值":"未设置"),1)]),e[143]||(e[143]=r("div",{class:"create-order-deposit-bar__sep"},null,-1)),r("div",Nu,[e[142]||(e[142]=r("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),r("strong",null,"¥"+d(w(B)(Jt.value)),1),r("span",Cu,d(Jt.value>=j.value?"已达标":"未达标"),1)])],2),l(st,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"费用类别",prop:"fee_type"},{default:n(()=>[l(h,{modelValue:m.fee_type,"onUpdate:modelValue":e[40]||(e[40]=a=>m.fee_type=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"总金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:m.amount,"onUpdate:modelValue":e[41]||(e[41]=a=>m.amount=a),min:zl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),A((o(),k(z,{span:12},{default:n(()=>[l(p,{label:"内部成本"},{default:n(()=>[l(ae,{modelValue:m.internal_cost,"onUpdate:modelValue":e[42]||(e[42]=a=>m.internal_cost=a),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[D,["finance.account_log/lists"]]]),l(z,{span:24},{default:n(()=>[A((o(),k(p,{label:"药房备注"},{default:n(()=>[l(u,{modelValue:m.remark_extra,"onUpdate:modelValue":e[43]||(e[43]=a=>m.remark_extra=a),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[D,["tcm.prescriptionOrder/editRemarkExtra"]]]),l(p,{label:"医助备注"},{default:n(()=>[l(u,{modelValue:m.remark_assistant,"onUpdate:modelValue":e[44]||(e[44]=a=>m.remark_assistant=a),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===2]])],64))]),_:1},8,["model","rules"])])),[[_e,Gt.value]])]),_:1},8,["modelValue","title"]),l(X,{modelValue:He.value,"onUpdate:modelValue":e[51]||(e[51]=a=>He.value=a),title:Kl.value,width:"480px","destroy-on-close":"",onClosed:e[52]||(e[52]=a=>Pe.value="")},{footer:n(()=>[l(b,{onClick:e[48]||(e[48]=a=>He.value=!1)},{default:n(()=>[...e[149]||(e[149]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:vt.value,onClick:e[49]||(e[49]=a=>qa("approve"))},{default:n(()=>[...e[150]||(e[150]=[_("同意通过",-1)])]),_:1},8,["loading"]),l(b,{type:"danger",loading:vt.value,onClick:e[50]||(e[50]=a=>qa("reject"))},{default:n(()=>[...e[151]||(e[151]=[_("驳回阻止",-1)])]),_:1},8,["loading"])]),default:n(()=>[We.value&&We.value.completion_request===1?(o(),k(xe,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:n(()=>[r("div",$u,[e[148]||(e[148]=r("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),r("div",Eu," 申请人:"+d(We.value.completion_request_by_name||"—"),1),r("div",Du," 申请时间:"+d(w(hs)(We.value.completion_request_time)),1)])]),_:1})):v("",!0),e[152]||(e[152]=r("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),l(u,{modelValue:Pe.value,"onUpdate:modelValue":e[47]||(e[47]=a=>Pe.value=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),l(X,{modelValue:Ge.value,"onUpdate:modelValue":e[56]||(e[56]=a=>Ge.value=a),title:"修改快递单号",width:"420px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[55]||(e[55]=a=>Ge.value=!1)},{default:n(()=>[...e[154]||(e[154]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:bt.value,onClick:Ha},{default:n(()=>[...e[155]||(e[155]=[_("保存单号",-1)])]),_:1},8,["loading"])]),default:n(()=>[A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ha,["prevent"])},{default:n(()=>[l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:me.express_company,"onUpdate:modelValue":e[53]||(e[53]=a=>me.express_company=a),class:"w-full",placeholder:"选择承运商"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:me.tracking_number,"onUpdate:modelValue":e[54]||(e[54]=a=>me.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:"",autofocus:""},null,8,["modelValue"])]),_:1}),e[153]||(e[153]=r("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[_e,bt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:we.value,"onUpdate:modelValue":e[60]||(e[60]=a=>we.value=a),title:"确认发货",width:"440px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[59]||(e[59]=a=>we.value=!1)},{default:n(()=>[...e[157]||(e[157]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:xt.value,onClick:Ga},{default:n(()=>[...e[158]||(e[158]=[_(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ga,["prevent"])},{default:n(()=>[l(p,{label:"发货方式"},{default:n(()=>[l(T,{type:Y(W.ship_mode)==="direct"?"warning":"success",effect:"plain",size:"default"},{default:n(()=>[_(d(Vl.value),1)]),_:1},8,["type"]),e[156]||(e[156]=r("span",{class:"text-xs text-gray-400 ml-2"},"请在订单详情顶部「发货类型」中设置,此处不可修改",-1))]),_:1}),l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:W.express_company,"onUpdate:modelValue":e[57]||(e[57]=a=>W.express_company=a),class:"w-full"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:W.tracking_number,"onUpdate:modelValue":e[58]||(e[58]=a=>W.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[_e,xt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Re.value,"onUpdate:modelValue":e[65]||(e[65]=a=>Re.value=a),title:"完成订单",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:nn},{footer:n(()=>[l(b,{onClick:e[64]||(e[64]=a=>Re.value=!1)},{default:n(()=>[...e[162]||(e[162]=[_("取消",-1)])]),_:1}),l(b,{type:ye.value===10?"danger":"primary",loading:Ke.value,onClick:un},{default:n(()=>[_(d(ye.value===10?"确认退款":"确定"),1)]),_:1},8,["type","loading"])]),default:n(()=>[A((o(),f("div",Fu,[Me.value.show?(o(),k(xe,{key:0,type:"error",effect:"dark",closable:!1,"show-icon":"",class:"mb-3 !items-start ring-2 ring-red-600/70",title:"物流异常:轨迹含拒收/退回等,请先核实处理再结案"},{default:n(()=>[r("div",Uu,[Me.value.keywords.length?(o(),f("div",Lu,[e[159]||(e[159]=r("span",{class:"text-red-100/90"},"命中:",-1)),(o(!0),f(O,null,L(Me.value.keywords,a=>(o(),k(T,{key:a,type:"danger",effect:"plain",size:"small",class:"!border-white/35 !text-white"},{default:n(()=>[_(d(a),1)]),_:2},1024))),128))])):v("",!0),Me.value.lines.length?(o(),f("ul",Iu,[(o(!0),f(O,null,L(Me.value.lines,(a,P)=>(o(),f("li",{key:P},d(a),1))),128))])):v("",!0),e[160]||(e[160]=r("div",{class:"text-red-100/85 border-t border-white/15 pt-1.5"}," 确认已协调拒收/退回后续(重发、退款、改址等)后再完成订单。 ",-1))])]),_:1})):v("",!0),e[161]||(e[161]=r("p",{class:"text-sm text-gray-600 mb-3"}," 请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总;选择「退款」时将关联收款单标记为已退款并清零本单已付。 ",-1)),l(h,{modelValue:ye.value,"onUpdate:modelValue":e[61]||(e[61]=a=>ye.value=a),class:"w-full",placeholder:"请选择"},{default:n(()=>[(o(),f(O,null,L(an,a=>l(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),ye.value===10?(o(),f(O,{key:1},[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mt-3 !items-start",title:"退款将处理本单全部关联收款单,已付总额清零,且不可撤销。"}),A((o(),f("div",zu,[de.value.length?(o(),f("div",ju,[r("div",Mu," 将退款的关联收款("+d(de.value.length)+" 笔 · 合计 ¥"+d(w(B)(sn.value))+") ",1),l(tt,{data:de.value,size:"small",border:"",stripe:"","max-height":"200"},{default:n(()=>[l(R,{prop:"order_no",label:"单号","min-width":"120","show-overflow-tooltip":""}),l(R,{label:"类型",width:"88"},{default:n(({row:a})=>[_(d(a.order_type_desc||w(ks)(a.order_type)),1)]),_:1}),l(R,{label:"金额",width:"88",align:"right"},{default:n(({row:a})=>[r("span",qu,"¥"+d(a.amount),1)]),_:1}),l(R,{label:"状态",width:"92",align:"center"},{default:n(({row:a})=>[l(T,{type:w(Qr)(a.status),size:"small"},{default:n(()=>[_(d(a.status_desc||w(Jr)(a.status)),1)]),_:2},1032,["type"])]),_:1})]),_:1},8,["data"])])):Qe.value?v("",!0):(o(),f("p",Bu," 当前无已关联的收款单;提交后仍将本单标记为「退款」并清零已付。 "))])),[[_e,Qe.value]]),l(J,{ref_key:"completeRefundFormRef",ref:ta,model:ee,rules:ln.value,"label-width":"88px",class:"mt-3"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:ee.refund_amount,"onUpdate:modelValue":e[62]||(e[62]=a=>ee.refund_amount=a),min:.01,max:be.value>0?be.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Hu," 可退上限 ¥"+d(w(B)(be.value)),1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:ee.reason,"onUpdate:modelValue":e[63]||(e[63]=a=>ee.reason=a),type:"textarea",rows:3,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])],64)):v("",!0)])),[[_e,ct.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Ye.value,"onUpdate:modelValue":e[69]||(e[69]=a=>Ye.value=a),title:"订单退款",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:cn},{footer:n(()=>[l(b,{onClick:e[68]||(e[68]=a=>Ye.value=!1)},{default:n(()=>[...e[163]||(e[163]=[_("取消",-1)])]),_:1}),l(b,{type:"danger",loading:la.value,onClick:mn},{default:n(()=>[...e[164]||(e[164]=[_(" 确认退款 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:dn.value},null,8,["title"]),l(J,{ref_key:"refundOrderFormRef",ref:na,model:Q,rules:pn.value,"label-width":"88px"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:Q.refund_amount,"onUpdate:modelValue":e[66]||(e[66]=a=>Q.refund_amount=a),min:.01,max:ie.value>0?ie.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Wu," 可退上限 ¥"+d(w(B)(ie.value))+"(默认全额);部分退款时按金额从关联收款单依次标记已退款,并扣减本单已付。 ",1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:Q.reason,"onUpdate:modelValue":e[67]||(e[67]=a=>Q.reason=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue"]),l(X,{modelValue:Xe.value,"onUpdate:modelValue":e[77]||(e[77]=a=>Xe.value=a),title:"补齐支付单",width:"600px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[78]||(e[78]=a=>{var P;return(P=ht.value)==null?void 0:P.clearValidate()})},{footer:n(()=>[l(b,{onClick:e[76]||(e[76]=a=>Xe.value=!1)},{default:n(()=>[...e[174]||(e[174]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:kt.value,onClick:gn},{default:n(()=>[_(d(C.add_mode==="completion_only"?"提交申请":"确认新增"),1)]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:_n.value,type:"info",closable:!1,"show-icon":"",class:"mb-4"},null,8,["title"]),A((o(),k(J,{ref_key:"addPayOrderFormRef",ref:ht,model:C,rules:fn.value,"label-width":"90px",class:"pr-2"},{default:n(()=>[l(p,{label:"添加方式",prop:"add_mode"},{default:n(()=>[l(Fe,{modelValue:C.add_mode,"onUpdate:modelValue":e[70]||(e[70]=a=>C.add_mode=a)},{default:n(()=>[l(Ue,{value:"create"},{default:n(()=>[...e[165]||(e[165]=[_("付呗",-1)])]),_:1}),l(Ue,{value:"create_express"},{default:n(()=>[...e[166]||(e[166]=[_("快递代收",-1)])]),_:1}),l(Ue,{value:"link"},{default:n(()=>[...e[167]||(e[167]=[_("关联已有",-1)])]),_:1}),l(Ue,{value:"completion_only"},{default:n(()=>[...e[168]||(e[168]=[_("直接完单申请",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),C.add_mode==="create"||C.add_mode==="create_express"?(o(),f(O,{key:0},[l(p,{label:"费用类别",prop:"order_type"},{default:n(()=>[l(h,{modelValue:C.order_type,"onUpdate:modelValue":e[71]||(e[71]=a=>C.order_type=a),class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"支付金额",prop:"pay_amount"},{default:n(()=>[l(ae,{modelValue:C.pay_amount,"onUpdate:modelValue":e[72]||(e[72]=a=>C.pay_amount=a),min:0,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元,可为 0)"},null,8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"pay_remark"},{default:n(()=>[l(u,{modelValue:C.pay_remark,"onUpdate:modelValue":e[73]||(e[73]=a=>C.pay_remark=a),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):C.add_mode==="completion_only"?(o(),k(xe,{key:1,type:"warning",closable:!1,"show-icon":"",class:"!mb-0"},{title:n(()=>[...e[169]||(e[169]=[_(" 不新增或关联支付单,仅向审核人员提交「完成订单」申请;提交后支付审核将变为待审核,审核通过后将自动结案。 ",-1)])]),_:1})):(o(),k(p,{key:2,label:"选择支付单",prop:"link_pay_order_id"},{default:n(()=>[l(h,{modelValue:C.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=a=>C.link_pay_order_ids=a),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:ra.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:n(()=>[(o(!0),f(O,null,L(wt.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id},{default:n(()=>[r("div",Gu,[r("div",Ku,[r("span",Qu,d(a.order_no),1),r("span",Ju,"¥"+d(a.amount),1)]),r("div",Yu,d(ft(a.order_type))+" · "+d(w(Tt)(a)),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[170]||(e[170]=r("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),C.add_mode!=="completion_only"?(o(),k(p,{key:3,label:"完单申请"},{default:n(()=>[l(Fe,{modelValue:C.completion_request,"onUpdate:modelValue":e[75]||(e[75]=a=>C.completion_request=a)},{default:n(()=>[l(Ue,{value:0},{default:n(()=>[...e[171]||(e[171]=[_("不申请",-1)])]),_:1}),l(Ue,{value:1},{default:n(()=>[...e[172]||(e[172]=[_("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[173]||(e[173]=r("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})):v("",!0)]),_:1},8,["model","rules"])),[[_e,kt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:qe.value,"onUpdate:modelValue":e[82]||(e[82]=a=>qe.value=a),title:"修改处方患者信息",width:"440px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:Tl},{footer:n(()=>[l(b,{onClick:e[81]||(e[81]=a=>qe.value=!1)},{default:n(()=>[...e[175]||(e[175]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ht.value,onClick:Dl},{default:n(()=>[...e[176]||(e[176]=[_(" 保存 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"patchRxPatientFormRef",ref:Wt,model:le,rules:Al,"label-width":"96px"},{default:n(()=>[l(p,{label:"患者姓名",prop:"patient_name"},{default:n(()=>[l(u,{modelValue:le.patient_name,"onUpdate:modelValue":e[79]||(e[79]=a=>le.patient_name=a),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),l(p,{label:"手机",prop:"phone"},{default:n(()=>[l(u,{modelValue:le.phone,"onUpdate:modelValue":e[80]||(e[80]=a=>le.phone=a),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(vs,{modelValue:Vt.value,"onUpdate:modelValue":e[84]||(e[84]=a=>Vt.value=a),size:"920px","close-on-click-modal":!1},{header:n(()=>[r("div",Xu,[e[179]||(e[179]=r("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),x.value&&!St.value?(o(),f("div",Zu,[l(b,{size:"small",loading:Ee.value,onClick:Fn},{default:n(()=>[...e[177]||(e[177]=[_(" 下载图片 ",-1)])]),_:1},8,["loading"]),l(b,{size:"small",loading:Ee.value,onClick:Un},{default:n(()=>[...e[178]||(e[178]=[_(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:n(()=>{var a,P;return[A((o(),f("div",ed,[x.value?(o(),k(qn,{key:0,modelValue:G.value,"onUpdate:modelValue":e[83]||(e[83]=S=>G.value=S),class:"mx-4 mt-2",style:{"margin-bottom":"0px","z-index":"1",position:"relative"}},{default:n(()=>[l(fs,{label:"药房联",name:"internal"}),l(fs,{label:"处方联",name:"user"})]),_:1},8,["modelValue"])):v("",!0),x.value?(o(),f("div",td,[Number(x.value.void_status)===1?(o(),k(T,{key:0,type:"danger",size:"small"},{default:n(()=>[...e[180]||(e[180]=[_("已作废",-1)])]),_:1})):Number(x.value.business_prescription_audit_rejected)===1?(o(),k(T,{key:1,type:"danger",size:"small"},{default:n(()=>[...e[181]||(e[181]=[_("业务订单已驳回",-1)])]),_:1})):Number(x.value.audit_status)===1?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[...e[182]||(e[182]=[_("已通过",-1)])]),_:1})):Number(x.value.audit_status)===0?(o(),k(T,{key:3,type:"warning",size:"small"},{default:n(()=>[...e[183]||(e[183]=[_("待审核",-1)])]),_:1})):(o(),k(T,{key:4,type:"danger",size:"small"},{default:n(()=>[...e[184]||(e[184]=[_("已驳回",-1)])]),_:1}))])):v("",!0),x.value&&Number(x.value.void_status)===1?(o(),f("div",ad," 作废人:"+d(x.value.void_by_name||"—")+",作废时间:"+d(Pn(x.value.void_time)),1)):x.value&&Number(x.value.business_prescription_audit_rejected)===1?(o(),f("div",sd,[e[185]||(e[185]=r("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),x.value.business_prescription_audit_remark?(o(),f("div",ld," 驳回意见:"+d(x.value.business_prescription_audit_remark),1)):v("",!0)])):x.value&&Number(x.value.audit_status)===2?(o(),f("div",nd,[e[186]||(e[186]=r("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),x.value.audit_remark?(o(),f("div",rd,"驳回意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0),x.value?(o(),f("div",{key:5,ref_key:"prescriptionSlipPrintRef",ref:Ya,class:"rx-paper"},[r("div",id,d(G.value==="internal"?"药房联":xn),1),r("div",od,[r("span",ud,d(G.value==="user"?"服药前请核对姓名、电话、医生等信息以及医嘱等要点":"服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点"),1),r("div",dd,[r("div",pd,[e[187]||(e[187]=r("span",{class:"rx-meta-label"},"日期",-1)),r("span",cd,d(kn.value),1)]),r("div",md,[e[188]||(e[188]=r("span",{class:"rx-meta-label"},"处方编号",-1)),r("span",_d,d(hn.value),1)]),r("div",fd,[e[189]||(e[189]=r("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),r("span",vd,d(wn.value),1)]),as.value?(o(),f("div",gd,[e[190]||(e[190]=r("span",{class:"rx-meta-label"},"业务单号",-1)),r("span",yd,d(as.value),1)])):v("",!0)])]),r("div",bd,[r("div",xd,[r("div",kd,[e[191]||(e[191]=r("span",{class:"rx-key"},"姓名",-1)),r("span",hd,d(x.value.patient_name||"—"),1)]),r("div",wd,[e[192]||(e[192]=r("span",{class:"rx-key"},"性别",-1)),r("span",Vd,d(On(x.value.gender)),1)]),r("div",Sd,[e[193]||(e[193]=r("span",{class:"rx-key"},"年龄",-1)),r("span",Nd,d(An(x.value.age)),1)]),r("div",Cd,[e[194]||(e[194]=r("span",{class:"rx-key"},"电话",-1)),r("span",Pd,d(x.value.phone||x.value.recipient_phone||"—"),1)])]),r("div",Od,[r("div",Ad,[e[195]||(e[195]=r("span",{class:"rx-key"},"收件信息",-1)),r("span",Rd,d(Vn.value),1)])]),r("div",Td,[r("div",$d,[e[196]||(e[196]=r("span",{class:"rx-key"},"临床诊断",-1)),r("span",Ed,d(x.value.clinical_diagnosis||"—"),1)])])]),r("div",Dd,[r("div",Fd,d(G.value==="internal"?"药房联":"处方联"),1),r("div",Ud,[e[199]||(e[199]=r("div",{class:"rx-rp-label"},"Rp.",-1)),r("div",Ld,[r("div",Id,[e[197]||(e[197]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)]),r("div",zd,[e[198]||(e[198]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)])])]),r("div",jd,[G.value==="internal"?(o(),f(O,{key:0},[Nt.value.length?(o(),f(O,{key:0},[e[200]||(e[200]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"main-"+E,class:"rx-herb-cell"},[r("span",Md,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",qd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[r("div",Bd,[e[201]||(e[201]=_(" 辅方",-1)),$e.value?(o(),f("span",Hd,"("+d($e.value)+")",1)):v("",!0)]),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"aux-"+E,class:"rx-herb-cell"},[r("span",Wd,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",Gd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0)],64)):(o(),f(O,{key:1},[Nt.value.length?(o(),f(O,{key:0},[e[202]||(e[202]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"user-main-"+E,class:"rx-herb-cell"},[r("span",Kd,d(S.name),1),r("span",Qd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[e[203]||(e[203]=r("div",{class:"rx-herb-section-label rx-herb-section-label--aux"},"辅方",-1)),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"user-aux-"+E,class:"rx-herb-cell"},[r("span",Jd,d(S.name),1),r("span",Yd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0)],64))])]),r("div",Xd,[G.value==="internal"?(o(),f(O,{key:0},[ia.value?(o(),f("p",Zd,"主服法:"+d(ns.value),1)):(o(),f("p",ep,"服法:"+d(ns.value),1)),ia.value?(o(),f("p",tp,"辅服法:"+d(ia.value),1)):v("",!0)],64)):v("",!0),rs.value?(o(),f("p",ap,"医嘱:"+d(rs.value),1)):v("",!0),Za.value?(o(),f("p",sp,"忌口:"+d(Za.value),1)):v("",!0),G.value==="internal"&&is.value?(o(),f("p",lp,"备注:"+d(is.value),1)):v("",!0),os.value?(o(),f("p",np," 药房备注:"+d(os.value),1)):v("",!0),G.value==="internal"&&us.value&&((a=x.value)==null?void 0:a.prescription_type)!=="饮片"?(o(),f("p",rp," 出丸:"+d(us.value),1)):v("",!0)]),r("div",ip,[r("div",{class:q(["rx-bot-row rx-bot-row-1",{"rx-bot-row-1--user":G.value==="user"}])},[r("div",op,[e[204]||(e[204]=r("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),r("div",up,[x.value.doctor_signature?(o(),f("img",{key:0,src:x.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,dp)):v("",!0),x.value.doctor_signature?v("",!0):(o(),f("span",pp,d(x.value.doctor_name||"—"),1))])]),G.value==="internal"?(o(),f("div",cp,[e[205]||(e[205]=r("span",{class:"rx-bot-meta-key"},"类型:",-1)),r("span",mp,d(Nn.value),1)])):v("",!0),r("div",_p,[e[206]||(e[206]=r("span",{class:"rx-bot-meta-key"},"天数:",-1)),r("span",fp,d(((P=$.value)==null?void 0:P.medication_days)!=null&&String($.value.medication_days).trim()!==""?$.value.medication_days+" 天":"—"),1)]),G.value==="internal"?(o(),f("div",vp,[e[207]||(e[207]=r("span",{class:"rx-bot-meta-key"},"剂量:",-1)),r("span",gp,d(Sn.value)+"克",1)])):v("",!0)],2)]),e[208]||(e[208]=r("div",{class:"rx-bot-row rx-hospital-row"},[r("div",{class:"rx-hospital-line"},"成都双流甄养堂互联网医院有限公司 联系方式:4001667339"),r("div",{class:"rx-hospital-line"},"地址:四川省成都市双流区黄甲街道黄龙大道二段280号")],-1))],512)):v("",!0),x.value&&(x.value.audit_by_name||x.value.audit_remark)?(o(),f("div",yp,[x.value.audit_by_name?(o(),f("div",bp,[_(" 审核人:"+d(x.value.audit_by_name)+" ",1),x.value.audit_time?(o(),f("span",xp,d(ds(x.value.audit_time)),1)):v("",!0)])):v("",!0),x.value.audit_remark?(o(),f("div",kp,"审核意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[_e,St.value]])]}),_:1},8,["modelValue"]),l(vs,{modelValue:yt.value,"onUpdate:modelValue":e[85]||(e[85]=a=>yt.value=a),title:"甘草预下单测试结果",size:"800px","destroy-on-close":""},{default:n(()=>{var a,P;return[F.value?(o(),f("div",hp,[l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[r("div",wp,[e[210]||(e[210]=r("span",{class:"font-semibold"},"价格信息",-1)),l(T,{type:"success"},{default:n(()=>[...e[209]||(e[209]=[_("预下单成功",-1)])]),_:1})])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"药材成本"},{default:n(()=>{var S;return[r("span",Vp,"¥"+d(((S=F.value.fee)==null?void 0:S.m_cost)||"0.00"),1)]}),_:1}),l(pe,{label:"制作费"},{default:n(()=>{var S;return[r("span",Sp,"¥"+d((((S=F.value.fee)==null?void 0:S.proces_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"物流费"},{default:n(()=>{var S;return[r("span",Np,"¥"+d((((S=F.value.fee)==null?void 0:S.lis_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"总计"},{default:n(()=>[r("div",null,[r("span",Cp," ¥"+d(Zt(F.value.fee)),1),A((o(),f("div",Pp,[e[211]||(e[211]=_(" 占订单总金额: ",-1)),r("span",Op,d(Jl(F.value.fee,F.value.amount)),1),F.value.amount>0?(o(),f("span",Ap,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[D,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[...e[212]||(e[212]=[r("span",{class:"font-semibold"},"配送信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"调配中心"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_name)||"—"),1)]}),_:1}),l(pe,{label:"调配中心ID"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_id)||"—"),1)]}),_:1}),l(pe,{label:"服用天数范围",span:2},{default:n(()=>{var S,E,gs,ys,bs,xs;return[_(d(((E=(S=F.value.result)==null?void 0:S.take_days)==null?void 0:E.min)||"—")+" - "+d(((ys=(gs=F.value.result)==null?void 0:gs.take_days)==null?void 0:ys.max)||"—")+" 天 (默认: "+d(((xs=(bs=F.value.result)==null?void 0:bs.take_days)==null?void 0:xs.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(a=F.value.result)==null?void 0:a.rule_check)!=null&&P.length?(o(),k(s,{key:0,shadow:"never",class:"mb-4"},{header:n(()=>[...e[213]||(e[213]=[r("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:n(()=>[r("div",Rp,d(F.value.result.rule_check.map(S=>S.msg).join(" ")),1)]),_:1})):v("",!0),l(s,{shadow:"never"},{header:n(()=>{var S,E;return[r("div",Tp,[e[214]||(e[214]=r("span",{class:"font-semibold"},"药材明细",-1)),r("span",$p,"共 "+d(((E=(S=F.value.result)==null?void 0:S.m_list)==null?void 0:E.length)||0)+" 味药",1)])]}),default:n(()=>{var S;return[l(tt,{data:((S=F.value.result)==null?void 0:S.m_list)||[],border:"",stripe:"","max-height":"400"},{default:n(()=>[l(R,{type:"index",label:"#",width:"50",align:"center"}),l(R,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),l(R,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:n(({row:E})=>[_(d(E.quantity)+d(E.unit),1)]),_:1}),l(R,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:n(({row:E})=>[_(" ¥"+d(Number(E.price).toFixed(4)),1)]),_:1}),l(R,{label:"小计",width:"100",align:"right"},{default:n(({row:E})=>[r("span",Ep," ¥"+d((Number(E.price)*Number(E.quantity)).toFixed(2)),1)]),_:1}),l(R,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:n(({row:E})=>[l(T,{type:E.is_available===1?"success":"danger",size:"small"},{default:n(()=>[_(d(E.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),l(R,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),l(s,{shadow:"never",class:"mt-4"},{header:n(()=>[...e[215]||(e[215]=[r("span",{class:"font-semibold"},"订单信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"订单号",span:2},{default:n(()=>[_(d(F.value.order_no||"—"),1)]),_:1}),l(pe,{label:"剂数"},{default:n(()=>[r("span",Dp,d(F.value.dose_count||"—")+"剂",1)]),_:1}),l(pe,{label:"单剂量"},{default:n(()=>{var S;return[r("span",Fp,d(Yl((S=F.value.result)==null?void 0:S.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),l(X,{modelValue:Ie.value,"onUpdate:modelValue":e[88]||(e[88]=a=>Ie.value=a),title:"批量改派医助",width:"440px","append-to-body":""},{footer:n(()=>[l(b,{onClick:e[87]||(e[87]=a=>Ie.value=!1)},{default:n(()=>[...e[218]||(e[218]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ft.value,onClick:js},{default:n(()=>[...e[219]||(e[219]=[_("确定改派",-1)])]),_:1},8,["loading"])]),default:n(()=>[r("div",Up,[e[216]||(e[216]=_(" 已选 ",-1)),r("strong",Lp,d(ge.value.length),1),e[217]||(e[217]=_(" 单,将订单「创建人(医助归属)」改派为: ",-1))]),l(h,{modelValue:rt.value,"onUpdate:modelValue":e[86]||(e[86]=a=>rt.value=a),clearable:"",filterable:"",placeholder:"选择目标医助",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Ne.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e[220]||(e[220]=r("p",{class:"text-xs text-gray-400 mt-2 leading-relaxed"}," 仅变更订单的业务归属(医助筛选 / 业绩口径),并写入操作日志;不影响处方、支付单及审核状态。已是该医助的订单会自动跳过。 ",-1))]),_:1},8,["modelValue"]),l(w(As),{ref_key:"diagnosisViewRef",ref:fa},null,512)])}}}),tc=Ri(zp,[["__scopeId","data-v-e7ad3e24"]]);export{tc as default};
+>>>>>>>> yz-0803:server/public/admin/assets/order_list-CQxNJWd1.js
diff --git a/server/public/admin/assets/order_list-CQxNJWd1.js b/server/public/admin/assets/order_list-CQxNJWd1.js
new file mode 100644
index 000000000..d717df1f9
--- /dev/null
+++ b/server/public/admin/assets/order_list-CQxNJWd1.js
@@ -0,0 +1,7 @@
+<<<<<<<< HEAD:server/public/admin/assets/order_list-BCks4uSg.js
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DcWYtxZL.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BvgN1Mad.js","assets/index-C360OAjQ.js","assets/index-ynJZC2Ez.css","assets/perm-Bld5tS_J.js","assets/DailyMatrix-Ul2kFeS6.js","assets/picker-BV4TmQgU.js","assets/index-2cRJ7Pdu.js","assets/index-B3imPWFk.css","assets/index-CARk4iLN.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-DcSBJkxh.js","assets/index-D0f1Mn00.css","assets/index-BHk2qnVA.js","assets/file-DAA7Hwft.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-xc20843U.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-DEkFP89f.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DkG-bj5N.js","assets/RecordingPlaybackBlock-C05dVpO0.js","assets/RecordingVideoPlayer-Lo03HGYz.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-BfhOODqn.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-CxGhWCjD.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-DClURTxz.js","assets/doctor-BqTrXcfF.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-nGgu5OlD.js","assets/patient-BgHF8SY_.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-DCvdZKjF.js","assets/PrescriptionOrderDetailDrawer-U3_w-Wbd.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-ykEzOnay.js","assets/index-BE-7WCNj.js","assets/medicine-SFe5reN2.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
+import{o as Os,Q as Bn,R as da,ap as Hn,n as lt,be as Wn,q as o,r as f,v as l,D as n,s as r,F as O,G as L,ae as q,T as d,P as v,bg as Gn,ac as A,w as Kn,u as w,ce as Qn,L as _,bH as Jn,bI as Yn,cf as Xn,bi as Zn,b9 as er,C as pa,b6 as tr,b7 as ar,b8 as At,O as k,bm as sr,bn as lr,bK as nr,K as rr,bj as ir,bk as or,br as ur,bY as dr,aw as Le,cg as pr,a1 as cr,ch as mr,bc as _r,bb as fr,J as vr,bt as gr,bh as yr,bM as br,b_ as xr,b$ as kr,c7 as hr,c8 as wr,ca as Vr,ad as ca,bA as Sr,U as Nr,S as Cr,I as Pr,bf as Or,Y as Ar,X as Rr,B as Tr,c0 as $r,c1 as Er,cb as Dr,al as Fr,M as g,p as V,ba as fe,e as Rt,cd as Ur,cc as Lr}from"./.pnpm-BadRMC3e.js";import{_ as Ir}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{_ as zr}from"./index.vue_vue_type_script_setup_true_lang-comvoFwL.js";import{L as jr,u as Mr}from"./useListTimeFilter-BJxb8Pfi.js";import qr from"./PrescriptionOrderDetailDrawer-U3_w-Wbd.js";import{_ as Br}from"./GancaoSubmissionReconcileButton.vue_vue_type_script_setup_true_lang-YaN9v6AS.js";import{z as Hr,A as Wr,s as ma,g as ks,b as B,B as Gr,a as Kr,f as hs,h as Tt,p as Qr,o as Jr,T as Yr,P as Xr,n as Zr,C as $t,y as ei,c as ws,u as ti,D as ai,E as si,F as _a,r as li,w as Vs,q as ni}from"./prescription-order-utils-B0fYlULc.js";import{x as ri,y as ii,g as oi,i as ui,t as di,z as pi,A as ci,B as mi,h as Et,C as Ss,D as _i,E as fi,F as vi,G as Ns,H as gi,I as yi,J as bi,K as Cs,L as xi,M as ki,N as hi,O as wi,P as Vi,Q as Si,k as Ni,f as Ps,c as Ci,o as Pi}from"./tcm-BvgN1Mad.js";import{u as Oi,i as N,m as Ai,_ as Ri}from"./index-C360OAjQ.js";import{d as Ti}from"./department-BFDDlesw.js";import{u as $i}from"./usePaging-DMqUvFG-.js";import"./index-2cRJ7Pdu.js";const Ei={class:"prescription-order-page prescription-order-list px-4 py-4 pb-8"},Di={class:"flex flex-col gap-3"},Fi={key:0,class:"flex items-center gap-2 flex-wrap"},Ui=["onClick"],Li={class:"font-medium"},Ii={class:"flex items-center gap-2 flex-wrap"},zi=["onClick"],ji={class:"font-medium"},Mi={class:"flex items-center gap-2 flex-wrap"},qi=["onClick"],Bi={class:"font-medium"},Hi={class:"flex items-center gap-2 flex-wrap"},Wi=["onClick"],Gi={class:"font-medium"},Ki={class:"flex items-center gap-2 flex-wrap"},Qi=["onClick"],Ji={class:"font-medium"},Yi={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},Xi={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Zi={class:"relative flex items-start justify-between gap-3"},eo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},to={class:"mt-2 space-y-1.5 min-w-0"},ao={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},so={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},lo={class:"text-slate-400"},no={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},ro={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},io={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},oo={class:"relative flex items-start justify-between gap-3"},uo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},po={class:"mt-2 space-y-1.5 min-w-0"},co={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},mo={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},_o={class:"text-slate-400"},fo={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},vo={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},go={class:"po-table-toolbar"},yo={class:"po-table-toolbar__title-wrap"},bo={class:"po-table-hint text-gray-400"},xo={class:"po-focus-board"},ko={class:"po-focus-board__value"},ho={class:"po-focus-board__value"},wo={class:"po-focus-board__value"},Vo={class:"po-focus-board__value"},So={class:"po-order-no-cell"},No={class:"po-order-no-main"},Co={class:"po-order-no-sub"},Po={class:"text-gray-400"},Oo={key:0,class:"ml-1"},Ao={class:"flex items-center gap-1"},Ro={class:"text-red-500 font-medium whitespace-nowrap"},To={class:"text-sm"},$o={class:"flex justify-between mb-1"},Eo={class:"font-medium text-red-500"},Do={class:"flex justify-between mb-1"},Fo={class:"flex justify-between mb-1"},Uo={class:"font-medium"},Lo={key:0,class:"flex justify-between"},Io={key:1},zo=["title"],jo={key:1},Mo={key:0,class:"text-gray-400"},qo={class:"flex items-center gap-1 flex-wrap"},Bo={class:"flex justify-end mt-4"},Ho={class:"flex items-center gap-2 ml-4 shrink-0"},Wo={class:"text-sm text-gray-700 font-medium"},Go={class:"create-order-dialog__inner"},Ko={key:0,class:"create-order-rx-card"},Qo={class:"create-order-rx-card__head"},Jo={class:"create-order-rx-card__meta"},Yo={class:"create-order-rx-card__id"},Xo={key:0,class:"create-order-rx-card__sn"},Zo={class:"create-order-rx-card__patient"},eu={class:"create-order-rx-card__herbs"},tu={class:"text-sm text-gray-700 mt-1"},au={class:"create-order-step-lead"},su={class:"flex gap-2 w-full"},lu={class:"create-order-step-panel"},nu={class:"create-order-step-panel"},ru={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},iu={class:"text-xs text-gray-400"},ou={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},uu={key:0,class:"space-y-1.5"},du={class:"text-gray-800 break-all"},pu={key:1,class:"text-gray-400"},cu={class:"flex items-center gap-1 w-full"},mu={class:"flex gap-2 w-full"},_u={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},fu={class:"flex items-center justify-between"},vu={class:"font-medium text-[13px] text-gray-800"},gu={class:"text-orange-500 font-medium ml-4"},yu={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},bu={class:"truncate pr-2"},xu={class:"shrink-0"},ku={class:"create-order-pay-hint text-gray-500"},hu={class:"text-amber-600 font-medium"},wu={class:"create-order-step-panel"},Vu={class:"create-order-deposit-bar__cell"},Su={class:"create-order-deposit-bar__sub"},Nu={class:"create-order-deposit-bar__cell"},Cu={class:"create-order-deposit-bar__sub"},Pu={class:"create-order-footer"},Ou={key:0,class:"create-order-footer__hint"},Au={class:"create-order-footer__step"},Ru={key:0,class:"create-order-footer__warn"},Tu={class:"create-order-footer__actions"},$u={class:"text-sm"},Eu={class:"text-gray-600"},Du={class:"text-gray-600"},Fu={class:"min-h-[52px]"},Uu={class:"text-xs leading-relaxed space-y-1.5"},Lu={key:0,class:"flex flex-wrap gap-1 items-center"},Iu={key:1,class:"list-disc pl-4 space-y-0.5 text-red-50"},zu={class:"mt-3"},ju={key:0,class:"rounded-lg border border-amber-200/80 bg-amber-50/50 p-3"},Mu={class:"text-xs font-semibold text-amber-900 mb-2"},qu={class:"text-red-500"},Bu={key:1,class:"text-xs text-gray-500 mt-2"},Hu={class:"text-xs text-gray-500 mt-1"},Wu={class:"text-xs text-gray-500 mt-1"},Gu={class:"flex flex-col gap-0.5 py-0.5"},Ku={class:"flex items-center justify-between"},Qu={class:"text-sm"},Ju={class:"text-orange-500 font-medium ml-4"},Yu={class:"text-xs text-gray-400"},Xu={class:"flex items-center justify-between w-full pr-2 gap-3"},Zu={key:0,class:"flex items-center gap-2 shrink-0"},ed={class:"rx-wrap"},td={key:1,class:"rx-statusbar"},ad={key:2,class:"rx-status rx-status-danger"},sd={key:3,class:"rx-status rx-status-danger"},ld={key:0,class:"mt-1"},nd={key:4,class:"rx-status rx-status-danger"},rd={key:0,class:"mt-1"},id={class:"rx-title"},od={class:"rx-notice"},ud={class:"rx-notice-text"},dd={class:"rx-notice-meta"},pd={class:"rx-meta-item"},cd={class:"rx-meta-value"},md={class:"rx-meta-item"},_d={class:"rx-meta-value"},fd={class:"rx-meta-item"},vd={class:"rx-meta-value"},gd={key:0,class:"rx-meta-item"},yd={class:"rx-meta-value"},bd={class:"rx-info"},xd={class:"rx-info-row"},kd={class:"rx-info-cell"},hd={class:"rx-val"},wd={class:"rx-info-cell"},Vd={class:"rx-val"},Sd={class:"rx-info-cell"},Nd={class:"rx-val"},Cd={class:"rx-info-cell"},Pd={class:"rx-val"},Od={class:"rx-info-row rx-info-row-full"},Ad={class:"rx-info-cell"},Rd={class:"rx-val"},Td={class:"rx-info-row rx-info-row-full"},$d={class:"rx-info-cell"},Ed={class:"rx-val"},Dd={class:"rx-rp"},Fd={class:"rx-watermark"},Ud={class:"rx-rp-head"},Ld={class:"rx-rp-cols-head"},Id={class:"rx-rp-col-head"},zd={class:"rx-rp-col-head"},jd={class:"rx-herbs"},Md={class:"rx-herb-name"},qd={class:"rx-herb-total"},Bd={class:"rx-herb-section-label rx-herb-section-label--aux"},Hd={key:0,class:"rx-herb-library-name"},Wd={class:"rx-herb-name"},Gd={class:"rx-herb-total"},Kd={class:"rx-herb-name"},Qd={class:"rx-herb-total"},Jd={class:"rx-herb-name"},Yd={class:"rx-herb-total"},Xd={class:"rx-text"},Zd={key:0},ep={key:1},tp={key:2},ap={key:1},sp={key:2},lp={key:3},np={key:4,class:"rx-text-warn"},rp={key:5,class:"rx-text-warn"},ip={class:"rx-bottom"},op={class:"rx-bot-cell rx-bot-doctor"},up={class:"rx-bot-doctor-body"},dp=["src"],pp={key:1,class:"rx-bot-doctor-name"},cp={key:0,class:"rx-bot-cell rx-bot-meta"},mp={class:"rx-bot-meta-val"},_p={class:"rx-bot-cell rx-bot-meta"},fp={class:"rx-bot-meta-val"},vp={key:1,class:"rx-bot-cell rx-bot-meta"},gp={class:"rx-bot-meta-val"},yp={key:6,class:"rx-audit"},bp={key:0},xp={key:0,class:"ml-2 text-gray-400"},kp={key:1,class:"mt-1"},hp={key:0,class:"px-4"},wp={class:"flex items-center justify-between"},Vp={class:"text-lg font-semibold text-orange-600"},Sp={class:"text-lg font-semibold text-blue-600"},Np={class:"text-lg font-semibold text-green-600"},Cp={class:"text-xl font-bold text-red-600"},Pp={class:"text-sm text-gray-500 mt-1.5"},Op={class:"font-medium text-gray-700"},Ap={key:0},Rp={class:"text-sm text-gray-700 leading-relaxed"},Tp={class:"flex items-center justify-between"},$p={class:"text-sm text-gray-500"},Ep={class:"font-medium text-orange-600"},Dp={class:"text-base font-medium"},Fp={class:"text-base font-medium"},Up={class:"text-sm text-gray-600 mb-3"},Lp={class:"text-primary"},Ip=Os({name:"prescriptionOrderList"}),zp=Os({...Ip,setup(jp){const As=Dr(()=>Fr(()=>import("./edit-DcWYtxZL.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]))),ve=Oi(),Rs=Bn(),fa=g(null);function Ts(){var e,s;const t=Number((e=$.value)==null?void 0:e.diagnosis_id);if(!t){N.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(s=fa.value)==null||s.openViewOnly(t)}const $s=6,va=[3,8],Es=V(()=>{const t=ve.userInfo;if(!t||Number(t.root)===1)return!1;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes($s)?!va.some(s=>e.includes(s)):!1}),Ds=V(()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return va.some(s=>e.includes(s))}),Fs=V(()=>Es.value||Ds.value),ga=g([]),nt=V(()=>{const t=ve.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes(Yr)?e.some(s=>Xr.includes(s)):!0}),Us=V(()=>nt.value?"详情/审核":"详情"),Ls=[0,3,6],ya=[0,3],Dt=()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return Ls.some(s=>e.includes(s))},oe=g(!1),ba=V(()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return ya.some(s=>e.includes(s))}),ge=g([]);function Is(t){ge.value=Array.isArray(t)?t:[]}const Ie=g(!1),rt=g(""),Ft=g(!1);function zs(){if(ge.value.length===0){N.msgWarning("请先勾选要改派的订单");return}rt.value="",Ie.value=!0}async function js(){const t=Number(rt.value);if(!t){N.msgWarning("请选择目标医助");return}const e=ge.value.map(s=>Number(s.id)).filter(s=>s>0);if(e.length===0){N.msgWarning("请先勾选要改派的订单");return}Ft.value=!0;try{const s=await ii({order_ids:e,assistant_id:t}),i=Number((s==null?void 0:s.success)??0),u=Array.isArray(s==null?void 0:s.errors)?s.errors:[];let p=`已改派 ${i} 单`;u.length&&(p+=`;${u.join(";")}`),N.msgSuccess(p),Ie.value=!1,ge.value=[],U()}catch{}finally{Ft.value=!1}}const it=g([]),Ut=g([]),Lt=g([]),Ne=g([]),ot=g([]),Ms={value:"id",label:"name",children:"children"};function xa(t,e){for(const s of t||[]){if(s==null||typeof s!="object")continue;const i=s;if(Number(i.id)===e)return i;const u=xa(i.children||[],e);if(u)return u}return null}function ka(t){const e=Number(t.id),s=[];Number.isFinite(e)&&e>0&&s.push(e);for(const i of t.children||[])i&&typeof i=="object"&&s.push(...ka(i));return s}function qs(t,e){const s=xa(e,t);return s?ka(s):[t]}async function Bs(){try{const[t,e,s]=await Promise.all([oi(),ui(),Ti()]);Lt.value=Array.isArray(t)?t:[],Ne.value=Array.isArray(e)?e:[];const i=Array.isArray(s)?s:[];ot.value=i}catch{Lt.value=[],Ne.value=[],ot.value=[]}}const Hs=t=>t.map(e=>{var s;return{value:e.province,label:e.province,code:e.code,children:((s=e.citys)==null?void 0:s.map(i=>{var u;return{value:i.city,label:i.city,code:i.code,children:((u=i.areas)==null?void 0:u.map(p=>({value:p.area,label:p.area,code:p.code})))||[]}}))||[]}}),Ws=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const s=await e.json();console.log("加载的数据条数:",s==null?void 0:s.length),it.value=Hs(s),console.log("regionOptions 已设置,条数:",it.value.length)}catch(t){console.error("加载省市区数据失败:",t),it.value=[]}},Gs=async()=>{try{const t=await Ai({type:"server_order"});Ut.value=Zr(t==null?void 0:t.server_order)}catch(t){console.error("加载服务套餐选项失败:",t),Ut.value=[]}},Ks=[{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 Qs(t){se.value="",y.exclude_fulfillment_cancelled=0,y.fulfillment_status=t,K()}const se=g(""),Js=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"洛阳直发",value:"direct"},{label:"自营",value:"self"}];function Ys(t){y.supply_mode=t,K()}const Xs=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function Zs(t){y.express_company=t,K()}const y=fe({order_no:"",prescription_id:"",patient_keyword:"",express_keyword:"",express_company:"",doctor_id:"",assistant_id:"",assistant_dept_id:"",fulfillment_status:"",prescription_audit_status:"",payment_slip_audit_status:"",supply_mode:"",service_channel:"",has_aux_formula:"",exclude_fulfillment_cancelled:0,audit_admin_id:""}),el=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],tl=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function al(t){se.value="",y.exclude_fulfillment_cancelled=0,y.prescription_audit_status=t,K()}function sl(t){se.value="",y.exclude_fulfillment_cancelled=0,y.payment_slip_audit_status=t,K()}function ut(t){if(se.value===t){se.value="",y.prescription_audit_status="",y.payment_slip_audit_status="",y.fulfillment_status="",y.exclude_fulfillment_cancelled=0,K();return}se.value=t,y.prescription_audit_status="",y.payment_slip_audit_status="",y.fulfillment_status="",y.exclude_fulfillment_cancelled=0,t==="pendingRx"?(y.prescription_audit_status=0,y.exclude_fulfillment_cancelled=1):t==="pendingPay"?(y.prescription_audit_status=1,y.payment_slip_audit_status=0):t==="pendingShip"?y.fulfillment_status=2:t==="risk"&&(y.payment_slip_audit_status=2),K()}const{time_type:ze,dateRange:It,resolve:ha,handleTimeTypeChange:ll,handleCustomDateChange:nl,resetTimeFilter:rl,applyCustomRange:il}=Mr("all"),wa=()=>{Z.page=1,U()},ol=()=>ll(wa),ul=()=>nl(wa);function Va(t){const e={...t};if(e.prescription_id===""||e.prescription_id===void 0?delete e.prescription_id:e.prescription_id=Number(e.prescription_id),e.fulfillment_status===""||e.fulfillment_status===void 0||e.fulfillment_status===null?delete e.fulfillment_status:e.fulfillment_status=Number(e.fulfillment_status),e.prescription_audit_status===""||e.prescription_audit_status===void 0||e.prescription_audit_status===null?delete e.prescription_audit_status:e.prescription_audit_status=Number(e.prescription_audit_status),e.payment_slip_audit_status===""||e.payment_slip_audit_status===void 0||e.payment_slip_audit_status===null?delete e.payment_slip_audit_status:e.payment_slip_audit_status=Number(e.payment_slip_audit_status),(!e.supply_mode||e.supply_mode==="")&&delete e.supply_mode,e.doctor_id===""||e.doctor_id===void 0||e.doctor_id===null?delete e.doctor_id:e.doctor_id=Number(e.doctor_id),e.assistant_id===""||e.assistant_id===void 0||e.assistant_id===null?delete e.assistant_id:e.assistant_id=Number(e.assistant_id),e.assistant_dept_id===""||e.assistant_dept_id===void 0||e.assistant_dept_id===null?delete e.assistant_dept_id:e.assistant_dept_id=Number(e.assistant_dept_id),e.order_no||delete e.order_no,String(e.patient_keyword||"").trim()||delete e.patient_keyword,e.audit_admin_id===""||e.audit_admin_id===void 0||e.audit_admin_id===null?delete e.audit_admin_id:e.audit_admin_id=Number(e.audit_admin_id),String(e.express_keyword||"").trim()||delete e.express_keyword,(!e.express_company||e.express_company==="")&&delete e.express_company,e.service_channel===""||e.service_channel===void 0||e.service_channel===null?delete e.service_channel:(e.service_channel=String(e.service_channel).trim(),e.service_channel===""&&delete e.service_channel),e.has_aux_formula===""||e.has_aux_formula===void 0||e.has_aux_formula===null?delete e.has_aux_formula:e.has_aux_formula=Number(e.has_aux_formula),Number(e.exclude_fulfillment_cancelled)!==1&&delete e.exclude_fulfillment_cancelled,!String(e.start_time||"").trim()||!String(e.end_time||"").trim())delete e.start_time,delete e.end_time;else{const s=String(e.start_time||"").trim(),i=String(e.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(s)&&/^\d{4}-\d{2}-\d{2}$/.test(i)&&(e.start_time=`${s} 00:00:00`,e.end_time=`${i} 23:59:59`)}return e}async function dl(t){const[e,s]=ha(),i=Va({...t,start_time:e,end_time:s});return di(i)}const pl=V(()=>{const[t,e]=ha();return Va({...y,start_time:t,end_time:e})}),{pager:Z,getLists:U,resetPage:K,resetParams:cl}=$i({fetchFun:dl,params:y});da(()=>{var t;return(t=Z.extend)==null?void 0:t.audit_admin_options},t=>{Array.isArray(t)&&(ga.value=t.map(e=>{if(e==null||typeof e!="object")return null;const s=e,i=Number(s.id),u=String(s.name??"").trim();return!Number.isFinite(i)||i<=0||u===""?null:{id:i,name:u}}).filter(e=>e!=null))},{immediate:!0});function ml(){const t=Rs.query,e=c=>{const h=c!=null?String(c).trim():"";return h?h.length>=10?h.slice(0,10):h:""},s=e(t.start_time),i=e(t.end_time);s&&i&&il(s,i);const u=t.assistant_dept_id;if(u!=null&&String(u)!==""){const c=Number(u);Number.isFinite(c)&&c>0&&(y.assistant_dept_id=c)}const p=t.assistant_id;if(p!=null&&String(p)!==""){const c=Number(p);Number.isFinite(c)&&c>0&&(y.assistant_id=c)}}const Sa=V(()=>{const t=y.assistant_dept_id;if(t===""||t==null)return Ne.value;const e=Number(t);if(!Number.isFinite(e))return Ne.value;const s=new Set(qs(e,ot.value));return Ne.value.filter(i=>{const u=i.dept_ids;return!Array.isArray(u)||u.length===0?!1:u.map(Number).some(p=>s.has(p))})});function _l(){const t=y.assistant_id;if(t!==""&&t!=null){const e=Number(t);Sa.value.some(i=>Number(i.id)===e)||(y.assistant_id="")}K()}const ue=V(()=>{const t=Z.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),s=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),i=ae=>{const X=Number(ae);return Number.isFinite(X)?Math.round(X*100)/100:0},u=ae=>ae.toFixed(2),p=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,c=(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,h=i(p?t==null?void 0:t.stats_order_amount_not_cancelled:e),M=p?i(t==null?void 0:t.stats_order_amount_cancelled):0,b=i(c?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:s),te=c?i(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,J=(t==null?void 0:t.stats_order_amount_performance)!==void 0?i(t==null?void 0:t.stats_order_amount_performance):h,R=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?i(t==null?void 0:t.stats_linked_pay_amount_performance):b,T=String((t==null?void 0:t.stats_time_start)??"").trim(),Pt=String((t==null?void 0:t.stats_time_end)??"").trim(),tt=T&&Pt?`统计时间:${T} ~ ${Pt}`:"统计时间:—",at=String((t==null?void 0:t.stats_scope)??"restricted");let Se="统计口径:与当前列表数据可见范围一致";at==="all"?Se="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":at==="assistant"?Se="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":at==="own_rx"&&(Se="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const Fe=ze.value==="all"?"全部":ze.value==="today"?"今日":"区间";return{order:i(e),pay:i(s),orderStr:u(i(e)),payStr:u(i(s)),orderNotCancelledStr:u(h),orderCancelledStr:u(M),payNotCancelledStr:u(b),payCancelledStr:u(te),orderPerformanceStr:u(J),payPerformanceStr:u(R),orderHeading:`${Fe}业绩(业务订单额)`,payHeading:`${Fe}业绩(关联实付)`,periodLine:tt,scopeHint:Se,orderSplitHint:"业绩 = 排除履约已取消(4)、拒收(9)、退款(10)后的订单金额;下方为合计与排除项明细"}}),dt=V(()=>{const t=Z.extend,e=c=>{const h=Number(c);return!Number.isFinite(h)||h<0?0:Math.trunc(h)},s=e(t==null?void 0:t.focus_pending_rx_count),i=e(t==null?void 0:t.focus_pending_pay_count),u=e(t==null?void 0:t.focus_pending_ship_count),p=e(t==null?void 0:t.focus_risk_count);return{pendingRx:s,pendingPay:i,pendingShip:u,risk:p}});function zt(t,e){const s=Number(e==null?void 0:e.prescription_audit_status),i=Number(e==null?void 0:e.payment_slip_audit_status),u=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&s===0||t==="pay"&&s===1&&i===0||t==="fulfillment"&&u===2?"po-status-tag is-focus":t==="rx"&&s===2||t==="pay"&&i===2||t==="fulfillment"&&u===4?"po-status-tag is-risk":"po-status-tag"}function fl({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),s=Number(t==null?void 0:t.payment_slip_audit_status),i=Number(t==null?void 0:t.fulfillment_status),u=ma(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||s===2||u?"po-row-risk":e===0||e===1&&s===0||i===2?"po-row-focus":i===3||i===6?"po-row-done":""}da(nt,t=>{t||y.prescription_audit_status===""||y.prescription_audit_status===void 0||(y.prescription_audit_status="",y.exclude_fulfillment_cancelled=0,K())},{immediate:!0});function vl(){se.value="",rl(),y.order_no="",y.prescription_id="",y.patient_keyword="",y.express_keyword="",y.express_company="",y.doctor_id="",y.assistant_id="",y.assistant_dept_id="",y.fulfillment_status="",y.prescription_audit_status="",y.payment_slip_audit_status="",y.supply_mode="",y.service_channel="",y.has_aux_formula="",y.audit_admin_id="",y.exclude_fulfillment_cancelled=0,cl()}function Na(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function Ca(t){return t===1?"success":t===2?"danger":"info"}function Pa(){const t=ve.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[]).some(s=>ya.includes(s)):!1}function Oa(t){var s;const e=Number((s=ve.userInfo)==null?void 0:s.id);return e>0&&Number(t.creator_id)===e}function Aa(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function Ra(t){const e=Number(t.fulfillment_status);return e===3||e===4||Oa(t)&&Aa(t)&&!Pa()||$t(t)?!1:e===1||e===2}function gl(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function yl(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 bl(t){if($t(t))return!1;const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return(s===1||s===2)&&i===0}function xl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return s===1&&(i===1||i===2)}function kl(t){return $t(t)?!1:Number(t.fulfillment_status)===1}function Ta(t){return Number(t.fulfillment_status)===2}const hl=V(()=>{const t=ve.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/setShipMode")});function Y(t){return String(t||"").toLowerCase()==="direct"?"direct":"gancao"}function wl(t){return Y(t)==="direct"?"洛阳药房":"甘草药房"}function $a(t){return $t(t)}function Ea(t){const e=Number(t.fulfillment_status);return e!==3&&e!==4&&!$a(t)}const jt=g(!1);function Mt(t,e){const s=Number(t),i=Number(e);return s>0&&s===i}const Vl=V(()=>Y(W.ship_mode)==="direct"?"洛阳药房直发":"甘草药房直发");async function Sl(t){const e=$.value;if(!(e!=null&&e.id))return;const s=Y(t),i=Y(e.ship_mode);if(s!==i){if(!Ea(e)){N.msgWarning("当前订单状态不可修改发货类型");return}jt.value=!0;try{await pi({id:e.id,ship_mode:s}),$.value&&($.value.ship_mode=s),we.value&&Mt(Ae.value,e.id)&&(W.ship_mode=s),await mt(),N.msgSuccess("发货类型已保存"),U()}catch{}finally{jt.value=!1}}}async function Nl(){await mt(),U()}function qt(t){const e=Number(t.fulfillment_status);if(e!==5&&e!==6)return!1;const s=Math.round((Number(t.amount)||0)*100)/100;return Math.round((Number(t.linked_pay_paid_total)||0)*100)/100{var t;return((t=H.value)==null?void 0:t.detail)??null}),Pl=V(()=>{var e;const t=(e=$.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null}),La=V(()=>`${m.dose_unit||"剂"}数`),je=g(!1),Bt=g(!1),pt=g(),ce=fe({id:0,amount:void 0}),Ol={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,s)=>{const i=Number(e);if(!Number.isFinite(i)||i<0){s(new Error("订单金额不能为负数"));return}s()},trigger:"blur"}]},Ce=g(null),ct=g(!1),Me=V(()=>ei(Ce.value)),qe=g(!1),Ht=g(!1),Wt=g(),le=fe({patient_name:"",phone:""}),Al={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function Rl(){const t=Pl.value,e=$.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){N.msgWarning("无处方数据");return}le.patient_name=String(t.patient_name??"").trim(),le.phone=String(t.phone??"").trim(),qe.value=!0,lt(()=>{var s;return(s=Wt.value)==null?void 0:s.clearValidate()})}function Tl(){le.patient_name="",le.phone=""}function $l(){var t;ce.id=0,ce.amount=void 0,(t=pt.value)==null||t.clearValidate()}function El(){const t=$.value;if(!ws(t)){N.msgWarning("当前订单状态不允许修改金额");return}ce.id=Number(t==null?void 0:t.id)||0;const e=Number(t==null?void 0:t.amount);ce.amount=Number.isFinite(e)?e:void 0,je.value=!0,lt(()=>{var s;return(s=pt.value)==null?void 0:s.clearValidate()})}async function mt(){var t;await((t=H.value)==null?void 0:t.refresh())}async function Dl(){var s;const t=Wt.value;if(!t)return;try{await t.validate()}catch{return}const e=(s=$.value)==null?void 0:s.id;if(e){Ht.value=!0;try{await ci({id:e,patient_name:le.patient_name.trim(),phone:le.phone.trim()}),qe.value=!1,await mt()}catch(i){console.error(i)}finally{Ht.value=!1}}}async function Ia(){const t=pt.value;if(!t)return;try{await t.validate()}catch{return}if(!ws($.value)){N.msgWarning("当前订单状态不允许修改金额");return}const e=ce.id;Bt.value=!0;try{await mi({id:e,amount:Number(ce.amount)}),N.msgSuccess("修改成功"),je.value=!1,await mt(),U()}catch{}finally{Bt.value=!1}}async function Fl(t){var e;await((e=H.value)==null?void 0:e.open(t))}const ke=g(!1),Gt=g(!1),Kt=g(!1),I=g(0),ne=g(null),re=g(!1),_t=g(""),Ul=V(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][I.value]??""),za=V(()=>{const t=ne.value,e=ti(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const s=e.map(i=>`${i.name} ${i.dosage}g`).join("、");return s.length>120?`${s.slice(0,120)}…`:s}),Ll=["recipient_name","recipient_phone","region","shipping_address"],he=g(),m=fe({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:""}),Il=V(()=>ai(Ut.value,m.service_package)),ja=V(()=>{const t=String(m.diagnosis_creator_dept_path||"").trim();return t?t.split(";").map(e=>e.trim()).filter(Boolean).map(e=>e.includes(" / ")?e.split(" / ").map(s=>s.trim()).filter(Boolean):e.split("/").map(s=>s.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Be=g([]),Qt=g(!1),j=g(0);function ft(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const Jt=V(()=>{const t=new Set(m.pay_order_ids.map(s=>Number(s)));let e=0;for(const s of Be.value)t.has(Number(s.id))&&(e+=Number(s.amount)||0);return Math.round(e*100)/100}),zl=V(()=>{const t=j.value;return t>0?Math.round(t*100)/100:0});async function jl(t,e){var s,i;if(!t){Be.value=[];return}try{Qt.value=!0;const u=await Ps({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),p=(u==null?void 0:u.lists)??((s=u==null?void 0:u.data)==null?void 0:s.lists)??[];Be.value=Array.isArray(p)?p:[];const c=Number((u==null?void 0:u.deposit_min_amount)??((i=u==null?void 0:u.data)==null?void 0:i.deposit_min_amount));!Number.isNaN(c)&&c>=0&&(j.value=c)}catch{Be.value=[]}finally{Qt.value=!1}}const Ml=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,s,i)=>{const u=j.value,p=Number(s);if(u>0&&(!Number.isFinite(p)||p0){const e=`已开启关联支付门槛(¥${B(j.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function ql(){var t;I.value=0,ne.value=null,re.value=!1,_t.value="",(t=he.value)==null||t.clearValidate()}function Bl(){I.value>0&&(I.value-=1)}async function Hl(){const t=he.value;if(t)try{I.value===0?await t.validateField([...Ll]):I.value===1&&j.value>0&&await t.validateField(["pay_order_ids"]),I.value<2&&(I.value+=1)}catch{}}async function Wl(t){if(!Ra(t)){Oa(t)&&Aa(t)&&!Pa()&&N.msgWarning("处方与支付单均已审核通过,创建人不可再编辑");return}I.value=0,ne.value=null,ke.value=!0,Gt.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e;if(!s){N.msgError("加载数据结构异常"),ke.value=!1;return}const i=s.prescription;i&&typeof i=="object"?ne.value=i:Number(s.prescription_id)>0?ne.value={id:Number(s.prescription_id),sn:"",patient_name:String(s.recipient_name||""),herbs:[]}:ne.value=null,m.id=s.id,m.prescription_id=Number(s.prescription_id)||0,m.diagnosis_id=Number(s.diagnosis_id)||0,m.assistant_id=Number(s.assistant_id)||0,m.diagnosis_creator_id=Number(s.diagnosis_creator_id)||0,m.diagnosis_creator_name=s.diagnosis_creator_name!=null&&s.diagnosis_creator_name!==""?String(s.diagnosis_creator_name):"",m.diagnosis_creator_dept_path=s.diagnosis_creator_dept_path!=null&&s.diagnosis_creator_dept_path!==""?String(s.diagnosis_creator_dept_path):"",m.recipient_name=s.recipient_name||"",m.recipient_phone=s.recipient_phone||"";const u=s.shipping_province||"",p=s.shipping_city||"",c=s.shipping_district||"";u||p||c?m.region=[u,p,c].filter(T=>T!==""):m.region=[],m.shipping_address=s.shipping_address||"",m.is_follow_up=s.is_follow_up?1:0,m.medication_days=s.medication_days>0?s.medication_days:void 0,m.dose_count=s.dose_count>0?s.dose_count:1,m.dose_unit=s.dose_unit||"剂",m.prev_staff=s.prev_staff||"",m.service_channel=s.service_channel||"",m.service_package=si(s.service_package),m.express_company=String(s.express_company||"auto")||"auto",m.tracking_number=s.tracking_number||"",m.fee_type=Number(s.fee_type)||3,j.value=Number(s.deposit_min_amount)||0;let h=Number(s.amount)||0;const M=Math.round((Number(s.linked_pay_paid_total)||0)*100)/100,b=j.value;if(b>0){const T=Math.round(b*100)/100;hNumber(T)).filter(T=>!Number.isNaN(T)):[],m.internal_cost=s.internal_cost!=null&&s.internal_cost!==""?Number(s.internal_cost):void 0;const J=String(s.gancao_reciperl_order_no||"").trim(),R=Number(s.gancao_submit_time||0);re.value=J!==""||R>0,_t.value=J||"",await jl(m.diagnosis_id,m.id),lt(()=>{var T;(T=he.value)==null||T.clearValidate()})}catch(e){N.msgError((e==null?void 0:e.message)||"加载异常"),ke.value=!1}finally{Gt.value=!1}}async function Gl(){if(!he.value)return;const t=re.value;if(!(!t&&I.value!==2)){t?he.value.clearValidate():await he.value.validate(),Kt.value=!0;try{const e={id:m.id,recipient_name:m.recipient_name,recipient_phone:m.recipient_phone,shipping_address:m.shipping_address,is_follow_up:m.is_follow_up,prev_staff:m.prev_staff||"",service_channel:m.service_channel||"",service_package:Array.isArray(m.service_package)?m.service_package.join(","):"",express_company:m.express_company||"auto",tracking_number:m.tracking_number||"",fee_type:m.fee_type,amount:m.amount,remark_extra:m.remark_extra||"",remark_assistant:m.remark_assistant||"",medication_days:m.medication_days!=null&&String(m.medication_days).trim()!==""?m.medication_days:"",dose_unit:m.dose_unit||"剂",dose_count:m.dose_count||1,internal_cost:m.internal_cost!=null&&String(m.internal_cost).trim()!==""?m.internal_cost:""};m.region&&m.region.length>0?(e.shipping_province=m.region[0]||"",e.shipping_city=m.region[1]||"",e.shipping_district=m.region[2]||""):(e.shipping_province="",e.shipping_city="",e.shipping_district=""),e.pay_order_ids=[...m.pay_order_ids],await Ss(e),N.msgSuccess("保存成功"),ke.value=!1,U()}catch{}finally{Kt.value=!1}}}const He=g(!1),Yt=g("prescription"),Xt=g(0),We=g(null),Pe=g(""),vt=g(!1),Kl=V(()=>Yt.value==="prescription"?"处方业务审核":"关联支付单审核");function Ma(t,e){Yt.value=e,Xt.value=t.id,We.value=t,Pe.value="",He.value=!0}async function qa(t){var e;if(t==="reject"&&!Pe.value.trim()){N.msgError("驳回或阻止时必须填写明确的审核意见");return}vt.value=!0;try{const s={id:Xt.value,action:t,remark:Pe.value.trim()};Yt.value==="prescription"?await _i(s):await fi(s),N.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),He.value=!1,U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(Xt.value))}catch{}finally{vt.value=!1}}async function Ql(t){try{await Rt.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await vi({id:t.id}),N.msgSuccess("撤回成功"),U()}catch{}}const gt=g(0),yt=g(!1),Oe=g(!1),F=g(null);function Zt(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,s=Number(t.proces_cost)||0,i=Number(t.lis_cost)||0;return(e+s+i).toFixed(2)}function Jl(t,e){const s=parseFloat(Zt(t))||0,i=Number(e)||0;return i<=0?"—":(s/i*100).toFixed(2)}function Yl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((s,i)=>s+(Number(i.quantity)||0),0).toFixed(0)}async function Xl(){if(!m.id){N.msgError("请先保存订单");return}Oe.value=!0;try{const t=await Ns({id:m.id,dose_count:m.dose_count||1,medication_days:m.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(F.value=e,yt.value=!0,N.msgSuccess("预下单测试成功"))}catch{}finally{Oe.value=!1}}async function Zl(){var t,e;if(!((t=$.value)!=null&&t.id)){N.msgError("订单数据不存在");return}Oe.value=!0;try{const s=await Ns({id:$.value.id,dose_count:$.value.dose_count||1,medication_days:$.value.medication_days||void 0}),i=(s==null?void 0:s.data)??s;if(i&&i.success&&(F.value=i,yt.value=!0,Dt()&&i.fee)){const u=Zt(i.fee);try{const p=await Et({id:$.value.id}),c=(p==null?void 0:p.data)??p;if(c!=null&&c.id){const h=c.service_package,M=Array.isArray(h)?h.join(","):String(h||"");await Ss({id:c.id,recipient_name:c.recipient_name||"",recipient_phone:c.recipient_phone||"",shipping_province:c.shipping_province||"",shipping_city:c.shipping_city||"",shipping_district:c.shipping_district||"",shipping_address:c.shipping_address||"",is_follow_up:c.is_follow_up?1:0,medication_days:c.medication_days!=null&&String(c.medication_days).trim()!==""?c.medication_days:"",dose_unit:c.dose_unit||"剂",dose_count:c.dose_count>0?c.dose_count:1,prev_staff:c.prev_staff||"",service_channel:c.service_channel||"",service_package:M,express_company:c.express_company||"auto",tracking_number:c.tracking_number||"",fee_type:Number(c.fee_type)||3,amount:Number(c.amount)||0,remark_extra:c.remark_extra||"",remark_assistant:c.remark_assistant||"",internal_cost:u,pay_order_ids:Array.isArray(c.pay_order_ids)?c.pay_order_ids:[]}),N.msgSuccess("内部成本已按预报价总计更新"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(c.id))}}catch{}}}catch{}finally{Oe.value=!1}}async function Ba(t){var i;const s=Y(t.ship_mode)==="direct"?"洛阳药房":"甘草药房";try{await Rt.confirm(`将把本单关联处方提交至${s},提交成功后不可切换发货药房。确定继续?`,"上传药房",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),gt.value=t.id;const u=await gi({id:t.id}),p=(u==null?void 0:u.data)??u,c=(p==null?void 0:p.pharmacy_order_no)!=null?String(p.pharmacy_order_no):(p==null?void 0:p.recipel_order_no)!=null?String(p.recipel_order_no):"";N.msgSuccess(c?`上传成功,${s}单号:${c}`:"上传成功"),U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t.id))}catch{}finally{gt.value=0}}Hn(async()=>{await Ws(),await Gs(),await Bs(),ml(),await lt(),U()});const Ge=g(!1),bt=g(!1),ea=g(0),me=fe({express_company:"auto",tracking_number:""});function en(t){ea.value=t.id,me.express_company=String(t.express_company||"auto")||"auto",me.tracking_number=String(t.tracking_number||""),Ge.value=!0}async function Ha(){var t;if(!me.tracking_number.trim()){N.msgError("请填写快递单号");return}bt.value=!0;try{await yi({id:ea.value,express_company:me.express_company||"auto",tracking_number:me.tracking_number.trim()}),N.msgSuccess("快递单号已保存"),Ge.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(ea.value))}catch{}finally{bt.value=!1}}const we=g(!1),xt=g(!1),Ae=g(0),W=fe({ship_mode:"gancao",express_company:"auto",tracking_number:""});function tn(t){var e;return Mt((e=$.value)==null?void 0:e.id,t.id)?Y($.value.ship_mode):Y(t.ship_mode)}function Wa(t){Ae.value=Number(t.id),W.ship_mode=tn(t),W.express_company=String(t.express_company||"auto")||"auto",W.tracking_number=String(t.tracking_number||""),we.value=!0}da(()=>{var t;return(t=$.value)==null?void 0:t.ship_mode},t=>{var e;!we.value||!Ae.value||!Mt((e=$.value)==null?void 0:e.id,Ae.value)||(W.ship_mode=Y(t))});async function Ga(){var t;if(!W.tracking_number.trim()){N.msgError("请先填写快递单号再确认发货");return}xt.value=!0;try{await bi({id:Ae.value,ship_mode:Y(W.ship_mode),express_company:W.express_company||"auto",tracking_number:W.tracking_number.trim()}),N.msgSuccess("确认发货成功,订单已进入「已发货」状态"),we.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ae.value))}catch{}finally{xt.value=!1}}const an=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],Re=g(!1),Te=g(0),ye=g(3),Ke=g(!1),Qe=g(!1),de=g([]),ta=g(),ee=fe({reason:"",refund_amount:void 0}),be=g(0),sn=V(()=>aa(de.value)),ln=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=be.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));let Je=0;function nn(){var t;Te.value=0,de.value=[],Qe.value=!1,ee.reason="",ee.refund_amount=void 0,be.value=0,(t=ta.value)==null||t.clearValidate(),Je+=1,Ce.value=null,ct.value=!1}async function rn(t){if(!t){de.value=[];return}Qe.value=!0;try{const e=await Et({id:t}),s=(e==null?void 0:e.data)??e??null,i=s==null?void 0:s.linked_pay_orders;de.value=Array.isArray(i)?i:[];const u=aa(de.value),p=Number(s==null?void 0:s.paid)||0;be.value=u>0?u:p,ee.refund_amount=be.value}catch{de.value=[],be.value=0}finally{Qe.value=!1}}async function on(t){const e=Number(t.id),s=String(t.tracking_number||"").trim();if(!e||!s)return;const i=++Je;ct.value=!0,Ce.value=null;try{const u=String(t.recipient_phone||"").replace(/\D/g,""),p={id:e,express_company:String(t.express_company||"auto")||"auto"};u.length>=4&&(p.phone_tail=u);const c=await Ci(p);if(i!==Je||Te.value!==e)return;Ce.value=ni(c,s,e)}catch{if(i!==Je||Te.value!==e)return;Ce.value=null}finally{i===Je&&Te.value===e&&(ct.value=!1)}}async function un(){var e,s,i;const t=Te.value;if(t){if(ye.value===10){if(!await((e=ta.value)==null?void 0:e.validate().catch(()=>!1)))return;Ke.value=!0;try{await Cs({id:t,reason:ee.reason.trim(),refund_amount:Number(ee.refund_amount)}),N.msgSuccess("退款成功"),Re.value=!1,U(),await((s=H.value)==null?void 0:s.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}return}Ke.value=!0;try{await xi({id:t,fulfillment_status:ye.value}),N.msgSuccess("订单状态已更新"),Re.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}}}function aa(t){let e=0;for(const s of t||[]){const i=Number(s==null?void 0:s.status);(i===2||i===5)&&(e+=Number(s==null?void 0:s.amount)||0)}return Math.round(e*100)/100}const Ye=g(!1),sa=g(0),la=g(!1),na=g(),ie=g(0),Q=fe({reason:"",refund_amount:void 0}),dn=V(()=>{const t=B(ie.value),e=B(Q.refund_amount);return Number(Q.refund_amount)>=ie.value-.009?`确认全额退款 ¥${t}:关联收款将标记已退款,本单已付清零,且不可撤销。`:`确认部分退款 ¥${e}(可退上限 ¥${t}):将扣减本单已付,并按金额依次标记关联收款已退款。`}),pn=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=ie.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));function cn(){var t;sa.value=0,Q.reason="",Q.refund_amount=void 0,ie.value=0,(t=na.value)==null||t.clearValidate()}async function Ka(t){sa.value=t.id,Q.reason="",Q.refund_amount=void 0,ie.value=0,Ye.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e??null,i=Array.isArray(s==null?void 0:s.linked_pay_orders)?s.linked_pay_orders:[],u=aa(i),p=Number(s==null?void 0:s.paid)||0;ie.value=u>0?u:p,Q.refund_amount=ie.value}catch{ie.value=0}}async function mn(){var s,i;const t=sa.value;if(!(!t||!await((s=na.value)==null?void 0:s.validate().catch(()=>!1)))){la.value=!0;try{await Cs({id:t,reason:Q.reason.trim(),refund_amount:Number(Q.refund_amount)}),N.msgSuccess("退款成功"),Ye.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{la.value=!1}}}const Xe=g(!1),kt=g(!1),Ze=g(0),ht=g(),ra=g(!1),wt=g([]),_n=V(()=>C.add_mode==="completion_only"?"不创建或关联支付单,仅提交完单申请,由审核人员在支付审核时处理。":C.add_mode==="create_express"?"通过快递代收创建新支付单(流转同付呗),或关联已存在但未绑定的支付单。":"可以通过付呗创建新支付单,或关联已存在但未绑定的支付单。"),C=fe({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),fn=V(()=>{const t={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}]};return C.add_mode==="create"||C.add_mode==="create_express"?(t.order_type=[{required:!0,message:"请选择费用类别",trigger:"change"}],t.pay_amount=[{validator:(e,s,i)=>{if(s==null||s===""){i(new Error("请输入支付金额"));return}const u=Number(s);!Number.isFinite(u)||u<0?i(new Error("金额不能小于 0")):i()},trigger:"blur"}]):C.add_mode==="link"&&(t.link_pay_order_ids=[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(e,s,i)=>{!Array.isArray(s)||s.length===0?i(new Error("请至少选择一个支付单")):i()}}]),t});async function vn(t,e=[]){var s;if(!t){wt.value=[];return}try{ra.value=!0;const i=await Ps({diagnosis_id:t}),u=(i==null?void 0:i.lists)??((s=i==null?void 0:i.data)==null?void 0:s.lists)??[],p=Array.isArray(u)?u.filter(c=>!e.includes(c.id)):[];wt.value=p}catch{wt.value=[]}finally{ra.value=!1}}function Qa(t){var i,u;if(!qt(t)){N.msgWarning("订单总金额与已付金额一致,无需补齐支付单");return}Ze.value=t.id,C.add_mode="create",C.order_type=3,C.pay_amount=void 0,C.pay_remark="",C.link_pay_order_ids=[],C.completion_request=0,Xe.value=!0;const e=t.diagnosis_id||((i=$.value)==null?void 0:i.diagnosis_id),s=t.pay_order_ids||((u=$.value)==null?void 0:u.pay_order_ids)||[];e&&vn(e,s)}async function gn(){var t;if(ht.value){await ht.value.validate(),kt.value=!0;try{if(C.add_mode==="completion_only")await ki({id:Ze.value}),N.msgSuccess("完单申请已提交,请等待支付审核");else if(C.add_mode==="create"||C.add_mode==="create_express")await hi({id:Ze.value,order_type:C.order_type,pay_amount:C.pay_amount,pay_remark:C.pay_remark||"",completion_request:C.completion_request,pay_create_type:C.add_mode==="create_express"?"express_cod":"fubei"}),N.msgSuccess("支付单已新增,请等待审核");else{const e=C.link_pay_order_ids;if(e.length===0){N.msgError("请至少选择一个支付单");return}await wi({id:Ze.value,pay_order_ids:e,completion_request:C.completion_request}),N.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}Xe.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ze.value))}catch{}finally{kt.value=!1}}}function Ja(t){Te.value=t.id,ye.value=3,ee.reason="",ee.refund_amount=void 0,de.value=[],Ce.value=null,Re.value=!0,rn(t.id),String(t.tracking_number||"").trim()&&on(t)}async function yn(t){var e;try{await Rt.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Vi({id:t.id}),N.msgSuccess("处方审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}async function bn(t){var e;try{await Rt.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Si({id:t.id}),N.msgSuccess("支付单审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}const xn="成都双流甄养堂互联网医院 处方笺",Vt=g(!1),St=g(!1),x=g(null),$e=g(""),G=g("internal"),Ya=g(null),Ee=g(!1);function Xa(t,e,s){const i=t.prescription_type||"浓缩水丸",u=Number(t.times_per_day)>0?Number(t.times_per_day):3,p=t.dosage_amount!=null?Number(t.dosage_amount):10,c=t.dosage_unit||(i==="饮片"?"ml":"g"),h=t.usage_way||e||"温水送服",M=t.usage_time||s||"",b=[];if(b.push(`每天${u}次`),i==="浓缩水丸"){const te=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;b.push(`一次${te}袋`),b.push(`每袋${p}${c}`)}else b.push(`一次${p}${c}`);return b.push(h),M&&b.push(M),b.join(", ")}const et=V(()=>{var e;const t=(e=x.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),Nt=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="主方")),De=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="辅方")),Za=V(()=>{var t;return li((t=x.value)==null?void 0:t.dietary_taboo)}),es=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸")return null;const e=Number(t.medication_days??t.usage_days??t.dose_count),s=Number(t.times_per_day),i=Number(t.dosage_amount),u=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;return!Number.isFinite(e)||!Number.isFinite(s)||!Number.isFinite(i)||e<=0||s<=0||i<=0?null:e*s*i*u}),ts=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸"||!De.value.length)return null;const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸"),s=Number(t.medication_days??e.usage_days),i=Number(e.times_per_day),u=Number(e.dosage_amount),p=Number(e.dosage_bag_count)>0?Number(e.dosage_bag_count):1;return!Number.isFinite(s)||!Number.isFinite(i)||!Number.isFinite(u)||s<=0||i<=0||u<=0?null:s*i*u*p}),Ct=t=>String(t).padStart(2,"0"),kn=V(()=>{const t=x.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const s=String(e).length===10?Number(e)*1e3:Number(e),i=new Date(s);if(!isNaN(i.getTime()))return`${i.getFullYear()}-${Ct(i.getMonth()+1)}-${Ct(i.getDate())} ${Ct(i.getHours())}:${Ct(i.getMinutes())}`}return t.prescription_date||"—"}),hn=V(()=>{const t=x.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const s=String(t.visit_no??"").trim();return s||"—"}),wn=V(()=>{const t=x.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),as=V(()=>{const t=x.value;return t?String(t.order_no??"").trim():""}),Vn=V(()=>{const t=x.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let s=t.region;return Array.isArray(s)&&(s=s.filter(Boolean).join("")),s&&e.push(String(s)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),ss=V(()=>{var e;const t=Number((e=x.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Sn=V(()=>{const e=et.value.reduce((s,i)=>s+(Number(i==null?void 0:i.dosage)||0),0);return Ve(e)}),ls=t=>{const e=Number(t)||0;return Ve(e*ss.value)},Nn=V(()=>{const t=x.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return e==="饮片"?"饮片":/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),ns=V(()=>{const t=x.value;return t?t.usage_text?t.usage_text:Xa(t):"—"}),ia=V(()=>{const t=x.value;if(!t||!De.value.length)return"";const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸");return Xa({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),Cn=V(()=>{const t=es.value,e=ts.value,s=typeof t=="number"&&isFinite(t)&&t>0?t:0,i=typeof e=="number"&&isFinite(e)&&e>0?e:0,u=s+i;if(u>0)return Ve(u);const p=x.value;if(!p)return"";const c=p.out_pellet||p.total_weight;if(c&&Number(c)>0)return Ve(Number(c));const h=et.value;if(!h.length)return"";const M=h.reduce((b,te)=>b+(Number(te==null?void 0:te.dosage)||0),0);return Ve(M*ss.value)}),rs=V(()=>{const t=x.value;return t&&t.medical_advice||""}),is=V(()=>{const t=x.value;if(!t)return"";const e=[];return e.push(`共${et.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),os=V(()=>{const t=x.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),us=V(()=>{const t=Cn.value;if(!t)return"";const e=es.value,s=ts.value;return typeof e=="number"&&isFinite(e)&&e>0&&typeof s=="number"&&isFinite(s)&&s>0?`${t}克(主方 ${Ve(e)}克 + 辅方 ${Ve(s)}克)`:`${t}克`});function Ve(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function ds(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Pn(t){return t?ds(t):"—"}function On(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function An(t){return t==null||t===""?"—":`${t}岁`}function Rn(){cs(m)}function ps(t){return t.map(e=>`${String(e.name??"").trim()}:${Number(e.dosage)||0}`).sort().join("|")}function Tn(t,e){return!t.length||!e.length||t.length!==e.length?!1:ps(t)===ps(e)}function $n(t){if(!t||typeof t!="object")return"";const e=t;return String(e.prescription_name??e.library_name??"").trim()}async function En(t){const e=$n(t.aux_usage);if(e)return e;const i=(Array.isArray(t.herbs)?t.herbs:[]).filter(p=>_a(p==null?void 0:p.formula_type)==="辅方");if(!i.length)return"";const u=Number(t.creator_id)>0?Number(t.creator_id):0;if(!u)return"";try{const p=await Pi({page_no:1,page_size:200,formula_type:"辅方",prescribing_creator_id:u}),c=Array.isArray(p==null?void 0:p.lists)?p.lists:[];for(const h of c){const M=Array.isArray(h==null?void 0:h.herbs)?h.herbs:[];if(Tn(i,M))return String((h==null?void 0:h.prescription_name)??"").trim()}}catch{}return""}async function cs(t){if(!t.prescription_id){N.msgWarning("该订单未关联处方");return}Vt.value=!0,St.value=!0,x.value=null,$e.value="",G.value="internal";try{const e=await Ni({id:t.prescription_id}),s=(e==null?void 0:e.data)??e??null;if(s){const i=t.medication_days,u={...s};i!=null&&String(i).trim()!==""&&(u.medication_days=i),t.order_no&&!u.order_no&&(u.order_no=t.order_no),t.recipient_name&&!u.recipient_name&&(u.recipient_name=t.recipient_name),t.recipient_phone&&!u.recipient_phone&&(u.recipient_phone=t.recipient_phone),t.shipping_address&&!u.shipping_address&&(u.shipping_address=t.shipping_address),t.amount!=null&&u.order_amount==null&&(u.order_amount=t.amount),t.dose_count!=null&&String(t.dose_count).trim()!==""&&Number(t.dose_count)>0&&(u.dose_count=Number(t.dose_count)),t.dose_unit!=null&&String(t.dose_unit).trim()!==""&&(u.dose_unit=String(t.dose_unit));const p=t.linked_appointment;(!u.appointment_id||Number(u.appointment_id)<=0)&&p&&typeof p=="object"&&Number(p.id)>0&&(u.appointment_id=Number(p.id)),x.value=u,$e.value=await En(u)}else x.value=null,$e.value=""}catch(e){N.msgError((e==null?void 0:e.message)||"加载处方详情失败"),Vt.value=!1,$e.value=""}finally{St.value=!1}}async function Dn(t){const e=t.querySelectorAll('img[src^="http"]'),s=Array.from(e).map(async i=>{try{const u=await fetch(i.src,{mode:"cors"});if(!u.ok)return;const p=await u.blob(),c=await new Promise((h,M)=>{const b=new FileReader;b.onload=()=>h(b.result),b.onerror=M,b.readAsDataURL(p)});i.src=c}catch{}});await Promise.allSettled(s)}async function ms(){await lt();const t=Ya.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Dn(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),Lr(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 _s(){var s;const t=(s=x.value)==null?void 0:s.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function Fn(){if(x.value){Ee.value=!0;try{const t=await ms(),e=document.createElement("a");e.download=`${_s()}.png`,e.href=t.toDataURL("image/png"),e.click(),N.msgSuccess("图片已下载")}catch{N.msgError("下载图片失败")}finally{Ee.value=!1}}}async function Un(){if(x.value){Ee.value=!0;try{const t=await ms(),e=t.toDataURL("image/jpeg",.95),s=new Ur({orientation:"portrait",unit:"mm",format:"a4"}),i=210,u=297,p=i,c=t.height*p/t.width;if(c<=u)s.addImage(e,"JPEG",0,0,p,c);else{let h=c,M=0;for(;h>0;)s.addImage(e,"JPEG",0,M,p,c),h-=u,M-=u,h>0&&s.addPage()}s.save(`${_s()}.pdf`),N.msgSuccess("PDF已下载")}catch{N.msgError("下载PDF失败")}finally{Ee.value=!1}}}return(t,e)=>{const s=Gn,i=Kn,u=ar,p=tr,c=lr,h=sr,M=nr,b=rr,te=zr,J=er,R=or,T=ur,Pt=dr,Ot=cr,tt=ir,at=Ir,Se=fr,Fe=_r,ae=vr,X=gr,xe=yr,oa=kr,Ln=xr,z=wr,st=hr,In=Vr,zn=Cr,jn=Nr,Mn=Pr,Ue=Or,fs=Rr,qn=Ar,vs=Tr,pe=Er,ua=$r,_e=Zn,D=Wn("perms");return o(),f("div",Ei,[l(s,{class:"!border-none shadow-sm mb-4",shadow:"never"},{default:n(()=>[r("div",Di,[nt.value?(o(),f("div",Fi,[e[89]||(e[89]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),f(O,null,L(el,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.prescription_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>al(a.value)},[r("span",Li,d(a.label),1)],10,Ui)),64))])):v("",!0),r("div",Ii,[e[90]||(e[90]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),f(O,null,L(tl,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.payment_slip_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>sl(a.value)},[r("span",ji,d(a.label),1)],10,zi)),64))]),r("div",Mi,[e[91]||(e[91]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),f(O,null,L(Ks,a=>r("div",{key:"fs-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.fulfillment_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Qs(a.value)},[r("span",Bi,d(a.label),1)],10,qi)),64))]),r("div",Hi,[e[92]||(e[92]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),f(O,null,L(Js,a=>r("div",{key:"sm-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.supply_mode===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ys(a.value)},[r("span",Gi,d(a.label),1)],10,Wi)),64))]),r("div",Ki,[e[93]||(e[93]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),f(O,null,L(Xs,a=>r("div",{key:"ec-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.express_company===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Zs(a.value)},[r("span",Ji,d(a.label),1)],10,Qi)),64))])])]),_:1}),l(s,{class:"!border-none po-filter-card shadow-sm",shadow:"never"},{default:n(()=>[A((o(),f("div",Yi,[r("div",Xi,[e[94]||(e[94]=r("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)),r("div",Zi,[r("div",null,[r("div",eo,[l(i,{size:16,class:"text-sky-500"},{default:n(()=>[l(w(Qn))]),_:1}),_(" "+d(ue.value.orderHeading),1)]),r("div",to,[r("div",ao," ¥"+d(ue.value.orderPerformanceStr),1),r("div",so,[r("span",null,"合计 ¥"+d(ue.value.orderStr),1),r("span",lo,"已取消 ¥"+d(ue.value.orderCancelledStr),1)])])]),r("div",no,[l(i,{size:20},{default:n(()=>[l(w(Jn))]),_:1})])]),r("p",ro,d(ue.value.periodLine),1)]),r("div",io,[e[95]||(e[95]=r("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)),r("div",oo,[r("div",null,[r("div",uo,[l(i,{size:16,class:"text-emerald-500"},{default:n(()=>[l(w(Yn))]),_:1}),_(" "+d(ue.value.payHeading),1)]),r("div",po,[r("div",co," ¥"+d(ue.value.payPerformanceStr),1),r("div",mo,[r("span",null,"合计 ¥"+d(ue.value.payStr),1),r("span",_o,"已取消 ¥"+d(ue.value.payCancelledStr),1)])])]),r("div",fo,[l(i,{size:20},{default:n(()=>[l(w(Xn))]),_:1})])]),r("p",vo,d(ue.value.periodLine),1)])])),[[_e,w(Z).loading]]),l(J,{class:"ls-form",model:y,inline:""},{default:n(()=>[l(jr,{"time-type":w(ze),"onUpdate:timeType":e[0]||(e[0]=a=>pa(ze)?ze.value=a:null),"date-range":w(It),"onUpdate:dateRange":e[1]||(e[1]=a=>pa(It)?It.value=a:null),label:"创建时间",variant:"inline","show-all":"","picker-width":"230px",onTimeTypeChange:ol,onCustomChange:ul},null,8,["time-type","date-range"]),l(p,{class:"w-[260px]",label:"订单号"},{default:n(()=>[l(u,{modelValue:y.order_no,"onUpdate:modelValue":e[2]||(e[2]=a=>y.order_no=a),placeholder:"业务订单号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[140px]",label:"处方ID"},{default:n(()=>[l(u,{modelValue:y.prescription_id,"onUpdate:modelValue":e[3]||(e[3]=a=>y.prescription_id=a),placeholder:"处方ID",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"患者"},{default:n(()=>[l(u,{modelValue:y.patient_keyword,"onUpdate:modelValue":e[4]||(e[4]=a=>y.patient_keyword=a),placeholder:"姓名 / 手机号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"快递"},{default:n(()=>[l(u,{modelValue:y.express_keyword,"onUpdate:modelValue":e[5]||(e[5]=a=>y.express_keyword=a),placeholder:"快递单号 / 公司",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),Fs.value?(o(),k(p,{key:0,class:"w-[200px]",label:"下单人"},{default:n(()=>[l(h,{modelValue:y.audit_admin_id,"onUpdate:modelValue":e[6]||(e[6]=a=>y.audit_admin_id=a),clearable:"",filterable:"",placeholder:"全部下单人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(ga.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})):v("",!0),l(p,{class:"w-[200px]",label:"医生"},{default:n(()=>[l(h,{modelValue:y.doctor_id,"onUpdate:modelValue":e[7]||(e[7]=a=>y.doctor_id=a),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Lt.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:n(()=>[l(M,{modelValue:y.assistant_dept_id,"onUpdate:modelValue":e[8]||(e[8]=a=>y.assistant_dept_id=a),data:ot.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:Ms,placeholder:"医助部门(选父级含子级)",onChange:_l},null,8,["modelValue","data"])]),_:1}),l(p,{class:"w-[200px]",label:"医助"},{default:n(()=>[l(h,{modelValue:y.assistant_id,"onUpdate:modelValue":e[9]||(e[9]=a=>y.assistant_id=a),clearable:"",filterable:"",placeholder:"订单创建人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Sa.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[160px]",label:"服务渠道"},{default:n(()=>[l(h,{modelValue:y.service_channel,"onUpdate:modelValue":e[10]||(e[10]=a=>y.service_channel=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[140px]",label:"辅方"},{default:n(()=>[l(h,{modelValue:y.has_aux_formula,"onUpdate:modelValue":e[11]||(e[11]=a=>y.has_aux_formula=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"含辅方",value:"1"}),l(c,{label:"不含辅方",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,null,{default:n(()=>[l(b,{type:"primary",onClick:w(K)},{default:n(()=>[...e[96]||(e[96]=[_("查询",-1)])]),_:1},8,["onClick"]),l(b,{onClick:vl},{default:n(()=>[...e[97]||(e[97]=[_("重置",-1)])]),_:1}),A(l(te,{class:"ml-2.5","fetch-fun":w(ri),params:pl.value,"page-size":w(Z).size,"export-hint":"导出范围与上方筛选一致(履约状态、创建时间及其他条件均会生效)。含「自媒体渠道(挂号渠道来源)」:优先取该单关联处方登记的挂号;无则诊单下同患者挂号取 id 最大的一条(与前台挂号选择的记录一致);业绩侧栏带渠道筛选导出时与同页列表高亮挂号同源。「服务套餐」按字典 server_order 解析展示。「处方」导出主方/辅方药材明细;「主方/辅方服用方式、天数」与详情侧栏同口径(主方/辅方天数分别取处方 usage_days、辅方 aux_usage.usage_days;「天数」列为订单 medication_days)。「关联收款记录」与详情侧栏同源(已支付/已退款/待审核),每笔两行展示(摘要行+明细行),多笔空行分隔,单元格自动换行。「签收日期」与详情/业绩看板同源,仅读物流库(轨迹/签收时间):导出不再实时查快递100,速度只取决于数据库;签收时间由 `tcm:backfill-sign-time` 命令与物流自动更新定时任务落库,刚发货尚未同步的单子会暂时为空,待下次回填/定时任务刷新后显示。"},null,8,["fetch-fun","params","page-size"]),[[D,["tcm.prescriptionOrder/export"]]])]),_:1})]),_:1},8,["model"])]),_:1}),A((o(),k(s,{class:"!border-none mt-4 po-table-card shadow-sm",shadow:"never"},{default:n(()=>[r("div",go,[r("div",yo,[e[98]||(e[98]=r("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),r("span",bo,"共 "+d(w(Z).count)+" 条",1),ba.value?(o(),k(b,{key:0,type:"primary",plain:"",size:"small",class:"ml-3",disabled:ge.value.length===0,onClick:zs},{default:n(()=>[_(" 批量改派医助"+d(ge.value.length?`(${ge.value.length})`:""),1)]),_:1},8,["disabled"])):v("",!0)]),r("div",xo,[r("div",{class:q(["po-focus-board__item is-pending-rx",{"is-active":se.value==="pendingRx"}]),onClick:e[12]||(e[12]=a=>ut("pendingRx"))},[e[99]||(e[99]=r("span",{class:"po-focus-board__label"},"待处方审核",-1)),r("strong",ko,d(dt.value.pendingRx),1)],2),r("div",{class:q(["po-focus-board__item is-pending-pay",{"is-active":se.value==="pendingPay"}]),onClick:e[13]||(e[13]=a=>ut("pendingPay"))},[e[100]||(e[100]=r("span",{class:"po-focus-board__label"},"待支付审核",-1)),r("strong",ho,d(dt.value.pendingPay),1)],2),r("div",{class:q(["po-focus-board__item is-pending-ship",{"is-active":se.value==="pendingShip"}]),onClick:e[14]||(e[14]=a=>ut("pendingShip"))},[e[101]||(e[101]=r("span",{class:"po-focus-board__label"},"待发货",-1)),r("strong",wo,d(dt.value.pendingShip),1)],2),r("div",{class:q(["po-focus-board__item is-risk",{"is-active":se.value==="risk"}]),onClick:e[15]||(e[15]=a=>ut("risk"))},[e[102]||(e[102]=r("span",{class:"po-focus-board__label"},"重点异常",-1)),r("strong",Vo,d(dt.value.risk),1)],2)])]),l(tt,{data:w(Z).lists,size:"default",stripe:"",class:"po-data-table","row-class-name":fl,onSelectionChange:Is},{default:n(()=>[ba.value?(o(),k(R,{key:0,type:"selection",width:"44",selectable:()=>!0})):v("",!0),l(R,{label:"订单号","min-width":"178","show-overflow-tooltip":""},{default:n(({row:a})=>[r("div",So,[r("div",No,d(a.order_no||"—"),1),r("div",Co,[l(T,{size:"small",effect:"plain",type:w(Hr)(a)},{default:n(()=>[_(d(w(Wr)(a)),1)]),_:2},1032,["type"]),r("span",Po,"#"+d(a.id),1)])])]),_:1}),l(R,{label:"处方ID",prop:"prescription_id",width:"86"}),l(R,{label:"诊单ID",prop:"diagnosis_id",width:"86"}),l(R,{label:"收货人","min-width":"100"},{default:n(({row:a})=>[r("div",null,d(a.recipient_name||"—"),1),r("div",{class:q(["text-xs",w(ma)(a.recipient_phone,a.prescription_phone)?"text-red-600 font-semibold":"text-gray-400"])},[_(d(a.recipient_phone||"—")+" ",1),w(ma)(a.recipient_phone,a.prescription_phone)?(o(),f("span",Oo,"(与处方手机不一致)")):v("",!0)],2)]),_:1}),l(R,{label:"费用类别",width:"96"},{default:n(({row:a})=>[_(d(w(ks)(a.fee_type)),1)]),_:1}),l(R,{label:"金额","min-width":"100"},{default:n(({row:a})=>[r("div",Ao,[r("span",Ro,"¥"+d(a.amount),1),l(Pt,{placement:"top",width:200,trigger:"hover"},{reference:n(()=>[l(i,{class:"text-gray-400 cursor-pointer hover:text-primary"},{default:n(()=>[l(w(pr))]),_:1})]),default:n(()=>[r("div",To,[r("div",$o,[e[103]||(e[103]=r("span",{class:"text-gray-500"},"业务订单单据:",-1)),r("span",Eo,"¥"+d(a.amount),1)]),r("div",Do,[e[104]||(e[104]=r("span",{class:"text-gray-500"},"定金下限:",-1)),r("span",null,"¥"+d(w(B)(a.deposit_min_amount)),1)]),r("div",Fo,[e[105]||(e[105]=r("span",{class:"text-gray-500"},"实付(关联):",-1)),r("span",Uo,"¥"+d(w(B)(a.linked_pay_paid_total)),1)]),Dt()&&a.internal_cost!=null&&a.internal_cost!==""?(o(),f("div",Lo,[e[106]||(e[106]=r("span",{class:"text-gray-500"},"内部成本:",-1)),r("span",{class:q(["font-medium cursor-pointer select-none",oe.value?"text-orange-600":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[16]||(e[16]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${w(B)(a.internal_cost)}`:"****"),3)])):v("",!0)])]),_:2},1024)])]),_:1}),Dt()?(o(),k(R,{key:1,width:"100"},{header:n(()=>[r("span",{class:"cursor-pointer select-none hover:text-primary",title:"点击显示/隐藏内部成本",onClick:e[17]||(e[17]=Le(a=>oe.value=!oe.value,["stop"]))}," 内部成本 ")]),default:n(({row:a})=>[a.internal_cost!=null&&a.internal_cost!==""?(o(),f("span",{key:0,class:q(["cursor-pointer select-none",oe.value?"text-orange-600 font-medium":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[18]||(e[18]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${a.internal_cost}`:"****"),3)):(o(),f("span",Io,"—"))]),_:1})):v("",!0),l(R,{label:"处方审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.prescription_audit_status),size:"small",class:q(zt("rx",a))},{default:n(()=>[_(d(Na(a.prescription_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"支付单审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.payment_slip_audit_status),size:"small",class:q(zt("pay",a))},{default:n(()=>[_(d(Na(a.payment_slip_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"履约",width:"108"},{default:n(({row:a})=>[l(T,{type:w(Gr)(a.fulfillment_status),size:"small",class:q(zt("fulfillment",a))},{default:n(()=>[_(d(w(Kr)(a.fulfillment_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"关联支付单",width:"100"},{default:n(({row:a})=>[Number(a.linked_pay_order_count)>0?(o(),f("span",{key:0,class:"text-primary cursor-default",title:a.linked_pay_order_id?`#${a.linked_pay_order_id}…`:""},d(a.linked_pay_order_count)+" 笔 ",9,zo)):(o(),f("span",jo,"—"))]),_:1}),l(R,{label:"创建时间","min-width":"144"},{default:n(({row:a})=>[_(d(w(hs)(a.create_time)),1)]),_:1}),l(R,{label:"开方人",prop:"doctor_name",width:"90","show-overflow-tooltip":""}),l(R,{label:"创建人",prop:"creator_name",width:"90","show-overflow-tooltip":""}),l(R,{"min-width":"128","show-overflow-tooltip":""},{header:n(()=>[e[107]||(e[107]=r("span",null,"二中心·指派",-1)),l(Ot,{placement:"top","max-width":"320",content:"与诊单「指派记录」快照一致:仅当本条业务单在操作瞬间为快照中的「关联业务单」(创建人+创建时间命中)时显示。绿色=新医助在名称含「二中心」的部门及其下级;灰色=系统自动释放诊单医助。"},{default:n(()=>[l(i,{class:"ml-0.5 align-middle text-gray-400 cursor-help"},{default:n(()=>[l(w(mr))]),_:1})]),_:1})]),default:n(({row:a})=>[Number(a.po_assign_snapshot_hit)?Number(a.po_assign_is_release)?(o(),k(T,{key:1,type:"info",size:"small"},{default:n(()=>[...e[108]||(e[108]=[_("已释放",-1)])]),_:1})):Number(a.po_assign_to_er_center)?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[_(d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),k(T,{key:3,type:"warning",size:"small",effect:"plain"},{default:n(()=>[_(" 非二中心 "+d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),f("span",Mo,"—"))]),_:1}),l(R,{label:"操作",width:"310",fixed:"right"},{default:n(({row:a})=>[r("div",qo,[A((o(),k(b,{type:"primary",link:"",onClick:P=>Fl(a.id)},{default:n(()=>[_(d(Us.value),1)]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/detail"]]]),Ra(a)?A((o(),k(b,{key:0,type:"primary",link:"",onClick:P=>Wl(a)},{default:n(()=>[...e[109]||(e[109]=[_("编辑",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/edit"]]]):v("",!0),Cl(a)?A((o(),k(b,{key:1,type:"success",link:"",onClick:P=>en(a)},{default:n(()=>[...e[110]||(e[110]=[_("修改单号",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:2,type:"primary",link:"",onClick:P=>Wa(a)},{default:n(()=>[...e[111]||(e[111]=[_("确认发货",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:3,type:"success",link:"",onClick:P=>Qa(a)},{default:n(()=>[...e[112]||(e[112]=[_("补齐支付单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:4,type:"primary",link:"",onClick:P=>Ja(a)},{default:n(()=>[...e[113]||(e[113]=[_("完成订单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:5,type:"danger",link:"",onClick:P=>Ka(a)},{default:n(()=>[...e[114]||(e[114]=[_("退款",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0),kl(a)?A((o(),k(b,{key:6,type:"danger",link:"",onClick:P=>Ql(a)},{default:n(()=>[...e[115]||(e[115]=[_("撤回",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/withdraw"]]]):v("",!0),Ua(a)?A((o(),k(b,{key:7,type:"warning",link:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[116]||(e[116]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0)])]),_:1})]),_:1},8,["data"]),r("div",Bo,[l(at,{modelValue:w(Z),"onUpdate:modelValue":e[19]||(e[19]=a=>pa(Z)?Z.value=a:null),"page-sizes":[15,20,30,40,100,150,200],onChange:w(U)},null,8,["modelValue","onChange"])])]),_:1})),[[_e,w(Z).loading]]),l(qr,{ref_key:"detailDrawerRef",ref:H,"gancao-preview-loading":Oe.value,onUpdateAmount:El,onPatchRxPatient:Rl,onViewPrescription:e[20]||(e[20]=a=>$.value&&cs($.value)),onTestGancaoPreview:Zl,onViewPatient:Ts,onDetailChanged:w(U)},{"header-extra":n(({detail:a})=>[r("div",Ho,[e[119]||(e[119]=r("span",{class:"text-sm text-gray-500"},"发货类型",-1)),A((o(),k(Fe,{"model-value":Y(a.ship_mode),size:"small",disabled:jt.value||!Ea(a),onChange:Sl},{default:n(()=>[l(Se,{label:"gancao"},{default:n(()=>[...e[117]||(e[117]=[_("甘草药房",-1)])]),_:1}),l(Se,{label:"direct",disabled:$a(a)},{default:n(()=>[...e[118]||(e[118]=[_("洛阳药房",-1)])]),_:1},8,["disabled"])]),_:2},1032,["model-value","disabled"])),[[D,["tcm.prescriptionOrder/setShipMode"]]]),hl.value?v("",!0):(o(),k(T,{key:0,type:Y(a.ship_mode)==="direct"?"warning":"success",effect:"plain",round:""},{default:n(()=>[_(d(wl(a.ship_mode)),1)]),_:2},1032,["type"]))])]),"header-actions":n(({detail:a})=>[l(Br,{order:a,onResolved:Nl},null,8,["order"]),Ua(a)?A((o(),k(b,{key:0,type:"warning",size:"small",plain:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[120]||(e[120]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0),gl(a)?A((o(),k(b,{key:1,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"prescription")},{default:n(()=>[...e[121]||(e[121]=[_(" 处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),bl(a)?A((o(),k(b,{key:2,type:"info",size:"small",plain:"",onClick:P=>yn(a)},{default:n(()=>[...e[122]||(e[122]=[_(" 撤回处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),yl(a)?A((o(),k(b,{key:3,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"payment")},{default:n(()=>[...e[123]||(e[123]=[_(" 支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),xl(a)?A((o(),k(b,{key:4,type:"info",size:"small",plain:"",onClick:P=>bn(a)},{default:n(()=>[...e[124]||(e[124]=[_(" 撤回支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:5,type:"primary",size:"small",plain:"",onClick:P=>Wa(a)},{default:n(()=>[...e[125]||(e[125]=[_(" 确认发货 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:6,type:"success",size:"small",plain:"",onClick:P=>Qa(a)},{default:n(()=>[...e[126]||(e[126]=[_(" 关联支付单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:7,type:"primary",size:"small",plain:"",onClick:P=>Ja(a)},{default:n(()=>[...e[127]||(e[127]=[_(" 完成订单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:8,type:"danger",size:"small",plain:"",onClick:P=>Ka(a)},{default:n(()=>[...e[128]||(e[128]=[_(" 退款 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0)]),_:1},8,["gancao-preview-loading","onDetailChanged"]),l(X,{modelValue:je.value,"onUpdate:modelValue":e[23]||(e[23]=a=>je.value=a),title:"修改订单金额",width:"420px","destroy-on-close":"","close-on-click-modal":!1,onClosed:$l},{footer:n(()=>[l(b,{onClick:e[22]||(e[22]=a=>je.value=!1)},{default:n(()=>[...e[130]||(e[130]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Bt.value,onClick:Ia},{default:n(()=>[...e[131]||(e[131]=[_(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"updateAmountFormRef",ref:pt,model:ce,rules:Ol,"label-width":"96px",class:"pr-2",onSubmit:Le(Ia,["prevent"])},{default:n(()=>[l(p,{label:"当前金额"},{default:n(()=>{var a;return[r("div",Wo,"¥"+d(w(B)((a=$.value)==null?void 0:a.amount)),1)]}),_:1}),l(p,{label:"新金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:ce.amount,"onUpdate:modelValue":e[21]||(e[21]=a=>ce.amount=a),min:0,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[129]||(e[129]=r("div",{class:"text-xs text-gray-400 pl-[96px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(X,{modelValue:ke.value,"onUpdate:modelValue":e[46]||(e[46]=a=>ke.value=a),title:re.value?"修改物流信息(甘草订单)":"编辑业务订单",width:"940px",top:"4vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog",onClosed:ql},{footer:n(()=>[r("div",Pu,[re.value?v("",!0):(o(),f("div",Ou,[r("span",Au,"第 "+d(I.value+1)+" / 3 步",1),I.value===2&&j.value>0?(o(),f("span",Ru," 订单金额与关联支付单合计须 ≥ ¥"+d(w(B)(j.value)),1)):v("",!0)])),r("div",Tu,[l(b,{size:"large",onClick:e[45]||(e[45]=a=>ke.value=!1)},{default:n(()=>[...e[144]||(e[144]=[_("取消",-1)])]),_:1}),re.value?v("",!0):(o(),f(O,{key:0},[I.value>0?(o(),k(b,{key:0,size:"large",onClick:Bl},{default:n(()=>[...e[145]||(e[145]=[_("上一步",-1)])]),_:1})):v("",!0),I.value<2?(o(),k(b,{key:1,type:"primary",size:"large",onClick:Hl},{default:n(()=>[...e[146]||(e[146]=[_(" 下一步 ",-1)])]),_:1})):v("",!0)],64)),re.value||I.value===2?(o(),k(b,{key:1,type:"primary",size:"large",loading:Kt.value,onClick:Gl},{default:n(()=>[...e[147]||(e[147]=[_(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:n(()=>[A((o(),f("div",Go,[ne.value?(o(),f("div",Ko,[r("div",Qo,[e[132]||(e[132]=r("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),r("div",Jo,[r("span",Yo,"#"+d(ne.value.id),1),ne.value.sn?(o(),f("span",Xo,d(ne.value.sn),1)):v("",!0),r("span",Zo,d(ne.value.patient_name||"—"),1)])]),l(Ot,{content:za.value,placement:"bottom","show-after":300},{default:n(()=>[r("div",eu,d(za.value),1)]),_:1},8,["content"])])):v("",!0),re.value?(o(),k(xe,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4",title:"订单已提交甘草,仅可修改快递单号与承运商;地址、金额等变更请先走取消流程。"},br({_:2},[_t.value?{name:"default",fn:n(()=>[r("div",tu,"甘草处方单号:"+d(_t.value),1)]),key:"0"}:void 0]),1024)):v("",!0),re.value?v("",!0):(o(),f(O,{key:2},[l(Ln,{active:I.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:n(()=>[l(oa,{title:"患者与收货",description:"诊单与物流地址"}),l(oa,{title:"服务与支付单",description:"套餐与关联收款"}),l(oa,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),r("p",au,d(Ul.value),1)],64)),l(J,{ref_key:"editFormRef",ref:he,model:m,rules:Ml.value,"label-width":"108px",class:"create-order-form"},{default:n(()=>[re.value?(o(),k(st,{key:0,gutter:20},{default:n(()=>[l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",su,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[24]||(e[24]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[25]||(e[25]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1})]),_:1})):v("",!0),re.value?v("",!0):(o(),f(O,{key:1},[A(r("div",lu,[l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"收货人",prop:"recipient_name"},{default:n(()=>[l(u,{modelValue:m.recipient_name,"onUpdate:modelValue":e[26]||(e[26]=a=>m.recipient_name=a),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"收货手机",prop:"recipient_phone"},{default:n(()=>[l(u,{modelValue:m.recipient_phone,"onUpdate:modelValue":e[27]||(e[27]=a=>m.recipient_phone=a),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"省市区",prop:"region"},{default:n(()=>[l(In,{modelValue:m.region,"onUpdate:modelValue":e[28]||(e[28]=a=>m.region=a),options:it.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"详细地址",prop:"shipping_address"},{default:n(()=>[l(u,{modelValue:m.shipping_address,"onUpdate:modelValue":e[29]||(e[29]=a=>m.shipping_address=a),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===0]]),A(r("div",nu,[nt.value?(o(),k(st,{key:0,gutter:20,class:"mb-1"},{default:n(()=>[l(z,{span:24},{default:n(()=>[r("div",ru,[e[135]||(e[135]=r("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),m.prescription_id?(o(),k(b,{key:0,type:"primary",size:"small",link:"",onClick:Rn},{default:n(()=>[...e[133]||(e[133]=[_(" 详细 ",-1)])]),_:1})):v("",!0),m.id?(o(),k(b,{key:1,type:"warning",size:"small",link:"",loading:Oe.value,icon:w(Sr),onClick:Xl},{default:n(()=>[...e[134]||(e[134]=[_(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),r("span",iu,"ID: "+d(m.prescription_id||"—"),1)]),r("div",ou,[ja.value.length?(o(),f("div",uu,[e[136]||(e[136]=r("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),f(O,null,L(ja.value,(a,P)=>(o(),f("div",{key:P,class:"pl-0 min-w-0"},[a.length?(o(),k(jn,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:n(()=>[(o(!0),f(O,null,L(a,(S,E)=>(o(),k(zn,{key:E},{default:n(()=>[r("span",du,d(S),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),f("div",pu,"创建人所属部门:—"))])]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"复诊"},{default:n(()=>[l(Mn,{modelValue:m.is_follow_up,"onUpdate:modelValue":e[30]||(e[30]=a=>m.is_follow_up=a),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:n(()=>[r("div",cu,[l(ae,{modelValue:m.medication_days,"onUpdate:modelValue":e[31]||(e[31]=a=>m.medication_days=a),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[137]||(e[137]=r("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"上次医生"},{default:n(()=>[l(u,{modelValue:m.prev_staff,"onUpdate:modelValue":e[32]||(e[32]=a=>m.prev_staff=a),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:La.value,prop:"dose_count"},{default:n(()=>[l(ae,{modelValue:m.dose_count,"onUpdate:modelValue":e[33]||(e[33]=a=>m.dose_count=a),min:1,placeholder:La.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"剂量单位",prop:"dose_unit"},{default:n(()=>[l(h,{modelValue:m.dose_unit,"onUpdate:modelValue":e[34]||(e[34]=a=>m.dose_unit=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"剂",value:"剂"}),l(c,{label:"丸",value:"丸"}),l(c,{label:"袋",value:"袋"}),l(c,{label:"盒",value:"盒"}),l(c,{label:"瓶",value:"瓶"}),l(c,{label:"膏",value:"膏"}),l(c,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"服务渠道"},{default:n(()=>[l(h,{modelValue:m.service_channel,"onUpdate:modelValue":e[35]||(e[35]=a=>m.service_channel=a),class:"w-full",filterable:"","allow-create":"","default-first-option":"",clearable:"",placeholder:"可选或自定义输入"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"服务套餐"},{default:n(()=>[l(h,{modelValue:m.service_package,"onUpdate:modelValue":e[36]||(e[36]=a=>m.service_package=a),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:n(()=>[(o(!0),f(O,null,L(Il.value,a=>(o(),k(c,{key:a.value,label:a.name,value:a.value,disabled:a.status===0},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",mu,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[37]||(e[37]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[38]||(e[38]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"关联支付单",prop:"pay_order_ids",required:j.value>0},{default:n(()=>[l(h,{modelValue:m.pay_order_ids,"onUpdate:modelValue":e[39]||(e[39]=a=>m.pay_order_ids=a),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:j.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Qt.value},{default:n(()=>[(o(!0),f(O,null,L(Be.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id,class:"!h-auto py-1.5"},{default:n(()=>[r("div",_u,[r("div",fu,[r("span",vu,d(a.order_no),1),r("span",gu,"¥"+d(a.amount),1)]),r("div",yu,[r("span",bu,[_(d(ft(a.order_type))+" · "+d(w(Tt)(a)),1),a.remark?(o(),f(O,{key:0},[_(" · "+d(a.remark),1)],64)):v("",!0)]),r("span",xu,d(String(a.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),r("div",ku,[j.value>0?(o(),f(O,{key:0},[r("span",hu,"当前已开启关联支付门槛(¥"+d(w(B)(j.value))+"),须至少选择一笔支付单。",1),e[138]||(e[138]=r("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[140]||(e[140]=_(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),l(Ot,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:n(()=>[...e[139]||(e[139]=[r("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[ca,I.value===1]]),A(r("div",wu,[r("div",{class:q(["create-order-deposit-bar",Jt.value>=j.value?"is-ok":"is-warn"])},[r("div",Vu,[e[141]||(e[141]=r("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),r("strong",null,"¥"+d(w(B)(j.value)),1),r("span",Su,d(j.value>0?"须 ≥ 此值":"未设置"),1)]),e[143]||(e[143]=r("div",{class:"create-order-deposit-bar__sep"},null,-1)),r("div",Nu,[e[142]||(e[142]=r("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),r("strong",null,"¥"+d(w(B)(Jt.value)),1),r("span",Cu,d(Jt.value>=j.value?"已达标":"未达标"),1)])],2),l(st,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"费用类别",prop:"fee_type"},{default:n(()=>[l(h,{modelValue:m.fee_type,"onUpdate:modelValue":e[40]||(e[40]=a=>m.fee_type=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"总金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:m.amount,"onUpdate:modelValue":e[41]||(e[41]=a=>m.amount=a),min:zl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),A((o(),k(z,{span:12},{default:n(()=>[l(p,{label:"内部成本"},{default:n(()=>[l(ae,{modelValue:m.internal_cost,"onUpdate:modelValue":e[42]||(e[42]=a=>m.internal_cost=a),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[D,["finance.account_log/lists"]]]),l(z,{span:24},{default:n(()=>[A((o(),k(p,{label:"药房备注"},{default:n(()=>[l(u,{modelValue:m.remark_extra,"onUpdate:modelValue":e[43]||(e[43]=a=>m.remark_extra=a),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[D,["tcm.prescriptionOrder/editRemarkExtra"]]]),l(p,{label:"医助备注"},{default:n(()=>[l(u,{modelValue:m.remark_assistant,"onUpdate:modelValue":e[44]||(e[44]=a=>m.remark_assistant=a),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===2]])],64))]),_:1},8,["model","rules"])])),[[_e,Gt.value]])]),_:1},8,["modelValue","title"]),l(X,{modelValue:He.value,"onUpdate:modelValue":e[51]||(e[51]=a=>He.value=a),title:Kl.value,width:"480px","destroy-on-close":"",onClosed:e[52]||(e[52]=a=>Pe.value="")},{footer:n(()=>[l(b,{onClick:e[48]||(e[48]=a=>He.value=!1)},{default:n(()=>[...e[149]||(e[149]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:vt.value,onClick:e[49]||(e[49]=a=>qa("approve"))},{default:n(()=>[...e[150]||(e[150]=[_("同意通过",-1)])]),_:1},8,["loading"]),l(b,{type:"danger",loading:vt.value,onClick:e[50]||(e[50]=a=>qa("reject"))},{default:n(()=>[...e[151]||(e[151]=[_("驳回阻止",-1)])]),_:1},8,["loading"])]),default:n(()=>[We.value&&We.value.completion_request===1?(o(),k(xe,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:n(()=>[r("div",$u,[e[148]||(e[148]=r("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),r("div",Eu," 申请人:"+d(We.value.completion_request_by_name||"—"),1),r("div",Du," 申请时间:"+d(w(hs)(We.value.completion_request_time)),1)])]),_:1})):v("",!0),e[152]||(e[152]=r("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),l(u,{modelValue:Pe.value,"onUpdate:modelValue":e[47]||(e[47]=a=>Pe.value=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),l(X,{modelValue:Ge.value,"onUpdate:modelValue":e[56]||(e[56]=a=>Ge.value=a),title:"修改快递单号",width:"420px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[55]||(e[55]=a=>Ge.value=!1)},{default:n(()=>[...e[154]||(e[154]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:bt.value,onClick:Ha},{default:n(()=>[...e[155]||(e[155]=[_("保存单号",-1)])]),_:1},8,["loading"])]),default:n(()=>[A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ha,["prevent"])},{default:n(()=>[l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:me.express_company,"onUpdate:modelValue":e[53]||(e[53]=a=>me.express_company=a),class:"w-full",placeholder:"选择承运商"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:me.tracking_number,"onUpdate:modelValue":e[54]||(e[54]=a=>me.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:"",autofocus:""},null,8,["modelValue"])]),_:1}),e[153]||(e[153]=r("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[_e,bt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:we.value,"onUpdate:modelValue":e[60]||(e[60]=a=>we.value=a),title:"确认发货",width:"440px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[59]||(e[59]=a=>we.value=!1)},{default:n(()=>[...e[157]||(e[157]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:xt.value,onClick:Ga},{default:n(()=>[...e[158]||(e[158]=[_(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ga,["prevent"])},{default:n(()=>[l(p,{label:"发货方式"},{default:n(()=>[l(T,{type:Y(W.ship_mode)==="direct"?"warning":"success",effect:"plain",size:"default"},{default:n(()=>[_(d(Vl.value),1)]),_:1},8,["type"]),e[156]||(e[156]=r("span",{class:"text-xs text-gray-400 ml-2"},"请在订单详情顶部「发货类型」中设置,此处不可修改",-1))]),_:1}),l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:W.express_company,"onUpdate:modelValue":e[57]||(e[57]=a=>W.express_company=a),class:"w-full"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:W.tracking_number,"onUpdate:modelValue":e[58]||(e[58]=a=>W.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[_e,xt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Re.value,"onUpdate:modelValue":e[65]||(e[65]=a=>Re.value=a),title:"完成订单",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:nn},{footer:n(()=>[l(b,{onClick:e[64]||(e[64]=a=>Re.value=!1)},{default:n(()=>[...e[162]||(e[162]=[_("取消",-1)])]),_:1}),l(b,{type:ye.value===10?"danger":"primary",loading:Ke.value,onClick:un},{default:n(()=>[_(d(ye.value===10?"确认退款":"确定"),1)]),_:1},8,["type","loading"])]),default:n(()=>[A((o(),f("div",Fu,[Me.value.show?(o(),k(xe,{key:0,type:"error",effect:"dark",closable:!1,"show-icon":"",class:"mb-3 !items-start ring-2 ring-red-600/70",title:"物流异常:轨迹含拒收/退回等,请先核实处理再结案"},{default:n(()=>[r("div",Uu,[Me.value.keywords.length?(o(),f("div",Lu,[e[159]||(e[159]=r("span",{class:"text-red-100/90"},"命中:",-1)),(o(!0),f(O,null,L(Me.value.keywords,a=>(o(),k(T,{key:a,type:"danger",effect:"plain",size:"small",class:"!border-white/35 !text-white"},{default:n(()=>[_(d(a),1)]),_:2},1024))),128))])):v("",!0),Me.value.lines.length?(o(),f("ul",Iu,[(o(!0),f(O,null,L(Me.value.lines,(a,P)=>(o(),f("li",{key:P},d(a),1))),128))])):v("",!0),e[160]||(e[160]=r("div",{class:"text-red-100/85 border-t border-white/15 pt-1.5"}," 确认已协调拒收/退回后续(重发、退款、改址等)后再完成订单。 ",-1))])]),_:1})):v("",!0),e[161]||(e[161]=r("p",{class:"text-sm text-gray-600 mb-3"}," 请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总;选择「退款」时将关联收款单标记为已退款并清零本单已付。 ",-1)),l(h,{modelValue:ye.value,"onUpdate:modelValue":e[61]||(e[61]=a=>ye.value=a),class:"w-full",placeholder:"请选择"},{default:n(()=>[(o(),f(O,null,L(an,a=>l(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),ye.value===10?(o(),f(O,{key:1},[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mt-3 !items-start",title:"退款将处理本单全部关联收款单,已付总额清零,且不可撤销。"}),A((o(),f("div",zu,[de.value.length?(o(),f("div",ju,[r("div",Mu," 将退款的关联收款("+d(de.value.length)+" 笔 · 合计 ¥"+d(w(B)(sn.value))+") ",1),l(tt,{data:de.value,size:"small",border:"",stripe:"","max-height":"200"},{default:n(()=>[l(R,{prop:"order_no",label:"单号","min-width":"120","show-overflow-tooltip":""}),l(R,{label:"类型",width:"88"},{default:n(({row:a})=>[_(d(a.order_type_desc||w(ks)(a.order_type)),1)]),_:1}),l(R,{label:"金额",width:"88",align:"right"},{default:n(({row:a})=>[r("span",qu,"¥"+d(a.amount),1)]),_:1}),l(R,{label:"状态",width:"92",align:"center"},{default:n(({row:a})=>[l(T,{type:w(Qr)(a.status),size:"small"},{default:n(()=>[_(d(a.status_desc||w(Jr)(a.status)),1)]),_:2},1032,["type"])]),_:1})]),_:1},8,["data"])])):Qe.value?v("",!0):(o(),f("p",Bu," 当前无已关联的收款单;提交后仍将本单标记为「退款」并清零已付。 "))])),[[_e,Qe.value]]),l(J,{ref_key:"completeRefundFormRef",ref:ta,model:ee,rules:ln.value,"label-width":"88px",class:"mt-3"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:ee.refund_amount,"onUpdate:modelValue":e[62]||(e[62]=a=>ee.refund_amount=a),min:.01,max:be.value>0?be.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Hu," 可退上限 ¥"+d(w(B)(be.value)),1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:ee.reason,"onUpdate:modelValue":e[63]||(e[63]=a=>ee.reason=a),type:"textarea",rows:3,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])],64)):v("",!0)])),[[_e,ct.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Ye.value,"onUpdate:modelValue":e[69]||(e[69]=a=>Ye.value=a),title:"订单退款",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:cn},{footer:n(()=>[l(b,{onClick:e[68]||(e[68]=a=>Ye.value=!1)},{default:n(()=>[...e[163]||(e[163]=[_("取消",-1)])]),_:1}),l(b,{type:"danger",loading:la.value,onClick:mn},{default:n(()=>[...e[164]||(e[164]=[_(" 确认退款 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:dn.value},null,8,["title"]),l(J,{ref_key:"refundOrderFormRef",ref:na,model:Q,rules:pn.value,"label-width":"88px"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:Q.refund_amount,"onUpdate:modelValue":e[66]||(e[66]=a=>Q.refund_amount=a),min:.01,max:ie.value>0?ie.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Wu," 可退上限 ¥"+d(w(B)(ie.value))+"(默认全额);部分退款时按金额从关联收款单依次标记已退款,并扣减本单已付。 ",1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:Q.reason,"onUpdate:modelValue":e[67]||(e[67]=a=>Q.reason=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue"]),l(X,{modelValue:Xe.value,"onUpdate:modelValue":e[77]||(e[77]=a=>Xe.value=a),title:"补齐支付单",width:"600px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[78]||(e[78]=a=>{var P;return(P=ht.value)==null?void 0:P.clearValidate()})},{footer:n(()=>[l(b,{onClick:e[76]||(e[76]=a=>Xe.value=!1)},{default:n(()=>[...e[174]||(e[174]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:kt.value,onClick:gn},{default:n(()=>[_(d(C.add_mode==="completion_only"?"提交申请":"确认新增"),1)]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:_n.value,type:"info",closable:!1,"show-icon":"",class:"mb-4"},null,8,["title"]),A((o(),k(J,{ref_key:"addPayOrderFormRef",ref:ht,model:C,rules:fn.value,"label-width":"90px",class:"pr-2"},{default:n(()=>[l(p,{label:"添加方式",prop:"add_mode"},{default:n(()=>[l(Fe,{modelValue:C.add_mode,"onUpdate:modelValue":e[70]||(e[70]=a=>C.add_mode=a)},{default:n(()=>[l(Ue,{value:"create"},{default:n(()=>[...e[165]||(e[165]=[_("付呗",-1)])]),_:1}),l(Ue,{value:"create_express"},{default:n(()=>[...e[166]||(e[166]=[_("快递代收",-1)])]),_:1}),l(Ue,{value:"link"},{default:n(()=>[...e[167]||(e[167]=[_("关联已有",-1)])]),_:1}),l(Ue,{value:"completion_only"},{default:n(()=>[...e[168]||(e[168]=[_("直接完单申请",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),C.add_mode==="create"||C.add_mode==="create_express"?(o(),f(O,{key:0},[l(p,{label:"费用类别",prop:"order_type"},{default:n(()=>[l(h,{modelValue:C.order_type,"onUpdate:modelValue":e[71]||(e[71]=a=>C.order_type=a),class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"支付金额",prop:"pay_amount"},{default:n(()=>[l(ae,{modelValue:C.pay_amount,"onUpdate:modelValue":e[72]||(e[72]=a=>C.pay_amount=a),min:0,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元,可为 0)"},null,8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"pay_remark"},{default:n(()=>[l(u,{modelValue:C.pay_remark,"onUpdate:modelValue":e[73]||(e[73]=a=>C.pay_remark=a),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):C.add_mode==="completion_only"?(o(),k(xe,{key:1,type:"warning",closable:!1,"show-icon":"",class:"!mb-0"},{title:n(()=>[...e[169]||(e[169]=[_(" 不新增或关联支付单,仅向审核人员提交「完成订单」申请;提交后支付审核将变为待审核,审核通过后将自动结案。 ",-1)])]),_:1})):(o(),k(p,{key:2,label:"选择支付单",prop:"link_pay_order_id"},{default:n(()=>[l(h,{modelValue:C.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=a=>C.link_pay_order_ids=a),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:ra.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:n(()=>[(o(!0),f(O,null,L(wt.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id},{default:n(()=>[r("div",Gu,[r("div",Ku,[r("span",Qu,d(a.order_no),1),r("span",Ju,"¥"+d(a.amount),1)]),r("div",Yu,d(ft(a.order_type))+" · "+d(w(Tt)(a)),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[170]||(e[170]=r("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),C.add_mode!=="completion_only"?(o(),k(p,{key:3,label:"完单申请"},{default:n(()=>[l(Fe,{modelValue:C.completion_request,"onUpdate:modelValue":e[75]||(e[75]=a=>C.completion_request=a)},{default:n(()=>[l(Ue,{value:0},{default:n(()=>[...e[171]||(e[171]=[_("不申请",-1)])]),_:1}),l(Ue,{value:1},{default:n(()=>[...e[172]||(e[172]=[_("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[173]||(e[173]=r("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})):v("",!0)]),_:1},8,["model","rules"])),[[_e,kt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:qe.value,"onUpdate:modelValue":e[82]||(e[82]=a=>qe.value=a),title:"修改处方患者信息",width:"440px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:Tl},{footer:n(()=>[l(b,{onClick:e[81]||(e[81]=a=>qe.value=!1)},{default:n(()=>[...e[175]||(e[175]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ht.value,onClick:Dl},{default:n(()=>[...e[176]||(e[176]=[_(" 保存 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"patchRxPatientFormRef",ref:Wt,model:le,rules:Al,"label-width":"96px"},{default:n(()=>[l(p,{label:"患者姓名",prop:"patient_name"},{default:n(()=>[l(u,{modelValue:le.patient_name,"onUpdate:modelValue":e[79]||(e[79]=a=>le.patient_name=a),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),l(p,{label:"手机",prop:"phone"},{default:n(()=>[l(u,{modelValue:le.phone,"onUpdate:modelValue":e[80]||(e[80]=a=>le.phone=a),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(vs,{modelValue:Vt.value,"onUpdate:modelValue":e[84]||(e[84]=a=>Vt.value=a),size:"920px","close-on-click-modal":!1},{header:n(()=>[r("div",Xu,[e[179]||(e[179]=r("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),x.value&&!St.value?(o(),f("div",Zu,[l(b,{size:"small",loading:Ee.value,onClick:Fn},{default:n(()=>[...e[177]||(e[177]=[_(" 下载图片 ",-1)])]),_:1},8,["loading"]),l(b,{size:"small",loading:Ee.value,onClick:Un},{default:n(()=>[...e[178]||(e[178]=[_(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:n(()=>{var a,P;return[A((o(),f("div",ed,[x.value?(o(),k(qn,{key:0,modelValue:G.value,"onUpdate:modelValue":e[83]||(e[83]=S=>G.value=S),class:"mx-4 mt-2",style:{"margin-bottom":"0px","z-index":"1",position:"relative"}},{default:n(()=>[l(fs,{label:"药房联",name:"internal"}),l(fs,{label:"处方联",name:"user"})]),_:1},8,["modelValue"])):v("",!0),x.value?(o(),f("div",td,[Number(x.value.void_status)===1?(o(),k(T,{key:0,type:"danger",size:"small"},{default:n(()=>[...e[180]||(e[180]=[_("已作废",-1)])]),_:1})):Number(x.value.business_prescription_audit_rejected)===1?(o(),k(T,{key:1,type:"danger",size:"small"},{default:n(()=>[...e[181]||(e[181]=[_("业务订单已驳回",-1)])]),_:1})):Number(x.value.audit_status)===1?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[...e[182]||(e[182]=[_("已通过",-1)])]),_:1})):Number(x.value.audit_status)===0?(o(),k(T,{key:3,type:"warning",size:"small"},{default:n(()=>[...e[183]||(e[183]=[_("待审核",-1)])]),_:1})):(o(),k(T,{key:4,type:"danger",size:"small"},{default:n(()=>[...e[184]||(e[184]=[_("已驳回",-1)])]),_:1}))])):v("",!0),x.value&&Number(x.value.void_status)===1?(o(),f("div",ad," 作废人:"+d(x.value.void_by_name||"—")+",作废时间:"+d(Pn(x.value.void_time)),1)):x.value&&Number(x.value.business_prescription_audit_rejected)===1?(o(),f("div",sd,[e[185]||(e[185]=r("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),x.value.business_prescription_audit_remark?(o(),f("div",ld," 驳回意见:"+d(x.value.business_prescription_audit_remark),1)):v("",!0)])):x.value&&Number(x.value.audit_status)===2?(o(),f("div",nd,[e[186]||(e[186]=r("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),x.value.audit_remark?(o(),f("div",rd,"驳回意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0),x.value?(o(),f("div",{key:5,ref_key:"prescriptionSlipPrintRef",ref:Ya,class:"rx-paper"},[r("div",id,d(G.value==="internal"?"药房联":xn),1),r("div",od,[r("span",ud,d(G.value==="user"?"服药前请核对姓名、电话、医生等信息以及医嘱等要点":"服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点"),1),r("div",dd,[r("div",pd,[e[187]||(e[187]=r("span",{class:"rx-meta-label"},"日期",-1)),r("span",cd,d(kn.value),1)]),r("div",md,[e[188]||(e[188]=r("span",{class:"rx-meta-label"},"处方编号",-1)),r("span",_d,d(hn.value),1)]),r("div",fd,[e[189]||(e[189]=r("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),r("span",vd,d(wn.value),1)]),as.value?(o(),f("div",gd,[e[190]||(e[190]=r("span",{class:"rx-meta-label"},"业务单号",-1)),r("span",yd,d(as.value),1)])):v("",!0)])]),r("div",bd,[r("div",xd,[r("div",kd,[e[191]||(e[191]=r("span",{class:"rx-key"},"姓名",-1)),r("span",hd,d(x.value.patient_name||"—"),1)]),r("div",wd,[e[192]||(e[192]=r("span",{class:"rx-key"},"性别",-1)),r("span",Vd,d(On(x.value.gender)),1)]),r("div",Sd,[e[193]||(e[193]=r("span",{class:"rx-key"},"年龄",-1)),r("span",Nd,d(An(x.value.age)),1)]),r("div",Cd,[e[194]||(e[194]=r("span",{class:"rx-key"},"电话",-1)),r("span",Pd,d(x.value.phone||x.value.recipient_phone||"—"),1)])]),r("div",Od,[r("div",Ad,[e[195]||(e[195]=r("span",{class:"rx-key"},"收件信息",-1)),r("span",Rd,d(Vn.value),1)])]),r("div",Td,[r("div",$d,[e[196]||(e[196]=r("span",{class:"rx-key"},"临床诊断",-1)),r("span",Ed,d(x.value.clinical_diagnosis||"—"),1)])])]),r("div",Dd,[r("div",Fd,d(G.value==="internal"?"药房联":"处方联"),1),r("div",Ud,[e[199]||(e[199]=r("div",{class:"rx-rp-label"},"Rp.",-1)),r("div",Ld,[r("div",Id,[e[197]||(e[197]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)]),r("div",zd,[e[198]||(e[198]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)])])]),r("div",jd,[G.value==="internal"?(o(),f(O,{key:0},[Nt.value.length?(o(),f(O,{key:0},[e[200]||(e[200]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"main-"+E,class:"rx-herb-cell"},[r("span",Md,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",qd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[r("div",Bd,[e[201]||(e[201]=_(" 辅方",-1)),$e.value?(o(),f("span",Hd,"("+d($e.value)+")",1)):v("",!0)]),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"aux-"+E,class:"rx-herb-cell"},[r("span",Wd,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",Gd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0)],64)):(o(),f(O,{key:1},[Nt.value.length?(o(),f(O,{key:0},[e[202]||(e[202]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"user-main-"+E,class:"rx-herb-cell"},[r("span",Kd,d(S.name),1),r("span",Qd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[e[203]||(e[203]=r("div",{class:"rx-herb-section-label rx-herb-section-label--aux"},"辅方",-1)),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"user-aux-"+E,class:"rx-herb-cell"},[r("span",Jd,d(S.name),1),r("span",Yd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0)],64))])]),r("div",Xd,[G.value==="internal"?(o(),f(O,{key:0},[ia.value?(o(),f("p",Zd,"主服法:"+d(ns.value),1)):(o(),f("p",ep,"服法:"+d(ns.value),1)),ia.value?(o(),f("p",tp,"辅服法:"+d(ia.value),1)):v("",!0)],64)):v("",!0),rs.value?(o(),f("p",ap,"医嘱:"+d(rs.value),1)):v("",!0),Za.value?(o(),f("p",sp,"忌口:"+d(Za.value),1)):v("",!0),G.value==="internal"&&is.value?(o(),f("p",lp,"备注:"+d(is.value),1)):v("",!0),os.value?(o(),f("p",np," 药房备注:"+d(os.value),1)):v("",!0),G.value==="internal"&&us.value&&((a=x.value)==null?void 0:a.prescription_type)!=="饮片"?(o(),f("p",rp," 出丸:"+d(us.value),1)):v("",!0)]),r("div",ip,[r("div",{class:q(["rx-bot-row rx-bot-row-1",{"rx-bot-row-1--user":G.value==="user"}])},[r("div",op,[e[204]||(e[204]=r("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),r("div",up,[x.value.doctor_signature?(o(),f("img",{key:0,src:x.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,dp)):v("",!0),x.value.doctor_signature?v("",!0):(o(),f("span",pp,d(x.value.doctor_name||"—"),1))])]),G.value==="internal"?(o(),f("div",cp,[e[205]||(e[205]=r("span",{class:"rx-bot-meta-key"},"类型:",-1)),r("span",mp,d(Nn.value),1)])):v("",!0),r("div",_p,[e[206]||(e[206]=r("span",{class:"rx-bot-meta-key"},"天数:",-1)),r("span",fp,d(((P=$.value)==null?void 0:P.medication_days)!=null&&String($.value.medication_days).trim()!==""?$.value.medication_days+" 天":"—"),1)]),G.value==="internal"?(o(),f("div",vp,[e[207]||(e[207]=r("span",{class:"rx-bot-meta-key"},"剂量:",-1)),r("span",gp,d(Sn.value)+"克",1)])):v("",!0)],2)]),e[208]||(e[208]=r("div",{class:"rx-bot-row rx-hospital-row"},[r("div",{class:"rx-hospital-line"},"成都双流甄养堂互联网医院有限公司 联系方式:4001667339"),r("div",{class:"rx-hospital-line"},"地址:四川省成都市双流区黄甲街道黄龙大道二段280号")],-1))],512)):v("",!0),x.value&&(x.value.audit_by_name||x.value.audit_remark)?(o(),f("div",yp,[x.value.audit_by_name?(o(),f("div",bp,[_(" 审核人:"+d(x.value.audit_by_name)+" ",1),x.value.audit_time?(o(),f("span",xp,d(ds(x.value.audit_time)),1)):v("",!0)])):v("",!0),x.value.audit_remark?(o(),f("div",kp,"审核意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[_e,St.value]])]}),_:1},8,["modelValue"]),l(vs,{modelValue:yt.value,"onUpdate:modelValue":e[85]||(e[85]=a=>yt.value=a),title:"甘草预下单测试结果",size:"800px","destroy-on-close":""},{default:n(()=>{var a,P;return[F.value?(o(),f("div",hp,[l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[r("div",wp,[e[210]||(e[210]=r("span",{class:"font-semibold"},"价格信息",-1)),l(T,{type:"success"},{default:n(()=>[...e[209]||(e[209]=[_("预下单成功",-1)])]),_:1})])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"药材成本"},{default:n(()=>{var S;return[r("span",Vp,"¥"+d(((S=F.value.fee)==null?void 0:S.m_cost)||"0.00"),1)]}),_:1}),l(pe,{label:"制作费"},{default:n(()=>{var S;return[r("span",Sp,"¥"+d((((S=F.value.fee)==null?void 0:S.proces_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"物流费"},{default:n(()=>{var S;return[r("span",Np,"¥"+d((((S=F.value.fee)==null?void 0:S.lis_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"总计"},{default:n(()=>[r("div",null,[r("span",Cp," ¥"+d(Zt(F.value.fee)),1),A((o(),f("div",Pp,[e[211]||(e[211]=_(" 占订单总金额: ",-1)),r("span",Op,d(Jl(F.value.fee,F.value.amount)),1),F.value.amount>0?(o(),f("span",Ap,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[D,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[...e[212]||(e[212]=[r("span",{class:"font-semibold"},"配送信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"调配中心"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_name)||"—"),1)]}),_:1}),l(pe,{label:"调配中心ID"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_id)||"—"),1)]}),_:1}),l(pe,{label:"服用天数范围",span:2},{default:n(()=>{var S,E,gs,ys,bs,xs;return[_(d(((E=(S=F.value.result)==null?void 0:S.take_days)==null?void 0:E.min)||"—")+" - "+d(((ys=(gs=F.value.result)==null?void 0:gs.take_days)==null?void 0:ys.max)||"—")+" 天 (默认: "+d(((xs=(bs=F.value.result)==null?void 0:bs.take_days)==null?void 0:xs.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(a=F.value.result)==null?void 0:a.rule_check)!=null&&P.length?(o(),k(s,{key:0,shadow:"never",class:"mb-4"},{header:n(()=>[...e[213]||(e[213]=[r("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:n(()=>[r("div",Rp,d(F.value.result.rule_check.map(S=>S.msg).join(" ")),1)]),_:1})):v("",!0),l(s,{shadow:"never"},{header:n(()=>{var S,E;return[r("div",Tp,[e[214]||(e[214]=r("span",{class:"font-semibold"},"药材明细",-1)),r("span",$p,"共 "+d(((E=(S=F.value.result)==null?void 0:S.m_list)==null?void 0:E.length)||0)+" 味药",1)])]}),default:n(()=>{var S;return[l(tt,{data:((S=F.value.result)==null?void 0:S.m_list)||[],border:"",stripe:"","max-height":"400"},{default:n(()=>[l(R,{type:"index",label:"#",width:"50",align:"center"}),l(R,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),l(R,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:n(({row:E})=>[_(d(E.quantity)+d(E.unit),1)]),_:1}),l(R,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:n(({row:E})=>[_(" ¥"+d(Number(E.price).toFixed(4)),1)]),_:1}),l(R,{label:"小计",width:"100",align:"right"},{default:n(({row:E})=>[r("span",Ep," ¥"+d((Number(E.price)*Number(E.quantity)).toFixed(2)),1)]),_:1}),l(R,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:n(({row:E})=>[l(T,{type:E.is_available===1?"success":"danger",size:"small"},{default:n(()=>[_(d(E.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),l(R,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),l(s,{shadow:"never",class:"mt-4"},{header:n(()=>[...e[215]||(e[215]=[r("span",{class:"font-semibold"},"订单信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"订单号",span:2},{default:n(()=>[_(d(F.value.order_no||"—"),1)]),_:1}),l(pe,{label:"剂数"},{default:n(()=>[r("span",Dp,d(F.value.dose_count||"—")+"剂",1)]),_:1}),l(pe,{label:"单剂量"},{default:n(()=>{var S;return[r("span",Fp,d(Yl((S=F.value.result)==null?void 0:S.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),l(X,{modelValue:Ie.value,"onUpdate:modelValue":e[88]||(e[88]=a=>Ie.value=a),title:"批量改派医助",width:"440px","append-to-body":""},{footer:n(()=>[l(b,{onClick:e[87]||(e[87]=a=>Ie.value=!1)},{default:n(()=>[...e[218]||(e[218]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ft.value,onClick:js},{default:n(()=>[...e[219]||(e[219]=[_("确定改派",-1)])]),_:1},8,["loading"])]),default:n(()=>[r("div",Up,[e[216]||(e[216]=_(" 已选 ",-1)),r("strong",Lp,d(ge.value.length),1),e[217]||(e[217]=_(" 单,将订单「创建人(医助归属)」改派为: ",-1))]),l(h,{modelValue:rt.value,"onUpdate:modelValue":e[86]||(e[86]=a=>rt.value=a),clearable:"",filterable:"",placeholder:"选择目标医助",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Ne.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e[220]||(e[220]=r("p",{class:"text-xs text-gray-400 mt-2 leading-relaxed"}," 仅变更订单的业务归属(医助筛选 / 业绩口径),并写入操作日志;不影响处方、支付单及审核状态。已是该医助的订单会自动跳过。 ",-1))]),_:1},8,["modelValue"]),l(w(As),{ref_key:"diagnosisViewRef",ref:fa},null,512)])}}}),tc=Ri(zp,[["__scopeId","data-v-e7ad3e24"]]);export{tc as default};
+========
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-emC-q2iC.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BWNwZkyX.js","assets/index-C53kWH2_.js","assets/index-ynJZC2Ez.css","assets/perm-BICz51xi.js","assets/DailyMatrix-DiYUQo1w.js","assets/picker-Bo_aGeCY.js","assets/index-ByXR3YHf.js","assets/index-B3imPWFk.css","assets/index-ci6cz5MZ.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-ZgwwU4Et.js","assets/index-D0f1Mn00.css","assets/index-9XBsG-Cy.js","assets/file-Ci3F9EoX.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-C7qwIzjQ.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-BC4wO08v.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-Dwk-zq8O.js","assets/RecordingPlaybackBlock-Cbli8dUQ.js","assets/RecordingVideoPlayer-PakpPQK-.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-OjhXvTzR.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-i8xnfggI.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-B9Qsv5NO.js","assets/doctor-CNnijzjL.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-DcnSeCwS.js","assets/patient-cj6mW_46.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-PJG2qWT8.js","assets/PrescriptionOrderDetailDrawer-CL3jtI2P.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-Nz5F52Mm.js","assets/index-D25Fsd3W.js","assets/medicine-DWZ_n3IQ.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
+import{o as Os,Q as Bn,R as da,ap as Hn,n as lt,be as Wn,q as o,r as f,v as l,D as n,s as r,F as O,G as L,ae as q,T as d,P as v,bg as Gn,ac as A,w as Kn,u as w,ce as Qn,L as _,bH as Jn,bI as Yn,cf as Xn,bi as Zn,b9 as er,C as pa,b6 as tr,b7 as ar,b8 as At,O as k,bm as sr,bn as lr,bK as nr,K as rr,bj as ir,bk as or,br as ur,bY as dr,aw as Le,cg as pr,a1 as cr,ch as mr,bc as _r,bb as fr,J as vr,bt as gr,bh as yr,bM as br,b_ as xr,b$ as kr,c7 as hr,c8 as wr,ca as Vr,ad as ca,bA as Sr,U as Nr,S as Cr,I as Pr,bf as Or,Y as Ar,X as Rr,B as Tr,c0 as $r,c1 as Er,cb as Dr,al as Fr,M as g,p as V,ba as fe,e as Rt,cd as Ur,cc as Lr}from"./.pnpm-BadRMC3e.js";import{_ as Ir}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{_ as zr}from"./index.vue_vue_type_script_setup_true_lang-DILFg-Lp.js";import{L as jr,u as Mr}from"./useListTimeFilter-DAT-jls6.js";import qr from"./PrescriptionOrderDetailDrawer-CL3jtI2P.js";import{_ as Br}from"./GancaoSubmissionReconcileButton.vue_vue_type_script_setup_true_lang-Dj1Lr0Ug.js";import{z as Hr,A as Wr,s as ma,g as ks,b as B,B as Gr,a as Kr,f as hs,h as Tt,p as Qr,o as Jr,T as Yr,P as Xr,n as Zr,C as $t,y as ei,c as ws,u as ti,D as ai,E as si,F as _a,r as li,w as Vs,q as ni}from"./prescription-order-utils-B0fYlULc.js";import{x as ri,y as ii,g as oi,i as ui,t as di,z as pi,A as ci,B as mi,h as Et,C as Ss,D as _i,E as fi,F as vi,G as Ns,H as gi,I as yi,J as bi,K as Cs,L as xi,M as ki,N as hi,O as wi,P as Vi,Q as Si,k as Ni,f as Ps,c as Ci,o as Pi}from"./tcm-BWNwZkyX.js";import{u as Oi,i as N,m as Ai,_ as Ri}from"./index-C53kWH2_.js";import{d as Ti}from"./department-drKzCnRw.js";import{u as $i}from"./usePaging-DMqUvFG-.js";import"./index-ByXR3YHf.js";const Ei={class:"prescription-order-page prescription-order-list px-4 py-4 pb-8"},Di={class:"flex flex-col gap-3"},Fi={key:0,class:"flex items-center gap-2 flex-wrap"},Ui=["onClick"],Li={class:"font-medium"},Ii={class:"flex items-center gap-2 flex-wrap"},zi=["onClick"],ji={class:"font-medium"},Mi={class:"flex items-center gap-2 flex-wrap"},qi=["onClick"],Bi={class:"font-medium"},Hi={class:"flex items-center gap-2 flex-wrap"},Wi=["onClick"],Gi={class:"font-medium"},Ki={class:"flex items-center gap-2 flex-wrap"},Qi=["onClick"],Ji={class:"font-medium"},Yi={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},Xi={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},Zi={class:"relative flex items-start justify-between gap-3"},eo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},to={class:"mt-2 space-y-1.5 min-w-0"},ao={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},so={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},lo={class:"text-slate-400"},no={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},ro={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},io={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},oo={class:"relative flex items-start justify-between gap-3"},uo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},po={class:"mt-2 space-y-1.5 min-w-0"},co={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},mo={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},_o={class:"text-slate-400"},fo={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},vo={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},go={class:"po-table-toolbar"},yo={class:"po-table-toolbar__title-wrap"},bo={class:"po-table-hint text-gray-400"},xo={class:"po-focus-board"},ko={class:"po-focus-board__value"},ho={class:"po-focus-board__value"},wo={class:"po-focus-board__value"},Vo={class:"po-focus-board__value"},So={class:"po-order-no-cell"},No={class:"po-order-no-main"},Co={class:"po-order-no-sub"},Po={class:"text-gray-400"},Oo={key:0,class:"ml-1"},Ao={class:"flex items-center gap-1"},Ro={class:"text-red-500 font-medium whitespace-nowrap"},To={class:"text-sm"},$o={class:"flex justify-between mb-1"},Eo={class:"font-medium text-red-500"},Do={class:"flex justify-between mb-1"},Fo={class:"flex justify-between mb-1"},Uo={class:"font-medium"},Lo={key:0,class:"flex justify-between"},Io={key:1},zo=["title"],jo={key:1},Mo={key:0,class:"text-gray-400"},qo={class:"flex items-center gap-1 flex-wrap"},Bo={class:"flex justify-end mt-4"},Ho={class:"flex items-center gap-2 ml-4 shrink-0"},Wo={class:"text-sm text-gray-700 font-medium"},Go={class:"create-order-dialog__inner"},Ko={key:0,class:"create-order-rx-card"},Qo={class:"create-order-rx-card__head"},Jo={class:"create-order-rx-card__meta"},Yo={class:"create-order-rx-card__id"},Xo={key:0,class:"create-order-rx-card__sn"},Zo={class:"create-order-rx-card__patient"},eu={class:"create-order-rx-card__herbs"},tu={class:"text-sm text-gray-700 mt-1"},au={class:"create-order-step-lead"},su={class:"flex gap-2 w-full"},lu={class:"create-order-step-panel"},nu={class:"create-order-step-panel"},ru={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},iu={class:"text-xs text-gray-400"},ou={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},uu={key:0,class:"space-y-1.5"},du={class:"text-gray-800 break-all"},pu={key:1,class:"text-gray-400"},cu={class:"flex items-center gap-1 w-full"},mu={class:"flex gap-2 w-full"},_u={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},fu={class:"flex items-center justify-between"},vu={class:"font-medium text-[13px] text-gray-800"},gu={class:"text-orange-500 font-medium ml-4"},yu={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},bu={class:"truncate pr-2"},xu={class:"shrink-0"},ku={class:"create-order-pay-hint text-gray-500"},hu={class:"text-amber-600 font-medium"},wu={class:"create-order-step-panel"},Vu={class:"create-order-deposit-bar__cell"},Su={class:"create-order-deposit-bar__sub"},Nu={class:"create-order-deposit-bar__cell"},Cu={class:"create-order-deposit-bar__sub"},Pu={class:"create-order-footer"},Ou={key:0,class:"create-order-footer__hint"},Au={class:"create-order-footer__step"},Ru={key:0,class:"create-order-footer__warn"},Tu={class:"create-order-footer__actions"},$u={class:"text-sm"},Eu={class:"text-gray-600"},Du={class:"text-gray-600"},Fu={class:"min-h-[52px]"},Uu={class:"text-xs leading-relaxed space-y-1.5"},Lu={key:0,class:"flex flex-wrap gap-1 items-center"},Iu={key:1,class:"list-disc pl-4 space-y-0.5 text-red-50"},zu={class:"mt-3"},ju={key:0,class:"rounded-lg border border-amber-200/80 bg-amber-50/50 p-3"},Mu={class:"text-xs font-semibold text-amber-900 mb-2"},qu={class:"text-red-500"},Bu={key:1,class:"text-xs text-gray-500 mt-2"},Hu={class:"text-xs text-gray-500 mt-1"},Wu={class:"text-xs text-gray-500 mt-1"},Gu={class:"flex flex-col gap-0.5 py-0.5"},Ku={class:"flex items-center justify-between"},Qu={class:"text-sm"},Ju={class:"text-orange-500 font-medium ml-4"},Yu={class:"text-xs text-gray-400"},Xu={class:"flex items-center justify-between w-full pr-2 gap-3"},Zu={key:0,class:"flex items-center gap-2 shrink-0"},ed={class:"rx-wrap"},td={key:1,class:"rx-statusbar"},ad={key:2,class:"rx-status rx-status-danger"},sd={key:3,class:"rx-status rx-status-danger"},ld={key:0,class:"mt-1"},nd={key:4,class:"rx-status rx-status-danger"},rd={key:0,class:"mt-1"},id={class:"rx-title"},od={class:"rx-notice"},ud={class:"rx-notice-text"},dd={class:"rx-notice-meta"},pd={class:"rx-meta-item"},cd={class:"rx-meta-value"},md={class:"rx-meta-item"},_d={class:"rx-meta-value"},fd={class:"rx-meta-item"},vd={class:"rx-meta-value"},gd={key:0,class:"rx-meta-item"},yd={class:"rx-meta-value"},bd={class:"rx-info"},xd={class:"rx-info-row"},kd={class:"rx-info-cell"},hd={class:"rx-val"},wd={class:"rx-info-cell"},Vd={class:"rx-val"},Sd={class:"rx-info-cell"},Nd={class:"rx-val"},Cd={class:"rx-info-cell"},Pd={class:"rx-val"},Od={class:"rx-info-row rx-info-row-full"},Ad={class:"rx-info-cell"},Rd={class:"rx-val"},Td={class:"rx-info-row rx-info-row-full"},$d={class:"rx-info-cell"},Ed={class:"rx-val"},Dd={class:"rx-rp"},Fd={class:"rx-watermark"},Ud={class:"rx-rp-head"},Ld={class:"rx-rp-cols-head"},Id={class:"rx-rp-col-head"},zd={class:"rx-rp-col-head"},jd={class:"rx-herbs"},Md={class:"rx-herb-name"},qd={class:"rx-herb-total"},Bd={class:"rx-herb-section-label rx-herb-section-label--aux"},Hd={key:0,class:"rx-herb-library-name"},Wd={class:"rx-herb-name"},Gd={class:"rx-herb-total"},Kd={class:"rx-herb-name"},Qd={class:"rx-herb-total"},Jd={class:"rx-herb-name"},Yd={class:"rx-herb-total"},Xd={class:"rx-text"},Zd={key:0},ep={key:1},tp={key:2},ap={key:1},sp={key:2},lp={key:3},np={key:4,class:"rx-text-warn"},rp={key:5,class:"rx-text-warn"},ip={class:"rx-bottom"},op={class:"rx-bot-cell rx-bot-doctor"},up={class:"rx-bot-doctor-body"},dp=["src"],pp={key:1,class:"rx-bot-doctor-name"},cp={key:0,class:"rx-bot-cell rx-bot-meta"},mp={class:"rx-bot-meta-val"},_p={class:"rx-bot-cell rx-bot-meta"},fp={class:"rx-bot-meta-val"},vp={key:1,class:"rx-bot-cell rx-bot-meta"},gp={class:"rx-bot-meta-val"},yp={key:6,class:"rx-audit"},bp={key:0},xp={key:0,class:"ml-2 text-gray-400"},kp={key:1,class:"mt-1"},hp={key:0,class:"px-4"},wp={class:"flex items-center justify-between"},Vp={class:"text-lg font-semibold text-orange-600"},Sp={class:"text-lg font-semibold text-blue-600"},Np={class:"text-lg font-semibold text-green-600"},Cp={class:"text-xl font-bold text-red-600"},Pp={class:"text-sm text-gray-500 mt-1.5"},Op={class:"font-medium text-gray-700"},Ap={key:0},Rp={class:"text-sm text-gray-700 leading-relaxed"},Tp={class:"flex items-center justify-between"},$p={class:"text-sm text-gray-500"},Ep={class:"font-medium text-orange-600"},Dp={class:"text-base font-medium"},Fp={class:"text-base font-medium"},Up={class:"text-sm text-gray-600 mb-3"},Lp={class:"text-primary"},Ip=Os({name:"prescriptionOrderList"}),zp=Os({...Ip,setup(jp){const As=Dr(()=>Fr(()=>import("./edit-emC-q2iC.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]))),ve=Oi(),Rs=Bn(),fa=g(null);function Ts(){var e,s;const t=Number((e=$.value)==null?void 0:e.diagnosis_id);if(!t){N.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(s=fa.value)==null||s.openViewOnly(t)}const $s=6,va=[3,8],Es=V(()=>{const t=ve.userInfo;if(!t||Number(t.root)===1)return!1;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes($s)?!va.some(s=>e.includes(s)):!1}),Ds=V(()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return va.some(s=>e.includes(s))}),Fs=V(()=>Es.value||Ds.value),ga=g([]),nt=V(()=>{const t=ve.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return e.includes(Yr)?e.some(s=>Xr.includes(s)):!0}),Us=V(()=>nt.value?"详情/审核":"详情"),Ls=[0,3,6],ya=[0,3],Dt=()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return Ls.some(s=>e.includes(s))},oe=g(!1),ba=V(()=>{const t=ve.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[];return ya.some(s=>e.includes(s))}),ge=g([]);function Is(t){ge.value=Array.isArray(t)?t:[]}const Ie=g(!1),rt=g(""),Ft=g(!1);function zs(){if(ge.value.length===0){N.msgWarning("请先勾选要改派的订单");return}rt.value="",Ie.value=!0}async function js(){const t=Number(rt.value);if(!t){N.msgWarning("请选择目标医助");return}const e=ge.value.map(s=>Number(s.id)).filter(s=>s>0);if(e.length===0){N.msgWarning("请先勾选要改派的订单");return}Ft.value=!0;try{const s=await ii({order_ids:e,assistant_id:t}),i=Number((s==null?void 0:s.success)??0),u=Array.isArray(s==null?void 0:s.errors)?s.errors:[];let p=`已改派 ${i} 单`;u.length&&(p+=`;${u.join(";")}`),N.msgSuccess(p),Ie.value=!1,ge.value=[],U()}catch{}finally{Ft.value=!1}}const it=g([]),Ut=g([]),Lt=g([]),Ne=g([]),ot=g([]),Ms={value:"id",label:"name",children:"children"};function xa(t,e){for(const s of t||[]){if(s==null||typeof s!="object")continue;const i=s;if(Number(i.id)===e)return i;const u=xa(i.children||[],e);if(u)return u}return null}function ka(t){const e=Number(t.id),s=[];Number.isFinite(e)&&e>0&&s.push(e);for(const i of t.children||[])i&&typeof i=="object"&&s.push(...ka(i));return s}function qs(t,e){const s=xa(e,t);return s?ka(s):[t]}async function Bs(){try{const[t,e,s]=await Promise.all([oi(),ui(),Ti()]);Lt.value=Array.isArray(t)?t:[],Ne.value=Array.isArray(e)?e:[];const i=Array.isArray(s)?s:[];ot.value=i}catch{Lt.value=[],Ne.value=[],ot.value=[]}}const Hs=t=>t.map(e=>{var s;return{value:e.province,label:e.province,code:e.code,children:((s=e.citys)==null?void 0:s.map(i=>{var u;return{value:i.city,label:i.city,code:i.code,children:((u=i.areas)==null?void 0:u.map(p=>({value:p.area,label:p.area,code:p.code})))||[]}}))||[]}}),Ws=async()=>{try{console.log("开始加载省市区数据...");const e=await fetch("https://cos.zhenyangtang.com.cn/area/ChinaCitys.json");if(console.log("响应状态:",e.status),!e.ok)throw new Error(`HTTP error! status: ${e.status}`);const s=await e.json();console.log("加载的数据条数:",s==null?void 0:s.length),it.value=Hs(s),console.log("regionOptions 已设置,条数:",it.value.length)}catch(t){console.error("加载省市区数据失败:",t),it.value=[]}},Gs=async()=>{try{const t=await Ai({type:"server_order"});Ut.value=Zr(t==null?void 0:t.server_order)}catch(t){console.error("加载服务套餐选项失败:",t),Ut.value=[]}},Ks=[{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 Qs(t){se.value="",y.exclude_fulfillment_cancelled=0,y.fulfillment_status=t,K()}const se=g(""),Js=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"洛阳直发",value:"direct"},{label:"自营",value:"self"}];function Ys(t){y.supply_mode=t,K()}const Xs=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function Zs(t){y.express_company=t,K()}const y=fe({order_no:"",prescription_id:"",patient_keyword:"",express_keyword:"",express_company:"",doctor_id:"",assistant_id:"",assistant_dept_id:"",fulfillment_status:"",prescription_audit_status:"",payment_slip_audit_status:"",supply_mode:"",service_channel:"",has_aux_formula:"",exclude_fulfillment_cancelled:0,audit_admin_id:""}),el=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],tl=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function al(t){se.value="",y.exclude_fulfillment_cancelled=0,y.prescription_audit_status=t,K()}function sl(t){se.value="",y.exclude_fulfillment_cancelled=0,y.payment_slip_audit_status=t,K()}function ut(t){if(se.value===t){se.value="",y.prescription_audit_status="",y.payment_slip_audit_status="",y.fulfillment_status="",y.exclude_fulfillment_cancelled=0,K();return}se.value=t,y.prescription_audit_status="",y.payment_slip_audit_status="",y.fulfillment_status="",y.exclude_fulfillment_cancelled=0,t==="pendingRx"?(y.prescription_audit_status=0,y.exclude_fulfillment_cancelled=1):t==="pendingPay"?(y.prescription_audit_status=1,y.payment_slip_audit_status=0):t==="pendingShip"?y.fulfillment_status=2:t==="risk"&&(y.payment_slip_audit_status=2),K()}const{time_type:ze,dateRange:It,resolve:ha,handleTimeTypeChange:ll,handleCustomDateChange:nl,resetTimeFilter:rl,applyCustomRange:il}=Mr("all"),wa=()=>{Z.page=1,U()},ol=()=>ll(wa),ul=()=>nl(wa);function Va(t){const e={...t};if(e.prescription_id===""||e.prescription_id===void 0?delete e.prescription_id:e.prescription_id=Number(e.prescription_id),e.fulfillment_status===""||e.fulfillment_status===void 0||e.fulfillment_status===null?delete e.fulfillment_status:e.fulfillment_status=Number(e.fulfillment_status),e.prescription_audit_status===""||e.prescription_audit_status===void 0||e.prescription_audit_status===null?delete e.prescription_audit_status:e.prescription_audit_status=Number(e.prescription_audit_status),e.payment_slip_audit_status===""||e.payment_slip_audit_status===void 0||e.payment_slip_audit_status===null?delete e.payment_slip_audit_status:e.payment_slip_audit_status=Number(e.payment_slip_audit_status),(!e.supply_mode||e.supply_mode==="")&&delete e.supply_mode,e.doctor_id===""||e.doctor_id===void 0||e.doctor_id===null?delete e.doctor_id:e.doctor_id=Number(e.doctor_id),e.assistant_id===""||e.assistant_id===void 0||e.assistant_id===null?delete e.assistant_id:e.assistant_id=Number(e.assistant_id),e.assistant_dept_id===""||e.assistant_dept_id===void 0||e.assistant_dept_id===null?delete e.assistant_dept_id:e.assistant_dept_id=Number(e.assistant_dept_id),e.order_no||delete e.order_no,String(e.patient_keyword||"").trim()||delete e.patient_keyword,e.audit_admin_id===""||e.audit_admin_id===void 0||e.audit_admin_id===null?delete e.audit_admin_id:e.audit_admin_id=Number(e.audit_admin_id),String(e.express_keyword||"").trim()||delete e.express_keyword,(!e.express_company||e.express_company==="")&&delete e.express_company,e.service_channel===""||e.service_channel===void 0||e.service_channel===null?delete e.service_channel:(e.service_channel=String(e.service_channel).trim(),e.service_channel===""&&delete e.service_channel),e.has_aux_formula===""||e.has_aux_formula===void 0||e.has_aux_formula===null?delete e.has_aux_formula:e.has_aux_formula=Number(e.has_aux_formula),Number(e.exclude_fulfillment_cancelled)!==1&&delete e.exclude_fulfillment_cancelled,!String(e.start_time||"").trim()||!String(e.end_time||"").trim())delete e.start_time,delete e.end_time;else{const s=String(e.start_time||"").trim(),i=String(e.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(s)&&/^\d{4}-\d{2}-\d{2}$/.test(i)&&(e.start_time=`${s} 00:00:00`,e.end_time=`${i} 23:59:59`)}return e}async function dl(t){const[e,s]=ha(),i=Va({...t,start_time:e,end_time:s});return di(i)}const pl=V(()=>{const[t,e]=ha();return Va({...y,start_time:t,end_time:e})}),{pager:Z,getLists:U,resetPage:K,resetParams:cl}=$i({fetchFun:dl,params:y});da(()=>{var t;return(t=Z.extend)==null?void 0:t.audit_admin_options},t=>{Array.isArray(t)&&(ga.value=t.map(e=>{if(e==null||typeof e!="object")return null;const s=e,i=Number(s.id),u=String(s.name??"").trim();return!Number.isFinite(i)||i<=0||u===""?null:{id:i,name:u}}).filter(e=>e!=null))},{immediate:!0});function ml(){const t=Rs.query,e=c=>{const h=c!=null?String(c).trim():"";return h?h.length>=10?h.slice(0,10):h:""},s=e(t.start_time),i=e(t.end_time);s&&i&&il(s,i);const u=t.assistant_dept_id;if(u!=null&&String(u)!==""){const c=Number(u);Number.isFinite(c)&&c>0&&(y.assistant_dept_id=c)}const p=t.assistant_id;if(p!=null&&String(p)!==""){const c=Number(p);Number.isFinite(c)&&c>0&&(y.assistant_id=c)}}const Sa=V(()=>{const t=y.assistant_dept_id;if(t===""||t==null)return Ne.value;const e=Number(t);if(!Number.isFinite(e))return Ne.value;const s=new Set(qs(e,ot.value));return Ne.value.filter(i=>{const u=i.dept_ids;return!Array.isArray(u)||u.length===0?!1:u.map(Number).some(p=>s.has(p))})});function _l(){const t=y.assistant_id;if(t!==""&&t!=null){const e=Number(t);Sa.value.some(i=>Number(i.id)===e)||(y.assistant_id="")}K()}const ue=V(()=>{const t=Z.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),s=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),i=ae=>{const X=Number(ae);return Number.isFinite(X)?Math.round(X*100)/100:0},u=ae=>ae.toFixed(2),p=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,c=(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,h=i(p?t==null?void 0:t.stats_order_amount_not_cancelled:e),M=p?i(t==null?void 0:t.stats_order_amount_cancelled):0,b=i(c?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:s),te=c?i(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,J=(t==null?void 0:t.stats_order_amount_performance)!==void 0?i(t==null?void 0:t.stats_order_amount_performance):h,R=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?i(t==null?void 0:t.stats_linked_pay_amount_performance):b,T=String((t==null?void 0:t.stats_time_start)??"").trim(),Pt=String((t==null?void 0:t.stats_time_end)??"").trim(),tt=T&&Pt?`统计时间:${T} ~ ${Pt}`:"统计时间:—",at=String((t==null?void 0:t.stats_scope)??"restricted");let Se="统计口径:与当前列表数据可见范围一致";at==="all"?Se="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":at==="assistant"?Se="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":at==="own_rx"&&(Se="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const Fe=ze.value==="all"?"全部":ze.value==="today"?"今日":"区间";return{order:i(e),pay:i(s),orderStr:u(i(e)),payStr:u(i(s)),orderNotCancelledStr:u(h),orderCancelledStr:u(M),payNotCancelledStr:u(b),payCancelledStr:u(te),orderPerformanceStr:u(J),payPerformanceStr:u(R),orderHeading:`${Fe}业绩(业务订单额)`,payHeading:`${Fe}业绩(关联实付)`,periodLine:tt,scopeHint:Se,orderSplitHint:"业绩 = 排除履约已取消(4)、拒收(9)、退款(10)后的订单金额;下方为合计与排除项明细"}}),dt=V(()=>{const t=Z.extend,e=c=>{const h=Number(c);return!Number.isFinite(h)||h<0?0:Math.trunc(h)},s=e(t==null?void 0:t.focus_pending_rx_count),i=e(t==null?void 0:t.focus_pending_pay_count),u=e(t==null?void 0:t.focus_pending_ship_count),p=e(t==null?void 0:t.focus_risk_count);return{pendingRx:s,pendingPay:i,pendingShip:u,risk:p}});function zt(t,e){const s=Number(e==null?void 0:e.prescription_audit_status),i=Number(e==null?void 0:e.payment_slip_audit_status),u=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&s===0||t==="pay"&&s===1&&i===0||t==="fulfillment"&&u===2?"po-status-tag is-focus":t==="rx"&&s===2||t==="pay"&&i===2||t==="fulfillment"&&u===4?"po-status-tag is-risk":"po-status-tag"}function fl({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),s=Number(t==null?void 0:t.payment_slip_audit_status),i=Number(t==null?void 0:t.fulfillment_status),u=ma(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||s===2||u?"po-row-risk":e===0||e===1&&s===0||i===2?"po-row-focus":i===3||i===6?"po-row-done":""}da(nt,t=>{t||y.prescription_audit_status===""||y.prescription_audit_status===void 0||(y.prescription_audit_status="",y.exclude_fulfillment_cancelled=0,K())},{immediate:!0});function vl(){se.value="",rl(),y.order_no="",y.prescription_id="",y.patient_keyword="",y.express_keyword="",y.express_company="",y.doctor_id="",y.assistant_id="",y.assistant_dept_id="",y.fulfillment_status="",y.prescription_audit_status="",y.payment_slip_audit_status="",y.supply_mode="",y.service_channel="",y.has_aux_formula="",y.audit_admin_id="",y.exclude_fulfillment_cancelled=0,cl()}function Na(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function Ca(t){return t===1?"success":t===2?"danger":"info"}function Pa(){const t=ve.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(s=>Number(s)):[]).some(s=>ya.includes(s)):!1}function Oa(t){var s;const e=Number((s=ve.userInfo)==null?void 0:s.id);return e>0&&Number(t.creator_id)===e}function Aa(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function Ra(t){const e=Number(t.fulfillment_status);return e===3||e===4||Oa(t)&&Aa(t)&&!Pa()||$t(t)?!1:e===1||e===2}function gl(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function yl(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 bl(t){if($t(t))return!1;const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return(s===1||s===2)&&i===0}function xl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const s=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return s===1&&(i===1||i===2)}function kl(t){return $t(t)?!1:Number(t.fulfillment_status)===1}function Ta(t){return Number(t.fulfillment_status)===2}const hl=V(()=>{const t=ve.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/setShipMode")});function Y(t){return String(t||"").toLowerCase()==="direct"?"direct":"gancao"}function wl(t){return Y(t)==="direct"?"洛阳药房":"甘草药房"}function $a(t){return $t(t)}function Ea(t){const e=Number(t.fulfillment_status);return e!==3&&e!==4&&!$a(t)}const jt=g(!1);function Mt(t,e){const s=Number(t),i=Number(e);return s>0&&s===i}const Vl=V(()=>Y(W.ship_mode)==="direct"?"洛阳药房直发":"甘草药房直发");async function Sl(t){const e=$.value;if(!(e!=null&&e.id))return;const s=Y(t),i=Y(e.ship_mode);if(s!==i){if(!Ea(e)){N.msgWarning("当前订单状态不可修改发货类型");return}jt.value=!0;try{await pi({id:e.id,ship_mode:s}),$.value&&($.value.ship_mode=s),we.value&&Mt(Ae.value,e.id)&&(W.ship_mode=s),await mt(),N.msgSuccess("发货类型已保存"),U()}catch{}finally{jt.value=!1}}}async function Nl(){await mt(),U()}function qt(t){const e=Number(t.fulfillment_status);if(e!==5&&e!==6)return!1;const s=Math.round((Number(t.amount)||0)*100)/100;return Math.round((Number(t.linked_pay_paid_total)||0)*100)/100{var t;return((t=H.value)==null?void 0:t.detail)??null}),Pl=V(()=>{var e;const t=(e=$.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null}),La=V(()=>`${m.dose_unit||"剂"}数`),je=g(!1),Bt=g(!1),pt=g(),ce=fe({id:0,amount:void 0}),Ol={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,s)=>{const i=Number(e);if(!Number.isFinite(i)||i<0){s(new Error("订单金额不能为负数"));return}s()},trigger:"blur"}]},Ce=g(null),ct=g(!1),Me=V(()=>ei(Ce.value)),qe=g(!1),Ht=g(!1),Wt=g(),le=fe({patient_name:"",phone:""}),Al={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]};function Rl(){const t=Pl.value,e=$.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){N.msgWarning("无处方数据");return}le.patient_name=String(t.patient_name??"").trim(),le.phone=String(t.phone??"").trim(),qe.value=!0,lt(()=>{var s;return(s=Wt.value)==null?void 0:s.clearValidate()})}function Tl(){le.patient_name="",le.phone=""}function $l(){var t;ce.id=0,ce.amount=void 0,(t=pt.value)==null||t.clearValidate()}function El(){const t=$.value;if(!ws(t)){N.msgWarning("当前订单状态不允许修改金额");return}ce.id=Number(t==null?void 0:t.id)||0;const e=Number(t==null?void 0:t.amount);ce.amount=Number.isFinite(e)?e:void 0,je.value=!0,lt(()=>{var s;return(s=pt.value)==null?void 0:s.clearValidate()})}async function mt(){var t;await((t=H.value)==null?void 0:t.refresh())}async function Dl(){var s;const t=Wt.value;if(!t)return;try{await t.validate()}catch{return}const e=(s=$.value)==null?void 0:s.id;if(e){Ht.value=!0;try{await ci({id:e,patient_name:le.patient_name.trim(),phone:le.phone.trim()}),qe.value=!1,await mt()}catch(i){console.error(i)}finally{Ht.value=!1}}}async function Ia(){const t=pt.value;if(!t)return;try{await t.validate()}catch{return}if(!ws($.value)){N.msgWarning("当前订单状态不允许修改金额");return}const e=ce.id;Bt.value=!0;try{await mi({id:e,amount:Number(ce.amount)}),N.msgSuccess("修改成功"),je.value=!1,await mt(),U()}catch{}finally{Bt.value=!1}}async function Fl(t){var e;await((e=H.value)==null?void 0:e.open(t))}const ke=g(!1),Gt=g(!1),Kt=g(!1),I=g(0),ne=g(null),re=g(!1),_t=g(""),Ul=V(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][I.value]??""),za=V(()=>{const t=ne.value,e=ti(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const s=e.map(i=>`${i.name} ${i.dosage}g`).join("、");return s.length>120?`${s.slice(0,120)}…`:s}),Ll=["recipient_name","recipient_phone","region","shipping_address"],he=g(),m=fe({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:""}),Il=V(()=>ai(Ut.value,m.service_package)),ja=V(()=>{const t=String(m.diagnosis_creator_dept_path||"").trim();return t?t.split(";").map(e=>e.trim()).filter(Boolean).map(e=>e.includes(" / ")?e.split(" / ").map(s=>s.trim()).filter(Boolean):e.split("/").map(s=>s.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Be=g([]),Qt=g(!1),j=g(0);function ft(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}const Jt=V(()=>{const t=new Set(m.pay_order_ids.map(s=>Number(s)));let e=0;for(const s of Be.value)t.has(Number(s.id))&&(e+=Number(s.amount)||0);return Math.round(e*100)/100}),zl=V(()=>{const t=j.value;return t>0?Math.round(t*100)/100:0});async function jl(t,e){var s,i;if(!t){Be.value=[];return}try{Qt.value=!0;const u=await Ps({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),p=(u==null?void 0:u.lists)??((s=u==null?void 0:u.data)==null?void 0:s.lists)??[];Be.value=Array.isArray(p)?p:[];const c=Number((u==null?void 0:u.deposit_min_amount)??((i=u==null?void 0:u.data)==null?void 0:i.deposit_min_amount));!Number.isNaN(c)&&c>=0&&(j.value=c)}catch{Be.value=[]}finally{Qt.value=!1}}const Ml=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,s,i)=>{const u=j.value,p=Number(s);if(u>0&&(!Number.isFinite(p)||p0){const e=`已开启关联支付门槛(¥${B(j.value)}),请至少选择一笔支付单`;t.pay_order_ids=[{type:"array",required:!0,min:1,message:e,trigger:"change"}]}return t});function ql(){var t;I.value=0,ne.value=null,re.value=!1,_t.value="",(t=he.value)==null||t.clearValidate()}function Bl(){I.value>0&&(I.value-=1)}async function Hl(){const t=he.value;if(t)try{I.value===0?await t.validateField([...Ll]):I.value===1&&j.value>0&&await t.validateField(["pay_order_ids"]),I.value<2&&(I.value+=1)}catch{}}async function Wl(t){if(!Ra(t)){Oa(t)&&Aa(t)&&!Pa()&&N.msgWarning("处方与支付单均已审核通过,创建人不可再编辑");return}I.value=0,ne.value=null,ke.value=!0,Gt.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e;if(!s){N.msgError("加载数据结构异常"),ke.value=!1;return}const i=s.prescription;i&&typeof i=="object"?ne.value=i:Number(s.prescription_id)>0?ne.value={id:Number(s.prescription_id),sn:"",patient_name:String(s.recipient_name||""),herbs:[]}:ne.value=null,m.id=s.id,m.prescription_id=Number(s.prescription_id)||0,m.diagnosis_id=Number(s.diagnosis_id)||0,m.assistant_id=Number(s.assistant_id)||0,m.diagnosis_creator_id=Number(s.diagnosis_creator_id)||0,m.diagnosis_creator_name=s.diagnosis_creator_name!=null&&s.diagnosis_creator_name!==""?String(s.diagnosis_creator_name):"",m.diagnosis_creator_dept_path=s.diagnosis_creator_dept_path!=null&&s.diagnosis_creator_dept_path!==""?String(s.diagnosis_creator_dept_path):"",m.recipient_name=s.recipient_name||"",m.recipient_phone=s.recipient_phone||"";const u=s.shipping_province||"",p=s.shipping_city||"",c=s.shipping_district||"";u||p||c?m.region=[u,p,c].filter(T=>T!==""):m.region=[],m.shipping_address=s.shipping_address||"",m.is_follow_up=s.is_follow_up?1:0,m.medication_days=s.medication_days>0?s.medication_days:void 0,m.dose_count=s.dose_count>0?s.dose_count:1,m.dose_unit=s.dose_unit||"剂",m.prev_staff=s.prev_staff||"",m.service_channel=s.service_channel||"",m.service_package=si(s.service_package),m.express_company=String(s.express_company||"auto")||"auto",m.tracking_number=s.tracking_number||"",m.fee_type=Number(s.fee_type)||3,j.value=Number(s.deposit_min_amount)||0;let h=Number(s.amount)||0;const M=Math.round((Number(s.linked_pay_paid_total)||0)*100)/100,b=j.value;if(b>0){const T=Math.round(b*100)/100;hNumber(T)).filter(T=>!Number.isNaN(T)):[],m.internal_cost=s.internal_cost!=null&&s.internal_cost!==""?Number(s.internal_cost):void 0;const J=String(s.gancao_reciperl_order_no||"").trim(),R=Number(s.gancao_submit_time||0);re.value=J!==""||R>0,_t.value=J||"",await jl(m.diagnosis_id,m.id),lt(()=>{var T;(T=he.value)==null||T.clearValidate()})}catch(e){N.msgError((e==null?void 0:e.message)||"加载异常"),ke.value=!1}finally{Gt.value=!1}}async function Gl(){if(!he.value)return;const t=re.value;if(!(!t&&I.value!==2)){t?he.value.clearValidate():await he.value.validate(),Kt.value=!0;try{const e={id:m.id,recipient_name:m.recipient_name,recipient_phone:m.recipient_phone,shipping_address:m.shipping_address,is_follow_up:m.is_follow_up,prev_staff:m.prev_staff||"",service_channel:m.service_channel||"",service_package:Array.isArray(m.service_package)?m.service_package.join(","):"",express_company:m.express_company||"auto",tracking_number:m.tracking_number||"",fee_type:m.fee_type,amount:m.amount,remark_extra:m.remark_extra||"",remark_assistant:m.remark_assistant||"",medication_days:m.medication_days!=null&&String(m.medication_days).trim()!==""?m.medication_days:"",dose_unit:m.dose_unit||"剂",dose_count:m.dose_count||1,internal_cost:m.internal_cost!=null&&String(m.internal_cost).trim()!==""?m.internal_cost:""};m.region&&m.region.length>0?(e.shipping_province=m.region[0]||"",e.shipping_city=m.region[1]||"",e.shipping_district=m.region[2]||""):(e.shipping_province="",e.shipping_city="",e.shipping_district=""),e.pay_order_ids=[...m.pay_order_ids],await Ss(e),N.msgSuccess("保存成功"),ke.value=!1,U()}catch{}finally{Kt.value=!1}}}const He=g(!1),Yt=g("prescription"),Xt=g(0),We=g(null),Pe=g(""),vt=g(!1),Kl=V(()=>Yt.value==="prescription"?"处方业务审核":"关联支付单审核");function Ma(t,e){Yt.value=e,Xt.value=t.id,We.value=t,Pe.value="",He.value=!0}async function qa(t){var e;if(t==="reject"&&!Pe.value.trim()){N.msgError("驳回或阻止时必须填写明确的审核意见");return}vt.value=!0;try{const s={id:Xt.value,action:t,remark:Pe.value.trim()};Yt.value==="prescription"?await _i(s):await fi(s),N.msgSuccess(t==="approve"?"审核通过成功":"已成功驳回该单"),He.value=!1,U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(Xt.value))}catch{}finally{vt.value=!1}}async function Ql(t){try{await Rt.confirm("确认撤回该业务订单?撤回后状态为「已取消」,未双审通过或双审均驳回等场景下均可安全撤回。","撤回警告",{type:"warning",confirmButtonText:"确定撤回",cancelButtonText:"暂不处理"}),await vi({id:t.id}),N.msgSuccess("撤回成功"),U()}catch{}}const gt=g(0),yt=g(!1),Oe=g(!1),F=g(null);function Zt(t){if(!t)return"0.00";const e=Number(t.m_cost)||0,s=Number(t.proces_cost)||0,i=Number(t.lis_cost)||0;return(e+s+i).toFixed(2)}function Jl(t,e){const s=parseFloat(Zt(t))||0,i=Number(e)||0;return i<=0?"—":(s/i*100).toFixed(2)}function Yl(t){return!Array.isArray(t)||t.length===0?"0":t.reduce((s,i)=>s+(Number(i.quantity)||0),0).toFixed(0)}async function Xl(){if(!m.id){N.msgError("请先保存订单");return}Oe.value=!0;try{const t=await Ns({id:m.id,dose_count:m.dose_count||1,medication_days:m.medication_days||void 0}),e=(t==null?void 0:t.data)??t;e&&e.success&&(F.value=e,yt.value=!0,N.msgSuccess("预下单测试成功"))}catch{}finally{Oe.value=!1}}async function Zl(){var t,e;if(!((t=$.value)!=null&&t.id)){N.msgError("订单数据不存在");return}Oe.value=!0;try{const s=await Ns({id:$.value.id,dose_count:$.value.dose_count||1,medication_days:$.value.medication_days||void 0}),i=(s==null?void 0:s.data)??s;if(i&&i.success&&(F.value=i,yt.value=!0,Dt()&&i.fee)){const u=Zt(i.fee);try{const p=await Et({id:$.value.id}),c=(p==null?void 0:p.data)??p;if(c!=null&&c.id){const h=c.service_package,M=Array.isArray(h)?h.join(","):String(h||"");await Ss({id:c.id,recipient_name:c.recipient_name||"",recipient_phone:c.recipient_phone||"",shipping_province:c.shipping_province||"",shipping_city:c.shipping_city||"",shipping_district:c.shipping_district||"",shipping_address:c.shipping_address||"",is_follow_up:c.is_follow_up?1:0,medication_days:c.medication_days!=null&&String(c.medication_days).trim()!==""?c.medication_days:"",dose_unit:c.dose_unit||"剂",dose_count:c.dose_count>0?c.dose_count:1,prev_staff:c.prev_staff||"",service_channel:c.service_channel||"",service_package:M,express_company:c.express_company||"auto",tracking_number:c.tracking_number||"",fee_type:Number(c.fee_type)||3,amount:Number(c.amount)||0,remark_extra:c.remark_extra||"",remark_assistant:c.remark_assistant||"",internal_cost:u,pay_order_ids:Array.isArray(c.pay_order_ids)?c.pay_order_ids:[]}),N.msgSuccess("内部成本已按预报价总计更新"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(c.id))}}catch{}}}catch{}finally{Oe.value=!1}}async function Ba(t){var i;const s=Y(t.ship_mode)==="direct"?"洛阳药房":"甘草药房";try{await Rt.confirm(`将把本单关联处方提交至${s},提交成功后不可切换发货药房。确定继续?`,"上传药房",{type:"warning",confirmButtonText:"确定上传",cancelButtonText:"取消"}),gt.value=t.id;const u=await gi({id:t.id}),p=(u==null?void 0:u.data)??u,c=(p==null?void 0:p.pharmacy_order_no)!=null?String(p.pharmacy_order_no):(p==null?void 0:p.recipel_order_no)!=null?String(p.recipel_order_no):"";N.msgSuccess(c?`上传成功,${s}单号:${c}`:"上传成功"),U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t.id))}catch{}finally{gt.value=0}}Hn(async()=>{await Ws(),await Gs(),await Bs(),ml(),await lt(),U()});const Ge=g(!1),bt=g(!1),ea=g(0),me=fe({express_company:"auto",tracking_number:""});function en(t){ea.value=t.id,me.express_company=String(t.express_company||"auto")||"auto",me.tracking_number=String(t.tracking_number||""),Ge.value=!0}async function Ha(){var t;if(!me.tracking_number.trim()){N.msgError("请填写快递单号");return}bt.value=!0;try{await yi({id:ea.value,express_company:me.express_company||"auto",tracking_number:me.tracking_number.trim()}),N.msgSuccess("快递单号已保存"),Ge.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(ea.value))}catch{}finally{bt.value=!1}}const we=g(!1),xt=g(!1),Ae=g(0),W=fe({ship_mode:"gancao",express_company:"auto",tracking_number:""});function tn(t){var e;return Mt((e=$.value)==null?void 0:e.id,t.id)?Y($.value.ship_mode):Y(t.ship_mode)}function Wa(t){Ae.value=Number(t.id),W.ship_mode=tn(t),W.express_company=String(t.express_company||"auto")||"auto",W.tracking_number=String(t.tracking_number||""),we.value=!0}da(()=>{var t;return(t=$.value)==null?void 0:t.ship_mode},t=>{var e;!we.value||!Ae.value||!Mt((e=$.value)==null?void 0:e.id,Ae.value)||(W.ship_mode=Y(t))});async function Ga(){var t;if(!W.tracking_number.trim()){N.msgError("请先填写快递单号再确认发货");return}xt.value=!0;try{await bi({id:Ae.value,ship_mode:Y(W.ship_mode),express_company:W.express_company||"auto",tracking_number:W.tracking_number.trim()}),N.msgSuccess("确认发货成功,订单已进入「已发货」状态"),we.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ae.value))}catch{}finally{xt.value=!1}}const an=[{value:3,label:"已完成"},{value:7,label:"进行中"},{value:8,label:"暂不制药"},{value:9,label:"拒收"},{value:10,label:"退款"},{value:11,label:"保留药方"},{value:12,label:"制药缓发"}],Re=g(!1),Te=g(0),ye=g(3),Ke=g(!1),Qe=g(!1),de=g([]),ta=g(),ee=fe({reason:"",refund_amount:void 0}),be=g(0),sn=V(()=>aa(de.value)),ln=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=be.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));let Je=0;function nn(){var t;Te.value=0,de.value=[],Qe.value=!1,ee.reason="",ee.refund_amount=void 0,be.value=0,(t=ta.value)==null||t.clearValidate(),Je+=1,Ce.value=null,ct.value=!1}async function rn(t){if(!t){de.value=[];return}Qe.value=!0;try{const e=await Et({id:t}),s=(e==null?void 0:e.data)??e??null,i=s==null?void 0:s.linked_pay_orders;de.value=Array.isArray(i)?i:[];const u=aa(de.value),p=Number(s==null?void 0:s.paid)||0;be.value=u>0?u:p,ee.refund_amount=be.value}catch{de.value=[],be.value=0}finally{Qe.value=!1}}async function on(t){const e=Number(t.id),s=String(t.tracking_number||"").trim();if(!e||!s)return;const i=++Je;ct.value=!0,Ce.value=null;try{const u=String(t.recipient_phone||"").replace(/\D/g,""),p={id:e,express_company:String(t.express_company||"auto")||"auto"};u.length>=4&&(p.phone_tail=u);const c=await Ci(p);if(i!==Je||Te.value!==e)return;Ce.value=ni(c,s,e)}catch{if(i!==Je||Te.value!==e)return;Ce.value=null}finally{i===Je&&Te.value===e&&(ct.value=!1)}}async function un(){var e,s,i;const t=Te.value;if(t){if(ye.value===10){if(!await((e=ta.value)==null?void 0:e.validate().catch(()=>!1)))return;Ke.value=!0;try{await Cs({id:t,reason:ee.reason.trim(),refund_amount:Number(ee.refund_amount)}),N.msgSuccess("退款成功"),Re.value=!1,U(),await((s=H.value)==null?void 0:s.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}return}Ke.value=!0;try{await xi({id:t,fulfillment_status:ye.value}),N.msgSuccess("订单状态已更新"),Re.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{Ke.value=!1}}}function aa(t){let e=0;for(const s of t||[]){const i=Number(s==null?void 0:s.status);(i===2||i===5)&&(e+=Number(s==null?void 0:s.amount)||0)}return Math.round(e*100)/100}const Ye=g(!1),sa=g(0),la=g(!1),na=g(),ie=g(0),Q=fe({reason:"",refund_amount:void 0}),dn=V(()=>{const t=B(ie.value),e=B(Q.refund_amount);return Number(Q.refund_amount)>=ie.value-.009?`确认全额退款 ¥${t}:关联收款将标记已退款,本单已付清零,且不可撤销。`:`确认部分退款 ¥${e}(可退上限 ¥${t}):将扣减本单已付,并按金额依次标记关联收款已退款。`}),pn=V(()=>({refund_amount:[{required:!0,message:"请输入退款金额",trigger:"change"},{validator:(t,e,s)=>{const i=Number(e),u=ie.value;if(!Number.isFinite(i)||i<=0){s(new Error("退款金额须大于 0"));return}if(u>0&&i>u+.009){s(new Error(`不能超过可退上限 ¥${B(u)}`));return}s()},trigger:"change"}],reason:[{required:!0,message:"请填写退款原因",trigger:"blur"}]}));function cn(){var t;sa.value=0,Q.reason="",Q.refund_amount=void 0,ie.value=0,(t=na.value)==null||t.clearValidate()}async function Ka(t){sa.value=t.id,Q.reason="",Q.refund_amount=void 0,ie.value=0,Ye.value=!0;try{const e=await Et({id:t.id}),s=(e==null?void 0:e.data)??e??null,i=Array.isArray(s==null?void 0:s.linked_pay_orders)?s.linked_pay_orders:[],u=aa(i),p=Number(s==null?void 0:s.paid)||0;ie.value=u>0?u:p,Q.refund_amount=ie.value}catch{ie.value=0}}async function mn(){var s,i;const t=sa.value;if(!(!t||!await((s=na.value)==null?void 0:s.validate().catch(()=>!1)))){la.value=!0;try{await Cs({id:t,reason:Q.reason.trim(),refund_amount:Number(Q.refund_amount)}),N.msgSuccess("退款成功"),Ye.value=!1,U(),await((i=H.value)==null?void 0:i.refreshIfCurrent(t))}catch{}finally{la.value=!1}}}const Xe=g(!1),kt=g(!1),Ze=g(0),ht=g(),ra=g(!1),wt=g([]),_n=V(()=>C.add_mode==="completion_only"?"不创建或关联支付单,仅提交完单申请,由审核人员在支付审核时处理。":C.add_mode==="create_express"?"通过快递代收创建新支付单(流转同付呗),或关联已存在但未绑定的支付单。":"可以通过付呗创建新支付单,或关联已存在但未绑定的支付单。"),C=fe({add_mode:"create",order_type:3,pay_amount:void 0,pay_remark:"",link_pay_order_ids:[],completion_request:0}),fn=V(()=>{const t={add_mode:[{required:!0,message:"请选择添加方式",trigger:"change"}]};return C.add_mode==="create"||C.add_mode==="create_express"?(t.order_type=[{required:!0,message:"请选择费用类别",trigger:"change"}],t.pay_amount=[{validator:(e,s,i)=>{if(s==null||s===""){i(new Error("请输入支付金额"));return}const u=Number(s);!Number.isFinite(u)||u<0?i(new Error("金额不能小于 0")):i()},trigger:"blur"}]):C.add_mode==="link"&&(t.link_pay_order_ids=[{required:!0,message:"请至少选择一个支付单",trigger:"change",validator:(e,s,i)=>{!Array.isArray(s)||s.length===0?i(new Error("请至少选择一个支付单")):i()}}]),t});async function vn(t,e=[]){var s;if(!t){wt.value=[];return}try{ra.value=!0;const i=await Ps({diagnosis_id:t}),u=(i==null?void 0:i.lists)??((s=i==null?void 0:i.data)==null?void 0:s.lists)??[],p=Array.isArray(u)?u.filter(c=>!e.includes(c.id)):[];wt.value=p}catch{wt.value=[]}finally{ra.value=!1}}function Qa(t){var i,u;if(!qt(t)){N.msgWarning("订单总金额与已付金额一致,无需补齐支付单");return}Ze.value=t.id,C.add_mode="create",C.order_type=3,C.pay_amount=void 0,C.pay_remark="",C.link_pay_order_ids=[],C.completion_request=0,Xe.value=!0;const e=t.diagnosis_id||((i=$.value)==null?void 0:i.diagnosis_id),s=t.pay_order_ids||((u=$.value)==null?void 0:u.pay_order_ids)||[];e&&vn(e,s)}async function gn(){var t;if(ht.value){await ht.value.validate(),kt.value=!0;try{if(C.add_mode==="completion_only")await ki({id:Ze.value}),N.msgSuccess("完单申请已提交,请等待支付审核");else if(C.add_mode==="create"||C.add_mode==="create_express")await hi({id:Ze.value,order_type:C.order_type,pay_amount:C.pay_amount,pay_remark:C.pay_remark||"",completion_request:C.completion_request,pay_create_type:C.add_mode==="create_express"?"express_cod":"fubei"}),N.msgSuccess("支付单已新增,请等待审核");else{const e=C.link_pay_order_ids;if(e.length===0){N.msgError("请至少选择一个支付单");return}await wi({id:Ze.value,pay_order_ids:e,completion_request:C.completion_request}),N.msgSuccess(`已关联 ${e.length} 个支付单,请等待审核`)}Xe.value=!1,U(),await((t=H.value)==null?void 0:t.refreshIfCurrent(Ze.value))}catch{}finally{kt.value=!1}}}function Ja(t){Te.value=t.id,ye.value=3,ee.reason="",ee.refund_amount=void 0,de.value=[],Ce.value=null,Re.value=!0,rn(t.id),String(t.tracking_number||"").trim()&&on(t)}async function yn(t){var e;try{await Rt.confirm("确认撤回处方审核?撤回后将重置为「待审核」状态。","撤回处方审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Vi({id:t.id}),N.msgSuccess("处方审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}async function bn(t){var e;try{await Rt.confirm("确认撤回支付单审核?撤回后将重置为「待审核」状态。","撤回支付单审核",{type:"warning",confirmButtonText:"确认撤回",cancelButtonText:"取消"}),await Si({id:t.id}),N.msgSuccess("支付单审核已撤回"),U(),await((e=H.value)==null?void 0:e.refreshIfCurrent(t.id))}catch{}}const xn="成都双流甄养堂互联网医院 处方笺",Vt=g(!1),St=g(!1),x=g(null),$e=g(""),G=g("internal"),Ya=g(null),Ee=g(!1);function Xa(t,e,s){const i=t.prescription_type||"浓缩水丸",u=Number(t.times_per_day)>0?Number(t.times_per_day):3,p=t.dosage_amount!=null?Number(t.dosage_amount):10,c=t.dosage_unit||(i==="饮片"?"ml":"g"),h=t.usage_way||e||"温水送服",M=t.usage_time||s||"",b=[];if(b.push(`每天${u}次`),i==="浓缩水丸"){const te=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;b.push(`一次${te}袋`),b.push(`每袋${p}${c}`)}else b.push(`一次${p}${c}`);return b.push(h),M&&b.push(M),b.join(", ")}const et=V(()=>{var e;const t=(e=x.value)==null?void 0:e.herbs;return Array.isArray(t)?t:[]}),Nt=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="主方")),De=V(()=>et.value.filter(t=>_a(t==null?void 0:t.formula_type)==="辅方")),Za=V(()=>{var t;return li((t=x.value)==null?void 0:t.dietary_taboo)}),es=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸")return null;const e=Number(t.medication_days??t.usage_days??t.dose_count),s=Number(t.times_per_day),i=Number(t.dosage_amount),u=Number(t.dosage_bag_count)>0?Number(t.dosage_bag_count):1;return!Number.isFinite(e)||!Number.isFinite(s)||!Number.isFinite(i)||e<=0||s<=0||i<=0?null:e*s*i*u}),ts=V(()=>{const t=x.value;if(!t||(t.prescription_type||"浓缩水丸")!=="浓缩水丸"||!De.value.length)return null;const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸"),s=Number(t.medication_days??e.usage_days),i=Number(e.times_per_day),u=Number(e.dosage_amount),p=Number(e.dosage_bag_count)>0?Number(e.dosage_bag_count):1;return!Number.isFinite(s)||!Number.isFinite(i)||!Number.isFinite(u)||s<=0||i<=0||u<=0?null:s*i*u*p}),Ct=t=>String(t).padStart(2,"0"),kn=V(()=>{const t=x.value;if(!t)return"—";const e=t.create_time??t.update_time??null;if(e){const s=String(e).length===10?Number(e)*1e3:Number(e),i=new Date(s);if(!isNaN(i.getTime()))return`${i.getFullYear()}-${Ct(i.getMonth()+1)}-${Ct(i.getDate())} ${Ct(i.getHours())}:${Ct(i.getMinutes())}`}return t.prescription_date||"—"}),hn=V(()=>{const t=x.value;if(!t)return"—";const e=String(t.sn??"").trim();if(e)return e;const s=String(t.visit_no??"").trim();return s||"—"}),wn=V(()=>{const t=x.value;if(!t)return"—";const e=Number(t.appointment_id);return Number.isFinite(e)&&e>0?String(e):"—"}),as=V(()=>{const t=x.value;return t?String(t.order_no??"").trim():""}),Vn=V(()=>{const t=x.value;if(!t)return"—";if(t.recipient_text)return t.recipient_text;const e=[];(t.recipient_name||t.patient_name)&&e.push(t.recipient_name||t.patient_name),(t.recipient_phone||t.phone)&&e.push(t.recipient_phone||t.phone);let s=t.region;return Array.isArray(s)&&(s=s.filter(Boolean).join("")),s&&e.push(String(s)),t.shipping_address?e.push(String(t.shipping_address)):t.address&&e.push(String(t.address)),e.length?e.join(","):"—"}),ss=V(()=>{var e;const t=Number((e=x.value)==null?void 0:e.dose_count);return Number.isFinite(t)&&t>0?t:1}),Sn=V(()=>{const e=et.value.reduce((s,i)=>s+(Number(i==null?void 0:i.dosage)||0),0);return Ve(e)}),ls=t=>{const e=Number(t)||0;return Ve(e*ss.value)},Nn=V(()=>{const t=x.value;if(!t)return"—";const e=t.prescription_type||"浓缩水丸";return e==="饮片"?"饮片":/丸|散|膏|片/.test(e)?`浓缩丸-${e}`:e}),ns=V(()=>{const t=x.value;return t?t.usage_text?t.usage_text:Xa(t):"—"}),ia=V(()=>{const t=x.value;if(!t||!De.value.length)return"";const e=Vs(t.aux_usage,t.prescription_type||"浓缩水丸");return Xa({prescription_type:t.prescription_type,dosage_amount:e.dosage_amount,dosage_unit:t.dosage_unit,dosage_bag_count:e.dosage_bag_count,times_per_day:e.times_per_day,usage_way:t.usage_way,usage_time:t.usage_time},t.usage_way,t.usage_time)}),Cn=V(()=>{const t=es.value,e=ts.value,s=typeof t=="number"&&isFinite(t)&&t>0?t:0,i=typeof e=="number"&&isFinite(e)&&e>0?e:0,u=s+i;if(u>0)return Ve(u);const p=x.value;if(!p)return"";const c=p.out_pellet||p.total_weight;if(c&&Number(c)>0)return Ve(Number(c));const h=et.value;if(!h.length)return"";const M=h.reduce((b,te)=>b+(Number(te==null?void 0:te.dosage)||0),0);return Ve(M*ss.value)}),rs=V(()=>{const t=x.value;return t&&t.medical_advice||""}),is=V(()=>{const t=x.value;if(!t)return"";const e=[];return e.push(`共${et.value.length}味药`),t.usage_notes&&e.push(String(t.usage_notes)),t.remark&&e.push(String(t.remark)),e.join(" ")}),os=V(()=>{const t=x.value;return t&&(t.pharmacy_remark||t.pharmacy_note)||""}),us=V(()=>{const t=Cn.value;if(!t)return"";const e=es.value,s=ts.value;return typeof e=="number"&&isFinite(e)&&e>0&&typeof s=="number"&&isFinite(s)&&s>0?`${t}克(主方 ${Ve(e)}克 + 辅方 ${Ve(s)}克)`:`${t}克`});function Ve(t){return isFinite(t)?Number.isInteger(t)?String(t):t.toFixed(2).replace(/\.?0+$/,""):"0"}function ds(t){if(!t)return"";const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function Pn(t){return t?ds(t):"—"}function On(t){return t===1||t==="1"?"男":t===0||t==="0"?"女":"—"}function An(t){return t==null||t===""?"—":`${t}岁`}function Rn(){cs(m)}function ps(t){return t.map(e=>`${String(e.name??"").trim()}:${Number(e.dosage)||0}`).sort().join("|")}function Tn(t,e){return!t.length||!e.length||t.length!==e.length?!1:ps(t)===ps(e)}function $n(t){if(!t||typeof t!="object")return"";const e=t;return String(e.prescription_name??e.library_name??"").trim()}async function En(t){const e=$n(t.aux_usage);if(e)return e;const i=(Array.isArray(t.herbs)?t.herbs:[]).filter(p=>_a(p==null?void 0:p.formula_type)==="辅方");if(!i.length)return"";const u=Number(t.creator_id)>0?Number(t.creator_id):0;if(!u)return"";try{const p=await Pi({page_no:1,page_size:200,formula_type:"辅方",prescribing_creator_id:u}),c=Array.isArray(p==null?void 0:p.lists)?p.lists:[];for(const h of c){const M=Array.isArray(h==null?void 0:h.herbs)?h.herbs:[];if(Tn(i,M))return String((h==null?void 0:h.prescription_name)??"").trim()}}catch{}return""}async function cs(t){if(!t.prescription_id){N.msgWarning("该订单未关联处方");return}Vt.value=!0,St.value=!0,x.value=null,$e.value="",G.value="internal";try{const e=await Ni({id:t.prescription_id}),s=(e==null?void 0:e.data)??e??null;if(s){const i=t.medication_days,u={...s};i!=null&&String(i).trim()!==""&&(u.medication_days=i),t.order_no&&!u.order_no&&(u.order_no=t.order_no),t.recipient_name&&!u.recipient_name&&(u.recipient_name=t.recipient_name),t.recipient_phone&&!u.recipient_phone&&(u.recipient_phone=t.recipient_phone),t.shipping_address&&!u.shipping_address&&(u.shipping_address=t.shipping_address),t.amount!=null&&u.order_amount==null&&(u.order_amount=t.amount),t.dose_count!=null&&String(t.dose_count).trim()!==""&&Number(t.dose_count)>0&&(u.dose_count=Number(t.dose_count)),t.dose_unit!=null&&String(t.dose_unit).trim()!==""&&(u.dose_unit=String(t.dose_unit));const p=t.linked_appointment;(!u.appointment_id||Number(u.appointment_id)<=0)&&p&&typeof p=="object"&&Number(p.id)>0&&(u.appointment_id=Number(p.id)),x.value=u,$e.value=await En(u)}else x.value=null,$e.value=""}catch(e){N.msgError((e==null?void 0:e.message)||"加载处方详情失败"),Vt.value=!1,$e.value=""}finally{St.value=!1}}async function Dn(t){const e=t.querySelectorAll('img[src^="http"]'),s=Array.from(e).map(async i=>{try{const u=await fetch(i.src,{mode:"cors"});if(!u.ok)return;const p=await u.blob(),c=await new Promise((h,M)=>{const b=new FileReader;b.onload=()=>h(b.result),b.onerror=M,b.readAsDataURL(p)});i.src=c}catch{}});await Promise.allSettled(s)}async function ms(){await lt();const t=Ya.value;if(!t)throw new Error("未找到处方笺内容");return t.scrollIntoView({behavior:"instant",block:"nearest"}),await Dn(t),await new Promise(e=>requestAnimationFrame(()=>e(null))),await new Promise(e=>setTimeout(e,250)),Lr(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 _s(){var s;const t=(s=x.value)==null?void 0:s.patient_name;return`处方_${typeof t=="string"&&t.trim()?t.trim().replace(/[\\/:*?"<>|]/g,"_"):"未命名"}_${Date.now()}`}async function Fn(){if(x.value){Ee.value=!0;try{const t=await ms(),e=document.createElement("a");e.download=`${_s()}.png`,e.href=t.toDataURL("image/png"),e.click(),N.msgSuccess("图片已下载")}catch{N.msgError("下载图片失败")}finally{Ee.value=!1}}}async function Un(){if(x.value){Ee.value=!0;try{const t=await ms(),e=t.toDataURL("image/jpeg",.95),s=new Ur({orientation:"portrait",unit:"mm",format:"a4"}),i=210,u=297,p=i,c=t.height*p/t.width;if(c<=u)s.addImage(e,"JPEG",0,0,p,c);else{let h=c,M=0;for(;h>0;)s.addImage(e,"JPEG",0,M,p,c),h-=u,M-=u,h>0&&s.addPage()}s.save(`${_s()}.pdf`),N.msgSuccess("PDF已下载")}catch{N.msgError("下载PDF失败")}finally{Ee.value=!1}}}return(t,e)=>{const s=Gn,i=Kn,u=ar,p=tr,c=lr,h=sr,M=nr,b=rr,te=zr,J=er,R=or,T=ur,Pt=dr,Ot=cr,tt=ir,at=Ir,Se=fr,Fe=_r,ae=vr,X=gr,xe=yr,oa=kr,Ln=xr,z=wr,st=hr,In=Vr,zn=Cr,jn=Nr,Mn=Pr,Ue=Or,fs=Rr,qn=Ar,vs=Tr,pe=Er,ua=$r,_e=Zn,D=Wn("perms");return o(),f("div",Ei,[l(s,{class:"!border-none shadow-sm mb-4",shadow:"never"},{default:n(()=>[r("div",Di,[nt.value?(o(),f("div",Fi,[e[89]||(e[89]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"处方审核",-1)),(o(),f(O,null,L(el,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.prescription_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>al(a.value)},[r("span",Li,d(a.label),1)],10,Ui)),64))])):v("",!0),r("div",Ii,[e[90]||(e[90]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"支付单审核",-1)),(o(),f(O,null,L(tl,a=>r("div",{key:a.value,class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.payment_slip_audit_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>sl(a.value)},[r("span",ji,d(a.label),1)],10,zi)),64))]),r("div",Mi,[e[91]||(e[91]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"发货状态",-1)),(o(),f(O,null,L(Ks,a=>r("div",{key:"fs-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.fulfillment_status===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Qs(a.value)},[r("span",Bi,d(a.label),1)],10,qi)),64))]),r("div",Hi,[e[92]||(e[92]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"供货方式",-1)),(o(),f(O,null,L(Js,a=>r("div",{key:"sm-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.supply_mode===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Ys(a.value)},[r("span",Gi,d(a.label),1)],10,Wi)),64))]),r("div",Ki,[e[93]||(e[93]=r("span",{class:"text-gray-500 text-sm font-medium w-20 shrink-0"},"快递方式",-1)),(o(),f(O,null,L(Xs,a=>r("div",{key:"ec-"+String(a.value),class:q(["px-4 py-1.5 rounded-lg cursor-pointer transition-all duration-200 select-none text-sm",y.express_company===a.value?"bg-primary text-white shadow-md":"bg-gray-50 text-gray-600 hover:bg-gray-100"]),onClick:P=>Zs(a.value)},[r("span",Ji,d(a.label),1)],10,Qi)),64))])])]),_:1}),l(s,{class:"!border-none po-filter-card shadow-sm",shadow:"never"},{default:n(()=>[A((o(),f("div",Yi,[r("div",Xi,[e[94]||(e[94]=r("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)),r("div",Zi,[r("div",null,[r("div",eo,[l(i,{size:16,class:"text-sky-500"},{default:n(()=>[l(w(Qn))]),_:1}),_(" "+d(ue.value.orderHeading),1)]),r("div",to,[r("div",ao," ¥"+d(ue.value.orderPerformanceStr),1),r("div",so,[r("span",null,"合计 ¥"+d(ue.value.orderStr),1),r("span",lo,"已取消 ¥"+d(ue.value.orderCancelledStr),1)])])]),r("div",no,[l(i,{size:20},{default:n(()=>[l(w(Jn))]),_:1})])]),r("p",ro,d(ue.value.periodLine),1)]),r("div",io,[e[95]||(e[95]=r("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)),r("div",oo,[r("div",null,[r("div",uo,[l(i,{size:16,class:"text-emerald-500"},{default:n(()=>[l(w(Yn))]),_:1}),_(" "+d(ue.value.payHeading),1)]),r("div",po,[r("div",co," ¥"+d(ue.value.payPerformanceStr),1),r("div",mo,[r("span",null,"合计 ¥"+d(ue.value.payStr),1),r("span",_o,"已取消 ¥"+d(ue.value.payCancelledStr),1)])])]),r("div",fo,[l(i,{size:20},{default:n(()=>[l(w(Xn))]),_:1})])]),r("p",vo,d(ue.value.periodLine),1)])])),[[_e,w(Z).loading]]),l(J,{class:"ls-form",model:y,inline:""},{default:n(()=>[l(jr,{"time-type":w(ze),"onUpdate:timeType":e[0]||(e[0]=a=>pa(ze)?ze.value=a:null),"date-range":w(It),"onUpdate:dateRange":e[1]||(e[1]=a=>pa(It)?It.value=a:null),label:"创建时间",variant:"inline","show-all":"","picker-width":"230px",onTimeTypeChange:ol,onCustomChange:ul},null,8,["time-type","date-range"]),l(p,{class:"w-[260px]",label:"订单号"},{default:n(()=>[l(u,{modelValue:y.order_no,"onUpdate:modelValue":e[2]||(e[2]=a=>y.order_no=a),placeholder:"业务订单号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[140px]",label:"处方ID"},{default:n(()=>[l(u,{modelValue:y.prescription_id,"onUpdate:modelValue":e[3]||(e[3]=a=>y.prescription_id=a),placeholder:"处方ID",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"患者"},{default:n(()=>[l(u,{modelValue:y.patient_keyword,"onUpdate:modelValue":e[4]||(e[4]=a=>y.patient_keyword=a),placeholder:"姓名 / 手机号",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),l(p,{class:"w-[220px]",label:"快递"},{default:n(()=>[l(u,{modelValue:y.express_keyword,"onUpdate:modelValue":e[5]||(e[5]=a=>y.express_keyword=a),placeholder:"快递单号 / 公司",clearable:"",onKeyup:At(w(K),["enter"])},null,8,["modelValue","onKeyup"])]),_:1}),Fs.value?(o(),k(p,{key:0,class:"w-[200px]",label:"下单人"},{default:n(()=>[l(h,{modelValue:y.audit_admin_id,"onUpdate:modelValue":e[6]||(e[6]=a=>y.audit_admin_id=a),clearable:"",filterable:"",placeholder:"全部下单人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(ga.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})):v("",!0),l(p,{class:"w-[200px]",label:"医生"},{default:n(()=>[l(h,{modelValue:y.doctor_id,"onUpdate:modelValue":e[7]||(e[7]=a=>y.doctor_id=a),clearable:"",filterable:"",placeholder:"开方医生",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Lt.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[220px] min-w-[200px]",label:"医助部门"},{default:n(()=>[l(M,{modelValue:y.assistant_dept_id,"onUpdate:modelValue":e[8]||(e[8]=a=>y.assistant_dept_id=a),data:ot.value,class:"!w-full",clearable:"",filterable:"","check-strictly":"","default-expand-all":!0,"node-key":"id",props:Ms,placeholder:"医助部门(选父级含子级)",onChange:_l},null,8,["modelValue","data"])]),_:1}),l(p,{class:"w-[200px]",label:"医助"},{default:n(()=>[l(h,{modelValue:y.assistant_id,"onUpdate:modelValue":e[9]||(e[9]=a=>y.assistant_id=a),clearable:"",filterable:"",placeholder:"订单创建人",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Sa.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[160px]",label:"服务渠道"},{default:n(()=>[l(h,{modelValue:y.service_channel,"onUpdate:modelValue":e[10]||(e[10]=a=>y.service_channel=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,{class:"w-[140px]",label:"辅方"},{default:n(()=>[l(h,{modelValue:y.has_aux_formula,"onUpdate:modelValue":e[11]||(e[11]=a=>y.has_aux_formula=a),clearable:"",placeholder:"全部",class:"!w-full"},{default:n(()=>[l(c,{label:"含辅方",value:"1"}),l(c,{label:"不含辅方",value:"0"})]),_:1},8,["modelValue"])]),_:1}),l(p,null,{default:n(()=>[l(b,{type:"primary",onClick:w(K)},{default:n(()=>[...e[96]||(e[96]=[_("查询",-1)])]),_:1},8,["onClick"]),l(b,{onClick:vl},{default:n(()=>[...e[97]||(e[97]=[_("重置",-1)])]),_:1}),A(l(te,{class:"ml-2.5","fetch-fun":w(ri),params:pl.value,"page-size":w(Z).size,"export-hint":"导出范围与上方筛选一致(履约状态、创建时间及其他条件均会生效)。含「自媒体渠道(挂号渠道来源)」:优先取该单关联处方登记的挂号;无则诊单下同患者挂号取 id 最大的一条(与前台挂号选择的记录一致);业绩侧栏带渠道筛选导出时与同页列表高亮挂号同源。「服务套餐」按字典 server_order 解析展示。「处方」导出主方/辅方药材明细;「主方/辅方服用方式、天数」与详情侧栏同口径(主方/辅方天数分别取处方 usage_days、辅方 aux_usage.usage_days;「天数」列为订单 medication_days)。「关联收款记录」与详情侧栏同源(已支付/已退款/待审核),每笔两行展示(摘要行+明细行),多笔空行分隔,单元格自动换行。「签收日期」与详情/业绩看板同源,仅读物流库(轨迹/签收时间):导出不再实时查快递100,速度只取决于数据库;签收时间由 `tcm:backfill-sign-time` 命令与物流自动更新定时任务落库,刚发货尚未同步的单子会暂时为空,待下次回填/定时任务刷新后显示。"},null,8,["fetch-fun","params","page-size"]),[[D,["tcm.prescriptionOrder/export"]]])]),_:1})]),_:1},8,["model"])]),_:1}),A((o(),k(s,{class:"!border-none mt-4 po-table-card shadow-sm",shadow:"never"},{default:n(()=>[r("div",go,[r("div",yo,[e[98]||(e[98]=r("span",{class:"po-table-title text-gray-800"},"订单列表",-1)),r("span",bo,"共 "+d(w(Z).count)+" 条",1),ba.value?(o(),k(b,{key:0,type:"primary",plain:"",size:"small",class:"ml-3",disabled:ge.value.length===0,onClick:zs},{default:n(()=>[_(" 批量改派医助"+d(ge.value.length?`(${ge.value.length})`:""),1)]),_:1},8,["disabled"])):v("",!0)]),r("div",xo,[r("div",{class:q(["po-focus-board__item is-pending-rx",{"is-active":se.value==="pendingRx"}]),onClick:e[12]||(e[12]=a=>ut("pendingRx"))},[e[99]||(e[99]=r("span",{class:"po-focus-board__label"},"待处方审核",-1)),r("strong",ko,d(dt.value.pendingRx),1)],2),r("div",{class:q(["po-focus-board__item is-pending-pay",{"is-active":se.value==="pendingPay"}]),onClick:e[13]||(e[13]=a=>ut("pendingPay"))},[e[100]||(e[100]=r("span",{class:"po-focus-board__label"},"待支付审核",-1)),r("strong",ho,d(dt.value.pendingPay),1)],2),r("div",{class:q(["po-focus-board__item is-pending-ship",{"is-active":se.value==="pendingShip"}]),onClick:e[14]||(e[14]=a=>ut("pendingShip"))},[e[101]||(e[101]=r("span",{class:"po-focus-board__label"},"待发货",-1)),r("strong",wo,d(dt.value.pendingShip),1)],2),r("div",{class:q(["po-focus-board__item is-risk",{"is-active":se.value==="risk"}]),onClick:e[15]||(e[15]=a=>ut("risk"))},[e[102]||(e[102]=r("span",{class:"po-focus-board__label"},"重点异常",-1)),r("strong",Vo,d(dt.value.risk),1)],2)])]),l(tt,{data:w(Z).lists,size:"default",stripe:"",class:"po-data-table","row-class-name":fl,onSelectionChange:Is},{default:n(()=>[ba.value?(o(),k(R,{key:0,type:"selection",width:"44",selectable:()=>!0})):v("",!0),l(R,{label:"订单号","min-width":"178","show-overflow-tooltip":""},{default:n(({row:a})=>[r("div",So,[r("div",No,d(a.order_no||"—"),1),r("div",Co,[l(T,{size:"small",effect:"plain",type:w(Hr)(a)},{default:n(()=>[_(d(w(Wr)(a)),1)]),_:2},1032,["type"]),r("span",Po,"#"+d(a.id),1)])])]),_:1}),l(R,{label:"处方ID",prop:"prescription_id",width:"86"}),l(R,{label:"诊单ID",prop:"diagnosis_id",width:"86"}),l(R,{label:"收货人","min-width":"100"},{default:n(({row:a})=>[r("div",null,d(a.recipient_name||"—"),1),r("div",{class:q(["text-xs",w(ma)(a.recipient_phone,a.prescription_phone)?"text-red-600 font-semibold":"text-gray-400"])},[_(d(a.recipient_phone||"—")+" ",1),w(ma)(a.recipient_phone,a.prescription_phone)?(o(),f("span",Oo,"(与处方手机不一致)")):v("",!0)],2)]),_:1}),l(R,{label:"费用类别",width:"96"},{default:n(({row:a})=>[_(d(w(ks)(a.fee_type)),1)]),_:1}),l(R,{label:"金额","min-width":"100"},{default:n(({row:a})=>[r("div",Ao,[r("span",Ro,"¥"+d(a.amount),1),l(Pt,{placement:"top",width:200,trigger:"hover"},{reference:n(()=>[l(i,{class:"text-gray-400 cursor-pointer hover:text-primary"},{default:n(()=>[l(w(pr))]),_:1})]),default:n(()=>[r("div",To,[r("div",$o,[e[103]||(e[103]=r("span",{class:"text-gray-500"},"业务订单单据:",-1)),r("span",Eo,"¥"+d(a.amount),1)]),r("div",Do,[e[104]||(e[104]=r("span",{class:"text-gray-500"},"定金下限:",-1)),r("span",null,"¥"+d(w(B)(a.deposit_min_amount)),1)]),r("div",Fo,[e[105]||(e[105]=r("span",{class:"text-gray-500"},"实付(关联):",-1)),r("span",Uo,"¥"+d(w(B)(a.linked_pay_paid_total)),1)]),Dt()&&a.internal_cost!=null&&a.internal_cost!==""?(o(),f("div",Lo,[e[106]||(e[106]=r("span",{class:"text-gray-500"},"内部成本:",-1)),r("span",{class:q(["font-medium cursor-pointer select-none",oe.value?"text-orange-600":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[16]||(e[16]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${w(B)(a.internal_cost)}`:"****"),3)])):v("",!0)])]),_:2},1024)])]),_:1}),Dt()?(o(),k(R,{key:1,width:"100"},{header:n(()=>[r("span",{class:"cursor-pointer select-none hover:text-primary",title:"点击显示/隐藏内部成本",onClick:e[17]||(e[17]=Le(a=>oe.value=!oe.value,["stop"]))}," 内部成本 ")]),default:n(({row:a})=>[a.internal_cost!=null&&a.internal_cost!==""?(o(),f("span",{key:0,class:q(["cursor-pointer select-none",oe.value?"text-orange-600 font-medium":"text-gray-400"]),title:"点击显示/隐藏",onClick:e[18]||(e[18]=Le(P=>oe.value=!oe.value,["stop"]))},d(oe.value?`¥${a.internal_cost}`:"****"),3)):(o(),f("span",Io,"—"))]),_:1})):v("",!0),l(R,{label:"处方审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.prescription_audit_status),size:"small",class:q(zt("rx",a))},{default:n(()=>[_(d(Na(a.prescription_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"支付单审核",width:"110"},{default:n(({row:a})=>[l(T,{type:Ca(a.payment_slip_audit_status),size:"small",class:q(zt("pay",a))},{default:n(()=>[_(d(Na(a.payment_slip_audit_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"履约",width:"108"},{default:n(({row:a})=>[l(T,{type:w(Gr)(a.fulfillment_status),size:"small",class:q(zt("fulfillment",a))},{default:n(()=>[_(d(w(Kr)(a.fulfillment_status)),1)]),_:2},1032,["type","class"])]),_:1}),l(R,{label:"关联支付单",width:"100"},{default:n(({row:a})=>[Number(a.linked_pay_order_count)>0?(o(),f("span",{key:0,class:"text-primary cursor-default",title:a.linked_pay_order_id?`#${a.linked_pay_order_id}…`:""},d(a.linked_pay_order_count)+" 笔 ",9,zo)):(o(),f("span",jo,"—"))]),_:1}),l(R,{label:"创建时间","min-width":"144"},{default:n(({row:a})=>[_(d(w(hs)(a.create_time)),1)]),_:1}),l(R,{label:"开方人",prop:"doctor_name",width:"90","show-overflow-tooltip":""}),l(R,{label:"创建人",prop:"creator_name",width:"90","show-overflow-tooltip":""}),l(R,{"min-width":"128","show-overflow-tooltip":""},{header:n(()=>[e[107]||(e[107]=r("span",null,"二中心·指派",-1)),l(Ot,{placement:"top","max-width":"320",content:"与诊单「指派记录」快照一致:仅当本条业务单在操作瞬间为快照中的「关联业务单」(创建人+创建时间命中)时显示。绿色=新医助在名称含「二中心」的部门及其下级;灰色=系统自动释放诊单医助。"},{default:n(()=>[l(i,{class:"ml-0.5 align-middle text-gray-400 cursor-help"},{default:n(()=>[l(w(mr))]),_:1})]),_:1})]),default:n(({row:a})=>[Number(a.po_assign_snapshot_hit)?Number(a.po_assign_is_release)?(o(),k(T,{key:1,type:"info",size:"small"},{default:n(()=>[...e[108]||(e[108]=[_("已释放",-1)])]),_:1})):Number(a.po_assign_to_er_center)?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[_(d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),k(T,{key:3,type:"warning",size:"small",effect:"plain"},{default:n(()=>[_(" 非二中心 "+d(a.po_assign_to_assistant_name||"医助#"+a.po_assign_to_assistant_id),1)]),_:2},1024)):(o(),f("span",Mo,"—"))]),_:1}),l(R,{label:"操作",width:"310",fixed:"right"},{default:n(({row:a})=>[r("div",qo,[A((o(),k(b,{type:"primary",link:"",onClick:P=>Fl(a.id)},{default:n(()=>[_(d(Us.value),1)]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/detail"]]]),Ra(a)?A((o(),k(b,{key:0,type:"primary",link:"",onClick:P=>Wl(a)},{default:n(()=>[...e[109]||(e[109]=[_("编辑",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/edit"]]]):v("",!0),Cl(a)?A((o(),k(b,{key:1,type:"success",link:"",onClick:P=>en(a)},{default:n(()=>[...e[110]||(e[110]=[_("修改单号",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ddcode"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:2,type:"primary",link:"",onClick:P=>Wa(a)},{default:n(()=>[...e[111]||(e[111]=[_("确认发货",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:3,type:"success",link:"",onClick:P=>Qa(a)},{default:n(()=>[...e[112]||(e[112]=[_("补齐支付单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:4,type:"primary",link:"",onClick:P=>Ja(a)},{default:n(()=>[...e[113]||(e[113]=[_("完成订单",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:5,type:"danger",link:"",onClick:P=>Ka(a)},{default:n(()=>[...e[114]||(e[114]=[_("退款",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0),kl(a)?A((o(),k(b,{key:6,type:"danger",link:"",onClick:P=>Ql(a)},{default:n(()=>[...e[115]||(e[115]=[_("撤回",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/withdraw"]]]):v("",!0),Ua(a)?A((o(),k(b,{key:7,type:"warning",link:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[116]||(e[116]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0)])]),_:1})]),_:1},8,["data"]),r("div",Bo,[l(at,{modelValue:w(Z),"onUpdate:modelValue":e[19]||(e[19]=a=>pa(Z)?Z.value=a:null),"page-sizes":[15,20,30,40,100,150,200],onChange:w(U)},null,8,["modelValue","onChange"])])]),_:1})),[[_e,w(Z).loading]]),l(qr,{ref_key:"detailDrawerRef",ref:H,"gancao-preview-loading":Oe.value,onUpdateAmount:El,onPatchRxPatient:Rl,onViewPrescription:e[20]||(e[20]=a=>$.value&&cs($.value)),onTestGancaoPreview:Zl,onViewPatient:Ts,onDetailChanged:w(U)},{"header-extra":n(({detail:a})=>[r("div",Ho,[e[119]||(e[119]=r("span",{class:"text-sm text-gray-500"},"发货类型",-1)),A((o(),k(Fe,{"model-value":Y(a.ship_mode),size:"small",disabled:jt.value||!Ea(a),onChange:Sl},{default:n(()=>[l(Se,{label:"gancao"},{default:n(()=>[...e[117]||(e[117]=[_("甘草药房",-1)])]),_:1}),l(Se,{label:"direct",disabled:$a(a)},{default:n(()=>[...e[118]||(e[118]=[_("洛阳药房",-1)])]),_:1},8,["disabled"])]),_:2},1032,["model-value","disabled"])),[[D,["tcm.prescriptionOrder/setShipMode"]]]),hl.value?v("",!0):(o(),k(T,{key:0,type:Y(a.ship_mode)==="direct"?"warning":"success",effect:"plain",round:""},{default:n(()=>[_(d(wl(a.ship_mode)),1)]),_:2},1032,["type"]))])]),"header-actions":n(({detail:a})=>[l(Br,{order:a,onResolved:Nl},null,8,["order"]),Ua(a)?A((o(),k(b,{key:0,type:"warning",size:"small",plain:"",loading:gt.value===a.id,onClick:P=>Ba(a)},{default:n(()=>[...e[120]||(e[120]=[_("上传药房",-1)])]),_:1},8,["loading","onClick"])),[[D,["tcm.prescriptionOrder/uploadToPharmacy"]]]):v("",!0),gl(a)?A((o(),k(b,{key:1,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"prescription")},{default:n(()=>[...e[121]||(e[121]=[_(" 处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),bl(a)?A((o(),k(b,{key:2,type:"info",size:"small",plain:"",onClick:P=>yn(a)},{default:n(()=>[...e[122]||(e[122]=[_(" 撤回处方审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPrescription"]]]):v("",!0),yl(a)?A((o(),k(b,{key:3,type:"warning",size:"small",plain:"",onClick:P=>Ma(a,"payment")},{default:n(()=>[...e[123]||(e[123]=[_(" 支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),xl(a)?A((o(),k(b,{key:4,type:"info",size:"small",plain:"",onClick:P=>bn(a)},{default:n(()=>[...e[124]||(e[124]=[_(" 撤回支付审核 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/auditPayment"]]]):v("",!0),Ta(a)?A((o(),k(b,{key:5,type:"primary",size:"small",plain:"",onClick:P=>Wa(a)},{default:n(()=>[...e[125]||(e[125]=[_(" 确认发货 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/ship"]]]):v("",!0),qt(a)?A((o(),k(b,{key:6,type:"success",size:"small",plain:"",onClick:P=>Qa(a)},{default:n(()=>[...e[126]||(e[126]=[_(" 关联支付单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/addPayOrder"]]]):v("",!0),Da(a)?A((o(),k(b,{key:7,type:"primary",size:"small",plain:"",onClick:P=>Ja(a)},{default:n(()=>[...e[127]||(e[127]=[_(" 完成订单 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/complete"]]]):v("",!0),Fa(a)?A((o(),k(b,{key:8,type:"danger",size:"small",plain:"",onClick:P=>Ka(a)},{default:n(()=>[...e[128]||(e[128]=[_(" 退款 ",-1)])]),_:1},8,["onClick"])),[[D,["tcm.prescriptionOrder/refund"]]]):v("",!0)]),_:1},8,["gancao-preview-loading","onDetailChanged"]),l(X,{modelValue:je.value,"onUpdate:modelValue":e[23]||(e[23]=a=>je.value=a),title:"修改订单金额",width:"420px","destroy-on-close":"","close-on-click-modal":!1,onClosed:$l},{footer:n(()=>[l(b,{onClick:e[22]||(e[22]=a=>je.value=!1)},{default:n(()=>[...e[130]||(e[130]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Bt.value,onClick:Ia},{default:n(()=>[...e[131]||(e[131]=[_(" 确认修改 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"updateAmountFormRef",ref:pt,model:ce,rules:Ol,"label-width":"96px",class:"pr-2",onSubmit:Le(Ia,["prevent"])},{default:n(()=>[l(p,{label:"当前金额"},{default:n(()=>{var a;return[r("div",Wo,"¥"+d(w(B)((a=$.value)==null?void 0:a.amount)),1)]}),_:1}),l(p,{label:"新金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:ce.amount,"onUpdate:modelValue":e[21]||(e[21]=a=>ce.amount=a),min:0,step:.01,precision:2,"controls-position":"right",class:"w-full",placeholder:"请输入新金额"},null,8,["modelValue"])]),_:1}),e[129]||(e[129]=r("div",{class:"text-xs text-gray-400 pl-[96px] -mt-1 leading-relaxed"}," 已完成或已取消订单不可修改。提交成功后会刷新详情与操作日志。 ",-1))]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(X,{modelValue:ke.value,"onUpdate:modelValue":e[46]||(e[46]=a=>ke.value=a),title:re.value?"修改物流信息(甘草订单)":"编辑业务订单",width:"940px",top:"4vh","close-on-click-modal":!1,"destroy-on-close":"",class:"create-order-dialog",onClosed:ql},{footer:n(()=>[r("div",Pu,[re.value?v("",!0):(o(),f("div",Ou,[r("span",Au,"第 "+d(I.value+1)+" / 3 步",1),I.value===2&&j.value>0?(o(),f("span",Ru," 订单金额与关联支付单合计须 ≥ ¥"+d(w(B)(j.value)),1)):v("",!0)])),r("div",Tu,[l(b,{size:"large",onClick:e[45]||(e[45]=a=>ke.value=!1)},{default:n(()=>[...e[144]||(e[144]=[_("取消",-1)])]),_:1}),re.value?v("",!0):(o(),f(O,{key:0},[I.value>0?(o(),k(b,{key:0,size:"large",onClick:Bl},{default:n(()=>[...e[145]||(e[145]=[_("上一步",-1)])]),_:1})):v("",!0),I.value<2?(o(),k(b,{key:1,type:"primary",size:"large",onClick:Hl},{default:n(()=>[...e[146]||(e[146]=[_(" 下一步 ",-1)])]),_:1})):v("",!0)],64)),re.value||I.value===2?(o(),k(b,{key:1,type:"primary",size:"large",loading:Kt.value,onClick:Gl},{default:n(()=>[...e[147]||(e[147]=[_(" 确认保存 ",-1)])]),_:1},8,["loading"])):v("",!0)])])]),default:n(()=>[A((o(),f("div",Go,[ne.value?(o(),f("div",Ko,[r("div",Qo,[e[132]||(e[132]=r("span",{class:"create-order-rx-card__badge"},"关联处方",-1)),r("div",Jo,[r("span",Yo,"#"+d(ne.value.id),1),ne.value.sn?(o(),f("span",Xo,d(ne.value.sn),1)):v("",!0),r("span",Zo,d(ne.value.patient_name||"—"),1)])]),l(Ot,{content:za.value,placement:"bottom","show-after":300},{default:n(()=>[r("div",eu,d(za.value),1)]),_:1},8,["content"])])):v("",!0),re.value?(o(),k(xe,{key:1,type:"info",closable:!1,"show-icon":"",class:"mb-4",title:"订单已提交甘草,仅可修改快递单号与承运商;地址、金额等变更请先走取消流程。"},br({_:2},[_t.value?{name:"default",fn:n(()=>[r("div",tu,"甘草处方单号:"+d(_t.value),1)]),key:"0"}:void 0]),1024)):v("",!0),re.value?v("",!0):(o(),f(O,{key:2},[l(Ln,{active:I.value,"finish-status":"success","align-center":"",class:"create-order-steps"},{default:n(()=>[l(oa,{title:"患者与收货",description:"诊单与物流地址"}),l(oa,{title:"服务与支付单",description:"套餐与关联收款"}),l(oa,{title:"金额与确认",description:"费用与备注"})]),_:1},8,["active"]),r("p",au,d(Ul.value),1)],64)),l(J,{ref_key:"editFormRef",ref:he,model:m,rules:Ml.value,"label-width":"108px",class:"create-order-form"},{default:n(()=>[re.value?(o(),k(st,{key:0,gutter:20},{default:n(()=>[l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",su,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[24]||(e[24]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[25]||(e[25]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1})]),_:1})):v("",!0),re.value?v("",!0):(o(),f(O,{key:1},[A(r("div",lu,[l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"收货人",prop:"recipient_name"},{default:n(()=>[l(u,{modelValue:m.recipient_name,"onUpdate:modelValue":e[26]||(e[26]=a=>m.recipient_name=a),maxlength:"50",placeholder:"姓名"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"收货手机",prop:"recipient_phone"},{default:n(()=>[l(u,{modelValue:m.recipient_phone,"onUpdate:modelValue":e[27]||(e[27]=a=>m.recipient_phone=a),maxlength:"20",placeholder:"物流联系"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"省市区",prop:"region"},{default:n(()=>[l(In,{modelValue:m.region,"onUpdate:modelValue":e[28]||(e[28]=a=>m.region=a),options:it.value,props:{emitPath:!0},placeholder:"省 / 市 / 区",clearable:"",filterable:"",class:"w-full"},null,8,["modelValue","options"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"详细地址",prop:"shipping_address"},{default:n(()=>[l(u,{modelValue:m.shipping_address,"onUpdate:modelValue":e[29]||(e[29]=a=>m.shipping_address=a),type:"textarea",rows:3,placeholder:"街道、小区、门牌号等详细地址",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===0]]),A(r("div",nu,[nt.value?(o(),k(st,{key:0,gutter:20,class:"mb-1"},{default:n(()=>[l(z,{span:24},{default:n(()=>[r("div",ru,[e[135]||(e[135]=r("span",{class:"text-sm font-medium text-gray-700 mr-1"},"处方",-1)),m.prescription_id?(o(),k(b,{key:0,type:"primary",size:"small",link:"",onClick:Rn},{default:n(()=>[...e[133]||(e[133]=[_(" 详细 ",-1)])]),_:1})):v("",!0),m.id?(o(),k(b,{key:1,type:"warning",size:"small",link:"",loading:Oe.value,icon:w(Sr),onClick:Xl},{default:n(()=>[...e[134]||(e[134]=[_(" 测试价格 ",-1)])]),_:1},8,["loading","icon"])):v("",!0),r("span",iu,"ID: "+d(m.prescription_id||"—"),1)]),r("div",ou,[ja.value.length?(o(),f("div",uu,[e[136]||(e[136]=r("div",{class:"text-gray-500"},"创建人所属部门",-1)),(o(!0),f(O,null,L(ja.value,(a,P)=>(o(),f("div",{key:P,class:"pl-0 min-w-0"},[a.length?(o(),k(jn,{key:0,class:"po-diagnosis-creator-dept-breadcrumb text-[13px] leading-relaxed",separator:"/"},{default:n(()=>[(o(!0),f(O,null,L(a,(S,E)=>(o(),k(zn,{key:E},{default:n(()=>[r("span",du,d(S),1)]),_:2},1024))),128))]),_:2},1024)):v("",!0)]))),128))])):(o(),f("div",pu,"创建人所属部门:—"))])]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"复诊"},{default:n(()=>[l(Mn,{modelValue:m.is_follow_up,"onUpdate:modelValue":e[30]||(e[30]=a=>m.is_follow_up=a),"active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"服用天数",class:"create-order-form-item--inline-num"},{default:n(()=>[r("div",cu,[l(ae,{modelValue:m.medication_days,"onUpdate:modelValue":e[31]||(e[31]=a=>m.medication_days=a),min:1,max:999,step:1,"controls-position":"right",class:"flex-1 min-w-0"},null,8,["modelValue"]),e[137]||(e[137]=r("span",{class:"create-order-unit-suffix"},"天",-1))])]),_:1})]),_:1}),l(z,{xs:24,sm:8},{default:n(()=>[l(p,{label:"上次医生"},{default:n(()=>[l(u,{modelValue:m.prev_staff,"onUpdate:modelValue":e[32]||(e[32]=a=>m.prev_staff=a),placeholder:"可选",maxlength:"100"},null,8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:La.value,prop:"dose_count"},{default:n(()=>[l(ae,{modelValue:m.dose_count,"onUpdate:modelValue":e[33]||(e[33]=a=>m.dose_count=a),min:1,placeholder:La.value,class:"w-full"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"剂量单位",prop:"dose_unit"},{default:n(()=>[l(h,{modelValue:m.dose_unit,"onUpdate:modelValue":e[34]||(e[34]=a=>m.dose_unit=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"剂",value:"剂"}),l(c,{label:"丸",value:"丸"}),l(c,{label:"袋",value:"袋"}),l(c,{label:"盒",value:"盒"}),l(c,{label:"瓶",value:"瓶"}),l(c,{label:"膏",value:"膏"}),l(c,{label:"贴",value:"贴"})]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1})):v("",!0),l(st,{gutter:20},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"服务渠道"},{default:n(()=>[l(h,{modelValue:m.service_channel,"onUpdate:modelValue":e[35]||(e[35]=a=>m.service_channel=a),class:"w-full",filterable:"","allow-create":"","default-first-option":"",clearable:"",placeholder:"可选或自定义输入"},{default:n(()=>[l(c,{label:"未指派",value:"0"})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"服务套餐"},{default:n(()=>[l(h,{modelValue:m.service_package,"onUpdate:modelValue":e[36]||(e[36]=a=>m.service_package=a),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:"请选择服务套餐",clearable:"",class:"w-full"},{default:n(()=>[(o(!0),f(O,null,L(Il.value,a=>(o(),k(c,{key:a.value,label:a.name,value:a.value,disabled:a.status===0},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"物流设置"},{default:n(()=>[r("div",mu,[l(h,{modelValue:m.express_company,"onUpdate:modelValue":e[37]||(e[37]=a=>m.express_company=a),placeholder:"承运商",class:"w-[140px] shrink-0"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"]),l(u,{modelValue:m.tracking_number,"onUpdate:modelValue":e[38]||(e[38]=a=>m.tracking_number=a),maxlength:"80",placeholder:"快递单号",class:"flex-1 min-w-0"},null,8,["modelValue"])])]),_:1})]),_:1}),l(z,{span:24},{default:n(()=>[l(p,{label:"关联支付单",prop:"pay_order_ids",required:j.value>0},{default:n(()=>[l(h,{modelValue:m.pay_order_ids,"onUpdate:modelValue":e[39]||(e[39]=a=>m.pay_order_ids=a),class:"w-full",multiple:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:j.value>0?"请至少选择一笔本诊单支付单(已开启门槛)":"多选本诊单支付单(可选)",loading:Qt.value},{default:n(()=>[(o(!0),f(O,null,L(Be.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id,class:"!h-auto py-1.5"},{default:n(()=>[r("div",_u,[r("div",fu,[r("span",vu,d(a.order_no),1),r("span",gu,"¥"+d(a.amount),1)]),r("div",yu,[r("span",bu,[_(d(ft(a.order_type))+" · "+d(w(Tt)(a)),1),a.remark?(o(),f(O,{key:0},[_(" · "+d(a.remark),1)],64)):v("",!0)]),r("span",xu,d(String(a.create_time||"").substring(0,16)),1)])])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","loading"]),r("div",ku,[j.value>0?(o(),f(O,{key:0},[r("span",hu,"当前已开启关联支付门槛(¥"+d(w(B)(j.value))+"),须至少选择一笔支付单。",1),e[138]||(e[138]=r("span",{class:"mx-1"},null,-1))],64)):v("",!0),e[140]||(e[140]=_(" 主管/本诊单医助可见全部支付单;否则仅本人收款单。已被占用的支付单不列出。 ",-1)),l(Ot,{content:"主管或本诊单医助可见该诊单全部支付单(待支付/已支付),否则仅本人创建的收款单。已被其他有效业务订单占用的支付单不会出现在此列表。",placement:"top"},{default:n(()=>[...e[139]||(e[139]=[r("span",{class:"text-primary cursor-help ml-0.5"},"详情",-1)])]),_:1})])]),_:1},8,["required"])]),_:1})]),_:1})],512),[[ca,I.value===1]]),A(r("div",wu,[r("div",{class:q(["create-order-deposit-bar",Jt.value>=j.value?"is-ok":"is-warn"])},[r("div",Vu,[e[141]||(e[141]=r("span",{class:"create-order-deposit-bar__label"},"定金门槛",-1)),r("strong",null,"¥"+d(w(B)(j.value)),1),r("span",Su,d(j.value>0?"须 ≥ 此值":"未设置"),1)]),e[143]||(e[143]=r("div",{class:"create-order-deposit-bar__sep"},null,-1)),r("div",Nu,[e[142]||(e[142]=r("span",{class:"create-order-deposit-bar__label"},"已选收款",-1)),r("strong",null,"¥"+d(w(B)(Jt.value)),1),r("span",Cu,d(Jt.value>=j.value?"已达标":"未达标"),1)])],2),l(st,{gutter:20,class:"create-order-step-panel__row-after-bar"},{default:n(()=>[l(z,{span:12},{default:n(()=>[l(p,{label:"费用类别",prop:"fee_type"},{default:n(()=>[l(h,{modelValue:m.fee_type,"onUpdate:modelValue":e[40]||(e[40]=a=>m.fee_type=a),placeholder:"请选择",class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1})]),_:1}),l(z,{span:12},{default:n(()=>[l(p,{label:"总金额",prop:"amount"},{default:n(()=>[l(ae,{modelValue:m.amount,"onUpdate:modelValue":e[41]||(e[41]=a=>m.amount=a),min:zl.value,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"元"},null,8,["modelValue","min"])]),_:1})]),_:1}),A((o(),k(z,{span:12},{default:n(()=>[l(p,{label:"内部成本"},{default:n(()=>[l(ae,{modelValue:m.internal_cost,"onUpdate:modelValue":e[42]||(e[42]=a=>m.internal_cost=a),min:0,step:.01,precision:2,class:"w-full","controls-position":"right",placeholder:"财务可见"},null,8,["modelValue"])]),_:1})]),_:1})),[[D,["finance.account_log/lists"]]]),l(z,{span:24},{default:n(()=>[A((o(),k(p,{label:"药房备注"},{default:n(()=>[l(u,{modelValue:m.remark_extra,"onUpdate:modelValue":e[43]||(e[43]=a=>m.remark_extra=a),type:"textarea",rows:3,placeholder:"选填,对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})),[[D,["tcm.prescriptionOrder/editRemarkExtra"]]]),l(p,{label:"医助备注"},{default:n(()=>[l(u,{modelValue:m.remark_assistant,"onUpdate:modelValue":e[44]||(e[44]=a=>m.remark_assistant=a),type:"textarea",rows:3,placeholder:"选填,医助对内说明",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})],512),[[ca,I.value===2]])],64))]),_:1},8,["model","rules"])])),[[_e,Gt.value]])]),_:1},8,["modelValue","title"]),l(X,{modelValue:He.value,"onUpdate:modelValue":e[51]||(e[51]=a=>He.value=a),title:Kl.value,width:"480px","destroy-on-close":"",onClosed:e[52]||(e[52]=a=>Pe.value="")},{footer:n(()=>[l(b,{onClick:e[48]||(e[48]=a=>He.value=!1)},{default:n(()=>[...e[149]||(e[149]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:vt.value,onClick:e[49]||(e[49]=a=>qa("approve"))},{default:n(()=>[...e[150]||(e[150]=[_("同意通过",-1)])]),_:1},8,["loading"]),l(b,{type:"danger",loading:vt.value,onClick:e[50]||(e[50]=a=>qa("reject"))},{default:n(()=>[...e[151]||(e[151]=[_("驳回阻止",-1)])]),_:1},8,["loading"])]),default:n(()=>[We.value&&We.value.completion_request===1?(o(),k(xe,{key:0,title:"完单申请",type:"warning",closable:!1,"show-icon":"",class:"mb-3"},{default:n(()=>[r("div",$u,[e[148]||(e[148]=r("div",{class:"font-medium mb-1"},"该订单已申请完成",-1)),r("div",Eu," 申请人:"+d(We.value.completion_request_by_name||"—"),1),r("div",Du," 申请时间:"+d(w(hs)(We.value.completion_request_time)),1)])]),_:1})):v("",!0),e[152]||(e[152]=r("p",{class:"text-[13px] text-gray-500 mb-3 bg-gray-50/80 border border-gray-100 p-2 rounded"},"驳回时必须填写意见;通过时意见选填。",-1)),l(u,{modelValue:Pe.value,"onUpdate:modelValue":e[47]||(e[47]=a=>Pe.value=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"在此输入审核意见..."},null,8,["modelValue"])]),_:1},8,["modelValue","title"]),l(X,{modelValue:Ge.value,"onUpdate:modelValue":e[56]||(e[56]=a=>Ge.value=a),title:"修改快递单号",width:"420px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[55]||(e[55]=a=>Ge.value=!1)},{default:n(()=>[...e[154]||(e[154]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:bt.value,onClick:Ha},{default:n(()=>[...e[155]||(e[155]=[_("保存单号",-1)])]),_:1},8,["loading"])]),default:n(()=>[A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ha,["prevent"])},{default:n(()=>[l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:me.express_company,"onUpdate:modelValue":e[53]||(e[53]=a=>me.express_company=a),class:"w-full",placeholder:"选择承运商"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:me.tracking_number,"onUpdate:modelValue":e[54]||(e[54]=a=>me.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:"",autofocus:""},null,8,["modelValue"])]),_:1}),e[153]||(e[153]=r("div",{class:"text-xs text-gray-400 pl-[90px] -mt-1 leading-relaxed"}," 仅更新快递信息,其他字段不受影响。 ",-1))]),_:1})),[[_e,bt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:we.value,"onUpdate:modelValue":e[60]||(e[60]=a=>we.value=a),title:"确认发货",width:"440px","destroy-on-close":"","close-on-click-modal":!1},{footer:n(()=>[l(b,{onClick:e[59]||(e[59]=a=>we.value=!1)},{default:n(()=>[...e[157]||(e[157]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:xt.value,onClick:Ga},{default:n(()=>[...e[158]||(e[158]=[_(" 确认发货 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:"确认后订单状态将变更为「已发货」,请核对快递信息无误。",type:"warning",closable:!1,"show-icon":"",class:"mb-4"}),A((o(),k(J,{"label-width":"90px",class:"pr-2",onSubmit:Le(Ga,["prevent"])},{default:n(()=>[l(p,{label:"发货方式"},{default:n(()=>[l(T,{type:Y(W.ship_mode)==="direct"?"warning":"success",effect:"plain",size:"default"},{default:n(()=>[_(d(Vl.value),1)]),_:1},8,["type"]),e[156]||(e[156]=r("span",{class:"text-xs text-gray-400 ml-2"},"请在订单详情顶部「发货类型」中设置,此处不可修改",-1))]),_:1}),l(p,{label:"承运商"},{default:n(()=>[l(h,{modelValue:W.express_company,"onUpdate:modelValue":e[57]||(e[57]=a=>W.express_company=a),class:"w-full"},{default:n(()=>[l(c,{label:"自动识别",value:"auto"}),l(c,{label:"顺丰速运",value:"sf"}),l(c,{label:"京东快递",value:"jd"}),l(c,{label:"极兔速递",value:"jt"})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"快递单号"},{default:n(()=>[l(u,{modelValue:W.tracking_number,"onUpdate:modelValue":e[58]||(e[58]=a=>W.tracking_number=a),maxlength:"80",placeholder:"请输入快递单号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1})),[[_e,xt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Re.value,"onUpdate:modelValue":e[65]||(e[65]=a=>Re.value=a),title:"完成订单",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:nn},{footer:n(()=>[l(b,{onClick:e[64]||(e[64]=a=>Re.value=!1)},{default:n(()=>[...e[162]||(e[162]=[_("取消",-1)])]),_:1}),l(b,{type:ye.value===10?"danger":"primary",loading:Ke.value,onClick:un},{default:n(()=>[_(d(ye.value===10?"确认退款":"确定"),1)]),_:1},8,["type","loading"])]),default:n(()=>[A((o(),f("div",Fu,[Me.value.show?(o(),k(xe,{key:0,type:"error",effect:"dark",closable:!1,"show-icon":"",class:"mb-3 !items-start ring-2 ring-red-600/70",title:"物流异常:轨迹含拒收/退回等,请先核实处理再结案"},{default:n(()=>[r("div",Uu,[Me.value.keywords.length?(o(),f("div",Lu,[e[159]||(e[159]=r("span",{class:"text-red-100/90"},"命中:",-1)),(o(!0),f(O,null,L(Me.value.keywords,a=>(o(),k(T,{key:a,type:"danger",effect:"plain",size:"small",class:"!border-white/35 !text-white"},{default:n(()=>[_(d(a),1)]),_:2},1024))),128))])):v("",!0),Me.value.lines.length?(o(),f("ul",Iu,[(o(!0),f(O,null,L(Me.value.lines,(a,P)=>(o(),f("li",{key:P},d(a),1))),128))])):v("",!0),e[160]||(e[160]=r("div",{class:"text-red-100/85 border-t border-white/15 pt-1.5"}," 确认已协调拒收/退回后续(重发、退款、改址等)后再完成订单。 ",-1))])]),_:1})):v("",!0),e[161]||(e[161]=r("p",{class:"text-sm text-gray-600 mb-3"}," 请选择本单结案状态。选择「已完成」时,实付将按已关联的支付单金额汇总;选择「退款」时将关联收款单标记为已退款并清零本单已付。 ",-1)),l(h,{modelValue:ye.value,"onUpdate:modelValue":e[61]||(e[61]=a=>ye.value=a),class:"w-full",placeholder:"请选择"},{default:n(()=>[(o(),f(O,null,L(an,a=>l(c,{key:a.value,label:a.label,value:a.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"]),ye.value===10?(o(),f(O,{key:1},[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mt-3 !items-start",title:"退款将处理本单全部关联收款单,已付总额清零,且不可撤销。"}),A((o(),f("div",zu,[de.value.length?(o(),f("div",ju,[r("div",Mu," 将退款的关联收款("+d(de.value.length)+" 笔 · 合计 ¥"+d(w(B)(sn.value))+") ",1),l(tt,{data:de.value,size:"small",border:"",stripe:"","max-height":"200"},{default:n(()=>[l(R,{prop:"order_no",label:"单号","min-width":"120","show-overflow-tooltip":""}),l(R,{label:"类型",width:"88"},{default:n(({row:a})=>[_(d(a.order_type_desc||w(ks)(a.order_type)),1)]),_:1}),l(R,{label:"金额",width:"88",align:"right"},{default:n(({row:a})=>[r("span",qu,"¥"+d(a.amount),1)]),_:1}),l(R,{label:"状态",width:"92",align:"center"},{default:n(({row:a})=>[l(T,{type:w(Qr)(a.status),size:"small"},{default:n(()=>[_(d(a.status_desc||w(Jr)(a.status)),1)]),_:2},1032,["type"])]),_:1})]),_:1},8,["data"])])):Qe.value?v("",!0):(o(),f("p",Bu," 当前无已关联的收款单;提交后仍将本单标记为「退款」并清零已付。 "))])),[[_e,Qe.value]]),l(J,{ref_key:"completeRefundFormRef",ref:ta,model:ee,rules:ln.value,"label-width":"88px",class:"mt-3"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:ee.refund_amount,"onUpdate:modelValue":e[62]||(e[62]=a=>ee.refund_amount=a),min:.01,max:be.value>0?be.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Hu," 可退上限 ¥"+d(w(B)(be.value)),1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:ee.reason,"onUpdate:modelValue":e[63]||(e[63]=a=>ee.reason=a),type:"textarea",rows:3,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])],64)):v("",!0)])),[[_e,ct.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:Ye.value,"onUpdate:modelValue":e[69]||(e[69]=a=>Ye.value=a),title:"订单退款",width:"480px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:cn},{footer:n(()=>[l(b,{onClick:e[68]||(e[68]=a=>Ye.value=!1)},{default:n(()=>[...e[163]||(e[163]=[_("取消",-1)])]),_:1}),l(b,{type:"danger",loading:la.value,onClick:mn},{default:n(()=>[...e[164]||(e[164]=[_(" 确认退款 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(xe,{type:"warning",closable:!1,"show-icon":"",class:"mb-4 !items-start",title:dn.value},null,8,["title"]),l(J,{ref_key:"refundOrderFormRef",ref:na,model:Q,rules:pn.value,"label-width":"88px"},{default:n(()=>[l(p,{label:"退款金额",prop:"refund_amount"},{default:n(()=>[l(ae,{modelValue:Q.refund_amount,"onUpdate:modelValue":e[66]||(e[66]=a=>Q.refund_amount=a),min:.01,max:ie.value>0?ie.value:void 0,step:.01,precision:2,class:"w-full","controls-position":"right"},null,8,["modelValue","max"]),r("div",Wu," 可退上限 ¥"+d(w(B)(ie.value))+"(默认全额);部分退款时按金额从关联收款单依次标记已退款,并扣减本单已付。 ",1)]),_:1}),l(p,{label:"退款原因",prop:"reason"},{default:n(()=>[l(u,{modelValue:Q.reason,"onUpdate:modelValue":e[67]||(e[67]=a=>Q.reason=a),type:"textarea",rows:4,maxlength:"500","show-word-limit":"",placeholder:"请填写退款原因(必填)"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue"]),l(X,{modelValue:Xe.value,"onUpdate:modelValue":e[77]||(e[77]=a=>Xe.value=a),title:"补齐支付单",width:"600px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:e[78]||(e[78]=a=>{var P;return(P=ht.value)==null?void 0:P.clearValidate()})},{footer:n(()=>[l(b,{onClick:e[76]||(e[76]=a=>Xe.value=!1)},{default:n(()=>[...e[174]||(e[174]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:kt.value,onClick:gn},{default:n(()=>[_(d(C.add_mode==="completion_only"?"提交申请":"确认新增"),1)]),_:1},8,["loading"])]),default:n(()=>[l(xe,{title:_n.value,type:"info",closable:!1,"show-icon":"",class:"mb-4"},null,8,["title"]),A((o(),k(J,{ref_key:"addPayOrderFormRef",ref:ht,model:C,rules:fn.value,"label-width":"90px",class:"pr-2"},{default:n(()=>[l(p,{label:"添加方式",prop:"add_mode"},{default:n(()=>[l(Fe,{modelValue:C.add_mode,"onUpdate:modelValue":e[70]||(e[70]=a=>C.add_mode=a)},{default:n(()=>[l(Ue,{value:"create"},{default:n(()=>[...e[165]||(e[165]=[_("付呗",-1)])]),_:1}),l(Ue,{value:"create_express"},{default:n(()=>[...e[166]||(e[166]=[_("快递代收",-1)])]),_:1}),l(Ue,{value:"link"},{default:n(()=>[...e[167]||(e[167]=[_("关联已有",-1)])]),_:1}),l(Ue,{value:"completion_only"},{default:n(()=>[...e[168]||(e[168]=[_("直接完单申请",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),C.add_mode==="create"||C.add_mode==="create_express"?(o(),f(O,{key:0},[l(p,{label:"费用类别",prop:"order_type"},{default:n(()=>[l(h,{modelValue:C.order_type,"onUpdate:modelValue":e[71]||(e[71]=a=>C.order_type=a),class:"w-full"},{default:n(()=>[l(c,{label:"挂号费",value:1}),l(c,{label:"问诊费",value:2}),l(c,{label:"药品费用",value:3}),l(c,{label:"首付费用",value:4}),l(c,{label:"尾款费用",value:5}),l(c,{label:"其他费用",value:6}),l(c,{label:"全部费用",value:7}),l(c,{label:"驼奶费用",value:8})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"支付金额",prop:"pay_amount"},{default:n(()=>[l(ae,{modelValue:C.pay_amount,"onUpdate:modelValue":e[72]||(e[72]=a=>C.pay_amount=a),min:0,step:.01,precision:2,class:"w-full",placeholder:"请输入支付金额(元,可为 0)"},null,8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"pay_remark"},{default:n(()=>[l(u,{modelValue:C.pay_remark,"onUpdate:modelValue":e[73]||(e[73]=a=>C.pay_remark=a),type:"textarea",rows:3,maxlength:"200","show-word-limit":"",placeholder:"支付说明(选填)"},null,8,["modelValue"])]),_:1})],64)):C.add_mode==="completion_only"?(o(),k(xe,{key:1,type:"warning",closable:!1,"show-icon":"",class:"!mb-0"},{title:n(()=>[...e[169]||(e[169]=[_(" 不新增或关联支付单,仅向审核人员提交「完成订单」申请;提交后支付审核将变为待审核,审核通过后将自动结案。 ",-1)])]),_:1})):(o(),k(p,{key:2,label:"选择支付单",prop:"link_pay_order_id"},{default:n(()=>[l(h,{modelValue:C.link_pay_order_ids,"onUpdate:modelValue":e[74]||(e[74]=a=>C.link_pay_order_ids=a),class:"w-full",placeholder:"选择未绑定的支付单(可多选)",loading:ra.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":""},{default:n(()=>[(o(!0),f(O,null,L(wt.value,a=>(o(),k(c,{key:a.id,label:`${a.order_no} · ¥${a.amount} · ${ft(a.order_type)} · ${w(Tt)(a)}`,value:a.id},{default:n(()=>[r("div",Gu,[r("div",Ku,[r("span",Qu,d(a.order_no),1),r("span",Ju,"¥"+d(a.amount),1)]),r("div",Yu,d(ft(a.order_type))+" · "+d(w(Tt)(a)),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"]),e[170]||(e[170]=r("div",{class:"text-xs text-gray-500 mt-1.5"}," 仅显示本诊单下未被其他业务订单占用的支付单,可同时选择多个 ",-1))]),_:1})),C.add_mode!=="completion_only"?(o(),k(p,{key:3,label:"完单申请"},{default:n(()=>[l(Fe,{modelValue:C.completion_request,"onUpdate:modelValue":e[75]||(e[75]=a=>C.completion_request=a)},{default:n(()=>[l(Ue,{value:0},{default:n(()=>[...e[171]||(e[171]=[_("不申请",-1)])]),_:1}),l(Ue,{value:1},{default:n(()=>[...e[172]||(e[172]=[_("申请完成订单",-1)])]),_:1})]),_:1},8,["modelValue"]),e[173]||(e[173]=r("div",{class:"text-xs text-gray-400 mt-1"},' 选择"申请完成订单"后,审核人员可在支付审核时看到此申请 ',-1))]),_:1})):v("",!0)]),_:1},8,["model","rules"])),[[_e,kt.value]])]),_:1},8,["modelValue"]),l(X,{modelValue:qe.value,"onUpdate:modelValue":e[82]||(e[82]=a=>qe.value=a),title:"修改处方患者信息",width:"440px","close-on-click-modal":!1,"destroy-on-close":"",onClosed:Tl},{footer:n(()=>[l(b,{onClick:e[81]||(e[81]=a=>qe.value=!1)},{default:n(()=>[...e[175]||(e[175]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ht.value,onClick:Dl},{default:n(()=>[...e[176]||(e[176]=[_(" 保存 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(J,{ref_key:"patchRxPatientFormRef",ref:Wt,model:le,rules:Al,"label-width":"96px"},{default:n(()=>[l(p,{label:"患者姓名",prop:"patient_name"},{default:n(()=>[l(u,{modelValue:le.patient_name,"onUpdate:modelValue":e[79]||(e[79]=a=>le.patient_name=a),maxlength:"50","show-word-limit":"",placeholder:"与处方笺一致",clearable:""},null,8,["modelValue"])]),_:1}),l(p,{label:"手机",prop:"phone"},{default:n(()=>[l(u,{modelValue:le.phone,"onUpdate:modelValue":e[80]||(e[80]=a=>le.phone=a),maxlength:"20",placeholder:"处方登记手机号",clearable:""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(vs,{modelValue:Vt.value,"onUpdate:modelValue":e[84]||(e[84]=a=>Vt.value=a),size:"920px","close-on-click-modal":!1},{header:n(()=>[r("div",Xu,[e[179]||(e[179]=r("span",{class:"text-base font-medium text-gray-800"},"查看处方",-1)),x.value&&!St.value?(o(),f("div",Zu,[l(b,{size:"small",loading:Ee.value,onClick:Fn},{default:n(()=>[...e[177]||(e[177]=[_(" 下载图片 ",-1)])]),_:1},8,["loading"]),l(b,{size:"small",loading:Ee.value,onClick:Un},{default:n(()=>[...e[178]||(e[178]=[_(" 下载PDF ",-1)])]),_:1},8,["loading"])])):v("",!0)])]),default:n(()=>{var a,P;return[A((o(),f("div",ed,[x.value?(o(),k(qn,{key:0,modelValue:G.value,"onUpdate:modelValue":e[83]||(e[83]=S=>G.value=S),class:"mx-4 mt-2",style:{"margin-bottom":"0px","z-index":"1",position:"relative"}},{default:n(()=>[l(fs,{label:"药房联",name:"internal"}),l(fs,{label:"处方联",name:"user"})]),_:1},8,["modelValue"])):v("",!0),x.value?(o(),f("div",td,[Number(x.value.void_status)===1?(o(),k(T,{key:0,type:"danger",size:"small"},{default:n(()=>[...e[180]||(e[180]=[_("已作废",-1)])]),_:1})):Number(x.value.business_prescription_audit_rejected)===1?(o(),k(T,{key:1,type:"danger",size:"small"},{default:n(()=>[...e[181]||(e[181]=[_("业务订单已驳回",-1)])]),_:1})):Number(x.value.audit_status)===1?(o(),k(T,{key:2,type:"success",size:"small"},{default:n(()=>[...e[182]||(e[182]=[_("已通过",-1)])]),_:1})):Number(x.value.audit_status)===0?(o(),k(T,{key:3,type:"warning",size:"small"},{default:n(()=>[...e[183]||(e[183]=[_("待审核",-1)])]),_:1})):(o(),k(T,{key:4,type:"danger",size:"small"},{default:n(()=>[...e[184]||(e[184]=[_("已驳回",-1)])]),_:1}))])):v("",!0),x.value&&Number(x.value.void_status)===1?(o(),f("div",ad," 作废人:"+d(x.value.void_by_name||"—")+",作废时间:"+d(Pn(x.value.void_time)),1)):x.value&&Number(x.value.business_prescription_audit_rejected)===1?(o(),f("div",sd,[e[185]||(e[185]=r("div",{class:"font-medium"},"审核状态:已驳回(业务订单·处方审核)",-1)),x.value.business_prescription_audit_remark?(o(),f("div",ld," 驳回意见:"+d(x.value.business_prescription_audit_remark),1)):v("",!0)])):x.value&&Number(x.value.audit_status)===2?(o(),f("div",nd,[e[186]||(e[186]=r("div",{class:"font-medium"},"消费者处方审核:已驳回",-1)),x.value.audit_remark?(o(),f("div",rd,"驳回意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0),x.value?(o(),f("div",{key:5,ref_key:"prescriptionSlipPrintRef",ref:Ya,class:"rx-paper"},[r("div",id,d(G.value==="internal"?"药房联":xn),1),r("div",od,[r("span",ud,d(G.value==="user"?"服药前请核对姓名、电话、医生等信息以及医嘱等要点":"服药前请核对姓名、电话、医生等信息以及服法、医嘱等要点"),1),r("div",dd,[r("div",pd,[e[187]||(e[187]=r("span",{class:"rx-meta-label"},"日期",-1)),r("span",cd,d(kn.value),1)]),r("div",md,[e[188]||(e[188]=r("span",{class:"rx-meta-label"},"处方编号",-1)),r("span",_d,d(hn.value),1)]),r("div",fd,[e[189]||(e[189]=r("span",{class:"rx-meta-label"},"流转编号(挂号)",-1)),r("span",vd,d(wn.value),1)]),as.value?(o(),f("div",gd,[e[190]||(e[190]=r("span",{class:"rx-meta-label"},"业务单号",-1)),r("span",yd,d(as.value),1)])):v("",!0)])]),r("div",bd,[r("div",xd,[r("div",kd,[e[191]||(e[191]=r("span",{class:"rx-key"},"姓名",-1)),r("span",hd,d(x.value.patient_name||"—"),1)]),r("div",wd,[e[192]||(e[192]=r("span",{class:"rx-key"},"性别",-1)),r("span",Vd,d(On(x.value.gender)),1)]),r("div",Sd,[e[193]||(e[193]=r("span",{class:"rx-key"},"年龄",-1)),r("span",Nd,d(An(x.value.age)),1)]),r("div",Cd,[e[194]||(e[194]=r("span",{class:"rx-key"},"电话",-1)),r("span",Pd,d(x.value.phone||x.value.recipient_phone||"—"),1)])]),r("div",Od,[r("div",Ad,[e[195]||(e[195]=r("span",{class:"rx-key"},"收件信息",-1)),r("span",Rd,d(Vn.value),1)])]),r("div",Td,[r("div",$d,[e[196]||(e[196]=r("span",{class:"rx-key"},"临床诊断",-1)),r("span",Ed,d(x.value.clinical_diagnosis||"—"),1)])])]),r("div",Dd,[r("div",Fd,d(G.value==="internal"?"药房联":"处方联"),1),r("div",Ud,[e[199]||(e[199]=r("div",{class:"rx-rp-label"},"Rp.",-1)),r("div",Ld,[r("div",Id,[e[197]||(e[197]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)]),r("div",zd,[e[198]||(e[198]=r("span",null,"用药 (单剂)",-1)),r("span",null,d(G.value==="user"?"用量":"总量"),1)])])]),r("div",jd,[G.value==="internal"?(o(),f(O,{key:0},[Nt.value.length?(o(),f(O,{key:0},[e[200]||(e[200]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"main-"+E,class:"rx-herb-cell"},[r("span",Md,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",qd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[r("div",Bd,[e[201]||(e[201]=_(" 辅方",-1)),$e.value?(o(),f("span",Hd,"("+d($e.value)+")",1)):v("",!0)]),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"aux-"+E,class:"rx-herb-cell"},[r("span",Wd,d(S.name)+" ("+d(S.dosage)+"克)",1),r("span",Gd,d(ls(S.dosage))+"克",1)]))),128))],64)):v("",!0)],64)):(o(),f(O,{key:1},[Nt.value.length?(o(),f(O,{key:0},[e[202]||(e[202]=r("div",{class:"rx-herb-section-label"},"主方",-1)),(o(!0),f(O,null,L(Nt.value,(S,E)=>(o(),f("div",{key:"user-main-"+E,class:"rx-herb-cell"},[r("span",Kd,d(S.name),1),r("span",Qd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0),De.value.length?(o(),f(O,{key:1},[e[203]||(e[203]=r("div",{class:"rx-herb-section-label rx-herb-section-label--aux"},"辅方",-1)),(o(!0),f(O,null,L(De.value,(S,E)=>(o(),f("div",{key:"user-aux-"+E,class:"rx-herb-cell"},[r("span",Jd,d(S.name),1),r("span",Yd,d(S.dosage)+"克",1)]))),128))],64)):v("",!0)],64))])]),r("div",Xd,[G.value==="internal"?(o(),f(O,{key:0},[ia.value?(o(),f("p",Zd,"主服法:"+d(ns.value),1)):(o(),f("p",ep,"服法:"+d(ns.value),1)),ia.value?(o(),f("p",tp,"辅服法:"+d(ia.value),1)):v("",!0)],64)):v("",!0),rs.value?(o(),f("p",ap,"医嘱:"+d(rs.value),1)):v("",!0),Za.value?(o(),f("p",sp,"忌口:"+d(Za.value),1)):v("",!0),G.value==="internal"&&is.value?(o(),f("p",lp,"备注:"+d(is.value),1)):v("",!0),os.value?(o(),f("p",np," 药房备注:"+d(os.value),1)):v("",!0),G.value==="internal"&&us.value&&((a=x.value)==null?void 0:a.prescription_type)!=="饮片"?(o(),f("p",rp," 出丸:"+d(us.value),1)):v("",!0)]),r("div",ip,[r("div",{class:q(["rx-bot-row rx-bot-row-1",{"rx-bot-row-1--user":G.value==="user"}])},[r("div",op,[e[204]||(e[204]=r("div",{class:"rx-bot-label rx-bot-label--doctor"},"医师",-1)),r("div",up,[x.value.doctor_signature?(o(),f("img",{key:0,src:x.value.doctor_signature,alt:"医师签名",class:"rx-bot-sign-img"},null,8,dp)):v("",!0),x.value.doctor_signature?v("",!0):(o(),f("span",pp,d(x.value.doctor_name||"—"),1))])]),G.value==="internal"?(o(),f("div",cp,[e[205]||(e[205]=r("span",{class:"rx-bot-meta-key"},"类型:",-1)),r("span",mp,d(Nn.value),1)])):v("",!0),r("div",_p,[e[206]||(e[206]=r("span",{class:"rx-bot-meta-key"},"天数:",-1)),r("span",fp,d(((P=$.value)==null?void 0:P.medication_days)!=null&&String($.value.medication_days).trim()!==""?$.value.medication_days+" 天":"—"),1)]),G.value==="internal"?(o(),f("div",vp,[e[207]||(e[207]=r("span",{class:"rx-bot-meta-key"},"剂量:",-1)),r("span",gp,d(Sn.value)+"克",1)])):v("",!0)],2)]),e[208]||(e[208]=r("div",{class:"rx-bot-row rx-hospital-row"},[r("div",{class:"rx-hospital-line"},"成都双流甄养堂互联网医院有限公司 联系方式:4001667339"),r("div",{class:"rx-hospital-line"},"地址:四川省成都市双流区黄甲街道黄龙大道二段280号")],-1))],512)):v("",!0),x.value&&(x.value.audit_by_name||x.value.audit_remark)?(o(),f("div",yp,[x.value.audit_by_name?(o(),f("div",bp,[_(" 审核人:"+d(x.value.audit_by_name)+" ",1),x.value.audit_time?(o(),f("span",xp,d(ds(x.value.audit_time)),1)):v("",!0)])):v("",!0),x.value.audit_remark?(o(),f("div",kp,"审核意见:"+d(x.value.audit_remark),1)):v("",!0)])):v("",!0)])),[[_e,St.value]])]}),_:1},8,["modelValue"]),l(vs,{modelValue:yt.value,"onUpdate:modelValue":e[85]||(e[85]=a=>yt.value=a),title:"甘草预下单测试结果",size:"800px","destroy-on-close":""},{default:n(()=>{var a,P;return[F.value?(o(),f("div",hp,[l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[r("div",wp,[e[210]||(e[210]=r("span",{class:"font-semibold"},"价格信息",-1)),l(T,{type:"success"},{default:n(()=>[...e[209]||(e[209]=[_("预下单成功",-1)])]),_:1})])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"药材成本"},{default:n(()=>{var S;return[r("span",Vp,"¥"+d(((S=F.value.fee)==null?void 0:S.m_cost)||"0.00"),1)]}),_:1}),l(pe,{label:"制作费"},{default:n(()=>{var S;return[r("span",Sp,"¥"+d((((S=F.value.fee)==null?void 0:S.proces_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"物流费"},{default:n(()=>{var S;return[r("span",Np,"¥"+d((((S=F.value.fee)==null?void 0:S.lis_cost)||0).toFixed(2)),1)]}),_:1}),l(pe,{label:"总计"},{default:n(()=>[r("div",null,[r("span",Cp," ¥"+d(Zt(F.value.fee)),1),A((o(),f("div",Pp,[e[211]||(e[211]=_(" 占订单总金额: ",-1)),r("span",Op,d(Jl(F.value.fee,F.value.amount)),1),F.value.amount>0?(o(),f("span",Ap,"%(预报价 ÷ 订单金额 × 100)")):v("",!0)])),[[D,["prescription.order/finance"]]])])]),_:1})]),_:1})]),_:1}),l(s,{shadow:"never",class:"mb-4"},{header:n(()=>[...e[212]||(e[212]=[r("span",{class:"font-semibold"},"配送信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"调配中心"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_name)||"—"),1)]}),_:1}),l(pe,{label:"调配中心ID"},{default:n(()=>{var S;return[_(d(((S=F.value.result)==null?void 0:S.ds_id)||"—"),1)]}),_:1}),l(pe,{label:"服用天数范围",span:2},{default:n(()=>{var S,E,gs,ys,bs,xs;return[_(d(((E=(S=F.value.result)==null?void 0:S.take_days)==null?void 0:E.min)||"—")+" - "+d(((ys=(gs=F.value.result)==null?void 0:gs.take_days)==null?void 0:ys.max)||"—")+" 天 (默认: "+d(((xs=(bs=F.value.result)==null?void 0:bs.take_days)==null?void 0:xs.default)||"—")+" 天) ",1)]}),_:1})]),_:1})]),_:1}),(P=(a=F.value.result)==null?void 0:a.rule_check)!=null&&P.length?(o(),k(s,{key:0,shadow:"never",class:"mb-4"},{header:n(()=>[...e[213]||(e[213]=[r("span",{class:"font-semibold"},"医嘱备注",-1)])]),default:n(()=>[r("div",Rp,d(F.value.result.rule_check.map(S=>S.msg).join(" ")),1)]),_:1})):v("",!0),l(s,{shadow:"never"},{header:n(()=>{var S,E;return[r("div",Tp,[e[214]||(e[214]=r("span",{class:"font-semibold"},"药材明细",-1)),r("span",$p,"共 "+d(((E=(S=F.value.result)==null?void 0:S.m_list)==null?void 0:E.length)||0)+" 味药",1)])]}),default:n(()=>{var S;return[l(tt,{data:((S=F.value.result)==null?void 0:S.m_list)||[],border:"",stripe:"","max-height":"400"},{default:n(()=>[l(R,{type:"index",label:"#",width:"50",align:"center"}),l(R,{prop:"title",label:"药材名称","min-width":"120","show-overflow-tooltip":""}),l(R,{prop:"quantity",label:"用量",width:"80",align:"right"},{default:n(({row:E})=>[_(d(E.quantity)+d(E.unit),1)]),_:1}),l(R,{prop:"price",label:"单价(元/克)",width:"110",align:"right"},{default:n(({row:E})=>[_(" ¥"+d(Number(E.price).toFixed(4)),1)]),_:1}),l(R,{label:"小计",width:"100",align:"right"},{default:n(({row:E})=>[r("span",Ep," ¥"+d((Number(E.price)*Number(E.quantity)).toFixed(2)),1)]),_:1}),l(R,{prop:"is_available",label:"库存状态",width:"100",align:"center"},{default:n(({row:E})=>[l(T,{type:E.is_available===1?"success":"danger",size:"small"},{default:n(()=>[_(d(E.is_available===1?"有货":"缺货"),1)]),_:2},1032,["type"])]),_:1}),l(R,{prop:"brief",label:"备注","min-width":"120","show-overflow-tooltip":""})]),_:1},8,["data"])]}),_:1}),l(s,{shadow:"never",class:"mt-4"},{header:n(()=>[...e[215]||(e[215]=[r("span",{class:"font-semibold"},"订单信息",-1)])]),default:n(()=>[l(ua,{column:2,border:""},{default:n(()=>[l(pe,{label:"订单号",span:2},{default:n(()=>[_(d(F.value.order_no||"—"),1)]),_:1}),l(pe,{label:"剂数"},{default:n(()=>[r("span",Dp,d(F.value.dose_count||"—")+"剂",1)]),_:1}),l(pe,{label:"单剂量"},{default:n(()=>{var S;return[r("span",Fp,d(Yl((S=F.value.result)==null?void 0:S.m_list))+"克 ",1)]}),_:1})]),_:1})]),_:1})])):v("",!0)]}),_:1},8,["modelValue"]),l(X,{modelValue:Ie.value,"onUpdate:modelValue":e[88]||(e[88]=a=>Ie.value=a),title:"批量改派医助",width:"440px","append-to-body":""},{footer:n(()=>[l(b,{onClick:e[87]||(e[87]=a=>Ie.value=!1)},{default:n(()=>[...e[218]||(e[218]=[_("取消",-1)])]),_:1}),l(b,{type:"primary",loading:Ft.value,onClick:js},{default:n(()=>[...e[219]||(e[219]=[_("确定改派",-1)])]),_:1},8,["loading"])]),default:n(()=>[r("div",Up,[e[216]||(e[216]=_(" 已选 ",-1)),r("strong",Lp,d(ge.value.length),1),e[217]||(e[217]=_(" 单,将订单「创建人(医助归属)」改派为: ",-1))]),l(h,{modelValue:rt.value,"onUpdate:modelValue":e[86]||(e[86]=a=>rt.value=a),clearable:"",filterable:"",placeholder:"选择目标医助",class:"!w-full"},{default:n(()=>[(o(!0),f(O,null,L(Ne.value,a=>(o(),k(c,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e[220]||(e[220]=r("p",{class:"text-xs text-gray-400 mt-2 leading-relaxed"}," 仅变更订单的业务归属(医助筛选 / 业绩口径),并写入操作日志;不影响处方、支付单及审核状态。已是该医助的订单会自动跳过。 ",-1))]),_:1},8,["modelValue"]),l(w(As),{ref_key:"diagnosisViewRef",ref:fa},null,512)])}}}),tc=Ri(zp,[["__scopeId","data-v-e7ad3e24"]]);export{tc as default};
+>>>>>>>> yz-0803:server/public/admin/assets/order_list-CQxNJWd1.js
diff --git a/server/public/admin/assets/order_list_h5-BKqLubNB.js b/server/public/admin/assets/order_list_h5-BKqLubNB.js
new file mode 100644
index 000000000..8e073424d
--- /dev/null
+++ b/server/public/admin/assets/order_list_h5-BKqLubNB.js
@@ -0,0 +1,7 @@
+<<<<<<<< HEAD:server/public/admin/assets/order_list_h5-CxnTMeHR.js
+const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-DcWYtxZL.js","assets/.pnpm-BadRMC3e.js","assets/.pnpm-BtiqMGM_.css","assets/tcm-BvgN1Mad.js","assets/index-C360OAjQ.js","assets/index-ynJZC2Ez.css","assets/perm-Bld5tS_J.js","assets/DailyMatrix-Ul2kFeS6.js","assets/picker-BV4TmQgU.js","assets/index-2cRJ7Pdu.js","assets/index-B3imPWFk.css","assets/index-CARk4iLN.js","assets/index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js","assets/index-DcSBJkxh.js","assets/index-D0f1Mn00.css","assets/index-BHk2qnVA.js","assets/file-DAA7Hwft.js","assets/index.vue_vue_type_script_setup_true_lang-QSNac8Ky.js","assets/usePaging-DMqUvFG-.js","assets/index-BYOmK9R5.css","assets/picker-XZbUgFct.css","assets/DiagnosisTodoList-xc20843U.js","assets/DiagnosisTodoList-D0SBmTHG.css","assets/blood-thresholds-CJ1fqMjh.js","assets/DailyMatrix-DCZnxI8i.css","assets/CaseRecordList-DEkFP89f.js","assets/CaseRecordList-Cl-c3q7S.css","assets/CallRecordPanel-DkG-bj5N.js","assets/RecordingPlaybackBlock-C05dVpO0.js","assets/RecordingVideoPlayer-Lo03HGYz.js","assets/RecordingVideoPlayer-4DegHAwm.css","assets/RecordingPlaybackBlock-B3KYFgvg.css","assets/CallRecordPanel-TsjZtTO8.css","assets/ImChatRecordPanel-BfhOODqn.js","assets/dayjs-Dr2Em-pV.js","assets/im-business-message-parse-DoOLrDi4.js","assets/ImChatRecordPanel-aX8zpWRQ.css","assets/AssignLogPanel-CxGhWCjD.js","assets/AssignLogPanel-DkQMoEkX.css","assets/AppointmentRecordPanel-DClURTxz.js","assets/doctor-BqTrXcfF.js","assets/AppointmentRecordPanel-DC22GDgn.css","assets/NoteTimeline-nGgu5OlD.js","assets/patient-BgHF8SY_.js","assets/NoteTimeline-I2FSxX4s.css","assets/PatientOrderList-DCvdZKjF.js","assets/PrescriptionOrderDetailDrawer-U3_w-Wbd.js","assets/prescription-order-utils-B0fYlULc.js","assets/PrescriptionOrderDetailDrawer-DnrTcbh_.css","assets/PatientOrderList-D8-uh2iu.css","assets/index-ykEzOnay.js","assets/index-BE-7WCNj.js","assets/medicine-SFe5reN2.js","assets/index-Bu4RT9fX.css","assets/diabetes-discovery-display-B_wmGXQJ.js","assets/index-CmvUWP8L.css","assets/edit-DOd7Lhrw.css","assets/TrackingNoteTimeline-B9T8pFso.css"])))=>i.map(i=>d[i]);
+import{o as Hs,R as zs,ap as cr,be as mr,q as u,r as m,s as a,v as s,D as n,F as R,G as W,ae as L,T as o,P as f,bg as _r,ac as T,w as fr,u as E,ce as vr,L as p,bH as gr,bI as yr,cf as br,bi as xr,bA as Aa,O as y,br as kr,ck as js,b9 as hr,C as Ra,b6 as wr,b7 as Vr,b8 as pt,bm as Sr,bn as Nr,bK as Cr,K as Pr,ad as Bt,bB as Or,cg as Ar,aw as Wt,$ as Rr,Z as Tr,_ as Er,bZ as Dr,bh as Ur,b_ as $r,b$ as Fr,c0 as zr,c1 as jr,bj as Lr,bk as Ir,cl as qr,by as Mr,bq as Hr,b5 as Br,c3 as Wr,c4 as Kr,B as Gr,J as Jr,bt as Qr,a1 as Yr,c7 as Zr,c8 as Xr,ca as ei,U as ti,S as ai,I as si,bc as li,bf as ni,cb as ri,al as ii,M as b,p as k,ba as _e,n as ct,e as Kt,cd as oi,cc as ui}from"./.pnpm-BadRMC3e.js";import{_ as di}from"./index.vue_vue_type_script_setup_true_lang-BZQ0jmei.js";import{L as pi,u as ci}from"./useListTimeFilter-BJxb8Pfi.js";import{_ as mi}from"./GancaoSubmissionReconcileButton.vue_vue_type_script_setup_true_lang-YaN9v6AS.js";import{g as _i,i as fi,t as vi,c as gi,a as yi,h as J,A as bi,B as xi,C as ki,D as hi,E as wi,F as Vi,G as Ls,H as Si,I as Ni,J as Ci,K as Is,L as Pi,M as Oi,N as Ai,O as Ri,P as Ti,Q as Ei,k as Di,f as Ta,e as Ui}from"./tcm-BvgN1Mad.js";import{z as $i,A as Fi,n as zi,C as Ea,x as ji,r as qs,v as Ms,w as Li,D as Ii,E as qi}from"./prescription-order-utils-B0fYlULc.js";import{u as Mi,i as O,m as Hi,_ as Bi}from"./index-C360OAjQ.js";import{d as Wi}from"./department-BFDDlesw.js";import{u as Ki}from"./usePaging-DMqUvFG-.js";const Gi={class:"prescription-order-page prescription-order-list prescription-order-h5 po-h5-app"},Ji={class:"flex flex-col gap-3"},Qi={key:0,class:"flex items-center gap-2 flex-wrap"},Yi=["onClick"],Zi={class:"font-medium"},Xi={class:"flex items-center gap-2 flex-wrap"},eo=["onClick"],to={class:"font-medium"},ao={class:"flex items-center gap-2 flex-wrap"},so=["onClick"],lo={class:"font-medium"},no={class:"flex items-center gap-2 flex-wrap"},ro=["onClick"],io={class:"font-medium"},oo={class:"flex items-center gap-2 flex-wrap"},uo=["onClick"],po={class:"font-medium"},co={class:"po-list-stats grid grid-cols-1 sm:grid-cols-2 gap-4 mb-5"},mo={class:"po-stat-surface po-stat-surface--order relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},_o={class:"relative flex items-start justify-between gap-3"},fo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},vo={class:"mt-2 space-y-1.5 min-w-0"},go={class:"text-2xl sm:text-[28px] font-bold text-sky-700 tabular-nums leading-none"},yo={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},bo={class:"text-slate-400"},xo={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-sky-500/10 flex items-center justify-center text-sky-600"},ko={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},ho={class:"po-stat-surface po-stat-surface--pay relative overflow-hidden rounded-xl border border-slate-200/90 px-5 py-4 shadow-sm"},wo={class:"relative flex items-start justify-between gap-3"},Vo={class:"flex items-center gap-2 text-slate-500 text-xs font-medium"},So={class:"mt-2 space-y-1.5 min-w-0"},No={class:"text-2xl sm:text-[28px] font-bold text-emerald-700 tabular-nums leading-none"},Co={class:"flex flex-wrap gap-x-3 gap-y-1 text-xs text-slate-500 tabular-nums"},Po={class:"text-slate-400"},Oo={class:"stat-icon-wrap h-10 w-10 shrink-0 rounded-lg bg-emerald-500/10 flex items-center justify-center text-emerald-600"},Ao={class:"relative mt-2 text-xs text-slate-500 leading-relaxed"},Ro={class:"po-filter-toggle__label"},To={class:"po-h5-list-head"},Eo={class:"po-table-toolbar"},Do={class:"po-table-toolbar__title-wrap"},Uo={class:"po-table-hint text-gray-400"},$o={class:"po-focus-board"},Fo={class:"po-focus-board__value"},zo={class:"po-focus-board__value"},jo={class:"po-focus-board__value"},Lo={class:"po-focus-board__value"},Io={class:"po-card-list"},qo=["onClick"],Mo={class:"po-card__head"},Ho={class:"po-card__order-no"},Bo={class:"po-card__order-no-main"},Wo={class:"po-card__tags"},Ko={class:"po-card__id"},Go={key:0,class:"po-card__alert"},Jo={class:"po-card__row"},Qo={class:"po-card__field"},Yo={class:"po-card__value"},Zo={class:"po-card__field po-card__field--right"},Xo={class:"po-card__value po-card__amount"},eu={class:"po-card__row"},tu={class:"po-card__field"},au={class:"po-card__field po-card__field--right"},su={class:"po-card__value"},lu={class:"po-card__row"},nu={class:"po-card__field"},ru={class:"po-card__value"},iu={class:"po-card__field po-card__field--right"},ou={class:"po-card__value"},uu={key:1,class:"po-card__row"},du={class:"po-card__field"},pu={class:"po-card__value text-orange-600 font-semibold"},cu={class:"po-card__field po-card__field--right"},mu={class:"po-card__value"},_u={key:0,class:"text-primary"},fu={key:1},vu={key:2,class:"po-card__row"},gu={class:"po-card__field"},yu={class:"po-card__value"},bu={key:0,class:"text-primary"},xu={key:1},ku={class:"po-card__field po-card__field--right"},hu={class:"po-card__value po-card__time"},wu={class:"po-card__tags-row"},Vu={class:"po-card__meta"},Su={key:0},Nu={key:1},Cu={key:2,class:"po-card__meta-time"},Pu={class:"flex justify-end mt-4"},Ou={class:"po-detail-drawer-head flex w-full min-w-0 flex-col gap-2"},Au={class:"po-detail-drawer-head-main flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1"},Ru={key:0,class:"po-detail-drawer-actions flex flex-wrap items-center gap-2"},Tu={key:1,class:"po-detail-body px-6 pb-6 h-full overflow-y-auto"},Eu={class:"min-w-0 break-words text-sm leading-relaxed"},Du={class:"font-mono font-semibold text-red-700"},Uu={class:"font-mono font-semibold text-red-700"},$u={class:"po-workflow-steps-wrap bg-gray-50/80 border border-gray-100 rounded-lg p-5 mb-5 shadow-sm"},Fu={key:0,class:"text-red-500 font-medium"},zu={key:1},ju={key:2,class:"text-green-600"},Lu={key:3,class:"text-gray-400"},Iu={key:0,class:"text-red-500 font-medium"},qu={key:1},Mu={key:2,class:"text-green-600"},Hu={key:3,class:"text-gray-400"},Bu={key:0,class:"text-amber-600 font-medium"},Wu={key:1,class:"text-primary font-medium"},Ku={key:2},Gu={key:3,class:"text-green-600"},Ju={key:4,class:"text-red-500 font-medium"},Qu={class:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-5 gap-4 mb-5"},Yu={class:"flex items-center justify-between mb-1"},Zu={class:"stat-value text-red-500 font-bold text-xl"},Xu={class:"stat-value text-green-600 font-bold text-xl"},ed={class:"stat-value text-primary font-bold text-xl"},td={class:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4"},ad={key:0,class:"audit-stamp stamp-pass"},sd={key:1,class:"audit-stamp stamp-reject"},ld={class:"po-panel-rx-header flex w-full min-w-0 flex-col gap-2"},nd={class:"flex w-full min-w-0 flex-wrap items-center justify-between gap-x-2 gap-y-1"},rd={class:"shrink-0 text-xs text-gray-400 tabular-nums"},id={key:0,class:"min-w-0 text-xs leading-snug text-gray-500"},od={class:"text-primary font-medium"},ud={class:"flex w-full min-w-0 flex-wrap items-center gap-x-3 gap-y-1"},dd={class:"text-red-500 font-medium"},pd={class:"flex flex-col gap-1 text-sm leading-relaxed"},cd={key:0,class:"text-gray-500 mr-1"},md={key:1,class:"ml-2 text-gray-500"},_d={key:0},fd={key:1,class:"ml-2 text-gray-500"},vd={class:"flex items-center gap-1 flex-wrap"},gd={class:"flex flex-col gap-1.5 text-sm leading-relaxed"},yd={key:0},bd={key:0,class:"mt-4"},xd={class:"flex flex-col gap-4 h-full"},kd={class:"text-red-500"},hd={key:0,class:"audit-stamp stamp-pass"},wd={key:1,class:"audit-stamp stamp-reject"},Vd={class:"flex items-center justify-between"},Sd={class:"flex items-center gap-3"},Nd={key:0,class:"text-xs text-gray-500"},Cd={class:"text-primary font-medium"},Pd={class:"text-red-500"},Od={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"},Ad={class:"flex min-w-0 flex-col gap-1"},Rd={class:"font-mono text-[1.125rem] font-semibold leading-tight tracking-tight text-slate-900 tabular-nums"},Td={class:"flex flex-wrap items-center gap-x-4 gap-y-1 text-[13px]"},Ed={class:"font-mono text-primary"},Dd={class:"text-gray-500"},Ud={key:0},$d={key:1,class:"text-gray-500"},Fd={key:0,class:"text-xs text-gray-500 mt-1"},zd={key:1,class:"text-gray-400"},jd={class:"po-audit-remark"},Ld={class:"po-audit-remark"},Id={class:"po-logistics-toolbar flex flex-wrap items-center gap-2 mb-4"},qd={class:"po-logistics-toolbar__links flex items-center gap-3 w-full pt-1"},Md={key:1,class:"py-6 text-center text-sm text-gray-500"},Hd={key:2,class:"logistics-content bg-gray-50/50 p-4 rounded-md"},Bd={key:0,class:"text-sm mb-4 font-medium flex items-center gap-2"},Wd={class:"text-gray-800"},Kd={key:1,class:"text-xs text-gray-400 ml-1"},Gd={key:2,class:"text-xs text-gray-400"},Jd={class:"flex items-center gap-2 mb-1"},Qd={class:"font-medium text-[13px]"},Yd={class:"text-sm text-gray-700 font-medium"},Zd={class:"create-order-dialog__inner"},Xd={key:0,class:"create-order-rx-card"},ep={class:"create-order-rx-card__head"},tp={class:"create-order-rx-card__meta"},ap={class:"create-order-rx-card__id"},sp={key:0,class:"create-order-rx-card__sn"},lp={class:"create-order-rx-card__patient"},np={class:"create-order-rx-card__herbs"},rp={class:"create-order-step-lead"},ip={class:"create-order-step-panel"},op={class:"create-order-step-panel"},up={class:"flex flex-wrap items-center gap-2 pb-2 border-b border-gray-100"},dp={class:"text-xs text-gray-400"},pp={class:"mt-2 space-y-1.5 text-xs sm:text-sm"},cp={key:0,class:"space-y-1.5"},mp={class:"text-gray-800 break-all"},_p={key:1,class:"text-gray-400"},fp={class:"flex items-center gap-1 w-full"},vp={class:"flex gap-2 w-full"},gp={class:"flex flex-col gap-0.5",style:{"line-height":"normal"}},yp={class:"flex items-center justify-between"},bp={class:"font-medium text-[13px] text-gray-800"},xp={class:"text-orange-500 font-medium ml-4"},kp={class:"flex items-center justify-between text-xs text-gray-400 mt-1"},hp={class:"truncate pr-2"},wp={class:"shrink-0"},Vp={class:"create-order-pay-hint text-gray-500"},Sp={class:"text-amber-600 font-medium"},Np={class:"create-order-step-panel"},Cp={class:"create-order-deposit-bar__cell"},Pp={class:"create-order-deposit-bar__sub"},Op={class:"create-order-deposit-bar__cell"},Ap={class:"create-order-deposit-bar__sub"},Rp={class:"create-order-footer"},Tp={class:"create-order-footer__hint"},Ep={class:"create-order-footer__step"},Dp={key:0,class:"create-order-footer__warn"},Up={class:"create-order-footer__actions"},$p={class:"text-sm"},Fp={class:"text-gray-600"},zp={class:"text-gray-600"},jp={key:0,class:"text-xs text-amber-800 mt-2"},Lp={class:"text-xs text-gray-500 mt-1"},Ip={class:"text-xs text-gray-500 mt-1"},qp={class:"flex flex-col gap-0.5 py-0.5"},Mp={class:"flex items-center justify-between"},Hp={class:"text-sm"},Bp={class:"text-orange-500 font-medium ml-4"},Wp={class:"text-xs text-gray-400"},Kp={key:0,class:"text-xs font-medium text-gray-500 mb-3"},Gp={class:"flex items-center gap-1 w-full"},Jp={class:"flex items-center gap-1 w-full"},Qp={class:"flex items-center gap-1 w-full"},Yp={class:"flex items-center justify-between w-full pr-2 gap-3"},Zp={key:0,class:"flex items-center gap-2 shrink-0"},Xp={class:"rx-wrap"},ec={key:0,class:"rx-statusbar"},tc={key:1,class:"rx-status rx-status-danger"},ac={key:2,class:"rx-status rx-status-danger"},sc={key:0,class:"mt-1"},lc={key:3,class:"rx-status rx-status-danger"},nc={key:0,class:"mt-1"},rc={class:"rx-notice"},ic={class:"rx-notice-meta"},oc={class:"rx-meta-item"},uc={class:"rx-meta-value"},dc={class:"rx-meta-item"},pc={class:"rx-meta-value"},cc={class:"rx-meta-item"},mc={class:"rx-meta-value"},_c={key:0,class:"rx-meta-item"},fc={class:"rx-meta-value"},vc={class:"rx-info"},gc={class:"rx-info-row"},yc={class:"rx-info-cell"},bc={class:"rx-val"},xc={class:"rx-info-cell"},kc={class:"rx-val"},hc={class:"rx-info-cell"},wc={class:"rx-val"},Vc={class:"rx-info-cell"},Sc={class:"rx-val"},Nc={class:"rx-info-row rx-info-row-full"},Cc={class:"rx-info-cell"},Pc={class:"rx-val"},Oc={class:"rx-info-row rx-info-row-full"},Ac={class:"rx-info-cell"},Rc={class:"rx-val"},Tc={class:"rx-rp"},Ec={class:"rx-herbs"},Dc={class:"rx-herb-name"},Uc={class:"rx-herb-total"},$c={class:"rx-text"},Fc={key:0},zc={key:1},jc={key:2},Lc={key:3,class:"rx-text-warn"},Ic={key:4,class:"rx-text-warn"},qc={class:"rx-bottom"},Mc={class:"rx-bot-row rx-bot-row-1"},Hc={class:"rx-bot-cell rx-bot-doctor"},Bc={class:"rx-bot-doctor-body"},Wc=["src"],Kc={key:1,class:"rx-bot-doctor-name"},Gc={class:"rx-bot-cell rx-bot-meta"},Jc={class:"rx-bot-meta-val"},Qc={class:"rx-bot-cell rx-bot-meta"},Yc={class:"rx-bot-meta-val"},Zc={class:"rx-bot-cell rx-bot-meta"},Xc={class:"rx-bot-meta-val"},em={key:5,class:"rx-audit"},tm={key:0},am={key:0,class:"ml-2 text-gray-400"},sm={key:1,class:"mt-1"},lm={key:0,class:"px-4"},nm={class:"flex items-center justify-between"},rm={class:"text-lg font-semibold text-orange-600"},im={class:"text-lg font-semibold text-blue-600"},om={class:"text-lg font-semibold text-green-600"},um={class:"text-xl font-bold text-red-600"},dm={class:"text-sm text-gray-500 mt-1.5"},pm={class:"font-medium text-gray-700"},cm={key:0},mm={class:"text-sm text-gray-700 leading-relaxed"},_m={class:"flex items-center justify-between"},fm={class:"text-sm text-gray-500"},vm={class:"font-medium text-orange-600"},gm={class:"text-base font-medium"},ym={class:"text-base font-medium"},bm=Hs({name:"prescriptionOrderListH5"}),xm=Hs({...bm,setup(km){const Bs=ri(()=>ii(()=>import("./edit-DcWYtxZL.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]))),we=Mi(),Da=b(null);function Ws(){var e,l;const t=Number((e=c.value)==null?void 0:e.diagnosis_id);if(!t){O.msgWarning("本订单未关联诊单,无法查看患者诊单信息");return}(l=Da.value)==null||l.openViewOnly(t)}const Ks=2,Gs=6,Ua=[3,8],Js=[0,3,6],Qs=k(()=>{const t=we.userInfo;if(!t||Number(t.root)===1)return!1;const e=Array.isArray(t.role_ids)?t.role_ids.map(l=>Number(l)):[];return e.includes(Gs)?!Ua.some(l=>e.includes(l)):!1}),Ys=k(()=>{const t=we.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(l=>Number(l)):[];return Ua.some(l=>e.includes(l))}),Zs=k(()=>Qs.value||Ys.value),$a=b([]),Ve=k(()=>{const t=we.userInfo;if(!t||Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(l=>Number(l)):[];return e.includes(Ks)?e.some(l=>Js.includes(l)):!0}),Xs=k(()=>Ve.value?"详情/审核":"详情"),el=[0,3,6],Fa=()=>{const t=we.userInfo;if(!t)return!1;if(Number(t.root)===1)return!0;const e=Array.isArray(t.role_ids)?t.role_ids.map(l=>Number(l)):[];return el.some(l=>e.includes(l))},mt=b([]),_t=b([]),Gt=b([]),He=b([]),ft=b([]),tl={value:"id",label:"name",children:"children"};function za(t,e){for(const l of t||[]){if(l==null||typeof l!="object")continue;const i=l;if(Number(i.id)===e)return i;const d=za(i.children||[],e);if(d)return d}return null}function ja(t){const e=Number(t.id),l=[];Number.isFinite(e)&&e>0&&l.push(e);for(const i of t.children||[])i&&typeof i=="object"&&l.push(...ja(i));return l}function al(t,e){const l=za(e,t);return l?ja(l):[t]}async function sl(){try{const[t,e,l]=await Promise.all([_i(),fi(),Wi()]);Gt.value=Array.isArray(t)?t:[],He.value=Array.isArray(e)?e:[];const i=Array.isArray(l)?l:[];ft.value=i}catch{Gt.value=[],He.value=[],ft.value=[]}}const ll=t=>t.map(e=>{var l;return{value:e.province,label:e.province,code:e.code,children:((l=e.citys)==null?void 0:l.map(i=>{var d;return{value:i.city,label:i.city,code:i.code,children:((d=i.areas)==null?void 0:d.map(g=>({value:g.area,label:g.area,code:g.code})))||[]}}))||[]}}),nl=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 l=await e.json();console.log("加载的数据条数:",l==null?void 0:l.length),mt.value=ll(l),console.log("regionOptions 已设置,条数:",mt.value.length)}catch(t){console.error("加载省市区数据失败:",t),mt.value=[]}},rl=async()=>{try{const t=await Hi({type:"server_order"});_t.value=zi(t==null?void 0:t.server_order)}catch(t){console.error("加载服务套餐选项失败:",t),_t.value=[]}},il=[{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 ol(t){re.value="",h.fulfillment_status=t,Q()}const re=b(""),ul=[{label:"全部",value:""},{label:"甘草",value:"gancao"},{label:"洛阳直发",value:"direct"},{label:"自营",value:"self"}];function dl(t){h.supply_mode=t,Q()}const pl=[{label:"全部",value:""},{label:"顺丰",value:"sf"},{label:"京东",value:"jd"}];function cl(t){h.express_company=t,Q()}const h=_e({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:"",audit_admin_id:""}),ml=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}],_l=[{label:"全部",value:""},{label:"待审核",value:0},{label:"已通过",value:1},{label:"已驳回",value:2}];function fl(t){re.value="",h.prescription_audit_status=t,Q()}function vl(t){re.value="",h.payment_slip_audit_status=t,Q()}function vt(t){if(re.value===t){re.value="",h.prescription_audit_status="",h.payment_slip_audit_status="",h.fulfillment_status="",Q();return}re.value=t,h.prescription_audit_status="",h.payment_slip_audit_status="",h.fulfillment_status="",t==="pendingRx"?h.prescription_audit_status=0:t==="pendingPay"?(h.prescription_audit_status=1,h.payment_slip_audit_status=0):t==="pendingShip"?h.fulfillment_status=2:t==="risk"&&(h.payment_slip_audit_status=2),Q()}const{time_type:Re,dateRange:Jt,resolve:gl,handleTimeTypeChange:yl,handleCustomDateChange:bl,resetTimeFilter:xl}=ci("all"),La=()=>{te.page=1,M()},kl=()=>yl(La),hl=()=>bl(La);async function wl(t){const[e,l]=gl(),i={...t,start_time:e,end_time:l};if(i.prescription_id===""||i.prescription_id===void 0?delete i.prescription_id:i.prescription_id=Number(i.prescription_id),(i.fulfillment_status===""||i.fulfillment_status===void 0)&&delete i.fulfillment_status,(i.prescription_audit_status===""||i.prescription_audit_status===void 0)&&delete i.prescription_audit_status,(i.payment_slip_audit_status===""||i.payment_slip_audit_status===void 0)&&delete i.payment_slip_audit_status,(!i.supply_mode||i.supply_mode==="")&&delete i.supply_mode,i.doctor_id===""||i.doctor_id===void 0||i.doctor_id===null?delete i.doctor_id:i.doctor_id=Number(i.doctor_id),i.assistant_id===""||i.assistant_id===void 0||i.assistant_id===null?delete i.assistant_id:i.assistant_id=Number(i.assistant_id),i.assistant_dept_id===""||i.assistant_dept_id===void 0||i.assistant_dept_id===null?delete i.assistant_dept_id:i.assistant_dept_id=Number(i.assistant_dept_id),i.order_no||delete i.order_no,String(i.patient_keyword||"").trim()||delete i.patient_keyword,i.audit_admin_id===""||i.audit_admin_id===void 0||i.audit_admin_id===null?delete i.audit_admin_id:i.audit_admin_id=Number(i.audit_admin_id),String(i.express_keyword||"").trim()||delete i.express_keyword,(!i.express_company||i.express_company==="")&&delete i.express_company,!String(i.start_time||"").trim()||!String(i.end_time||"").trim())delete i.start_time,delete i.end_time;else{const d=String(i.start_time||"").trim(),g=String(i.end_time||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(d)&&/^\d{4}-\d{2}-\d{2}$/.test(g)&&(i.start_time=`${d} 00:00:00`,i.end_time=`${g} 23:59:59`)}return vi(i)}const{pager:te,getLists:M,resetPage:Q,resetParams:Vl}=Ki({fetchFun:wl,params:h});zs(()=>{var t;return(t=te.extend)==null?void 0:t.audit_admin_options},t=>{Array.isArray(t)&&($a.value=t.map(e=>{if(e==null||typeof e!="object")return null;const l=e,i=Number(l.id),d=String(l.name??"").trim();return!Number.isFinite(i)||i<=0||d===""?null:{id:i,name:d}}).filter(e=>e!=null))},{immediate:!0});const Ia=k(()=>{const t=h.assistant_dept_id;if(t===""||t==null)return He.value;const e=Number(t);if(!Number.isFinite(e))return He.value;const l=new Set(al(e,ft.value));return He.value.filter(i=>{const d=i.dept_ids;return!Array.isArray(d)||d.length===0?!1:d.map(Number).some(g=>l.has(g))})});function Sl(){const t=h.assistant_id;if(t!==""&&t!=null){const e=Number(t);Ia.value.some(i=>Number(i.id)===e)||(h.assistant_id="")}Q()}const ce=k(()=>{const t=te.extend,e=(t==null?void 0:t.stats_order_amount)??(t==null?void 0:t.today_order_amount),l=(t==null?void 0:t.stats_linked_pay_amount)??(t==null?void 0:t.today_linked_pay_amount),i=qe=>{const N=Number(qe);return Number.isFinite(N)?Math.round(N*100)/100:0},d=qe=>qe.toFixed(2),g=(t==null?void 0:t.stats_order_amount_not_cancelled)!==void 0&&(t==null?void 0:t.stats_order_amount_cancelled)!==void 0,v=(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,x=i(g?t==null?void 0:t.stats_order_amount_not_cancelled:e),$=g?i(t==null?void 0:t.stats_order_amount_cancelled):0,le=i(v?t==null?void 0:t.stats_linked_pay_amount_not_cancelled:l),V=v?i(t==null?void 0:t.stats_linked_pay_amount_cancelled):0,F=(t==null?void 0:t.stats_order_amount_performance)!==void 0?i(t==null?void 0:t.stats_order_amount_performance):x,ye=(t==null?void 0:t.stats_linked_pay_amount_performance)!==void 0?i(t==null?void 0:t.stats_linked_pay_amount_performance):le,he=String((t==null?void 0:t.stats_time_start)??"").trim(),qt=String((t==null?void 0:t.stats_time_end)??"").trim(),Ca=he&&qt?`统计时间:${he} ~ ${qt}`:"统计时间:—",it=String((t==null?void 0:t.stats_scope)??"restricted");let ee="统计口径:与当前列表数据可见范围一致";it==="all"?ee="统计口径:支付单审核白名单角色,按全量订单;与下方筛选项(医生/医助/医助部门/患者等,不含「创建时间」)一致":it==="assistant"?ee="统计口径:仅计诊单医助为本人且满足下方其它筛选项的订单":it==="own_rx"&&(ee="统计口径:本人创建的订单 + 关联处方开方人为本人的订单(含医助代建);与下方筛选项(不含「创建时间」)一致");const pe=Re.value==="all"?"全部":Re.value==="today"?"今日":"区间";return{order:i(e),pay:i(l),orderStr:d(i(e)),payStr:d(i(l)),orderNotCancelledStr:d(x),orderCancelledStr:d($),payNotCancelledStr:d(le),payCancelledStr:d(V),orderPerformanceStr:d(F),payPerformanceStr:d(ye),orderHeading:`${pe}业绩(业务订单额)`,payHeading:`${pe}业绩(关联实付)`,periodLine:Ca,scopeHint:ee,orderSplitHint:"业绩 = 除履约已取消(4)外全部订单金额;下方为合计与已取消明细"}}),gt=k(()=>{const t=te.extend,e=v=>{const x=Number(v);return!Number.isFinite(x)||x<0?0:Math.trunc(x)},l=e(t==null?void 0:t.focus_pending_rx_count),i=e(t==null?void 0:t.focus_pending_pay_count),d=e(t==null?void 0:t.focus_pending_ship_count),g=e(t==null?void 0:t.focus_risk_count);return{pendingRx:l,pendingPay:i,pendingShip:d,risk:g}});function Qt(t,e){const l=Number(e==null?void 0:e.prescription_audit_status),i=Number(e==null?void 0:e.payment_slip_audit_status),d=Number(e==null?void 0:e.fulfillment_status);return t==="rx"&&l===0||t==="pay"&&l===1&&i===0||t==="fulfillment"&&d===2?"po-status-tag is-focus":t==="rx"&&l===2||t==="pay"&&i===2||t==="fulfillment"&&d===4?"po-status-tag is-risk":"po-status-tag"}function yt({row:t}){const e=Number(t==null?void 0:t.prescription_audit_status),l=Number(t==null?void 0:t.payment_slip_audit_status),i=Number(t==null?void 0:t.fulfillment_status),d=St(t==null?void 0:t.recipient_phone,t==null?void 0:t.prescription_phone);return e===2||l===2||d?"po-row-risk":e===0||e===1&&l===0||i===2?"po-row-focus":i===3||i===6?"po-row-done":""}zs(Ve,t=>{t||h.prescription_audit_status===""||h.prescription_audit_status===void 0||(h.prescription_audit_status="",Q())},{immediate:!0});function Nl(){re.value="",xl(),h.order_no="",h.prescription_id="",h.patient_keyword="",h.express_keyword="",h.express_company="",h.doctor_id="",h.assistant_id="",h.assistant_dept_id="",h.fulfillment_status="",h.prescription_audit_status="",h.payment_slip_audit_status="",h.supply_mode="",h.audit_admin_id="",Vl()}function bt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付费用",5:"尾款费用",6:"其他费用",7:"全部费用",8:"驼奶费用"}[Number(t)]??"—"}function qa(t){return t===1?"已通过":t===2?"已驳回":"待审核"}function Ma(t){return t===1?"success":t===2?"danger":"info"}function Yt(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function Cl(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 K(t){const e=Number(t);return Number.isNaN(e)?"—":e.toFixed(2)}function Se(t){if(t==null||t==="")return"—";if(typeof t=="number"&&t>1e9&&t<1e11){const e=new Date(t*1e3);return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}return String(t)}const Pl=[0,3];function Ha(){const t=we.userInfo;return t?Number(t.root)===1?!0:(Array.isArray(t.role_ids)?t.role_ids.map(l=>Number(l)):[]).some(l=>Pl.includes(l)):!1}function Ba(t){var l;const e=Number((l=we.userInfo)==null?void 0:l.id);return e>0&&Number(t.creator_id)===e}function Wa(t){return Number(t.prescription_audit_status)===1&&Number(t.payment_slip_audit_status)===1}function Ka(t){const e=Number(t.fulfillment_status);return e===3||e===4||Ba(t)&&Wa(t)&&!Ha()||Ea(t)?!1:e===1||e===2}function Ol(t){const e=Number(t.fulfillment_status);return e===3||e===4||e===6?!1:Number(t.prescription_audit_status)===0}function Al(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 Rl(t){if(Ea(t))return!1;const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const l=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return(l===1||l===2)&&i===0}function Tl(t){const e=Number(t.fulfillment_status);if(e===3||e===4||e===6)return!1;const l=Number(t.prescription_audit_status),i=Number(t.payment_slip_audit_status);return l===1&&(i===1||i===2)}function Ga(t){return Ea(t)?!1:Number(t.fulfillment_status)===1}function Ja(t){return Number(t.fulfillment_status)===2}function Zt(t){const e=Number(t.fulfillment_status);return e===5||e===6}function Xt(t){const e=Number(t.fulfillment_status);return(e===5||e===6)&&Number(t.payment_slip_audit_status)===1}function ea(t){const e=Number(t.fulfillment_status);return(e===5||e===6||e===3||e===9)&&Number(t.payment_slip_audit_status)===1}function El(t){return!0}function Qa(t){if(t.can_upload_pharmacy===!1)return!1;const e=Number(t.prescription_audit_status),l=Number(t.fulfillment_status),i=String(t.gancao_reciperl_order_no||"").trim(),d=String(t.ej_pharmacy_order_no||"").trim(),g=String(t.ej_pharmacy_status||"").toUpperCase()==="REJECTED"||String(t.ej_pharmacy_review_status||"").toUpperCase()==="REJECTED";return e===1&&(![3,4,8,9,10,11,12].includes(l)||l===9&&g)&&i===""&&(d===""||g)}function Ya(t){return{1:"待支付",2:"已支付",3:"已取消",4:"已退款",5:"待审核"}[Number(t)]??"—"}const xt=b(!0),Za=k(()=>{const t=h,e=["order_no","prescription_id","patient_keyword","express_keyword","doctor_id","assistant_dept_id","assistant_id"];let l=Re.value!=="all"?1:0;for(const i of e){const d=t[i];d!=null&&(typeof d=="string"&&d.trim()===""||Array.isArray(d)&&d.length===0||(l+=1))}return l});function Dl(t){return Zt(t)||Xt(t)||ea(t)||Qa(t)||Ga(t)}function Ul(t,e){t==="addPayOrder"?bs(e):t==="complete"?xs(e):t==="refund"?ys(e):t==="uploadPharmacy"?Vn(e):t==="withdraw"&&bn(e)}function ta(t){if(!(t!=null&&t.id))return!1;const e=Number(t.fulfillment_status);return e!==3&&e!==4}const Y=b(!1),aa=b(!1),c=b(null),$l=k(()=>{var t;return ji((t=c.value)==null?void 0:t.service_package,_t.value)}),kt=k(()=>{if(!c.value)return 0;const t=Number(c.value.fulfillment_status),e=Number(c.value.prescription_audit_status),l=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:l===2?2:3:t===2?3:e===0||e===2?1:l===0||l===2?2:3}),ht=k(()=>{var e;const t=Number((e=c.value)==null?void 0:e.prescription_audit_status);return t===1?"success":t===2?"error":kt.value===1?"process":"wait"}),wt=k(()=>{var e;const t=Number((e=c.value)==null?void 0:e.payment_slip_audit_status);return t===1?"success":t===2?"error":kt.value===2?"process":"wait"}),Te=k(()=>{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||kt.value===3?"process":"wait"}),sa=k(()=>{const t=c.value;if(!t)return[];const e=t.linked_pay_orders;return Array.isArray(e)?e:[]}),Xa=k(()=>{const t=c.value;if(!t)return 0;const e=t.agency_collect_amount;if(e!=null&&e!=="")return Number(e)||0;const l=Number(t.amount)||0,i=Number(t.linked_pay_paid_total)||0;return Math.round((l-i)*100)/100}),Ee=b([]);async function Fl(t,e,l){var i;if(!t){Ee.value=[];return}try{const d=await Ta({diagnosis_id:t,prescription_order_id:e}),g=(d==null?void 0:d.lists)??((i=d==null?void 0:d.data)==null?void 0:i.lists)??[],v=Array.isArray(g)?g.filter(x=>!l.includes(x.id)):[];Ee.value=v}catch{Ee.value=[]}}function es(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 S=k(()=>{var e;const t=(e=c.value)==null?void 0:e.prescription;return t&&typeof t=="object"?t:null}),ts=k(()=>{var t;return qs((t=S.value)==null?void 0:t.dietary_taboo)});function Vt(t){return t==null?"":String(t).replace(/\s/g,"").trim()}function St(t,e){const l=Vt(t),i=Vt(e);return!l||!i?!1:l!==i}const Be=k(()=>{var l,i;const t=(l=S.value)==null?void 0:l.phone,e=(i=c.value)==null?void 0:i.recipient_phone;return St(e,t)}),zl=k(()=>{var e;return Vt((e=S.value)==null?void 0:e.phone)||"—"}),jl=k(()=>{var e;return Vt((e=c.value)==null?void 0:e.recipient_phone)||"—"}),Z=k(()=>{var e;const t=(e=c.value)==null?void 0:e.linked_appointment;return t&&typeof t=="object"?t:null}),as=k(()=>{var e;const t=String(((e=Z.value)==null?void 0:e.resolved_from)||"");return t==="prescription"?"处方绑定挂号":t==="diagnosis"?"诊单关联挂号":""}),ss=k(()=>{var t;return es((t=S.value)==null?void 0:t.herbs)}),Ne=k(()=>Ms(S.value)),X=k(()=>{const t=S.value;if(!t||!Ms(t))return null;const e=t.aux_usage;return e==null||e===""||Array.isArray(e)&&e.length===0?null:Li(e,t.prescription_type||"浓缩水丸")}),Ll=k(()=>{var t;return((t=c.value)==null?void 0:t.prescription_detail_herbs_visible)!==!1}),Il=k(()=>{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(" "):"—"}),ls=k(()=>`${_.dose_unit||"剂"}数`);function ql(t){const e=Number(t);return e===1?"已通过":e===2?"已驳回":"待审核"}function Ml(t){const e=Number(t);return e===1?"success":e===2?"danger":"warning"}function ns(t){const e=Number(t);return e===2?"success":e===1?"warning":"info"}function rs(t){return t==null||t===""?"—":typeof t=="string"&&String(t).includes("-")?String(t):Se(t)}const We=b("auto"),Nt=b(!1),G=b(null),Ke=b("");let la=0;function Hl(){la+=1,G.value=null}function na(t){var e,l;return t.requestSeq!==la||Number((e=c.value)==null?void 0:e.id)!==t.orderId?!1:String(((l=c.value)==null?void 0:l.tracking_number)||"").trim()===t.trackingNumber}function Bl(t,e,l){const i=(t==null?void 0:t.data)??t;if(!i||typeof i!="object")return null;const d=i,g=String(d.tracking_number||"").trim();if(g&&g!==e)return null;const v=Number(d.order_id);return v>0&&v!==l?null:d}const De=b([]),Ge=b(!1),ra=b(!1),Ct=b(),fe=_e({id:0,amount:void 0}),Wl={amount:[{required:!0,message:"请输入订单金额",trigger:"blur"},{validator:(t,e,l)=>{const i=Number(e);if(!Number.isFinite(i)||i<0){l(new Error("订单金额不能为负数"));return}l()},trigger:"blur"}]};function Kl(){const t=we.perms||[];return t.includes("*")||t.includes("tcm.prescriptionOrder/logs")}async function Ce(t){if(!Kl()){De.value=[];return}try{const e=await Ui({id:t});De.value=(e==null?void 0:e.data)??e??[]}catch{De.value=[]}}function Gl(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:"甘草下单",ej_pharmacy_submit:"洛阳药房下单",ej_pharmacy_callback:"洛阳药房状态",patch_rx_patient:"处方患者信息",update_amount:"修改订单金额",complete:"完成订单",refund:"退款"}[t]||t}const ia=k(()=>{var l;const t=String(((l=c.value)==null?void 0:l.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}`}}),is=k(()=>{const t=G.value;return!t||!Array.isArray(t.traces)?[]:t.traces});function Jl(t){const e=String(t||"").toLowerCase();return e==="sf"?"顺丰速运":e==="jd"?"京东快递":e==="jt"||e==="jtexpress"?"极兔速递":"自动识别"}async function oa(){var d,g;const t=Number((d=c.value)==null?void 0:d.id),e=String(((g=c.value)==null?void 0:g.tracking_number)||"").trim();if(!t||!e)return;const i={requestSeq:++la,orderId:t,trackingNumber:e};Nt.value=!0;try{const v=String(Ke.value||"").replace(/\D/g,""),x={id:t,express_company:We.value};v.length>=4&&(x.phone_tail=v);const $=await gi(x);if(!na(i))return;G.value=Bl($,e,t)}catch{if(!na(i))return;G.value=null}finally{na(i)&&(Nt.value=!1)}}const Je=b(!1),ua=b(!1),da=b(),ie=_e({patient_name:"",phone:""}),Ql={patient_name:[{required:!0,message:"请输入患者姓名",trigger:"blur"}],phone:[{required:!0,message:"请输入手机号",trigger:"blur"}]},Qe=b(!1),pa=b(!1),ca=b(),D=_e({times_per_day:3,usage_days:7,aux_times_per_day:3,aux_usage_days:7,medication_days:void 0}),Yl=k(()=>{const t={times_per_day:[{required:!0,message:"请填写主方每天次数",trigger:"change"}],usage_days:[{required:!0,message:"请填写主方开立天数",trigger:"change"}],medication_days:[{required:!0,message:"请填写订单服用天数",trigger:"change"}]};return Ne.value&&(t.aux_times_per_day=[{required:!0,message:"请填写辅方每天次数",trigger:"change"}],t.aux_usage_days=[{required:!0,message:"请填写辅方开立天数",trigger:"change"}]),t});function Zl(){const t=S.value,e=c.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){O.msgWarning("无处方数据");return}const l=X.value;D.times_per_day=Number(t.times_per_day)>0?Number(t.times_per_day):3,D.usage_days=Number(t.usage_days)>0?Number(t.usage_days):7,D.aux_times_per_day=l&&Number(l.times_per_day)>0?Number(l.times_per_day):3,D.aux_usage_days=l&&Number(l.usage_days)>0?Number(l.usage_days):7;const i=Number(e.medication_days);D.medication_days=i>0?i:Number(t.usage_days)>0?Number(t.usage_days):7,Qe.value=!0,ct(()=>{var d;return(d=ca.value)==null?void 0:d.clearValidate()})}function Xl(){D.times_per_day=3,D.usage_days=7,D.aux_times_per_day=3,D.aux_usage_days=7,D.medication_days=void 0}async function en(){var l;const t=ca.value;if(!t)return;try{await t.validate()}catch{return}const e=(l=c.value)==null?void 0:l.id;if(e){pa.value=!0;try{const i={id:e,times_per_day:Number(D.times_per_day),usage_days:Number(D.usage_days),medication_days:Number(D.medication_days)};Ne.value&&(i.aux_times_per_day=Number(D.aux_times_per_day),i.aux_usage_days=Number(D.aux_usage_days)),await yi(i),O.msgSuccess("保存成功"),Qe.value=!1,await ma(),await Ce(e),M()}catch{}finally{pa.value=!1}}}function tn(){const t=S.value,e=c.value;if(!t||!(e!=null&&e.id)||!e.prescription_id){O.msgWarning("无处方数据");return}ie.patient_name=String(t.patient_name??"").trim(),ie.phone=String(t.phone??"").trim(),Je.value=!0,ct(()=>{var l;return(l=da.value)==null?void 0:l.clearValidate()})}function an(){ie.patient_name="",ie.phone=""}function sn(){var t;fe.id=0,fe.amount=void 0,(t=Ct.value)==null||t.clearValidate()}function ln(){const t=c.value;if(!ta(t)){O.msgWarning("当前订单状态不允许修改金额");return}fe.id=Number(t==null?void 0:t.id)||0;const e=Number(t==null?void 0:t.amount);fe.amount=Number.isFinite(e)?e:void 0,Ge.value=!0,ct(()=>{var l;return(l=Ct.value)==null?void 0:l.clearValidate()})}async function ma(){var e;const t=(e=c.value)==null?void 0:e.id;if(t)try{const l=await J({id:t}),i=(l==null?void 0:l.data)??l??null;i&&(c.value=i)}catch{}}async function nn(){var l;const t=da.value;if(!t)return;try{await t.validate()}catch{return}const e=(l=c.value)==null?void 0:l.id;if(e){ua.value=!0;try{await bi({id:e,patient_name:ie.patient_name.trim(),phone:ie.phone.trim()}),Je.value=!1,await ma(),await Ce(e)}catch(i){console.error(i)}finally{ua.value=!1}}}async function os(){const t=Ct.value;if(!t)return;try{await t.validate()}catch{return}if(!ta(c.value)){O.msgWarning("当前订单状态不允许修改金额");return}const e=fe.id;ra.value=!0;try{await xi({id:e,amount:Number(fe.amount)}),O.msgSuccess("修改成功"),Ge.value=!1,await ma(),await Ce(e),M()}catch{}finally{ra.value=!1}}async function _a(t){c.value=null,Ee.value=[],Hl(),We.value="auto",Ke.value="",De.value=[],Y.value=!0,aa.value=!0;try{const e=await J({id:t}),l=(e==null?void 0:e.data)??e??null;if(c.value=l,l){We.value=String(l.express_company||"auto")||"auto";const i=String(l.recipient_phone||"").replace(/\D/g,"");Ke.value=i.length>=4?i:"",String(l.tracking_number||"").trim()&&oa(),Ce(t);const d=l.diagnosis_id,g=l.pay_order_ids||[];d&&Fl(d,t,g)}}catch(e){O.msgError((e==null?void 0:e.message)||"加载失败"),Y.value=!1}finally{aa.value=!1}}const Pe=b(!1),fa=b(!1),va=b(!1),q=b(0),oe=b(null),rn=k(()=>["请核对收货信息,便于发货与物流联系。","按需填写服务与物流,并选择本诊单下需要关联的支付单。","确认费用类别与订单金额;保存前请对照定金门槛是否已满足。"][q.value]??""),us=k(()=>{const t=oe.value,e=es(t==null?void 0:t.herbs);if(!e.length)return"暂无药材明细";const l=e.map(i=>`${i.name} ${i.dosage}g`).join("、");return l.length>120?`${l.slice(0,120)}…`:l}),on=["recipient_name","recipient_phone","region","shipping_address"],Ue=b(),_=_e({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:""}),un=k(()=>Ii(_t.value,_.service_package)),ds=k(()=>{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(l=>l.trim()).filter(Boolean):e.split("/").map(l=>l.trim()).filter(Boolean)).filter(e=>e.length>0):[]}),Ye=b([]),ga=b(!1),H=b(0);function Pt(t){return{1:"挂号费",2:"问诊费",3:"药品费用",4:"首付",5:"尾款",6:"其他"}[Number(t)]||"未知"}function $e(t){const e=String((t==null?void 0:t.create_type)||"");if(e==="wechat_work")return"企业微信对外收款";if(e==="fubei")return"付呗";if(e==="express_cod")return"快递代收";const l=String((t==null?void 0:t.payment_method)||""),i={alipay:"支付宝",wechat:"微信",wechat_work:"企业微信",fubei:"付呗",express_cod:"快递代收",manual:"手动确认到账"};return l&&i[l]?i[l]:"普通订单"}const ya=k(()=>{const t=new Set(_.pay_order_ids.map(l=>Number(l)));let e=0;for(const l of Ye.value)t.has(Number(l.id))&&(e+=Number(l.amount)||0);return Math.round(e*100)/100}),dn=k(()=>{const t=H.value;return t>0?Math.round(t*100)/100:0});async function pn(t,e){var l,i;if(!t){Ye.value=[];return}try{ga.value=!0;const d=await Ta({diagnosis_id:t,...e?{prescription_order_id:e}:{}}),g=(d==null?void 0:d.lists)??((l=d==null?void 0:d.data)==null?void 0:l.lists)??[];Ye.value=Array.isArray(g)?g:[];const v=Number((d==null?void 0:d.deposit_min_amount)??((i=d==null?void 0:d.data)==null?void 0:i.deposit_min_amount));!Number.isNaN(v)&&v>=0&&(H.value=v)}catch{Ye.value=[]}finally{ga.value=!1}}const cn=k(()=>{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,l,i)=>{const d=H.value,g=Number(l);if(d>0&&(!Number.isFinite(g)||g
接诊诊单:${d[0]}
金额:${Number(d[1]).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`:""}},grid:{left:48,right:24,top:28,bottom:32,containLabel:!0},xAxis:{type:"value",name:"接诊诊单",nameLocation:"middle",nameGap:28,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},yAxis:{type:"value",name:"成交金额",nameLocation:"middle",nameGap:40,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},series:[{type:"scatter",data:n}]}}),It=C(()=>B.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),Ha=C(()=>{const t=[...B.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,L)=>Number(L.deal_amount)-Number(p.deal_amount)).slice(0,5);if(t.length<2)return{radar:{indicator:[]},series:[{type:"radar",data:[]}]};const e=p=>{const L=String(p.doctor_name||"—");return L.length>7?`${L.slice(0,7)}…`:L},n=p=>Number(p.system_prescription_count??0)+Number(p.manual_prescription_count??0),s=p=>{const L=Number(p.avg_deal_amount);if(Number.isFinite(L)&&L>0)return L;const Y=Number(p.deal_order_count);return Y>0?Number(p.deal_amount)/Y:0},d=Math.max(...t.map(p=>Number(p.deal_amount)),1e-9),g=Math.max(...t.map(p=>Number(p.deal_order_count)),1e-9),b=Math.max(...t.map(n),1e-9),w=Math.max(...t.map(p=>Number(p.appointment_completed??0)),1e-9),I=Math.max(...t.map(s),1e-9),E=t.map(p=>({name:e(p),value:[Number(p.deal_amount)/d*100,Number(p.deal_order_count)/g*100,n(p)/b*100,Number(p.appointment_completed??0)/w*100,s(p)/I*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:E,emphasis:{lineStyle:{width:3}}}]}}),Wa=C(()=>{const t=[...B.value].filter(s=>Number(s.deal_amount??0)>0).sort((s,d)=>Number(d.deal_amount)-Number(s.deal_amount)).slice(0,20),e=t.map(s=>{const d=String(s.doctor_name||"—");return d.length>10?`${d.slice(0,10)}…`:d}),n=t.map(s=>Number(s.deal_amount??0));return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${s.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`},grid:{left:8,right:16,top:28,bottom:8,containLabel:!0},xAxis:{type:"value",axisLabel:{fontSize:11},splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:[...e].reverse(),axisLabel:{fontSize:11}},series:[{name:"成交金额",type:"bar",data:[...n].reverse(),barMaxWidth:22,itemStyle:{borderRadius:[0,6,6,0]}}]}}),qa=C(()=>{const t=[...B.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 Ga(){var e,n;const t={};if(x.value&&(t.channel_code=x.value),z.value.length>0&&(t.dept_ids=z.value.join(",")),(e=H.value)!=null&&e[0]&&((n=H.value)!=null&&n[1]))t.start_date=H.value[0],t.end_date=H.value[1];else{const s=gt(new Date);t.start_date=s,t.end_date=s}return t}function ta(t){return Number(t??0).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function aa(t){if(t==null||t==="")return"—";const e=Number(t);return Number.isFinite(e)?`${e.toFixed(2)}%`:"—"}function Ja(t){const e=pe.value,n=[];return t.columns.forEach((s,d)=>{if(d===0){n[d]="合计";return}switch(s.property){case"system_prescription_count":n[d]=String(e.system_prescription_count??0);break;case"manual_prescription_count":n[d]=String(e.manual_prescription_count??0);break;case"deal_amount":n[d]=`¥ ${ta(e.deal_amount)}`;break;case"deal_order_count":n[d]=String(e.deal_order_count??0);break;case"appointment_total":n[d]=String(e.appointment_total??0);break;case"appointment_completed":n[d]=String(e.appointment_completed??0);break;case"appointment_missed":n[d]=String(e.appointment_missed??0);break;case"appointment_cancelled":n[d]=String(e.appointment_cancelled??0);break;case"appointment_conversion_rate":n[d]=aa(e.appointment_conversion_rate);break;default:n[d]=""}}),n}async function Mt(){if(!W.value){B.value=[],pe.value={},Be.value=null;return}Ve.value=!0;try{const t=await Pl(Ga());B.value=(t==null?void 0:t.rows)??[],pe.value=(t==null?void 0:t.total)??{},t!=null&&t.start_date&&(t!=null&&t.end_date)&&(Be.value={start:t.start_date,end:t.end_date})}catch(t){if(te.isCancel(t))return;B.value=[],pe.value={},Be.value=null}finally{Ve.value=!1}}const se=v(!1),we=v(!1),et=v(""),tt=v(""),ke=v([]),_t=v(0),Z=v(1),pt=v(15),X=v("channel"),q=v(null),at=v(null),ie=v(null),na=C(()=>{const t=ie.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}),la=C(()=>{const t=ie.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}),Ka=C(()=>ke.value.reduce((t,e)=>t+Number(e.amount??0),0)),oa=C(()=>!!x.value&&se.value),Ot=C(()=>{var e;const t=x.value;if(!t)return"";for(const n of st.value){const s=(e=n.channels)==null?void 0:e.find(d=>d.channel_code===t);if(s!=null&&s.channel_name)return String(s.channel_name)}return t}),Xa=C(()=>{const t=q.value;return t&&X.value==="total"?Number.isFinite(t.channelAmount)?t.channelAmount:null:na.value}),Ye=v(null),mt=v(!1);function Za(){const t=new Date;return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`}function Qa(t){const[e,n]=t.split("-").map(Number);return new Date(e,n,0).getDate()}async function en(){var t,e,n,s;if(!Ze.value){Ye.value=null;return}mt.value=!0,Ye.value=null;try{let d=function(y,$=0){const A=[];for(const R of y??[])A.push({node:R,depth:$}),A.push(...d(R.children??[],$+1));return A},g=function(y){const $=Ce.value.find(J=>Number(J.id)===y);if(!$)return"";const A=Number($.pid);if(!A)return"";const R=Ce.value.find(J=>Number(J.id)===A);return R!=null&&R.name?String(R.name):""},b=function(y){const $=[],A=[y];for(;A.length;){const R=A.shift();for(const J of Ce.value)Number(J.pid)===R&&($.push(J.id),A.push(J.id))}return $},w=function(y,$){const A=new Map;for(const R of(y==null?void 0:y.rows)??[])A.set(Number(R.dept_id),Number(R[$]??0));return A};const I=Za(),E=await Yl({year_month:I}),p=(E==null?void 0:E.rows)??[];if(!p.length)return;const Y=d(p).filter(y=>y.depth>=1&&Number(y.node.target_amount)>0).map(y=>y.node);if(!Y.length)return;const P=new Set,me=Y.map(y=>{const $=Number(y.dept_id),A=b($),R=A.length?A:[$];return R.forEach(J=>P.add(J)),{dept_id:$,dept_name:String(y.dept_name),target_amount:Number(y.target_amount),totalIds:R}});if(!P.size)return;const He=st.value.flatMap(y=>y.channels),G=(t=He.find(y=>y.channel_name.includes("自媒体1")))==null?void 0:t.channel_code,Se=(e=He.find(y=>y.channel_name.includes("自媒体3")))==null?void 0:e.channel_code,Ne=(n=He.find(y=>y.channel_name.includes("自媒体4")))==null?void 0:n.channel_code,We=Array.from(P).join(","),[ve,F,l,h]=await Promise.all([lt({dept_ids:We}),G?lt({dept_ids:We,channel_code:G}):Promise.resolve(null),Se?lt({dept_ids:We,channel_code:Se}):Promise.resolve(null),Ne?lt({dept_ids:We,channel_code:Ne}):Promise.resolve(null)]),m=y=>{var $;return((y==null?void 0:y.tables)??[]).find(A=>String(A.label).includes("月"))??(($=y==null?void 0:y.tables)==null?void 0:$[0])},T=y=>{var $,A;return((y==null?void 0:y.tables)??[]).find(R=>String(R.label).includes("昨"))??((A=y==null?void 0:y.tables)==null?void 0:A[(($=y==null?void 0:y.tables)==null?void 0:$.length)-1])},Ca=w(m(ve),"performance_amount"),Qn=w(T(ve),"performance_amount"),Da=F?w(m(F),"completed_performance_amount"):null,La=l?w(m(l),"completed_performance_amount"):null,za=h?w(m(h),"completed_performance_amount"):null,nt=(y,$)=>$.reduce((A,R)=>A+(y.get(R)??0),0),Ht=new Date,el=Qa(I),tl=Ht.getDate(),al=me.map(y=>{const $=nt(Ca,y.totalIds),A=nt(Qn,y.totalIds),R=Da?nt(Da,y.totalIds):null,J=La?nt(La,y.totalIds):null,$a=za?nt(za,y.totalIds):null,Wt=J!==null||$a!==null?(J??0)+($a??0):null,sl=Math.round(y.target_amount*(tl/el)*100)/100,il=y.target_amount>0?$/y.target_amount:null;return{dept_id:y.dept_id,dept_name:y.dept_name,parent_dept_name:g(y.dept_id),target_amount:y.target_amount,total_amount:$,yesterday_amount:A,douyin_amount:R&&R>0?R:null,tuifen_amount:Wt&&Wt>0?Wt:null,target_progress:sl,completion_rate:il}}),nl=((s=p[0])==null?void 0:s.dept_name)??"",ll=Ht.getMonth()+1,ol=Ht.getDate();Ye.value={title:`${nl}诊金-${ll}.${ol}`,sections:al}}catch{}finally{mt.value=!1}}const tn=C(()=>{var e;const t=(e=S.value)==null?void 0:e.leaderboards;return t?t.filter(n=>n.rows.length>0).length:0}),sa=[{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 an(t){const e=t.value();H.value=[gt(e[0]),gt(e[1])],Ue()}async function nn(){ht.value=!0;try{const t=await Tl();Ce.value=(t||[]).sort((e,n)=>{const s=e.name.includes("中心")?-1:1,d=n.name.includes("中心")?-1:1;return s!==d?s-d:e.id-n.id})}catch{}finally{ht.value=!1}}async function ln(){wt.value=!0;try{const t=await Il(),e=(t==null?void 0:t.groups)||[];st.value=e}catch{}finally{wt.value=!1}}async function ia(t){if(!oe.value){S.value=null;return}de.value=!0;try{const e={start_date:t.start,end_date:t.end};z.value.length>0&&(e.dept_ids=z.value.join(",")),x.value&&(e.channel_code=x.value);const n=await El(e);S.value={start_date:n.start_date,end_date:n.end_date,channel_code:n.channel_code||"",channel_name:n.channel_name||"",channel_filter_note:n.channel_filter_note||"",range_note:n.range_note||"",leaderboards:n.leaderboards||[]}}catch(e){if(te.isCancel(e))return;S.value=null}finally{de.value=!1}}async function Ue(){if(ne.value=!0,S.value=null,!Fe.value){re.value=[],ne.value=!1,W.value?Mt():(B.value=[],pe.value={},Be.value=null);return}try{const t={};if(z.value.length>0&&(t.dept_ids=z.value.join(",")),x.value&&(t.channel_code=x.value),H.value&&H.value[0]&&H.value[1]){const[s,d]=H.value,g={...t,start_date:s,end_date:d},b=await Ml(g);re.value=[{label:s===d?s:`${s} ~ ${d}`,start_date:b.start_date,end_date:b.end_date,channel_code:b.channel_code||"",channel_name:b.channel_name||"",channel_group:b.channel_group||"",channel_filter_note:b.channel_filter_note||"",rows:b.rows||[],total:b.total}],await ia({start:b.start_date,end:b.end_date});return}const e=await lt(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=gt(new Date);await ia({start:n,end:n})}catch(t){if(te.isCancel(t))return;const e=t;ae.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{ne.value=!1,W.value?Mt():(B.value=[],pe.value={},Be.value=null)}}function on(){z.value=[],H.value=null,x.value="",Ue()}function sn(t){return t<=0?!1:Ce.value.some(e=>Number(e.pid)===t)}function rn(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function vt(t){return t==null||!Number.isFinite(Number(t))?"—":Number(t).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function dn(t){return(Z.value-1)*pt.value+t+1}function un(t){const e=(t==null?void 0:t.appointment_date)!=null&&String(t.appointment_date)!==""?String(t.appointment_date):"",n=(t==null?void 0:t.period)!=null&&String(t.period)!==""?String(t.period):"",s=(t==null?void 0:t.appointment_time)!=null&&String(t.appointment_time)!==""?String(t.appointment_time):"",d=[n,s].filter(Boolean).join(" ");return e&&d?`${e} ${d}`:e||d||"—"}function ra(t){if(!t)return"";const e=t.channel_dict_value;if(e!=null&&e!==""){const d=Number(e);if(Number.isFinite(d))return String(Math.trunc(d))}const n=t.channel_source;if(n==null)return"";const s=String(n).trim();return s===""||!/^\d+$/.test(s)?"":String(parseInt(s,10))}function cn(t){if(t==null||t==="")return"—";const e=Number(t);if(Number.isFinite(e)&&e>=1e9&&e<1e15){const s=e<1e12?e*1e3:e,d=new Date(s);if(!Number.isNaN(d.getTime())){const g=d.getFullYear(),b=String(d.getMonth()+1).padStart(2,"0"),w=String(d.getDate()).padStart(2,"0"),I=String(d.getHours()).padStart(2,"0"),E=String(d.getMinutes()).padStart(2,"0");return`${g}-${b}-${w} ${I}:${E}`}}const n=String(t);return n.length>=16?n.slice(0,16):n}function da(){const t=at.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,z.value.length>0&&(e.dept_ids=z.value.join(",")),t.yejiTableRowDeptIds&&t.yejiTableRowDeptIds.length>0&&(e.yeji_table_row_dept_ids=t.yejiTableRowDeptIds.join(","))):(e.assistant_id=t.assistantId,t.erCenterRevisitSlot!==void 0&&(e.yeji_er_center_revisit_only=1,e.yeji_er_center_revisit_slot=t.erCenterRevisitSlot)),x.value&&se.value&&X.value==="channel"&&(e.channel_code=x.value),e}async function _n(){const t=da();if(!t||!x.value)return;const e={...t,channel_code:x.value,page_no:1,page_size:1};try{const n=await Aa(e),s=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null;s&&s.stats_yeji_drawer_total_performance_amount!=null&&(q.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 je(){const t=da();if(t){x.value&&X.value==="total"&&(q.value=null),we.value=!0;try{const e={...t,page_no:Z.value,page_size:pt.value},n=await Aa(e);ke.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],_t.value=Number((n==null?void 0:n.count)??0),ie.value=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null,x.value&&X.value==="channel"&&ie.value&&ie.value.stats_yeji_drawer_total_performance_amount!=null&&(q.value={totalAmount:Number(ie.value.stats_yeji_drawer_total_performance_amount),totalOrderCount:Number(ie.value.stats_yeji_drawer_total_performance_order_count??0),channelAmount:Number(ie.value.stats_order_amount_performance??0),channelOrderCount:Number((n==null?void 0:n.count)??0)}),x.value&&se.value&&X.value==="total"&&await _n()}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载业务订单失败"),ke.value=[],_t.value=0,ie.value=null}finally{we.value=!1}}}function ua(t,e,n){const s=!!(x.value&&t.channel_name);X.value=s?(n==null?void 0:n.listTab)??"channel":"channel",q.value=null,at.value={mode:"dept",deptId:e.dept_id,deptName:e.dept_name,start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(d=>d.dept_id).filter(d=>typeof d=="number"&&d>0)},et.value=`业务订单 · ${e.dept_name}`,tt.value=`创建时间:${t.start_date} ~ ${t.end_date} · 与「合计业绩 / 接诊诊单」同口径:订单创建人人事部门 ∈ 本部门子树 · 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function pn(t,e,n){const s=!!(x.value&&t.channel_name);X.value=s?n:"channel",q.value=null,at.value={mode:"dept",deptId:e,deptName:"当前展示合计",start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(d=>d.dept_id).filter(d=>typeof d=="number"&&d>0)},et.value="业务订单 · 当前展示合计",tt.value=`创建时间:${t.start_date} ~ ${t.end_date} · 已选展示部门 1 个根节点(含其下全部展示行)· 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function Et(t,e,n){return!(xe(e)||e.dept_id<=0||n==="channel"&&!t.channel_name)}function Ft(t,e){return!(z.value.length!==1||e==="channel"&&!t.channel_name)}function ca(t,e,n){if(!Et(t,e,n))return;ua(t,e,{listTab:n==="total"?"total":"channel"})}function _a(t,e){if(!Ft(t,e))return;const n=z.value[0];if(!n)return;pn(t,n,e==="total"?"total":"channel")}function mn(t,e,n){X.value="channel",q.value=null,at.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n},et.value=`业务订单 · ${t.name}`,tt.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与排行榜诊金同口径)· 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function Vt(t,e,n,s){X.value="channel",q.value=null,at.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n,erCenterRevisitSlot:s};const d=s===0?"复诊合计":it(s);et.value=`业务订单 · ${t.name} · ${d}`,tt.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与部门表 / 排行榜复诊同口径)· 仅二中心复诊口径 · ${d} · 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function vn(t){if(!t||t.admin_id<=0||!S.value||Number(t.revisit_count??0)<=0)return;const{start_date:e,end_date:n}=S.value;Vt({admin_id:t.admin_id,name:t.name},e,n,0)}function fn(t,e){if(!t||t.admin_id<=0||!S.value||le(t,e)<=0)return;const{start_date:n,end_date:s}=S.value;Vt({admin_id:t.admin_id,name:t.name},n,s,e)}function yn(){Z.value=1,je()}function gn(t){Z.value=t,je()}function bn(t){pt.value=t,Z.value=1,je()}function xe(t){return t.dept_id<=0&&t.dept_name==="未归属中心"}function hn(t,e){e.dept_id<=0||xe(e)||Number(e.revisit_count??0)<=0||ma(t,e,0)}function wn(t,e,n){e.dept_id<=0||xe(e)||le(e,n)<=0||ma(t,e,n)}function pa(t){const e=Xt.value;!e||Number(t.order_count)<=0||Vt({admin_id:t.admin_id,name:t.name},e.start,e.end,e.revisitSlot)}async function ma(t,e,n){const s=n===0?"复诊合计":it(n);Kt.value=`${e.dept_name} · ${s} · ${t.start_date} ~ ${t.end_date}`,Xt.value={start:t.start_date,end:t.end_date,revisitSlot:n},Ge.value="",$e.value=[],St.value=!0,ze.value=!0;try{const d={start_date:t.start_date,end_date:t.end_date,dept_id:e.dept_id,revisit_slot:n};z.value.length>0&&(d.dept_ids=z.value.join(",")),x.value&&(d.channel_code=x.value);const g=await Ol(d);$e.value=Array.isArray(g==null?void 0:g.rows)?g.rows:[],Ge.value=typeof(g==null?void 0:g.note)=="string"?g.note:""}catch(d){if(te.isCancel(d))return;const g=d;ae.error((g==null?void 0:g.msg)||(g==null?void 0:g.message)||"加载复诊拆解失败"),$e.value=[],Ge.value=""}finally{ze.value=!1}}function va(t){const e=[`区间:${t.start_date} ~ ${t.end_date}`];return x.value&&e.push(`渠道:${t.channel_name||x.value}`),z.value.length>0&&e.push(`已选展示部门 ${z.value.length} 个`),e.join(" · ")}async function kn(t){Jt.value=va(t),qe.value="",Le.value=[],xt.value=!0,De.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date};z.value.length>0&&(e.dept_ids=z.value.join(",")),x.value&&(e.channel_code=x.value);const n=await Fl(e);Le.value=Array.isArray(n==null?void 0:n.rows)?n.rows:[],qe.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载未归属拆解失败"),Le.value=[],qe.value=""}finally{De.value=!1}}function jn(t,e,n){n.dept_id<=0||Number(n.lead_count)<=0||(t.stopPropagation(),Pn(e,n))}function fa(t){return t.dept_id>0&&Number(t.assign_count??0)>0}function xn(t,e,n){fa(n)&&(t.stopPropagation(),Cn(e,n))}function Sn(t){return(he.value-1)*Ee.value+t+1}function Nn(t,e){const n=$t.value;if(!n)return null;const s={start_date:n.start_date,end_date:n.end_date,page:t,page_size:e};return n.mode==="dept"?s.dept_id=n.dept_id:s.assistant_id=n.assistant_id,z.value.length>0&&(s.dept_ids=z.value.join(",")),x.value&&(s.channel_code=x.value),s}async function ft(){const t=Nn(he.value,Ee.value);if(t){ge.value=!0;try{const e=await Vl(t);be.value=Array.isArray(e==null?void 0:e.lists)?e.lists:[],Oe.value=Number((e==null?void 0:e.count)??0),Me.value=typeof(e==null?void 0:e.note)=="string"?e.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载被指派明细失败"),be.value=[],Oe.value=0,Me.value=""}finally{ge.value=!1}}}async function Cn(t,e){$t.value={mode:"dept",dept_id:e.dept_id,dept_name:e.dept_name,start_date:t.start_date,end_date:t.end_date},zt.value=`${e.dept_name} · ${t.start_date} ~ ${t.end_date}`,Me.value="",be.value=[],Oe.value=0,he.value=1,Ee.value=20,ut.value=!0,await ft()}function Dn(t){if(!t||t.admin_id<=0||!S.value||Number(t.assign_count??0)<=0)return;const e=S.value;$t.value={mode:"assistant",assistant_id:t.admin_id,name:t.name,start_date:e.start_date,end_date:e.end_date},zt.value=`${t.name} · 医助 · ${e.start_date} ~ ${e.end_date}`,Me.value="",be.value=[],Oe.value=0,he.value=1,Ee.value=20,ut.value=!0,ft()}function Ln(t){he.value=t,ft()}function zn(t){Ee.value=t,he.value=1,ft()}const ya=[{key:"event_time_text",label:"进线时间"},{key:"reception_admin_name",label:"接待"},{key:"external_contact_name",label:"客户"},{key:"external_userid",label:"外部联系人ID"},{key:"user_id",label:"企微成员ID"},{key:"state",label:"渠道参数"}];function Bt(t,e,n){const{tb:s,row:d}=t,g={start_date:s.start_date,end_date:s.end_date,dept_id:d.dept_id,page:e,page_size:n};return z.value.length>0&&(g.dept_ids=z.value.join(",")),x.value&&(g.channel_code=x.value),g}function ga(t){const e=t==null?"":String(t);return/[",\n\r]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function $n(t){const e=ya.map(s=>ga(s.label)).join(","),n=t.map(s=>ya.map(d=>ga(s[d.key])).join(",")).join(`
`);return`\uFEFF${e}
${n}`}function An(t,e){const n=new Blob([e],{type:"text/csv;charset=utf-8;"}),s=URL.createObjectURL(n),d=document.createElement("a");d.href=s,d.download=t,d.click(),URL.revokeObjectURL(s)}function Rn(t){const{tb:e,row:n}=t;return`进线数据明细_${(n.dept_name||`dept${n.dept_id}`).replace(/[\\/:*?"<>|]/g,"_")}_${e.start_date}_${e.end_date}.csv`}async function Yt(){const t=Ct.value;if(t){ue.value=!0;try{const e=await qt(Bt(t,Xe.value,rt.value));Ae.value=Array.isArray(e==null?void 0:e.lists)?e.lists:[],Re.value=Number((e==null?void 0:e.count)??0),Ke.value=typeof(e==null?void 0:e.note)=="string"?e.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载进线明细失败"),Ae.value=[],Re.value=0,Ke.value=""}finally{ue.value=!1}}}async function Pn(t,e){Ct.value={tb:t,row:e},Zt.value=`${e.dept_name} · ${va(t)}`,Ke.value="",Ae.value=[],Re.value=0,Xe.value=1,rt.value=20,Nt.value=!0,await Yt()}function Tn(t){Xe.value=t,Yt()}function In(t){rt.value=t,Xe.value=1,Yt()}async function Mn(){const t=Ct.value;if(!(!t||Je.value)){Je.value=!0;try{const n=await qt(Bt(t,1,100)),s=Number((n==null?void 0:n.count)??0);if(s<=0){ae.warning("暂无进线明细可导出");return}const d=Array.isArray(n==null?void 0:n.lists)?[...n.lists]:[],g=Math.ceil(s/100);for(let b=2;b<=g;b++){const w=await qt(Bt(t,b,100)),I=Array.isArray(w==null?void 0:w.lists)?w.lists:[];d.push(...I)}An(Rn(t),$n(d)),ae.success(`已导出 ${d.length} 条进线明细`)}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"导出进线明细失败")}finally{Je.value=!1}}}function On(t){return(ye.value-1)*Ie.value+t+1}function ba(t){return xe(t)?!0:t.dept_id>0}async function yt(){const t=Lt.value;if(t){fe.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date,page:ye.value,page_size:Ie.value};t.mode==="dept"?e.dept_id=t.dept_id:e.assistant_id=t.assistant_id,z.value.length>0&&(e.dept_ids=z.value.join(",")),x.value&&(e.channel_code=x.value);const n=await Bl(e);ce.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],Te.value=Number((n==null?void 0:n.count)??0),Pe.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载挂号明细失败"),ce.value=[],Te.value=0,Pe.value=""}finally{fe.value=!1}}}function En(t){if(!t||t.admin_id<=0||!S.value||Number(t.appointment_count??0)<=0)return;const e=S.value;Lt.value={mode:"assistant",assistant_id:t.admin_id,name:t.name,start_date:e.start_date,end_date:e.end_date},Dt.value=`${t.name} · 医助 · ${e.start_date} ~ ${e.end_date}`,Pe.value="",ce.value=[],Te.value=0,ye.value=1,Ie.value=20,dt.value=!0,yt()}function Fn(t,e){!ba(e)||Number(e.appointment_booked_count??0)<=0||(Lt.value={mode:"dept",dept_id:e.dept_id,dept_name:e.dept_name,start_date:t.start_date,end_date:t.end_date},Dt.value=`${e.dept_name} · ${t.start_date} ~ ${t.end_date}`,Pe.value="",ce.value=[],Te.value=0,ye.value=1,Ie.value=20,dt.value=!0,yt())}function Vn(t){ye.value=t,yt()}function Bn(t){Ie.value=t,ye.value=1,yt()}function Yn(t,e){if(xe(e)){kn(t);return}if(!(e.dept_id<=0)){if(sn(e.dept_id)){z.value=[e.dept_id],Ue();return}ua(t,e)}}function Un(t){if(!t||t.admin_id<=0||!S.value)return;const{start_date:e,end_date:n}=S.value;mn(t,e,n)}function ha(t){const e=t.channel_name?` · ${t.channel_name}`:"";return`${t.label}${e}`}function Hn(t){const e=t.rows.filter(b=>b.dept_id>0),n=e.map(b=>b.dept_name.length>10?`${b.dept_name.slice(0,10)}…`:b.dept_name),s=["#64748b","#38bdf8","#6366f1"],d=[{name:"进线",type:"bar",data:e.map(b=>b.lead_count),yAxisIndex:0,barMaxWidth:16},{name:"接诊",type:"bar",data:e.map(b=>b.consult_count),yAxisIndex:0,barMaxWidth:16},{name:"成交单",type:"bar",data:e.map(b=>b.deal_order_count),yAxisIndex:0,barMaxWidth:16},{name:"合计业绩",type:"bar",data:e.map(b=>b.performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#d97706"}}];t.channel_name&&d.push({name:`${t.channel_name}业绩`,type:"bar",data:e.map(b=>b.completed_performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#0d9488"}});const g=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:g?56:28,containLabel:!1},dataZoom:g?[{type:"slider",bottom:4,start:0,end:Math.min(100,Math.ceil(12/Math.max(e.length,1)*100))}]:[],xAxis:{type:"category",data:n,axisLabel:{rotate:n.length>8?28:0,fontSize:10}},yAxis:[{type:"value",name:"数量",splitLine:{lineStyle:{type:"dashed",opacity:.55}}},{type:"value",name:"金额",splitLine:{show:!1}}],series:d}}function Wn(t,e){const n=[...t.rows].sort((s,d)=>Number(d.fee_amount)-Number(s.fee_amount)).slice(0,15);return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${Number(s).toLocaleString("zh-CN")} 元`},grid:{left:8,right:20,top:12,bottom:8,containLabel:!0},xAxis:{type:"value",splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:n.map(s=>s.name.length>8?`${s.name.slice(0,8)}…`:s.name).reverse(),axisLabel:{fontSize:11}},series:[{name:"诊金",type:"bar",data:n.map(s=>Number(s.fee_amount??0)).reverse(),barMaxWidth:20,itemStyle:{borderRadius:[0,6,6,0]}}]}}function wa(t){return t.rows.some(e=>Number(e.fee_amount)>0)}function qn(t,e){const s=[...t.rows].filter(d=>Number(d.fee_amount)>0).sort((d,g)=>Number(g.fee_amount)-Number(d.fee_amount)).slice(0,10).map(d=>({name:d.name.length>6?`${d.name.slice(0,6)}…`:d.name,value:Number(d.fee_amount)}));return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5"],tooltip:{trigger:"item",formatter:"{b}: {c} 元 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:9}},series:[{name:"诊金",type:"pie",radius:["38%","64%"],center:["50%","42%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
diff --git a/server/public/admin/assets/yeji-a7feRhPt.js b/server/public/admin/assets/yeji-a7feRhPt.js
new file mode 100644
index 000000000..408a5b028
--- /dev/null
+++ b/server/public/admin/assets/yeji-a7feRhPt.js
@@ -0,0 +1,11 @@
+<<<<<<<< HEAD:server/public/admin/assets/yeji-BBXKKg-7.js
+import{o as rl,R as dl,ap as ul,q as o,r as u,s as a,v as i,D as _,bm as cl,bn as _l,F as k,G as V,O as j,cB as pl,T as r,ac as K,bK as ml,bi as vl,bp as fl,K as yl,w as gl,u as D,bA as bl,L as c,cx as hl,bg as wl,Y as kl,X as jl,bj as xl,bk as Sl,a1 as Nl,cg as M,P as f,bB as Cl,aw as U,ae as bt,c7 as Dl,c8 as Ll,cJ as ee,bs as zl,B as $l,bt as Al,b8 as Rl,M as v,p as C,i as te,E as ae}from"./.pnpm-BadRMC3e.js";import{h as Pl,y as lt,i as Tl,j as Il,k as Ml,l as Ol,m as qt,n as El,o as Fl,p as Vl,q as Bl}from"./stats-Cz14TIwi.js";import{d as Yl}from"./finance-B0N777VW.js";import{t as Aa}from"./tcm-BvgN1Mad.js";import{h as Ul}from"./perm-Bld5tS_J.js";import{_ as Hl}from"./index-C360OAjQ.js";const Wl={class:"yeji-page"},ql={class:"filter-surface"},Gl={class:"filter-row filter-row--top"},Jl={class:"filter-field"},Kl={class:"channel-opt-row"},Xl={class:"opt-name"},Zl={class:"opt-count"},Ql={class:"filter-field filter-field--wide"},eo={class:"filter-select filter-select--dept filter-dept-tree-wrap"},to={class:"filter-field filter-field--date-top"},ao={class:"filter-actions"},no={class:"filter-quick"},lo={class:"date-pills",role:"group","aria-label":"快捷日期"},oo=["onClick"],so={class:"doctor-daily-card__head"},io={class:"doctor-daily-card__title-block"},ro={key:0,class:"doctor-daily-card__range"},uo={class:"doctor-daily-card__tools"},co={key:0,class:"leaderboards-wrap"},_o={class:"leaderboard-hint"},po={class:"muted"},mo={class:"tables-wrap"},vo={key:0,class:"yeji-table leaderboard-table"},fo={class:"yeji-table__header"},yo={key:0,class:"leaderboard-sub"},go={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"排行榜,可横向滚动"},bo={class:"yeji-table__body yeji-table__body--leaderboard"},ho=["onClick"],wo={class:"col-rank"},ko={class:"col-abbr"},jo={class:"col-name"},xo={class:"col-consult"},So={class:"col-deal"},No=["onClick"],Co={key:0,class:"yeji-lead-cell--link"},Do=["onClick"],Lo={key:0,class:"yeji-lead-cell--link"},zo=["onClick"],$o={key:0,class:"yeji-lead-cell--link"},Ao=["onClick"],Ro={key:0,class:"yeji-lead-cell--link"},Po={class:"yeji-table__foot yeji-table__foot--left"},To={key:0},Io={key:0,class:"empty-tip leaderboard-empty"},Mo={class:"tables-wrap"},Oo={key:0,class:"empty-tip"},Eo={class:"yeji-table__header"},Fo={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"业绩数据表,可横向滚动"},Vo={class:"yeji-table__body yeji-table__body--data"},Bo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},Yo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},Uo={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},Ho={key:0,class:"col-completed col-narrow-head"},Wo={class:"yeji-th-label"},qo={style:{"max-width":"340px","line-height":"1.7","font-size":"12px"}},Go={key:1,class:"col-completed col-narrow-head"},Jo={class:"yeji-th-label"},Ko={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},Xo={key:2,class:"col-completed col-narrow-head"},Zo={class:"yeji-th-label"},Qo={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},es={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},ts=["onClick"],as={class:"col-dept"},ns=["onClick"],ls={key:0,class:"yeji-lead-cell--link"},os=["onClick"],ss={key:0,class:"yeji-lead-cell--link"},is=["onClick"],rs={key:0,class:"yeji-lead-cell--link"},ds=["onClick"],us={key:0,class:"yeji-lead-cell--link"},cs=["onClick"],_s={key:0,class:"col-completed"},ps=["onClick"],ms=["onClick"],vs={key:0,class:"yeji-lead-cell--link"},fs={key:1,class:"col-completed"},ys={key:2,class:"col-completed"},gs={class:"total-row"},bs=["onClick"],hs={key:0,class:"col-completed"},ws=["onClick"],ks={key:1,class:"col-completed"},js={key:2,class:"col-completed"},xs={class:"yeji-table__foot"},Ss={key:0},Ns={key:1},Cs={class:"tp-matrix-wrap"},Ds={class:"tp-matrix__title"},Ls={class:"tp-matrix",role:"list"},zs={class:"tp-matrix-card__head"},$s={class:"tp-matrix-card__titles"},As={key:0,class:"tp-matrix-card__parent"},Rs={class:"tp-matrix-card__name"},Ps={class:"tp-matrix-card__target"},Ts={class:"tp-matrix-card__table"},Is={class:"tp-matrix-card__num"},Ms={key:0},Os={class:"tp-matrix-card__num"},Es={key:1},Fs={class:"tp-matrix-card__num"},Vs={class:"tp-matrix-card__num tp-matrix-card__num--hot"},Bs={class:"tp-matrix-card__num"},Ys={class:"yeji-charts-stack"},Us={key:0,class:"yeji-chart-block"},Hs={class:"yeji-chart-block__title"},Ws={key:0,class:"yeji-chart-block__sub"},qs={class:"yeji-chart-panel"},Gs={class:"yeji-chart-panel"},Js={class:"yeji-chart-panel"},Ks={class:"yeji-chart-panel"},Xs={class:"yeji-chart-panel"},Zs={key:0,class:"yeji-chart-block"},Qs={class:"yeji-chart-block__title"},ei={class:"yeji-chart-panel"},ti={class:"yeji-chart-panel"},ai={class:"yeji-chart-block__title"},ni={key:0,class:"yeji-chart-block__sub"},li={class:"yeji-chart-block__sub yeji-chart-block__sub--muted"},oi={class:"yeji-chart-panel"},si={class:"yeji-order-drawer__header"},ii={class:"yeji-order-drawer__heading"},ri={class:"yeji-order-drawer__sub"},di={class:"yeji-order-drawer__shell"},ui={class:"yeji-order-drawer__stats",role:"region","aria-label":"订单汇总"},ci={class:"yeji-order-drawer__stat-card"},_i={class:"yeji-order-drawer__stat-value"},pi={class:"yeji-order-drawer__stat-card"},mi={class:"yeji-order-drawer__stat-value"},vi={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--total"},fi={class:"yeji-order-drawer__stat-label"},yi={class:"yeji-order-drawer__stat-note"},gi={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},bi={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},hi={class:"yeji-order-drawer__stat-label"},wi={class:"yeji-order-drawer__stat-note"},ki={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},ji={key:1,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},xi={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},Si={key:2,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--muted"},Ni={class:"yeji-order-drawer__stat-value"},Ci={class:"yeji-order-drawer__body"},Di={key:0,class:"yeji-order-appt-lines"},Li={class:"yeji-order-appt-line"},zi={class:"yeji-order-appt-line"},$i={key:0,class:"yeji-order-appt-sub"},Ai={class:"yeji-order-appt-line"},Ri={class:"yeji-order-appt-line yeji-order-appt-line--channel"},Pi={class:"yeji-order-appt-channel-text"},Ti={key:0,class:"yeji-order-appt-sub"},Ii={key:1,class:"yeji-order-appt-empty"},Mi={class:"yeji-order-amt"},Oi={class:"yeji-order-drawer__pager"},Ei={class:"yeji-unassigned-dialog__head"},Fi={class:"yeji-unassigned-dialog__sub"},Vi={key:0,class:"yeji-unassigned-dialog__note"},Bi={class:"yeji-unassigned-dialog__body"},Yi={class:"yeji-unassigned-dialog__head yeji-leadlines-dialog__head"},Ui={class:"yeji-leadlines-dialog__head-main"},Hi={class:"yeji-unassigned-dialog__sub"},Wi={key:0,class:"yeji-unassigned-dialog__note"},qi={class:"yeji-unassigned-dialog__body"},Gi={key:2,class:"yeji-leadlines-dialog__pager"},Ji={class:"yeji-unassigned-dialog__head"},Ki={class:"yeji-unassigned-dialog__sub"},Xi={key:0,class:"yeji-unassigned-dialog__note"},Zi={class:"yeji-unassigned-dialog__body"},Qi={key:2,class:"yeji-leadlines-dialog__pager"},er={class:"yeji-unassigned-dialog__head"},tr={class:"yeji-unassigned-dialog__sub"},ar={key:0,class:"yeji-unassigned-dialog__note"},nr={class:"yeji-unassigned-dialog__body"},lr=["onClick","onKeydown"],or={class:"yeji-unassigned-dialog__head"},sr={class:"yeji-unassigned-dialog__sub"},ir={key:0,class:"yeji-unassigned-dialog__note"},rr={class:"yeji-unassigned-dialog__body"},dr={key:2,class:"yeji-leadlines-dialog__pager"},Ra=30,ur="stats.yejiStats/tabDoctor",cr="stats.yejiStats/tabLeaderboard",_r="stats.yejiStats/tabZyyt",pr="stats.yejiStats/tabTargetMatrix",mr=rl({__name:"yeji",setup(vr){function ot(t){return t.some(e=>Ul([e]))}const Pa={value:"id",label:"name",children:"children"};function Ta(t){if(!t.length)return[];const e=new Map;for(const g of t)e.set(g.id,{...g,children:[]});const n=[];for(const g of t){const b=e.get(g.id),w=Number(g.pid);w>0&&e.has(w)?e.get(w).children.push(b):n.push(b)}const s=g=>{var b;(b=g.children)!=null&&b.length?g.children.forEach(s):delete g.children};n.forEach(s);const d=g=>{var b;g.sort((w,I)=>{const E=w.name.includes("中心")?-1:1,p=I.name.includes("中心")?-1:1;return E!==p?E-p:w.id-I.id});for(const w of g)(b=w.children)!=null&&b.length&&d(w.children)};return d(n),n}const ne=v(!1),Ce=v([]),ht=v(!1),Ia=C(()=>Ta(Ce.value)),z=v([]),st=v([]),wt=v(!1),x=v(""),H=v(null),re=v([]);function kt(t,e){if(!t||typeof t!="object")return e;for(const n of Object.keys(t)){const s=parseInt(n,10);!Number.isNaN(s)&&s>=2&&(e=Math.max(e,s))}return e}function Ma(t){var n;let e=0;for(const s of t){for(const d of s.rows)e=kt(d.revisit_slots,e);e=kt((n=s.total)==null?void 0:n.revisit_slots,e)}return e}const jt=C(()=>{const t=Math.min(Ma(re.value),Ra);return t<2?[]:Array.from({length:t-1},(e,n)=>n+2)});function Oa(t){if(!t.er_center_subtree)return 0;let e=0;for(const n of t.rows)e=kt(n.revisit_slots,e);return e}function Gt(t){const e=Math.min(Oa(t),Ra);return e<2?[]:Array.from({length:e-1},(n,s)=>s+2)}function it(t){if(t===2)return"复诊2";const e=["三","四","五","六","七","八","九","十"];return t>=3&&t<=10?`复诊${e[t-3]}`:`复诊${t}`}function le(t,e){const n=t==null?void 0:t.revisit_slots;if(!n||typeof n!="object")return 0;const s=n[e]??n[String(e)],d=Number(s);return Number.isFinite(d)?d:0}const S=v(null),de=v(!1),xt=v(!1),De=v(!1),Jt=v(""),qe=v(""),Le=v([]),St=v(!1),ze=v(!1),Kt=v(""),Ge=v(""),$e=v([]),Xt=v(null),Nt=v(!1),ue=v(!1),Je=v(!1),Zt=v(""),Ke=v(""),Ae=v([]),Re=v(0),Xe=v(1),rt=v(20),Ct=v(null),dt=v(!1),fe=v(!1),Dt=v(""),Pe=v(""),ce=v([]),Te=v(0),ye=v(1),Ie=v(20),Lt=v(null),ut=v(!1),ge=v(!1),zt=v(""),Me=v(""),be=v([]),Oe=v(0),he=v(1),Ee=v(20),$t=v(null),Ea=C(()=>ce.value.some(t=>String(t.channel_source??"")!=="")),_e=v("zyyt"),W=C(()=>ot([ur,"stats.doctorDailyStats/overview"])),oe=C(()=>ot([cr,"stats.yejiStats/leaderboard"])),Fe=C(()=>ot([_r,"stats.yejiStats/multi","stats.yejiStats/overview"])),Ze=C(()=>ot([pr,"stats.yejiStats/targetMatrix","stats.yejiStats/multi"])),Fa=C(()=>W.value||oe.value||Fe.value||Ze.value);function Qe(){return Fe.value?"zyyt":W.value?"doctor":oe.value?"leaderboard":Ze.value?"zyyt_matrix":"zyyt"}dl(_e,t=>{(t==="doctor"&&!W.value||t==="leaderboard"&&!oe.value||t==="zyyt"&&!Fe.value||t==="zyyt_matrix"&&!Ze.value)&&(_e.value=Qe())});const Qt=C(()=>{var t;return(((t=S.value)==null?void 0:t.leaderboards)??[]).filter(e=>e.rows.length>0)});function ea(t){return t.rows.some(e=>e.dept_id>0&&(Number(e.lead_count)>0||Number(e.consult_count)>0||Number(e.deal_order_count)>0||Number(e.performance_amount)>0||Number(e.completed_performance_amount)>0))}const Ve=v(!1),B=v([]),pe=v({}),Be=v(null),ct=C(()=>{const t=Be.value;return!(t!=null&&t.start)||!(t!=null&&t.end)?"":t.start===t.end?`区间 ${t.start}`:`区间 ${t.start} ~ ${t.end}`}),At=C(()=>B.value.some(t=>Number(t.deal_amount??0)>0)),Rt=C(()=>B.value.some(t=>Number(t.system_prescription_count??0)>0||Number(t.manual_prescription_count??0)>0)),Va=C(()=>W.value?At.value||Rt.value||Pt.value||Tt.value||It.value:!1),Ba=C(()=>{if(Va.value)return!0;if(Fe.value){for(const t of re.value)if(ea(t))return!0}return!!(oe.value&&Qt.value.length>0)}),Pt=C(()=>{const t=pe.value;return Number(t.appointment_completed??0)+Number(t.appointment_missed??0)+Number(t.appointment_cancelled??0)>0}),Ya=C(()=>{const t=pe.value,e=[{value:Number(t.appointment_completed??0),name:"挂号完成"},{value:Number(t.appointment_missed??0),name:"过号"},{value:Number(t.appointment_cancelled??0),name:"取消"}].filter(n=>n.value>0);return{color:["#0d9488","#d97706","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}: {c} ({d}%)"},legend:{bottom:0,type:"scroll",textStyle:{fontSize:10}},series:[{name:"挂号",type:"pie",radius:["42%","68%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
+========
+import{o as rl,R as dl,ap as ul,q as o,r as u,s as a,v as i,D as _,bm as cl,bn as _l,F as k,G as V,O as j,cB as pl,T as r,ac as K,bK as ml,bi as vl,bp as fl,K as yl,w as gl,u as D,bA as bl,L as c,cx as hl,bg as wl,Y as kl,X as jl,bj as xl,bk as Sl,a1 as Nl,cg as M,P as f,bB as Cl,aw as U,ae as bt,c7 as Dl,c8 as Ll,cJ as ee,bs as zl,B as $l,bt as Al,b8 as Rl,M as v,p as C,i as te,E as ae}from"./.pnpm-BadRMC3e.js";import{h as Pl,y as lt,i as Tl,j as Il,k as Ml,l as Ol,m as qt,n as El,o as Fl,p as Vl,q as Bl}from"./stats-O2EioTJv.js";import{d as Yl}from"./finance-Bq17dJIj.js";import{t as Aa}from"./tcm-BWNwZkyX.js";import{h as Ul}from"./perm-BICz51xi.js";import{_ as Hl}from"./index-C53kWH2_.js";const Wl={class:"yeji-page"},ql={class:"filter-surface"},Gl={class:"filter-row filter-row--top"},Jl={class:"filter-field"},Kl={class:"channel-opt-row"},Xl={class:"opt-name"},Zl={class:"opt-count"},Ql={class:"filter-field filter-field--wide"},eo={class:"filter-select filter-select--dept filter-dept-tree-wrap"},to={class:"filter-field filter-field--date-top"},ao={class:"filter-actions"},no={class:"filter-quick"},lo={class:"date-pills",role:"group","aria-label":"快捷日期"},oo=["onClick"],so={class:"doctor-daily-card__head"},io={class:"doctor-daily-card__title-block"},ro={key:0,class:"doctor-daily-card__range"},uo={class:"doctor-daily-card__tools"},co={key:0,class:"leaderboards-wrap"},_o={class:"leaderboard-hint"},po={class:"muted"},mo={class:"tables-wrap"},vo={key:0,class:"yeji-table leaderboard-table"},fo={class:"yeji-table__header"},yo={key:0,class:"leaderboard-sub"},go={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"排行榜,可横向滚动"},bo={class:"yeji-table__body yeji-table__body--leaderboard"},ho=["onClick"],wo={class:"col-rank"},ko={class:"col-abbr"},jo={class:"col-name"},xo={class:"col-consult"},So={class:"col-deal"},No=["onClick"],Co={key:0,class:"yeji-lead-cell--link"},Do=["onClick"],Lo={key:0,class:"yeji-lead-cell--link"},zo=["onClick"],$o={key:0,class:"yeji-lead-cell--link"},Ao=["onClick"],Ro={key:0,class:"yeji-lead-cell--link"},Po={class:"yeji-table__foot yeji-table__foot--left"},To={key:0},Io={key:0,class:"empty-tip leaderboard-empty"},Mo={class:"tables-wrap"},Oo={key:0,class:"empty-tip"},Eo={class:"yeji-table__header"},Fo={class:"yeji-table__scroll",tabindex:"0",role:"region","aria-label":"业绩数据表,可横向滚动"},Vo={class:"yeji-table__body yeji-table__body--data"},Bo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},Yo={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},Uo={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},Ho={key:0,class:"col-completed col-narrow-head"},Wo={class:"yeji-th-label"},qo={style:{"max-width":"340px","line-height":"1.7","font-size":"12px"}},Go={key:1,class:"col-completed col-narrow-head"},Jo={class:"yeji-th-label"},Ko={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},Xo={key:2,class:"col-completed col-narrow-head"},Zo={class:"yeji-th-label"},Qo={style:{"max-width":"280px","line-height":"1.7","font-size":"12px"}},es={style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},ts=["onClick"],as={class:"col-dept"},ns=["onClick"],ls={key:0,class:"yeji-lead-cell--link"},os=["onClick"],ss={key:0,class:"yeji-lead-cell--link"},is=["onClick"],rs={key:0,class:"yeji-lead-cell--link"},ds=["onClick"],us={key:0,class:"yeji-lead-cell--link"},cs=["onClick"],_s={key:0,class:"col-completed"},ps=["onClick"],ms=["onClick"],vs={key:0,class:"yeji-lead-cell--link"},fs={key:1,class:"col-completed"},ys={key:2,class:"col-completed"},gs={class:"total-row"},bs=["onClick"],hs={key:0,class:"col-completed"},ws=["onClick"],ks={key:1,class:"col-completed"},js={key:2,class:"col-completed"},xs={class:"yeji-table__foot"},Ss={key:0},Ns={key:1},Cs={class:"tp-matrix-wrap"},Ds={class:"tp-matrix__title"},Ls={class:"tp-matrix",role:"list"},zs={class:"tp-matrix-card__head"},$s={class:"tp-matrix-card__titles"},As={key:0,class:"tp-matrix-card__parent"},Rs={class:"tp-matrix-card__name"},Ps={class:"tp-matrix-card__target"},Ts={class:"tp-matrix-card__table"},Is={class:"tp-matrix-card__num"},Ms={key:0},Os={class:"tp-matrix-card__num"},Es={key:1},Fs={class:"tp-matrix-card__num"},Vs={class:"tp-matrix-card__num tp-matrix-card__num--hot"},Bs={class:"tp-matrix-card__num"},Ys={class:"yeji-charts-stack"},Us={key:0,class:"yeji-chart-block"},Hs={class:"yeji-chart-block__title"},Ws={key:0,class:"yeji-chart-block__sub"},qs={class:"yeji-chart-panel"},Gs={class:"yeji-chart-panel"},Js={class:"yeji-chart-panel"},Ks={class:"yeji-chart-panel"},Xs={class:"yeji-chart-panel"},Zs={key:0,class:"yeji-chart-block"},Qs={class:"yeji-chart-block__title"},ei={class:"yeji-chart-panel"},ti={class:"yeji-chart-panel"},ai={class:"yeji-chart-block__title"},ni={key:0,class:"yeji-chart-block__sub"},li={class:"yeji-chart-block__sub yeji-chart-block__sub--muted"},oi={class:"yeji-chart-panel"},si={class:"yeji-order-drawer__header"},ii={class:"yeji-order-drawer__heading"},ri={class:"yeji-order-drawer__sub"},di={class:"yeji-order-drawer__shell"},ui={class:"yeji-order-drawer__stats",role:"region","aria-label":"订单汇总"},ci={class:"yeji-order-drawer__stat-card"},_i={class:"yeji-order-drawer__stat-value"},pi={class:"yeji-order-drawer__stat-card"},mi={class:"yeji-order-drawer__stat-value"},vi={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--total"},fi={class:"yeji-order-drawer__stat-label"},yi={class:"yeji-order-drawer__stat-note"},gi={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},bi={class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},hi={class:"yeji-order-drawer__stat-label"},wi={class:"yeji-order-drawer__stat-note"},ki={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},ji={key:1,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--accent"},xi={class:"yeji-order-drawer__stat-value yeji-order-drawer__stat-value--money"},Si={key:2,class:"yeji-order-drawer__stat-card yeji-order-drawer__stat-card--muted"},Ni={class:"yeji-order-drawer__stat-value"},Ci={class:"yeji-order-drawer__body"},Di={key:0,class:"yeji-order-appt-lines"},Li={class:"yeji-order-appt-line"},zi={class:"yeji-order-appt-line"},$i={key:0,class:"yeji-order-appt-sub"},Ai={class:"yeji-order-appt-line"},Ri={class:"yeji-order-appt-line yeji-order-appt-line--channel"},Pi={class:"yeji-order-appt-channel-text"},Ti={key:0,class:"yeji-order-appt-sub"},Ii={key:1,class:"yeji-order-appt-empty"},Mi={class:"yeji-order-amt"},Oi={class:"yeji-order-drawer__pager"},Ei={class:"yeji-unassigned-dialog__head"},Fi={class:"yeji-unassigned-dialog__sub"},Vi={key:0,class:"yeji-unassigned-dialog__note"},Bi={class:"yeji-unassigned-dialog__body"},Yi={class:"yeji-unassigned-dialog__head yeji-leadlines-dialog__head"},Ui={class:"yeji-leadlines-dialog__head-main"},Hi={class:"yeji-unassigned-dialog__sub"},Wi={key:0,class:"yeji-unassigned-dialog__note"},qi={class:"yeji-unassigned-dialog__body"},Gi={key:2,class:"yeji-leadlines-dialog__pager"},Ji={class:"yeji-unassigned-dialog__head"},Ki={class:"yeji-unassigned-dialog__sub"},Xi={key:0,class:"yeji-unassigned-dialog__note"},Zi={class:"yeji-unassigned-dialog__body"},Qi={key:2,class:"yeji-leadlines-dialog__pager"},er={class:"yeji-unassigned-dialog__head"},tr={class:"yeji-unassigned-dialog__sub"},ar={key:0,class:"yeji-unassigned-dialog__note"},nr={class:"yeji-unassigned-dialog__body"},lr=["onClick","onKeydown"],or={class:"yeji-unassigned-dialog__head"},sr={class:"yeji-unassigned-dialog__sub"},ir={key:0,class:"yeji-unassigned-dialog__note"},rr={class:"yeji-unassigned-dialog__body"},dr={key:2,class:"yeji-leadlines-dialog__pager"},Ra=30,ur="stats.yejiStats/tabDoctor",cr="stats.yejiStats/tabLeaderboard",_r="stats.yejiStats/tabZyyt",pr="stats.yejiStats/tabTargetMatrix",mr=rl({__name:"yeji",setup(vr){function ot(t){return t.some(e=>Ul([e]))}const Pa={value:"id",label:"name",children:"children"};function Ta(t){if(!t.length)return[];const e=new Map;for(const g of t)e.set(g.id,{...g,children:[]});const n=[];for(const g of t){const b=e.get(g.id),w=Number(g.pid);w>0&&e.has(w)?e.get(w).children.push(b):n.push(b)}const s=g=>{var b;(b=g.children)!=null&&b.length?g.children.forEach(s):delete g.children};n.forEach(s);const d=g=>{var b;g.sort((w,I)=>{const E=w.name.includes("中心")?-1:1,p=I.name.includes("中心")?-1:1;return E!==p?E-p:w.id-I.id});for(const w of g)(b=w.children)!=null&&b.length&&d(w.children)};return d(n),n}const ne=v(!1),Ce=v([]),ht=v(!1),Ia=C(()=>Ta(Ce.value)),z=v([]),st=v([]),wt=v(!1),x=v(""),H=v(null),re=v([]);function kt(t,e){if(!t||typeof t!="object")return e;for(const n of Object.keys(t)){const s=parseInt(n,10);!Number.isNaN(s)&&s>=2&&(e=Math.max(e,s))}return e}function Ma(t){var n;let e=0;for(const s of t){for(const d of s.rows)e=kt(d.revisit_slots,e);e=kt((n=s.total)==null?void 0:n.revisit_slots,e)}return e}const jt=C(()=>{const t=Math.min(Ma(re.value),Ra);return t<2?[]:Array.from({length:t-1},(e,n)=>n+2)});function Oa(t){if(!t.er_center_subtree)return 0;let e=0;for(const n of t.rows)e=kt(n.revisit_slots,e);return e}function Gt(t){const e=Math.min(Oa(t),Ra);return e<2?[]:Array.from({length:e-1},(n,s)=>s+2)}function it(t){if(t===2)return"复诊2";const e=["三","四","五","六","七","八","九","十"];return t>=3&&t<=10?`复诊${e[t-3]}`:`复诊${t}`}function le(t,e){const n=t==null?void 0:t.revisit_slots;if(!n||typeof n!="object")return 0;const s=n[e]??n[String(e)],d=Number(s);return Number.isFinite(d)?d:0}const S=v(null),de=v(!1),xt=v(!1),De=v(!1),Jt=v(""),qe=v(""),Le=v([]),St=v(!1),ze=v(!1),Kt=v(""),Ge=v(""),$e=v([]),Xt=v(null),Nt=v(!1),ue=v(!1),Je=v(!1),Zt=v(""),Ke=v(""),Ae=v([]),Re=v(0),Xe=v(1),rt=v(20),Ct=v(null),dt=v(!1),fe=v(!1),Dt=v(""),Pe=v(""),ce=v([]),Te=v(0),ye=v(1),Ie=v(20),Lt=v(null),ut=v(!1),ge=v(!1),zt=v(""),Me=v(""),be=v([]),Oe=v(0),he=v(1),Ee=v(20),$t=v(null),Ea=C(()=>ce.value.some(t=>String(t.channel_source??"")!=="")),_e=v("zyyt"),W=C(()=>ot([ur,"stats.doctorDailyStats/overview"])),oe=C(()=>ot([cr,"stats.yejiStats/leaderboard"])),Fe=C(()=>ot([_r,"stats.yejiStats/multi","stats.yejiStats/overview"])),Ze=C(()=>ot([pr,"stats.yejiStats/targetMatrix","stats.yejiStats/multi"])),Fa=C(()=>W.value||oe.value||Fe.value||Ze.value);function Qe(){return Fe.value?"zyyt":W.value?"doctor":oe.value?"leaderboard":Ze.value?"zyyt_matrix":"zyyt"}dl(_e,t=>{(t==="doctor"&&!W.value||t==="leaderboard"&&!oe.value||t==="zyyt"&&!Fe.value||t==="zyyt_matrix"&&!Ze.value)&&(_e.value=Qe())});const Qt=C(()=>{var t;return(((t=S.value)==null?void 0:t.leaderboards)??[]).filter(e=>e.rows.length>0)});function ea(t){return t.rows.some(e=>e.dept_id>0&&(Number(e.lead_count)>0||Number(e.consult_count)>0||Number(e.deal_order_count)>0||Number(e.performance_amount)>0||Number(e.completed_performance_amount)>0))}const Ve=v(!1),B=v([]),pe=v({}),Be=v(null),ct=C(()=>{const t=Be.value;return!(t!=null&&t.start)||!(t!=null&&t.end)?"":t.start===t.end?`区间 ${t.start}`:`区间 ${t.start} ~ ${t.end}`}),At=C(()=>B.value.some(t=>Number(t.deal_amount??0)>0)),Rt=C(()=>B.value.some(t=>Number(t.system_prescription_count??0)>0||Number(t.manual_prescription_count??0)>0)),Va=C(()=>W.value?At.value||Rt.value||Pt.value||Tt.value||It.value:!1),Ba=C(()=>{if(Va.value)return!0;if(Fe.value){for(const t of re.value)if(ea(t))return!0}return!!(oe.value&&Qt.value.length>0)}),Pt=C(()=>{const t=pe.value;return Number(t.appointment_completed??0)+Number(t.appointment_missed??0)+Number(t.appointment_cancelled??0)>0}),Ya=C(()=>{const t=pe.value,e=[{value:Number(t.appointment_completed??0),name:"挂号完成"},{value:Number(t.appointment_missed??0),name:"过号"},{value:Number(t.appointment_cancelled??0),name:"取消"}].filter(n=>n.value>0);return{color:["#0d9488","#d97706","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}: {c} ({d}%)"},legend:{bottom:0,type:"scroll",textStyle:{fontSize:10}},series:[{name:"挂号",type:"pie",radius:["42%","68%"],center:["50%","46%"],avoidLabelOverlap:!0,itemStyle:{borderRadius:6,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
+>>>>>>>> yz-0803:server/public/admin/assets/yeji-a7feRhPt.js
+{c}`,fontSize:11},data:e}]}}),Tt=C(()=>B.value.filter(t=>Number(t.deal_order_count??0)>0&&Number(t.deal_amount??0)>0).length>=2),Ua=C(()=>{const t=B.value.filter(s=>Number(s.deal_order_count??0)>0&&Number(s.deal_amount??0)>0),e=Math.max(...t.map(s=>Number(s.deal_amount)),1),n=t.map(s=>{const d=Number(s.deal_amount);return{name:String(s.doctor_name||"—"),value:[Number(s.deal_order_count),d],symbolSize:12+Math.sqrt(d/e)*26}});return{color:["#2563eb"],tooltip:{trigger:"item",formatter:s=>{var g;const d=(g=s.data)==null?void 0:g.value;return Array.isArray(d)?`${s.data.name}
接诊诊单:${d[0]}
金额:${Number(d[1]).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`:""}},grid:{left:48,right:24,top:28,bottom:32,containLabel:!0},xAxis:{type:"value",name:"接诊诊单",nameLocation:"middle",nameGap:28,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},yAxis:{type:"value",name:"成交金额",nameLocation:"middle",nameGap:40,splitLine:{lineStyle:{type:"dashed",opacity:.55}}},series:[{type:"scatter",data:n}]}}),It=C(()=>B.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),Ha=C(()=>{const t=[...B.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,L)=>Number(L.deal_amount)-Number(p.deal_amount)).slice(0,5);if(t.length<2)return{radar:{indicator:[]},series:[{type:"radar",data:[]}]};const e=p=>{const L=String(p.doctor_name||"—");return L.length>7?`${L.slice(0,7)}…`:L},n=p=>Number(p.system_prescription_count??0)+Number(p.manual_prescription_count??0),s=p=>{const L=Number(p.avg_deal_amount);if(Number.isFinite(L)&&L>0)return L;const Y=Number(p.deal_order_count);return Y>0?Number(p.deal_amount)/Y:0},d=Math.max(...t.map(p=>Number(p.deal_amount)),1e-9),g=Math.max(...t.map(p=>Number(p.deal_order_count)),1e-9),b=Math.max(...t.map(n),1e-9),w=Math.max(...t.map(p=>Number(p.appointment_completed??0)),1e-9),I=Math.max(...t.map(s),1e-9),E=t.map(p=>({name:e(p),value:[Number(p.deal_amount)/d*100,Number(p.deal_order_count)/g*100,n(p)/b*100,Number(p.appointment_completed??0)/w*100,s(p)/I*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:E,emphasis:{lineStyle:{width:3}}}]}}),Wa=C(()=>{const t=[...B.value].filter(s=>Number(s.deal_amount??0)>0).sort((s,d)=>Number(d.deal_amount)-Number(s.deal_amount)).slice(0,20),e=t.map(s=>{const d=String(s.doctor_name||"—");return d.length>10?`${d.slice(0,10)}…`:d}),n=t.map(s=>Number(s.deal_amount??0));return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${s.toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})} 元`},grid:{left:8,right:16,top:28,bottom:8,containLabel:!0},xAxis:{type:"value",axisLabel:{fontSize:11},splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:[...e].reverse(),axisLabel:{fontSize:11}},series:[{name:"成交金额",type:"bar",data:[...n].reverse(),barMaxWidth:22,itemStyle:{borderRadius:[0,6,6,0]}}]}}),qa=C(()=>{const t=[...B.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 Ga(){var e,n;const t={};if(x.value&&(t.channel_code=x.value),z.value.length>0&&(t.dept_ids=z.value.join(",")),(e=H.value)!=null&&e[0]&&((n=H.value)!=null&&n[1]))t.start_date=H.value[0],t.end_date=H.value[1];else{const s=gt(new Date);t.start_date=s,t.end_date=s}return t}function ta(t){return Number(t??0).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function aa(t){if(t==null||t==="")return"—";const e=Number(t);return Number.isFinite(e)?`${e.toFixed(2)}%`:"—"}function Ja(t){const e=pe.value,n=[];return t.columns.forEach((s,d)=>{if(d===0){n[d]="合计";return}switch(s.property){case"system_prescription_count":n[d]=String(e.system_prescription_count??0);break;case"manual_prescription_count":n[d]=String(e.manual_prescription_count??0);break;case"deal_amount":n[d]=`¥ ${ta(e.deal_amount)}`;break;case"deal_order_count":n[d]=String(e.deal_order_count??0);break;case"appointment_total":n[d]=String(e.appointment_total??0);break;case"appointment_completed":n[d]=String(e.appointment_completed??0);break;case"appointment_missed":n[d]=String(e.appointment_missed??0);break;case"appointment_cancelled":n[d]=String(e.appointment_cancelled??0);break;case"appointment_conversion_rate":n[d]=aa(e.appointment_conversion_rate);break;default:n[d]=""}}),n}async function Mt(){if(!W.value){B.value=[],pe.value={},Be.value=null;return}Ve.value=!0;try{const t=await Pl(Ga());B.value=(t==null?void 0:t.rows)??[],pe.value=(t==null?void 0:t.total)??{},t!=null&&t.start_date&&(t!=null&&t.end_date)&&(Be.value={start:t.start_date,end:t.end_date})}catch(t){if(te.isCancel(t))return;B.value=[],pe.value={},Be.value=null}finally{Ve.value=!1}}const se=v(!1),we=v(!1),et=v(""),tt=v(""),ke=v([]),_t=v(0),Z=v(1),pt=v(15),X=v("channel"),q=v(null),at=v(null),ie=v(null),na=C(()=>{const t=ie.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}),la=C(()=>{const t=ie.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}),Ka=C(()=>ke.value.reduce((t,e)=>t+Number(e.amount??0),0)),oa=C(()=>!!x.value&&se.value),Ot=C(()=>{var e;const t=x.value;if(!t)return"";for(const n of st.value){const s=(e=n.channels)==null?void 0:e.find(d=>d.channel_code===t);if(s!=null&&s.channel_name)return String(s.channel_name)}return t}),Xa=C(()=>{const t=q.value;return t&&X.value==="total"?Number.isFinite(t.channelAmount)?t.channelAmount:null:na.value}),Ye=v(null),mt=v(!1);function Za(){const t=new Date;return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}`}function Qa(t){const[e,n]=t.split("-").map(Number);return new Date(e,n,0).getDate()}async function en(){var t,e,n,s;if(!Ze.value){Ye.value=null;return}mt.value=!0,Ye.value=null;try{let d=function(y,$=0){const A=[];for(const R of y??[])A.push({node:R,depth:$}),A.push(...d(R.children??[],$+1));return A},g=function(y){const $=Ce.value.find(J=>Number(J.id)===y);if(!$)return"";const A=Number($.pid);if(!A)return"";const R=Ce.value.find(J=>Number(J.id)===A);return R!=null&&R.name?String(R.name):""},b=function(y){const $=[],A=[y];for(;A.length;){const R=A.shift();for(const J of Ce.value)Number(J.pid)===R&&($.push(J.id),A.push(J.id))}return $},w=function(y,$){const A=new Map;for(const R of(y==null?void 0:y.rows)??[])A.set(Number(R.dept_id),Number(R[$]??0));return A};const I=Za(),E=await Yl({year_month:I}),p=(E==null?void 0:E.rows)??[];if(!p.length)return;const Y=d(p).filter(y=>y.depth>=1&&Number(y.node.target_amount)>0).map(y=>y.node);if(!Y.length)return;const P=new Set,me=Y.map(y=>{const $=Number(y.dept_id),A=b($),R=A.length?A:[$];return R.forEach(J=>P.add(J)),{dept_id:$,dept_name:String(y.dept_name),target_amount:Number(y.target_amount),totalIds:R}});if(!P.size)return;const He=st.value.flatMap(y=>y.channels),G=(t=He.find(y=>y.channel_name.includes("自媒体1")))==null?void 0:t.channel_code,Se=(e=He.find(y=>y.channel_name.includes("自媒体3")))==null?void 0:e.channel_code,Ne=(n=He.find(y=>y.channel_name.includes("自媒体4")))==null?void 0:n.channel_code,We=Array.from(P).join(","),[ve,F,l,h]=await Promise.all([lt({dept_ids:We}),G?lt({dept_ids:We,channel_code:G}):Promise.resolve(null),Se?lt({dept_ids:We,channel_code:Se}):Promise.resolve(null),Ne?lt({dept_ids:We,channel_code:Ne}):Promise.resolve(null)]),m=y=>{var $;return((y==null?void 0:y.tables)??[]).find(A=>String(A.label).includes("月"))??(($=y==null?void 0:y.tables)==null?void 0:$[0])},T=y=>{var $,A;return((y==null?void 0:y.tables)??[]).find(R=>String(R.label).includes("昨"))??((A=y==null?void 0:y.tables)==null?void 0:A[(($=y==null?void 0:y.tables)==null?void 0:$.length)-1])},Ca=w(m(ve),"performance_amount"),Qn=w(T(ve),"performance_amount"),Da=F?w(m(F),"completed_performance_amount"):null,La=l?w(m(l),"completed_performance_amount"):null,za=h?w(m(h),"completed_performance_amount"):null,nt=(y,$)=>$.reduce((A,R)=>A+(y.get(R)??0),0),Ht=new Date,el=Qa(I),tl=Ht.getDate(),al=me.map(y=>{const $=nt(Ca,y.totalIds),A=nt(Qn,y.totalIds),R=Da?nt(Da,y.totalIds):null,J=La?nt(La,y.totalIds):null,$a=za?nt(za,y.totalIds):null,Wt=J!==null||$a!==null?(J??0)+($a??0):null,sl=Math.round(y.target_amount*(tl/el)*100)/100,il=y.target_amount>0?$/y.target_amount:null;return{dept_id:y.dept_id,dept_name:y.dept_name,parent_dept_name:g(y.dept_id),target_amount:y.target_amount,total_amount:$,yesterday_amount:A,douyin_amount:R&&R>0?R:null,tuifen_amount:Wt&&Wt>0?Wt:null,target_progress:sl,completion_rate:il}}),nl=((s=p[0])==null?void 0:s.dept_name)??"",ll=Ht.getMonth()+1,ol=Ht.getDate();Ye.value={title:`${nl}诊金-${ll}.${ol}`,sections:al}}catch{}finally{mt.value=!1}}const tn=C(()=>{var e;const t=(e=S.value)==null?void 0:e.leaderboards;return t?t.filter(n=>n.rows.length>0).length:0}),sa=[{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 an(t){const e=t.value();H.value=[gt(e[0]),gt(e[1])],Ue()}async function nn(){ht.value=!0;try{const t=await Tl();Ce.value=(t||[]).sort((e,n)=>{const s=e.name.includes("中心")?-1:1,d=n.name.includes("中心")?-1:1;return s!==d?s-d:e.id-n.id})}catch{}finally{ht.value=!1}}async function ln(){wt.value=!0;try{const t=await Il(),e=(t==null?void 0:t.groups)||[];st.value=e}catch{}finally{wt.value=!1}}async function ia(t){if(!oe.value){S.value=null;return}de.value=!0;try{const e={start_date:t.start,end_date:t.end};z.value.length>0&&(e.dept_ids=z.value.join(",")),x.value&&(e.channel_code=x.value);const n=await El(e);S.value={start_date:n.start_date,end_date:n.end_date,channel_code:n.channel_code||"",channel_name:n.channel_name||"",channel_filter_note:n.channel_filter_note||"",range_note:n.range_note||"",leaderboards:n.leaderboards||[]}}catch(e){if(te.isCancel(e))return;S.value=null}finally{de.value=!1}}async function Ue(){if(ne.value=!0,S.value=null,!Fe.value){re.value=[],ne.value=!1,W.value?Mt():(B.value=[],pe.value={},Be.value=null);return}try{const t={};if(z.value.length>0&&(t.dept_ids=z.value.join(",")),x.value&&(t.channel_code=x.value),H.value&&H.value[0]&&H.value[1]){const[s,d]=H.value,g={...t,start_date:s,end_date:d},b=await Ml(g);re.value=[{label:s===d?s:`${s} ~ ${d}`,start_date:b.start_date,end_date:b.end_date,channel_code:b.channel_code||"",channel_name:b.channel_name||"",channel_group:b.channel_group||"",channel_filter_note:b.channel_filter_note||"",rows:b.rows||[],total:b.total}],await ia({start:b.start_date,end:b.end_date});return}const e=await lt(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=gt(new Date);await ia({start:n,end:n})}catch(t){if(te.isCancel(t))return;const e=t;ae.error((e==null?void 0:e.msg)||(e==null?void 0:e.message)||"加载失败")}finally{ne.value=!1,W.value?Mt():(B.value=[],pe.value={},Be.value=null)}}function on(){z.value=[],H.value=null,x.value="",Ue()}function sn(t){return t<=0?!1:Ce.value.some(e=>Number(e.pid)===t)}function rn(t){return{1:"待双审通过",2:"待发货",3:"已完成",4:"已取消",5:"已发货",6:"已签收",7:"进行中",8:"暂不制药",9:"拒收",10:"退款",11:"保留药方",12:"制药缓发"}[Number(t)]??"—"}function vt(t){return t==null||!Number.isFinite(Number(t))?"—":Number(t).toLocaleString("zh-CN",{minimumFractionDigits:2,maximumFractionDigits:2})}function dn(t){return(Z.value-1)*pt.value+t+1}function un(t){const e=(t==null?void 0:t.appointment_date)!=null&&String(t.appointment_date)!==""?String(t.appointment_date):"",n=(t==null?void 0:t.period)!=null&&String(t.period)!==""?String(t.period):"",s=(t==null?void 0:t.appointment_time)!=null&&String(t.appointment_time)!==""?String(t.appointment_time):"",d=[n,s].filter(Boolean).join(" ");return e&&d?`${e} ${d}`:e||d||"—"}function ra(t){if(!t)return"";const e=t.channel_dict_value;if(e!=null&&e!==""){const d=Number(e);if(Number.isFinite(d))return String(Math.trunc(d))}const n=t.channel_source;if(n==null)return"";const s=String(n).trim();return s===""||!/^\d+$/.test(s)?"":String(parseInt(s,10))}function cn(t){if(t==null||t==="")return"—";const e=Number(t);if(Number.isFinite(e)&&e>=1e9&&e<1e15){const s=e<1e12?e*1e3:e,d=new Date(s);if(!Number.isNaN(d.getTime())){const g=d.getFullYear(),b=String(d.getMonth()+1).padStart(2,"0"),w=String(d.getDate()).padStart(2,"0"),I=String(d.getHours()).padStart(2,"0"),E=String(d.getMinutes()).padStart(2,"0");return`${g}-${b}-${w} ${I}:${E}`}}const n=String(t);return n.length>=16?n.slice(0,16):n}function da(){const t=at.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,z.value.length>0&&(e.dept_ids=z.value.join(",")),t.yejiTableRowDeptIds&&t.yejiTableRowDeptIds.length>0&&(e.yeji_table_row_dept_ids=t.yejiTableRowDeptIds.join(","))):(e.assistant_id=t.assistantId,t.erCenterRevisitSlot!==void 0&&(e.yeji_er_center_revisit_only=1,e.yeji_er_center_revisit_slot=t.erCenterRevisitSlot)),x.value&&se.value&&X.value==="channel"&&(e.channel_code=x.value),e}async function _n(){const t=da();if(!t||!x.value)return;const e={...t,channel_code:x.value,page_no:1,page_size:1};try{const n=await Aa(e),s=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null;s&&s.stats_yeji_drawer_total_performance_amount!=null&&(q.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 je(){const t=da();if(t){x.value&&X.value==="total"&&(q.value=null),we.value=!0;try{const e={...t,page_no:Z.value,page_size:pt.value},n=await Aa(e);ke.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],_t.value=Number((n==null?void 0:n.count)??0),ie.value=n!=null&&n.extend&&typeof n.extend=="object"?n.extend:null,x.value&&X.value==="channel"&&ie.value&&ie.value.stats_yeji_drawer_total_performance_amount!=null&&(q.value={totalAmount:Number(ie.value.stats_yeji_drawer_total_performance_amount),totalOrderCount:Number(ie.value.stats_yeji_drawer_total_performance_order_count??0),channelAmount:Number(ie.value.stats_order_amount_performance??0),channelOrderCount:Number((n==null?void 0:n.count)??0)}),x.value&&se.value&&X.value==="total"&&await _n()}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载业务订单失败"),ke.value=[],_t.value=0,ie.value=null}finally{we.value=!1}}}function ua(t,e,n){const s=!!(x.value&&t.channel_name);X.value=s?(n==null?void 0:n.listTab)??"channel":"channel",q.value=null,at.value={mode:"dept",deptId:e.dept_id,deptName:e.dept_name,start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(d=>d.dept_id).filter(d=>typeof d=="number"&&d>0)},et.value=`业务订单 · ${e.dept_name}`,tt.value=`创建时间:${t.start_date} ~ ${t.end_date} · 与「合计业绩 / 接诊诊单」同口径:订单创建人人事部门 ∈ 本部门子树 · 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function pn(t,e,n){const s=!!(x.value&&t.channel_name);X.value=s?n:"channel",q.value=null,at.value={mode:"dept",deptId:e,deptName:"当前展示合计",start:t.start_date,end:t.end_date,yejiTableRowDeptIds:t.rows.map(d=>d.dept_id).filter(d=>typeof d=="number"&&d>0)},et.value="业务订单 · 当前展示合计",tt.value=`创建时间:${t.start_date} ~ ${t.end_date} · 已选展示部门 1 个根节点(含其下全部展示行)· 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function Et(t,e,n){return!(xe(e)||e.dept_id<=0||n==="channel"&&!t.channel_name)}function Ft(t,e){return!(z.value.length!==1||e==="channel"&&!t.channel_name)}function ca(t,e,n){if(!Et(t,e,n))return;ua(t,e,{listTab:n==="total"?"total":"channel"})}function _a(t,e){if(!Ft(t,e))return;const n=z.value[0];if(!n)return;pn(t,n,e==="total"?"total":"channel")}function mn(t,e,n){X.value="channel",q.value=null,at.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n},et.value=`业务订单 · ${t.name}`,tt.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与排行榜诊金同口径)· 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function Vt(t,e,n,s){X.value="channel",q.value=null,at.value={mode:"assistant",assistantId:t.admin_id,assistantName:t.name,start:e,end:n,erCenterRevisitSlot:s};const d=s===0?"复诊合计":it(s);et.value=`业务订单 · ${t.name} · ${d}`,tt.value=`创建时间:${e} ~ ${n} · 创建人=${t.name}(与部门表 / 排行榜复诊同口径)· 仅二中心复诊口径 · ${d} · 不含履约 4/9/10`,Z.value=1,se.value=!0,je()}function vn(t){if(!t||t.admin_id<=0||!S.value||Number(t.revisit_count??0)<=0)return;const{start_date:e,end_date:n}=S.value;Vt({admin_id:t.admin_id,name:t.name},e,n,0)}function fn(t,e){if(!t||t.admin_id<=0||!S.value||le(t,e)<=0)return;const{start_date:n,end_date:s}=S.value;Vt({admin_id:t.admin_id,name:t.name},n,s,e)}function yn(){Z.value=1,je()}function gn(t){Z.value=t,je()}function bn(t){pt.value=t,Z.value=1,je()}function xe(t){return t.dept_id<=0&&t.dept_name==="未归属中心"}function hn(t,e){e.dept_id<=0||xe(e)||Number(e.revisit_count??0)<=0||ma(t,e,0)}function wn(t,e,n){e.dept_id<=0||xe(e)||le(e,n)<=0||ma(t,e,n)}function pa(t){const e=Xt.value;!e||Number(t.order_count)<=0||Vt({admin_id:t.admin_id,name:t.name},e.start,e.end,e.revisitSlot)}async function ma(t,e,n){const s=n===0?"复诊合计":it(n);Kt.value=`${e.dept_name} · ${s} · ${t.start_date} ~ ${t.end_date}`,Xt.value={start:t.start_date,end:t.end_date,revisitSlot:n},Ge.value="",$e.value=[],St.value=!0,ze.value=!0;try{const d={start_date:t.start_date,end_date:t.end_date,dept_id:e.dept_id,revisit_slot:n};z.value.length>0&&(d.dept_ids=z.value.join(",")),x.value&&(d.channel_code=x.value);const g=await Ol(d);$e.value=Array.isArray(g==null?void 0:g.rows)?g.rows:[],Ge.value=typeof(g==null?void 0:g.note)=="string"?g.note:""}catch(d){if(te.isCancel(d))return;const g=d;ae.error((g==null?void 0:g.msg)||(g==null?void 0:g.message)||"加载复诊拆解失败"),$e.value=[],Ge.value=""}finally{ze.value=!1}}function va(t){const e=[`区间:${t.start_date} ~ ${t.end_date}`];return x.value&&e.push(`渠道:${t.channel_name||x.value}`),z.value.length>0&&e.push(`已选展示部门 ${z.value.length} 个`),e.join(" · ")}async function kn(t){Jt.value=va(t),qe.value="",Le.value=[],xt.value=!0,De.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date};z.value.length>0&&(e.dept_ids=z.value.join(",")),x.value&&(e.channel_code=x.value);const n=await Fl(e);Le.value=Array.isArray(n==null?void 0:n.rows)?n.rows:[],qe.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载未归属拆解失败"),Le.value=[],qe.value=""}finally{De.value=!1}}function jn(t,e,n){n.dept_id<=0||Number(n.lead_count)<=0||(t.stopPropagation(),Pn(e,n))}function fa(t){return t.dept_id>0&&Number(t.assign_count??0)>0}function xn(t,e,n){fa(n)&&(t.stopPropagation(),Cn(e,n))}function Sn(t){return(he.value-1)*Ee.value+t+1}function Nn(t,e){const n=$t.value;if(!n)return null;const s={start_date:n.start_date,end_date:n.end_date,page:t,page_size:e};return n.mode==="dept"?s.dept_id=n.dept_id:s.assistant_id=n.assistant_id,z.value.length>0&&(s.dept_ids=z.value.join(",")),x.value&&(s.channel_code=x.value),s}async function ft(){const t=Nn(he.value,Ee.value);if(t){ge.value=!0;try{const e=await Vl(t);be.value=Array.isArray(e==null?void 0:e.lists)?e.lists:[],Oe.value=Number((e==null?void 0:e.count)??0),Me.value=typeof(e==null?void 0:e.note)=="string"?e.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载被指派明细失败"),be.value=[],Oe.value=0,Me.value=""}finally{ge.value=!1}}}async function Cn(t,e){$t.value={mode:"dept",dept_id:e.dept_id,dept_name:e.dept_name,start_date:t.start_date,end_date:t.end_date},zt.value=`${e.dept_name} · ${t.start_date} ~ ${t.end_date}`,Me.value="",be.value=[],Oe.value=0,he.value=1,Ee.value=20,ut.value=!0,await ft()}function Dn(t){if(!t||t.admin_id<=0||!S.value||Number(t.assign_count??0)<=0)return;const e=S.value;$t.value={mode:"assistant",assistant_id:t.admin_id,name:t.name,start_date:e.start_date,end_date:e.end_date},zt.value=`${t.name} · 医助 · ${e.start_date} ~ ${e.end_date}`,Me.value="",be.value=[],Oe.value=0,he.value=1,Ee.value=20,ut.value=!0,ft()}function Ln(t){he.value=t,ft()}function zn(t){Ee.value=t,he.value=1,ft()}const ya=[{key:"event_time_text",label:"进线时间"},{key:"reception_admin_name",label:"接待"},{key:"external_contact_name",label:"客户"},{key:"external_userid",label:"外部联系人ID"},{key:"user_id",label:"企微成员ID"},{key:"state",label:"渠道参数"}];function Bt(t,e,n){const{tb:s,row:d}=t,g={start_date:s.start_date,end_date:s.end_date,dept_id:d.dept_id,page:e,page_size:n};return z.value.length>0&&(g.dept_ids=z.value.join(",")),x.value&&(g.channel_code=x.value),g}function ga(t){const e=t==null?"":String(t);return/[",\n\r]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function $n(t){const e=ya.map(s=>ga(s.label)).join(","),n=t.map(s=>ya.map(d=>ga(s[d.key])).join(",")).join(`
+`);return`\uFEFF${e}
+${n}`}function An(t,e){const n=new Blob([e],{type:"text/csv;charset=utf-8;"}),s=URL.createObjectURL(n),d=document.createElement("a");d.href=s,d.download=t,d.click(),URL.revokeObjectURL(s)}function Rn(t){const{tb:e,row:n}=t;return`进线数据明细_${(n.dept_name||`dept${n.dept_id}`).replace(/[\\/:*?"<>|]/g,"_")}_${e.start_date}_${e.end_date}.csv`}async function Yt(){const t=Ct.value;if(t){ue.value=!0;try{const e=await qt(Bt(t,Xe.value,rt.value));Ae.value=Array.isArray(e==null?void 0:e.lists)?e.lists:[],Re.value=Number((e==null?void 0:e.count)??0),Ke.value=typeof(e==null?void 0:e.note)=="string"?e.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载进线明细失败"),Ae.value=[],Re.value=0,Ke.value=""}finally{ue.value=!1}}}async function Pn(t,e){Ct.value={tb:t,row:e},Zt.value=`${e.dept_name} · ${va(t)}`,Ke.value="",Ae.value=[],Re.value=0,Xe.value=1,rt.value=20,Nt.value=!0,await Yt()}function Tn(t){Xe.value=t,Yt()}function In(t){rt.value=t,Xe.value=1,Yt()}async function Mn(){const t=Ct.value;if(!(!t||Je.value)){Je.value=!0;try{const n=await qt(Bt(t,1,100)),s=Number((n==null?void 0:n.count)??0);if(s<=0){ae.warning("暂无进线明细可导出");return}const d=Array.isArray(n==null?void 0:n.lists)?[...n.lists]:[],g=Math.ceil(s/100);for(let b=2;b<=g;b++){const w=await qt(Bt(t,b,100)),I=Array.isArray(w==null?void 0:w.lists)?w.lists:[];d.push(...I)}An(Rn(t),$n(d)),ae.success(`已导出 ${d.length} 条进线明细`)}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"导出进线明细失败")}finally{Je.value=!1}}}function On(t){return(ye.value-1)*Ie.value+t+1}function ba(t){return xe(t)?!0:t.dept_id>0}async function yt(){const t=Lt.value;if(t){fe.value=!0;try{const e={start_date:t.start_date,end_date:t.end_date,page:ye.value,page_size:Ie.value};t.mode==="dept"?e.dept_id=t.dept_id:e.assistant_id=t.assistant_id,z.value.length>0&&(e.dept_ids=z.value.join(",")),x.value&&(e.channel_code=x.value);const n=await Bl(e);ce.value=Array.isArray(n==null?void 0:n.lists)?n.lists:[],Te.value=Number((n==null?void 0:n.count)??0),Pe.value=typeof(n==null?void 0:n.note)=="string"?n.note:""}catch(e){if(te.isCancel(e))return;const n=e;ae.error((n==null?void 0:n.msg)||(n==null?void 0:n.message)||"加载挂号明细失败"),ce.value=[],Te.value=0,Pe.value=""}finally{fe.value=!1}}}function En(t){if(!t||t.admin_id<=0||!S.value||Number(t.appointment_count??0)<=0)return;const e=S.value;Lt.value={mode:"assistant",assistant_id:t.admin_id,name:t.name,start_date:e.start_date,end_date:e.end_date},Dt.value=`${t.name} · 医助 · ${e.start_date} ~ ${e.end_date}`,Pe.value="",ce.value=[],Te.value=0,ye.value=1,Ie.value=20,dt.value=!0,yt()}function Fn(t,e){!ba(e)||Number(e.appointment_booked_count??0)<=0||(Lt.value={mode:"dept",dept_id:e.dept_id,dept_name:e.dept_name,start_date:t.start_date,end_date:t.end_date},Dt.value=`${e.dept_name} · ${t.start_date} ~ ${t.end_date}`,Pe.value="",ce.value=[],Te.value=0,ye.value=1,Ie.value=20,dt.value=!0,yt())}function Vn(t){ye.value=t,yt()}function Bn(t){Ie.value=t,ye.value=1,yt()}function Yn(t,e){if(xe(e)){kn(t);return}if(!(e.dept_id<=0)){if(sn(e.dept_id)){z.value=[e.dept_id],Ue();return}ua(t,e)}}function Un(t){if(!t||t.admin_id<=0||!S.value)return;const{start_date:e,end_date:n}=S.value;mn(t,e,n)}function ha(t){const e=t.channel_name?` · ${t.channel_name}`:"";return`${t.label}${e}`}function Hn(t){const e=t.rows.filter(b=>b.dept_id>0),n=e.map(b=>b.dept_name.length>10?`${b.dept_name.slice(0,10)}…`:b.dept_name),s=["#64748b","#38bdf8","#6366f1"],d=[{name:"进线",type:"bar",data:e.map(b=>b.lead_count),yAxisIndex:0,barMaxWidth:16},{name:"接诊",type:"bar",data:e.map(b=>b.consult_count),yAxisIndex:0,barMaxWidth:16},{name:"成交单",type:"bar",data:e.map(b=>b.deal_order_count),yAxisIndex:0,barMaxWidth:16},{name:"合计业绩",type:"bar",data:e.map(b=>b.performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#d97706"}}];t.channel_name&&d.push({name:`${t.channel_name}业绩`,type:"bar",data:e.map(b=>b.completed_performance_amount),yAxisIndex:1,barMaxWidth:14,itemStyle:{color:"#0d9488"}});const g=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:g?56:28,containLabel:!1},dataZoom:g?[{type:"slider",bottom:4,start:0,end:Math.min(100,Math.ceil(12/Math.max(e.length,1)*100))}]:[],xAxis:{type:"category",data:n,axisLabel:{rotate:n.length>8?28:0,fontSize:10}},yAxis:[{type:"value",name:"数量",splitLine:{lineStyle:{type:"dashed",opacity:.55}}},{type:"value",name:"金额",splitLine:{show:!1}}],series:d}}function Wn(t,e){const n=[...t.rows].sort((s,d)=>Number(d.fee_amount)-Number(s.fee_amount)).slice(0,15);return{color:["#2563eb"],tooltip:{trigger:"axis",axisPointer:{type:"shadow"},valueFormatter:s=>`${Number(s).toLocaleString("zh-CN")} 元`},grid:{left:8,right:20,top:12,bottom:8,containLabel:!0},xAxis:{type:"value",splitLine:{lineStyle:{type:"dashed",opacity:.6}}},yAxis:{type:"category",data:n.map(s=>s.name.length>8?`${s.name.slice(0,8)}…`:s.name).reverse(),axisLabel:{fontSize:11}},series:[{name:"诊金",type:"bar",data:n.map(s=>Number(s.fee_amount??0)).reverse(),barMaxWidth:20,itemStyle:{borderRadius:[0,6,6,0]}}]}}function wa(t){return t.rows.some(e=>Number(e.fee_amount)>0)}function qn(t,e){const s=[...t.rows].filter(d=>Number(d.fee_amount)>0).sort((d,g)=>Number(g.fee_amount)-Number(d.fee_amount)).slice(0,10).map(d=>({name:d.name.length>6?`${d.name.slice(0,6)}…`:d.name,value:Number(d.fee_amount)}));return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5"],tooltip:{trigger:"item",formatter:"{b}: {c} 元 ({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:9}},series:[{name:"诊金",type:"pie",radius:["38%","64%"],center:["50%","42%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
+{d}%`,fontSize:10}}]}}function ka(t){return Number(t.total.lead_count)+Number(t.total.consult_count)+Number(t.total.deal_order_count)>0}function Gn(t){const e=Number(t.total.lead_count??0),n=Number(t.total.consult_count??0),s=Number(t.total.deal_order_count??0);return{tooltip:{trigger:"item",formatter:"{b}: {c}"},color:["#2563eb","#38bdf8","#0d9488"],series:[{type:"funnel",left:"8%",width:"84%",minSize:"12%",sort:"none",gap:6,label:{show:!0,position:"inside",formatter:`{b}
+{c}`,fontSize:11},data:[{value:e,name:"进线"},{value:n,name:"接诊"},{value:s,name:"成交单"}]}]}}function ja(t){return t.rows.some(e=>e.dept_id>0&&Number(e.performance_amount)>0)}function Jn(t){const e=t.rows.filter(d=>d.dept_id>0&&Number(d.performance_amount)>0).sort((d,g)=>Number(g.performance_amount)-Number(d.performance_amount));if(!e.length)return{series:[{type:"pie",data:[]}]};const s=e.slice(0,10).map(d=>({name:d.dept_name.length>8?`${d.dept_name.slice(0,8)}…`:d.dept_name,value:Number(d.performance_amount)}));if(e.length>10){const d=e.slice(10).reduce((g,b)=>g+Number(b.performance_amount),0);d>0&&s.push({name:"其它",value:d})}return{color:["#2563eb","#0d9488","#d97706","#7c3aed","#64748b","#0891b2","#65a30d","#c026d3","#ea580c","#4f46e5","#94a3b8"],tooltip:{trigger:"item",formatter:"{b}
{c} 元({d}%)"},legend:{type:"scroll",bottom:0,textStyle:{fontSize:10}},series:[{type:"pie",radius:["36%","62%"],center:["50%","44%"],data:s,itemStyle:{borderRadius:5,borderColor:"#fff",borderWidth:2},label:{formatter:`{b}
+{d}%`,fontSize:10}}]}}function Ut(t){return{perf:"渠道业绩",deal:"渠道成交",aov:"渠道客单"}[t]??t}function N(t){return t==null||t===""?"0":Number(t).toLocaleString("en-US")}function O(t){return t==null||t===""?"0.0":Number(t).toLocaleString("en-US",{minimumFractionDigits:1,maximumFractionDigits:1})}function Q(t){if(t==null||t==="")return"0";const e=Number(t);return Number.isFinite(e)?Math.round(e).toLocaleString("zh-CN"):"0"}function xa(t){return t==null||t===""?"—":Number(t).toLocaleString("en-US",{minimumFractionDigits:1,maximumFractionDigits:1})}function Sa(t){return t==null||t===""?"—":Number(t).toFixed(1)}function Na(t){if(t==null||t==="")return"";const e=Number(t);return e>=1?"roi-good":e>=.8?"roi-mid":"roi-bad"}function Kn(t){return t===null?"—":(t*100).toFixed(2)+"%"}function Xn(t){return t===null?"":t>=1?"tp-good":t>=.8?"tp-mid":"tp-bad"}function Zn(t){return t>=1e4?(t/1e4).toFixed(1)+"万":String(t)}function gt(t){const e=t.getFullYear(),n=String(t.getMonth()+1).padStart(2,"0"),s=String(t.getDate()).padStart(2,"0");return`${e}-${n}-${s}`}return ul(async()=>{_e.value=Qe(),await Promise.all([nn(),ln()]),Ue(),en()}),(t,e)=>{const n=_l,s=pl,d=cl,g=ml,b=fl,w=gl,I=yl,E=wl,p=Sl,L=Nl,Y=xl,P=Cl,me=jl,He=kl,G=Ll,Se=Dl,Ne=zl,We=$l,ve=Al,F=vl;return o(),u("div",Wl,[e[147]||(e[147]=a("header",{class:"yeji-masthead"},[a("div",{class:"yeji-masthead__inner"},[a("h1",{class:"yeji-masthead__title"},"业绩看板"),a("p",{class:"yeji-masthead__desc"},"渠道 · 部门 · 日期维度的业绩分析")])],-1)),i(E,{class:"yeji-panel filter-card",shadow:"never"},{default:_(()=>[a("div",ql,[a("div",Gl,[a("div",Jl,[e[11]||(e[11]=a("span",{class:"lbl"},"渠道来源",-1)),i(d,{modelValue:x.value,"onUpdate:modelValue":e[0]||(e[0]=l=>x.value=l),filterable:"",placeholder:"渠道筛选",class:"filter-select filter-select--channel",loading:wt.value,onChange:Ue},{default:_(()=>[i(n,{label:"全部",value:""}),(o(!0),u(k,null,V(st.value,l=>(o(),j(s,{key:l.group_name,label:l.group_name},{default:_(()=>[(o(!0),u(k,null,V(l.channels,h=>(o(),j(n,{key:h.channel_code,label:h.channel_name,value:h.channel_code},{default:_(()=>[a("div",Kl,[a("span",Xl,r(h.channel_name),1),a("span",Zl,r(h.customer_count>0?h.customer_count:""),1)])]),_:2},1032,["label","value"]))),128))]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue","loading"])]),a("div",Ql,[e[12]||(e[12]=a("span",{class:"lbl"},"展示部门",-1)),K((o(),u("div",eo,[i(g,{modelValue:z.value,"onUpdate:modelValue":e[1]||(e[1]=l=>z.value=l),data:Ia.value,multiple:"","collapse-tags":"","collapse-tags-tooltip":"",filterable:"","check-strictly":"","render-after-expand":!1,"default-expand-all":!0,placeholder:"默认:所有「中心」部门",class:"filter-dept-tree-select","node-key":"id",props:Pa},null,8,["modelValue","data"])])),[[F,ht.value]])]),a("div",to,[e[13]||(e[13]=a("span",{class:"lbl"},"日期范围",-1)),i(b,{modelValue:H.value,"onUpdate:modelValue":e[2]||(e[2]=l=>H.value=l),type:"daterange","value-format":"YYYY-MM-DD","start-placeholder":"开始","end-placeholder":"结束",clearable:!0,shortcuts:sa,class:"filter-date-picker"},null,8,["modelValue"])]),a("div",ao,[i(I,{type:"primary",class:"filter-btn filter-btn--query",loading:ne.value,onClick:Ue},{default:_(()=>[i(w,{class:"filter-btn__icon"},{default:_(()=>[i(D(bl))]),_:1}),e[14]||(e[14]=c(" 查询 ",-1))]),_:1},8,["loading"]),i(I,{class:"filter-btn filter-btn--reset",disabled:ne.value,onClick:on},{default:_(()=>[i(w,{class:"filter-btn__icon"},{default:_(()=>[i(D(hl))]),_:1}),e[15]||(e[15]=c(" 重置 ",-1))]),_:1},8,["disabled"])])]),a("div",no,[e[16]||(e[16]=a("span",{class:"filter-quick__title"},"快捷日期",-1)),a("div",lo,[(o(),u(k,null,V(sa,l=>a("button",{key:l.text,type:"button",class:"date-pill",onClick:h=>an(l)},r(l.text),9,oo)),64))])])])]),_:1}),i(E,{class:"yeji-panel yeji-main-tabs-card",shadow:"never"},{default:_(()=>[e[120]||(e[120]=a("div",{class:"yeji-table-tabs-head"},[a("span",{class:"yeji-table-tabs-head__title"},"表格统计"),a("span",{class:"yeji-table-tabs-head__hint"},"列较多时可横向滚动浏览;「部门 / 排名」列在滚动时保持固定。")],-1)),Fa.value?(o(),j(He,{key:0,modelValue:_e.value,"onUpdate:modelValue":e[3]||(e[3]=l=>_e.value=l),class:"yeji-view-tabs"},{default:_(()=>[W.value?(o(),j(me,{key:0,label:"医生统计",name:"doctor",lazy:""},{default:_(()=>[W.value?(o(),j(E,{key:0,class:"yeji-panel doctor-daily-card doctor-daily-card--nested",shadow:"never"},{header:_(()=>[a("div",so,[a("div",io,[e[17]||(e[17]=a("span",{class:"doctor-daily-card__title"},"医生明细",-1)),ct.value?(o(),u("span",ro,r(ct.value),1)):f("",!0)]),a("div",uo,[i(I,{type:"primary",size:"small",loading:Ve.value,onClick:Mt},{default:_(()=>[...e[18]||(e[18]=[c(" 刷新 ",-1)])]),_:1},8,["loading"])])])]),default:_(()=>[K((o(),j(Y,{data:B.value,size:"small",border:"",stripe:"",class:"doctor-daily-table","show-summary":"","summary-method":Ja},{default:_(()=>[i(p,{prop:"doctor_name",label:"医生","min-width":"100",fixed:""}),i(p,{prop:"system_prescription_count",label:"系统开方","min-width":"88",align:"right"}),i(p,{prop:"manual_prescription_count",label:"手动开方","min-width":"88",align:"right"}),i(p,{prop:"deal_amount",label:"成交金额","min-width":"110",align:"right"},{default:_(({row:l})=>[c("¥ "+r(ta(l.deal_amount)),1)]),_:1}),i(p,{prop:"deal_order_count",label:"接诊诊单","min-width":"88",align:"right"}),i(p,{prop:"appointment_total",label:"总挂号","min-width":"88",align:"right"},{header:_(()=>[e[19]||(e[19]=a("span",null,"总挂号",-1)),i(L,{effect:"dark",placement:"top",content:"区间内该医生 doctor_appointment 全部状态合计(已预约/已完成/已过号/已取消);选部门时仅计经手医助归属在所选部门子树的挂号(与业绩看板「预约诊单」医助口径一致)"},{default:_(()=>[i(w,{class:"doctor-daily-th__hint"},{default:_(()=>[i(D(M))]),_:1})]),_:1})]),_:1}),i(p,{prop:"appointment_completed",label:"挂号完成","min-width":"88",align:"right"}),i(p,{prop:"appointment_missed",label:"过号","min-width":"72",align:"right"}),i(p,{prop:"appointment_cancelled",label:"取消","min-width":"72",align:"right"}),i(p,{prop:"appointment_conversion_rate",label:"挂号率","min-width":"92",align:"right"},{header:_(()=>[e[20]||(e[20]=a("span",null,"挂号率",-1)),i(L,{effect:"dark",placement:"top",content:"挂号率 = 成交单数 / 总挂号数 × 100;总挂号为 0 时显示「—」"},{default:_(()=>[i(w,{class:"doctor-daily-th__hint"},{default:_(()=>[i(D(M))]),_:1})]),_:1})]),default:_(({row:l})=>[c(r(aa(l.appointment_conversion_rate)),1)]),_:1})]),_:1},8,["data"])),[[F,Ve.value]])]),_:1})):(o(),j(P,{key:1,description:"当前账号无医生统计权限"}))]),_:1})):f("",!0),oe.value?(o(),j(me,{key:1,label:"医助排行榜",name:"leaderboard",lazy:""},{default:_(()=>[S.value||de.value?K((o(),u("div",co,[S.value?(o(),u(k,{key:0},[a("p",_o,[c(r(S.value.range_note)+" ",1),a("span",po,r(S.value.start_date)+" ~ "+r(S.value.end_date),1)]),a("div",mo,[(o(!0),u(k,null,V(S.value.leaderboards,l=>(o(),u(k,{key:l.dept_id},[l.rows.length>0?(o(),u("div",vo,[a("div",fo,[c(r(l.dept_name)+" · 医助排行榜 ",1),S.value.channel_name?(o(),u("span",yo," ("+r(S.value.channel_name)+") ",1)):f("",!0)]),a("div",go,[a("table",bo,[a("thead",null,[a("tr",null,[e[22]||(e[22]=a("th",{class:"col-rank"},"排名",-1)),e[23]||(e[23]=a("th",{class:"col-abbr"},"部门",-1)),e[24]||(e[24]=a("th",{class:"col-name"},"姓名",-1)),e[25]||(e[25]=a("th",{class:"col-consult"},"接诊单数",-1)),e[26]||(e[26]=a("th",{class:"col-deal"},"接诊诊单",-1)),e[27]||(e[27]=a("th",{class:"col-assign"},"被指派数",-1)),e[28]||(e[28]=a("th",{class:"col-appointment"},"预约诊单",-1)),l.er_center_subtree?(o(),u(k,{key:0},[e[21]||(e[21]=a("th",{class:"col-revisit"},"复诊合计",-1)),(o(!0),u(k,null,V(Gt(l),h=>(o(),u("th",{key:"lbh-"+l.dept_id+"-"+h,class:"col-revisit-slot"},r(it(h)),1))),128))],64)):f("",!0),e[29]||(e[29]=a("th",null,"诊金",-1)),e[30]||(e[30]=a("th",null,[c("接诊率"),a("br"),a("span",{class:"th-sub"},"(元/进线)")],-1))])]),a("tbody",null,[(o(!0),u(k,null,V(l.rows,h=>(o(),u("tr",{key:h.admin_id,class:"yeji-row--action",onClick:m=>Un(h)},[a("td",wo,r(h.rank),1),a("td",ko,r(h.dept_abbr),1),a("td",jo,r(h.name),1),a("td",xo,r(Q(h.consult_count)),1),a("td",So,r(Q(h.deal_order_count)),1),a("td",{class:"col-assign",onClick:U(m=>Dn(h),["stop"])},[Number(h.assign_count??0)>0?(o(),u("span",Co,r(Q(h.assign_count??0)),1)):(o(),u(k,{key:1},[c(r(Q(h.assign_count??0)),1)],64))],8,No),a("td",{class:"col-appointment",onClick:U(m=>En(h),["stop"])},[Number(h.appointment_count??0)>0?(o(),u("span",Lo,r(Q(h.appointment_count??0)),1)):(o(),u(k,{key:1},[c(r(Q(h.appointment_count??0)),1)],64))],8,Do),l.er_center_subtree?(o(),u(k,{key:0},[a("td",{class:"col-revisit",onClick:U(m=>vn(h),["stop"])},[Number(h.revisit_count??0)>0?(o(),u("span",$o,r(Q(h.revisit_count??0)),1)):(o(),u(k,{key:1},[c(r(Q(h.revisit_count??0)),1)],64))],8,zo),(o(!0),u(k,null,V(Gt(l),m=>(o(),u("td",{key:"lbc-"+h.admin_id+"-"+m,class:"col-revisit-slot",onClick:U(T=>fn(h,m),["stop"])},[le(h,m)>0?(o(),u("span",Ro,r(Q(le(h,m))),1)):(o(),u(k,{key:1},[c(r(Q(le(h,m))),1)],64))],8,Ao))),128))],64)):f("",!0),a("td",null,r(O(h.fee_amount)),1),a("td",null,r(O(h.consult_rate)),1)],8,ho))),128))])])]),a("div",Po,[e[31]||(e[31]=a("span",null,"诊金单位:元 · 诊金/接诊诊单/复诊均按「订单创建人 = 该医助」归属,与部门「合计业绩 / 接诊诊单 / 复诊」同口径 · 被指派数与部门业绩表同口径 · 接诊率 = 诊金 ÷ 进线(元/进线)",-1)),l.er_center_subtree?(o(),u("span",To," · 复诊列为二中心口径(同一诊单业务单序列第 2 笔起),点击数字查看对应业务订单 ")):f("",!0),e[32]||(e[32]=a("span",null," · 预约诊单:预约日期在统计区间内,状态含已预约/已完成/已过号(不含已取消),医助归属与接诊单数一致(按挂号 assistant_id 优先,否则诊单 assistant_id);各科组展示全部医助。 ",-1))])])):f("",!0)],64))),128))]),!de.value&&tn.value===0?(o(),u("div",Io,[i(P,{description:"当前筛选下暂无医助排行数据"})])):f("",!0)],64)):f("",!0)])),[[F,de.value]]):de.value?f("",!0):(o(),j(P,{key:1,class:"yeji-charts-empty",description:"当前筛选下暂无医助排行数据"}))]),_:1})):f("",!0),Fe.value?(o(),j(me,{key:2,label:"甄养堂互联网医院诊金",name:"zyyt",lazy:""},{default:_(()=>[K((o(),u("div",Mo,[!ne.value&&re.value.length===0?(o(),u("div",Oo,[i(P,{description:"暂无数据"})])):f("",!0),(o(!0),u(k,null,V(re.value,(l,h)=>(o(),u("div",{key:h,class:"yeji-table"},[a("div",Eo,r(ha(l)),1),a("div",Fo,[a("table",Vo,[a("thead",null,[a("tr",null,[e[112]||(e[112]=a("th",{class:"col-dept"},"部门",-1)),a("th",null,[e[39]||(e[39]=a("span",null,"进线数据",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Bo,[e[37]||(e[37]=c(" add_external_contact 事件数,按接待企微成员归属部门;定渠道时须客户带对应企微标签。",-1)),e[38]||(e[38]=a("br",null,null,-1)),l.channel_name?(o(),u(k,{key:0},[e[33]||(e[33]=a("b",null,"二中心及其组织下级",-1)),e[34]||(e[34]=c("(与部门 ErCenter 子树一致)在选定渠道下进线计 ",-1)),e[35]||(e[35]=a("b",null,"0",-1)),e[36]||(e[36]=c("。 ",-1))],64)):f("",!0)])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:2},1024)]),a("th",null,[e[57]||(e[57]=a("span",null,"被指派数",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Yo,[e[47]||(e[47]=a("b",null,"tcm_diagnosis_assign_log",-1)),e[48]||(e[48]=c(" 中成功指派(",-1)),e[49]||(e[49]=a("b",null,"to_assistant_id > 0",-1)),e[50]||(e[50]=c(",",-1)),e[51]||(e[51]=a("b",null,"剔除勾选「继承」的指派",-1)),e[52]||(e[52]=c(")按",-1)),e[53]||(e[53]=a("b",null,"指派操作时间",-1)),e[54]||(e[54]=c("落在所选区间内,「医助 × 诊单」去重、剔除已删诊单,与「复诊接诊率」页面同口径。按",-1)),e[55]||(e[55]=a("b",null,"被指派医助",-1)),e[56]||(e[56]=c("归属展示部门。",-1)),l.channel_name?(o(),u(k,{key:0},[c(" 选定渠道时收窄与「"+r(l.channel_name)+"」业绩同口径(标签诊单或 channels EXISTS)。",1),e[40]||(e[40]=a("br",null,null,-1)),e[41]||(e[41]=a("b",null,"二中心及其组织下级",-1)),e[42]||(e[42]=c("在选定渠道下本列计 ",-1)),e[43]||(e[43]=a("b",null,"0",-1)),e[44]||(e[44]=c("。 ",-1))],64)):(o(),u(k,{key:1},[e[45]||(e[45]=a("br",null,null,-1)),e[46]||(e[46]=c("未选渠道时不限客户来源,与「合计业绩」列渠道无关。",-1))],64))])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:2},1024)]),a("th",null,[e[59]||(e[59]=a("span",null,"复诊合计",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[58]||(e[58]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 仅"),a("b",null,"名称含「二中心」"),c("的部门及其组织下级:候选订单为有诊单医助、且 "),a("b",null,"fulfillment_status"),c(" 非 4/9/10("),a("b",null,"NULL 计入"),c(")的业务单,按患者 "),a("b",null,"create_time"),c(" 排序,"),a("b",null,"第 1 笔不计"),c(";第 2 笔起计入合计,分列复诊2、复诊三…。"),a("b",null,"归属"),c("按订单创建人的人事部门,与"),a("b",null,"合计业绩"),c("列同口径。非二中心子树部门为 0。 ")],-1)])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:1})]),(o(!0),u(k,null,V(jt.value,m=>(o(),u("th",{key:"yjv-h-"+m},[a("span",null,r(it(m)),1),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Uo,[e[60]||(e[60]=c(" 该列统计区间内患者第 ",-1)),a("b",null,r(m),1),e[61]||(e[61]=c(" 笔业务单条数(第 1 笔初诊单列不计);归属与合计列相同。 ",-1))])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:2},1024)]))),128)),a("th",null,[e[63]||(e[63]=a("span",null,"合计业绩",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[62]||(e[62]=[a("div",{style:{"max-width":"300px","line-height":"1.7","font-size":"12px"}},[c(" 按订单"),a("b",null,"创建时间"),c("统计(剔除履约已取消/拒收/退款 4·9·10),金额与"),a("b",null,"接诊诊单"),c("列一致:仅按"),a("b",null,"订单创建人"),c("的人事部门落在本展示行(含下级)计入,多行命中时取最深的展示部门。与"),a("b",null,"医助排行榜诊金"),c("同口径。"),a("br"),a("b",null,"不受渠道筛选影响"),c("。与侧栏按部门打开的业务订单列表对齐。"),a("br"),c(" 点击金额可查看对应业务订单明细(侧栏默认「合计业绩」全量列表)。 ")],-1)])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:1})]),l.channel_name?(o(),u("th",Ho,[a("span",Wo,r(Ut("perf")),1),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",qo,[c(" 「"+r(l.channel_name)+"」渠道业绩(与卡片标题渠道一致)。与「处方订单列表」业绩",1),e[64]||(e[64]=a("b",null,"同口径",-1)),e[65]||(e[65]=c(":按订单 ",-1)),e[66]||(e[66]=a("b",null,"create_time",-1)),e[67]||(e[67]=c(" 归日,剔除履约状态 4(已取消)/9(拒收)/10(退款)。",-1)),e[68]||(e[68]=a("br",null,null,-1)),e[69]||(e[69]=c(" 渠道判定用 EXISTS:该患者有任一挂号 ",-1)),e[70]||(e[70]=a("b",null,"channels 命中字典 + status=3",-1)),e[71]||(e[71]=c("(不限挂号时点)。",-1)),e[72]||(e[72]=a("br",null,null,-1)),e[73]||(e[73]=c(" 点击金额可查看该部门本渠道订单明细(侧栏「渠道筛选」列表)。 ",-1))])]),default:_(()=>[i(w,{class:"col-info","aria-label":"说明"},{default:_(()=>[i(D(M))]),_:1})]),_:2},1024)])):f("",!0),a("th",null,[e[75]||(e[75]=a("span",null,"预约诊单",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[74]||(e[74]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 已预约 / 已完成 / 已过号(不含已取消),按"),a("b",null,"预约日期"),c("落在区间内统计;部门归属医助优先,否则接诊医生;与"),a("b",null,"医助排行榜 · 预约诊单"),c("及明细弹窗同口径。"),a("br"),c(" 点击数字可查看每条挂号记录。 ")],-1)])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:1})]),a("th",null,[e[77]||(e[77]=a("span",null,"已完成挂号",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[76]||(e[76]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 仅"),a("b",null,"已完成"),c("(status=3),与 admin「医生预约 / 已完成」列表计数条件一致(appointment_date、诊单未软删);部门归属医助优先,否则接诊医生。 ")],-1)])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:1})]),a("th",null,[e[79]||(e[79]=a("span",null,"接诊诊单",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[78]||(e[78]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[a("b",null,"业务订单条数"),c("(计业绩):订单 "),a("b",null,"create_time"),c(" 落入区间、"),a("b",null,"fulfillment_status ∉ {4,9,10}"),c(";与列表筛选 "),a("b",null,"assistant_dept_id"),c(" 时一致——"),a("b",null,"创建人"),c("人事部门优先,无创建人则诊单 "),a("b",null,"医助"),c(";落在该部门子树即计入(表格多行命中时取最深的展示部门)。与侧栏勾选「与表格业绩对齐」时的集合可能略有差异。选定渠道时本列仍为全量。 ")],-1)])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:1})]),l.channel_name?(o(),u("th",Go,[a("span",Jo,r(Ut("deal")),1),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Ko,[c(" 「"+r(l.channel_name)+"」渠道成交单数;与渠道业绩同源:区间内 ",1),e[80]||(e[80]=a("b",null,"计业绩的业务订单",-1)),e[81]||(e[81]=c(" 条数(剔除 4/9/10),按订单 ",-1)),e[82]||(e[82]=a("b",null,"create_time",-1)),e[83]||(e[83]=c(" 归日;渠道判定同业绩列。 ",-1))])]),default:_(()=>[i(w,{class:"col-info","aria-label":"说明"},{default:_(()=>[i(D(M))]),_:1})]),_:2},1024)])):f("",!0),l.channel_name?(o(),u("th",Xo,[a("span",Zo,r(Ut("aov")),1),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",Qo," 「"+r(l.channel_name)+"」渠道客单价 ≈ 渠道业绩 ÷ 渠道成交单。 ",1)]),default:_(()=>[i(w,{class:"col-info","aria-label":"说明"},{default:_(()=>[i(D(M))]),_:1})]),_:2},1024)])):f("",!0),a("th",null,[e[109]||(e[109]=a("span",null,"ROI",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[a("div",es,[l.channel_name?(o(),u(k,{key:0},[e[84]||(e[84]=c(" 有渠道时:",-1)),e[85]||(e[85]=a("b",null,"合计行 ROI",-1)),e[86]||(e[86]=c(" = ",-1)),a("b",null,r(l.channel_name)+"业绩合计",1),e[87]||(e[87]=c("(与上表该渠道业绩列合计一致,",-1)),e[88]||(e[88]=a("b",null,"不含二中心及其组织下级",-1)),e[89]||(e[89]=c(")÷ ",-1)),e[90]||(e[90]=a("b",null,"投放成本合计",-1)),e[91]||(e[91]=c("。",-1)),e[92]||(e[92]=a("br",null,null,-1)),e[93]||(e[93]=c(" 部门行 ROI = 该部门 ",-1)),a("b",null,r(l.channel_name)+"业绩",1),e[94]||(e[94]=c(" ÷ 该部门 ",-1)),e[95]||(e[95]=a("b",null,"投放成本",-1)),e[96]||(e[96]=c(";",-1)),e[97]||(e[97]=a("b",null,"二中心子树",-1)),e[98]||(e[98]=c("部门该渠道业绩与进线为 0、投放成本分摊进线计 0,故无 ROI。与「合计业绩」列无关。 ",-1))],64)):(o(),u(k,{key:1},[e[99]||(e[99]=a("b",null,"合计行 ROI",-1)),e[100]||(e[100]=c(" = 全表业绩合计(",-1)),e[101]||(e[101]=a("b",null,"不含二中心子树",-1)),e[102]||(e[102]=c("各部门行业绩)÷ ",-1)),e[103]||(e[103]=a("b",null,"投放成本合计",-1)),e[104]||(e[104]=c(";",-1)),e[105]||(e[105]=a("br",null,null,-1)),e[106]||(e[106]=c(" 部门行 = 该部门「合计业绩」口径业绩 ÷ 该部门均摊投放成本;",-1)),e[107]||(e[107]=a("b",null,"二中心子树",-1)),e[108]||(e[108]=c("部门不参与成本分摊(进线占比计 0),故无 ROI。 ",-1))],64))])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:2},1024)]),a("th",null,[e[111]||(e[111]=a("span",null,"投放成本",-1)),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[110]||(e[110]=[a("div",{style:{"max-width":"320px","line-height":"1.7","font-size":"12px"}},[c(" 区间与渠道与账务表一致后得到"),a("b",null,"总投放成本"),c(";"),a("b",null,"单进线成本"),c(" = 总成本 ÷ 各展示部门"),a("b",null,"进线合计"),c(";"),a("br"),c(" 各部门行投放成本 = 单进线成本 × 该部门进线(四舍五入尾差并入进线最多的部门)。"),a("b",null,"二中心及其组织下级"),c("进线在分摊中计 "),a("b",null,"0"),c("(与 ROI 分子扣除范围一致)。 ")],-1)])]),default:_(()=>[i(w,{class:"col-info"},{default:_(()=>[i(D(M))]),_:1})]),_:1})])])]),a("tbody",null,[(o(!0),u(k,null,V(l.rows,m=>(o(),u("tr",{key:`${h}-${m.dept_id}-${m.dept_name}`,class:bt(["yeji-row--action",{"yeji-row--unassigned":xe(m),"yeji-row--idle":m.dept_id<=0&&!xe(m)}]),onClick:T=>Yn(l,m)},[a("td",as,r(m.dept_name),1),a("td",{onClick:T=>jn(T,l,m)},[m.dept_id>0&&Number(m.lead_count)>0?(o(),u("span",ls,r(N(m.lead_count)),1)):(o(),u(k,{key:1},[c(r(N(m.lead_count)),1)],64))],8,ns),a("td",{onClick:U(T=>xn(T,l,m),["stop"])},[fa(m)?(o(),u("span",ss,r(N(m.assign_count??0)),1)):(o(),u(k,{key:1},[c(r(N(m.assign_count??0)),1)],64))],8,os),a("td",{onClick:U(T=>hn(l,m),["stop"])},[m.dept_id>0&&Number(m.revisit_count??0)>0?(o(),u("span",rs,r(N(m.revisit_count??0)),1)):(o(),u(k,{key:1},[c(r(N(m.revisit_count??0)),1)],64))],8,is),(o(!0),u(k,null,V(jt.value,T=>(o(),u("td",{key:"yjv-"+h+"-"+m.dept_id+"-"+T,onClick:U(Ca=>wn(l,m,T),["stop"])},[m.dept_id>0&&le(m,T)>0?(o(),u("span",us,r(N(le(m,T))),1)):(o(),u(k,{key:1},[c(r(N(le(m,T))),1)],64))],8,ds))),128)),a("td",null,[Et(l,m,"total")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:U(T=>ca(l,m,"total"),["stop"])},r(O(m.performance_amount)),9,cs)):(o(),u(k,{key:1},[c(r(O(m.performance_amount)),1)],64))]),l.channel_name?(o(),u("td",_s,[Et(l,m,"channel")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:U(T=>ca(l,m,"channel"),["stop"])},r(O(m.completed_performance_amount)),9,ps)):(o(),u(k,{key:1},[c(r(O(m.completed_performance_amount)),1)],64))])):f("",!0),a("td",{onClick:U(T=>Fn(l,m),["stop"])},[ba(m)&&Number(m.appointment_booked_count??0)>0?(o(),u("span",vs,r(N(m.appointment_booked_count??0)),1)):(o(),u(k,{key:1},[c(r(N(m.appointment_booked_count??0)),1)],64))],8,ms),a("td",null,r(N(m.consult_count)),1),a("td",null,r(N(m.deal_order_count)),1),l.channel_name?(o(),u("td",fs,r(N(m.channel_consult_count)),1)):f("",!0),l.channel_name?(o(),u("td",ys,r(xa(m.channel_avg_price)),1)):f("",!0),a("td",{class:bt(Na(m.roi))},r(Sa(m.roi)),3),a("td",null,r(O(m.cost_amount)),1)],10,ts))),128)),a("tr",gs,[e[113]||(e[113]=a("td",{class:"col-dept"},"合计",-1)),a("td",null,r(N(l.total.lead_count)),1),a("td",null,r(N(l.total.assign_count??0)),1),a("td",null,r(N(l.total.revisit_count??0)),1),(o(!0),u(k,null,V(jt.value,m=>(o(),u("td",{key:"yjvt-"+h+"-"+m},r(N(le(l.total,m))),1))),128)),a("td",null,[Ft(l,"total")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:U(m=>_a(l,"total"),["stop"])},r(O(l.total.performance_amount)),9,bs)):(o(),u(k,{key:1},[c(r(O(l.total.performance_amount)),1)],64))]),l.channel_name?(o(),u("td",hs,[Ft(l,"channel")?(o(),u("span",{key:0,class:"yeji-lead-cell--link",onClick:U(m=>_a(l,"channel"),["stop"])},r(O(l.total.completed_performance_amount)),9,ws)):(o(),u(k,{key:1},[c(r(O(l.total.completed_performance_amount)),1)],64))])):f("",!0),a("td",null,r(N(l.total.appointment_booked_count??0)),1),a("td",null,r(N(l.total.consult_count)),1),a("td",null,r(N(l.total.deal_order_count)),1),l.channel_name?(o(),u("td",ks,r(N(l.total.channel_consult_count)),1)):f("",!0),l.channel_name?(o(),u("td",js,r(xa(l.total.channel_avg_price)),1)):f("",!0),a("td",{class:bt(Na(l.total.roi))},r(Sa(l.total.roi)),3),a("td",null,r(O(l.total.cost_amount)),1)])])])]),a("div",xs,[a("span",null,"区间:"+r(l.start_date)+" ~ "+r(l.end_date),1),l.channel_name?(o(),u("span",Ss," · 渠道:"+r(l.channel_name),1)):f("",!0),l.total.cost_per_lead!=null&&l.total.cost_per_lead>0?(o(),u("span",Ns," · 单进线成本:"+r(O(l.total.cost_per_lead))+" 元 ",1)):f("",!0)])]))),128))])),[[F,ne.value]])]),_:1})):f("",!0),Ze.value?(o(),j(me,{key:3,label:"目标看板(卡片)",name:"zyyt_matrix",lazy:""},{default:_(()=>[K((o(),u("div",Cs,[Ye.value?(o(),u(k,{key:0},[a("h2",Ds,r(Ye.value.title),1),a("div",Ls,[(o(!0),u(k,null,V(Ye.value.sections,l=>(o(),u("div",{key:"tm-"+l.dept_id,class:"tp-matrix-card",role:"listitem"},[a("div",zs,[a("div",$s,[l.parent_dept_name?(o(),u("span",As,r(l.parent_dept_name),1)):f("",!0),a("span",Rs,r(l.dept_name)+"目标",1)]),a("span",Ps,r(Zn(l.target_amount)),1)]),a("table",Ts,[a("tbody",null,[a("tr",null,[e[114]||(e[114]=a("td",{class:"tp-matrix-card__lbl"},"昨日诊金",-1)),a("td",Is,r(N(l.yesterday_amount)),1)]),l.douyin_amount!==null?(o(),u("tr",Ms,[e[115]||(e[115]=a("td",{class:"tp-matrix-card__lbl"},"抖音总诊金",-1)),a("td",Os,r(N(l.douyin_amount)),1)])):f("",!0),l.tuifen_amount!==null?(o(),u("tr",Es,[e[116]||(e[116]=a("td",{class:"tp-matrix-card__lbl"},"推粉总诊金",-1)),a("td",Fs,r(N(l.tuifen_amount)),1)])):f("",!0),a("tr",null,[e[117]||(e[117]=a("td",{class:"tp-matrix-card__lbl"},"总诊金",-1)),a("td",Vs,r(N(l.total_amount)),1)]),a("tr",null,[e[118]||(e[118]=a("td",{class:"tp-matrix-card__lbl"},"目标进度",-1)),a("td",Bs,r(O(l.target_progress)),1)]),a("tr",null,[e[119]||(e[119]=a("td",{class:"tp-matrix-card__lbl"},"完成进度",-1)),a("td",{class:bt(["tp-matrix-card__num tp-matrix-card__num--hot",Xn(l.completion_rate)])},r(Kn(l.completion_rate)),3)])])])]))),128))])],64)):mt.value?f("",!0):(o(),j(P,{key:1,class:"tp-matrix-empty",description:"暂无目标数据,请先配置当月部门目标或为部门设置诊金目标后刷新页面"}))])),[[F,mt.value]])]),_:1})):f("",!0)]),_:1},8,["modelValue"])):(o(),j(P,{key:1,description:"当前账号无表格统计 Tab 权限"}))]),_:1}),i(E,{class:"yeji-panel yeji-charts-only-card",shadow:"never"},{default:_(()=>[e[130]||(e[130]=a("div",{class:"yeji-charts-only-head"},"统计图",-1)),K((o(),u("div",Ys,[Ba.value?(o(),u(k,{key:0},[W.value&&(At.value||Rt.value||Pt.value||Tt.value||It.value)?(o(),u("section",Us,[a("h3",Hs,[e[121]||(e[121]=c(" 医生统计 ",-1)),ct.value?(o(),u("span",Ws,r(ct.value),1)):f("",!0)]),i(Se,{gutter:16},{default:_(()=>[i(G,{xs:24,lg:9},{default:_(()=>[a("div",qs,[e[122]||(e[122]=a("div",{class:"yeji-chart-panel__label"},"成交金额 TOP(条形)",-1)),At.value?(o(),j(D(ee),{key:0,class:"yeji-echart",option:Wa.value,autoresize:""},null,8,["option"])):(o(),j(P,{key:1,description:"暂无成交金额数据","image-size":72}))])]),_:1}),i(G,{xs:24,lg:8},{default:_(()=>[a("div",Gs,[e[123]||(e[123]=a("div",{class:"yeji-chart-panel__label"},"开方构成(堆叠柱)",-1)),Rt.value?(o(),j(D(ee),{key:0,class:"yeji-echart yeji-echart--short",option:qa.value,autoresize:""},null,8,["option"])):(o(),j(P,{key:1,description:"暂无开方数据","image-size":72}))])]),_:1}),i(G,{xs:24,lg:7},{default:_(()=>[a("div",Js,[e[124]||(e[124]=a("div",{class:"yeji-chart-panel__label"},"挂号结果(环形 · 表尾合计)",-1)),Pt.value?(o(),j(D(ee),{key:0,class:"yeji-echart yeji-echart--short",option:Ya.value,autoresize:""},null,8,["option"])):(o(),j(P,{key:1,description:"暂无挂号汇总","image-size":72}))])]),_:1})]),_:1}),i(Se,{gutter:16,class:"yeji-chart-subrow"},{default:_(()=>[i(G,{xs:24,lg:12},{default:_(()=>[a("div",Ks,[e[125]||(e[125]=a("div",{class:"yeji-chart-panel__label"},"接诊诊单 × 金额(散点)",-1)),Tt.value?(o(),j(D(ee),{key:0,class:"yeji-echart yeji-echart--compact",option:Ua.value,autoresize:""},null,8,["option"])):(o(),j(P,{key:1,description:"至少两名医生同时有接诊诊单与金额时可展示","image-size":72}))])]),_:1}),i(G,{xs:24,lg:12},{default:_(()=>[a("div",Xs,[e[126]||(e[126]=a("div",{class:"yeji-chart-panel__label"},"TOP 医生雷达(相对最高值归一)",-1)),It.value?(o(),j(D(ee),{key:0,class:"yeji-echart yeji-echart--compact",option:Ha.value,autoresize:""},null,8,["option"])):(o(),j(P,{key:1,description:"至少两名医生有数据时可展示","image-size":72}))])]),_:1})]),_:1})])):f("",!0),(o(!0),u(k,null,V(re.value,(l,h)=>(o(),u(k,{key:"dept-chart-"+h},[ea(l)?(o(),u("section",Zs,[a("h3",Qs,r(ha(l)),1),i(D(ee),{class:"yeji-echart yeji-echart--tall",option:Hn(l),autoresize:""},null,8,["option"]),ka(l)||ja(l)?(o(),j(Se,{key:0,gutter:16,class:"yeji-chart-subrow"},{default:_(()=>[ka(l)?(o(),j(G,{key:0,xs:24,md:12},{default:_(()=>[a("div",ei,[e[127]||(e[127]=a("div",{class:"yeji-chart-panel__label"}," 进线 → 接诊 → 成交(汇总漏斗) ",-1)),i(D(ee),{class:"yeji-echart yeji-echart--compact",option:Gn(l),autoresize:""},null,8,["option"])])]),_:2},1024)):f("",!0),ja(l)?(o(),j(G,{key:1,xs:24,md:12},{default:_(()=>[a("div",ti,[e[128]||(e[128]=a("div",{class:"yeji-chart-panel__label"}," 部门合计业绩占比(TOP10 + 其它) ",-1)),i(D(ee),{class:"yeji-echart yeji-echart--compact",option:Jn(l),autoresize:""},null,8,["option"])])]),_:2},1024)):f("",!0)]),_:2},1024)):f("",!0)])):f("",!0)],64))),128)),oe.value&&S.value?(o(!0),u(k,{key:1},V(Qt.value,l=>(o(),u("section",{key:"lb-chart-"+l.dept_id,class:"yeji-chart-block"},[a("h3",ai,[c(r(l.dept_name)+" · 医助 ",1),S.value.channel_name?(o(),u("span",ni," ("+r(S.value.channel_name)+") ",1)):f("",!0),a("span",li,r(S.value.start_date)+"~"+r(S.value.end_date),1)]),i(Se,{gutter:16},{default:_(()=>[i(G,{xs:24,lg:wa(l)?14:24},{default:_(()=>[i(D(ee),{class:"yeji-echart",option:Wn(l,S.value),autoresize:""},null,8,["option"])]),_:2},1032,["lg"]),wa(l)?(o(),j(G,{key:0,xs:24,lg:10},{default:_(()=>[a("div",oi,[e[129]||(e[129]=a("div",{class:"yeji-chart-panel__label"},"诊金占比",-1)),i(D(ee),{class:"yeji-echart yeji-echart--compact",option:qn(l,S.value),autoresize:""},null,8,["option"])])]),_:2},1024)):f("",!0)]),_:2},1024)]))),128)):f("",!0)],64)):!ne.value&&(!W.value||!Ve.value)&&(!oe.value||!de.value)?(o(),j(P,{key:1,class:"yeji-charts-empty",description:"当前筛选下暂无图表数据,请调整条件后查询"})):f("",!0)])),[[F,ne.value||W.value&&Ve.value||oe.value&&de.value]])]),_:1}),i(We,{modelValue:se.value,"onUpdate:modelValue":e[5]||(e[5]=l=>se.value=l),direction:"rtl",size:"min(1120px, 98vw)","destroy-on-close":"",class:"yeji-order-drawer","show-close":!0},{header:_(()=>[a("div",si,[a("h3",ii,r(et.value),1),a("p",ri,r(tt.value),1)])]),default:_(()=>[a("div",di,[a("section",ui,[a("div",ci,[e[131]||(e[131]=a("span",{class:"yeji-order-drawer__stat-label"},"符合条件的订单",-1)),a("span",_i,r(_t.value.toLocaleString("zh-CN"))+" 笔",1)]),a("div",pi,[e[132]||(e[132]=a("span",{class:"yeji-order-drawer__stat-label"},[c(" 约诊 "),a("span",{class:"yeji-order-drawer__stat-note"},"(已完成挂号;日期按挂号 appointment_date;医助=挂号或诊单,与看板接诊一致)")],-1)),a("span",mi,r(la.value===null?"—":la.value.toLocaleString("zh-CN"))+" 次",1)]),oa.value&&q.value?(o(),u(k,{key:0},[a("div",vi,[a("span",fi,[e[133]||(e[133]=c(" 合计业绩 ",-1)),a("span",yi,"(与看板「合计业绩」列同口径,不限渠道;"+r(q.value.totalOrderCount.toLocaleString("zh-CN"))+" 笔)",1)]),a("span",gi," ¥"+r(vt(q.value.totalAmount)),1)]),a("div",bi,[a("span",hi,[c(r(Ot.value)+"业绩 ",1),a("span",wi,"(与看板「"+r(Ot.value)+"业绩」同口径;"+r(q.value.channelOrderCount.toLocaleString("zh-CN"))+" 笔)",1)]),a("span",ki," ¥"+r(vt(Xa.value)),1)])],64)):(o(),u("div",ji,[e[134]||(e[134]=a("span",{class:"yeji-order-drawer__stat-label"},[c(" 业务订单金额合计 "),a("span",{class:"yeji-order-drawer__stat-note"},"(不含履约 4·9·10,与上方业绩口径一致)")],-1)),a("span",xi," ¥"+r(vt(na.value)),1)])),ke.value.length>0?(o(),u("div",Si,[e[135]||(e[135]=a("span",{class:"yeji-order-drawer__stat-label"},"本页小计",-1)),a("span",Ni,"¥"+r(vt(Ka.value)),1)])):f("",!0)]),oa.value?(o(),j(He,{key:0,modelValue:X.value,"onUpdate:modelValue":e[4]||(e[4]=l=>X.value=l),class:"yeji-order-drawer__list-tabs",onTabChange:yn},{default:_(()=>[i(me,{label:"合计业绩(全量订单)",name:"total"}),i(me,{label:`渠道筛选(${Ot.value})`,name:"channel"},null,8,["label"])]),_:1},8,["modelValue"])):f("",!0),K((o(),u("div",Ci,[ke.value.length>0||we.value?(o(),j(Y,{key:0,data:ke.value,size:"small",stripe:"",border:"","max-height":"58vh",class:"yeji-order-drawer__table","empty-text":we.value?"加载中…":"暂无数据"},{default:_(()=>[i(p,{type:"index",label:"#",width:"46",index:dn}),i(p,{prop:"order_no",label:"订单号","min-width":"152","show-overflow-tooltip":""}),i(p,{label:"关联挂号","min-width":"218"},{default:_(({row:l})=>[l.linked_appointment?(o(),u("div",Di,[a("div",Li,[e[136]||(e[136]=a("span",{class:"yeji-order-appt-k"},"日期",-1)),c(" "+r(un(l.linked_appointment)),1)]),a("div",zi,[e[137]||(e[137]=a("span",{class:"yeji-order-appt-k"},"状态",-1)),c(" "+r(l.linked_appointment.status_desc||"—")+" ",1),l.linked_appointment.doctor_name?(o(),u("span",$i," · "+r(l.linked_appointment.doctor_name),1)):f("",!0)]),a("div",Ai,[e[138]||(e[138]=a("span",{class:"yeji-order-appt-k"},"类型",-1)),c(" "+r(l.linked_appointment.appointment_type_desc||"—"),1)]),a("div",Ri,[e[140]||(e[140]=a("span",{class:"yeji-order-appt-k"},"渠道",-1)),a("span",Pi,[c(r(l.linked_appointment.channel_source_desc||l.linked_appointment.channel_source||"—")+" ",1),ra(l.linked_appointment)!==""?(o(),u("span",Ti," (字典 value "+r(ra(l.linked_appointment))+" ) ",1)):f("",!0)]),i(L,{placement:"top",effect:"dark","show-after":200},{content:_(()=>[...e[139]||(e[139]=[a("div",{style:{"max-width":"280px","line-height":"1.65","font-size":"12px"}},[c(" 「字典 value」= 系统字典 "),a("b",null,"channels"),c(" 的 value,与业绩表里按渠道收窄时所用"),a("b",null,"挂号 channels"),c("一致;便于和进线列所选渠道对照,"),a("b",null,"不是"),c("企微 add_external_contact 单上的独立编号。 ")],-1)])]),default:_(()=>[i(w,{class:"yeji-order-appt-info","aria-label":"说明"},{default:_(()=>[i(D(M))]),_:1})]),_:1})])])):(o(),u("span",Ii,"—"))]),_:1}),i(p,{label:"金额",width:"108",align:"right"},{default:_(({row:l})=>[a("span",Mi,"¥"+r(l.amount??"—"),1)]),_:1}),i(p,{prop:"recipient_name",label:"收货人",width:"96","show-overflow-tooltip":""}),i(p,{label:"履约",width:"104","show-overflow-tooltip":""},{default:_(({row:l})=>[c(r(rn(l.fulfillment_status)),1)]),_:1}),i(p,{label:"创建时间","min-width":"148"},{default:_(({row:l})=>[c(r(cn(l.create_time)),1)]),_:1}),i(p,{prop:"doctor_name",label:"开方人",width:"88","show-overflow-tooltip":""}),i(p,{prop:"assistant_name",label:"诊单医助",width:"88","show-overflow-tooltip":""}),i(p,{prop:"creator_name",label:"创建人",width:"88","show-overflow-tooltip":""})]),_:1},8,["data","empty-text"])):f("",!0),!we.value&&ke.value.length===0?(o(),j(P,{key:1,description:"暂无业务订单"})):f("",!0),a("div",Oi,[i(Ne,{"current-page":Z.value,"page-size":pt.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:_t.value,"page-sizes":[10,15,20,50],disabled:we.value,"hide-on-single-page":!1,onCurrentChange:gn,onSizeChange:bn},null,8,["current-page","page-size","total","disabled"])])])),[[F,we.value]])])]),_:1},8,["modelValue"]),i(ve,{modelValue:xt.value,"onUpdate:modelValue":e[6]||(e[6]=l=>xt.value=l),width:"min(680px, 94vw)","destroy-on-close":"",class:"yeji-unassigned-dialog"},{header:_(()=>[a("div",Ei,[e[141]||(e[141]=a("span",{class:"yeji-unassigned-dialog__title"},"「未归属中心」业绩拆解",-1)),a("p",Fi,r(Jt.value),1)])]),default:_(()=>[qe.value?(o(),u("p",Vi,r(qe.value),1)):f("",!0),K((o(),u("div",Bi,[Le.value.length>0||De.value?(o(),j(Y,{key:0,data:Le.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":De.value?"加载中…":"暂无数据"},{default:_(()=>[i(p,{prop:"name",label:"诊单医助","min-width":"120","show-overflow-tooltip":""}),i(p,{label:"账号",width:"88",align:"right"},{default:_(({row:l})=>[c(r(l.admin_id>0?l.admin_id:"—"),1)]),_:1}),i(p,{label:"订单数",width:"88",align:"right"},{default:_(({row:l})=>[c(r(N(l.order_count)),1)]),_:1}),i(p,{label:"业绩金额","min-width":"112",align:"right"},{default:_(({row:l})=>[c(r(O(l.amount)),1)]),_:1})]),_:1},8,["data","empty-text"])):f("",!0),!De.value&&Le.value.length===0?(o(),j(P,{key:1,description:"暂无拆解数据"})):f("",!0)])),[[F,De.value]])]),_:1},8,["modelValue"]),i(ve,{modelValue:Nt.value,"onUpdate:modelValue":e[7]||(e[7]=l=>Nt.value=l),width:"min(920px, 96vw)","destroy-on-close":"",class:"yeji-leadlines-dialog"},{header:_(()=>[a("div",Yi,[a("div",Ui,[e[142]||(e[142]=a("span",{class:"yeji-unassigned-dialog__title"},"进线数据明细",-1)),a("p",Hi,r(Zt.value),1)]),i(I,{size:"small",loading:Je.value,disabled:ue.value||Je.value||Re.value<=0,onClick:Mn},{default:_(()=>[...e[143]||(e[143]=[c(" 导出 ",-1)])]),_:1},8,["loading","disabled"])])]),default:_(()=>[Ke.value?(o(),u("p",Wi,r(Ke.value),1)):f("",!0),K((o(),u("div",qi,[Ae.value.length>0||ue.value?(o(),j(Y,{key:0,data:Ae.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":ue.value?"加载中…":"暂无数据"},{default:_(()=>[i(p,{prop:"event_time_text",label:"进线时间","min-width":"156","show-overflow-tooltip":""}),i(p,{prop:"reception_admin_name",label:"接待",width:"88","show-overflow-tooltip":""}),i(p,{prop:"external_contact_name",label:"客户","min-width":"100","show-overflow-tooltip":""}),i(p,{prop:"external_userid",label:"外部联系人ID","min-width":"140","show-overflow-tooltip":""}),i(p,{prop:"user_id",label:"企微成员ID","min-width":"120","show-overflow-tooltip":""}),i(p,{prop:"state",label:"渠道参数",width:"96","show-overflow-tooltip":""})]),_:1},8,["data","empty-text"])):f("",!0),!ue.value&&Ae.value.length===0?(o(),j(P,{key:1,description:"暂无进线明细"})):f("",!0),Re.value>0?(o(),u("div",Gi,[i(Ne,{"current-page":Xe.value,"page-size":rt.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:Re.value,"page-sizes":[10,20,50,100],disabled:ue.value,"hide-on-single-page":!1,onCurrentChange:Tn,onSizeChange:In},null,8,["current-page","page-size","total","disabled"])])):f("",!0)])),[[F,ue.value]])]),_:1},8,["modelValue"]),i(ve,{modelValue:dt.value,"onUpdate:modelValue":e[8]||(e[8]=l=>dt.value=l),width:"min(960px, 96vw)","destroy-on-close":"",class:"yeji-leadlines-dialog"},{header:_(()=>[a("div",Ji,[e[144]||(e[144]=a("span",{class:"yeji-unassigned-dialog__title"},"预约诊单 · 挂号明细",-1)),a("p",Ki,r(Dt.value),1)])]),default:_(()=>[Pe.value?(o(),u("p",Xi,r(Pe.value),1)):f("",!0),K((o(),u("div",Zi,[ce.value.length>0||fe.value?(o(),j(Y,{key:0,data:ce.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":fe.value?"加载中…":"暂无数据"},{default:_(()=>[i(p,{type:"index",label:"#",width:"46",index:On}),i(p,{prop:"appointment_date",label:"预约日期",width:"108"}),i(p,{prop:"appointment_time",label:"时段","min-width":"96","show-overflow-tooltip":""}),i(p,{prop:"status_desc",label:"状态",width:"84"}),i(p,{prop:"appointment_type_desc",label:"类型",width:"92"}),i(p,{prop:"patient_name",label:"患者","min-width":"92","show-overflow-tooltip":""}),i(p,{prop:"patient_phone",label:"手机","min-width":"116","show-overflow-tooltip":""}),i(p,{prop:"doctor_name",label:"接诊医生",width:"92","show-overflow-tooltip":""}),i(p,{prop:"assistant_name",label:"医助",width:"88","show-overflow-tooltip":""}),i(p,{label:"诊单ID",width:"84",align:"right"},{default:_(({row:l})=>[c(r(N(l.diagnosis_id??0)),1)]),_:1}),Ea.value?(o(),j(p,{key:0,prop:"channel_source",label:"渠道来源",width:"96","show-overflow-tooltip":""})):f("",!0)]),_:1},8,["data","empty-text"])):f("",!0),!fe.value&&ce.value.length===0?(o(),j(P,{key:1,description:"暂无挂号记录"})):f("",!0),Te.value>0?(o(),u("div",Qi,[i(Ne,{"current-page":ye.value,"page-size":Ie.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:Te.value,"page-sizes":[10,20,50,100],disabled:fe.value,"hide-on-single-page":!1,onCurrentChange:Vn,onSizeChange:Bn},null,8,["current-page","page-size","total","disabled"])])):f("",!0)])),[[F,fe.value]])]),_:1},8,["modelValue"]),i(ve,{modelValue:St.value,"onUpdate:modelValue":e[9]||(e[9]=l=>St.value=l),width:"min(560px, 94vw)","destroy-on-close":"",class:"yeji-unassigned-dialog"},{header:_(()=>[a("div",er,[e[145]||(e[145]=a("span",{class:"yeji-unassigned-dialog__title"},"复诊 · 医助拆解",-1)),a("p",tr,r(Kt.value),1)])]),default:_(()=>[Ge.value?(o(),u("p",ar,r(Ge.value),1)):f("",!0),K((o(),u("div",nr,[$e.value.length>0||ze.value?(o(),j(Y,{key:0,data:$e.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":ze.value?"加载中…":"暂无数据"},{default:_(()=>[i(p,{prop:"name",label:"医助","min-width":"120","show-overflow-tooltip":""}),i(p,{label:"业务订单",width:"108",align:"right"},{default:_(({row:l})=>[Number(l.order_count)>0?(o(),u("span",{key:0,class:"yeji-lead-cell--link",role:"button",tabindex:"0",onClick:h=>pa(l),onKeydown:Rl(U(h=>pa(l),["prevent"]),["enter"])},r(N(l.order_count))+" 笔",41,lr)):(o(),u(k,{key:1},[c(r(N(l.order_count)),1)],64))]),_:1})]),_:1},8,["data","empty-text"])):f("",!0),!ze.value&&$e.value.length===0?(o(),j(P,{key:1,description:"暂无拆解数据"})):f("",!0)])),[[F,ze.value]])]),_:1},8,["modelValue"]),i(ve,{modelValue:ut.value,"onUpdate:modelValue":e[10]||(e[10]=l=>ut.value=l),width:"min(960px, 96vw)","destroy-on-close":"",class:"yeji-leadlines-dialog"},{header:_(()=>[a("div",or,[e[146]||(e[146]=a("span",{class:"yeji-unassigned-dialog__title"},"被指派明细",-1)),a("p",sr,r(zt.value),1)])]),default:_(()=>[Me.value?(o(),u("p",ir,r(Me.value),1)):f("",!0),K((o(),u("div",rr,[be.value.length>0||ge.value?(o(),j(Y,{key:0,data:be.value,size:"small",stripe:"",border:"","max-height":"440",class:"yeji-unassigned-dialog__table","empty-text":ge.value?"加载中…":"暂无数据"},{default:_(()=>[i(p,{type:"index",label:"#",width:"46",index:Sn}),i(p,{prop:"diagnosis_id",label:"诊单ID",width:"88"}),i(p,{prop:"patient_name",label:"患者","min-width":"100","show-overflow-tooltip":""}),i(p,{prop:"patient_phone",label:"联系电话","min-width":"120","show-overflow-tooltip":""}),i(p,{prop:"assistant_name",label:"被指派医助","min-width":"108","show-overflow-tooltip":""}),i(p,{prop:"assign_count",label:"指派次数",width:"88",align:"right"}),i(p,{prop:"last_assign_time_text",label:"最近指派时间","min-width":"156","show-overflow-tooltip":""})]),_:1},8,["data","empty-text"])):f("",!0),!ge.value&&be.value.length===0?(o(),j(P,{key:1,description:"暂无被指派明细"})):f("",!0),Oe.value>0?(o(),u("div",dr,[i(Ne,{"current-page":he.value,"page-size":Ee.value,background:"",layout:"total, sizes, prev, pager, next, jumper",total:Oe.value,"page-sizes":[10,20,50,100],disabled:ge.value,"hide-on-single-page":!1,onCurrentChange:Ln,onSizeChange:zn},null,8,["current-page","page-size","total","disabled"])])):f("",!0)])),[[F,ge.value]])]),_:1},8,["modelValue"])])}}}),kr=Hl(mr,[["__scopeId","data-v-9fbedb93"]]);export{kr as default};
diff --git a/server/public/admin/assets/yeji-edit-6JNwzP8Q.js b/server/public/admin/assets/yeji-edit-6JNwzP8Q.js
new file mode 100644
index 000000000..98767b93d
--- /dev/null
+++ b/server/public/admin/assets/yeji-edit-6JNwzP8Q.js
@@ -0,0 +1 @@
+import{_ as o}from"./yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js";import"./.pnpm-BadRMC3e.js";import"./self_input_stats-CS42YNeC.js";import"./index-C53kWH2_.js";import"./index-ByXR3YHf.js";import"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";export{o as default};
diff --git a/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js b/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js
index 61fb9a50e..739aadbd0 100644
--- a/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js
+++ b/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js
@@ -1 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js
import{o as C,q as D,r as Y,v as o,D as n,b9 as S,u as l,b6 as q,bp as F,c7 as B,c8 as I,J as M,b7 as L,a8 as f,M as O,p as z,ba as A}from"./.pnpm-BadRMC3e.js";import{f as J,h as P}from"./self_input_stats-DkfQGmqP.js";import{_ as T}from"./index-2cRJ7Pdu.js";import{_ as $}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";const G={class:"edit-popup"},X=C({__name:"yeji-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(s,{expose:b,emit:V}){const i=V,c=f(),m=f(),_=O("add"),w=z(()=>_.value==="edit"?"编辑业绩":"新增业绩"),e=A({id:"",yeji_date:"",media_source:"",add_fans_count:0,total_open_count:0,unreplied_count:0,paid_appointment_count:0,free_appointment_count:0,interview_count:0,order_amount:0,completed_order_count:0,remark:""}),g={yeji_date:[{required:!0,message:"请选择业绩日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],add_fans_count:[{required:!0,message:"请填写加粉数",trigger:["blur","change"]}]},v=()=>{e.id="",e.yeji_date="",e.media_source="",e.add_fans_count=0,e.total_open_count=0,e.unreplied_count=0,e.paid_appointment_count=0,e.free_appointment_count=0,e.interview_count=0,e.order_amount=0,e.completed_order_count=0,e.remark=""},y=async()=>{var u,t;await((u=c.value)==null?void 0:u.validate()),_.value==="edit"?await J(e):await P(e),(t=m.value)==null||t.close(),i("success")},k=(u="add")=>{var t;_.value=u,v(),(t=m.value)==null||t.open()},j=u=>{e.id=u.id??"",e.yeji_date=u.yeji_date??"",e.media_source=u.media_source??"",e.add_fans_count=Number(u.add_fans_count??0),e.total_open_count=Number(u.total_open_count??0),e.unreplied_count=Number(u.unreplied_count??0),e.paid_appointment_count=Number(u.paid_appointment_count??0),e.free_appointment_count=Number(u.free_appointment_count??0),e.interview_count=Number(u.interview_count??0),e.order_amount=Number(u.order_amount??0),e.completed_order_count=Number(u.completed_order_count??0),e.remark=u.remark??""},U=()=>{i("close")};return b({open:k,setFormData:j}),(u,t)=>{const N=F,d=q,r=M,p=I,x=B,E=L,R=S;return D(),Y("div",G,[o(T,{ref_key:"popupRef",ref:m,title:l(w),async:!0,width:"640px",onConfirm:y,onClose:U},{default:n(()=>[o(R,{ref_key:"formRef",ref:c,model:l(e),"label-width":"110px",rules:g},{default:n(()=>[o(d,{label:"业绩日期",prop:"yeji_date"},{default:n(()=>[o(N,{modelValue:l(e).yeji_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).yeji_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(_)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(d,{label:"自媒体来源",prop:"media_source"},{default:n(()=>[o($,{modelValue:l(e).media_source,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_source=a),options:s.mediaSourceOptions,loading:s.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:l(_)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),o(x,{gutter:16},{default:n(()=>[o(p,{span:12},{default:n(()=>[o(d,{label:"加粉数",prop:"add_fans_count"},{default:n(()=>[o(r,{modelValue:l(e).add_fans_count,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).add_fans_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"总开口",prop:"total_open_count"},{default:n(()=>[o(r,{modelValue:l(e).total_open_count,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).total_open_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"未回复",prop:"unreplied_count"},{default:n(()=>[o(r,{modelValue:l(e).unreplied_count,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).unreplied_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"付费挂号",prop:"paid_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).paid_appointment_count,"onUpdate:modelValue":t[5]||(t[5]=a=>l(e).paid_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"免费挂号",prop:"free_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).free_appointment_count,"onUpdate:modelValue":t[6]||(t[6]=a=>l(e).free_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"面诊",prop:"interview_count"},{default:n(()=>[o(r,{modelValue:l(e).interview_count,"onUpdate:modelValue":t[7]||(t[7]=a=>l(e).interview_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"订单金额",prop:"order_amount"},{default:n(()=>[o(r,{modelValue:l(e).order_amount,"onUpdate:modelValue":t[8]||(t[8]=a=>l(e).order_amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"接诊诊单",prop:"completed_order_count"},{default:n(()=>[o(r,{modelValue:l(e).completed_order_count,"onUpdate:modelValue":t[9]||(t[9]=a=>l(e).completed_order_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(d,{label:"备注",prop:"remark"},{default:n(()=>[o(E,{modelValue:l(e).remark,"onUpdate:modelValue":t[10]||(t[10]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{X as _};
+========
+import{o as C,q as D,r as Y,v as o,D as n,b9 as S,u as l,b6 as q,bp as F,c7 as B,c8 as I,J as M,b7 as L,a8 as f,M as O,p as z,ba as A}from"./.pnpm-BadRMC3e.js";import{f as J,h as P}from"./self_input_stats-CS42YNeC.js";import{_ as T}from"./index-ByXR3YHf.js";import{_ as $}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";const G={class:"edit-popup"},X=C({__name:"yeji-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(s,{expose:b,emit:V}){const i=V,c=f(),m=f(),_=O("add"),w=z(()=>_.value==="edit"?"编辑业绩":"新增业绩"),e=A({id:"",yeji_date:"",media_source:"",add_fans_count:0,total_open_count:0,unreplied_count:0,paid_appointment_count:0,free_appointment_count:0,interview_count:0,order_amount:0,completed_order_count:0,remark:""}),g={yeji_date:[{required:!0,message:"请选择业绩日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],add_fans_count:[{required:!0,message:"请填写加粉数",trigger:["blur","change"]}]},v=()=>{e.id="",e.yeji_date="",e.media_source="",e.add_fans_count=0,e.total_open_count=0,e.unreplied_count=0,e.paid_appointment_count=0,e.free_appointment_count=0,e.interview_count=0,e.order_amount=0,e.completed_order_count=0,e.remark=""},y=async()=>{var u,t;await((u=c.value)==null?void 0:u.validate()),_.value==="edit"?await J(e):await P(e),(t=m.value)==null||t.close(),i("success")},k=(u="add")=>{var t;_.value=u,v(),(t=m.value)==null||t.open()},j=u=>{e.id=u.id??"",e.yeji_date=u.yeji_date??"",e.media_source=u.media_source??"",e.add_fans_count=Number(u.add_fans_count??0),e.total_open_count=Number(u.total_open_count??0),e.unreplied_count=Number(u.unreplied_count??0),e.paid_appointment_count=Number(u.paid_appointment_count??0),e.free_appointment_count=Number(u.free_appointment_count??0),e.interview_count=Number(u.interview_count??0),e.order_amount=Number(u.order_amount??0),e.completed_order_count=Number(u.completed_order_count??0),e.remark=u.remark??""},U=()=>{i("close")};return b({open:k,setFormData:j}),(u,t)=>{const N=F,d=q,r=M,p=I,x=B,E=L,R=S;return D(),Y("div",G,[o(T,{ref_key:"popupRef",ref:m,title:l(w),async:!0,width:"640px",onConfirm:y,onClose:U},{default:n(()=>[o(R,{ref_key:"formRef",ref:c,model:l(e),"label-width":"110px",rules:g},{default:n(()=>[o(d,{label:"业绩日期",prop:"yeji_date"},{default:n(()=>[o(N,{modelValue:l(e).yeji_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).yeji_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(_)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(d,{label:"自媒体来源",prop:"media_source"},{default:n(()=>[o($,{modelValue:l(e).media_source,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_source=a),options:s.mediaSourceOptions,loading:s.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:l(_)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),o(x,{gutter:16},{default:n(()=>[o(p,{span:12},{default:n(()=>[o(d,{label:"加粉数",prop:"add_fans_count"},{default:n(()=>[o(r,{modelValue:l(e).add_fans_count,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).add_fans_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"总开口",prop:"total_open_count"},{default:n(()=>[o(r,{modelValue:l(e).total_open_count,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).total_open_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"未回复",prop:"unreplied_count"},{default:n(()=>[o(r,{modelValue:l(e).unreplied_count,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).unreplied_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"付费挂号",prop:"paid_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).paid_appointment_count,"onUpdate:modelValue":t[5]||(t[5]=a=>l(e).paid_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"免费挂号",prop:"free_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).free_appointment_count,"onUpdate:modelValue":t[6]||(t[6]=a=>l(e).free_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"面诊",prop:"interview_count"},{default:n(()=>[o(r,{modelValue:l(e).interview_count,"onUpdate:modelValue":t[7]||(t[7]=a=>l(e).interview_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"订单金额",prop:"order_amount"},{default:n(()=>[o(r,{modelValue:l(e).order_amount,"onUpdate:modelValue":t[8]||(t[8]=a=>l(e).order_amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"接诊诊单",prop:"completed_order_count"},{default:n(()=>[o(r,{modelValue:l(e).completed_order_count,"onUpdate:modelValue":t[9]||(t[9]=a=>l(e).completed_order_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(d,{label:"备注",prop:"remark"},{default:n(()=>[o(E,{modelValue:l(e).remark,"onUpdate:modelValue":t[10]||(t[10]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{X as _};
+>>>>>>>> yz-0803:server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js
diff --git a/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js b/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js
new file mode 100644
index 000000000..739aadbd0
--- /dev/null
+++ b/server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js
@@ -0,0 +1,5 @@
+<<<<<<<< HEAD:server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-C4a1mSRD.js
+import{o as C,q as D,r as Y,v as o,D as n,b9 as S,u as l,b6 as q,bp as F,c7 as B,c8 as I,J as M,b7 as L,a8 as f,M as O,p as z,ba as A}from"./.pnpm-BadRMC3e.js";import{f as J,h as P}from"./self_input_stats-DkfQGmqP.js";import{_ as T}from"./index-2cRJ7Pdu.js";import{_ as $}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";const G={class:"edit-popup"},X=C({__name:"yeji-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(s,{expose:b,emit:V}){const i=V,c=f(),m=f(),_=O("add"),w=z(()=>_.value==="edit"?"编辑业绩":"新增业绩"),e=A({id:"",yeji_date:"",media_source:"",add_fans_count:0,total_open_count:0,unreplied_count:0,paid_appointment_count:0,free_appointment_count:0,interview_count:0,order_amount:0,completed_order_count:0,remark:""}),g={yeji_date:[{required:!0,message:"请选择业绩日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],add_fans_count:[{required:!0,message:"请填写加粉数",trigger:["blur","change"]}]},v=()=>{e.id="",e.yeji_date="",e.media_source="",e.add_fans_count=0,e.total_open_count=0,e.unreplied_count=0,e.paid_appointment_count=0,e.free_appointment_count=0,e.interview_count=0,e.order_amount=0,e.completed_order_count=0,e.remark=""},y=async()=>{var u,t;await((u=c.value)==null?void 0:u.validate()),_.value==="edit"?await J(e):await P(e),(t=m.value)==null||t.close(),i("success")},k=(u="add")=>{var t;_.value=u,v(),(t=m.value)==null||t.open()},j=u=>{e.id=u.id??"",e.yeji_date=u.yeji_date??"",e.media_source=u.media_source??"",e.add_fans_count=Number(u.add_fans_count??0),e.total_open_count=Number(u.total_open_count??0),e.unreplied_count=Number(u.unreplied_count??0),e.paid_appointment_count=Number(u.paid_appointment_count??0),e.free_appointment_count=Number(u.free_appointment_count??0),e.interview_count=Number(u.interview_count??0),e.order_amount=Number(u.order_amount??0),e.completed_order_count=Number(u.completed_order_count??0),e.remark=u.remark??""},U=()=>{i("close")};return b({open:k,setFormData:j}),(u,t)=>{const N=F,d=q,r=M,p=I,x=B,E=L,R=S;return D(),Y("div",G,[o(T,{ref_key:"popupRef",ref:m,title:l(w),async:!0,width:"640px",onConfirm:y,onClose:U},{default:n(()=>[o(R,{ref_key:"formRef",ref:c,model:l(e),"label-width":"110px",rules:g},{default:n(()=>[o(d,{label:"业绩日期",prop:"yeji_date"},{default:n(()=>[o(N,{modelValue:l(e).yeji_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).yeji_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(_)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(d,{label:"自媒体来源",prop:"media_source"},{default:n(()=>[o($,{modelValue:l(e).media_source,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_source=a),options:s.mediaSourceOptions,loading:s.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:l(_)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),o(x,{gutter:16},{default:n(()=>[o(p,{span:12},{default:n(()=>[o(d,{label:"加粉数",prop:"add_fans_count"},{default:n(()=>[o(r,{modelValue:l(e).add_fans_count,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).add_fans_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"总开口",prop:"total_open_count"},{default:n(()=>[o(r,{modelValue:l(e).total_open_count,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).total_open_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"未回复",prop:"unreplied_count"},{default:n(()=>[o(r,{modelValue:l(e).unreplied_count,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).unreplied_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"付费挂号",prop:"paid_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).paid_appointment_count,"onUpdate:modelValue":t[5]||(t[5]=a=>l(e).paid_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"免费挂号",prop:"free_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).free_appointment_count,"onUpdate:modelValue":t[6]||(t[6]=a=>l(e).free_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"面诊",prop:"interview_count"},{default:n(()=>[o(r,{modelValue:l(e).interview_count,"onUpdate:modelValue":t[7]||(t[7]=a=>l(e).interview_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"订单金额",prop:"order_amount"},{default:n(()=>[o(r,{modelValue:l(e).order_amount,"onUpdate:modelValue":t[8]||(t[8]=a=>l(e).order_amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"接诊诊单",prop:"completed_order_count"},{default:n(()=>[o(r,{modelValue:l(e).completed_order_count,"onUpdate:modelValue":t[9]||(t[9]=a=>l(e).completed_order_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(d,{label:"备注",prop:"remark"},{default:n(()=>[o(E,{modelValue:l(e).remark,"onUpdate:modelValue":t[10]||(t[10]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{X as _};
+========
+import{o as C,q as D,r as Y,v as o,D as n,b9 as S,u as l,b6 as q,bp as F,c7 as B,c8 as I,J as M,b7 as L,a8 as f,M as O,p as z,ba as A}from"./.pnpm-BadRMC3e.js";import{f as J,h as P}from"./self_input_stats-CS42YNeC.js";import{_ as T}from"./index-ByXR3YHf.js";import{_ as $}from"./MediaSourceSelect.vue_vue_type_script_setup_true_lang-CWbovTuC.js";const G={class:"edit-popup"},X=C({__name:"yeji-edit",props:{mediaSourceOptions:{default:()=>[]},mediaSourceLoading:{type:Boolean,default:!1}},emits:["success","close"],setup(s,{expose:b,emit:V}){const i=V,c=f(),m=f(),_=O("add"),w=z(()=>_.value==="edit"?"编辑业绩":"新增业绩"),e=A({id:"",yeji_date:"",media_source:"",add_fans_count:0,total_open_count:0,unreplied_count:0,paid_appointment_count:0,free_appointment_count:0,interview_count:0,order_amount:0,completed_order_count:0,remark:""}),g={yeji_date:[{required:!0,message:"请选择业绩日期",trigger:["change"]}],media_source:[{required:!0,message:"请填写自媒体来源",trigger:["blur"]}],add_fans_count:[{required:!0,message:"请填写加粉数",trigger:["blur","change"]}]},v=()=>{e.id="",e.yeji_date="",e.media_source="",e.add_fans_count=0,e.total_open_count=0,e.unreplied_count=0,e.paid_appointment_count=0,e.free_appointment_count=0,e.interview_count=0,e.order_amount=0,e.completed_order_count=0,e.remark=""},y=async()=>{var u,t;await((u=c.value)==null?void 0:u.validate()),_.value==="edit"?await J(e):await P(e),(t=m.value)==null||t.close(),i("success")},k=(u="add")=>{var t;_.value=u,v(),(t=m.value)==null||t.open()},j=u=>{e.id=u.id??"",e.yeji_date=u.yeji_date??"",e.media_source=u.media_source??"",e.add_fans_count=Number(u.add_fans_count??0),e.total_open_count=Number(u.total_open_count??0),e.unreplied_count=Number(u.unreplied_count??0),e.paid_appointment_count=Number(u.paid_appointment_count??0),e.free_appointment_count=Number(u.free_appointment_count??0),e.interview_count=Number(u.interview_count??0),e.order_amount=Number(u.order_amount??0),e.completed_order_count=Number(u.completed_order_count??0),e.remark=u.remark??""},U=()=>{i("close")};return b({open:k,setFormData:j}),(u,t)=>{const N=F,d=q,r=M,p=I,x=B,E=L,R=S;return D(),Y("div",G,[o(T,{ref_key:"popupRef",ref:m,title:l(w),async:!0,width:"640px",onConfirm:y,onClose:U},{default:n(()=>[o(R,{ref_key:"formRef",ref:c,model:l(e),"label-width":"110px",rules:g},{default:n(()=>[o(d,{label:"业绩日期",prop:"yeji_date"},{default:n(()=>[o(N,{modelValue:l(e).yeji_date,"onUpdate:modelValue":t[0]||(t[0]=a=>l(e).yeji_date=a),type:"date","value-format":"YYYY-MM-DD",placeholder:"请选择日期",disabled:l(_)==="edit",class:"w-full"},null,8,["modelValue","disabled"])]),_:1}),o(d,{label:"自媒体来源",prop:"media_source"},{default:n(()=>[o($,{modelValue:l(e).media_source,"onUpdate:modelValue":t[1]||(t[1]=a=>l(e).media_source=a),options:s.mediaSourceOptions,loading:s.mediaSourceLoading,placeholder:"请选择自媒体来源","allow-create":!1,disabled:l(_)==="edit","select-class":"w-full"},null,8,["modelValue","options","loading","disabled"])]),_:1}),o(x,{gutter:16},{default:n(()=>[o(p,{span:12},{default:n(()=>[o(d,{label:"加粉数",prop:"add_fans_count"},{default:n(()=>[o(r,{modelValue:l(e).add_fans_count,"onUpdate:modelValue":t[2]||(t[2]=a=>l(e).add_fans_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"总开口",prop:"total_open_count"},{default:n(()=>[o(r,{modelValue:l(e).total_open_count,"onUpdate:modelValue":t[3]||(t[3]=a=>l(e).total_open_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"未回复",prop:"unreplied_count"},{default:n(()=>[o(r,{modelValue:l(e).unreplied_count,"onUpdate:modelValue":t[4]||(t[4]=a=>l(e).unreplied_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"付费挂号",prop:"paid_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).paid_appointment_count,"onUpdate:modelValue":t[5]||(t[5]=a=>l(e).paid_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"免费挂号",prop:"free_appointment_count"},{default:n(()=>[o(r,{modelValue:l(e).free_appointment_count,"onUpdate:modelValue":t[6]||(t[6]=a=>l(e).free_appointment_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"面诊",prop:"interview_count"},{default:n(()=>[o(r,{modelValue:l(e).interview_count,"onUpdate:modelValue":t[7]||(t[7]=a=>l(e).interview_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"订单金额",prop:"order_amount"},{default:n(()=>[o(r,{modelValue:l(e).order_amount,"onUpdate:modelValue":t[8]||(t[8]=a=>l(e).order_amount=a),min:0,step:.01,precision:2,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1}),o(p,{span:12},{default:n(()=>[o(d,{label:"接诊诊单",prop:"completed_order_count"},{default:n(()=>[o(r,{modelValue:l(e).completed_order_count,"onUpdate:modelValue":t[9]||(t[9]=a=>l(e).completed_order_count=a),min:0,step:1,class:"w-full"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1}),o(d,{label:"备注",prop:"remark"},{default:n(()=>[o(E,{modelValue:l(e).remark,"onUpdate:modelValue":t[10]||(t[10]=a=>l(e).remark=a),type:"textarea",autosize:{minRows:3,maxRows:5},maxlength:"255","show-word-limit":"",placeholder:"选填"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])])}}});export{X as _};
+>>>>>>>> yz-0803:server/public/admin/assets/yeji-edit.vue_vue_type_script_setup_true_lang-CnoY3SVY.js
diff --git a/server/public/admin/index.html b/server/public/admin/index.html
index 7a8f5ea79..b40f4f0cc 100644
--- a/server/public/admin/index.html
+++ b/server/public/admin/index.html
@@ -163,7 +163,11 @@
z-index: 2147483641;
}
+<<<<<<< HEAD
+=======
+
+>>>>>>> yz-0803