ludc
2024-12-30 9c0f8e3576aecba48aa00bd4347e6dae58ceb2ae
1
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0cedc2"],{"60f8":function(e,t,a){"use strict";a.r(t);a("6762"),a("2fdb");var n=function(){var e=this,t=e._self._c;return t("basic-container",[t("avue-crud",{ref:"crud",attrs:{option:e.option,"table-loading":e.loading,data:e.data,permission:e.permissionList,"before-open":e.beforeOpen},on:{"row-del":e.rowDel,"row-update":e.rowUpdate,"row-save":e.rowSave,"search-change":e.searchChange,"search-reset":e.searchReset,"selection-change":e.selectionChange,"current-change":e.currentChange,"size-change":e.sizeChange,"refresh-change":e.refreshChange,"on-load":e.onLoad},model:{value:e.form,callback:function(t){e.form=t},expression:"form"}},[t("template",{slot:"menuLeft"},[e.permission.role_delete?t("el-button",{attrs:{type:"danger",size:"small",icon:"el-icon-delete",plain:""},on:{click:e.handleDelete}},[e._v("删 除\n      ")]):e._e(),e.userInfo.role_name.includes("admin")?t("el-button",{attrs:{size:"small",icon:"el-icon-setting",plain:""},on:{click:e.handleRole}},[e._v("权限设置\n      ")]):e._e()],1)],2),t("el-dialog",{attrs:{title:"角色权限配置","append-to-body":"",visible:e.box,width:"345px"},on:{"update:visible":function(t){e.box=t}}},[t("el-tabs",{attrs:{type:"border-card"}},[t("el-tab-pane",{attrs:{label:"菜单权限"}},[t("el-tree",{ref:"treeMenu",attrs:{data:e.menuGrantList,"show-checkbox":"","node-key":"id","default-checked-keys":e.menuTreeObj,props:e.props}})],1),t("el-tab-pane",{attrs:{label:"数据权限"}},[t("el-tree",{ref:"treeDataScope",attrs:{data:e.dataScopeGrantList,"show-checkbox":"","node-key":"id","default-checked-keys":e.dataScopeTreeObj,props:e.props}})],1),t("el-tab-pane",{attrs:{label:"接口权限"}},[t("el-tree",{ref:"treeApiScope",attrs:{data:e.apiScopeGrantList,"show-checkbox":"","node-key":"id","default-checked-keys":e.apiScopeTreeObj,props:e.props}})],1)],1),t("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[t("el-button",{on:{click:function(t){e.box=!1}}},[e._v("取 消")]),t("el-button",{attrs:{type:"primary"},on:{click:e.submit}},[e._v("确 定")])],1)],1)],1)},i=[],r=(a("8e6e"),a("456d"),a("ac6a"),a("ade3")),s=a("3528"),o=a("5880"),c=a("1ca4");function l(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function d(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?l(Object(a),!0).forEach((function(t){Object(r["a"])(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):l(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var p={data:function(){return{form:{},box:!1,props:{label:"title",value:"key"},menuGrantList:[],dataScopeGrantList:[],apiScopeGrantList:[],apiGrantList:[],menuTreeObj:[],dataScopeTreeObj:[],apiScopeTreeObj:[],selectionList:[],query:{},loading:!0,page:{pageSize:10,currentPage:1,total:0},option:{tip:!1,simplePage:!0,searchShow:!0,searchMenuSpan:6,tree:!0,border:!0,index:!0,selection:!0,viewBtn:!0,dialogWidth:900,dialogClickModal:!1,column:[{label:"角色名称",prop:"roleName",search:!0,span:24,rules:[{required:!0,message:"请输入角色名称",trigger:"blur"}]},{label:"所属租户",prop:"tenantId",type:"tree",dicUrl:"/api/blade-system/tenant/select",addDisplay:!1,editDisplay:!1,viewDisplay:c["a"].tenantMode,span:24,props:{label:"tenantName",value:"tenantId"},hide:!c["a"].tenantMode,search:c["a"].tenantMode,rules:[{required:!0,message:"请输入所属租户",trigger:"click"}]},{label:"角色别名",prop:"roleAlias",search:!0,span:24,rules:[{required:!0,message:"请输入角色别名",trigger:"blur"}]},{label:"上级角色",prop:"parentId",dicData:[],type:"tree",hide:!0,span:24,props:{label:"title"},rules:[{required:!1,message:"请选择上级角色",trigger:"click"}]},{label:"角色排序",prop:"sort",type:"number",span:24,rules:[{required:!0,message:"请输入角色排序",trigger:"blur"}]}]},data:[]}},computed:d(d({},Object(o["mapGetters"])(["userInfo","permission"])),{},{permissionList:function(){return{addBtn:this.vaildData(this.permission.role_add,!1),viewBtn:this.vaildData(this.permission.role_view,!1),delBtn:this.vaildData(this.permission.role_delete,!1),editBtn:this.vaildData(this.permission.role_edit,!1)}},ids:function(){var e=[];return this.selectionList.forEach((function(t){e.push(t.id)})),e.join(",")},idsArray:function(){var e=[];return this.selectionList.forEach((function(t){e.push(t.id)})),e}}),methods:{initData:function(e){var t=this;Object(s["getRoleTreeById"])(e).then((function(e){var a=t.findObject(t.option.column,"parentId");a.dicData=e.data.data}))},submit:function(){var e=this,t=this.$refs.treeMenu.getCheckedKeys(),a=this.$refs.treeDataScope.getCheckedKeys(),n=this.$refs.treeApiScope.getCheckedKeys();Object(s["grant"])(this.idsArray,t,a,n).then((function(){e.box=!1,e.$message({type:"success",message:"操作成功!"}),e.onLoad(e.page)}))},rowSave:function(e,t,a){var n=this;Object(s["add"])(e).then((function(){n.onLoad(n.page),n.$message({type:"success",message:"操作成功!"}),t()}),(function(e){window.console.log(e),a()}))},rowUpdate:function(e,t,a,n){var i=this;Object(s["update"])(e).then((function(){i.onLoad(i.page),i.$message({type:"success",message:"操作成功!"}),a()}),(function(e){window.console.log(e),n()}))},rowDel:function(e){var t=this;this.$confirm("确定将选择数据删除?",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((function(){return Object(s["remove"])(e.id)})).then((function(){t.onLoad(t.page),t.$message({type:"success",message:"操作成功!"})}))},searchReset:function(){this.query={},this.onLoad(this.page)},searchChange:function(e,t){this.query=e,this.page.currentPage=1,this.onLoad(this.page,e),t()},selectionChange:function(e){this.selectionList=e},selectionClear:function(){this.selectionList=[],this.$refs.crud.toggleSelection()},beforeOpen:function(e,t){["add","edit"].includes(t)&&this.initData(this.form.id),e()},handleRole:function(){var e=this;1===this.selectionList.length?(this.menuTreeObj=[],this.dataScopeTreeObj=[],this.apiScopeTreeObj=[],Object(s["grantTree"])().then((function(t){e.menuGrantList=t.data.data.menu,e.dataScopeGrantList=t.data.data.dataScope,e.apiScopeGrantList=t.data.data.apiScope,Object(s["getRole"])(e.ids).then((function(t){e.menuTreeObj=t.data.data.menu,e.dataScopeTreeObj=t.data.data.dataScope,e.apiScopeTreeObj=t.data.data.apiScope,e.box=!0}))}))):this.$message.warning("只能选择一条数据")},handleDelete:function(){var e=this;0!==this.selectionList.length?this.$confirm("确定将选择数据删除?",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then((function(){return Object(s["remove"])(e.ids)})).then((function(){e.onLoad(e.page),e.$message({type:"success",message:"操作成功!"}),e.$refs.crud.toggleSelection()})):this.$message.warning("请选择至少一条数据")},currentChange:function(e){this.page.currentPage=e},sizeChange:function(e){this.page.pageSize=e},refreshChange:function(){this.onLoad(this.page,this.query)},onLoad:function(e){var t=this,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.loading=!0,Object(s["getList"])(e.currentPage,e.pageSize,Object.assign(a,this.query)).then((function(e){t.data=e.data.data,t.loading=!1,t.selectionClear()}))}}},u=p,h=a("2877"),g=Object(h["a"])(u,n,i,!1,null,null,null);t["default"]=g.exports}}]);