Mod aaa-12 增加权限,修改域的增加、删除功能、修改role与user界面
SOL: 修改人:maxiaonan 检视人:maxiaonan
This commit is contained in:
parent
584ce90ef4
commit
339579d181
|
@ -111,7 +111,7 @@ export default {
|
||||||
this.setToken(data.access_token)
|
this.setToken(data.access_token)
|
||||||
this.setExpireTime(data.expires_in)
|
this.setExpireTime(data.expires_in)
|
||||||
this.setUser(data.user)
|
this.setUser(data.user)
|
||||||
this.setPermissions(['user:view', 'role:update', 'dept:add', 'resource:view', 'role:add', 'role:export', 'menu:update', 'menu:export', 'resource:export', 'dept:export', 'menu:view', 'role:view', 'dept:delete', 'user:export', 'role:delete', 'menu:delete', 'dept:view', 'user:add', 'user:delete', 'log:view', 'resource:delete', 'user:kickout', 'user:update', 'dept:update', 'menu:add', 'log:delete', 'domain:view', 'redis:view', 'log:export', 'user:reset', 'user:online', 'resource:add'])
|
this.setPermissions(['user:view', 'role:update', 'domain:view', 'domain:export', 'domain:add', 'domain:delete', 'domain:update', 'dept:add', 'resource:view', 'role:add', 'role:export', 'menu:update', 'menu:export', 'resource:export', 'dept:export', 'menu:view', 'role:view', 'dept:delete', 'user:export', 'role:delete', 'menu:delete', 'dept:view', 'user:add', 'user:delete', 'log:view', 'resource:delete', 'user:kickout', 'user:update', 'dept:update', 'menu:add', 'log:delete', 'domain:view', 'redis:view', 'log:export', 'user:reset', 'user:online', 'resource:add'])
|
||||||
this.setRoles(['管理员'])
|
this.setRoles(['管理员'])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -188,7 +188,7 @@ export default {
|
||||||
content: '当您点击确定按钮后,这些记录将会被彻底删除,如果其包含子记录,也将一并删除!',
|
content: '当您点击确定按钮后,这些记录将会被彻底删除,如果其包含子记录,也将一并删除!',
|
||||||
centered: true,
|
centered: true,
|
||||||
onOk () {
|
onOk () {
|
||||||
that.$delete('domains/' + that.selectedRowKeys.join(',')).then(() => {
|
that.$delete('auth/v1/domains/' + that.selectedRowKeys.join(',')).then(() => {
|
||||||
that.$message.success('删除成功')
|
that.$message.success('删除成功')
|
||||||
that.selectedRowKeys = []
|
that.selectedRowKeys = []
|
||||||
that.fetch()
|
that.fetch()
|
||||||
|
@ -207,7 +207,7 @@ export default {
|
||||||
sortField = sortedInfo.field
|
sortField = sortedInfo.field
|
||||||
sortOrder = sortedInfo.order
|
sortOrder = sortedInfo.order
|
||||||
}
|
}
|
||||||
this.$export('domains/excel', {
|
this.$export('auth/v1/domains/excel', {
|
||||||
sortField: sortField,
|
sortField: sortField,
|
||||||
sortOrder: sortOrder,
|
sortOrder: sortOrder,
|
||||||
...this.queryParams
|
...this.queryParams
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
]}]"/>
|
]}]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item label='域编号' v-bind="formItemLayout">
|
<a-form-item label='域编号' v-bind="formItemLayout">
|
||||||
<a-input-number v-model="domain.domainid" style="width: 100%"/>
|
<a-input v-model="domain.domainid" style="width: 100%"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item label='域描述' v-bind="formItemLayout">
|
<a-form-item label='域描述' v-bind="formItemLayout">
|
||||||
<a-input v-model="domain.description" style="width: 100%"/>
|
<a-input v-model="domain.description" style="width: 100%"/>
|
||||||
|
@ -56,7 +56,6 @@ export default {
|
||||||
methods: {
|
methods: {
|
||||||
reset () {
|
reset () {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.expandedKeys = this.checkedKeys = []
|
|
||||||
this.domain = {}
|
this.domain = {}
|
||||||
this.form.resetFields()
|
this.form.resetFields()
|
||||||
},
|
},
|
||||||
|
@ -66,17 +65,12 @@ export default {
|
||||||
},
|
},
|
||||||
|
|
||||||
handleSubmit () {
|
handleSubmit () {
|
||||||
let checkedArr = Object.is(this.checkedKeys.checked, undefined) ? this.checkedKeys : this.checkedKeys.checked
|
|
||||||
this.form.validateFields((err, values) => {
|
this.form.validateFields((err, values) => {
|
||||||
if (!err) {
|
if (!err) {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
if (checkedArr.length) {
|
let domain = this.form.getFieldsValue()
|
||||||
this.dept.parentId = checkedArr[0]
|
this.$bodyRequest('post', 'auth/v1/domains', {
|
||||||
} else {
|
...domain
|
||||||
this.dept.parentId = ''
|
|
||||||
}
|
|
||||||
this.$post('auth/v1/domains', {
|
|
||||||
...this.dept
|
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.reset()
|
this.reset()
|
||||||
this.$emit('success')
|
this.$emit('success')
|
||||||
|
|
|
@ -10,17 +10,17 @@
|
||||||
style="height: calc(100% - 55px);overflow: auto;padding-bottom: 53px;">
|
style="height: calc(100% - 55px);overflow: auto;padding-bottom: 53px;">
|
||||||
<a-form :form="form">
|
<a-form :form="form">
|
||||||
<a-form-item label='域名称' v-bind="formItemLayout">
|
<a-form-item label='域名称' v-bind="formItemLayout">
|
||||||
<a-input v-decorator="['domainName',
|
<a-input v-decorator="['name',
|
||||||
{rules: [
|
{rules: [
|
||||||
{ required: true, message: '域名称不能为空'},
|
{ required: true, message: '域名称不能为空'},
|
||||||
{ max: 20, message: '长度不能超过20个字符'}
|
{ max: 20, message: '长度不能超过20个字符'}
|
||||||
]}]"/>
|
]}]"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item label='域编号' v-bind="formItemLayout">
|
<a-form-item label='域编号' v-bind="formItemLayout">
|
||||||
<a-input-number v-decorator="['orderNum']" style="width: 100%"/>
|
<a-input v-decorator="['domainid']" style="width: 100%"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
<a-form-item label='域描述' v-bind="formItemLayout">
|
<a-form-item label='域描述' v-bind="formItemLayout">
|
||||||
<a-input v-decorator="['domainId']" style="width: 100%"/>
|
<a-input v-decorator="['description']" style="width: 100%"/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</a-form>
|
</a-form>
|
||||||
<div class="drawer-bootom-button">
|
<div class="drawer-bootom-button">
|
||||||
|
@ -68,21 +68,20 @@ export default {
|
||||||
this.expandedKeys = expandedKeys
|
this.expandedKeys = expandedKeys
|
||||||
},
|
},
|
||||||
setFormValues ({...domain}) {
|
setFormValues ({...domain}) {
|
||||||
this.form.getFieldDecorator('domainName')
|
this.form.getFieldDecorator('name')
|
||||||
this.form.setFieldsValue({'domainName': domain.name})
|
this.form.setFieldsValue({'name': domain.name})
|
||||||
this.form.getFieldDecorator('orderNum')
|
this.form.getFieldDecorator('domainid')
|
||||||
this.form.setFieldsValue({'orderNum': domain.order})
|
this.form.setFieldsValue({'domainid': domain.domainid})
|
||||||
this.form.getFieldDecorator('domainId')
|
this.form.getFieldDecorator('description')
|
||||||
this.form.setFieldsValue({'domainId': domain.domainId})
|
this.form.setFieldsValue({'description': domain.description})
|
||||||
this.domain.domainId = domain.domainId
|
|
||||||
},
|
},
|
||||||
handleSubmit () {
|
handleSubmit () {
|
||||||
this.form.validateFields((err, values) => {
|
this.form.validateFields((err, values) => {
|
||||||
if (!err) {
|
if (!err) {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
let domain = this.form.getFieldsValue()
|
let domain = this.form.getFieldsValue()
|
||||||
domain.domainId = this.domain.domainId
|
console.log(domain.domainid)
|
||||||
this.$put('domains', {
|
this.$bodyRequest('put', `auth/v1/domains/${domain.domainid}`, {
|
||||||
...domain
|
...domain
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.reset()
|
this.reset()
|
||||||
|
@ -96,16 +95,16 @@ export default {
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
domainEditVisible () {
|
domainEditVisible () {
|
||||||
if (this.domainEditVisible) {
|
// if (this.domainEditVisible) {
|
||||||
this.$get('menu').then((r) => {
|
// this.$get('menu').then((r) => {
|
||||||
this.allTreeKeys = r.data.ids
|
// this.allTreeKeys = r.data.ids
|
||||||
this.$get('role/menu/' + this.roleInfoData.roleId).then((r) => {
|
// this.$get('role/menu/' + this.roleInfoData.roleId).then((r) => {
|
||||||
this.defaultCheckedKeys.splice(0, this.defaultCheckedKeys.length, r.data)
|
// this.defaultCheckedKeys.splice(0, this.defaultCheckedKeys.length, r.data)
|
||||||
this.checkedKeys = r.data
|
// this.checkedKeys = r.data
|
||||||
this.expandedKeys = r.data
|
// this.expandedKeys = r.data
|
||||||
})
|
// })
|
||||||
})
|
// })
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,8 +8,8 @@
|
||||||
@close="close"
|
@close="close"
|
||||||
:visible="domainInfoVisible"
|
:visible="domainInfoVisible"
|
||||||
style="height: calc(100% - 55px);overflow: auto;padding-bottom: 53px;">
|
style="height: calc(100% - 55px);overflow: auto;padding-bottom: 53px;">
|
||||||
<p><a-icon type="crown" /> 域名称:{{domainInfoData.roleName}}</p>
|
<p><a-icon type="crown" /> 域名称:{{domainInfoData.name}}</p>
|
||||||
<p :title="domainInfoData.remark"><a-icon type="book" /> 域描述:{{domainInfoData.remark}}</p>
|
<p :title="domainInfoData.description"><a-icon type="book" /> 域描述:{{domainInfoData.description}}</p>
|
||||||
<p><a-icon type="clock-circle" /> 创建时间:{{domainInfoData.createTime}}</p>
|
<p><a-icon type="clock-circle" /> 创建时间:{{domainInfoData.createTime}}</p>
|
||||||
<p><a-icon type="clock-circle" /> 修改时间:{{domainInfoData.modifyTime? domainInfoData.modifyTime : '暂未修改'}}</p>
|
<p><a-icon type="clock-circle" /> 修改时间:{{domainInfoData.modifyTime? domainInfoData.modifyTime : '暂未修改'}}</p>
|
||||||
</a-drawer>
|
</a-drawer>
|
||||||
|
|
|
@ -142,7 +142,7 @@ export default {
|
||||||
}, {
|
}, {
|
||||||
title: '描述',
|
title: '描述',
|
||||||
dataIndex: 'description',
|
dataIndex: 'description',
|
||||||
scopedSlots: {customRender: 'remark'},
|
scopedSlots: {customRender: 'description'},
|
||||||
width: 350
|
width: 350
|
||||||
}, {
|
}, {
|
||||||
title: '名称',
|
title: '名称',
|
||||||
|
|
|
@ -86,8 +86,7 @@ export default {
|
||||||
menuSelectHelp: '',
|
menuSelectHelp: '',
|
||||||
role: {
|
role: {
|
||||||
roleName: '',
|
roleName: '',
|
||||||
remark: '',
|
description: ''
|
||||||
menuId: ''
|
|
||||||
},
|
},
|
||||||
checkedKeys: [],
|
checkedKeys: [],
|
||||||
expandedKeys: [],
|
expandedKeys: [],
|
||||||
|
@ -120,32 +119,28 @@ export default {
|
||||||
disableRelate () {
|
disableRelate () {
|
||||||
this.checkStrictly = true
|
this.checkStrictly = true
|
||||||
},
|
},
|
||||||
handleCheck (checkedKeys) {
|
// handleCheck (checkedKeys) {
|
||||||
this.checkedKeys = checkedKeys
|
// this.checkedKeys = checkedKeys
|
||||||
let checkedArr = Object.is(checkedKeys.checked, undefined) ? checkedKeys : checkedKeys.checked
|
// let checkedArr = Object.is(checkedKeys.checked, undefined) ? checkedKeys : checkedKeys.checked
|
||||||
if (checkedArr.length) {
|
// if (checkedArr.length) {
|
||||||
this.menuSelectStatus = ''
|
// this.menuSelectStatus = ''
|
||||||
this.menuSelectHelp = ''
|
// this.menuSelectHelp = ''
|
||||||
} else {
|
// } else {
|
||||||
this.menuSelectStatus = 'error'
|
// this.menuSelectStatus = 'error'
|
||||||
this.menuSelectHelp = '请选择相应的权限'
|
// this.menuSelectHelp = '请选择相应的权限'
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
handleExpand (expandedKeys) {
|
handleExpand (expandedKeys) {
|
||||||
this.expandedKeys = expandedKeys
|
this.expandedKeys = expandedKeys
|
||||||
},
|
},
|
||||||
handleSubmit () {
|
handleSubmit () {
|
||||||
let checkedArr = Object.is(this.checkedKeys.checked, undefined) ? this.checkedKeys : this.checkedKeys.checked
|
// let checkedArr = Object.is(this.checkedKeys.checked, undefined) ? this.checkedKeys : this.checkedKeys.checked
|
||||||
if (this.validateStatus !== 'success') {
|
if (this.validateStatus !== 'success') {
|
||||||
this.handleRoleNameBlur()
|
this.handleRoleNameBlur()
|
||||||
} else if (checkedArr.length === 0) {
|
|
||||||
this.menuSelectStatus = 'error'
|
|
||||||
this.menuSelectHelp = '请选择相应的权限'
|
|
||||||
} else {
|
} else {
|
||||||
this.form.validateFields((err, values) => {
|
this.form.validateFields((err, values) => {
|
||||||
if (!err) {
|
if (!err) {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.role.menuId = checkedArr.join(',')
|
|
||||||
this.$bodyRequest('post', '/auth/v1/roles', {
|
this.$bodyRequest('post', '/auth/v1/roles', {
|
||||||
...this.role
|
...this.role
|
||||||
}).then((r) => {
|
}).then((r) => {
|
||||||
|
|
|
@ -82,9 +82,7 @@ export default {
|
||||||
form: this.$form.createForm(this),
|
form: this.$form.createForm(this),
|
||||||
menuSelectStatus: '',
|
menuSelectStatus: '',
|
||||||
menuSelectHelp: '',
|
menuSelectHelp: '',
|
||||||
role: {
|
role: {},
|
||||||
menuId: ''
|
|
||||||
},
|
|
||||||
menuTreeData: [],
|
menuTreeData: [],
|
||||||
allTreeKeys: [],
|
allTreeKeys: [],
|
||||||
checkedKeys: [],
|
checkedKeys: [],
|
||||||
|
@ -145,28 +143,27 @@ export default {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
handleSubmit () {
|
handleSubmit () {
|
||||||
let checkedArr = Object.is(this.checkedKeys.checked, undefined) ? this.checkedKeys : this.checkedKeys.checked
|
// let checkedArr = Object.is(this.checkedKeys.checked, undefined) ? this.checkedKeys : this.checkedKeys.checked
|
||||||
if (checkedArr.length === 0) {
|
// if (checkedArr.length === 0) {
|
||||||
this.menuSelectStatus = 'error'
|
// this.menuSelectStatus = 'error'
|
||||||
this.menuSelectHelp = '请选择相应的权限'
|
// this.menuSelectHelp = '请选择相应的权限'
|
||||||
} else {
|
// } else {
|
||||||
this.form.validateFields((err, values) => {
|
this.form.validateFields((err, values) => {
|
||||||
if (!err) {
|
if (!err) {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
let role = this.form.getFieldsValue()
|
let role = this.form.getFieldsValue()
|
||||||
role.roleId = this.roleInfoData.roleId
|
role.roleid = this.roleInfoData.roleid
|
||||||
role.menuId = checkedArr.join(',')
|
this.$bodyRequest('put', 'auth/v1/roles', {
|
||||||
this.$bodyRequest('put', 'auth/v1/roles', {
|
...role
|
||||||
...role
|
}).then((r) => {
|
||||||
}).then((r) => {
|
this.reset()
|
||||||
this.reset()
|
this.$emit('success')
|
||||||
this.$emit('success')
|
}).catch(() => {
|
||||||
}).catch(() => {
|
this.loading = false
|
||||||
this.loading = false
|
})
|
||||||
})
|
}
|
||||||
}
|
})
|
||||||
})
|
// }
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
|
|
@ -234,7 +234,7 @@ export default {
|
||||||
},
|
},
|
||||||
handleUserAddSuccess () {
|
handleUserAddSuccess () {
|
||||||
this.userAdd.visible = false
|
this.userAdd.visible = false
|
||||||
this.$message.success('新增用户成功,初始密码为1234qwer')
|
this.$message.success('新增用户成功')
|
||||||
this.search()
|
this.search()
|
||||||
},
|
},
|
||||||
edit (record) {
|
edit (record) {
|
||||||
|
@ -252,9 +252,6 @@ export default {
|
||||||
handleUserInfoClose () {
|
handleUserInfoClose () {
|
||||||
this.userInfo.visible = false
|
this.userInfo.visible = false
|
||||||
},
|
},
|
||||||
handleDeptChange (value) {
|
|
||||||
this.queryParams.deptId = value || ''
|
|
||||||
},
|
|
||||||
handleDateChange (value) {
|
handleDateChange (value) {
|
||||||
if (value) {
|
if (value) {
|
||||||
this.queryParams.createTimeFrom = value[0]
|
this.queryParams.createTimeFrom = value[0]
|
||||||
|
|
|
@ -98,7 +98,7 @@ export default {
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
user: {
|
user: {
|
||||||
username: ''
|
name: ''
|
||||||
},
|
},
|
||||||
loading: false,
|
loading: false,
|
||||||
roleData: [],
|
roleData: [],
|
||||||
|
@ -114,7 +114,7 @@ export default {
|
||||||
reset () {
|
reset () {
|
||||||
this.validateStatus = ''
|
this.validateStatus = ''
|
||||||
this.help = ''
|
this.help = ''
|
||||||
this.user.username = ''
|
this.user.name = ''
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.form.resetFields()
|
this.form.resetFields()
|
||||||
},
|
},
|
||||||
|
@ -129,8 +129,7 @@ export default {
|
||||||
this.form.validateFields((err, values) => {
|
this.form.validateFields((err, values) => {
|
||||||
if (!err && this.validateStatus === 'success') {
|
if (!err && this.validateStatus === 'success') {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.user.roleId = this.user.roleId.join(',')
|
this.$post('auth/v1/users', {
|
||||||
this.$post('user', {
|
|
||||||
...this.user
|
...this.user
|
||||||
}).then((r) => {
|
}).then((r) => {
|
||||||
this.reset()
|
this.reset()
|
||||||
|
|
Loading…
Reference in New Issue