From ee0eaacc2dc93ddc619f5af9bf94ca4294e2e434 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Fri, 16 Dec 2022 14:15:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=92=E8=89=B2=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/param/SysParamController.java | 3 +- .../controller/role/SysRoleController.java | 21 ++++++ .../role/SysRolesMenusController.java | 21 ++++++ .../org/nl/system/service/dict/dao/Dict.java | 3 + .../param/impl/SysParamServiceImpl.java | 3 - .../system/service/role/ISysRoleService.java | 20 +++++- .../service/role/ISysRolesMenusService.java | 16 +++++ .../nl/system/service/role/dao/SysRole.java | 16 ++++- .../service/role/dao/SysRolesMenus.java | 34 +++++++++ .../role/dao/mapper/SysRoleMapper.java | 2 +- .../service/role/dao/mapper/SysRoleMapper.xml | 3 - .../role/dao/mapper/SysRolesMenusMapper.java | 16 +++++ .../role/dao/mapper/SysRolesMenusMapper.xml | 5 ++ .../service/role/impl/SysRoleServiceImpl.java | 70 +++++++++++++++++-- .../role/impl/SysRolesMenusServiceImpl.java | 20 ++++++ .../src/test/java/org/nl/sso/DictTest.java | 3 - nladmin-ui/src/views/system/role/index.vue | 22 +++--- 17 files changed, 245 insertions(+), 33 deletions(-) create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRolesMenusController.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRolesMenusService.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRolesMenus.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.java create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.xml create mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRolesMenusServiceImpl.java diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java index 8db1078..b067c74 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java @@ -4,6 +4,7 @@ import cn.dev33.satoken.annotation.SaIgnore; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.nl.common.TableDataInfo; import org.nl.common.domain.query.PageQuery; import org.nl.modules.logging.annotation.Log; import org.nl.system.service.param.ISysParamService; @@ -41,7 +42,7 @@ class SysParamController { @ApiOperation("查询系统参数") //@SaCheckPermission("param:list") public ResponseEntity query(@RequestParam Map whereJson, PageQuery page){ - return new ResponseEntity<>(paramService.queryAll(whereJson, page), HttpStatus.OK); + return new ResponseEntity<>(TableDataInfo.build(paramService.queryAll(whereJson, page)), HttpStatus.OK); } @PostMapping diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java index 9b8c041..2d06b75 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java @@ -1,18 +1,21 @@ package org.nl.system.controller.role; import cn.dev33.satoken.annotation.SaCheckPermission; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.nl.common.TableDataInfo; import org.nl.common.domain.query.PageQuery; import org.nl.modules.logging.annotation.Log; +import org.nl.modules.wql.core.bean.WQLObject; import org.nl.system.service.role.ISysRoleService; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.Map; +import java.util.Set; /** *

@@ -52,5 +55,23 @@ public class SysRoleController { roleService.update(param); return new ResponseEntity<>(HttpStatus.NO_CONTENT); } + + @Log("删除角色") + @ApiOperation("删除角色") + @DeleteMapping + @SaCheckPermission("roles:del") + public ResponseEntity delete(@RequestBody Set ids) { + roleService.deleteBatchByIds(ids); + return new ResponseEntity<>(HttpStatus.OK); + } + + @Log("修改角色菜单") + @ApiOperation("修改角色菜单") + @PutMapping(value = "/menu") +// @SaCheckPermission("roles:edit") + public ResponseEntity updateMenu(@RequestBody JSONObject form) { + roleService.updateMenu(form); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRolesMenusController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRolesMenusController.java new file mode 100644 index 0000000..49655f8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRolesMenusController.java @@ -0,0 +1,21 @@ +package org.nl.system.controller.role; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 角色菜单关联 前端控制器 + *

+ * + * @author generator + * @since 2022-12-16 + */ +@RestController +@RequestMapping("/sysRolesMenus") +public class SysRolesMenusController { + +} + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/dao/Dict.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/dao/Dict.java index 8fb1c4a..fdb36e9 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/dao/Dict.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/dao/Dict.java @@ -1,6 +1,8 @@ package org.nl.system.service.dict.dao; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import lombok.Data; @@ -24,6 +26,7 @@ public class Dict implements Serializable { /** * 字典标识 */ + @TableId private Long dictId; /** diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java index 72818d0..b45ef72 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java @@ -5,7 +5,6 @@ import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.common.domain.query.PageQuery; import org.nl.modules.common.exception.BadRequestException; @@ -14,9 +13,7 @@ import org.nl.modules.tools.MapOf; import org.nl.system.service.param.ISysParamService; import org.nl.system.service.param.dao.Param; import org.nl.system.service.param.dao.mapper.SysParamMapper; -import org.nl.system.service.param.dto.ParamQuery; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java index 256ecfb..99d6ba3 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java @@ -4,10 +4,10 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import org.nl.common.domain.query.PageQuery; -import org.nl.system.service.dict.dao.Dict; import org.nl.system.service.role.dao.SysRole; import java.util.Map; +import java.util.Set; /** *

@@ -26,4 +26,22 @@ public interface ISysRoleService extends IService { * @param param */ void create(JSONObject param); + + /** + * 更新角色 + * @param param + */ + void update(JSONObject param); + + /** + * 删除角色 + * @param ids + */ + void deleteBatchByIds(Set ids); + + /** + * 更新角色菜单 + * @param form + */ + void updateMenu(JSONObject form); } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRolesMenusService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRolesMenusService.java new file mode 100644 index 0000000..b284676 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRolesMenusService.java @@ -0,0 +1,16 @@ +package org.nl.system.service.role; + +import org.nl.system.service.role.dao.SysRolesMenus; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 角色菜单关联 服务类 + *

+ * + * @author generator + * @since 2022-12-16 + */ +public interface ISysRolesMenusService extends IService { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRole.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRole.java index ef8cd46..1e101a3 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRole.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRole.java @@ -1,11 +1,14 @@ package org.nl.system.service.role.dao; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serializable; import java.math.BigDecimal; +import java.util.List; /** *

@@ -25,7 +28,8 @@ public class SysRole implements Serializable { /** * ID */ - private Long roleId; + @TableId + private String roleId; /** * 名称 @@ -75,17 +79,23 @@ public class SysRole implements Serializable { /** * 修改人标识 */ - private Long updateOptid; + private Long updateId; /** * 修改人 */ - private String updateOptname; + private String updateName; /** * 修改时间 */ private String updateTime; + /** + * 角色菜单 + */ + @TableField(exist = false) + private List menus; + } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRolesMenus.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRolesMenus.java new file mode 100644 index 0000000..2309a3a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/SysRolesMenus.java @@ -0,0 +1,34 @@ +package org.nl.system.service.role.dao; + +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *

+ * 角色菜单关联 + *

+ * + * @author generator + * @since 2022-12-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sys_roles_menus") +public class SysRolesMenus implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 菜单ID + */ + private String menuId; + + /** + * 角色ID + */ + private String roleId; + + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java index 26fdb09..1fda447 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java @@ -14,5 +14,5 @@ import java.util.List; * @since 2022-12-15 */ public interface SysRoleMapper extends BaseMapper { - List list(); + } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml index 5819987..0df1394 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml @@ -2,7 +2,4 @@ - diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.java new file mode 100644 index 0000000..5d17c66 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.java @@ -0,0 +1,16 @@ +package org.nl.system.service.role.dao.mapper; + +import org.nl.system.service.role.dao.SysRolesMenus; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 角色菜单关联 Mapper 接口 + *

+ * + * @author generator + * @since 2022-12-16 + */ +public interface SysRolesMenusMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.xml new file mode 100644 index 0000000..335766b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRolesMenusMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java index f6b9935..c6af28c 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java @@ -4,7 +4,7 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -13,15 +13,17 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.common.domain.query.PageQuery; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.wql.core.bean.WQLObject; -import org.nl.system.service.dict.dao.Dict; import org.nl.system.service.role.ISysRoleService; import org.nl.system.service.role.dao.SysRole; +import org.nl.system.service.role.dao.SysRolesMenus; import org.nl.system.service.role.dao.mapper.SysRoleMapper; +import org.nl.system.service.role.dao.mapper.SysRolesMenusMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.Map; +import java.util.Set; /** *

@@ -37,18 +39,25 @@ public class SysRoleServiceImpl extends ServiceImpl impl @Autowired private SysRoleMapper roleMapper; + @Autowired + private SysRolesMenusMapper rolesMenusMapper; + @Override public IPage query(Map param, PageQuery page) { String blurry = null; if (ObjectUtil.isNotEmpty(param.get("blurry"))) blurry = param.get("blurry").toString(); LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); lam.like(ObjectUtil.isNotEmpty(blurry), SysRole::getName, blurry); - IPage pages = new Page<>(page.getPage(), page.getSize()); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); roleMapper.selectPage(pages, lam); + // 需要吧menus反回去 + pages.getRecords().forEach(sysRole -> sysRole.setMenus(rolesMenusMapper.selectList(new LambdaQueryWrapper() + .eq(SysRolesMenus::getRoleId, sysRole.getRoleId())))); return pages; } @Override + @Transactional(rollbackFor = Exception.class) public void create(JSONObject param) { //判断角色名字是否存在 String name = param.getString("name"); @@ -62,13 +71,60 @@ public class SysRoleServiceImpl extends ServiceImpl impl String nickName = SecurityUtils.getCurrentNickName(); String now = DateUtil.now(); // 插入 - sysRole.setRoleId(IdUtil.getSnowflake(1,1).nextId()); + sysRole.setRoleId(IdUtil.getSnowflake(1,1).nextIdStr()); sysRole.setCreateId(userId); sysRole.setCreateName(nickName); sysRole.setCreateTime(now); - sysRole.setUpdateOptid(userId); - sysRole.setUpdateOptname(nickName); + sysRole.setUpdateId(userId); + sysRole.setUpdateName(nickName); sysRole.setUpdateTime(now); roleMapper.insert(sysRole); } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(JSONObject param) { + SysRole sysRole = JSONObject.parseObject(JSONObject.toJSONString(param), SysRole.class); + //判断角色名字是否存在 + String name = sysRole.getName(); + if (StrUtil.isEmpty(name)) throw new BadRequestException("角色名字不能为空!"); + + //判断角色名字是否存在 + SysRole role = roleMapper.selectOne(new LambdaQueryWrapper().eq(SysRole::getName, sysRole.getName()) + .ne(SysRole::getRoleId, sysRole.getRoleId())); + if (ObjectUtil.isNotEmpty(role)) throw new BadRequestException("角色【" + name + "】已存在!"); + Long userId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + sysRole.setUpdateId(userId); + sysRole.setUpdateName(nickName); + sysRole.setUpdateTime(now); + roleMapper.updateById(sysRole); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteBatchByIds(Set ids) { + // 删除角色表 + roleMapper.deleteBatchIds(ids); + + // 删除角色用户表 + rolesMenusMapper.deleteBatchIds(ids); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateMenu(JSONObject form) { + Long roleId = form.getLong("roleId"); + JSONArray menus = form.getJSONArray("menus"); + // 删除 + rolesMenusMapper.delete(new LambdaQueryWrapper().eq(SysRolesMenus::getRoleId, roleId)); + for (int i = 0; i < menus.size(); i++) { + JSONObject rmObj = menus.getJSONObject(i); + SysRolesMenus rolesMenus = new SysRolesMenus(); + rolesMenus.setRoleId(roleId.toString()); + rolesMenus.setMenuId(rmObj.getString("menuId")); + rolesMenusMapper.insert(rolesMenus); + } + } } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRolesMenusServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRolesMenusServiceImpl.java new file mode 100644 index 0000000..c05b091 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRolesMenusServiceImpl.java @@ -0,0 +1,20 @@ +package org.nl.system.service.role.impl; + +import org.nl.system.service.role.dao.SysRolesMenus; +import org.nl.system.service.role.dao.mapper.SysRolesMenusMapper; +import org.nl.system.service.role.ISysRolesMenusService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 角色菜单关联 服务实现类 + *

+ * + * @author generator + * @since 2022-12-16 + */ +@Service +public class SysRolesMenusServiceImpl extends ServiceImpl implements ISysRolesMenusService { + +} diff --git a/nladmin-system/nlsso-server/src/test/java/org/nl/sso/DictTest.java b/nladmin-system/nlsso-server/src/test/java/org/nl/sso/DictTest.java index 7b296f3..8c647ba 100644 --- a/nladmin-system/nlsso-server/src/test/java/org/nl/sso/DictTest.java +++ b/nladmin-system/nlsso-server/src/test/java/org/nl/sso/DictTest.java @@ -9,13 +9,10 @@ import org.nl.AppRun; import org.nl.system.service.dict.ISysDictService; import org.nl.system.service.dict.dao.Dict; import org.nl.system.service.dict.dao.mapper.SysDictMapper; -import org.nl.system.service.role.dao.SysRole; import org.nl.system.service.role.dao.mapper.SysRoleMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; -import java.util.function.Consumer; - /** * @Author: lyd * @Description: diff --git a/nladmin-ui/src/views/system/role/index.vue b/nladmin-ui/src/views/system/role/index.vue index b680387..2eec699 100644 --- a/nladmin-ui/src/views/system/role/index.vue +++ b/nladmin-ui/src/views/system/role/index.vue @@ -112,7 +112,7 @@ check-strictly accordion show-checkbox - node-key="menu_id" + node-key="menuId" @check="menuChange" /> @@ -164,7 +164,7 @@ export default { methods: { getMenuDatas(node, resolve) { setTimeout(() => { - getMenusTree(node.data.menu_id ? node.data.menu_id : 0).then(res => { + getMenusTree(node.data.menuId ? node.data.menuId : 0).then(res => { resolve(res) }) }, 100) @@ -184,7 +184,7 @@ export default { // 初始化默认选中的key _this.menuIds = [] _this.menus.forEach(function(data) { - _this.menuIds.push(data.menu_id) + _this.menuIds.push(data.menuId) }) }) } @@ -203,20 +203,20 @@ export default { // 清空菜单的选中 this.$refs.menu.setCheckedKeys([]) // 保存当前的角色id - this.currentId = val.role_id + this.currentId = val.roleId // 初始化默认选中的key this.menuIds = [] val.menus.forEach(function(data) { - _this.menuIds.push(data.menu_id) + _this.menuIds.push(data.menuId) }) this.showButton = true } }, menuChange(menu) { // 获取该节点的所有子节点,id 包含自身 - getChild(menu.menu_id).then(childIds => { + getChild(menu.menuId).then(childIds => { // 判断是否在 menuIds 中,如果存在则删除,否则添加 - if (this.menuIds.indexOf(menu.menu_id) !== -1) { + if (this.menuIds.indexOf(menu.menuId) !== -1) { for (let i = 0; i < childIds.length; i++) { const index = this.menuIds.indexOf(childIds[i]) if (index !== -1) { @@ -237,10 +237,10 @@ export default { // 保存菜单 saveMenu() { this.menuLoading = true - const role = { role_id: this.currentId, menus: [] } + const role = { roleId: this.currentId, menus: [] } // 得到已选中的 key 值 - this.menuIds.forEach(function(menu_id) { - const menu = { menu_id: menu_id } + this.menuIds.forEach(function(menuId) { + const menu = { menuId: menuId } role.menus.push(menu) }) crudRoles.editMenu(role).then(() => { @@ -257,7 +257,7 @@ export default { // 无刷新更新 表格数据 crudRoles.get(this.currentId).then(res => { for (let i = 0; i < this.crud.data.length; i++) { - if (res.menu_id === this.crud.data[i].menu_id) { + if (res.menuId === this.crud.data[i].menuId) { this.crud.data[i] = res break }