import{_ as $e,o as Me,r as h,c as Ue,d as s,e as r,k as u,f as o,w as a,F as I,t as S,i as l,h as Z,$ as F,j as C,x as y,l as q,g as m,I as Ne,E as w,aP as Re,O as Te,q as c,v as f,b1 as ie,b2 as Ae,b3 as qe,p as Ge,b4 as Ye,b5 as de,b6 as Fe,N as We,b7 as Oe,b8 as Xe,b9 as Ze}from"./index-e65958bd.js";const je={class:"head"},Qe={style:{display:"flex"},class:"planInfo"},He={style:{"border-right":"1px solid #dadada","padding-right":"4px"}},Je=["onClick"],Ke={style:{border:"1px solid #efefef",width:"100%","overflow-x":"auto"}},et={key:0,class:"planTable"},tt={style:{"background-color":"#f1f1f1",position:"relative"}},lt={style:{width:"120px",display:"flex","font-size":"12px","justify-content":"center","align-items":"center"}},nt={style:{"min-width":"120px","font-size":"14px"}},ot=["onMouseover","onMouseleave"],at={key:0},st={key:0,class:"hoverTools"},ut=["onClick"],it=["onClick"],dt=["onClick"],rt=["onClick"],_t={class:"zong_row"},ct={class:"qudao_title_zong"},ft={class:"qudao_count_row"},pt={key:0},vt={key:0,class:"yellow bold-text"},mt={key:1},gt={class:"font_color"},yt={class:"patient_type_row"},kt={class:"tps"},bt={key:1,style:{width:"100%","background-color":"#fff"}},xt={style:{"font-weight":"700",display:"inline-block","margin-right":"8px"}},ht={style:{"font-weight":"700",display:"inline-block","margin-right":"8px"}},wt={style:{"font-weight":"700"}},Dt={style:{"margin-right":"16px"}},It={class:"qudao_k_input"},Vt={style:{width:"50px"}},Ct={class:"qudao_k_input"},Lt={class:"dialog-footer"},St={style:{"text-align":"center","font-size":"16px","margin-top":"-30px","margin-bottom":"10px"}},Pt={style:{"font-weight":"700",display:"inline-block","margin-right":"8px"}},Et={style:{"font-weight":"700"}},zt={style:{display:"flex","flex-direction":"column",gap:"10px",width:"100%"}},Bt={key:0,style:{display:"flex","align-items":"center",gap:"10px"}},$t={style:{width:"80px"}},Mt={style:{flex:"1"}},Ut={style:{color:"#999","font-size":"12px"}},Nt={key:1,style:{color:"#999"}},Rt={class:"dialog-footer"},Tt={__name:"PlanList",setup(At){let R=m([]),g=m(!1),re=m(1),_e=m(9999),L=m([]),j=m([]),$=m(0),M=m({department_id:null,resources_id:null,device_id:null,xingqi:null,status:null,dateRange:[]}),z=m(!1);const T=()=>{M.value.resources_id=U.value,j.value=Le(M.value.dateRange),g.value=!0,Ye({page:re.value,pageSize:_e.value,searchInfo:M.value}).then(t=>{if(g.value=!1,t.status){R.value=[],L.value=[];let e=t.data.list;if(e.length>0){const i=new Set;e.forEach(p=>{if(p.resources_id==U.value){const V=`${p.begin_time.substring(0,5)}-${p.end_time.substring(0,5)}`;i.add(V)}}),Array.from(i).sort().forEach(p=>{const V={time_range:p};j.value.forEach(D=>{const P=e.find(E=>`${E.begin_time.substring(0,5)}-${E.end_time.substring(0,5)}`===p&&E.date===D&&E.resources_id==U.value);P?V[D]={countsInfo:P.countsInfo,patient_type_label:P.patient_type_label,status:P.status,id:P.id,resources_id:P.resources_id}:V[D]={countsInfo:null,patient_type_label:null,status:null,id:null,resources_id:null}}),R.value.push(V)})}}else w.error(t.msg)})},ce=()=>{$.value=$.value===0?1:0,$.value===0&&(L.value=[]),$.value===1&&R.value.forEach((t,e)=>{console.log(t);for(let i in t)i!="time_range"&&L.value.push(t[i].id)})},fe=t=>{L.value.indexOf(t)===-1?L.value.push(t):L.value=L.value.filter(i=>i!==t)};let Q=m(null);const pe=t=>{Q.value=t},ve=t=>{Q.value=null},me=t=>{U.value=t,$.value=0,L.value=[],T()},H=t=>L.value.includes(t);let ge=m([]);const ye=()=>{g.value=!0,Ne().then(t=>{g.value=!1,t.status?ge.value=t.data:w.error(t.msg)})};let ke=m([]);const be=()=>{g.value=!0,Re({}).then(t=>{g.value=!1,t.status?ke.value=t.data.list:w.error(t.msg)})};let W=m([]),U=m(0);const xe=()=>{g.value=!0,Te().then(t=>{g.value=!1,t.status?(W.value=t.data,W.value.length>0&&U.value==""&&(U.value=W.value[0].id,T())):w.error(t.msg)})};let d=m("");const he=t=>{z.value=!0,g.value=!0,de({id:t}).then(e=>{g.value=!1,e.status?d.value=e.data:w.error(e.msg)})},we=t=>{console.log(t),(t===""||t==null||t===0)&&(d.value.max_total=0);let e=0,i=d.value.coutsInfo.length,_=-1;for(let p=0;p{let t=0;if(d.value.coutsInfo.forEach(e=>{t=t+Number(e.count)}),t!==Number(d.value.max_total))return w.error("各个渠道数量之和与当日总量不符"),!1;g.value=!0,Fe({PlanDetaiInfo:d.value}).then(e=>{g.value=!1,e.status?(z.value=!1,T()):w.error(e.msg)})},Ie=()=>{if(L.value.length==0)return w.error("请至少勾选1条记录"),!1;We.confirm("确定删除吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{g.value=!0,Oe({ids:L.value}).then(t=>{g.value=!1,t.status?(w({message:t.msg,type:"success"}),T()):w.error(t.msg)})})};let G=m(!1),J=m(!1),te=m(null),Y=m(null),A=m(null);const le=(t,e)=>{A.value=e,Y.value=t,G.value=!0,J.value=!0,Xe({planid:t.id,qudaoid:e}).then(i=>{J.value=!1,i.status?te.value=i.data:w.error(i.msg)})};let B=m(!1),b=m(null);const Ve=t=>{B.value=!0,g.value=!0,de({id:t.id}).then(e=>{g.value=!1,e.status?(b.value=e.data,b.value.coutsInfo.forEach(i=>{i.locked_count===null&&(i.locked_count=0)})):w.error(e.msg)})},Ce=()=>{let t=[],e=!1;b.value.coutsInfo.forEach(i=>{if(e)return;const _=i.count-i.used_count;if(Number(i.locked_count)>_){w.error(`${i.name} 的占位数量不能大于剩余可用数量,最多${_}个`),e=!0;return}if(Number(i.locked_count)<0){w.error(`${i.name} 的占位数量不能为负数`),e=!0;return}t.push({appointment_type_id:i.appointment_type_id,locked_count:i.locked_count||0})}),!e&&(g.value=!0,Ze({roster_detail_id:b.value.id,locked_counts:t}).then(i=>{g.value=!1,i.status?(B.value=!1,T(),w.success("占位设置保存成功")):w.error(i.msg)}))};function ne(t){const e=t.getFullYear(),i=String(t.getMonth()+1).padStart(2,"0"),_=String(t.getDate()).padStart(2,"0");return`${e}-${i}-${_}`}function Le(t){const e=t.map(D=>new Date(D)).sort((D,P)=>D-P),i=e[0],_=e[e.length-1],p=[];let V=new Date(i);for(;V<=_;)p.push(V.toISOString().split("T")[0]),V.setDate(V.getDate()+1);return p}function Se(t){const e=new Date(t);return isNaN(e)?"无效日期":["周日","周一","周二","周三","周四","周五","周六"][e.getDay()]}return Me(()=>{const t=new Date,e=ne(t),i=new Date(t);i.setDate(t.getDate()+14);const _=ne(i);M.value.dateRange=[e,_],be(),xe(),ye()}),(t,e)=>{const i=h("el-date-picker"),_=h("el-form-item"),p=h("el-button"),V=h("el-row"),D=h("el-icon"),P=h("el-empty"),E=h("el-tag"),O=h("el-checkbox"),Pe=h("el-checkbox-group"),K=h("el-input"),Ee=h("el-switch"),oe=h("el-form"),ee=h("el-dialog"),ae=h("el-option"),ze=h("el-select"),N=h("el-table-column"),Be=h("el-table"),X=Ue("loading");return s(),r("div",null,[u("div",je,[o(V,null,{default:a(()=>[o(_,null,{default:a(()=>[o(i,{style:{"margin-left":"8px",width:"150px"},modelValue:l(M).dateRange[0],"onUpdate:modelValue":e[0]||(e[0]=n=>l(M).dateRange[0]=n),type:"date",placeholder:"开始时间","value-format":"YYYY-MM-DD"},null,8,["modelValue"]),e[15]||(e[15]=u("span",{style:{margin:"0 4px"}},"至",-1)),o(i,{style:{width:"150px"},modelValue:l(M).dateRange[1],"onUpdate:modelValue":e[1]||(e[1]=n=>l(M).dateRange[1]=n),type:"date",placeholder:"结束时间","value-format":"YYYY-MM-DD"},null,8,["modelValue"])]),_:1}),o(p,{onClick:e[2]||(e[2]=n=>T()),style:{"margin-left":"10px"}},{default:a(()=>[...e[16]||(e[16]=[c("搜索",-1)])]),_:1}),o(p,{type:"danger",onClick:e[3]||(e[3]=n=>Ie()),style:{"margin-left":"10px"}},{default:a(()=>[...e[17]||(e[17]=[c("删除",-1)])]),_:1})]),_:1})]),u("div",Qe,[u("div",He,[(s(!0),r(I,null,S(l(W),(n,k)=>(s(),r("div",{key:k,onClick:v=>me(n.id),class:F({"zhenshiButton zhenshiButtonActive":n.id===l(U),zhenshiButton:n.id!==l(U)})},f(n.department_resources_name),11,Je))),128))]),Z((s(),r("div",Ke,[e[23]||(e[23]=u("div",{style:{"text-align":"right",padding:"8px","font-size":"12px",color:"#999"}},"数据格式:占位/已用/总数",-1)),l(R).length>0?(s(),r("table",et,[u("tr",tt,[u("td",null,[u("div",lt,[e[18]||(e[18]=u("div",{style:{"margin-left":"30px","margin-right":"6px"}},"全选",-1)),u("div",{class:F({"plan_checkAllbox plan_checkAllbox_active":l($)===1,"plan_checkAllbox ":l($)===0}),onClick:e[4]||(e[4]=n=>ce())},[l($)===1?(s(),C(D,{key:0,color:"#ffffff"},{default:a(()=>[o(l(ie))]),_:1})):y("",!0)],2)])]),(s(!0),r(I,null,S(l(j),(n,k)=>(s(),r("td",nt,f(n.substring(5,10))+" "+f(Se(n)),1))),256))]),(s(!0),r(I,null,S(l(R),(n,k)=>(s(),r("tr",{key:k},[(s(!0),r(I,null,S(n,(v,se)=>(s(),r("td",{key:se,onMouseover:x=>pe(v.id),onMouseleave:x=>ve(v.id)},[u("div",null,[se=="time_range"?(s(),r("span",at,f(v),1)):y("",!0),v.countsInfo&&v.countsInfo.length>0?(s(),r("div",{key:1,class:F({planInfo_k:v.status==1,"planInfo_k planInfo_k_disabled":v.status==0})},[l(Q)==v.id?(s(),r("div",st,[u("div",{class:"icon_k",onClick:x=>he(v.id)},[o(D,{color:"#409eff",size:"20"},{default:a(()=>[o(l(Ae))]),_:1}),e[19]||(e[19]=u("span",{class:"icon_text"},"编辑",-1))],8,ut),u("div",{class:"icon_k",onClick:x=>le(v,0)},[o(D,{color:"#409eff",size:"20"},{default:a(()=>[o(l(qe))]),_:1}),e[20]||(e[20]=u("span",{class:"icon_text"},"明细",-1))],8,it),u("div",{class:"icon_k",onClick:x=>Ve(v)},[o(D,{color:"#409eff",size:"20"},{default:a(()=>[o(l(Ge))]),_:1}),e[21]||(e[21]=u("span",{class:"icon_text"},"占位",-1))],8,dt)])):y("",!0),u("div",{class:F({"plan_checkbox plan_checkbox_active":H(v.id),plan_checkbox:!H(v.id)}),onClick:x=>fe(v.id)},[H(v.id)?(s(),C(D,{key:0,color:"#ffffff"},{default:a(()=>[o(l(ie))]),_:1})):y("",!0)],10,rt),u("div",_t,[u("div",ct,[e[22]||(e[22]=u("span",null,"总数:",-1)),c(f(v.countsInfo[0].max_total),1)])]),u("div",ft,[(s(!0),r(I,null,S(v.countsInfo,(x,ue)=>(s(),r(I,{key:ue},[x&&!(x.count===0&&x.used_count===0)?(s(),r("div",pt,[u("span",null,f(x.jiancheng),1),u("span",null,[x.locked_count?(s(),r("span",vt,f(x.locked_count),1)):y("",!0),x.locked_count?(s(),r("span",mt,"/")):y("",!0),u("span",gt,f(x.used_count),1),c("/"+f(x.count),1)])])):y("",!0)],64))),128))]),u("div",yt,[(s(!0),r(I,null,S(v.patient_type_label,(x,ue)=>(s(),r("div",kt,f(x),1))),256))])],2)):y("",!0)])],40,ot))),128))]))),128))])):y("",!0),l(R).length==0?(s(),r("div",bt,[o(P,{description:"暂无号源"})])):y("",!0)])),[[X,l(g)]])]),o(ee,{modelValue:l(z),"onUpdate:modelValue":e[9]||(e[9]=n=>q(z)?z.value=n:z=n),title:"修改",width:"40%"},{footer:a(()=>[u("span",Lt,[o(p,{onClick:e[8]||(e[8]=n=>q(z)?z.value=!1:z=!1)},{default:a(()=>[...e[33]||(e[33]=[c("取消",-1)])]),_:1}),o(p,{type:"primary",onClick:De},{default:a(()=>[...e[34]||(e[34]=[c(" 确定 ",-1)])]),_:1})])]),default:a(()=>[Z((s(),r("div",null,[l(d)?(s(),C(oe,{key:0,"label-width":"100px",style:{"padding-right":"40px"}},{default:a(()=>[o(_,{label:"日期:"},{default:a(()=>[c(f(l(d).date),1)]),_:1}),o(_,{label:"星期:"},{default:a(()=>[c(f(l(d).weekname),1)]),_:1}),o(_,{label:"科室:"},{default:a(()=>[c(f(l(d).department_name),1)]),_:1}),y("",!0),y("",!0),o(_,{label:"病人类型:"},{default:a(()=>[o(Pe,{disabled:"",modelValue:l(d).patientType,"onUpdate:modelValue":e[5]||(e[5]=n=>l(d).patientType=n)},{default:a(()=>[o(O,{label:"0"},{default:a(()=>[...e[24]||(e[24]=[c("住院",-1)])]),_:1}),o(O,{label:"1"},{default:a(()=>[...e[25]||(e[25]=[c("门诊",-1)])]),_:1}),o(O,{label:"2"},{default:a(()=>[...e[26]||(e[26]=[c("急诊",-1)])]),_:1}),o(O,{label:"3"},{default:a(()=>[...e[27]||(e[27]=[c("体检",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(_,{label:"时间段:"},{default:a(()=>[e[28]||(e[28]=c(" 开始时间:",-1)),u("span",xt,f(l(d).begin_time),1),e[29]||(e[29]=c(" 结束时间:",-1)),u("span",ht,f(l(d).end_time),1),e[30]||(e[30]=c(" 停止预约时间:",-1)),u("span",wt,f(l(d).end_reservation_time),1)]),_:1}),l(d).coutsInfo?(s(),C(_,{key:2,label:"渠道名额:"},{default:a(()=>[u("div",Dt,[e[31]||(e[31]=u("div",null,"当日总量",-1)),u("div",It,[o(K,{onInput:we,type:"number",modelValue:l(d).max_total,"onUpdate:modelValue":e[6]||(e[6]=n=>l(d).max_total=n),min:1,placeholder:"0",oninput:"value=value.replace(/^0|[^0-9]/g, '')"},null,8,["modelValue"])]),e[32]||(e[32]=u("div",{style:{"font-size":"12px",color:"#999"}},"设置渠道比例可自动分配",-1))]),u("div",null,[(s(!0),r(I,null,S(l(d).coutsInfo,(n,k)=>(s(),r("div",{class:"qudao_k",key:k},[u("div",Vt,f(n.name),1),u("div",Ct,[o(K,{type:"number",modelValue:l(d).coutsInfo[k].count,"onUpdate:modelValue":v=>l(d).coutsInfo[k].count=v,min:1,placeholder:"0",oninput:"value=value.replace(/^0|[^0-9]/g, '')"},null,8,["modelValue","onUpdate:modelValue"])])]))),128))])]),_:1})):y("",!0),o(_,{label:"状态:"},{default:a(()=>[o(Ee,{modelValue:l(d).status,"onUpdate:modelValue":e[7]||(e[7]=n=>l(d).status=n),size:"large","active-text":"正常","inactive-text":"关闭","active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1}),o(_,{label:"添加时间:"},{default:a(()=>[c(f(l(d).created_at),1)]),_:1})]),_:1})):y("",!0)])),[[X,l(g)]])]),_:1},8,["modelValue"]),o(ee,{modelValue:l(G),"onUpdate:modelValue":e[12]||(e[12]=n=>q(G)?G.value=n:G=n),title:"预约明细",width:"60%"},{default:a(()=>[u("div",null,[u("div",St,[c(f(l(Y).department_resources_name)+" ",1),(s(!0),r(I,null,S(l(Y).devices,(n,k)=>(s(),r("span",{key:k,class:F(n.status==1&&n.is_del==0?"":"hongzi")},f(n.device_name),3))),128))]),o(_,{label:"渠道"},{default:a(()=>[o(ze,{filterable:!0,clearable:"",modelValue:l(A),"onUpdate:modelValue":e[10]||(e[10]=n=>q(A)?A.value=n:A=n),onChange:e[11]||(e[11]=n=>le(l(Y),l(A))),placeholder:"选择渠道",style:{"margin-left":"8px",width:"150px"}},{default:a(()=>[o(ae,{label:"全部",value:0}),(s(!0),r(I,null,S(l(Y).countsInfo,(n,k)=>(s(),C(ae,{key:k,label:n.name,value:n.appointment_type_id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),Z((s(),C(Be,{data:l(te),style:{width:"100%"},"row-key":"id"},{default:a(()=>[o(N,{prop:"list_status",label:"状态",width:"100"},{default:a(n=>[n.row.list_status===0?(s(),C(E,{key:0,class:"ml-2",type:"info"},{default:a(()=>[...e[35]||(e[35]=[c("申请中",-1)])]),_:1})):y("",!0),n.row.list_status===1?(s(),C(E,{key:1,class:"ml-2",type:"success"},{default:a(()=>[...e[36]||(e[36]=[c("已预约",-1)])]),_:1})):y("",!0),n.row.list_status===2?(s(),C(E,{key:2,class:"ml-2"},{default:a(()=>[...e[37]||(e[37]=[c("登记",-1)])]),_:1})):y("",!0),n.row.list_status===3?(s(),C(E,{key:3,class:"ml-2",type:"warning"},{default:a(()=>[...e[38]||(e[38]=[c("完成",-1)])]),_:1})):y("",!0)]),_:1}),o(N,{prop:"user_name",label:"姓名"}),o(N,{prop:"user_phone",label:"电话"}),o(N,{prop:"reg_num",label:"登记号"}),o(N,{prop:"reservation_department",label:"申请科室"}),o(N,{prop:"entrust",label:"项目"}),o(N,{prop:"qudao_name",label:"渠道"})]),_:1},8,["data"])),[[X,l(J)]])])]),_:1},8,["modelValue"]),o(ee,{modelValue:l(B),"onUpdate:modelValue":e[14]||(e[14]=n=>q(B)?B.value=n:B=n),title:"占位设置",width:"40%"},{footer:a(()=>[u("span",Rt,[o(p,{onClick:e[13]||(e[13]=n=>q(B)?B.value=!1:B=!1)},{default:a(()=>[...e[41]||(e[41]=[c("取消",-1)])]),_:1}),o(p,{type:"primary",onClick:Ce},{default:a(()=>[...e[42]||(e[42]=[c(" 确定 ",-1)])]),_:1})])]),default:a(()=>[Z((s(),r("div",null,[l(b)?(s(),C(oe,{key:0,"label-width":"120px",style:{"padding-right":"40px"}},{default:a(()=>[o(_,{label:"日期:"},{default:a(()=>[c(f(l(b).date),1)]),_:1}),o(_,{label:"星期:"},{default:a(()=>[c(f(l(b).weekname),1)]),_:1}),o(_,{label:"科室:"},{default:a(()=>[c(f(l(b).department_name),1)]),_:1}),o(_,{label:"资源:"},{default:a(()=>[c(f(l(b).resources_name),1)]),_:1}),o(_,{label:"服务组:"},{default:a(()=>[(s(!0),r(I,null,S(l(b).devices,(n,k)=>(s(),C(E,{key:k,type:n.status===1&&n.is_del===0?"":"danger",style:{"margin-left":"8px"}},{default:a(()=>[c(f(n.device_name),1)]),_:2},1032,["type"]))),128))]),_:1}),o(_,{label:"时间段:"},{default:a(()=>[e[39]||(e[39]=c(" 开始时间:",-1)),u("span",Pt,f(l(b).begin_time),1),e[40]||(e[40]=c(" 结束时间:",-1)),u("span",Et,f(l(b).end_time),1)]),_:1}),o(_,{label:"渠道占位:"},{default:a(()=>[u("div",zt,[l(b).coutsInfo&&l(b).coutsInfo.length>0?(s(!0),r(I,{key:0},S(l(b).coutsInfo,(n,k)=>(s(),r(I,{key:k},[n&&!(n.count===0&&n.used_count===0)?(s(),r("div",Bt,[u("div",$t,f(n.name),1),u("div",Mt,[o(K,{type:"number",modelValue:l(b).coutsInfo[k].locked_count,"onUpdate:modelValue":v=>l(b).coutsInfo[k].locked_count=v,placeholder:"占位数量",min:"0",oninput:"value=value.replace(/[^0-9]/g,'')"},null,8,["modelValue","onUpdate:modelValue"])]),u("div",Ut," 剩余可用: "+f(n.count-n.used_count),1)])):y("",!0)],64))),128)):(s(),r("div",Nt," 暂无渠道数据 "))])]),_:1})]),_:1})):y("",!0)])),[[X,l(g)]])]),_:1},8,["modelValue"])])}}},Gt=$e(Tt,[["__scopeId","data-v-d82c99d4"]]);export{Gt as default};