menuId改为menu_id
This commit is contained in:
@@ -69,8 +69,8 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1' " label="菜单隐藏" prop="hidden">
|
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1' " label="菜单隐藏" prop="hidden">
|
||||||
<el-radio-group v-model="form.hidden" size="mini">
|
<el-radio-group v-model="form.hidden" size="mini">
|
||||||
<el-radio-button label=true>是</el-radio-button>
|
<el-radio-button label="true">是</el-radio-button>
|
||||||
<el-radio-button label=false>否</el-radio-button>
|
<el-radio-button label="false">否</el-radio-button>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.type.toString() !== '2'" label="菜单标题" prop="title">
|
<el-form-item v-if="form.type.toString() !== '2'" label="菜单标题" prop="title">
|
||||||
@@ -130,7 +130,7 @@
|
|||||||
:auto-load-root-options="false"
|
:auto-load-root-options="false"
|
||||||
:data="crud.data"
|
:data="crud.data"
|
||||||
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
|
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
|
||||||
row-key="menuId"
|
row-key="menu_id"
|
||||||
|
|
||||||
@select="crud.selectChange"
|
@select="crud.selectChange"
|
||||||
@select-all="crud.selectAllChange"
|
@select-all="crud.selectAllChange"
|
||||||
@@ -188,7 +188,7 @@ import udOperation from '@crud/UD.operation'
|
|||||||
|
|
||||||
// crud交由presenter持有
|
// crud交由presenter持有
|
||||||
const defaultForm = {
|
const defaultForm = {
|
||||||
menuId: null,
|
menu_id: null,
|
||||||
title: null,
|
title: null,
|
||||||
menuSort: 999,
|
menuSort: 999,
|
||||||
path: null,
|
path: null,
|
||||||
@@ -209,7 +209,7 @@ export default {
|
|||||||
name: 'Menu',
|
name: 'Menu',
|
||||||
components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation },
|
components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation },
|
||||||
cruds() {
|
cruds() {
|
||||||
return CRUD({ title: '菜单', idField: 'menuId', url: 'api/sysMenu', crudMethod: { ...crudMenu }})
|
return CRUD({ title: '菜单', idField: 'menu_id', url: 'api/sysMenu', crudMethod: { ...crudMenu }})
|
||||||
},
|
},
|
||||||
mixins: [presenter(), header(), form(defaultForm), crud()],
|
mixins: [presenter(), header(), form(defaultForm), crud()],
|
||||||
data() {
|
data() {
|
||||||
@@ -222,7 +222,7 @@ export default {
|
|||||||
},
|
},
|
||||||
normalizer(node) {
|
normalizer(node) {
|
||||||
return {
|
return {
|
||||||
id: node.menuId,
|
id: node.menu_id,
|
||||||
label: node.title,
|
label: node.title,
|
||||||
children: node.children
|
children: node.children
|
||||||
}
|
}
|
||||||
@@ -241,37 +241,37 @@ export default {
|
|||||||
// 新增与编辑前做的操作
|
// 新增与编辑前做的操作
|
||||||
[CRUD.HOOK.afterToCU](crud, form) {
|
[CRUD.HOOK.afterToCU](crud, form) {
|
||||||
this.menus = []
|
this.menus = []
|
||||||
if (form.menuId) { // 修改
|
if (form.menu_id) { // 修改
|
||||||
if (!form.pid) { // 一级菜单,一级的父级菜单的pid为0.
|
if (!form.pid) { // 一级菜单,一级的父级菜单的pid为0.
|
||||||
form.pid = 0
|
form.pid = 0
|
||||||
}
|
}
|
||||||
this.getSupDepts(form.menuId)
|
this.getSupDepts(form.menu_id)
|
||||||
} else { // 新增
|
} else { // 新增
|
||||||
this.menus.push({ menuId: 0, title: '顶级类目', children: null })
|
this.menus.push({ menu_id: 0, title: '顶级类目', children: null })
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getMenus(tree, treeNode, resolve) {
|
getMenus(tree, treeNode, resolve) {
|
||||||
const params = { pid: tree.menuId }
|
const params = { pid: tree.menu_id }
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
crudMenu.getMenus(params).then(res => {
|
crudMenu.getMenus(params).then(res => {
|
||||||
resolve(res.content)
|
resolve(res.content)
|
||||||
})
|
})
|
||||||
}, 100)
|
}, 100)
|
||||||
},
|
},
|
||||||
getSupDepts(menuId) {
|
getSupDepts(menu_id) {
|
||||||
crudMenu.getMenuSuperior(menuId).then(res => {
|
crudMenu.getMenuSuperior(menu_id).then(res => {
|
||||||
const children = res.map(function(obj) {
|
const children = res.map(function(obj) {
|
||||||
if (!obj.leaf && !obj.children) {
|
if (!obj.leaf && !obj.children) {
|
||||||
obj.children = null
|
obj.children = null
|
||||||
}
|
}
|
||||||
return obj
|
return obj
|
||||||
})
|
})
|
||||||
this.menus = [{ menuId: 0, title: '顶级类目', children: children }]
|
this.menus = [{ menu_id: 0, title: '顶级类目', children: children }]
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
loadMenus({ action, parentNode, callback }) {
|
loadMenus({ action, parentNode, callback }) {
|
||||||
if (action === LOAD_CHILDREN_OPTIONS) {
|
if (action === LOAD_CHILDREN_OPTIONS) {
|
||||||
crudMenu.getMenusTree(parentNode.menuId).then(res => {
|
crudMenu.getMenusTree(parentNode.menu_id).then(res => {
|
||||||
parentNode.children = res.map(function(obj) {
|
parentNode.children = res.map(function(obj) {
|
||||||
if (!obj.leaf) {
|
if (!obj.leaf) {
|
||||||
obj.children = null
|
obj.children = null
|
||||||
|
|||||||
@@ -75,14 +75,14 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-show="form.type.toString() === '3'" label="菜单缓存" prop="cache">
|
<el-form-item v-show="form.type.toString() === '3'" label="菜单缓存" prop="cache">
|
||||||
<el-radio-group v-model="form.cache" size="mini">
|
<el-radio-group v-model="form.cache" size="mini">
|
||||||
<el-radio-button label=true>是</el-radio-button>
|
<el-radio-button label="true">是</el-radio-button>
|
||||||
<el-radio-button label=false>否</el-radio-button>
|
<el-radio-button label="false">否</el-radio-button>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1' " label="菜单隐藏" prop="hidden">
|
<el-form-item v-show="form.type.toString() !== '2' && form.type.toString() !== '1' " label="菜单隐藏" prop="hidden">
|
||||||
<el-radio-group v-model="form.hidden" size="mini">
|
<el-radio-group v-model="form.hidden" size="mini">
|
||||||
<el-radio-button label=true>是</el-radio-button>
|
<el-radio-button label="true">是</el-radio-button>
|
||||||
<el-radio-button label=false>否</el-radio-button>
|
<el-radio-button label="false">否</el-radio-button>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item v-if="form.type.toString() !== '2'" label="菜单标题" prop="title">
|
<el-form-item v-if="form.type.toString() !== '2'" label="菜单标题" prop="title">
|
||||||
@@ -142,7 +142,7 @@
|
|||||||
:auto-load-root-options="false"
|
:auto-load-root-options="false"
|
||||||
:data="crud.data"
|
:data="crud.data"
|
||||||
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
|
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
|
||||||
row-key="menuId"
|
row-key="menu_id"
|
||||||
|
|
||||||
@select="crud.selectChange"
|
@select="crud.selectChange"
|
||||||
@select-all="crud.selectAllChange"
|
@select-all="crud.selectAllChange"
|
||||||
@@ -215,12 +215,11 @@ import CRUD, { presenter, header, form, crud } from '@crud/crud'
|
|||||||
import rrOperation from '@crud/RR.operation'
|
import rrOperation from '@crud/RR.operation'
|
||||||
import crudOperation from '@crud/CRUD.operation'
|
import crudOperation from '@crud/CRUD.operation'
|
||||||
import udOperation from '@crud/UD.operation'
|
import udOperation from '@crud/UD.operation'
|
||||||
import DateRangePicker from '@/components/DateRangePicker'
|
|
||||||
import Dict from '../../../components/Dict/Dict'
|
import Dict from '../../../components/Dict/Dict'
|
||||||
|
|
||||||
// crud交由presenter持有
|
// crud交由presenter持有
|
||||||
const defaultForm = {
|
const defaultForm = {
|
||||||
menuId: null,
|
menu_id: null,
|
||||||
title: null,
|
title: null,
|
||||||
menuSort: 999,
|
menuSort: 999,
|
||||||
path: null,
|
path: null,
|
||||||
@@ -239,9 +238,9 @@ const defaultForm = {
|
|||||||
}
|
}
|
||||||
export default {
|
export default {
|
||||||
name: 'Menu',
|
name: 'Menu',
|
||||||
components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation, DateRangePicker },
|
components: { Treeselect, IconSelect, crudOperation, rrOperation, udOperation },
|
||||||
cruds() {
|
cruds() {
|
||||||
return CRUD({ title: '菜单', idField: 'menuId', url: 'api/sysMenu', crudMethod: { ...crudMenu }})
|
return CRUD({ title: '菜单', idField: 'menu_id', url: 'api/sysMenu', crudMethod: { ...crudMenu }})
|
||||||
},
|
},
|
||||||
mixins: [presenter(), header(), form(defaultForm), crud()],
|
mixins: [presenter(), header(), form(defaultForm), crud()],
|
||||||
dicts: ['system_type'],
|
dicts: ['system_type'],
|
||||||
@@ -268,7 +267,7 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
normalizer(node) {
|
normalizer(node) {
|
||||||
return {
|
return {
|
||||||
id: node.menuId,
|
id: node.menu_id,
|
||||||
label: node.title,
|
label: node.title,
|
||||||
children: node.children
|
children: node.children
|
||||||
}
|
}
|
||||||
@@ -294,13 +293,13 @@ export default {
|
|||||||
[CRUD.HOOK.afterToCU](crud, form) {
|
[CRUD.HOOK.afterToCU](crud, form) {
|
||||||
console.log(this.dict)
|
console.log(this.dict)
|
||||||
this.menus = []
|
this.menus = []
|
||||||
if (form.menuId) { // 修改
|
if (form.menu_id) { // 修改
|
||||||
if (!form.pid) { // 一级菜单,一级的父级菜单的pid为0.
|
if (!form.pid) { // 一级菜单,一级的父级菜单的pid为0.
|
||||||
form.pid = 0
|
form.pid = 0
|
||||||
}
|
}
|
||||||
this.getSupMenus(form.menuId)
|
this.getSupMenus(form.menu_id)
|
||||||
} else { // 新增
|
} else { // 新增
|
||||||
this.menus.push({ menuId: 0, title: '顶级类目', children: null })
|
this.menus.push({ menu_id: 0, title: '顶级类目', children: null })
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
[CRUD.HOOK.afterSubmit](crud, form) {
|
[CRUD.HOOK.afterSubmit](crud, form) {
|
||||||
@@ -322,27 +321,27 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
getMenus(tree, treeNode, resolve) {
|
getMenus(tree, treeNode, resolve) {
|
||||||
const params = { pid: tree.menuId, systemType: tree.systemType }
|
const params = { pid: tree.menu_id, systemType: tree.systemType }
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
crudMenu.getMenus(params).then(res => {
|
crudMenu.getMenus(params).then(res => {
|
||||||
resolve(res.content)
|
resolve(res.content)
|
||||||
})
|
})
|
||||||
}, 100)
|
}, 100)
|
||||||
},
|
},
|
||||||
getSupMenus(menuId) {
|
getSupMenus(menu_id) {
|
||||||
crudMenu.getMenuSuperior(menuId).then(res => {
|
crudMenu.getMenuSuperior(menu_id).then(res => {
|
||||||
const children = res.map(function(obj) {
|
const children = res.map(function(obj) {
|
||||||
if (!obj.leaf && !obj.children) {
|
if (!obj.leaf && !obj.children) {
|
||||||
obj.children = null
|
obj.children = null
|
||||||
}
|
}
|
||||||
return obj
|
return obj
|
||||||
})
|
})
|
||||||
this.menus = [{ menuId: 0, title: '顶级类目', children: children }]
|
this.menus = [{ menu_id: 0, title: '顶级类目', children: children }]
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
loadMenus({ action, parentNode, callback }) {
|
loadMenus({ action, parentNode, callback }) {
|
||||||
if (action === LOAD_CHILDREN_OPTIONS) {
|
if (action === LOAD_CHILDREN_OPTIONS) {
|
||||||
crudMenu.getMenusTree(parentNode.menuId).then(res => {
|
crudMenu.getMenusTree(parentNode.menu_id).then(res => {
|
||||||
parentNode.children = res.map(function(obj) {
|
parentNode.children = res.map(function(obj) {
|
||||||
if (!obj.leaf) {
|
if (!obj.leaf) {
|
||||||
obj.children = null
|
obj.children = null
|
||||||
|
|||||||
@@ -106,13 +106,13 @@
|
|||||||
ref="menu"
|
ref="menu"
|
||||||
lazy
|
lazy
|
||||||
:data="menus"
|
:data="menus"
|
||||||
:default-checked-keys="menuIds"
|
:default-checked-keys="menu_ids"
|
||||||
:load="getMenuDatas"
|
:load="getMenuDatas"
|
||||||
:props="defaultProps"
|
:props="defaultProps"
|
||||||
check-strictly
|
check-strictly
|
||||||
accordion
|
accordion
|
||||||
show-checkbox
|
show-checkbox
|
||||||
node-key="menuId"
|
node-key="menu_id"
|
||||||
@check="menuChange"
|
@check="menuChange"
|
||||||
/>
|
/>
|
||||||
</el-card>
|
</el-card>
|
||||||
@@ -123,7 +123,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import crudRoles from './role'
|
import crudRoles from './role'
|
||||||
import crudMenu from '@/views/system/menu'
|
import crudMenu from '@/views/system/menu/menu'
|
||||||
import { getChild, getMenusTree } from '@/views/system/menu/menu'
|
import { getChild, getMenusTree } from '@/views/system/menu/menu'
|
||||||
import CRUD, { crud, form, header, presenter } from '@crud/crud'
|
import CRUD, { crud, form, header, presenter } from '@crud/crud'
|
||||||
import rrOperation from '@crud/RR.operation'
|
import rrOperation from '@crud/RR.operation'
|
||||||
@@ -143,7 +143,7 @@ export default {
|
|||||||
return {
|
return {
|
||||||
defaultProps: { children: 'children', label: 'title', isLeaf: 'leaf' },
|
defaultProps: { children: 'children', label: 'title', isLeaf: 'leaf' },
|
||||||
currentId: 0, menuLoading: false, showButton: false,
|
currentId: 0, menuLoading: false, showButton: false,
|
||||||
menus: [], menuIds: [], // 多选时使用
|
menus: [], menu_ids: [], // 多选时使用
|
||||||
permission: {
|
permission: {
|
||||||
add: ['admin', 'roles:add'],
|
add: ['admin', 'roles:add'],
|
||||||
edit: ['admin', 'roles:edit'],
|
edit: ['admin', 'roles:edit'],
|
||||||
@@ -164,7 +164,7 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
getMenuDatas(node, resolve) {
|
getMenuDatas(node, resolve) {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
getMenusTree(node.data.menuId ? node.data.menuId : 0).then(res => {
|
getMenusTree(node.data.menu_id ? node.data.menu_id : 0).then(res => {
|
||||||
resolve(res)
|
resolve(res)
|
||||||
})
|
})
|
||||||
}, 100)
|
}, 100)
|
||||||
@@ -182,9 +182,9 @@ export default {
|
|||||||
_this.menus = res
|
_this.menus = res
|
||||||
|
|
||||||
// 初始化默认选中的key
|
// 初始化默认选中的key
|
||||||
_this.menuIds = []
|
_this.menu_ids = []
|
||||||
_this.menus.forEach(function(data) {
|
_this.menus.forEach(function(data) {
|
||||||
_this.menuIds.push(data)
|
_this.menu_ids.push(data)
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -205,33 +205,33 @@ export default {
|
|||||||
// 保存当前的角色id
|
// 保存当前的角色id
|
||||||
this.currentId = val.roleId
|
this.currentId = val.roleId
|
||||||
// 初始化默认选中的key
|
// 初始化默认选中的key
|
||||||
this.menuIds = []
|
this.menu_ids = []
|
||||||
val.menus.forEach(function(data) {
|
val.menus.forEach(function(data) {
|
||||||
_this.menuIds.push(data)
|
_this.menu_ids.push(data)
|
||||||
})
|
})
|
||||||
this.showButton = true
|
this.showButton = true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
menuChange(menu) {
|
menuChange(menu) {
|
||||||
// 获取该节点的所有子节点,id 包含自身
|
// 获取该节点的所有子节点,id 包含自身
|
||||||
getChild(menu.menuId).then(childIds => {
|
getChild(menu.menu_id).then(childIds => {
|
||||||
// 判断是否在 menuIds 中,如果存在则删除,否则添加
|
// 判断是否在 menu_ids 中,如果存在则删除,否则添加
|
||||||
if (this.menuIds.indexOf(menu.menuId) !== -1) {
|
if (this.menu_ids.indexOf(menu.menu_id) !== -1) {
|
||||||
for (let i = 0; i < childIds.length; i++) {
|
for (let i = 0; i < childIds.length; i++) {
|
||||||
const index = this.menuIds.indexOf(childIds[i])
|
const index = this.menu_ids.indexOf(childIds[i])
|
||||||
if (index !== -1) {
|
if (index !== -1) {
|
||||||
this.menuIds.splice(index, 1)
|
this.menu_ids.splice(index, 1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for (let i = 0; i < childIds.length; i++) {
|
for (let i = 0; i < childIds.length; i++) {
|
||||||
const index = this.menuIds.indexOf(childIds[i])
|
const index = this.menu_ids.indexOf(childIds[i])
|
||||||
if (index === -1) {
|
if (index === -1) {
|
||||||
this.menuIds.push(childIds[i])
|
this.menu_ids.push(childIds[i])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.$refs.menu.setCheckedKeys(this.menuIds)
|
this.$refs.menu.setCheckedKeys(this.menu_ids)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 保存菜单
|
// 保存菜单
|
||||||
@@ -239,8 +239,8 @@ export default {
|
|||||||
this.menuLoading = true
|
this.menuLoading = true
|
||||||
const role = { roleId: this.currentId, menus: [] }
|
const role = { roleId: this.currentId, menus: [] }
|
||||||
// 得到已选中的 key 值
|
// 得到已选中的 key 值
|
||||||
this.menuIds.forEach(function(menuId) {
|
this.menu_ids.forEach(function(menu_id) {
|
||||||
const menu = { menuId: menuId }
|
const menu = { menu_id: menu_id }
|
||||||
role.menus.push(menu)
|
role.menus.push(menu)
|
||||||
})
|
})
|
||||||
crudRoles.editMenu(role).then(() => {
|
crudRoles.editMenu(role).then(() => {
|
||||||
@@ -258,7 +258,7 @@ export default {
|
|||||||
// 无刷新更新 表格数据
|
// 无刷新更新 表格数据
|
||||||
crudRoles.get(this.currentId).then(res => {
|
crudRoles.get(this.currentId).then(res => {
|
||||||
for (let i = 0; i < this.crud.data.length; i++) {
|
for (let i = 0; i < this.crud.data.length; i++) {
|
||||||
if (res.menuId === this.crud.data[i].menuId) {
|
if (res.menu_id === this.crud.data[i].menu_id) {
|
||||||
this.crud.data[i] = res
|
this.crud.data[i] = res
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user