import{_ as ee,$ as te,o as ae,r as h,c as le,d as r,e as _,h as N,i as l,k as i,F as G,t as ne,x as E,v as S,f as n,w as c,j,l as V,g as s,aq as ie,E as m,aM as se,a0 as oe,q as C,aN as de,aO as ue,O as ce,aP as re}from"./index-bc335d7e.js";const ve={class:"page-container"},pe={class:"left-panel"},_e={class:"device-list"},me=["onClick"],ge={class:"device-name"},fe={class:"device-count"},he={key:0,class:"empty-tip"},be={class:"right-panel"},ye={class:"panel-header"},ke={class:"panel-title"},xe={key:0,class:"right-content"},Be={style:{"margin-bottom":"12px"}},Ce={key:0,class:"empty-tip",style:{"margin-top":"20px"}},we={style:{display:"flex",gap:"12px","margin-bottom":"12px"}},De={style:{display:"flex","justify-content":"space-between","align-items":"center","margin-top":"12px"}},Ie={style:{color:"#909399","font-size":"13px"}},ze={__name:"DeviceCheckItemBind",setup(Se){let w=s(!1),b=s([]),d=s(null),L=s([]),y=s(!1),k=s(!1),p=s(""),g=s([]),D=s(!1),T=null,o=s(1),x=s(10),B=s(0),I=s(null);const q=te(()=>g.value),O=()=>{w.value=!0,ie().then(t=>{w.value=!1,t.status?(b.value=t.data,b.value.length>0&&F(b.value[0])):m.error(t.msg)}).catch(()=>{w.value=!1})},F=t=>{d.value=t,P(t.id)},P=t=>{y.value=!0,se({device_id:t}).then(e=>{y.value=!1,e.status?L.value=e.data:m.error(e.msg)}).catch(()=>{y.value=!1})},f=()=>{D.value=!0,de({device_id:d.value.id,keyword:p.value,page:o.value,pageSize:x.value}).then(t=>{D.value=!1,t.status?(g.value=t.data.list||[],B.value=t.data.count||0):m.error(t.msg)}).catch(()=>{D.value=!1})},R=()=>{k.value=!0,p.value="",o.value=1,f()},$=()=>{T&&clearTimeout(T),T=setTimeout(()=>{o.value=1,f()},300)},K=()=>{o.value=1,f()},A=()=>{f()},H=t=>{o.value=t,f()},J=t=>{I.value=t.id,ue({item_id:t.id,device_id:d.value.id}).then(e=>{if(I.value=null,e.status){m.success(`已绑定 ${t.item_name}`);const v=g.value.findIndex(u=>u.id===t.id);v!==-1&&g.value.splice(v,1),B.value--,g.value.length===0&&o.value>1&&(o.value--,f()),P(d.value.id)}else m.error(e.msg)}).catch(()=>{I.value=null})},Q=()=>{p.value="",g.value=[],B.value=0,o.value=1},W=t=>{ce.confirm(`确定解绑 ${t.item_name} 吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{re({item_id:t.id,device_id:d.value.id}).then(e=>{e.status?(m.success("解绑成功"),P(d.value.id)):m.error(e.msg)})}).catch(()=>{})};return ae(()=>{O()}),(t,e)=>{const v=h("el-button"),u=h("el-table-column"),M=h("el-table"),X=h("el-input"),Y=h("el-pagination"),Z=h("el-dialog"),U=le("loading");return r(),_(G,null,[N((r(),_("div",null,[i("div",ve,[i("div",pe,[e[4]||(e[4]=i("div",{class:"panel-header"},[i("span",{class:"panel-title"},"排班")],-1)),i("div",_e,[(r(!0),_(G,null,ne(l(b),a=>{var z;return r(),_("div",{key:a.id,class:oe(["device-item",{active:((z=l(d))==null?void 0:z.id)===a.id}]),onClick:Ve=>F(a)},[i("div",ge,S(a.device_name),1),i("div",fe,"已绑定 "+S(a.bind_count||0)+" 项",1)],10,me)}),128)),l(b).length===0?(r(),_("div",he," 暂无服务组 ")):E("",!0)])]),i("div",be,[i("div",ye,[i("span",ke,S(l(d)?l(d).device_name+" - 已绑定的检查项目":"请选择一个排班"),1)]),l(d)?(r(),_("div",xe,[i("div",Be,[n(v,{type:"primary",onClick:R},{default:c(()=>[...e[5]||(e[5]=[C("添加绑定",-1)])]),_:1})]),N((r(),j(M,{data:l(L),style:{width:"100%"},"row-key":"id"},{default:c(()=>[n(u,{prop:"item_code",label:"项目编号",width:"160"}),n(u,{prop:"item_name",label:"检查项目名称"}),n(u,{prop:"item_class_name",label:"医嘱类别"}),n(u,{prop:"",label:"操作",width:"100"},{default:c(a=>[n(v,{type:"danger",size:"small",onClick:z=>W(a.row)},{default:c(()=>[...e[6]||(e[6]=[C("解绑",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[U,l(y)]]),l(L).length===0&&!l(y)?(r(),_("div",Ce," 暂无绑定的检查项目 ")):E("",!0)])):E("",!0)])])])),[[U,l(w)]]),n(Z,{modelValue:l(k),"onUpdate:modelValue":e[3]||(e[3]=a=>V(k)?k.value=a:k=a),title:"添加检查项目绑定",width:"60%",onClosed:Q},{default:c(()=>[i("div",null,[i("div",we,[n(X,{modelValue:l(p),"onUpdate:modelValue":e[0]||(e[0]=a=>V(p)?p.value=a:p=a),placeholder:"输入项目编号/名称搜索",clearable:"",style:{flex:"1"},onInput:$},null,8,["modelValue"]),n(v,{type:"primary",onClick:K},{default:c(()=>[...e[7]||(e[7]=[C("搜索",-1)])]),_:1}),n(v,{onClick:A},{default:c(()=>[...e[8]||(e[8]=[C("刷新",-1)])]),_:1})]),N((r(),j(M,{data:q.value,style:{width:"100%"},"row-key":"id"},{default:c(()=>[n(u,{prop:"item_code",label:"项目编号",width:"160"}),n(u,{prop:"item_name",label:"检查项目名称"}),n(u,{prop:"item_class_name",label:"医嘱类别"}),n(u,{prop:"",label:"操作",width:"100"},{default:c(a=>[n(v,{type:"primary",size:"small",onClick:z=>J(a.row),loading:l(I)===a.row.id},{default:c(()=>[...e[9]||(e[9]=[C("添加",-1)])]),_:1},8,["onClick","loading"])]),_:1})]),_:1},8,["data"])),[[U,l(D)]]),i("div",De,[i("span",Ie,"共 "+S(l(B))+" 条",1),n(Y,{"current-page":l(o),"onUpdate:currentPage":e[1]||(e[1]=a=>V(o)?o.value=a:o=a),"page-size":l(x),"onUpdate:pageSize":e[2]||(e[2]=a=>V(x)?x.value=a:x=a),"page-sizes":[10],layout:"prev, pager, next",total:l(B),onCurrentChange:H},null,8,["current-page","page-size","total"])])])]),_:1},8,["modelValue"])],64)}}},Te=ee(ze,[["__scopeId","data-v-bd956dc7"]]);export{Te as default};