import{ci as z,M as E,K as J,z as M,B as G,C as H,a0 as Q,av as W,aw as X,ax as Z}from"./index.17037962789732.js";import"./index.1703796278973300.js";import"./index.170379627897315.js";import"./index.170379627897317.js";import"./index.1703796278973301.js";import"./index.1703796278973302.js";import"./index.170379627897332.js";import"./index.1703796278973303.js";import"./index.170379627897339.js";import"./index.170379627897316.js";import"./index.170379627897314.js";import"./index.1703796278973304.js";import"./index.1703796278973305.js";import"./index.1703796278973306.js";import{_ as ee}from"./index.vue_vue_type_script_setup_true_lang.17037962789733.js";import{_ as te}from"./index.170379627897313.js";import"./index.170379627897319.js";import"./index.170379627897327.js";import"./index.170379627897336.js";import{_ as h}from"./index.vue_vue_type_script_setup_true_name_PermissionButton_lang.1703796278973.js";import se from"./AddDeviceOrProductDialog.1703796278973.js";import ie from"./EditPermissionDialog.1703796278973.js";import{a as oe}from"./comm.1703796278973.js";import{i as ne,b as ae,j as re,k as le,l as ce}from"./department.1703796278973.js";import{u as de}from"./department.17037962789732.js";import{a as pe}from"./dayjs.min.1703796278973.js";import{d as K,k as S,m as me,V as ue,v as _e,w as fe,r as D,o as x,x as j,b as n,a as o,u as p,t as y,y as ge,j as he,z as u,A as C,F as ye,h as ve,c as R,B as A,G as ke,H as we}from"./vue.1703796278973.js";import{_ as be}from"./_plugin-vue_export-helper.1703796278973.js";import"./index.17037962789733.js";import"./isArray.1703796278973.js";import"./editor.api.1703796278973.js";import"./preload-helper.1703796278973.js";import"./monaco.contribution.1703796278973.js";import"./index.170379627897333.js";import"./index.170379627897335.js";import"./index.170379627897320.js";import"./index.170379627897321.js";import"./permission.1703796278973.js";import"./index.170379627897337.js";import"./index.1703796278973312.js";import"./system.1703796278973.js";import"./index.170379627897334.js";import"./default.1703796278973.js";import"./consts.1703796278973.js";import"./404.1703796278973.js";const O=v=>(ke("data-v-5f9183ae"),v=v(),we(),v),xe={class:"product-container"},Ce=["src"],Ie={class:"card-item-content-title",style:{"margin-bottom":"18px"}},Se=O(()=>u("div",{class:"card-item-content-text"},"ID",-1)),De={style:{cursor:"pointer"},class:"card-item-content-value"},Le=O(()=>u("div",{class:"card-item-content-text"}," 资产权限 ",-1)),Pe={style:{cursor:"pointer"},class:"card-item-content-value"},Re={class:"dialogs"},Be=K({name:"device"}),Te=K({...Be,props:{parentId:null,bindBool:{type:Boolean}},emits:["update:bindBool"],setup(v,{emit:N}){const m=v,q=de(),_="system/Department",L=[{title:"ID",dataIndex:"id",key:"id",ellipsis:!0,fixed:"left",search:{type:"string"}},{title:"名称",dataIndex:"name",key:"name",ellipsis:!0,search:{type:"string",first:!0}},{title:"所属产品",dataIndex:"productName",key:"productName",ellipsis:!0,search:{rename:"productId$product-info",type:"select",handleValue(t){return`id is ${t}`},options:()=>new Promise(t=>{ce({paging:!1,"sorts[0].name":"createTime","sorts[0].order":"desc"}).then(a=>{const l=a.result.map(c=>({label:c.name,value:c.id}));t(l)})})}},{title:"资产权限",dataIndex:"permission",key:"permission",ellipsis:!0,scopedSlots:!0,width:300},{title:"注册时间",dataIndex:"registryTime",key:"registryTime",ellipsis:!0,scopedSlots:!0,width:200,search:{type:"date"}},{title:"状态",dataIndex:"state",key:"state",ellipsis:!0,search:{type:"select",options:[{label:"禁用",value:"notActive"},{label:"离线",value:"offline"},{label:"在线",value:"online"}]},scopedSlots:!0},{title:"操作",dataIndex:"action",key:"action",fixed:"right",scopedSlots:!0}],B=S({}),T=S(),e={_selectedRowKeys:S([]),selectedRows:[],permissionList:S([]),init:()=>{e.getPermissionDict(),me(()=>m.parentId,()=>{e.refresh()})},getActions:(t,s)=>t?[{permission:`${_}:assert`,key:"edit",tooltip:{title:"编辑"},icon:"EditOutlined",onClick:()=>e.clickEdit(t)},{permission:`${_}:bind`,key:"unbind",tooltip:{title:"解除绑定"},popConfirm:{title:"是否解除绑定",onConfirm:()=>e.clickUnBind(t)},icon:"DisconnectOutlined"}]:[],getPermissionDict:()=>{ne().then(t=>{e.permissionList.value=t.result})},getPermissLabel:t=>{const s=e.permissionList.value;return s.length<1||t.length<1?"":t.map(l=>{var c;return(c=s.find(g=>g.id===l))==null?void 0:c.name}).join(",")},onSelectChange:t=>{const s=e._selectedRowKeys.value,a=s.indexOf(t.id);a===-1?(s.push(t.id),e.selectedRows.push(t)):(s.splice(a,1),e.selectedRows.splice(a,1))},cancelSelect:()=>{e._selectedRowKeys.value=[],e.selectedRows=[]},getData:(t,s)=>new Promise(a=>{ae(t).then(l=>{const{pageIndex:c,pageSize:g,total:P,data:k}=l.result,I=k.map(w=>w.id);re("device",I,s).then(w=>{const b={};w.result.forEach(f=>{b[f.assetId]=f.grantedPermissions}),k.forEach(f=>f.permission=b[f.id]),a({code:200,result:{data:k,pageIndex:c,pageSize:g,total:P},status:200})})})}),requestFun:async t=>{if(m.parentId){const s={...t,sorts:[{name:"createTime",order:"desc"}],terms:[...t.terms,{column:"id",termType:"dim-assets",value:{assetType:"device",targets:[{type:"org",id:m.parentId}]}}]},a=await e.getData(s,m.parentId);return{code:a.status,result:a.result,status:a.status}}else return{code:200,result:{data:[],pageIndex:0,pageSize:0,total:0},status:200}},clickAdd:t=>{q.setType(t),r.addShow=!0},clickEdit:t=>{const s=t?[t.id]:[...e._selectedRowKeys.value];if(t||e.selectedRows.length===1){const c=(t==null?void 0:t.permission)||e.selectedRows[0].permission;r.selectIds=s,r.permissList=c,r.editShow=!0;return}else if(e.selectedRows.length===0)return;const a=e.selectedRows.map(c=>c.permission),l=z(...a);r.selectIds=s,r.permissList=l,r.editShow=!0},clickUnBind:t=>{const s=t?[t.id]:[...e._selectedRowKeys.value];if(s.length<1)return E.warning("请勾选需要解绑的数据");const a=[{targetType:"org",targetId:m.parentId,assetType:"device",assetIdList:s}];le("device",a).then(()=>{E.success("操作成功"),e.refresh()})},refresh:()=>{ue(()=>{T.value.reload()})}},r=_e({selectIds:[],permissList:[],addShow:!1,editShow:!1});return e.init(),fe(()=>{m.bindBool&&e.clickAdd(),N("update:bindBool",!1)}),(t,s)=>{const a=D("pro-search"),l=D("AIcon"),c=J,g=M,P=G,k=H,I=Q,w=D("Ellipsis"),b=W,f=X,F=te,U=ee,V=Z,Y=D("FullPage");return x(),j("div",xe,[n(a,{columns:L,target:"category",onSearch:s[0]||(s[0]=i=>B.value={...i}),style:{"margin-bottom":"0"}}),n(Y,null,{default:o(()=>[n(V,{ref_key:"tableRef",ref:T,request:e.requestFun,gridColumn:2,params:p(B),rowSelection:{selectedRowKeys:e._selectedRowKeys.value,onChange:i=>e._selectedRowKeys.value=[...i],onSelectNone:e.cancelSelect},columns:L},{headerTitle:o(()=>[n(I,null,{default:o(()=>[n(h,{hasPermission:`${_}:assert`,type:"primary",onClick:s[1]||(s[1]=i=>e.clickAdd("handle"))},{default:o(()=>[n(l,{type:"PlusOutlined"}),y("资产分配 ")]),_:1},8,["hasPermission"]),n(k,{trigger:"hover"},{overlay:o(()=>[n(P,null,{default:o(()=>[n(g,null,{default:o(()=>[n(h,{hasPermission:`${_}:bind`,popConfirm:{title:"是否批量解除绑定",onConfirm:()=>e.clickUnBind()}},{default:o(()=>[n(l,{type:"DisconnectOutlined"}),y("批量解绑 ")]),_:1},8,["hasPermission","popConfirm"])]),_:1}),n(g,null,{default:o(()=>[n(h,{hasPermission:`${_}:assert`,onClick:s[2]||(s[2]=i=>e.clickEdit())},{default:o(()=>[n(l,{type:"EditOutlined"}),y("批量编辑 ")]),_:1},8,["hasPermission"])]),_:1})]),_:1})]),default:o(()=>[n(c,null,{default:o(()=>[y("批量操作")]),_:1})]),_:1})]),_:1})]),card:o(i=>{var d,$;return[n(F,ge({value:i,actions:[{key:1}]},i,{active:e._selectedRowKeys.value.includes(i.id),onClick:e.onSelectChange,status:(d=i.state)==null?void 0:d.value,statusText:($=i.state)==null?void 0:$.text,statusNames:{online:"processing",offline:"error",notActive:"warning"}}),{img:o(()=>[he(t.$slots,"img",{},()=>[u("img",{src:p(oe)("/device-product.png"),style:{cursor:"pointer"}},null,8,Ce)],!0)]),content:o(()=>[u("h3",Ie,[n(w,{style:{width:"calc(100% - 100px)"}},{default:o(()=>[y(C(i.name),1)]),_:2},1024)]),n(f,null,{default:o(()=>[n(b,{span:12},{default:o(()=>[Se,u("div",De,C(i.id),1)]),_:2},1024),n(b,{span:12},{default:o(()=>[Le,u("div",Pe,C(e.permissionList.value.length&&e.getPermissLabel(i.permission)),1)]),_:2},1024)]),_:2},1024)]),actions:o(()=>[n(h,{hasPermission:`${_}:assert`,onClick:$e=>e.clickEdit(i)},{default:o(()=>[n(l,{type:"EditOutlined"})]),_:2},1032,["hasPermission","onClick"]),n(h,{hasPermission:`${_}:bind`,popConfirm:{title:"是否解除绑定",onConfirm:()=>e.clickUnBind(i)}},{default:o(()=>[n(l,{type:"DisconnectOutlined"})]),_:2},1032,["hasPermission","popConfirm"])]),_:2},1040,["value","active","onClick","status","statusText"])]}),permission:o(i=>[y(C(e.permissionList.value.length&&e.getPermissLabel(i.permission)),1)]),state:o(i=>[n(U,{status:i.state.value,text:i.state.text,statusNames:{online:"processing",offline:"error",notActive:"warning"}},null,8,["status","text"])]),registryTime:o(i=>[u("span",null,C(p(pe)(i.registryTime).format("YYYY-MM-DD YY:mm:ss")),1)]),action:o(i=>[n(I,{size:16},{default:o(()=>[(x(!0),j(ye,null,ve(e.getActions(i,"table"),d=>(x(),R(h,{hasPermission:d.permission,type:"link",tooltip:d==null?void 0:d.tooltip,"pop-confirm":d.popConfirm,onClick:d.onClick,disabled:d==null?void 0:d.disabled},{default:o(()=>[n(l,{type:d.icon},null,8,["type"])]),_:2},1032,["hasPermission","tooltip","pop-confirm","onClick","disabled"]))),256))]),_:2},1024)]),_:3},8,["request","params","rowSelection"])]),_:3}),u("div",Re,[p(r).addShow?(x(),R(se,{key:0,visible:p(r).addShow,"onUpdate:visible":s[3]||(s[3]=i=>p(r).addShow=i),"query-columns":L,"parent-id":m.parentId,"all-permission":e.permissionList.value,"asset-type":"device",onConfirm:e.refresh},null,8,["visible","parent-id","all-permission","onConfirm"])):A("",!0),p(r).editShow?(x(),R(ie,{key:1,visible:p(r).editShow,"onUpdate:visible":s[4]||(s[4]=i=>p(r).editShow=i),ids:p(r).selectIds,"permission-list":p(r).permissList,"parent-id":m.parentId,"all-permission":e.permissionList.value,"asset-type":"device",onConfirm:e.refresh},null,8,["visible","ids","permission-list","parent-id","all-permission","onConfirm"])):A("",!0)])])}}});const It=be(Te,[["__scopeId","data-v-5f9183ae"]]);export{It as default};