You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
28 KiB
JavaScript

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

import{_ as bt,Y as Re,o as kt,a$ as xt,r as L,c as ht,d,e as p,k as r,f as a,w as s,F as D,t as S,i as n,h as _e,Z as se,j as T,x,$ as wt,l as P,g as _,J as Vt,E as k,aX as Ct,O as It,q as m,v,be as Ue,bf as Dt,bg as Bt,p as Lt,bh as St,bi as $e,bj as Et,N as me,bk as Mt,bl as zt,bm as Tt,bn as Pt,bo as Nt,bp as Rt,bq as Ut}from"./index-c64ce9a7.js";const $t={class:"head"},Ot={style:{display:"flex"},class:"planInfo"},Yt={style:{"border-right":"1px solid #dadada","padding-right":"4px"}},At=["onClick"],Ft={style:{flex:"1","min-width":"0"}},qt={key:0,class:"planTable"},Gt={style:{"background-color":"#f1f1f1",position:"relative"}},Xt={style:{width:"120px",display:"flex","font-size":"12px","justify-content":"center","align-items":"center"}},Zt={style:{"min-width":"150px","font-size":"14px"}},Wt=["data-row","data-col","onMouseover","onMouseleave","onMousedown"],jt={key:0},Ht={key:0,class:"hoverTools"},Kt=["onClick"],Jt=["onClick"],Qt=["onClick"],el=["onClick"],tl={class:"zong_row"},ll={class:"qudao_title_zong"},nl={class:"qudao_count_row"},ol={key:0},al={class:"font_color"},sl={class:"patient_type_row"},ul={class:"tps"},il={key:2,style:{width:"100%","background-color":"#fff"}},dl={style:{"font-weight":"700",display:"inline-block","margin-right":"8px"}},rl={style:{"font-weight":"700",display:"inline-block","margin-right":"8px"}},cl={key:0,class:"qudao_k"},fl={key:0,style:{width:"50px"}},pl={class:"qudao_k_input"},_l={class:"dialog-footer"},ml={style:{"text-align":"center","font-size":"16px","margin-top":"-30px","margin-bottom":"10px"}},vl={key:1,style:{"margin-left":"4px",color:"#e6a23c","font-weight":"700"}},gl={style:{"font-weight":"700",display:"inline-block","margin-right":"8px"}},yl={style:{"font-weight":"700"}},bl={style:{display:"flex","flex-direction":"column",gap:"10px",width:"100%"}},kl={key:0,style:{display:"flex","align-items":"center",gap:"10px"}},xl={key:0,style:{width:"80px"}},hl={style:{flex:"1"}},wl={style:{color:"#999","font-size":"12px"}},Vl={key:1,style:{color:"#999"}},Cl={class:"dialog-footer"},Il={style:{"margin-bottom":"16px",color:"#666"}},Dl={style:{display:"flex","flex-direction":"column",gap:"10px"}},Bl={key:0,style:{display:"flex","align-items":"center",gap:"8px","margin-bottom":"10px"}},Ll={key:0,style:{width:"60px",color:"#666"}},Sl={key:0,style:{"margin-top":"16px","padding-top":"12px","border-top":"1px solid #eee"}},El={style:{display:"flex",gap:"12px","flex-wrap":"wrap"}},Ml={style:{display:"flex","align-items":"center"}},zl={style:{"margin-bottom":"16px",color:"#666"}},Tl={style:{display:"flex","flex-direction":"column",gap:"10px"}},Pl={key:0,style:{display:"flex","align-items":"center",gap:"8px","margin-bottom":"10px"}},Nl={key:0,style:{width:"60px",color:"#666"}},Rl={style:{color:"#999","font-size":"12px"}},Ul={style:{"margin-bottom":"10px"}},$l={style:{color:"#67c23a","font-weight":"600"}},Ol={style:{color:"#f56c6c","font-weight":"600"}},Yl={key:0},Al={__name:"PlanList",setup(Fl){let $=_([]),w=_(!1),Oe=_(1),Ye=_(9999),h=_([]),re=_([]),O=_(0),X=_({department_id:null,resources_id:null,device_id:null,xingqi:null,status:null,dateRange:[]}),Y=_(!1),ve=_(new Set);const N=()=>{X.value.resources_id=Z.value,re.value=gt(X.value.dateRange),w.value=!0,St({page:Oe.value,pageSize:Ye.value,searchInfo:X.value}).then(l=>{if(w.value=!1,l.status){$.value=[],h.value=[];let e=l.data.list;if(e.length>0){const o=new Set;e.forEach(i=>{if(i.resources_id==Z.value){const c=`${i.begin_time.substring(0,5)}-${i.end_time.substring(0,5)}`;o.add(c)}}),Array.from(o).sort().forEach(i=>{const c={time_range:i};re.value.forEach(f=>{const b=e.find(B=>`${B.begin_time.substring(0,5)}-${B.end_time.substring(0,5)}`===i&&B.date===f&&B.resources_id==Z.value);b?c[f]={countsInfo:b.countsInfo,patient_type_label:b.patient_type_label,status:b.status,id:b.id,resources_id:b.resources_id,begin_time:b.begin_time,end_time:b.end_time,end_reservation_time:b.end_reservation_time}:c[f]={countsInfo:null,patient_type_label:null,status:null,id:null,resources_id:null}}),$.value.push(c)})}}else k.error(l.msg)})},Ae=()=>{O.value=O.value===0?1:0,O.value===0&&(h.value=[]),O.value===1&&$.value.forEach((l,e)=>{console.log(l);for(let o in l)o!="time_range"&&h.value.push(l[o].id)})},Fe=l=>{h.value.indexOf(l)===-1?h.value.push(l):h.value=h.value.filter(o=>o!==l)};let ge=_(null),K=_(!1),J=_({row:0,col:0,x:0,y:0}),ye=_({}),be=_(null);const qe=l=>{ge.value=l},Ge=l=>{ge.value=null},Xe=(l,e,o,u)=>{K.value||qe(e==null?void 0:e.id)},Ze=l=>{K.value||Ge()},We=(l,e,o,u)=>{if(l.target.closest(".plan_checkbox")||u==="time_range"||!e||!e.id)return;const i=l.currentTarget,c=i.closest("tr");if(!c)return;const f=be.value;if(!f)return;const b=f.getBoundingClientRect();K.value=!0,J.value={row:c.rowIndex,col:i.cellIndex,x:l.clientX-b.left+f.scrollLeft,y:l.clientY-b.top+f.scrollTop},h.value=[e.id],O.value=0},De=l=>{var pe;if(!K.value)return;const e=be.value;if(!e)return;const o=e.getBoundingClientRect(),u=l.clientX-o.left+e.scrollLeft,i=l.clientY-o.top+e.scrollTop;ye.value={left:Math.min(J.value.x,u)+"px",top:Math.min(J.value.y,i)+"px",width:Math.abs(u-J.value.x)+"px",height:Math.abs(i-J.value.y)+"px"};const c=document.elementFromPoint(l.clientX,l.clientY);if(!c)return;const f=c.closest("td");if(!f)return;const b=f.closest("tr");if(!b||((pe=b.parentElement)==null?void 0:pe.tagName)==="THEAD")return;const B=b.rowIndex,E=f.cellIndex;if(E===0)return;const M=J.value.row,U=J.value.col,Ie=Math.min(M,B),ae=Math.max(M,B),j=Math.min(U,E),G=Math.max(U,E);h.value=[];for(let H=Ie;H<=ae;H++){const t=$.value[H-1];if(t)for(let y=j;y<=G;y++){if(y===0)continue;const g=re.value[y-1];if(!g)continue;const z=t[g];z&&z.id&&h.value.push(z.id)}}},Be=()=>{K.value&&(K.value=!1,ye.value={})},je=l=>{Z.value=l,O.value=0,h.value=[],N()},ue=l=>h.value.includes(l);let He=_([]);const Ke=()=>{w.value=!0,Vt().then(l=>{w.value=!1,l.status?He.value=l.data:k.error(l.msg)})};let Je=_([]);const Qe=()=>{w.value=!0,Ct({}).then(l=>{w.value=!1,l.status?Je.value=l.data.list:k.error(l.msg)})};let ce=_([]),Z=_(0);const et=()=>{w.value=!0,It().then(l=>{w.value=!1,l.status?(ce.value=l.data,ce.value.length>0&&Z.value==""&&(Z.value=ce.value[0].id,N())):k.error(l.msg)})};let V=_("");const tt=l=>{Y.value=!0,w.value=!0,$e({id:l}).then(e=>{w.value=!1,e.status?(V.value=e.data,ve.value=new Set(V.value.coutsInfo.filter(o=>o.appointment_type_id===1||o.id===1||Number(o.count)>0||Number(o.locked_count)>0).map(o=>o.appointment_type_id||o.id))):k.error(e.msg)})},lt=()=>{let l=0;V.value.coutsInfo.forEach(e=>{l=l+Number(e.count)}),V.value.max_total=l,w.value=!0,Et({PlanDetaiInfo:V.value}).then(e=>{w.value=!1,e.status?(Y.value=!1,k.success("保存成功"),N()):k.error(e.msg)})},nt=()=>{if(h.value.length==0)return k.error("请至少勾选1条记录"),!1;me.confirm("确定删除吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{w.value=!0,Mt({ids:h.value}).then(l=>{w.value=!1,l.status?(k({message:l.msg,type:"success"}),N()):k.error(l.msg)})})},ot=()=>{if(h.value.length==0)return k.error("请至少勾选1条记录"),!1;me.confirm("确定批量禁用勾选的号源吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{w.value=!0,zt({ids:h.value}).then(l=>{w.value=!1,l.status?(k({message:"批量禁用成功",type:"success"}),N()):k.error(l.msg)})})},at=()=>{if(h.value.length==0)return k.error("请至少勾选1条记录"),!1;me.confirm("确定批量启用勾选的号源吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{w.value=!0,Tt({ids:h.value}).then(l=>{w.value=!1,l.status?(k({message:"批量启用成功",type:"success"}),N()):k.error(l.msg)})})};let A=_(!1),Q=_(!1),Le=_(0),Se=_(0),st=_(0),ke=_(0),ee=_(!1),ie=_([]);const R=[{name:"医生",id:1},{name:"护士站",id:4},{name:"微信",id:2},{name:"自助机",id:3}];let W=_([]),fe=_(!1),ne=_({begin_time:"",end_time:"",end_reservation_time:""}),xe=_(new Set),he=_(new Set);const Ee=()=>{W.value=R.map(l=>({appointment_type_id:l.id,count:""}))};Ee();const ut=Re(()=>W.value.reduce((l,e)=>l+(Number(e.count)||0),0)),it=()=>{if(h.value.length==0){k.error("请至少勾选1条记录");return}Ee();const l=new Set(h.value),e={};R.forEach(u=>{e[u.id]={count:[],locked_count:[]}});const o=[];if($.value.forEach(u=>{for(const i in u){if(i==="time_range")continue;const c=u[i];c&&c.id&&l.has(c.id)&&(o.push(c),c.countsInfo&&c.countsInfo.forEach(f=>{e[f.appointment_type_id]&&(e[f.appointment_type_id].count.push(f.count),e[f.appointment_type_id].locked_count.push(Number(f.locked_count)||0))}))}}),W.value=R.map(u=>{const i=e[u.id],c=f=>f.length>0&&f.every(b=>b===f[0]);return{appointment_type_id:u.id,count:i.count.length>0&&c(i.count)?i.count[0]:""}}),xe.value=new Set(R.filter(u=>{if(u.id===1)return!0;const i=e[u.id];return!!(i.count.some(c=>c>0)||i.locked_count.some(c=>c>0))}).map(u=>u.id)),o.length>0){const u=o[0].begin_time,i=o[0].end_time,c=o.every(f=>f.begin_time===u&&f.end_time===i);if(fe.value=c,c){const f={};o.forEach(E=>{const M=E.end_reservation_time;M!=null&&(f[M]=(f[M]||0)+1)});let b=o[0].end_reservation_time,B=0;for(const[E,M]of Object.entries(f))M>B&&(B=M,b=E);ne.value={begin_time:u,end_time:i,end_reservation_time:b}}else ne.value={begin_time:"",end_time:"",end_reservation_time:""}}else fe.value=!1,ne.value={begin_time:"",end_time:"",end_reservation_time:""};Le.value=0,Se.value=0,st.value=h.value.length,ke.value=0,ie.value=[],Q.value=!1,A.value=!0},dt=async()=>{for(const c of W.value)if(Number(c.count)<0){k.error("数量不能为负数");return}if(W.value.every(c=>Number(c.count)===0)&&!await me.confirm("所有渠道数量均为0确定继续修改吗","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>!0).catch(()=>!1))return;const e=ut.value;Q.value=!0,Le.value=0,Se.value=0,ie.value=[],ke.value=0;const o=[...h.value],u=W.value.map(c=>({appointment_type_id:c.appointment_type_id,count:Number(c.count)||0})),i={ids:o,max_total:e,coutsInfo:u};fe.value&&(i.end_reservation_time=ne.value.end_reservation_time);try{const c=await Pt(i);Q.value=!1,c&&c.status?(A.value=!1,k.success("批量修改完成"),N()):(k.error((c==null?void 0:c.msg)||"批量修改失败"),Q.value=!1)}catch{Q.value=!1,k.error("请求异常")}};let F=_(!1),te=_(!1),le=_([]),we=_({}),oe=_("");const Me=()=>{le.value=R.map(l=>({appointment_type_id:l.id,locked_count:""}))};Me(),Re(()=>le.value.reduce((l,e)=>l+(Number(e.locked_count)||0),0));const rt=(l,e)=>{const o=R[l],u=we.value[o.id];u!=null&&u.limited&&Number(e)>u.maxValue&&(le.value[l].locked_count=u.maxValue)},ct=()=>{if(h.value.length==0){k.error("请至少勾选1条记录");return}Me(),oe.value="";const l=new Set(h.value),e={},o={};R.forEach(i=>{e[i.id]=[],o[i.id]=[]}),$.value.forEach(i=>{for(const c in i){if(c==="time_range")continue;const f=i[c];f&&f.id&&l.has(f.id)&&f.countsInfo&&f.countsInfo.forEach(b=>{e[b.appointment_type_id]&&(e[b.appointment_type_id].push(b.count-b.used_count),o[b.appointment_type_id].push(Number(b.locked_count)||0))})}});const u={};R.forEach(i=>{const c=e[i.id];if(c.length>0){const f=Math.min(...c);u[i.id]={limited:!0,maxValue:f}}else u[i.id]={limited:!1,maxValue:null}}),we.value=u,he.value=new Set(R.filter(i=>{var f;return i.id===1||((f=u[i.id])==null?void 0:f.maxValue)>0||Math.max(...o[i.id]||[0])>0}).map(i=>i.id)),te.value=!1,F.value=!0},ft=async()=>{for(const o of le.value)if(Number(o.locked_count)<0){k.error("占用数量不能为负数");return}te.value=!0;const l=[...h.value],e=le.value.map(o=>({appointment_type_id:o.appointment_type_id,locked_count:Number(o.locked_count)||0}));try{const o=await Nt({ids:l,coutsInfo:e,locked_remark:oe.value});te.value=!1,o&&o.status?(F.value=!1,k.success("批量占位完成"),N()):(k.error((o==null?void 0:o.msg)||"批量占位失败"),te.value=!1)}catch{te.value=!1,k.error("请求异常")}};let de=_(!1),Ve=_(!1),ze=_(null),Ce=_(null),pt=_(null);const _t=(l,e)=>{pt.value=e,Ce.value=l,de.value=!0,Ve.value=!0,Rt({planid:l.id,qudaoid:e}).then(o=>{Ve.value=!1,o.status?ze.value=o.data:k.error(o.msg)})};let q=_(!1),Te=_(new Set),C=_(null);const mt=l=>{q.value=!0,w.value=!0,$e({id:l.id}).then(e=>{w.value=!1,e.status?(C.value=e.data,C.value.coutsInfo.forEach(o=>{o.locked_count===null&&(o.locked_count=0)}),Te.value=new Set(C.value.coutsInfo.filter(o=>o.appointment_type_id===1||o.id===1||Number(o.count)>0||Number(o.locked_count)>0).map(o=>o.appointment_type_id||o.id))):k.error(e.msg)})},vt=()=>{let l=[],e=!1;C.value.coutsInfo.forEach(o=>{if(e)return;const u=o.count-o.used_count;if(Number(o.locked_count)>u){k.error(`${o.name} 的占位数量不能大于剩余可用数量,最多${u}`),e=!0;return}if(Number(o.locked_count)<0){k.error(`${o.name} 的占位数量不能为负数`),e=!0;return}l.push({appointment_type_id:o.appointment_type_id,locked_count:o.locked_count||0})}),!e&&(w.value=!0,Ut({roster_detail_id:C.value.id,locked_counts:l,locked_remark:C.value.locked_remark||""}).then(o=>{w.value=!1,o.status?(q.value=!1,N(),k.success("占位设置保存成功")):k.error(o.msg)}))};function Pe(l){const e=l.getFullYear(),o=String(l.getMonth()+1).padStart(2,"0"),u=String(l.getDate()).padStart(2,"0");return`${e}-${o}-${u}`}function gt(l){const e=l.map(f=>new Date(f)).sort((f,b)=>f-b),o=e[0],u=e[e.length-1],i=[];let c=new Date(o);for(;c<=u;)i.push(c.toISOString().split("T")[0]),c.setDate(c.getDate()+1);return i}function yt(l){const e=new Date(l);return isNaN(e)?"无效日期":["周日","周一","周二","周三","周四","周五","周六"][e.getDay()]}return kt(()=>{const l=new Date,e=Pe(l),o=new Date(l);o.setDate(l.getDate()+14);const u=Pe(o);X.value.dateRange=[e,u],Qe(),et(),Ke(),document.addEventListener("mousemove",De),document.addEventListener("mouseup",Be)}),xt(()=>{document.removeEventListener("mousemove",De),document.removeEventListener("mouseup",Be)}),(l,e)=>{const o=L("el-date-picker"),u=L("el-form-item"),i=L("el-button"),c=L("el-row"),f=L("el-icon"),b=L("el-empty"),B=L("el-tag"),E=L("el-checkbox"),M=L("el-checkbox-group"),U=L("el-input"),Ie=L("el-switch"),ae=L("el-form"),j=L("el-dialog"),G=L("el-table-column"),pe=L("el-table"),H=ht("loading");return d(),p("div",null,[r("div",$t,[a(c,null,{default:s(()=>[a(u,null,{default:s(()=>[a(o,{style:{"margin-left":"8px",width:"150px"},modelValue:n(X).dateRange[0],"onUpdate:modelValue":e[0]||(e[0]=t=>n(X).dateRange[0]=t),type:"date",placeholder:"开始时间","value-format":"YYYY-MM-DD"},null,8,["modelValue"]),e[28]||(e[28]=r("span",{style:{margin:"0 4px"}},"至",-1)),a(o,{style:{width:"150px"},modelValue:n(X).dateRange[1],"onUpdate:modelValue":e[1]||(e[1]=t=>n(X).dateRange[1]=t),type:"date",placeholder:"结束时间","value-format":"YYYY-MM-DD"},null,8,["modelValue"])]),_:1}),a(i,{onClick:e[2]||(e[2]=t=>N()),style:{"margin-left":"10px"}},{default:s(()=>[...e[29]||(e[29]=[m("搜索",-1)])]),_:1}),a(i,{type:"danger",onClick:e[3]||(e[3]=t=>nt()),style:{"margin-left":"10px"}},{default:s(()=>[...e[30]||(e[30]=[m("删除",-1)])]),_:1}),a(i,{type:"warning",onClick:e[4]||(e[4]=t=>ot()),style:{"margin-left":"10px"}},{default:s(()=>[...e[31]||(e[31]=[m("批量禁用",-1)])]),_:1}),a(i,{type:"success",onClick:e[5]||(e[5]=t=>at()),style:{"margin-left":"10px"}},{default:s(()=>[...e[32]||(e[32]=[m("批量启用",-1)])]),_:1}),a(i,{type:"primary",onClick:e[6]||(e[6]=t=>it()),style:{"margin-left":"10px"}},{default:s(()=>[...e[33]||(e[33]=[m("批量修改",-1)])]),_:1}),a(i,{type:"warning",onClick:e[7]||(e[7]=t=>ct()),style:{"margin-left":"10px"}},{default:s(()=>[...e[34]||(e[34]=[m("批量占位",-1)])]),_:1})]),_:1})]),r("div",Ot,[r("div",Yt,[(d(!0),p(D,null,S(n(ce),(t,y)=>(d(),p("div",{key:y,onClick:g=>je(t.id),class:se({"zhenshiButton zhenshiButtonActive":t.id===n(Z),zhenshiButton:t.id!==n(Z)})},v(t.department_resources_name),11,At))),128))]),r("div",Ft,[e[41]||(e[41]=r("div",{style:{"text-align":"right",padding:"4px 8px","font-size":"12px",color:"#999"}},"数据格式:占位/已用/总数",-1)),_e((d(),p("div",{ref_key:"scrollContainer",ref:be,style:{border:"1px solid #efefef","overflow-x":"auto",position:"relative"}},[n($).length>0?(d(),p("table",qt,[r("tr",Gt,[r("td",null,[r("div",Xt,[e[35]||(e[35]=r("div",{style:{"margin-left":"30px","margin-right":"6px"}},"全选",-1)),r("div",{class:se({"plan_checkAllbox plan_checkAllbox_active":n(O)===1,"plan_checkAllbox ":n(O)===0}),onClick:e[8]||(e[8]=t=>Ae())},[n(O)===1?(d(),T(f,{key:0,color:"#ffffff"},{default:s(()=>[a(n(Ue))]),_:1})):x("",!0)],2)])]),(d(!0),p(D,null,S(n(re),(t,y)=>(d(),p("td",Zt,v(t.substring(5,10))+" "+v(yt(t)),1))),256))]),(d(!0),p(D,null,S(n($),(t,y)=>(d(),p("tr",{key:y},[(d(!0),p(D,null,S(t,(g,z)=>(d(),p("td",{key:z,"data-row":y,"data-col":z,onMouseover:I=>Xe(I,g),onMouseleave:I=>Ze(g.id),onMousedown:I=>We(I,g,y,z)},[r("div",null,[z=="time_range"?(d(),p("span",jt,v(g),1)):x("",!0),g.countsInfo&&g.countsInfo.length>0?(d(),p("div",{key:1,class:se({planInfo_k:g.status==1,"planInfo_k planInfo_k_disabled":g.status==0,planInfo_k_selected:ue(g.id)&&g.status==1,planInfo_k_disabled_selected:ue(g.id)&&g.status==0})},[n(ge)==g.id?(d(),p("div",Ht,[r("div",{class:"icon_k",onClick:I=>tt(g.id)},[a(f,{color:"#409eff",size:"20"},{default:s(()=>[a(n(Dt))]),_:1}),e[36]||(e[36]=r("span",{class:"icon_text"},"编辑",-1))],8,Kt),r("div",{class:"icon_k",onClick:I=>_t(g,0)},[a(f,{color:"#409eff",size:"20"},{default:s(()=>[a(n(Bt))]),_:1}),e[37]||(e[37]=r("span",{class:"icon_text"},"明细",-1))],8,Jt),r("div",{class:"icon_k",onClick:I=>mt(g)},[a(f,{color:"#409eff",size:"20"},{default:s(()=>[a(n(Lt))]),_:1}),e[38]||(e[38]=r("span",{class:"icon_text"},"占位",-1))],8,Qt)])):x("",!0),r("div",{class:se({"plan_checkbox plan_checkbox_active":ue(g.id),plan_checkbox:!ue(g.id)}),onClick:I=>Fe(g.id)},[ue(g.id)?(d(),T(f,{key:0,color:"#ffffff"},{default:s(()=>[a(n(Ue))]),_:1})):x("",!0)],10,el),(d(),p(D,{key:2},[r("div",tl,[r("div",ll,[e[39]||(e[39]=r("span",null,"总数:",-1)),m(v(g.countsInfo[0].max_total),1)])]),r("div",nl,[(d(!0),p(D,null,S(g.countsInfo,(I,Ne)=>(d(),p(D,{key:Ne},[I&&!(I.count===0&&I.used_count===0&&I.locked_count===0)?(d(),p("div",ol,[r("span",null,v(I.jiancheng),1),r("span",null,[r("span",{class:se({"yellow bold-text":I.locked_count>0})},v(I.locked_count!=null?I.locked_count:0),3),e[40]||(e[40]=r("span",null,"/",-1)),r("span",al,v(I.used_count),1),m("/"+v(I.count),1)])])):x("",!0)],64))),128))])],64)),r("div",sl,[(d(!0),p(D,null,S(g.patient_type_label,(I,Ne)=>(d(),p("div",ul,v(I),1))),256))])],2)):x("",!0)])],40,Wt))),128))]))),128))])):x("",!0),n(K)?(d(),p("div",{key:1,class:"drag-selection-overlay",style:wt(n(ye))},null,4)):x("",!0),n($).length==0?(d(),p("div",il,[a(b,{description:"暂无号源"})])):x("",!0)])),[[H,n(w)]])])]),a(j,{modelValue:n(Y),"onUpdate:modelValue":e[13]||(e[13]=t=>P(Y)?Y.value=t:Y=t),title:"修改",width:"40%"},{footer:s(()=>[r("span",_l,[a(i,{onClick:e[12]||(e[12]=t=>P(Y)?Y.value=!1:Y=!1)},{default:s(()=>[...e[49]||(e[49]=[m("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:lt},{default:s(()=>[...e[50]||(e[50]=[m(" 确定 ",-1)])]),_:1})])]),default:s(()=>[_e((d(),p("div",null,[n(V)?(d(),T(ae,{key:0,"label-width":"100px",style:{"padding-right":"40px"}},{default:s(()=>[a(u,{label:"日期:"},{default:s(()=>[m(v(n(V).date),1)]),_:1}),a(u,{label:"星期:"},{default:s(()=>[m(v(n(V).weekname),1)]),_:1}),a(u,{label:"科室:"},{default:s(()=>[m(v(n(V).department_name),1)]),_:1}),x("",!0),x("",!0),a(u,{label:"病人类型:"},{default:s(()=>[a(M,{disabled:"",modelValue:n(V).patientType,"onUpdate:modelValue":e[9]||(e[9]=t=>n(V).patientType=t)},{default:s(()=>[a(E,{label:"0"},{default:s(()=>[...e[42]||(e[42]=[m("住院",-1)])]),_:1}),a(E,{label:"1"},{default:s(()=>[...e[43]||(e[43]=[m("门诊",-1)])]),_:1}),a(E,{label:"2"},{default:s(()=>[...e[44]||(e[44]=[m("急诊",-1)])]),_:1}),a(E,{label:"3"},{default:s(()=>[...e[45]||(e[45]=[m("体检",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(u,{label:"时间段:"},{default:s(()=>[e[46]||(e[46]=m(" 开始时间:",-1)),r("span",dl,v(n(V).begin_time),1),e[47]||(e[47]=m(" 结束时间:",-1)),r("span",rl,v(n(V).end_time),1),e[48]||(e[48]=m(" 停止预约时间:",-1)),a(U,{modelValue:n(V).end_reservation_time,"onUpdate:modelValue":e[10]||(e[10]=t=>n(V).end_reservation_time=t),placeholder:"停止预约时间",style:{width:"120px",display:"inline-block"}},null,8,["modelValue"])]),_:1}),n(V).coutsInfo?(d(),T(u,{key:2,label:"号源数量:"},{default:s(()=>[r("div",null,[(d(!0),p(D,null,S(n(V).coutsInfo,(t,y)=>(d(),p(D,{key:y},[n(ve).has(t.appointment_type_id||t.id)?(d(),p("div",cl,[n(ve).size>1?(d(),p("div",fl,v(t.name),1)):x("",!0),r("div",pl,[a(U,{type:"number",modelValue:n(V).coutsInfo[y].count,"onUpdate:modelValue":g=>n(V).coutsInfo[y].count=g,min:1,placeholder:"0",oninput:"value=value.replace(/^0|[^0-9]/g, '')"},null,8,["modelValue","onUpdate:modelValue"])])])):x("",!0)],64))),128))])]),_:1})):x("",!0),a(u,{label:"状态:"},{default:s(()=>[a(Ie,{modelValue:n(V).status,"onUpdate:modelValue":e[11]||(e[11]=t=>n(V).status=t),size:"large","active-text":"正常","inactive-text":"关闭","active-value":1,"inactive-value":0},null,8,["modelValue"])]),_:1}),a(u,{label:"添加时间:"},{default:s(()=>[m(v(n(V).created_at),1)]),_:1})]),_:1})):x("",!0)])),[[H,n(w)]])]),_:1},8,["modelValue"]),a(j,{modelValue:n(de),"onUpdate:modelValue":e[14]||(e[14]=t=>P(de)?de.value=t:de=t),title:"预约明细",width:"75%"},{default:s(()=>[r("div",null,[r("div",ml,[m(v(n(Ce).department_resources_name)+" ",1),(d(!0),p(D,null,S(n(Ce).devices,(t,y)=>(d(),p("span",{key:y,class:se(t.status==1&&t.is_del==0?"":"hongzi")},v(t.device_name),3))),128))]),_e((d(),T(pe,{data:n(ze),style:{width:"100%"},"row-key":"id"},{default:s(()=>[a(G,{prop:"list_status",label:"状态",width:"100"},{default:s(t=>[t.row.list_status===0?(d(),T(B,{key:0,class:"ml-2",type:"info"},{default:s(()=>[...e[51]||(e[51]=[m("申请中",-1)])]),_:1})):x("",!0),t.row.list_status===1?(d(),T(B,{key:1,class:"ml-2",type:"success"},{default:s(()=>[...e[52]||(e[52]=[m("已预约",-1)])]),_:1})):x("",!0),t.row.list_status===2?(d(),T(B,{key:2,class:"ml-2"},{default:s(()=>[...e[53]||(e[53]=[m("登记",-1)])]),_:1})):x("",!0),t.row.list_status===3?(d(),T(B,{key:3,class:"ml-2",type:"warning"},{default:s(()=>[...e[54]||(e[54]=[m("完成",-1)])]),_:1})):x("",!0)]),_:1}),a(G,{prop:"user_name",label:"姓名"}),a(G,{prop:"user_phone",label:"电话"}),a(G,{prop:"reg_num",label:"登记号"}),a(G,{prop:"reservation_department",label:"申请科室"}),a(G,{label:"项目","show-overflow-tooltip":"","min-width":"220"},{default:s(t=>[t.row.is_share_slot==1?(d(),T(B,{key:0,size:"small",type:"warning",style:{"margin-right":"4px"}},{default:s(()=>[...e[55]||(e[55]=[m("人",-1)])]),_:1})):x("",!0),m(v(t.row.entrust)+v(t.row.requestComment?""+t.row.requestComment+"":"")+" ",1),t.row.use_seats&&t.row.use_seats>1?(d(),p("span",vl,"×"+v(t.row.use_seats),1)):x("",!0)]),_:1}),a(G,{prop:"docotr",label:"开单医生"})]),_:1},8,["data"])),[[H,n(Ve)]])])]),_:1},8,["modelValue"]),a(j,{modelValue:n(q),"onUpdate:modelValue":e[17]||(e[17]=t=>P(q)?q.value=t:q=t),title:"占位设置",width:"40%"},{footer:s(()=>[r("span",Cl,[a(i,{onClick:e[16]||(e[16]=t=>P(q)?q.value=!1:q=!1)},{default:s(()=>[...e[58]||(e[58]=[m("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:vt},{default:s(()=>[...e[59]||(e[59]=[m(" 确定 ",-1)])]),_:1})])]),default:s(()=>[_e((d(),p("div",null,[n(C)?(d(),T(ae,{key:0,"label-width":"120px",style:{"padding-right":"40px"}},{default:s(()=>[a(u,{label:"日期:"},{default:s(()=>[m(v(n(C).date),1)]),_:1}),a(u,{label:"星期:"},{default:s(()=>[m(v(n(C).weekname),1)]),_:1}),a(u,{label:"科室:"},{default:s(()=>[m(v(n(C).department_name),1)]),_:1}),a(u,{label:"资源:"},{default:s(()=>[m(v(n(C).resources_name),1)]),_:1}),a(u,{label:"服务组:"},{default:s(()=>[(d(!0),p(D,null,S(n(C).devices,(t,y)=>(d(),T(B,{key:y,type:t.status===1&&t.is_del===0?"":"danger",style:{"margin-left":"8px"}},{default:s(()=>[m(v(t.device_name),1)]),_:2},1032,["type"]))),128))]),_:1}),a(u,{label:"时间段:"},{default:s(()=>[e[56]||(e[56]=m(" 开始时间:",-1)),r("span",gl,v(n(C).begin_time),1),e[57]||(e[57]=m(" 结束时间:",-1)),r("span",yl,v(n(C).end_time),1)]),_:1}),a(u,{label:"渠道占位:"},{default:s(()=>[r("div",bl,[n(C).coutsInfo&&n(C).coutsInfo.length>0?(d(!0),p(D,{key:0},S(n(C).coutsInfo,(t,y)=>(d(),p(D,{key:y},[t&&!(t.count===0&&t.used_count===0&&t.locked_count===0)?(d(),p("div",kl,[n(Te).size>1?(d(),p("div",xl,v(t.name),1)):x("",!0),r("div",hl,[a(U,{type:"number",modelValue:n(C).coutsInfo[y].locked_count,"onUpdate:modelValue":g=>n(C).coutsInfo[y].locked_count=g,placeholder:"占位数量",min:"0",oninput:"value=value.replace(/[^0-9]/g,'')"},null,8,["modelValue","onUpdate:modelValue"])]),r("div",wl," 剩余可用: "+v(t.count-t.used_count),1)])):x("",!0)],64))),128)):(d(),p("div",Vl," 暂无渠道数据 "))])]),_:1}),a(u,{label:"占位备注:"},{default:s(()=>[a(U,{type:"textarea",modelValue:n(C).locked_remark,"onUpdate:modelValue":e[15]||(e[15]=t=>n(C).locked_remark=t),rows:3,placeholder:"选填,填写占位原因",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})):x("",!0)])),[[H,n(w)]])]),_:1},8,["modelValue"]),a(j,{modelValue:n(A),"onUpdate:modelValue":e[21]||(e[21]=t=>P(A)?A.value=t:A=t),title:"批量修改",width:"45%","close-on-click-modal":!1},{footer:s(()=>[a(i,{onClick:e[19]||(e[19]=t=>P(A)?A.value=!1:A=!1),disabled:n(Q)},{default:s(()=>[...e[62]||(e[62]=[m("取消",-1)])]),_:1},8,["disabled"]),a(i,{type:"primary",onClick:e[20]||(e[20]=t=>dt()),disabled:n(Q)},{default:s(()=>[...e[63]||(e[63]=[m("确定修改",-1)])]),_:1},8,["disabled"])]),default:s(()=>[r("div",null,[r("div",Il,"已选 "+v(n(h).length)+" 条号源明细",1),a(ae,{"label-width":"100px"},{default:s(()=>[a(u,{label:"号源数量:"},{default:s(()=>[r("div",Dl,[(d(),p(D,null,S(R,(t,y)=>(d(),p(D,{key:y},[t.id===1||n(xe).has(t.id)?(d(),p("div",Bl,[n(xe).size>1?(d(),p("span",Ll,v(t.name),1)):x("",!0),a(U,{modelValue:n(W)[y].count,"onUpdate:modelValue":g=>n(W)[y].count=g,modelModifiers:{number:!0},placeholder:"数量",size:"default",style:{width:"220px"},oninput:"value=value.replace(/[^0-9]/g,'')"},null,8,["modelValue","onUpdate:modelValue"])])):x("",!0)],64))),64))])]),_:1})]),_:1}),n(fe)?(d(),p("div",Sl,[e[61]||(e[61]=r("div",{style:{"margin-bottom":"8px","font-weight":"600",color:"#333","font-size":"13px"}},"时间段设置",-1)),r("div",El,[r("div",Ml,[e[60]||(e[60]=r("div",{style:{width:"90px"}},"停止预约时间:",-1)),a(U,{modelValue:n(ne).end_reservation_time,"onUpdate:modelValue":e[18]||(e[18]=t=>n(ne).end_reservation_time=t),placeholder:"停止预约时间",style:{width:"120px"}},null,8,["modelValue"])])])])):x("",!0)])]),_:1},8,["modelValue"]),a(j,{modelValue:n(F),"onUpdate:modelValue":e[25]||(e[25]=t=>P(F)?F.value=t:F=t),title:"批量占位",width:"45%","close-on-click-modal":!1},{footer:s(()=>[a(i,{onClick:e[23]||(e[23]=t=>P(F)?F.value=!1:F=!1),disabled:n(te)},{default:s(()=>[...e[64]||(e[64]=[m("取消",-1)])]),_:1},8,["disabled"]),a(i,{type:"warning",onClick:e[24]||(e[24]=t=>ft()),disabled:n(te)},{default:s(()=>[...e[65]||(e[65]=[m("确定占位",-1)])]),_:1},8,["disabled"])]),default:s(()=>[r("div",null,[r("div",zl,"已选 "+v(n(h).length)+" 条号源明细",1),a(ae,{"label-width":"100px"},{default:s(()=>[a(u,{label:"号源占位:"},{default:s(()=>[r("div",Tl,[(d(),p(D,null,S(R,(t,y)=>{var g;return d(),p(D,{key:y},[n(he).has(t.id)?(d(),p("div",Pl,[n(he).size>1?(d(),p("span",Nl,v(t.name),1)):x("",!0),a(U,{modelValue:n(le)[y].locked_count,"onUpdate:modelValue":z=>n(le)[y].locked_count=z,modelModifiers:{number:!0},placeholder:"占用数量",size:"default",style:{width:"220px"},oninput:"value=value.replace(/[^0-9]/g,'')",onInput:z=>rt(y,z)},null,8,["modelValue","onUpdate:modelValue","onInput"]),r("span",Rl," 最大可占: "+v((g=n(we)[t.id])==null?void 0:g.maxValue),1)])):x("",!0)],64)}),64))])]),_:1}),a(u,{label:"占位备注:",style:{"margin-top":"10px"}},{default:s(()=>[a(U,{type:"textarea",modelValue:n(oe),"onUpdate:modelValue":e[22]||(e[22]=t=>P(oe)?oe.value=t:oe=t),rows:3,placeholder:"选填,填写占位原因",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})])]),_:1},8,["modelValue"]),a(j,{modelValue:n(ee),"onUpdate:modelValue":e[27]||(e[27]=t=>P(ee)?ee.value=t:ee=t),title:"修改结果",width:"40%"},{footer:s(()=>[a(i,{type:"primary",onClick:e[26]||(e[26]=t=>{P(ee)?ee.value=!1:ee=!1,N()})},{default:s(()=>[...e[69]||(e[69]=[m("确定",-1)])]),_:1})]),default:s(()=>[r("div",null,[r("div",Ul,[e[66]||(e[66]=m(" 成功: ",-1)),r("span",$l,v(n(ke)),1),e[67]||(e[67]=m(" 条 失败: ",-1)),r("span",Ol,v(n(ie).length),1),e[68]||(e[68]=m(" 条 ",-1))]),n(ie).length>0?(d(),p("div",Yl,[(d(!0),p(D,null,S(n(ie),(t,y)=>(d(),p("div",{key:y,style:{padding:"4px 0","font-size":"13px",color:"#f56c6c"}}," 第 "+v(t.index+1)+" 条(ID: "+v(t.id)+") → "+v(t.msg),1))),128))])):x("",!0)])]),_:1},8,["modelValue"])])}}},Gl=bt(Al,[["__scopeId","data-v-d6633b3d"]]);export{Gl as default};