import{d as ee,k as b,r as I,o as l,c as f,a as t,b as o,u as y,t as $,z as u,L as te,A as v,x as O,F as P,h as E,B as J}from"./vue.1703796278973.js";import{M as T,a0 as oe,av as ne,aw as ie,K as se,z as ae,B as re,C as le,ax as ce}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 pe}from"./index.170379627897313.js";import"./index.170379627897319.js";import"./index.170379627897327.js";import"./index.170379627897336.js";import{_ as de}from"./index.vue_vue_type_script_setup_true_name_PermissionButton_lang.1703796278973.js";import{b as ue}from"./product.17037962789737.js";import{q as me}from"./category.1703796278973.js";import{h as fe}from"./system.1703796278973.js";import{a as _e}from"./comm.1703796278973.js";import{a as ye}from"./dayjs.min.1703796278973.js";import{k as ve,_ as ge,x as ke,y as he}from"./instance.1703796278973.js";import{r as Ce}from"./device.17037962789734.js";import{_ as xe}from"./index.vue_vue_type_script_setup_true_lang.170379627897334.js";import{_ as we}from"./index.vue_vue_type_script_setup_true_lang.170379627897331.js";import{_ as be}from"./index.vue_vue_type_script_setup_true_lang.17037962789733.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.170379627897335.js";import"./_plugin-vue_export-helper.1703796278973.js";import"./index.170379627897320.js";import"./index.170379627897321.js";import"./permission.1703796278973.js";import"./index.170379627897333.js";import"./index.170379627897334.js";import"./default.1703796278973.js";import"./consts.1703796278973.js";import"./404.1703796278973.js";import"./index.170379627897337.js";import"./index.170379627897318.js";import"./SaveProduct.1703796278973.js";import"./device.17037962789735.js";import"./const.17037962789732.js";import"./index.vue_vue_type_script_setup_true_lang.1703796278973.js";import"./index.170379627897329.js";import"./index.170379627897330.js";import"./utils.1703796278973.js";import"./moment.1703796278973.js";import"./eventsource.1703796278973.js";import"./index.17037962789736.js";const Ie=["src"],Te=["onClick"],Ae=u("div",{class:"card-item-content-text"}," 设备类型 ",-1),De=u("div",{class:"card-item-content-text"}," 产品名称 ",-1),jt=ee({__name:"index",setup(Se){const j=fe(),V={sorts:[{name:"createTime",order:"desc"}],terms:[{terms:[{column:"productId$product-info",value:"accessProvider is official-edge-gateway"}],type:"and"}]},D=new Map;D.set("online","success"),D.set("offline","error"),D.set("notActive","warning");const B=b({}),g=b({}),A=b(!1),k=b(!1),S=b({}),N=e=>Array.isArray(e)&&e.length?(e||[]).map(s=>({...s,id:`classifiedId is ${s.id}`,children:N(s.children)})):[],M=[{title:"ID",dataIndex:"id",key:"id",search:{type:"string",defaultTermType:"eq"}},{title:"设备名称",dataIndex:"name",key:"name",search:{type:"string",first:!0}},{title:"产品名称",dataIndex:"productName",key:"productName",search:{type:"select",rename:"productId",options:()=>new Promise(e=>{ue({paging:!1}).then(s=>{e(s.result.map(_=>({label:_.name,value:_.id})))})})}},{title:"注册时间",dataIndex:"registryTime",key:"registryTime",scopedSlots:!0,search:{type:"date"}},{title:"状态",dataIndex:"state",key:"state",scopedSlots:!0,search:{type:"select",options:[{label:"禁用",value:"notActive"},{label:"离线",value:"offline"},{label:"在线",value:"online"}]}},{key:"productId$product-info",dataIndex:"productId$product-info",title:"产品分类",hideInTable:!0,search:{type:"treeSelect",options:()=>new Promise(e=>{me({paging:!1}).then(s=>{e(N(s.result))})})}},{dataIndex:"deviceType",title:"设备类型",valueType:"select",hideInTable:!0,search:{type:"select",options:[{label:"直连设备",value:"device"},{label:"网关子设备",value:"childrenDevice"},{label:"网关设备",value:"gateway"}]}},{title:"说明",dataIndex:"describe",key:"describe",search:{type:"string"}},{title:"操作",key:"action",fixed:"right",width:250,scopedSlots:!0}],q=(e,s)=>{var h,C,x;if(!e)return[];const _=[{key:"view",text:"查看",tooltip:{title:"查看"},icon:"EyeOutlined",onClick:()=>{R(e.id)}},{key:"update",text:"编辑",tooltip:{title:"编辑"},icon:"EditOutlined",onClick:()=>{k.value=!0,S.value=e}},{key:"action",text:((h=e.state)==null?void 0:h.value)!=="notActive"?"禁用":"启用",tooltip:{title:((C=e.state)==null?void 0:C.value)!=="notActive"?"禁用":"启用"},icon:e.state.value!=="notActive"?"StopOutlined":"CheckCircleOutlined",popConfirm:{title:`确认${e.state.value!=="notActive"?"禁用":"启用"}?`,onConfirm:async()=>{var r;let p;e.state.value!=="notActive"?p=await ge(e.id):p=await ke(e.id),p&&p.status===200?(T.success("操作成功!"),(r=g.value)==null||r.reload()):T.error("操作失败!")}}}],c=[{key:"setting",text:"远程控制",tooltip:{title:"远程控制"},icon:"ControlOutlined",onClick:()=>{j.jumpPage("edge/Device/Remote",{id:e.id})}},{key:"password",text:"重置密码",tooltip:{title:"重置密码"},icon:"RedoOutlined",popConfirm:{title:"确认重置密码为P@ssw0rd?",onConfirm:async()=>{Ce(e.id).then(p=>{var r;p.status===200&&(T.success("操作成功!"),(r=g.value)==null||r.reload())})}}}],m={key:"delete",text:"删除",disabled:((x=e.state)==null?void 0:x.value)!=="notActive",tooltip:{title:e.state.value!=="notActive"?"已启用的设备不能删除":"删除"},popConfirm:{title:"确认删除?",onConfirm:async()=>{var r;(await he(e.id)).status===200?(T.success("操作成功!"),(r=g.value)==null||r.reload()):T.error("操作失败!")}},icon:"DeleteOutlined"};return s==="card"?[..._.filter(r=>r.key!=="view"),{key:"others",text:"其他",icon:"EllipsisOutlined",children:[...c]},m]:[..._,...c,m]},F=e=>{B.value=e},R=e=>{j.jumpPage("device/Instance/Detail",{id:e})},Y=()=>{k.value=!0,S.value={}},z=()=>{var e;k.value=!1,(e=g.value)==null||e.reload()},L=()=>{var e;A.value=!1,(e=g.value)==null||e.reload()};return(e,s)=>{const _=I("pro-search"),c=I("AIcon"),m=de,h=oe,C=I("Ellipsis"),x=ne,p=ie,r=se,H=ae,K=re,U=le,G=pe,Q=ce,W=I("FullPage"),X=I("page-container");return l(),f(X,null,{default:t(()=>[o(_,{columns:M,target:"edge-device",onSearch:F}),o(W,null,{default:t(()=>[o(Q,{ref_key:"edgeDeviceRef",ref:g,columns:M,request:y(ve),defaultParams:V,params:y(B),gridColumn:3},{headerTitle:t(()=>[o(h,null,{default:t(()=>[o(m,{type:"primary",onClick:Y,hasPermission:"edge/Device:add"},{icon:t(()=>[o(c,{type:"PlusOutlined"})]),default:t(()=>[$(" 新增 ")]),_:1}),o(m,{onClick:s[0]||(s[0]=n=>A.value=!0),hasPermission:"edge/Device:import"},{icon:t(()=>[o(c,{type:"ImportOutlined"})]),default:t(()=>[$(" 导入 ")]),_:1})]),_:1})]),card:t(n=>{var a,w;return[o(G,{value:n,actions:q(n,"card"),status:(a=n.state)==null?void 0:a.value,statusText:(w=n.state)==null?void 0:w.text,statusNames:{online:"processing",offline:"error",notActive:"warning"}},{img:t(()=>[u("img",{width:80,height:80,src:(n==null?void 0:n.photoUrl)||y(_e)("/device-gateway.png")},null,8,Ie)]),content:t(()=>[o(C,{style:{width:"calc(100% - 100px)"}},{default:t(()=>[u("span",{style:{"font-size":"16px","font-weight":"600"},onClick:te(i=>R(n.id),["stop"])},v(n.name),9,Te)]),_:2},1024),o(p,{style:{"margin-top":"18px"}},{default:t(()=>[o(x,{span:12},{default:t(()=>{var i;return[Ae,u("div",null,v((i=n.deviceType)==null?void 0:i.text),1)]}),_:2},1024),o(x,{span:12},{default:t(()=>[De,o(C,{style:{width:"100%"}},{default:t(()=>[$(v(n.productName),1)]),_:2},1024)]),_:2},1024)]),_:2},1024)]),actions:t(i=>[i.key==="others"?(l(),f(U,{key:0,placement:"bottomRight"},{overlay:t(()=>[o(K,null,{default:t(()=>[(l(!0),O(P,null,E(i.children,(d,Z)=>(l(),f(H,{key:Z},{default:t(()=>[o(m,{disabled:d.disabled,popConfirm:d.popConfirm,tooltip:{...d.tooltip},onClick:d.onClick,hasPermission:"edge/Device:"+d.key,type:"link"},{default:t(()=>[o(c,{type:d.icon},null,8,["type"]),u("span",null,v(d==null?void 0:d.text),1)]),_:2},1032,["disabled","popConfirm","tooltip","onClick","hasPermission"])]),_:2},1024))),128))]),_:2},1024)]),default:t(()=>[o(r,null,{default:t(()=>[o(c,{type:i.icon},null,8,["type"]),u("span",null,v(i.text),1)]),_:2},1024)]),_:2},1024)):(l(),f(m,{key:1,disabled:i.disabled,popConfirm:i.popConfirm,tooltip:{...i.tooltip},onClick:i.onClick,hasPermission:"edge/Device:"+i.key},{default:t(()=>[i.key==="delete"?(l(),f(c,{key:0,type:"DeleteOutlined"})):(l(),O(P,{key:1},[o(c,{type:i.icon},null,8,["type"]),u("span",null,v(i==null?void 0:i.text),1)],64))]),_:2},1032,["disabled","popConfirm","tooltip","onClick","hasPermission"]))]),_:2},1032,["value","actions","status","statusText"])]}),state:t(n=>{var a,w;return[o(be,{status:(a=n.state)==null?void 0:a.value,text:(w=n.state)==null?void 0:w.text,statusNames:{online:"processing",offline:"error",notActive:"warning"}},null,8,["status","text"])]}),registryTime:t(n=>[u("span",null,v(y(ye)(n.registryTime).format("YYYY-MM-DD HH:mm:ss")),1)]),action:t(n=>[o(h,null,{default:t(()=>[(l(!0),O(P,null,E(q(n,"table"),a=>(l(),f(m,{key:a.key,disabled:a.disabled,popConfirm:a.popConfirm,tooltip:{...a.tooltip},onClick:a.onClick,type:"link",style:{padding:"0 5px"},danger:a.key==="delete",hasPermission:a.key==="view"?!0:"edge/Device:"+a.key},{icon:t(()=>[o(c,{type:a.icon},null,8,["type"])]),_:2},1032,["disabled","popConfirm","tooltip","onClick","danger","hasPermission"]))),128))]),_:2},1024)]),_:1},8,["request","params"])]),_:1}),y(k)?(l(),f(xe,{key:0,data:y(S),onClose:s[1]||(s[1]=n=>k.value=!1),onSave:z},null,8,["data"])):J("",!0),y(A)?(l(),f(we,{key:1,onSave:L,onClose:s[2]||(s[2]=n=>A.value=!1),type:"official-edge-gateway"})):J("",!0)]),_:1})}}});export{jt as default};