修改权限bug
This commit is contained in:
parent
e7a8185325
commit
3bb60109a3
@ -10,7 +10,7 @@
|
|||||||
<span class="item part">部分确认</span>
|
<span class="item part">部分确认</span>
|
||||||
</span>
|
</span>
|
||||||
<emailSync @updateSync="refreshDom" :show="refreshShow" :text="syncText">
|
<emailSync @updateSync="refreshDom" :show="refreshShow" :text="syncText">
|
||||||
<span class="refreshEmail" @click="manualClick"><el-icon size="16px" :class="refreshShow?'refreshEmailIcon':''"><sc-icon-Refresh/></el-icon></span>
|
<span class="refreshEmail" v-auth="'mailSyncManual'" @click="manualClick"><el-icon size="16px" :class="refreshShow?'refreshEmailIcon':''"><sc-icon-Refresh/></el-icon></span>
|
||||||
</emailSync>
|
</emailSync>
|
||||||
</el-header>
|
</el-header>
|
||||||
<el-main class="nopadding" v-loading="listLoading" element-loading-text="加载中...">
|
<el-main class="nopadding" v-loading="listLoading" element-loading-text="加载中...">
|
||||||
@ -43,9 +43,9 @@
|
|||||||
<div class="rightBtnMain">
|
<div class="rightBtnMain">
|
||||||
<div class="date">{{emailParams.sent_at}}</div>
|
<div class="date">{{emailParams.sent_at}}</div>
|
||||||
<div class="btnItem">
|
<div class="btnItem">
|
||||||
<el-button type="primary" plain :size="size" @click="seeEmail">查看原邮件</el-button>
|
<el-button type="primary" v-auth="'mailBodyInfo'" plain :size="size" @click="seeEmail">查看原邮件</el-button>
|
||||||
<el-dropdown placement="bottom-start">
|
<el-dropdown placement="bottom-start">
|
||||||
<el-button type="primary" :size="size" >确认维保 <el-icon class="el-icon--right"><el-icon-ArrowDown/></el-icon></el-button>
|
<el-button type="primary" v-auth="['repairConfirm']" :size="size">确认维保 <el-icon class="el-icon--right"><el-icon-ArrowDown/></el-icon></el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
<el-dropdown-item @click="allDefend('all')">全部入保</el-dropdown-item>
|
<el-dropdown-item @click="allDefend('all')">全部入保</el-dropdown-item>
|
||||||
|
|||||||
@ -2,23 +2,23 @@
|
|||||||
<el-container class="mainBox mainHeaderNoBorderPadding">
|
<el-container class="mainBox mainHeaderNoBorderPadding">
|
||||||
<el-header class="header">
|
<el-header class="header">
|
||||||
<div class="left-panel">
|
<div class="left-panel">
|
||||||
<el-button type="primary" :size="size" icon="el-icon-plus" @click="add">新增工单</el-button>
|
<el-button type="primary" v-auth="'maintenanceOrderAdd'" :size="size" icon="el-icon-plus" @click="add">新增工单</el-button>
|
||||||
<scImport ref="scImport" :size="size" title="批量导入维保工单" @parentParams="importUpload" @importSuccess="importSuccess">
|
<scImport ref="scImport" :size="size" title="批量导入维保工单" @parentParams="importUpload" @importSuccess="importSuccess">
|
||||||
<template #header>
|
<template #header>
|
||||||
<el-button v-auth="'organizationImport'" type="primary" :size="size" plain @click="importFile" style="margin-right: 12px;">批量导入</el-button>
|
<el-button v-auth="'maintenanceOrderImport'" type="primary" :size="size" plain @click="importFile" style="margin-right: 12px;">批量导入</el-button>
|
||||||
</template>
|
</template>
|
||||||
<template #download>
|
<template #download>
|
||||||
<div v-auth="'companyImportTemplate'" @click="importTemplate">下载导入模版</div>
|
<div v-auth="'maintenanceOrderImport'" @click="importTemplate">下载导入模版</div>
|
||||||
</template>
|
</template>
|
||||||
</scImport>
|
</scImport>
|
||||||
<el-button type="primary" plain :size="size" :disabled="selection.length==0" @click="save_maintenance">提交维保</el-button>
|
<el-button type="primary" v-auth="'maintenanceOrderSubmit'" plain :size="size" :disabled="selection.length==0" @click="save_maintenance">提交维保</el-button>
|
||||||
<el-button type="success" :size="size" icon="sc-icon-OrderReview" :disabled="selection.length==0" @click="batch_review">批量审核</el-button>
|
<el-button type="success" v-auth="'maintenanceOrderApproval'" :size="size" icon="sc-icon-OrderReview" :disabled="selection.length==0" @click="batch_review">批量审核</el-button>
|
||||||
<el-button type="primary" plain :size="size" :disabled="selection.length==0" @click="issued_maintenance">下发维保</el-button>
|
<el-button type="primary" v-auth="'maintenanceOrderSend'" plain :size="size" :disabled="selection.length==0" @click="issued_maintenance">下发维保</el-button>
|
||||||
<el-button type="danger" plain :size="size" icon="el-icon-Delete" :disabled="selection.length==0" @click="batch_del"></el-button>
|
<el-button type="danger" v-auth="'maintenanceOrderDelete'" plain :size="size" icon="el-icon-Delete" :disabled="selection.length==0" @click="batch_del"></el-button>
|
||||||
</div>
|
</div>
|
||||||
<div class="right-panel">
|
<div class="right-panel">
|
||||||
<scExport :size="size" @exportData="exportData" @updateShow="exportChangeShow" :show="exportShow" type="11">
|
<scExport :size="size" @exportData="exportData" @updateShow="exportChangeShow" :show="exportShow" type="11">
|
||||||
<el-button :size="size" icon="sc-icon-Download" @click="exportData">下载</el-button>
|
<el-button :size="size" v-auth="'maintenanceOrderExport'" icon="sc-icon-Download" @click="exportData">下载</el-button>
|
||||||
</scExport>
|
</scExport>
|
||||||
</div>
|
</div>
|
||||||
</el-header>
|
</el-header>
|
||||||
@ -61,13 +61,27 @@
|
|||||||
<el-button class="noBorderBtn" icon="el-icon-more" :size="size"></el-button>
|
<el-button class="noBorderBtn" icon="el-icon-more" :size="size"></el-button>
|
||||||
<template #dropdown>
|
<template #dropdown>
|
||||||
<el-dropdown-menu>
|
<el-dropdown-menu>
|
||||||
|
<div v-auth="'maintenanceOrderAdd'">
|
||||||
<el-dropdown-item @click="table_edit(scope.row)" icon="sc-icon-Edit">编辑工单</el-dropdown-item>
|
<el-dropdown-item @click="table_edit(scope.row)" icon="sc-icon-Edit">编辑工单</el-dropdown-item>
|
||||||
|
</div>
|
||||||
|
<div v-auth="'maintenanceOrderDelete'">
|
||||||
<el-dropdown-item @click="table_del(scope.row)" icon="sc-icon-Delete">删除工单</el-dropdown-item>
|
<el-dropdown-item @click="table_del(scope.row)" icon="sc-icon-Delete">删除工单</el-dropdown-item>
|
||||||
|
</div>
|
||||||
|
<div v-auth="'maintenanceOrderApproval'">
|
||||||
<el-dropdown-item @click="table_review(scope.row)" icon="sc-icon-OrderReview" divided>审核工单</el-dropdown-item>
|
<el-dropdown-item @click="table_review(scope.row)" icon="sc-icon-OrderReview" divided>审核工单</el-dropdown-item>
|
||||||
|
</div>
|
||||||
|
<div v-auth="'maintenanceOrderDetail'">
|
||||||
<el-dropdown-item @click="table_show(scope.row)" icon="sc-icon-See">工单详情</el-dropdown-item>
|
<el-dropdown-item @click="table_show(scope.row)" icon="sc-icon-See">工单详情</el-dropdown-item>
|
||||||
|
</div>
|
||||||
|
<div v-auth="'maintenanceOrderSubmit'">
|
||||||
<el-dropdown-item icon="sc-icon-SaveMaintenance" @click="table_submit(scope.row)" divided>提交维保</el-dropdown-item>
|
<el-dropdown-item icon="sc-icon-SaveMaintenance" @click="table_submit(scope.row)" divided>提交维保</el-dropdown-item>
|
||||||
|
</div>
|
||||||
|
<div v-auth="'maintenanceOrderSend'">
|
||||||
<el-dropdown-item icon="sc-icon-OrderMaintenance" @click="table_send(scope.row)">下发维保</el-dropdown-item>
|
<el-dropdown-item icon="sc-icon-OrderMaintenance" @click="table_send(scope.row)">下发维保</el-dropdown-item>
|
||||||
|
</div>
|
||||||
|
<div v-auth="'orderLogsList'">
|
||||||
<el-dropdown-item icon="sc-icon-OrderLog" @click="table_logs(scope.row)" divided>工单日志</el-dropdown-item>
|
<el-dropdown-item icon="sc-icon-OrderLog" @click="table_logs(scope.row)" divided>工单日志</el-dropdown-item>
|
||||||
|
</div>
|
||||||
</el-dropdown-menu>
|
</el-dropdown-menu>
|
||||||
</template>
|
</template>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
|
|||||||
@ -26,7 +26,7 @@
|
|||||||
<div class="leftBox">
|
<div class="leftBox">
|
||||||
<el-icon style="font-size: 26px;"><sc-icon-Excel/></el-icon>
|
<el-icon style="font-size: 26px;"><sc-icon-Excel/></el-icon>
|
||||||
</div>
|
</div>
|
||||||
<div class="rightBox" @click="downFile(emailParams)">
|
<div class="rightBox" v-auth="'mailAttachmentDownload'" @click="downFile(emailParams)">
|
||||||
<div class="name">{{emailParams.file_name && emailParams.file_name.file}}</div>
|
<div class="name">{{emailParams.file_name && emailParams.file_name.file}}</div>
|
||||||
<div class="size">
|
<div class="size">
|
||||||
{{emailParams.file_name && emailParams.file_name.size}}
|
{{emailParams.file_name && emailParams.file_name.size}}
|
||||||
|
|||||||
@ -4,7 +4,8 @@
|
|||||||
<el-container>
|
<el-container>
|
||||||
<el-main class="nopadding">
|
<el-main class="nopadding">
|
||||||
<el-menu class="menu mainMenu" :default-active="page">
|
<el-menu class="menu mainMenu" :default-active="page">
|
||||||
<el-menu-item-group v-for="group in menu" :key="group.groupName" :title="group.groupName">
|
<div v-for="group in menu" :key="group.groupName">
|
||||||
|
<el-menu-item-group v-if="group.show" :title="group.groupName">
|
||||||
<div v-for="item in group.list" :key="item.component">
|
<div v-for="item in group.list" :key="item.component">
|
||||||
<el-menu-item v-authSetup="item.actions" :index="item.component" @click="openPage">
|
<el-menu-item v-authSetup="item.actions" :index="item.component" @click="openPage">
|
||||||
<el-icon v-if="item.icon"><component :is="item.icon"/></el-icon>
|
<el-icon v-if="item.icon"><component :is="item.icon"/></el-icon>
|
||||||
@ -14,6 +15,7 @@
|
|||||||
</el-menu-item>
|
</el-menu-item>
|
||||||
</div>
|
</div>
|
||||||
</el-menu-item-group>
|
</el-menu-item-group>
|
||||||
|
</div>
|
||||||
</el-menu>
|
</el-menu>
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
@ -51,12 +53,13 @@ export default {
|
|||||||
menu: [
|
menu: [
|
||||||
{
|
{
|
||||||
groupName: "账号设置",
|
groupName: "账号设置",
|
||||||
|
show:true,
|
||||||
list: [
|
list: [
|
||||||
{
|
{
|
||||||
icon: "sc-icon-MachineRoom",
|
icon: "sc-icon-MachineRoom",
|
||||||
title: "机房配置",
|
title: "机房配置",
|
||||||
component: "account",
|
component: "account",
|
||||||
actions:'roomConfig'
|
actions:'roomConfig',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
icon: "sc-icon-CostAllocation",
|
icon: "sc-icon-CostAllocation",
|
||||||
@ -68,6 +71,7 @@ export default {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
groupName: "数据管理",
|
groupName: "数据管理",
|
||||||
|
show:true,
|
||||||
list: [
|
list: [
|
||||||
{
|
{
|
||||||
icon: "sc-icon-DataSource",
|
icon: "sc-icon-DataSource",
|
||||||
@ -110,6 +114,16 @@ export default {
|
|||||||
created() {
|
created() {
|
||||||
const userInfo = this.$TOOL.data.get('USER_INFO');
|
const userInfo = this.$TOOL.data.get('USER_INFO');
|
||||||
this.user.role = userInfo.user_roles && userInfo.user_roles.role_names.length>0?userInfo.user_roles.role_names[0]:'';
|
this.user.role = userInfo.user_roles && userInfo.user_roles.role_names.length>0?userInfo.user_roles.role_names[0]:'';
|
||||||
|
const permissions = this.$TOOL.data.get("PERMISSIONS");
|
||||||
|
this.menu.forEach(item=>{
|
||||||
|
item.show = false;
|
||||||
|
item.list.forEach(em=>{
|
||||||
|
if(permissions.auth.indexOf(em.actions)!=-1){
|
||||||
|
item.show = true;
|
||||||
|
this.page = item.list[0].component
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
openPage(item){
|
openPage(item){
|
||||||
|
|||||||
@ -227,6 +227,13 @@ export default {
|
|||||||
obj.data_permission.push({[em.meta.code]:list})
|
obj.data_permission.push({[em.meta.code]:list})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(em.children && em.children.length>0){
|
||||||
|
em.children.forEach(daList=>{
|
||||||
|
if(em.checked || em.isCheck && daList.meta.hidden){
|
||||||
|
obj.menu_permission.push(daList.meta.code);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@ -42,13 +42,13 @@
|
|||||||
</div>
|
</div>
|
||||||
<el-tabs class="role_tabs" tab-position="top" @tab-change="activeClick">
|
<el-tabs class="role_tabs" tab-position="top" @tab-change="activeClick">
|
||||||
<el-tab-pane label="功能权限">
|
<el-tab-pane label="功能权限">
|
||||||
<dataTree ref="dataTree" :data="menu.list"/>
|
<dataTree ref="dataTree" v-loading="dataTreeLoading" element-loading-text="加载中..." :data="menu.list"/>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="数据权限">
|
<el-tab-pane label="数据权限">
|
||||||
|
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="角色成员">
|
<el-tab-pane label="角色成员">
|
||||||
<members ref="members" :data="roleUser.list" />
|
<members ref="members" v-loading="roleUserLoading" element-loading-text="加载中..." :data="roleUser.list" />
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</el-main>
|
</el-main>
|
||||||
@ -143,9 +143,11 @@
|
|||||||
activeNum:0,
|
activeNum:0,
|
||||||
roleCheckList:[],
|
roleCheckList:[],
|
||||||
role_id:"",
|
role_id:"",
|
||||||
|
dataTreeLoading:false,
|
||||||
menu: {
|
menu: {
|
||||||
list: [],
|
list: [],
|
||||||
},
|
},
|
||||||
|
roleUserLoading:false,
|
||||||
roleUser:{
|
roleUser:{
|
||||||
list:[]
|
list:[]
|
||||||
},
|
},
|
||||||
@ -323,6 +325,13 @@
|
|||||||
obj.data_permission.push({[em.meta.code]:list})
|
obj.data_permission.push({[em.meta.code]:list})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(em.children && em.children.length>0){
|
||||||
|
em.children.forEach(daList=>{
|
||||||
|
if(em.checked || em.isCheck && daList.meta.hidden){
|
||||||
|
obj.menu_permission.push(daList.meta.code);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -341,7 +350,9 @@
|
|||||||
let params = {
|
let params = {
|
||||||
role_id: this.role_id,
|
role_id: this.role_id,
|
||||||
};
|
};
|
||||||
|
this.dataTreeLoading = true;
|
||||||
const res = await this.$API.system.role.roleMenu.post(params);
|
const res = await this.$API.system.role.roleMenu.post(params);
|
||||||
|
this.dataTreeLoading = false;
|
||||||
this.menu.list = res.data;
|
this.menu.list = res.data;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -350,7 +361,9 @@
|
|||||||
let params = {
|
let params = {
|
||||||
role_id: this.role_id,
|
role_id: this.role_id,
|
||||||
};
|
};
|
||||||
|
this.roleUserLoading = true;
|
||||||
const res = await this.$API.system.role.roleUser.post(params);
|
const res = await this.$API.system.role.roleUser.post(params);
|
||||||
|
this.roleUserLoading = false;
|
||||||
this.roleUser.list = res.data;
|
this.roleUser.list = res.data;
|
||||||
this.userCheckList = res.data;
|
this.userCheckList = res.data;
|
||||||
if(res.data && res.data.length>0){
|
if(res.data && res.data.length>0){
|
||||||
|
|||||||
@ -45,7 +45,7 @@ export default {
|
|||||||
},
|
},
|
||||||
watch:{
|
watch:{
|
||||||
data(val){
|
data(val){
|
||||||
if(val && val.length>0){
|
if(val){
|
||||||
val.forEach(item=>{
|
val.forEach(item=>{
|
||||||
item.checked = false;
|
item.checked = false;
|
||||||
})
|
})
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user