1 |
- import{l as he}from"./index-74f02f97.js";import{c as C,h as Ce,m as J,A as B}from"./index-07b89396.js";import{u as Z}from"./base-2fb28875.js";/* empty css */import{_ as Se}from"./index-362ef373.js";import{_ as Q}from"./index-dcfc73b9.js";import{u as Te}from"./vue-router-e4a270fb.js";import"./index-0f509f27.js";import{_ as Ie}from"./_plugin-vue_export-helper-c27b6911.js";import{a as c,i as M,c as Fe,U as d,V as r,W as v,j as n,X as t,G as f,H as N,u as e,F as I,a2 as z,a3 as x,a7 as g,a4 as h,$ as q,a1 as V,n as Y,a5 as Le,a6 as $e,p as G,o as Ae}from"./vue-b109b72f.js";import{P as De}from"./PlusCircleOutlined-489e7809.js";/* empty css */import"./index.vue_vue_type_style_index_0_scoped_3d60c88d_lang-b27b58e3.js";import"./index-2d51dea4.js";import"./ext-99480133.js";const Re=F=>(Le("data-v-9a42cfd7"),F=F(),$e(),F),Ue={style:{display:"flex"}},Ee={class:"warning-set"},Ne={class:"warning-set__left"},ze={key:0},Be={key:0},qe={key:1},Ve={key:1},Pe={key:2},Ke={style:{display:"flex"}},Oe={style:{display:"flex"}},Me={key:3},Ge=Re(()=>h("div",{class:"warning-set__right"},null,-1)),He={__name:"Add",props:["disabled"],emits:["onSuccess"],setup(F,{emit:H}){Te(),Z();let u=c(!1),l=c({w_eventid:0,ownertable:"w_product",ownerid:"",name:void 0,eventname:"",buildtype:"",remarks:"",rules:[]}),S=c({id:20230815153002,content:{type:0,pageNumber:1,pageSize:20,where:{condition:""}}}),L=c({id:20230613091602,content:{ownertable:"w_product",ownerid:"",pageNumber:1,pageSize:20,where:{condition:"",datatype:"",rwtype:""}}});const $=c(0);let P=[{title:"属性名称",dataIndex:"name"},{title:"判断符",dataIndex:"symbol"},{title:"值",dataIndex:"value"}],R=c(),k=c(),_=c(),T=c(!0),m=c(!1),U=M("buildTypeList"),j=M("eventlevelList"),ee=M("eventsymbolList"),ae=Fe(()=>s=>{let a;switch(s){case"紧急":a={background:"#FFE3E6",color:"#EA162D",border:"1px solid #FF8B97"};break;case"重要":a={background:"#FFE4D3",color:"#E55800",border:"1px solid #FFA972"};break;case"一般":a={background:"#E8FFE2",color:"#27AD00",border:"1px solid #87D96F"};break;case"提醒":a={background:"#e6f7ff",color:"#096dd9",border:"1px solid #91d5ff"};break;case"其它":a={background:"#F5F5F5",color:"#777777",border:"1px solid #CCCCCC"};break}return a}),te=s=>{if(!l.value.ownerid)return J.warning("请选择产品或者设备");l.value.rules.push({w_event_ruleid:0,name:s.remarks,level:s.value,key:l.value.rules.length*Math.random(),rulemxs:[{w_event_rulemxid:0,w_dataparamid:"",symbol:"",value:"",name:""}]}),$.value=l.value.rules[0].key,console.log(l.value.rules)},le=(s,a)=>{l.value.rules.splice(l.value.rules.findIndex(w=>w.key==s),1)},oe=()=>{T.value=!1,setTimeout(()=>{T.value=!0,Y(()=>{console.log(_.value),_.value.modeVisible=!0})})},K="",ne=(s,a)=>{K=a,Y(()=>{s[0].modeVisible=!0,s[0].list&&s[0].list.listData()})},se=s=>{l.value.ownerid=s[s.length-1].id,l.value.name=s[s.length-1].name,L.value.content.ownertable=l.value.ownertable,L.value.content.ownerid=l.value.ownerid,_.value.modeVisible=!1},re=s=>{K.name=s[s.length-1].paramname,K.w_dataparamid=s[s.length-1].w_dataparamid,_.value.modeVisible=!1},ue=()=>{try{l.value.rules.forEach(s=>{s.rulemxs.forEach(a=>{let w=s.rulemxs.filter(i=>i!=a),A=w.some(i=>i.symbol==a.symbol&&i.w_dataparamid==a.w_dataparamid),y;if(a.symbol=="="?y=w.some(i=>i.w_dataparamid==a.w_dataparamid&&i.symbol):a.symbol==">"?y=w.some(i=>(console.log(i.value,a.value),i.w_dataparamid==a.w_dataparamid&&i.symbol=="<"&&i.value<a.value)):a.symbol=="<"&&(y=w.some(i=>i.w_dataparamid==a.w_dataparamid&&i.symbol==">"&&i.value>a.value)),a.symbol!=""&&A||y)throw!0})})}catch{return!0}},ie=async()=>{if(await R.value.validateFields(),Array.isArray(k.value))for(var s of k.value)console.log(k.value),await s.validateFields();if(ue())return J.warning("存在相同条件或者互斥条件");m.value=!0;let a=await B.requested({id:20230614143502,content:l.value});C.message(a,"操作成功",()=>{u.value=!1,H("onSuccess"),m.value=!1,l.value={w_eventid:0,ownertable:"w_product",ownerid:"",name:void 0,eventname:"",buildtype:"",remarks:"",rules:[]}})};return(s,a)=>{const w=d("a-button"),A=d("a-input"),y=d("a-form-item"),i=d("a-col"),E=d("a-select-option"),O=d("a-select"),de=d("a-textarea"),me=d("a-row"),pe=d("a-divider"),ce=d("a-menu-item"),ve=d("a-menu"),_e=d("a-dropdown"),W=d("a-form"),ye=d("a-table"),be=d("a-tab-pane"),fe=d("a-tabs"),we=d("a-space"),ge=d("a-drawer");return r(),v(I,null,[n(w,{type:"primary",disabled:F.disabled,onClick:a[0]||(a[0]=o=>N(u)?u.value=!0:u=!0),style:{"margin-right":"10px"}},{default:t(()=>[f("新建")]),_:1},8,["disabled"]),n(ge,{visible:e(u),"onUpdate:visible":a[10]||(a[10]=o=>N(u)?u.value=o:u=o),class:"custom-class",title:"新增告警配置",placement:"right",width:"1000px",closable:!1,onClose:a[11]||(a[11]=o=>N(u)?u.value=!1:u=!1),bodyStyle:{padding:"0 !important"}},{extra:t(()=>[n(we,null,{default:t(()=>[n(w,{onClick:a[9]||(a[9]=o=>N(u)?u.value=!1:u=!1)},{default:t(()=>[f("关闭")]),_:1}),n(w,{type:"primary",onClick:e(ie),loading:e(m)},{default:t(()=>[f("保存")]),_:1},8,["onClick","loading"])]),_:1})]),default:t(()=>[n(W,{ref_key:"formRef",ref:R,model:e(l),size:"small",layout:"vertical",mode:"multiple"},{default:t(()=>[n(me,{gutter:16,style:{padding:"24px 24px 0 24px"}},{default:t(()=>[n(i,{span:12},{default:t(()=>[n(y,{label:"告警主题",name:"eventname",rules:[{required:!0,message:"请输入告警主题"}]},{default:t(()=>[n(A,{value:e(l).eventname,"onUpdate:value":a[1]||(a[1]=o=>e(l).eventname=o),placeholder:"请输入告警主题"},null,8,["value"])]),_:1})]),_:1}),n(i,{span:12},{default:t(()=>[n(y,{label:"告警类型",name:"buildtype",rules:[{required:!0,message:"请选择告警类型"}]},{default:t(()=>[n(O,{value:e(l).buildtype,"onUpdate:value":a[2]||(a[2]=o=>e(l).buildtype=o),placeholder:"请选择告警类型",style:{width:"100%"}},{default:t(()=>[(r(!0),v(I,null,z(e(U),o=>(r(),x(E,{key:o.value,value:o.value},{default:t(()=>[f(g(o.remarks),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1})]),_:1}),n(i,{span:12},{default:t(()=>[n(y,{label:"告警对象",name:"name",rules:[{required:!0,message:"请选择告警对象",trigger:"onChange"}]},{default:t(()=>[h("div",Ue,[n(O,{value:e(l).ownertable,"onUpdate:value":a[3]||(a[3]=o=>e(l).ownertable=o),placeholder:"请选择",style:{width:"100%","margin-right":"10px"},onChange:a[4]||(a[4]=o=>{o=="w_product"?e(S).content.type=0:e(S).content.type=1,e(l).ownerid="",e(l).name="",e(l).rules=[]})},{default:t(()=>[n(E,{value:"w_product"},{default:t(()=>[f("产品")]),_:1}),n(E,{value:"w_device"},{default:t(()=>[f("设备")]),_:1})]),_:1},8,["value"]),e(T)?(r(),x(Q,{key:0,ref_key:"selectTable",ref:_,onSelectRowData:e(se),rowKey:"id",param:e(S),filterMultiple:!0,value:e(l).ownerid,"onUpdate:value":a[6]||(a[6]=o=>e(l).ownerid=o),columns:e(C).TBLayout(`${e(l).ownertable=="w_product"?"productListTable":"equipmentTable"}`).splice(0,e(C).TBLayout(`${e(l).ownertable=="w_product"?"productListTable":"equipmentTable"}`).length-1),title:"请选择"},{slot1:t(()=>[n(A,{value:e(l).name,"onUpdate:value":a[5]||(a[5]=o=>e(l).name=o),placeholder:"请选择",onClick:e(oe)},null,8,["value","onClick"])]),_:1},8,["onSelectRowData","param","value","columns"])):q("",!0)])]),_:1})]),_:1}),n(i,{span:12},{default:t(()=>[n(y,{label:"描述",name:"remarks"},{default:t(()=>[n(de,{value:e(l).remarks,"onUpdate:value":a[7]||(a[7]=o=>e(l).remarks=o),placeholder:"请输入描述"},null,8,["value"])]),_:1})]),_:1})]),_:1}),n(pe,null,{default:t(()=>[f("告警规则")]),_:1}),h("div",Ee,[h("div",Ne,[n(_e,{placement:"bottom",onChange:s.click},{overlay:t(()=>[n(ve,null,{default:t(()=>[(r(!0),v(I,null,z(e(j),o=>(r(),x(ce,{key:o.value,onClick:ke=>e(te)(o)},{default:t(()=>[f(g(o.remarks),1)]),_:2},1032,["onClick"]))),128))]),_:1})]),default:t(()=>[n(w,{type:"primary"},{default:t(()=>[f("+ 新建规则")]),_:1})]),_:1},8,["onChange"]),e(l).rules.length&&e(l).ownerid?(r(),x(fe,{key:0,activeKey:$.value,"onUpdate:activeKey":a[8]||(a[8]=o=>$.value=o),"tab-position":"left",type:"editable-card",onEdit:e(le)},{default:t(()=>[(r(!0),v(I,null,z(e(l).rules,(o,ke)=>(r(),x(be,{key:o.key,forceRender:!0},{tab:t(()=>[h("span",{style:V([{padding:"2px 5px","border-radius":"3px"},e(ae)(o.name)])},g(o.name),5)]),default:t(()=>[n(ye,{"row-class-name":(D,b)=>b%2===1?"table-striped":null,dataSource:o.rulemxs,columns:e(P),pagination:!1,bordered:"",scroll:{x:"max-content"}},{bodyCell:t(({column:D,record:b,index:X})=>[n(W,{ref_for:!0,ref_key:"formRef1",ref:k,model:b,size:"small",layout:"vertical",mode:"multiple"},{default:t(()=>[D.dataIndex=="name"?(r(),v("div",ze,[n(Q,{ref_for:!0,ref:"selectAttrite"+X,onSelectRowData:e(re),rowKey:"w_dataparamid",param:e(L),filterMultiple:!0,columns:e(C).TBLayout("dataparamTable").splice(0,e(C).TBLayout("dataparamTable").length-1),title:"请选择",custom:!0},{custom:t(({data:p})=>[p.column.dataIndex=="rwtype"?(r(),v("div",Be,g(p.record.rwtype==0?"读":p.record.rwtype==1?"写":"上报"),1)):(r(),v("div",qe,g(p.record[p.column.dataIndex]),1))]),slot1:t(()=>[n(y,{name:"name",rules:[{required:!0,message:"请选择属性"}]},{default:t(()=>[n(A,{value:b.name,"onUpdate:value":p=>b.name=p,placeholder:"请选择",onClick:p=>e(ne)(s.$refs["selectAttrite"+X],b)},null,8,["value","onUpdate:value","onClick"])]),_:2},1024)]),_:2},1032,["onSelectRowData","param","columns"])])):D.dataIndex=="symbol"?(r(),v("div",Ve,[n(y,{name:"symbol",rules:[{required:!0,message:"请选择判断符"},{validator:s.checkData,trigger:"blur"}]},{default:t(()=>[n(O,{value:b.symbol,"onUpdate:value":p=>b.symbol=p,placeholder:"请选择判断符",size:"small",style:{width:"100%"}},{default:t(()=>[(r(!0),v(I,null,z(e(ee),(p,xe)=>(r(),x(E,{value:p.value,key:xe},{default:t(()=>[f(g(p.value),1)]),_:2},1032,["value"]))),128))]),_:2},1032,["value","onUpdate:value"])]),_:2},1032,["rules"])])):D.dataIndex=="value"?(r(),v("div",Pe,[h("div",Ke,[n(y,{name:"value",rules:[{required:!0,message:"输入值"}]},{default:t(()=>[n(A,{size:"small",value:b.value,"onUpdate:value":p=>b.value=p},null,8,["value","onUpdate:value"])]),_:2},1024),h("div",Oe,[n(e(De),{style:V([{fontSize:"25px",marginRight:"10px"},{cursor:"pointer"}]),onClick:p=>o.rulemxs.push({w_event_rulemxid:0,w_dataparamid:"",symbol:"",value:""})},null,8,["onClick"]),o.rulemxs.length>1?(r(),x(e(Ce),{key:0,style:V([{fontSize:"25px"},{cursor:"pointer"}]),onClick:p=>o.rulemxs.splice(o.rulemxs.indexOf(b),1)},null,8,["onClick"])):q("",!0)])])])):(r(),v("div",Me,g(b[D.dataIndex]),1))]),_:2},1032,["model"])]),_:2},1032,["row-class-name","dataSource","columns"])]),_:2},1024))),128))]),_:1},8,["activeKey","onEdit"])):q("",!0)]),Ge])]),_:1},8,["model"])]),_:1},8,["visible"])],64)}}},We=Ie(He,[["__scopeId","data-v-9a42cfd7"]]),ia={__name:"index",props:{},emits:[],setup(F,{emit:H}){Z();let u=c([]),l=c([]),S=c([]),L=c(),$=c([{label:"搜索",key:"condition",type:"input"},{label:"告警类型",key:"buildtype",type:"select",dataSource:u.value},{label:"状态",key:"isused",type:"select",dataSource:[{value:0,remarks:"停用"},{value:1,remarks:"启用"}]}]);G("buildTypeList",u),G("eventlevelList",l),G("eventsymbolList",S);let P=c({id:20230614143602,content:{pageNumber:1,pageSize:20,where:{condition:"",buildtype:"",objname:"",isused:""}}}),R=async()=>{const k=await B.optionstype("eventbuildtype");u.value=k.data,$.value[1].dataSource=u.value,console.log("触发类型",u.value);const _=await B.optionstype("eventlevel");l.value=_.data,console.log("警告等级",l.value);const T=await B.optionstype("eventsymbol");S.value=T.data,console.log("判断符",S.value)};return Ae(async()=>{R(),L.value.tableData()}),(k,_)=>{const T=d("a-tag");return r(),x(he,{ref_key:"list",ref:L,param:e(P),tableName:"warningSetTable",keyRouteName:"eventname",searchType:e($),detailPage:{name:"warningsetDetail",idname:"w_eventid"}},{operation:t(()=>[n(We,{onOnSuccess:_[0]||(_[0]=m=>k.$refs.list.tableData()),disabled:!e(C).hasPermission("insert")},null,8,["disabled"])]),tb_cell:t(({data:m})=>[m.column.dataIndex==="operation"?(r(),x(Se,{key:0,btnName:m.record.isused?"禁用":"启用",idName:"20230817100102",keyName:"w_eventid",id:m.record.w_eventid,type:"link",size:"middle",message:m.record.isused?"确定禁用当前告警配置吗?":"确定启用当前告警配置吗?",onOnSuccess:_[1]||(_[1]=U=>k.$refs.list.tableData()),disabled:!e(C).hasPermission("use")},null,8,["btnName","id","message","disabled"])):m.column.dataIndex==="isused"?(r(),v("span",{key:1,style:V({color:e(C).statusAndColor(m.record.isused?"启用":"停用")})},g(m.record.isused?"启用":"停用"),5)):m.column.dataIndex==="buildtype"&&e(u).length?(r(),v(I,{key:2},[f(g(e(u).filter(U=>U.value==m.record.buildtype)[0].remarks),1)],64)):m.column.dataIndex==="objname"?(r(),v(I,{key:3},[n(T,{color:m.record.ownertable=="w_device"?"cyan":"blue",style:{"margin-right":"10px"}},{default:t(()=>[f(g(m.record.ownertable=="w_device"?"设备":"产品"),1)]),_:2},1032,["color"]),h("span",null,g(m.record.objname),1)],64)):q("",!0)]),_:1},8,["param","searchType"])}}};export{ia as default};
|