Commit c58cec36 authored by lvweichao's avatar lvweichao

Merge branch 'dev' of https://git.yidian-inc.com:8021/bp/op-web-service into dev

parents af1b43f9 808dbc70
...@@ -12,7 +12,7 @@ const env = process.env.NODE_ENV; ...@@ -12,7 +12,7 @@ const env = process.env.NODE_ENV;
const app = new Koa(); const app = new Koa();
app.use(serve(path.join(__dirname, './public'))); app.use(serve(path.join(__dirname, './public')));
app.use(koaBody({multipart: true})); app.use(koaBody({ multipart: true }));
app.use(bodyParser()); app.use(bodyParser());
app.use(router.routes(), router.allowedMethods()); app.use(router.routes(), router.allowedMethods());
......
...@@ -61,19 +61,29 @@ exports.get_token = async (ctx, next) => { ...@@ -61,19 +61,29 @@ exports.get_token = async (ctx, next) => {
exports.get_ks3_config = async (ctx, next) => { exports.get_ks3_config = async (ctx, next) => {
console.log(8888, await _get_bucket(ctx, next)) console.log(8888, await _get_bucket(ctx, next))
const { result: { bucket }} = JSON.parse(await _get_bucket(ctx, next)) const { result: { bucket } } = JSON.parse(await _get_bucket(ctx, next))
const { result: { objectId }} = JSON.parse(await _get_obj_id(ctx, next)) const { result: { objectId } } = JSON.parse(await _get_obj_id(ctx, next))
console.log(888834333, bucket, objectId) console.log(888834333, bucket, objectId)
const getExpires = (seconds) => { const getExpires = (seconds) => {
return Math.round(new Date().getTime()/1000) + seconds; return Math.round(new Date().getTime() / 1000) + seconds;
}; };
const policy = { const policy = {
"expiration": new Date(getExpires(3600)*1000).toISOString(), //一小时后 "expiration": new Date(getExpires(3600) * 1000).toISOString(), //一小时后
"conditions": [ "conditions": [
["eq","$bucket", bucket] ["eq", "$bucket", bucket],
["starts-with", "$acl", "public-read"],
// ["starts-with", "$key", ""],
// ["starts-with", "$name", ""], //表单中传了name字段,也需要加到policy中
// ["starts-with", "$x-kss-meta-custom-param1",""],
// ["starts-with", "$x-kss-newfilename-in-body",""],//必须只包含小写字符
// ["starts-with", "$Cache-Control",""],
// ["starts-with", "$Expires", ""],
// ["starts-with", "$Content-Disposition", ""],
// ["starts-with", "$Content-Type",""],
// ["starts-with", "$Content-Encoding",""]
] ]
} }
const stringToSign = Ks3Util.Base64.encode(JSON.stringify(policy)) const stringToSign = Ks3Util.Base64.encode(JSON.stringify(policy))
...@@ -97,21 +107,21 @@ exports.upload_ks3_image = async (ctx, next) => { ...@@ -97,21 +107,21 @@ exports.upload_ks3_image = async (ctx, next) => {
// console.log('upload_ks3_image::::::', ctx.request.files) // console.log('upload_ks3_image::::::', ctx.request.files)
const file = ctx.request.files && ctx.request.files.file; const file = ctx.request.files && ctx.request.files.file;
console.log(888899, await _get_bucket(ctx, next)) console.log(888899, await _get_bucket(ctx, next))
const { result: { bucket }} = JSON.parse(await _get_bucket(ctx, next)) const { result: { bucket } } = JSON.parse(await _get_bucket(ctx, next))
const { result: { objectId }} = JSON.parse(await _get_obj_id(ctx, next)) const { result: { objectId } } = JSON.parse(await _get_obj_id(ctx, next))
console.log(3334444, file.type) console.log(3334444, file.type)
const getExpires = (seconds) => { const getExpires = (seconds) => {
return Math.round(new Date().getTime()/1000) + seconds; return Math.round(new Date().getTime() / 1000) + seconds;
}; };
const acl = 'public-read'; const acl = 'public-read';
const policy = { const policy = {
"expiration": new Date(getExpires(3600)*1000).toISOString(), //一小时后 "expiration": new Date(getExpires(3600) * 1000).toISOString(), //一小时后
"conditions": [ "conditions": [
["eq","$bucket", bucket], ["eq", "$bucket", bucket],
["starts-with","$acl", "public-read"], ["starts-with", "$acl", "public-read"],
] ]
} }
const stringToSign = Ks3Util.Base64.encode(JSON.stringify(policy)) const stringToSign = Ks3Util.Base64.encode(JSON.stringify(policy))
...@@ -141,14 +151,14 @@ exports.upload_ks3_image = async (ctx, next) => { ...@@ -141,14 +151,14 @@ exports.upload_ks3_image = async (ctx, next) => {
'x-kss-date': date, 'x-kss-date': date,
[attrAcl]: acl [attrAcl]: acl
} }
const headerSignature = Ks3Util.generateToken(KS3_CONFIG.SK, bucket, objectId, 'PUT', file.type, headersForSign, date) const headerSignature = Ks3Util.generateToken(KS3_CONFIG.SK, bucket, objectId, 'PUT', file.type, headersForSign, date)
const hmac = crypto.createHmac('sha256', KS3_CONFIG.SK); const hmac = crypto.createHmac('sha256', KS3_CONFIG.SK);
hmac.update(headerSignature); hmac.update(headerSignature);
console.log(hmac.digest('hex')); console.log(hmac.digest('hex'));
console.log('headerSignature::::', headerSignature) console.log('headerSignature::::', headerSignature)
const headers = { const headers = {
...headersForSign, ...headersForSign,
......
...@@ -51,6 +51,8 @@ exports.getUpdate_role = async (ctx, next) => { ...@@ -51,6 +51,8 @@ exports.getUpdate_role = async (ctx, next) => {
json: true, json: true,
body: ctx.request.body body: ctx.request.body
} }
console.log(opts, 'optsoptsoptsopts888888')
console.log(ctx.request.query, 'pppp')
ctx.body = await req(ctx, opts) ctx.body = await req(ctx, opts)
} }
exports.getDelete_role = async (ctx, next) => { exports.getDelete_role = async (ctx, next) => {
......
...@@ -15,7 +15,7 @@ const headerConfig = { ...@@ -15,7 +15,7 @@ const headerConfig = {
name: '企业认证管理' name: '企业认证管理'
}, },
{ {
path: '/life-no/life', path: '/lifeNo',
name: '生活号管理' name: '生活号管理'
}, },
{ {
......
...@@ -41,7 +41,7 @@ export default { ...@@ -41,7 +41,7 @@ export default {
}; };
}, },
computed: { computed: {
menuItemsWithAuth: function() { menuItemsWithAuth: function () {
const keys = Object.keys(this.$store.getters.subPermissions) const keys = Object.keys(this.$store.getters.subPermissions)
return this.menuItems.filter(ele => keys.includes(ele.key)) return this.menuItems.filter(ele => keys.includes(ele.key))
}, },
...@@ -50,7 +50,7 @@ export default { ...@@ -50,7 +50,7 @@ export default {
return this.$route.path; return this.$route.path;
}, },
}, },
beforeMount() { beforeMount () {
}, },
methods: {}, methods: {},
}; };
......
...@@ -38,10 +38,11 @@ export const PAGEMODULE_PERMISSIONNAME = { ...@@ -38,10 +38,11 @@ export const PAGEMODULE_PERMISSIONNAME = {
enterprise: 'enterprise_certification_management', enterprise: 'enterprise_certification_management',
lifeNo: 'life_official_account_management', lifeNo: 'life_official_account_management',
role: 'role_management', role: 'role_management',
// roleAddRole: 'role_addRole',
user: 'user_management' user: 'user_management'
} }
export const PERMISSIONNAME_PAGEMODULE = (function() { export const PERMISSIONNAME_PAGEMODULE = (function () {
const obj = {} const obj = {}
for (let ele in PAGEMODULE_PERMISSIONNAME) { for (let ele in PAGEMODULE_PERMISSIONNAME) {
obj[PAGEMODULE_PERMISSIONNAME[ele]] = ele obj[PAGEMODULE_PERMISSIONNAME[ele]] = ele
...@@ -57,10 +58,8 @@ export const PATH_PERMISSION_NAME = { ...@@ -57,10 +58,8 @@ export const PATH_PERMISSION_NAME = {
'/enterprise/certification': 'enterprise_certification_management', '/enterprise/certification': 'enterprise_certification_management',
'/enterprise/audit': 'enterprise_certification_management.audit', '/enterprise/audit': 'enterprise_certification_management.audit',
'/enterprise/establish': 'enterprise_certification_management.create', '/enterprise/establish': 'enterprise_certification_management.create',
'/lifeNo': 'life_official_account_management', '/lifeNo': 'life_official_account_management',
'/roleManageRole': 'role_management', '/roleManageRole': 'role_management',
// '/roleAddRole': 'role_addRole',
'/user': 'user_management' '/user': 'user_management'
} }
\ No newline at end of file
<template> <template>
<div class="addRole"> <div class="addRole">
<el-button type="primary" @click="newAddRole">新增</el-button> <el-button
type="primary"
v-if="permission.get('create')"
@click="newAddRole"
>新增</el-button
>
<!-- 角色列表 --> <!-- 角色列表 -->
<el-table <el-table
:data="roleDataList" :data="roleDataList"
...@@ -28,7 +33,7 @@ ...@@ -28,7 +33,7 @@
<el-form> <el-form>
<!-- 编辑 --> <!-- 编辑 -->
<div v-if="edit"> <div v-if="edit">
<roleDetail :role_info_detail="role_info_detail" /> <roleInfo :role_info_detail="role_info_detail" />
</div> </div>
<!-- 新增 --> <!-- 新增 -->
<el-form-item label="角色名称" :label-width="formLabelWidth"> <el-form-item label="角色名称" :label-width="formLabelWidth">
...@@ -57,7 +62,7 @@ ...@@ -57,7 +62,7 @@
</template> </template>
<script> <script>
import page from "../components/Pagination" import page from "../components/Pagination"
import roleDetail from './components/roleDetail' import roleInfo from './components/roleInfo'
import { import {
getRole_list as reqGetRole_list, getAdd_role as reqGetAdd_role, getRole_list as reqGetRole_list, getAdd_role as reqGetAdd_role,
getAll_role_list as reqGetAll_role_list, getAll_role_list as reqGetAll_role_list,
...@@ -66,20 +71,27 @@ import { ...@@ -66,20 +71,27 @@ import {
} from "../../service/role"; } from "../../service/role";
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
export default { export default {
name: 'KeepaddRole',
components: { components: {
page, page,
roleDetail roleInfo
},
computed: {
permission () {
const modulePermissions = this.$store.getters.moduleSubPermissions('role') || [];
return new Map(modulePermissions.map(ele => [ele.name, true]))
},
}, },
data () { data () {
return { return {
parmas: { parmas: {
page: 1, page: 1,
page_size: 10 page_size: 20
}, },
user_info: { user_info: {
user_name: "jianghaiming", name: "jianghaiming",
user_email: "jianghaiming@126.com", email: "jianghaiming@126.com",
op_cur_user: "jianghaiming@yidian-inc.com", // op_cur_user: "jianghaiming@yidian-inc.com",
}, },
roleDataList: [], roleDataList: [],
totalNum: null, totalNum: null,
...@@ -120,8 +132,9 @@ export default { ...@@ -120,8 +132,9 @@ export default {
this.$router.push({ name: 'RoleDetail', query: { roleId: row.role_id } }); this.$router.push({ name: 'RoleDetail', query: { roleId: row.role_id } });
}, },
getPermissionsAll () { getPermissionsAll () {
let { user_name, user_email } = this.user_info // this.user_info = this.$store.state.userInfo
reqGetAll_role_list(user_name, user_email).then(res => { let { email } = this.user_info
reqGetAll_role_list(email).then(res => {
this.permissionsAll = res this.permissionsAll = res
}) })
}, },
...@@ -131,11 +144,16 @@ export default { ...@@ -131,11 +144,16 @@ export default {
this.roleTitle = '新增角色' this.roleTitle = '新增角色'
this.edit = false this.edit = false
this.roleName = "" this.roleName = ""
this.selectedOptions = []
}, },
//获取角色列表 //获取角色列表
getGetRole_list () { getGetRole_list () {
let { page, page_size } = this.parmas let { page, page_size } = this.parmas
reqGetRole_list(page, page_size).then(res => { let parmasRole_list = {
page,
page_size,
}
reqGetRole_list(parmasRole_list).then(res => {
this.roleDataList = res.result this.roleDataList = res.result
this.totalNum = res.count this.totalNum = res.count
}) })
...@@ -152,8 +170,13 @@ export default { ...@@ -152,8 +170,13 @@ export default {
this.checkFn() this.checkFn()
return false return false
} }
let role_name = this.roleName, permissions = this.currentRolePrivilege let { email } = this.$store.state.userInfo //当前登陆人
reqGetAdd_role(role_name, permissions).then(res => { let parmasAdd_role = {
op_cur_user: email,
role_name: this.roleName,
permissions: this.currentRolePrivilege
}
reqGetAdd_role(parmasAdd_role).then(res => {
if (res.status === "success") { if (res.status === "success") {
this.dialogFormVisible = false this.dialogFormVisible = false
this.getGetRole_list() this.getGetRole_list()
...@@ -205,7 +228,6 @@ export default { ...@@ -205,7 +228,6 @@ export default {
} }
}) })
this.selectedOptions = selectData this.selectedOptions = selectData
console.log(this.selectedOptions, '00008u989')
}, },
//编辑角色 //编辑角色
getUpdate_role () { getUpdate_role () {
...@@ -213,10 +235,16 @@ export default { ...@@ -213,10 +235,16 @@ export default {
this.checkFn() this.checkFn()
return false return false
} }
let { role_name, role_id, role_status } = this.role_info_detail let { role_id, role_status } = this.role_info_detail
let { op_cur_user } = this.user_info let { email } = this.$store.state.userInfo//当前登陆人
role_name = this.roleName let parmasUpdate_role = {
reqGetUpdate_role(op_cur_user, role_name, role_id, role_status, this.permissionsUpdate).then(res => { op_cur_user: email,
role_name: this.roleName,
role_id,
role_status,
permissions: this.permissionsUpdate
}
reqGetUpdate_role(parmasUpdate_role).then(res => {
if (res.status === "success") { if (res.status === "success") {
this.dialogFormVisible = false this.dialogFormVisible = false
this.edit = true this.edit = true
...@@ -233,7 +261,6 @@ export default { ...@@ -233,7 +261,6 @@ export default {
} }
}, },
parentCateChange (id) { parentCateChange (id) {
console.log(id, '000')
this.getSelectedOptions(id) this.getSelectedOptions(id)
}, },
getSelectedOptions (selectedOptions) { getSelectedOptions (selectedOptions) {
......
...@@ -35,9 +35,10 @@ ...@@ -35,9 +35,10 @@
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="状态" label="状态"
prop="role_status" :formatter="hasStatusFormat"
align="center" align="center"
></el-table-column> >
</el-table-column>
<el-table-column <el-table-column
label="最后修改日期" label="最后修改日期"
prop="update_time" prop="update_time"
...@@ -51,7 +52,10 @@ ...@@ -51,7 +52,10 @@
<el-table-column label="操作" align="center"> <el-table-column label="操作" align="center">
<template #default="scope"> <template #default="scope">
<el-button <el-button
v-if="!(scope.row.role_status == 2 || scope.row.role_status == 3)" v-if="
!(scope.row.role_status == 2 || scope.row.role_status == 3) &&
permission.get('edit')
"
size="mini" size="mini"
@click.stop="handelModify(scope.row)" @click.stop="handelModify(scope.row)"
type="primary" type="primary"
...@@ -59,18 +63,21 @@ ...@@ -59,18 +63,21 @@
> >
<el-button <el-button
size="mini" size="mini"
v-if="permission.get('delete')"
@click.stop="handelDelete(scope.row)" @click.stop="handelDelete(scope.row)"
type="warning" type="warning"
>删除</el-button >删除</el-button
> >
<el-button <el-button
size="mini" size="mini"
v-if="permission.get('disable')"
@click.stop="handelDisable(scope.row)" @click.stop="handelDisable(scope.row)"
type="danger" type="danger"
>禁用</el-button >禁用</el-button
> >
<el-button <el-button
size="mini" size="mini"
v-if="permission.get('enable')"
@click.stop="handelEnable(scope.row)" @click.stop="handelEnable(scope.row)"
type="success" type="success"
>启用</el-button >启用</el-button
...@@ -116,11 +123,17 @@ import { ...@@ -116,11 +123,17 @@ import {
getDelete_role as reqGetDelete_role getDelete_role as reqGetDelete_role
} from "../../service/role"; } from "../../service/role";
export default { export default {
name: 'RoleManagement', name: 'KeepRoleManagement',
components: { components: {
Layout, Layout,
page, page,
}, },
computed: {
permission () {
const modulePermissions = this.$store.getters.moduleSubPermissions('role') || [];
return new Map(modulePermissions.map(ele => [ele.name, true]))
},
},
data () { data () {
return { return {
searchForm: { searchForm: {
...@@ -128,13 +141,13 @@ export default { ...@@ -128,13 +141,13 @@ export default {
roleStatus: '' roleStatus: ''
}, },
user_info: { user_info: {
user_name: this.$store.state.name, name: "jianghaiming@yidian-inc.com",
op_cur_user: "jianghaiming@yidian-inc.com", // op_cur_user: "jianghaiming@yidian-inc.com",
user_email: "jianghaiming@126.com", email: "jianghaiming@126.com",
}, },
parmas: { parmas: {
page: 1, page: 1,
page_size: 10 page_size: 20
}, },
totalNum: null, totalNum: null,
props: { props: {
...@@ -160,19 +173,29 @@ export default { ...@@ -160,19 +173,29 @@ export default {
this.getPermissionsAll() this.getPermissionsAll()
}, },
methods: { methods: {
hasStatusFormat (row) {
let statusText = ['正常', '禁用', '删除']
return statusText[row.role_status - 1]
},
toRoleDetail (row) { toRoleDetail (row) {
this.$router.push({ name: 'RoleDetail', query: { roleId: row.role_id } }); this.$router.push({ name: 'RoleDetail', query: { roleId: row.role_id } });
}, },
getPermissionsAll () { getPermissionsAll () {
let { user_name, user_email } = this.user_info let { email } = this.user_info
reqGetAll_role_list(user_name, user_email).then(res => { reqGetAll_role_list(email).then(res => {
this.permissionsAll = res this.permissionsAll = res
}) })
}, },
//获取角色列表 //获取角色列表
getGetRole_list () { getGetRole_list () {
let { page, page_size } = this.parmas let { page, page_size } = this.parmas
reqGetRole_list(page, page_size, this.searchForm.roleStatus, this.searchForm.roleName).then(res => { let parmasRole_list = {
page,
page_size,
role_status: this.searchForm.roleStatus,
role_name: this.searchForm.roleName
}
reqGetRole_list(parmasRole_list).then(res => {
this.managementList = res.result this.managementList = res.result
this.totalNum = res.count this.totalNum = res.count
}) })
...@@ -228,7 +251,7 @@ export default { ...@@ -228,7 +251,7 @@ export default {
role_name, role_name,
} }
this.permissionsUpdate = permissions this.permissionsUpdate = permissions
let { op_cur_user } = this.user_info let { email } = this.$store.state.userInfo //当前用户
let role_status let role_status
if (type === "disable") { if (type === "disable") {
role_status = 2 role_status = 2
...@@ -242,7 +265,7 @@ export default { ...@@ -242,7 +265,7 @@ export default {
role_status = "" role_status = ""
} }
if (type !== "modify") { if (type !== "modify") {
this.getUpdate_role(op_cur_user, role_name, role_id, role_status, permissions) this.getUpdate_role(email, role_name, role_id, role_status, permissions)
} }
}) })
}, },
...@@ -284,8 +307,15 @@ export default { ...@@ -284,8 +307,15 @@ export default {
this.openBounced("disable", row.role_id) this.openBounced("disable", row.role_id)
}, },
//编辑列表操作 //编辑列表操作
getUpdate_role (op_cur_user, role_name, role_id, role_status, permissions) { getUpdate_role (email, role_name, role_id, role_status, permissions) {
reqGetUpdate_role(op_cur_user, role_name, role_id, role_status, permissions).then(res => { let parmasUpdate_role = {
op_cur_user: email,
role_name: role_name,
role_id,
role_status,
permissions,
}
reqGetUpdate_role(parmasUpdate_role).then(res => {
if (res.status === "success") { if (res.status === "success") {
this.dialogVisible = false this.dialogVisible = false
this.getGetRole_list() this.getGetRole_list()
...@@ -305,10 +335,10 @@ export default { ...@@ -305,10 +335,10 @@ export default {
}, },
//确认修改 //确认修改
confirm () { confirm () {
let { op_cur_user } = this.user_info let { email } = this.$store.state.userInfo
let { role_id, role_name } = this.role_info_detail let { role_id, role_name } = this.role_info_detail
let role_status = '' let role_status = ''
this.getUpdate_role(op_cur_user, role_name, role_id, role_status, this.currentRolePrivilege) this.getUpdate_role(email, role_name, role_id, role_status, this.currentRolePrivilege)
}, },
parentCateChange (id) { parentCateChange (id) {
this.getSelectedOptions(id) this.getSelectedOptions(id)
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item> <el-descriptions-item>
<template #label> 创建人账号 </template> <template #label> 创建人账号 </template>
{{ role_info_detail.update_user_name }} {{ role_info_detail.create_user_name }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item> <el-descriptions-item>
<template #label> 创建时间 </template> <template #label> 创建时间 </template>
...@@ -42,18 +42,6 @@ ...@@ -42,18 +42,6 @@
<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 class="content">
<!-- <el-tree
:data="permissionsAll"
show-checkbox
:default-checked-keys="checkedKeys"
:default-expanded-keys="expandedKeys"
node-key="id"
ref="tree"
highlight-current
:props="defaultProps"
:expand-on-click-node="false"
>
</el-tree> -->
<el-cascader <el-cascader
v-model="selectedOptions" v-model="selectedOptions"
:options="permissionsAll" :options="permissionsAll"
...@@ -73,13 +61,9 @@ export default { ...@@ -73,13 +61,9 @@ export default {
data () { data () {
return { return {
roleId: this.$route.query.roleId, roleId: this.$route.query.roleId,
defaultProps: {
children: 'sub_permissions',
label: 'desc'
},
user_info: { user_info: {
user_name: "jianghaiming", name: "jianghaiming",
user_email: "jianghaiming@126.com", email: "jianghaiming@126.com",
}, },
props: { props: {
multiple: true,//设置为多选 multiple: true,//设置为多选
...@@ -88,8 +72,6 @@ export default { ...@@ -88,8 +72,6 @@ export default {
children: 'sub_permissions'//children值和哪个值绑定 children: 'sub_permissions'//children值和哪个值绑定
}, },
selectedOptions: [], selectedOptions: [],
checkedKeys: [],
expandedKeys: [],
permissionsAll: [], permissionsAll: [],
role_info_detail: {//详情非编辑项 role_info_detail: {//详情非编辑项
role_id: "", role_id: "",
...@@ -99,19 +81,15 @@ export default { ...@@ -99,19 +81,15 @@ export default {
update_user_name: "", update_user_name: "",
create_time: "", create_time: "",
create_user_name: "" create_user_name: ""
}, }
} }
}, },
created () { created () {
let { user_name, user_email } = this.user_info // this.user_info = this.$store.state.userInfo
reqGetAll_role_list(user_name, user_email).then(res => { this.roleId = this.$route.query.roleId
let { email } = this.user_info
reqGetAll_role_list(email).then(res => {
this.permissionsAll = res this.permissionsAll = res
// this.permissionsAll.forEach(item => {
// item.disabled = true
// item.sub_permissions.forEach(element => {
// element.disabled = true
// })
// })
}) })
reqGet_role_info(this.roleId).then((res) => { reqGet_role_info(this.roleId).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 } = res
...@@ -133,18 +111,6 @@ export default { ...@@ -133,18 +111,6 @@ export default {
}, },
//遍历回显值selectedOptions //遍历回显值selectedOptions
editEchoData (permissions) { editEchoData (permissions) {
// let childArr = [], selectExpandedKeys = []
// permissions.forEach(item => {
// selectExpandedKeys.push(item.id)
// if (item.sub_permissions) {
// item.sub_permissions.forEach(element => {
// childArr.push(element.id)
// })
// }
// })
// this.checkedKeys = childArr
// this.expandedKeys = selectExpandedKeys
// console.log(this.checkedKeys, this.expandedKeys, ' this.expandedKeys ')
let selectData = [] let selectData = []
permissions.map(item => { permissions.map(item => {
let one = { id: item.id } let one = { id: item.id }
......
...@@ -53,7 +53,7 @@ import { getUser_detail as reqGetUser_detail } from "../../service/user"; ...@@ -53,7 +53,7 @@ import { getUser_detail as reqGetUser_detail } from "../../service/user";
export default { export default {
data () { data () {
return { return {
user_id: '1', user_id: this.$route.query.userId,
user_info: {}, user_info: {},
role_list: []//角色池 role_list: []//角色池
} }
......
...@@ -31,7 +31,9 @@ ...@@ -31,7 +31,9 @@
<el-form-item class="func-btn"> <el-form-item class="func-btn">
<el-button type="primary" @click="getUserList">查询</el-button> <el-button type="primary" @click="getUserList">查询</el-button>
<el-button @click="onReset">重置</el-button> <el-button @click="onReset">重置</el-button>
<el-button @click="createUser" :disabled="!permission.get('create')">新建用户</el-button> <el-button @click="createUser" :disabled="!permission.get('create')"
>新建用户</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-table :data="renderUserList" border style="width: 100%"> <el-table :data="renderUserList" border style="width: 100%">
...@@ -50,7 +52,11 @@ ...@@ -50,7 +52,11 @@
<el-button type="text" size="small" @click="checkUser(scope.row)" <el-button type="text" size="small" @click="checkUser(scope.row)"
>查看</el-button >查看</el-button
> >
<el-button @click="editUser(scope.row)" type="text" size="small" :disabled="!permission.get('edit')" <el-button
@click="editUser(scope.row)"
type="text"
size="small"
:disabled="!permission.get('edit')"
>修改</el-button >修改</el-button
> >
<el-button <el-button
...@@ -143,9 +149,10 @@ export default { ...@@ -143,9 +149,10 @@ export default {
}, },
computed: { computed: {
permission() { permission() {
const modulePermissions = this.$store.getters.moduleSubPermissions('user') || []; const modulePermissions =
console.log('Current page func-permissions:', modulePermissions); this.$store.getters.moduleSubPermissions("user") || [];
return new Map(modulePermissions.map(ele => [ele.name, true])) console.log("Current page func-permissions:", modulePermissions);
return new Map(modulePermissions.map((ele) => [ele.name, true]));
}, },
renderUserList() { renderUserList() {
......
...@@ -18,7 +18,7 @@ export default { ...@@ -18,7 +18,7 @@ export default {
data () { data () {
return { return {
currentPage: 1, currentPage: 1,
page_size: 10 page_size: 20
} }
}, },
methods: { methods: {
......
...@@ -63,6 +63,9 @@ const routes = [ ...@@ -63,6 +63,9 @@ const routes = [
path: '/lifeNo', path: '/lifeNo',
name: 'LifeNo', name: 'LifeNo',
component: LifeNo, component: LifeNo,
meta: {
requireAuth: true
}
}, },
{ {
path: '/lifeNoDetail', path: '/lifeNoDetail',
...@@ -78,7 +81,7 @@ const routes = [ ...@@ -78,7 +81,7 @@ const routes = [
{ {
path: '/userDetail', path: '/userDetail',
name: 'UserDetail', name: 'UserDetail',
component: UserDetail, component: UserDetail
}, },
//角色管理 //角色管理
{ {
...@@ -86,13 +89,17 @@ const routes = [ ...@@ -86,13 +89,17 @@ const routes = [
name: 'AddRole', name: 'AddRole',
component: AddRole, component: AddRole,
meta: { meta: {
requireAuth: true, requireAuth: true
} }
}, },
{ {
path: '/roleManageRole', path: '/roleManageRole',
name: 'ManageRole', name: 'ManageRole',
component: ManageRole component: ManageRole,
meta: {
requireAuth: true,
keepAlive: true
}
}, },
{ {
path: '/roleRoleDetail', path: '/roleRoleDetail',
......
import axios from '../utils/request'; import axios from '../utils/request';
// import qs from 'qs'; // import qs from 'qs';
//角色列表 //角色列表
export async function getRole_list (page, page_size, role_status, role_name) { export async function getRole_list (parmasRole_list) {
const res = await axios.post("/api/v1/merchant/authority/role_list", { const res = await axios.post("/api/v1/merchant/authority/role_list", parmasRole_list)
page, page_size, role_status, role_name
})
return res; return res;
} }
//添加角色 //添加角色
export async function getAdd_role (role_name, permissions) { export async function getAdd_role (parmasAdd_role) {
const res = await axios.post("/api/v1/merchant/authority/add_role", { const res = await axios.post("/api/v1/merchant/authority/add_role", parmasAdd_role)
role_name, permissions
})
return res; return res;
} }
//角色编辑 //角色编辑
export async function getUpdate_role (op_cur_user, role_name, role_id, role_status, permissions) { export async function getUpdate_role (parmasUpdate_role) {
const res = await axios.post("/api/v1/merchant/authority/update_role", { const res = await axios.post("/api/v1/merchant/authority/update_role", parmasUpdate_role)
op_cur_user, role_name, role_id, role_status, permissions
})
return res; return res;
} }
//角色详情 //角色详情
...@@ -37,9 +31,9 @@ export async function getDelete_role (role_id) { ...@@ -37,9 +31,9 @@ export async function getDelete_role (role_id) {
} }
//权限列表 //权限列表
export async function getAll_role_list (user_name, user_email) { export async function getAll_role_list (user_email) {
const res = await axios.post("/api/v1/merchant/authority/get_role_list", { const res = await axios.post("/api/v1/merchant/authority/get_role_list", {
user_name, user_email user_email
}) })
return res.permissions; return res.permissions;
} }
...@@ -8,15 +8,15 @@ export default createStore({ ...@@ -8,15 +8,15 @@ export default createStore({
userInfo: null, userInfo: null,
}, },
mutations: { mutations: {
updateUserPermission(state, payload) { updateUserPermission (state, payload) {
state.permissions = payload; state.permissions = payload;
}, },
updateUserInfo(state, payload) { updateUserInfo (state, payload) {
state.userInfo = payload; state.userInfo = payload;
} }
}, },
actions: { actions: {
async updateUserPermission({ commit }, payload) { async updateUserPermission ({ commit }, payload) {
const { permissions = [] } = await getPermissions(payload.email); const { permissions = [] } = await getPermissions(payload.email);
console.log("VUEX action updateUserPermission::", permissions); console.log("VUEX action updateUserPermission::", permissions);
commit('updateUserPermission', permissions) commit('updateUserPermission', permissions)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
import store from '../store' import store from '../store'
import { PATH_PERMISSION_NAME } from '../config/pageconfig' import { PATH_PERMISSION_NAME } from '../config/pageconfig'
function getPermissionObj() { function getPermissionObj () {
// 支持到二级权限 // 支持到二级权限
const permissions = store.state.permissions || []; const permissions = store.state.permissions || [];
const authObj = {}; const authObj = {};
...@@ -23,8 +23,8 @@ function getPermissionObj() { ...@@ -23,8 +23,8 @@ function getPermissionObj() {
* @param {*} path * @param {*} path
* @returns * @returns
*/ */
export function checkPathAuth(path) { export function checkPathAuth (path) {
const authObj = getPermissionObj(); const authObj = getPermissionObj();
if (path in PATH_PERMISSION_NAME) { if (path in PATH_PERMISSION_NAME) {
const authArr = PATH_PERMISSION_NAME[path].split('.'); const authArr = PATH_PERMISSION_NAME[path].split('.');
...@@ -58,4 +58,4 @@ export function checkPathAuth(path) { ...@@ -58,4 +58,4 @@ export function checkPathAuth(path) {
// const authObj = getPermissionObj(); // const authObj = getPermissionObj();
// const modules = Object.keys(authObj).map(ele => PERMISSIONNAME_PAGEMODULE[ele]) // const modules = Object.keys(authObj).map(ele => PERMISSIONNAME_PAGEMODULE[ele])
// return modules.filter(ele => !!ele) // return modules.filter(ele => !!ele)
// } // }
\ No newline at end of file
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