diff --git a/web/src/layout/header-aside/components/header-user/userinfo.vue b/web/src/layout/header-aside/components/header-user/userinfo.vue
index b46522e..d02c51d 100644
--- a/web/src/layout/header-aside/components/header-user/userinfo.vue
+++ b/web/src/layout/header-aside/components/header-user/userinfo.vue
@@ -279,7 +279,6 @@ export default {
* @param file
*/
handleAvatarSuccess (res, file) {
- console.log(11, res)
this.userInfo.avatar = res
}
}
diff --git a/web/src/views/system/dept/api.js b/web/src/views/system/dept/api.js
index 362d5d0..dbce636 100644
--- a/web/src/views/system/dept/api.js
+++ b/web/src/views/system/dept/api.js
@@ -1,6 +1,6 @@
import { request } from '@/api/service'
+import XEUtils from 'xe-utils'
export const urlPrefix = '/api/system/dept/'
-
/**
* 列表查询
*/
@@ -62,5 +62,7 @@ export function DeptLazy (query) {
url: '/api/system/dept_lazy_tree/',
method: 'get',
params: query
+ }).then(res => {
+ return XEUtils.toArrayTree(res.data, { parentKey: 'parent' })
})
}
diff --git a/web/src/views/system/dept/crud.js b/web/src/views/system/dept/crud.js
index b3ff85c..be9afcf 100644
--- a/web/src/views/system/dept/crud.js
+++ b/web/src/views/system/dept/crud.js
@@ -1,10 +1,10 @@
import * as api from './api'
export const crudOptions = (vm) => {
return {
- // pagination: false,
pageOptions: {
compact: true
},
+ pagination: false,
options: {
tableType: 'vxe-table',
stripe: false,
@@ -14,10 +14,13 @@ export const crudOptions = (vm) => {
highlightCurrentRow: false,
defaultExpandAll: true,
treeConfig: {
+ transform: true,
+ rowField: 'id',
+ parentField: 'parent',
+ hasChild: 'hasChild',
lazy: true,
- hasChild: 'has_children',
loadMethod: ({ row }) => {
- return api.GetList({ parent: row.id, lazy: true }).then(ret => {
+ return api.GetList({ parent: row.id }).then(ret => {
return ret.data.data
})
},
@@ -105,32 +108,15 @@ export const crudOptions = (vm) => {
value: 'id',
cache: false,
getData: (url, dict, { form, component }) => { // 配置此参数会覆盖全局的getRemoteDictFunc
- return api.DeptLazy().then(ret => { return ret.data })
- },
- getNodes (values, data) {
- // 配置行展示远程获取nodes
- return new Promise((resolve, reject) => {
- const row = vm.getEditRow()
- resolve(row.parent !== null ? [{ name: row.parent_name, id: row.parent }] : [])
- })
+ return api.DeptLazy().then(ret => { return ret })
}
},
form: {
- helper: '默认留空为根节点',
+ helper: '默认留空为创建者的部门',
component: {
span: 12,
props: {
- multiple: false,
- elProps: {
- lazy: true,
- hasChild: 'has_children',
- load (node, resolve) {
- // 懒加载
- api.DeptLazy({ parent: node.data.id }).then((data) => {
- resolve(data.data)
- })
- }
- }
+ multiple: false
}
}
}
diff --git a/web/src/views/system/dept/index.vue b/web/src/views/system/dept/index.vue
index b479d48..e8b5063 100644
--- a/web/src/views/system/dept/index.vue
+++ b/web/src/views/system/dept/index.vue
@@ -17,7 +17,7 @@
>
新增
导入
diff --git a/web/src/views/system/messageCenter/index.vue b/web/src/views/system/messageCenter/index.vue
index ec1fdcf..8832409 100644
--- a/web/src/views/system/messageCenter/index.vue
+++ b/web/src/views/system/messageCenter/index.vue
@@ -6,6 +6,7 @@
v-bind="_crudProps"
v-on="_crudListeners"
@onView="onView"
+ @doDialogClosed="doDialogClosed"
>
@@ -39,7 +40,6 @@ export default {
tabActivted: 'send'
}
},
-
computed: {
},
methods: {
@@ -78,12 +78,15 @@ export default {
template: viewTemplate
})
this.infoRequest(row)
- this.doRefresh()
},
onTabClick (tab) {
const { name } = tab
this.tabActivted = name
this.doRefresh()
+ },
+ // 关闭事件
+ doDialogClosed (context) {
+ this.doRefresh()
}
}
}
diff --git a/web/src/views/system/role/crud.js b/web/src/views/system/role/crud.js
index 6e2169c..e756f22 100644
--- a/web/src/views/system/role/crud.js
+++ b/web/src/views/system/role/crud.js
@@ -156,7 +156,6 @@ export const crudOptions = (vm) => {
title: '是否管理员',
key: 'admin',
sortable: true,
-
type: 'radio',
dict: {
data: vm.dictionary('button_whether_bool')
@@ -164,11 +163,13 @@ export const crudOptions = (vm) => {
form: {
value: false,
component: {
- placeholder: '请选择是否管理员'
+ placeholder: '请选择是否管理员',
+ show (context) {
+ return vm.info.is_superuser
+ }
}
}
},
-
{
title: '状态',
key: 'status',
diff --git a/web/src/views/system/role/index.vue b/web/src/views/system/role/index.vue
index 8ed34d7..72517e8 100644
--- a/web/src/views/system/role/index.vue
+++ b/web/src/views/system/role/index.vue
@@ -64,12 +64,17 @@ import * as api from './api'
import { crudOptions } from './crud'
import { d2CrudPlus } from 'd2-crud-plus'
import rolePermission from '../rolePermission'
+import { mapState } from 'vuex'
+
export default {
name: 'role',
mixins: [d2CrudPlus.crud],
components: {
rolePermission
},
+ computed: {
+ ...mapState('d2admin/user', ['info'])
+ },
data () {
return {
rolePermissionShow: false,
diff --git a/web/src/views/system/rolePermission/api.js b/web/src/views/system/rolePermission/api.js
index 2b6eb6b..8e9d842 100644
--- a/web/src/views/system/rolePermission/api.js
+++ b/web/src/views/system/rolePermission/api.js
@@ -47,11 +47,38 @@ export function DelObj (id) {
// 通过角色id,获取菜单数据
export function GetMenuData (obj) {
return request({
- url: '/api/system/role/' + obj.id + '/roleId_get_menu/',
+ url: '/api/system/role/role_get_menu/',
method: 'get',
params: {}
}).then(res => {
// 将列表数据转换为树形数据
- return res.data.data
+ return res.data
+ })
+}
+
+/**
+ * 获取数据权限
+ * @param obj
+ * @returns {*}
+ * @constructor
+ */
+export function GetDataScope () {
+ return request({
+ url: '/api/system/role/data_scope/',
+ method: 'get',
+ params: {}
+ })
+}
+
+/**
+ * 获取角色部门
+ * @returns {*}
+ * @constructor
+ */
+export function GetDataScopeDept () {
+ return request({
+ url: '/api/system/role/data_scope_dept/',
+ method: 'get',
+ params: {}
})
}
diff --git a/web/src/views/system/rolePermission/index.vue b/web/src/views/system/rolePermission/index.vue
index e47e53d..135f396 100644
--- a/web/src/views/system/rolePermission/index.vue
+++ b/web/src/views/system/rolePermission/index.vue
@@ -119,7 +119,6 @@