(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-c77e3786"],{"461b":function(e,t,c){"use strict";var a=c("7a23");const o=e=>(Object(a["pushScopeId"])("data-v-6187096a"),e=e(),Object(a["popScopeId"])(),e),s={class:"com-el-tree"},n=o(()=>Object(a["createElementVNode"])("div",{class:"m-title"},[Object(a["createElementVNode"])("i",{class:"el-icon-warning-outline"}),Object(a["createTextVNode"])("角色列表")],-1)),d={class:"action-group"};function i(e,t,c,o,i,l){const r=Object(a["resolveComponent"])("Icon"),h=Object(a["resolveComponent"])("el-tree"),p=Object(a["resolveComponent"])("el-scrollbar");return Object(a["openBlock"])(),Object(a["createElementBlock"])("div",s,[n,Object(a["createVNode"])(p,{style:{height:"100%",width:"200px"},class:"el-role-tree"},{default:Object(a["withCtx"])(()=>[Object(a["createVNode"])(h,{data:i.tree,onNodeClick:l.nodeClick,"node-key":"id","default-expanded-keys":i.openKeys,"expand-on-click-node":!1,style:{padding:"5px 0","margin-right":"2px"}},{default:Object(a["withCtx"])(({node:e,data:t})=>[Object(a["createElementVNode"])("div",d,[Object(a["createElementVNode"])("div",{class:Object(a["normalizeClass"])(["action-text",{actived:t.id==i.selectId,"node-text":0!==t.parentId}]),style:Object(a["normalizeStyle"])({width:18*(4-t.lv)+150+"px"})},[0!==t.parentId?(Object(a["openBlock"])(),Object(a["createBlock"])(r,{key:0,type:t.id==i.selectId?"ios-paper":"ios-paper-outline"},null,8,["type"])):Object(a["createCommentVNode"])("",!0),Object(a["createTextVNode"])(" "+Object(a["toDisplayString"])(t.roleName),1)],6)])]),_:1},8,["data","onNodeClick","default-expanded-keys"])]),_:1})])}c("14d9");var l={props:{onChange:{type:Function,default:e=>{}}},data(){return{selectId:-1,checked:!1,openKeys:[],data:[],tree:[]}},created(){this.load()},methods:{load(){this.http.post("/api/role/getUserChildRoles",{},!0).then(e=>{if(!e.status)return this.$message.error(e.message);this.data.splice(0),this.data=e.data,this.data.forEach(e=>{0==e.parentId&&(e.lv=1,e.children=[],this.tree.push(e),this.getTree(e.id,e))}),this.openKeys.push(this.tree[0].id),this.selectId=this.openKeys[0]})},getTree(e,t){this.data.forEach(c=>{c.parentId==e&&(c.lv=t.lv+1,t.children||(t.children=[]),t.children.push(c),this.getTree(c.id,c))})},nodeClick(e,t){this.selectId=e.id,this.onChange(e)}}},r=(c("7702"),c("d959")),h=c.n(r);const p=h()(l,[["render",i],["__scopeId","data-v-6187096a"]]);t["a"]=p},"4cb2":function(e,t,c){},6473:function(e,t,c){"use strict";c("4cb2")},7702:function(e,t,c){"use strict";c("c003")},"9d80":function(e,t,c){"use strict";c("df6d")},a81b:function(e,t,c){"use strict";c.r(t);var a=c("7a23");const o={class:"t-tree"},s={class:"role-list"},n={class:"action-container"},d={class:"header"},i={class:"text"},l={class:"action-group"},r={class:"action-item"};function h(e,t,c,h,p,b){const u=Object(a["resolveComponent"])("role-tree"),m=Object(a["resolveComponent"])("icon"),j=Object(a["resolveComponent"])("el-button"),O=Object(a["resolveComponent"])("el-checkbox"),f=Object(a["resolveComponent"])("el-tree"),k=Object(a["resolveComponent"])("el-scrollbar");return Object(a["openBlock"])(),Object(a["createElementBlock"])("div",o,[Object(a["createElementVNode"])("div",s,[Object(a["createVNode"])(u,{onChange:b.getUserRole},null,8,["onChange"])]),Object(a["createElementVNode"])("div",n,[Object(a["createElementVNode"])("div",d,[Object(a["createElementVNode"])("span",i,[Object(a["createVNode"])(m,{type:"md-contact"}),Object(a["createTextVNode"])("角色权限分配")]),Object(a["createVNode"])(j,{type:"primary",size:"mini",icon:"el-icon-check",onClick:b.save},{default:Object(a["withCtx"])(()=>[Object(a["createTextVNode"])("保存")]),_:1},8,["onClick"])]),Object(a["createVNode"])(k,{style:{flex:"1"}},{default:Object(a["withCtx"])(()=>[Object(a["createVNode"])(f,{onCheckChange:b.leftCheckChange,onCheck:b.nodeCheck,data:p.tree,"show-checkbox":"",style:{padding:"15px"},"node-key":"id","default-expand-all":"","expand-on-click-node":!1},{default:Object(a["withCtx"])(({node:e,data:t})=>[Object(a["createElementVNode"])("div",l,[Object(a["createElementVNode"])("div",{class:"action-text",style:Object(a["normalizeStyle"])({width:18*(4-t.lv)+150+"px"})},Object(a["toDisplayString"])(t.text),5),Object(a["createElementVNode"])("div",r,[(Object(a["openBlock"])(!0),Object(a["createElementBlock"])(a["Fragment"],null,Object(a["renderList"])(t.actions,(e,t)=>(Object(a["openBlock"])(),Object(a["createBlock"])(O,{key:t,modelValue:e.checked,"onUpdate:modelValue":t=>e.checked=t,onChange:()=>{}},{default:Object(a["withCtx"])(()=>[Object(a["createTextVNode"])(Object(a["toDisplayString"])(e.text),1)]),_:2},1032,["modelValue","onUpdate:modelValue"]))),128))])])]),_:1},8,["onCheckChange","onCheck","data"])]),_:1})])])}c("14d9");var p=c("461b");var b={components:{RoleTree:p["a"]},data(){return{selectIndex:-1,checked:!1,roles:[],data:[],tree:[]}},created(){this.load()},methods:{load(){this.http.post("/api/role/getCurrentTreePermission",{},!0).then(e=>{if(!e.status)return this.$message.error(e.message);this.data.splice(0),this.roles.splice(0),this.data=e.data.tree,this.roles=e.data.roles,this.data.forEach(e=>{0==e.pid&&(e.lv=1,e.children=[],this.tree.push(e),this.getTree(e.id,e))})})},getUserRole(e,t){this.selectIndex=e.id,this.data.forEach(e=>{e.actions.forEach(e=>{e.checked=!1})}),this.http.post("/api/role/getUserTreePermission?roleId="+e.id,{},!0).then(e=>{if(!e.status)return this.$message.error(e.message);e.data.forEach(e=>{if(0==e.actions.length)return;let t=this.data.find(t=>t.id==e.id);t&&e.actions.forEach(e=>{t.actions.forEach(t=>{t.value==e.value&&(t.checked=!0)})})})})},save(){if(-1==this.selectIndex)return this.$message.error("请选择角色!");let e=[];this.data.forEach(t=>{let c=t.actions.filter(e=>e.checked);if(c.length>0){let a=c.map(e=>({text:e.text,value:e.value}));e.push({id:t.id,actions:a})}}),this.http.post("/api/role/SavePermission?roleId="+this.selectIndex,e,!0).then(e=>{this.$Message[e.status?"success":"error"](e.message)})},getTree(e,t,c){this.data.forEach(a=>{a.pid==e&&(a.lv=t.lv+1,c&&(a.rootId=e),t.children||(t.children=[]),t.children.push(a),this.getTree(a.id,a,c))})},actionChange(e){let t=e.actions.some(e=>e.checked);if(t){let t=this.data.find(t=>t.id===e.pid);t&&t.actions.length&&(t.actions[0].checked=!0)}else{let t=this.$refs.tree.getCheckedKeys().filter(t=>t!==e.id);this.$refs.tree.setCheckedKeys(t||[])}},nodeCheck(e,t){let c=this.data.find(t=>t.id===e.pid);c&&c.actions.length&&(c.actions[0].checked=e.actions.some(e=>e.checked)||t.halfCheckedNodes.some(t=>t.id===e.pid))},leftCheckChange(e,t){e.actions.forEach((e,c)=>{e.checked=t})}}},u=(c("9d80"),c("6473"),c("d959")),m=c.n(u);const j=m()(b,[["render",h],["__scopeId","data-v-5d391f70"]]);t["default"]=j},c003:function(e,t,c){},df6d:function(e,t,c){}}]);
|