2 lines
6.3 KiB
JavaScript
2 lines
6.3 KiB
JavaScript
var H=Object.defineProperty,M=Object.defineProperties;var G=Object.getOwnPropertyDescriptors;var V=Object.getOwnPropertySymbols;var J=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable;var L=(c,r,l)=>r in c?H(c,r,{enumerable:!0,configurable:!0,writable:!0,value:l}):c[r]=l,y=(c,r)=>{for(var l in r||(r={}))J.call(r,l)&&L(c,l,r[l]);if(V)for(var l of V(r))K.call(r,l)&&L(c,l,r[l]);return c},O=(c,r)=>M(c,G(r));var A=(c,r,l)=>new Promise((k,u)=>{var m=n=>{try{v(l.next(n))}catch(p){u(p)}},g=n=>{try{v(l.throw(n))}catch(p){u(p)}},v=n=>n.done?k(n.value):Promise.resolve(n.value).then(m,g);v((l=l.apply(c,r)).next())});import{c1 as $,au as Q,an as T,aL as W,aB as X,ay as N,aO as Z,c0 as ee,bE as oe,bV as te,bd as ae,ac as se}from"./bootstrap-DZnIDovD.js";import{D as w,a as le}from"./index-DO6sfdKP.js";import{m as re,b9 as P,v as ne,be as ie,ad as S,b2 as b,bL as ce,ac as de,ab as z,bJ as f,I as fe,bb as ue,u as s,j as d,ae as a,aT as pe,ai as h,bp as _,cY as be,ci as ge}from"../jse/index-index-DaIpbNAe.js";import{D as B}from"./dict-enum-DRf9W45H.js";const ve={class:"device-card-view"},Ce={class:"min-h-[400px]"},_e={class:"card-content"},me={class:"card-header"},ye={class:"device-icon"},Te=["title"],he={class:"info-section"},ke={class:"info-item"},xe=["title"],De={class:"info-item"},Ne=["onClick"],Pe={class:"info-item"},Se={class:"info-item"},Ee=["title"],we={class:"action-bar"},ze={key:0,class:"mt-6 flex justify-center"},Ie=re({name:"DeviceCardView",__name:"device-card-view",props:{products:{},deviceGroups:{},searchParams:{}},emits:["create","delete","detail","edit","model","productDetail"],setup(c,{expose:r,emit:l}){const k=c,u=l,m=P(!1),g=P([]),v=P(0),n=P({pageNo:1,pageSize:12}),p={[w.ONLINE]:{text:"在线",color:"#52c41a",bgColor:"#f6ffed",borderColor:"#b7eb8f"},[w.OFFLINE]:{text:"离线",color:"#faad14",bgColor:"#fffbe6",borderColor:"#ffe58f"},[w.INACTIVE]:{text:"未激活",color:"#ff4d4f",bgColor:"#fff1f0",borderColor:"#ffccc7"},default:{text:"未知状态",color:"#595959",bgColor:"#fafafa",borderColor:"#d9d9d9"}},I={success:{color:"#52c41a",bgColor:"#f6ffed",borderColor:"#b7eb8f"},processing:{color:"#1890ff",bgColor:"#e6f7ff",borderColor:"#91d5ff"},warning:{color:"#faad14",bgColor:"#fffbe6",borderColor:"#ffe58f"},error:{color:"#ff4d4f",bgColor:"#fff1f0",borderColor:"#ffccc7"},default:{color:"#595959",bgColor:"#fafafa",borderColor:"#d9d9d9"}};function F(i){switch(i){case"danger":return"error";case"default":case"error":case"processing":case"success":case"warning":return i;case"info":return"default";case"primary":return"processing";default:return"default"}}function R(i){const e=k.products.find(C=>C.id===i);return(e==null?void 0:e.name)||"-"}function x(){return A(this,null,function*(){m.value=!0;try{const i=yield le(y(y({},n.value),k.searchParams));g.value=i.list||[],v.value=i.total||0}finally{m.value=!1}})}function U(i,e){n.value.pageNo=i,n.value.pageSize=e,x()}function j(i){return{0:"blue",1:"cyan"}[i]||"default"}function D(i){const e=Number(i),C=Number.isFinite(e),o=C&&p[e]||p.default,t=ae(B.IOT_DEVICE_STATE,C?e:i);if(t){if(!t.colorType&&!t.cssClass)return O(y({},o),{text:t.label||o.text});const Y=F(t.colorType);if(be(t.cssClass)){const E=new ge(t.cssClass);return{text:t.label||o.text,color:E.toHexString(),bgColor:E.clone().setAlpha(.15).toRgbString(),borderColor:E.clone().lighten(30).toHexString()}}const q=I[Y]||I.default;return y({text:t.label||o.text},q)}return o}return ne(()=>{x()}),r({reload:x,search:()=>{n.value.pageNo=1,x()}}),(i,e)=>{const C=ie("loading");return b(),S("div",ve,[ce((b(),S("div",Ce,[g.value.length>0?(b(),z(s(ee),{key:0,gutter:[16,16]},{default:f(()=>[(b(!0),S(fe,null,ue(g.value,o=>(b(),z(s($),{key:o.id,xs:24,sm:12,md:8,lg:6},{default:f(()=>[d(s(Q),{"body-style":{padding:0},class:"device-card",bordered:!1},{default:f(()=>[a("div",_e,[a("div",me,[a("div",ye,[d(s(T),{icon:"mdi:chip"})]),a("div",{class:"status-badge",style:pe({color:D(o.state).color,backgroundColor:D(o.state).bgColor,borderColor:D(o.state).borderColor})},[e[3]||(e[3]=a("span",{class:"status-dot"},null,-1)),h(" "+_(D(o.state).text),1)],4)]),a("div",{class:"device-name",title:o.nickname},_(o.nickname),9,Te),a("div",he,[a("div",ke,[e[4]||(e[4]=a("span",{class:"label"},"设备标识",-1)),a("span",{class:"value code",title:o.deviceName},_(o.deviceName),9,xe)]),a("div",De,[e[5]||(e[5]=a("span",{class:"label"},"所属产品",-1)),a("a",{class:"value link",onClick:t=>{t.stopPropagation(),u("productDetail",o.productId)}},_(R(o.productId)),9,Ne)]),a("div",Pe,[e[6]||(e[6]=a("span",{class:"label"},"设备类型",-1)),d(s(W),{color:j(o.deviceType),size:"small"},{default:f(()=>[h(_(s(X)(s(B).IOT_PRODUCT_DEVICE_TYPE,o.deviceType)),1)]),_:2},1032,["color"])]),a("div",Se,[e[7]||(e[7]=a("span",{class:"label"},"Deviceid",-1)),a("span",{class:"value code",title:o.Deviceid||o.id},_(o.Deviceid||o.id),9,Ee)])]),a("div",we,[d(s(N),{type:"default",size:"small",class:"action-btn btn-edit",onClick:t=>{t.stopPropagation(),u("edit",o)}},{default:f(()=>[d(s(T),{icon:"ph:note-pencil"}),e[8]||(e[8]=h(" 编辑 ",-1))]),_:1},8,["onClick"]),d(s(N),{type:"default",size:"small",class:"action-btn btn-view",onClick:t=>{t.stopPropagation(),u("detail",o.id)}},{default:f(()=>[d(s(T),{icon:"ph:eye"}),e[9]||(e[9]=h(" 详情 ",-1))]),_:1},8,["onClick"]),d(s(N),{type:"default",size:"small",class:"action-btn btn-data",onClick:t=>{t.stopPropagation(),u("model",o.id)}},{default:f(()=>[d(s(T),{icon:"ph:database"}),e[10]||(e[10]=h(" 数据 ",-1))]),_:1},8,["onClick"]),d(s(Z),{title:"确认删除该设备吗?",onConfirm:()=>u("delete",o)},{default:f(()=>[d(s(N),{type:"default",size:"small",class:"action-btn btn-delete",onClick:e[0]||(e[0]=t=>t.stopPropagation())},{default:f(()=>[d(s(T),{icon:"ph:trash"})]),_:1})]),_:1},8,["onConfirm"])])])]),_:2},1024)]),_:2},1024))),128))]),_:1})):(b(),z(s(oe),{key:1,description:"暂无设备数据",class:"my-20"}))])),[[C,m.value]]),g.value.length>0?(b(),S("div",ze,[d(s(te),{current:n.value.pageNo,"onUpdate:current":e[1]||(e[1]=o=>n.value.pageNo=o),"page-size":n.value.pageSize,"onUpdate:pageSize":e[2]||(e[2]=o=>n.value.pageSize=o),total:v.value,"show-total":o=>`共 ${o} 条`,"show-quick-jumper":"","show-size-changer":"","page-size-options":["12","24","36","48"],onChange:U},null,8,["current","page-size","total","show-total"])])):de("",!0)])}}}),Fe=se(Ie,[["__scopeId","data-v-1b406ab6"]]);export{Fe as default};
|