ruanqi 2 years ago
parent
commit
aee6b642f2
  1. 4
      src/api/base/site.js
  2. 42
      src/views/modules/base/factoryInformation.vue
  3. 188
      src/views/modules/sys/user.vue

4
src/api/base/site.js

@ -45,3 +45,7 @@ export const searchAccessBuList = data => createAPI(`/base/searchAccessBuList`,'
export const saveAccessBU = data => createAPI(`/base/saveAccessBU`,'post',data)
export const searchAccessBuListForUser= data => createAPI(`/base/searchAccessBuListForUser`,'post',data)
export const saveAccessBuListForBu= data => createAPI(`/base/saveAccessBuListForBu`,'post',data)
export const searchAccessProjectForUser= data => createAPI(`/base/searchAccessProjectForUser`,'post',data)
export const saveAccessProject= data => createAPI(`/base/saveAccessProject`,'post',data)
export const searchAccessSiteListBySite= data => createAPI(`/base/searchAccessSiteListBySite`,'post',data)

42
src/views/modules/base/factoryInformation.vue

@ -29,9 +29,11 @@
<el-table-column
header-align="center"
align="center"
width="160"
width="180"
fixed="right"
label="操作">
<template slot-scope="scope">
<a type="text" size="small" v-if="scope.row.active=='Y'" @click="accessSiteModel(scope.row)">{{buttons.role}}</a>
<a type="text" size="small" v-if="!authEdit" @click="editSite(scope.row)">{{buttons.update}}</a>
<a type="text" size="small" @click="getCompanyInformation(scope.row)">{{buttons.companyInformation}}</a>
<!-- //v-if="jumpFlag"-->
@ -132,6 +134,27 @@
<!-- 动态列 -->
<column v-if="visible" ref="column" @refreshData="getTableUserColumn" v-drag></column>
<!-- 授权 -->
<el-dialog
style="font-size: 12px"
v-drag
:title="'工厂授权'"
:visible.sync="accessSiteVisible"
width="518px"
:append-to-body="true">
<el-transfer v-model="accessSiteList" :props="{
key: 'buNo',
label: 'buDesc'
}" :data="userList" :titles="['未授权', '已授权']"></el-transfer>
<span slot="footer" class="dialog-footer">
<div style="margin-top: 5px">
<el-button type="primary" @click="saveAssessSite()">确定</el-button>
<el-button @click="accessSiteVisible = false" type="primary">取消</el-button>
</div>
</span>
</el-dialog>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div>
</template>
@ -142,7 +165,8 @@
import {
getSiteData,
getCompanyData,
siteSave
siteSave,
searchAccessSiteListBySite
} from "@/api/base/site.js"
import {
@ -164,6 +188,9 @@
},
data() {
return {
accessSiteVisible:false,
accessSiteList:[],
userList:[],
queryTable: {
functionId: this.$route.meta.menuId,
tableId: "100001002Table",
@ -363,7 +390,7 @@
companyInformation:'查看会计单位信息',
save:'保存',
close:'关闭',
role:'授权',
},
queryButton: {
functionId: functionId,
@ -834,6 +861,15 @@
}
},
accessSiteModel(){
searchAccessSiteListBySite({site:this.$store.state.user.site,
}).then(({data}) => {
this.accessSiteList = data.accessSiteList
this.userList=data.userList
})
this.accessSiteVisible=true;
},
//
getMultiLanguageList() {
//

188
src/views/modules/sys/user.vue

@ -21,6 +21,10 @@
@click="buAuthorize()"
> {{ buttons.buAuthorization || 'BU授权' }}
</el-button>
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary"
@click="projectModel()"
> {{ buttons.projectAuthorization || '项目授权' }}
</el-button>
</el-form-item>
</el-form>
@ -171,7 +175,7 @@
</span>
</el-dialog>
<!-- 工厂授权 -->
<!-- BU授权 -->
<el-dialog
style="font-size: 12px"
v-drag
@ -191,13 +195,104 @@
</span>
</el-dialog>
<el-dialog
width="600px"
title="项目权限"
:close-on-click-modal="false"
:visible.sync="projectRoleFlag">
<el-table
:data="projectRoleList"
border
:height="400"
v-loading="false"
style="width: 100%;">
<el-table-column
prop="projectId"
header-align="center"
align="center"
min-width="50"
label="项目号">
</el-table-column>
<el-table-column
prop="projectDesc"
header-align="center"
align="center"
min-width="100"
label="项目描述">
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="25"
label="">
<template slot-scope="scope">
<!-- 如果数据为Y显示勾选框否则不勾选 -->
<el-checkbox v-model="scope.row.checkAll" @change="changeAll(scope.row)"></el-checkbox>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="25"
label="查询">
<template slot-scope="scope">
<!-- 如果数据为Y显示勾选框否则不勾选 -->
<el-checkbox v-model="scope.row.searchCheck" @change="changeCheck(scope.row,1)"></el-checkbox>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="25"
label="修改">
<template slot-scope="scope">
<!-- 如果数据为Y显示勾选框否则不勾选 -->
<el-checkbox v-model="scope.row.updateCheck" @change="changeCheck(scope.row,2)"></el-checkbox>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="25"
label="下载">
<template slot-scope="scope">
<!-- 如果数据为Y显示勾选框否则不勾选 -->
<el-checkbox v-model="scope.row.downCheck" @change="changeCheck(scope.row,3)"></el-checkbox>
</template>
</el-table-column>
<el-table-column
prop=""
header-align="center"
align="center"
min-width="25"
label="删除">
<template slot-scope="scope">
<!-- 如果数据为Y显示勾选框否则不勾选 -->
<el-checkbox v-model="scope.row.deleteCheck" @change="changeCheck(scope.row,4)"></el-checkbox>
</template>
</el-table-column>
</el-table>
<span slot="footer" class="dialog-footer">
<div style="margin-top: 5px">
<el-button type="primary" @click="saveAccessProject()">确定</el-button>
<el-button @click="projectRoleFlag = false" type="primary">取消</el-button>
</div>
</span>
</el-dialog>
</div>
</template>
<script>
import {getUserAccessSiteList, saveUserAccessSiteList} from '@/api/factory/accessSite.js'
import {getSiteList} from '@/api/factory/site.js'
import {searchAccessBuList,saveAccessBU} from '@/api/base/site.js'
import {searchAccessBuList,saveAccessBU,searchAccessProjectForUser,saveAccessProject} from '@/api/base/site.js'
import AddOrUpdate from './user-add-or-update'
import {getUserBusinessRoleList, saveUserBusinessRole,} from '@/api/auditManagement/auditType.js'
@ -216,6 +311,8 @@ import {
export default {
data() {
return {
projectRoleFlag:false,
projectRoleList:[],
showButton: true,
height: 200,
securityHeight: 300,
@ -299,6 +396,7 @@ export default {
specialCompetencies: '特殊权限',
factoryAuthorization: '工厂授权',
buAuthorization: 'BU授权',
projectAuthorization: '项目授权',
createTime: '创建时间',
username: '用户账号',
userDisplay: '用户名',
@ -398,6 +496,90 @@ export default {
this.searchBuList()
},
//start
projectModel(){
let inData={
site:this.$store.state.user.site,
username:this.selectUser.username,
}
searchAccessProjectForUser(inData).then(({data}) => {
this.projectRoleList=data.rows
})
this.projectRoleFlag=true
},
changeAll(row){
if(row.checkAll){
row.searchCheck=true;
row.updateCheck=true;
row.downCheck=true;
row.deleteCheck=true;
row.searchFlag='Y'
row.updateFlag='Y'
row.downFlag='Y'
row.deleteFlag='Y'
}else {
row.searchCheck=false;
row.updateCheck=false;
row.downCheck=false;
row.deleteCheck=false;
row.searchFlag='N'
row.updateFlag='N'
row.downFlag='N'
row.deleteFlag='N'
}
},
changeCheck(row,type){
if(type==1){
if(row.searchCheck){
row.searchFlag='Y'
}else {
row.searchFlag='N'
}
}
if(type==2){
if(row.updateCheck){
row.updateFlag='Y'
}else {
row.updateFlag='N'
}
}
if(type==3){
if(row.downCheck){
row.downFlag='Y'
}else {
row.downFlag='N'
}
}
if(type==4){
if(row.deleteCheck){
row.deleteFlag='Y'
}else {
row.deleteFlag='N'
}
}
if(row.searchCheck&&row.updateCheck&&row.downCheck&&row.deleteCheck){
row.checkAll=true
}else{
row.checkAll=false
}
this.$forceUpdate();
},
saveAccessProject(){
let inData={
site:this.$store.state.user.site,
username:this.selectUser.username,
accessProjectList:this.projectRoleList
}
saveAccessProject(inData).then(({data}) => {
if (data && data.code === 0) {
this.$message.success( '操作成功')
this.projectRoleFlag = false
} else {
this.$message.error(data.msg)
}
})
},
//end
//
saveUserAssessSite() {
let accessSiteList = this.selectSitList.map(item => {
@ -432,7 +614,7 @@ export default {
for (let i = 0; i < this.selectBUList.length; i++) {
let inData={
site:this.$store.state.user.site,
username:this.$store.state.user.name,
username:this.selectUser.username,
buNo:this.selectBUList[i]
}
inList.push(inData)

Loading…
Cancel
Save