update:角色发布流程修改

parent 0e00a1fc
...@@ -14,7 +14,7 @@ const PANDORA_URI = { ...@@ -14,7 +14,7 @@ const PANDORA_URI = {
} }
const API_INTERNAL_URI = { const API_INTERNAL_URI = {
'development': "http://bp-dev.ini.yidian-inc.com", 'development': "http://bp-test.ini.yidian-inc.com",
'test': "http://bp-test.ini.yidian-inc.com", 'test': "http://bp-test.ini.yidian-inc.com",
'production': "http://bp-test.go2yd.com" 'production': "http://bp-test.go2yd.com"
} }
......
...@@ -9,7 +9,7 @@ exports.getUserPermission = async (ctx) => { ...@@ -9,7 +9,7 @@ exports.getUserPermission = async (ctx) => {
url, url,
method: "GET", method: "GET",
qs: { qs: {
// user_email: "jianghaiming@126.com" //user_email: "jianghaiming@126.com"
user_email: user user_email: user
} }
}; };
......
...@@ -19,7 +19,7 @@ export default { ...@@ -19,7 +19,7 @@ export default {
async mounted () { async mounted () {
if (this.$store.state.permissions && this.$store.state.userInfo) return if (this.$store.state.permissions && this.$store.state.userInfo) return
const { status, user } = await fetchCurrentUser(); const { status, user } = await fetchCurrentUser();
// {"status":"success","user":{"userid":"732473439","name":"吕伟朝","email":"lvweichao@yidian-inc.com","avatar":""}} //{"status":"success","user":{"userid":"732473439","name":"吕伟朝","email":"lvweichao@yidian-inc.com","avatar":""}}
if (status === 'success') { if (status === 'success') {
this.$store.commit('updateUserInfo', user); this.$store.commit('updateUserInfo', user);
this.$store.dispatch('updateUserPermission', { email: user.email }) this.$store.dispatch('updateUserPermission', { email: user.email })
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
<el-select v-model="life_account.type" placeholder="类型"> <el-select v-model="life_account.type" placeholder="类型">
<el-option value="1" label="个人"></el-option> <el-option value="1" label="个人"></el-option>
<el-option value="2" label="企业"></el-option> <el-option value="2" label="企业"></el-option>
<el-option value="0" label="全部"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
......
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
</div> </div>
<div v-else> <div v-else>
<el-descriptions-item> <el-descriptions-item>
<template #label>职业标签 </template> <template #label>职业标签 </template>
{{ personal_auth_record.occupation }} {{ personal_auth_record.occupation }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item> <el-descriptions-item>
......
...@@ -114,14 +114,15 @@ export default { ...@@ -114,14 +114,15 @@ export default {
update_time: "", update_time: "",
update_user_name: "", update_user_name: "",
create_time: "", create_time: "",
create_user_name: "" create_user_name: "",
role_account_list: []
}, },
permissionsAll: [],//所有权限列表 permissionsAll: [],//所有权限列表
permissionsUpdate: [],//选中权限 permissionsUpdate: [],//选中权限
} }
}, },
activated () { created () {
this.getGetRole_list() this.getGetRole_list()
this.getPermissionsAll() this.getPermissionsAll()
}, },
...@@ -204,7 +205,7 @@ export default { ...@@ -204,7 +205,7 @@ export default {
//角色详情数据 //角色详情数据
getRole_info_detail (role_id) { getRole_info_detail (role_id) {
reqGet_role_info(role_id).then(res => { reqGet_role_info(role_id).then(res => {
const { role_id, role_name, role_status, update_time, update_user_name, create_time, create_user_name, permissions } = res const { role_id, role_name, role_status, update_time, update_user_name, create_time, create_user_name, permissions, role_account_list } = res
this.role_info_detail = { this.role_info_detail = {
role_id, role_id,
role_name, role_name,
...@@ -212,7 +213,8 @@ export default { ...@@ -212,7 +213,8 @@ export default {
update_time, update_time,
update_user_name, update_user_name,
create_time, create_time,
create_user_name create_user_name,
role_account_list
} }
this.roleName = role_name this.roleName = role_name
this.permissionsUpdate = permissions this.permissionsUpdate = permissions
......
...@@ -18,6 +18,18 @@ ...@@ -18,6 +18,18 @@
<el-form-item label="最后修改时间" :label-width="formLabelWidth"> <el-form-item label="最后修改时间" :label-width="formLabelWidth">
<el-input disabled v-model="loaclRole_info.update_time"></el-input> <el-input disabled v-model="loaclRole_info.update_time"></el-input>
</el-form-item> </el-form-item>
<div class="loaclRole_info" v-if="isShowRole_account">
<p class="titleRole">角色拥有账号</p>
<div class="roleList">
<div
class="role_account_list"
v-for="(item, index) in loaclRole_info.role_account_list"
:key="index"
>
{{ item }}
</div>
</div>
</div>
</div> </div>
</template> </template>
<script> <script>
...@@ -26,6 +38,7 @@ export default { ...@@ -26,6 +38,7 @@ export default {
watch: { watch: {
role_info_detail (val) { role_info_detail (val) {
this.loaclRole_info = val this.loaclRole_info = val
this.isShowRole_account = val.role_account_list.length
this.role_status = val.role_status == 1 ? '正常' : val.role_status == 2 ? '禁用' : '删除' this.role_status = val.role_status == 1 ? '正常' : val.role_status == 2 ? '禁用' : '删除'
} }
}, },
...@@ -33,8 +46,34 @@ export default { ...@@ -33,8 +46,34 @@ export default {
return { return {
formLabelWidth: "120px", formLabelWidth: "120px",
loaclRole_info: {}, loaclRole_info: {},
role_status: "" role_status: "",
isShowRole_account: true
} }
} }
} }
</script> </script>
\ No newline at end of file <style lang="less" scoped>
.loaclRole_info {
display: flex;
margin: 10px 0 20px 0;
}
.roleList {
flex: 1;
overflow-y: scroll;
max-height: 200px;
}
.role_account_list {
padding: 10px;
color: #909399;
background: #fafafa;
font-weight: 400;
line-height: 1.5;
}
.titleRole {
width: 120px;
display: flex;
justify-content: space-evenly;
font-size: 14px;
color: #606266;
}
</style>
\ No newline at end of file
...@@ -109,14 +109,13 @@ ...@@ -109,14 +109,13 @@
</el-table> </el-table>
<page :totalNum="totalNum" @update="update" /> <page :totalNum="totalNum" @update="update" />
</el-card> </el-card>
<el-dialog <el-dialog :title="roleTitle" v-model="dialogVisible">
title="角色权限范围修改" <el-form>
v-model="dialogVisible" <!-- 新增 -->
width="40%" <el-form-item label="角色名称" :label-width="formLabelWidth">
destroy-on-close <el-input v-model="roleName" autocomplete="off"></el-input>
> </el-form-item>
<div class="tree"> <el-form-item label="角色范围" :label-width="formLabelWidth">
<div class="content">
<el-cascader <el-cascader
v-model="selectedOptions" v-model="selectedOptions"
:options="permissionsAll" :options="permissionsAll"
...@@ -125,8 +124,8 @@ ...@@ -125,8 +124,8 @@
@change="parentCateChange" @change="parentCateChange"
clearable clearable
></el-cascader> ></el-cascader>
</div> </el-form-item>
</div> </el-form>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button> <el-button @click="dialogVisible = false">取 消</el-button>
...@@ -134,6 +133,27 @@ ...@@ -134,6 +133,27 @@
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
<!-- <el-dialog :title="roleTitle" v-model="dialogVisible">
<el-form-item label="角色名称11111" :label-width="formLabelWidth">
<el-input v-model="roleName" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="角色范围" :label-width="formLabelWidth">
<el-cascader
v-model="selectedOptions"
:options="permissionsAll"
:props="props"
style="width: 280px"
@change="parentCateChange"
clearable
></el-cascader>
</el-form-item>
<template #footer>
<span class="dialog-footer">
<el-button @click="dialogVisible = false">取 消</el-button>
<el-button type="primary" @click="confirm">确 定</el-button>
</span>
</template>
</el-dialog> -->
</layout> </layout>
</template> </template>
<script> <script>
...@@ -142,7 +162,7 @@ import page from "../components/Pagination" ...@@ -142,7 +162,7 @@ import page from "../components/Pagination"
import { import {
getRole_list as reqGetRole_list, getAll_role_list as reqGetAll_role_list, getRole_list as reqGetRole_list, getAll_role_list as reqGetAll_role_list,
getUpdate_role as reqGetUpdate_role, get_role_info as reqGet_role_info, getUpdate_role as reqGetUpdate_role, get_role_info as reqGet_role_info,
getDelete_role as reqGetDelete_role getDelete_role as reqGetDelete_role, getAdd_role as reqGetAdd_role
} from "../../service/role"; } from "../../service/role";
export default { export default {
name: 'KeepRoleManagement', name: 'KeepRoleManagement',
...@@ -162,15 +182,15 @@ export default { ...@@ -162,15 +182,15 @@ export default {
roleName: '', roleName: '',
roleStatus: '' roleStatus: ''
}, },
user_info: { formLabelWidth: '120px',
name: "jianghaiming@yidian-inc.com",
email: "jianghaiming@126.com",
},
parmas: { parmas: {
page: 1, page: 1,
page_size: 20 page_size: 20
}, },
totalNum: null, totalNum: null,
roleTitle: '',
roleName: '',
edit: true,
props: { props: {
multiple: true,//设置为多选 multiple: true,//设置为多选
value: 'id', //value值和哪个值绑定 value: 'id', //value值和哪个值绑定
...@@ -186,7 +206,9 @@ export default { ...@@ -186,7 +206,9 @@ export default {
role_name: "", role_name: "",
}, },
permissionsAll: [], permissionsAll: [],
permissionsUpdate: [] // role_account_list: [],
// permissionsUpdate: [],
currenPermissionsUpdate: []
} }
}, },
activated () { activated () {
...@@ -199,7 +221,13 @@ export default { ...@@ -199,7 +221,13 @@ export default {
return statusText[row.role_status - 1] return statusText[row.role_status - 1]
}, },
onCreateRole () { onCreateRole () {
this.$router.push({ name: 'AddRole' }); this.roleTitle = '新增角色'
this.getPermissionsAll()
this.edit = false
this.dialogVisible = true
this.roleName = ""
this.selectedOptions = []
// this.$router.push({ name: 'AddRole' });
}, },
toRoleDetail (row) { toRoleDetail (row) {
this.$router.push({ name: "RoleDetail", query: { roleId: row.role_id } }); this.$router.push({ name: "RoleDetail", query: { roleId: row.role_id } });
...@@ -274,7 +302,8 @@ export default { ...@@ -274,7 +302,8 @@ export default {
role_id, role_id,
role_name, role_name,
} }
this.permissionsUpdate = permissions this.roleName = role_name
// this.permissionsUpdate = permissions
let role_status let role_status
if (type === "disable") { if (type === "disable") {
role_status = 2 role_status = 2
...@@ -289,7 +318,6 @@ export default { ...@@ -289,7 +318,6 @@ export default {
} }
if (type !== "modify") { if (type !== "modify") {
this.getUpdate_role(role_name, role_id, role_status, permissions) this.getUpdate_role(role_name, role_id, role_status, permissions)
} }
}) })
}, },
...@@ -358,22 +386,57 @@ export default { ...@@ -358,22 +386,57 @@ export default {
}, },
//修改 //修改
handelModify (row) { handelModify (row) {
this.edit = true
this.roleTitle = '修改角色'
this.getPermissionsAll() this.getPermissionsAll()
this.dialogVisible = true this.dialogVisible = true
this.getRole_info_detail("modify", row.role_id) this.getRole_info_detail("modify", row.role_id)
}, },
//确认修改 //确认修改
confirm () { confirm () {
if (!this.currentRolePrivilege.length) { if (this.edit) {
this.getEditRole()
} else {
this.getAdd_role()
}
},
//编辑提交的数据
getEditRole () {
if (!(this.roleName && this.currentRolePrivilege.length > 0)) {
this.$message({ this.$message({
type: 'error', type: 'error',
message: "请选择角色范围" message: "请完善信息"
}); });
return false return false
} }
let { role_id, role_name } = this.role_info_detail let { role_id } = this.role_info_detail
let role_status = '' let role_status = ''
this.getUpdate_role(role_name, role_id, role_status, this.currentRolePrivilege) this.getUpdate_role(this.roleName, role_id, role_status, this.currentRolePrivilege)
},
//新增角色
getAdd_role () {
if (!(this.roleName && this.currenPermissionsUpdate.length > 0)) {
this.$message({
type: 'error',
message: "请完善信息"
});
return false
}
let parmasAdd_role = {
role_name: this.roleName,
permissions: this.currenPermissionsUpdate
}
reqGetAdd_role(parmasAdd_role).then(res => {
this.dialogVisible = false
if (res.status === "success") {
this.getGetRole_list()
} else {
this.$message({
type: 'info',
message: `${res.reason}`
});
}
})
}, },
parentCateChange (id) { parentCateChange (id) {
this.getSelectedOptions(id) this.getSelectedOptions(id)
...@@ -406,6 +469,7 @@ export default { ...@@ -406,6 +469,7 @@ export default {
} }
}) })
this.currentRolePrivilege = newData this.currentRolePrivilege = newData
this.currenPermissionsUpdate = newData
}, },
} }
}; };
......
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
</el-descriptions> </el-descriptions>
<div class="tree" v-if="selectedOptions"> <div class="tree" v-if="selectedOptions">
<h5 style="margin-bottom: 10px">角色范围</h5> <h5 style="margin-bottom: 10px">角色范围</h5>
<div class="content"> <div>
<el-cascader <el-cascader
v-model="selectedOptions" v-model="selectedOptions"
:options="permissionsAll" :options="permissionsAll"
...@@ -54,12 +54,14 @@ ...@@ -54,12 +54,14 @@
</div> </div>
<div v-if="role_info_detail.role_account_list.length"> <div v-if="role_info_detail.role_account_list.length">
<h5 style="margin: 10px 0">角色账号</h5> <h5 style="margin: 10px 0">角色账号</h5>
<div <div class="roleList">
class="role_account_list" <div
v-for="(item, index) in role_info_detail.role_account_list" class="role_account_list"
:key="index" v-for="(item, index) in role_info_detail.role_account_list"
> :key="index"
{{ item }} >
{{ item }}
</div>
</div> </div>
</div> </div>
</el-card> </el-card>
...@@ -149,6 +151,10 @@ export default { ...@@ -149,6 +151,10 @@ export default {
.management { .management {
margin-top: 20px; margin-top: 20px;
} }
.roleList {
max-height: 300px;
overflow-y: scroll;
}
.tree { .tree {
// border: 1px solid #ebeef5; // border: 1px solid #ebeef5;
margin-top: 20px; margin-top: 20px;
......
...@@ -36,7 +36,7 @@ const getDefaultParams = () => { ...@@ -36,7 +36,7 @@ const getDefaultParams = () => {
} }
}; };
const getDefaultHeaders = () => {}; const getDefaultHeaders = () => { };
/** /**
* axios instance * axios instance
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment