"use strict";(self["webpackChunkscui"]=self["webpackChunkscui"]||[]).push([[797],{3350:function(e,i,c){c.r(i),c.d(i,{default:function(){return b}});var l=c(66252),s=c(3577);const d=e=>((0,l.dD)("data-v-52c8c373"),e=e(),(0,l.Cn)(),e),n={class:"left-panel"},h={class:"roleName"},t=(0,l.Uk)("权限信息 "),a={class:"right-panel"},r=(0,l.Uk)("保 存"),o={class:"treeTable"},k={class:"tableBody"},u={class:"trOne"},m=["onClick"],g={class:"openShow"},f={key:0,class:"trLine lineName"},w=d((()=>(0,l._)("div",{class:"deviceName device"},"设备权限",-1))),C=d((()=>(0,l._)("div",{class:"deviceName devicePermissions"},"设备操作权限",-1))),p=[w,C],v={key:0,class:"deviceList"},_={class:"nextTd"},y={class:"tdName deviceLeft"},z={class:"tdName authority"},D={class:"childTr"};function E(e,i,c,d,w,C){const E=(0,l.up)("el-button"),V=(0,l.up)("el-header"),U=(0,l.up)("el-checkbox"),P=(0,l.up)("el-icon-ArrowDown"),b=(0,l.up)("el-icon-ArrowRight"),W=(0,l.up)("el-scrollbar"),L=(0,l.up)("el-main"),N=(0,l.up)("el-container");return(0,l.wg)(),(0,l.j4)(N,{class:"mainBox"},{default:(0,l.w5)((()=>[(0,l.Wm)(V,null,{default:(0,l.w5)((()=>[(0,l._)("div",n,[(0,l._)("span",h,(0,s.toDisplayString)(w.name),1),t]),(0,l._)("div",a,[(0,l.Wm)(E,{size:w.size,type:"primary",onClick:C.savePermission},{default:(0,l.w5)((()=>[r])),_:1},8,["size","onClick"])])])),_:1}),(0,l.Wm)(L,{class:"nopadding"},{default:(0,l.w5)((()=>[(0,l.Wm)(W,null,{default:(0,l.w5)((()=>[(0,l._)("div",o,[(0,l._)("div",k,[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(w.list,((e,i)=>((0,l.wg)(),(0,l.iD)("div",{class:(0,s.normalizeClass)(e.show?"tr trBorder":"tr"),key:i},[(0,l._)("div",u,[(0,l._)("div",{class:"trLine line",onClick:i=>e.show=!e.show},[(0,l.Wm)(U,{indeterminate:e.isCheck,onChange:i=>C.menuCheckChange(e),modelValue:e.checked,"onUpdate:modelValue":i=>e.checked=i,size:w.size},{default:(0,l.w5)((()=>[(0,l.Uk)((0,s.toDisplayString)(e.name),1)])),_:2},1032,["indeterminate","onChange","modelValue","onUpdate:modelValue","size"]),(0,l._)("div",g,[e.show?((0,l.wg)(),(0,l.j4)(P,{key:0})):((0,l.wg)(),(0,l.j4)(b,{key:1}))])],8,m),e.show?((0,l.wg)(),(0,l.iD)("div",f,p)):(0,l.kq)("",!0)]),e.show?((0,l.wg)(),(0,l.iD)("div",v,[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(e.children,((i,c)=>((0,l.wg)(),(0,l.iD)("div",{class:"td tdChild",key:c},[(0,l._)("div",_,[(0,l._)("div",y,[(0,l.Wm)(U,{onChange:c=>C.moduleCheckChange(e,i),indeterminate:i.isCheck,modelValue:i.checked,"onUpdate:modelValue":e=>i.checked=e,size:w.size},{default:(0,l.w5)((()=>[(0,l.Uk)((0,s.toDisplayString)(i.name),1)])),_:2},1032,["onChange","indeterminate","modelValue","onUpdate:modelValue","size"])]),(0,l._)("div",z,[(0,l._)("div",D,[((0,l.wg)(!0),(0,l.iD)(l.HY,null,(0,l.Ko)(i.children,((c,d)=>((0,l.wg)(),(0,l.iD)("div",{class:"preBox",key:d},[(0,l.Wm)(U,{onChange:l=>C.checkChange(e,i,c),modelValue:c.checked,"onUpdate:modelValue":e=>c.checked=e,size:w.size},{default:(0,l.w5)((()=>[(0,l.Uk)((0,s.toDisplayString)(c.name),1)])),_:2},1032,["onChange","modelValue","onUpdate:modelValue","size"])])))),128))])])])])))),128))])):(0,l.kq)("",!0)],2)))),128))])])])),_:1})])),_:1})])),_:1})}c(57658);var V={name:"wincc-permission.vue",data(){return{size:"default",id:this.$route.query.id,name:this.$route.query.name,list:[]}},mounted(){this.getPermission()},methods:{async getPermission(){let e={user_id:this.id};const i=await this.$API.system.wincc.permission.post(e);i.data.forEach(((e,i)=>{if(e.show=!1,0==i&&(e.show=!0),e.children){e.children.forEach((e=>{if(e.children){let i=e.children.filter((e=>e.checked)).length,c=e.children.length;e.isCheck=i>0&&i!=c,c>0&&(e.checked=i>0&&i==c)}}));let i=e.children.filter((e=>e.checked)).length,c=e.children.filter((e=>e.isCheck)).length,l=e.children.length;e.isCheck=(i>0||c>0)&&i!=l,e.checked=i>0&&i==l}})),this.list=i.data},menuCheckChange(e){this.list.forEach((i=>{e.id==i.id&&(i.children&&i.children.forEach((i=>{i.checked=e.checked,i.children&&i.children.forEach((i=>{i.checked=e.checked})),i.checked&&(i.isCheck=!1)})),i.checked&&(i.isCheck=!1))}))},moduleCheckChange(e,i){this.list.forEach((c=>{if(e.id==c.id&&c.children){c.children.forEach((e=>{e.id==i.id&&(e.children&&e.children.forEach((e=>{e.checked=i.checked})),i.checked&&(i.isCheck=!1))}));let e=c.children.filter((e=>e.checked)).length,l=c.children.filter((e=>e.isCheck)).length,s=c.children.length;c.checked=e>0&&e==s,c.isCheck=(e>0||l>0)&&s!=e}}))},checkChange(e,i){this.list.forEach((c=>{if(c.id==e.id){c.children&&c.children.forEach((e=>{if(i.id==e.id){let i=e.children.filter((e=>e.checked)).length,c=e.children.length;e.checked=i>0&&i==c,e.isCheck=i>0&&i!=c}}));let e=c.children.filter((e=>e.checked)).length,l=c.children.filter((e=>e.isCheck)).length,s=c.children.length;c.checked=e>0&&e==s,c.isCheck=(e>0||l>0)&&s!=e}}))},async savePermission(){let e={user_id:this.id,permission_code:this.setList()};const i=await this.$API.system.wincc.addPermission.post(e);200==i.code&&this.$message.success("授权成功")},setList(){let e=[];return this.list.forEach((i=>{i.children&&i.children.forEach((i=>{i.children&&i.children.forEach((i=>{i.checked&&e.push(i.code)}))}))})),e}}},U=c(83744);const P=(0,U.Z)(V,[["render",E],["__scopeId","data-v-52c8c373"]]);var b=P}}]);