Browse Source

用户工厂授权 2022-05-27 sxm

master
[li_she] 4 years ago
parent
commit
456425ca5f
  1. 7
      src/api/factory/accessSite.js
  2. 5
      src/api/factory/site.js
  3. 104
      src/views/modules/sys/user.vue

7
src/api/factory/accessSite.js

@ -0,0 +1,7 @@
import { createAPI } from "@/utils/httpRequest.js";
//------------工厂信息部分----------------
// 获取工厂信息数据
export const getUserAccessSiteList = data => createAPI(`/accessSite/list`,'post',data)
// 保存用户工厂信息
export const saveUserAccessSiteList = data => createAPI(`/accessSite/saveUserAccessSiteList`,'post',data)

5
src/api/factory/site.js

@ -0,0 +1,5 @@
import { createAPI } from "@/utils/httpRequest.js";
//------------工厂信息部分----------------
// 获取工厂信息数据
export const getSiteList = data => createAPI(`/site/list`,'post',data)

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

@ -8,10 +8,12 @@
<el-button @click="getDataList()" type="primary">查询</el-button>
<el-button v-if="isAuth('sys:user:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button>
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary"
>特殊权限
@click="specialAuthorize()"
>特殊权限
</el-button>
<el-button v-if="isAuth('sys:user:save')" :disabled="this.showButton" type="primary"
>工厂授权
@click="siteAuthorize()"
>工厂授权
</el-button>
</el-form-item>
</el-form>
@ -102,7 +104,7 @@
</el-pagination>
<!-- 弹窗, 新增 / 修改 -->
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
<!-- 审核权限 -->
<el-dialog :close-on-click-modal="false" :close-on-press-escape="false" v-drag :title="inputSearch1"
:visible.sync="setUp.reviewFlag" width="560px">
<template>
@ -113,20 +115,51 @@
<el-button type="primary" :disabled="setUp.saveButton" @click="saveUserRoleFlag()">确定</el-button>
</span>
</el-dialog>
<!-- 特殊权限 -->
<el-dialog
v-drag
:title="'特殊性权限'"
:visible.sync="specialVisible"
width="600px"
:append-to-body="true">
<span slot="footer" class="dialog-footer">
<el-button type="primary">确定</el-button>
<el-button @click="specialVisible = false" type="primary">取消</el-button>
</span>
</el-dialog>
<!-- 工厂授权 -->
<el-dialog
style="font-size: 12px"
v-drag
:title="'工厂授权'"
:visible.sync="siteVisible"
width="520px"
:append-to-body="true">
<el-transfer v-model="selectSitList" :data="siteList" :titles="['未授权工厂', '已授权工厂']"></el-transfer>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="saveUserAssessSite()">确定</el-button>
<el-button @click="siteVisible = false" type="primary">取消</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import {getUserAccessSiteList, saveUserAccessSiteList} from '@/api/factory/accessSite.js'
import {getSiteList} from '@/api/factory/site.js'
import AddOrUpdate from './user-add-or-update'
import {
getUserBusinessRoleList,
saveUserBusinessRole,
} from '@/api/auditManagement/auditType.js'
export default {
data() {
return {
showButton: true,
specialVisible: false,
siteVisible: false,
currentData: {},
userId: this.$store.state.user.name,
transferData: [],
@ -141,6 +174,10 @@ export default {
userName: ''
},
dataList: [],
siteList: [],
selectSitList: ["1",],
selectUser: {},
pageIndex: 1,
pageSize: 20,
totalPage: 0,
@ -156,8 +193,53 @@ export default {
this.getDataList()
},
methods: {
//
specialAuthorize() {
this.specialVisible = true
},
//
siteAuthorize() {
this.siteVisible = true
this.searchSiteList()
},
//
saveUserAssessSite() {
let accessSiteList = this.selectSitList.map(item => {
let itemSite = {
userid: this.selectUser.username,
site: item
}
return itemSite;
})
saveUserAccessSiteList(accessSiteList).then(({data}) => {
if (data.code === 0) {
this.$message.success(data.msg)
this.siteList = []
this.selectSitList = []
this.siteVisible = false
}else {
this.$message.warning(data.msg)
}
})
},
//
searchUserAccessSiteList() {
getUserAccessSiteList({userid: this.selectUser.username}).then(({data}) => {
this.selectSitList = data.dataList
})
},
//
searchSiteList() {
getSiteList({active: 'Y'}).then(({data}) => {
this.siteList = data.dataList
this.searchUserAccessSiteList()
})
},
//
handleCurrentChange() {
handleCurrentChange(val) {
this.selectUser = val
this.showButton = false
},
saveUserRoleFlag() {
@ -299,3 +381,17 @@ export default {
}
}
</script>
<style scoped lang="scss">
/* 穿梭框外框高宽度 */
/deep/ .el-transfer-panel {
width: 600px;
height: 400px;
}
/* 穿梭框内部展示列表的高宽度 */
/deep/ .el-transfer-panel__list {
height: 375px;
}
</style>
Loading…
Cancel
Save