|
|
@@ -1,16 +1,20 @@
|
|
|
package com.ema.admin.modules.system.controller;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
-import com.mybatisflex.core.paginate.Page;
|
|
|
import com.ema.admin.modules.system.converter.SysRoleConverter;
|
|
|
import com.ema.admin.modules.system.entity.SysRole;
|
|
|
+import com.ema.admin.modules.system.enums.SysRoleEnum;
|
|
|
import com.ema.admin.modules.system.service.SysMenuService;
|
|
|
import com.ema.admin.modules.system.service.SysRoleService;
|
|
|
import com.ema.admin.modules.system.vo.SysMenuVo;
|
|
|
import com.ema.admin.modules.system.vo.SysRoleInfoVo;
|
|
|
import com.ema.admin.modules.system.vo.SysRoleQueryVo;
|
|
|
import com.ema.admin.modules.system.vo.SysRoleSaveVo;
|
|
|
+import com.ema.common.aspect.logger.LogTypeEnum;
|
|
|
+import com.ema.common.aspect.logger.Logger;
|
|
|
import com.ema.common.domain.enums.BooleanEnum;
|
|
|
+import com.ema.common.exceptions.MyAssert;
|
|
|
+import com.mybatisflex.core.paginate.Page;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
@@ -46,6 +50,7 @@ public class SysRoleController {
|
|
|
*/
|
|
|
@PostMapping("save")
|
|
|
@ApiOperation("保存系统角色信息表")
|
|
|
+ @Logger(type = LogTypeEnum.SAVE)
|
|
|
public boolean save(@RequestBody @ApiParam("系统角色信息表") SysRoleSaveVo saveVo) {
|
|
|
SysRole sysRole = sysRoleConverter.toSysRole(saveVo);
|
|
|
boolean save = sysRoleService.save(sysRole);
|
|
|
@@ -63,8 +68,15 @@ public class SysRoleController {
|
|
|
*/
|
|
|
@DeleteMapping("remove/{ids}")
|
|
|
@ApiOperation("根据主键系统角色信息表")
|
|
|
+ @Logger(type = LogTypeEnum.DELETE)
|
|
|
public boolean remove(@PathVariable @ApiParam("系统角色信息表主键") String ids) {
|
|
|
List<String> idList = Arrays.asList(ids.split(","));
|
|
|
+ for (String id : idList) {
|
|
|
+ SysRole role = sysRoleService.getById(id);
|
|
|
+ MyAssert.notNull(role, "角色不存在");
|
|
|
+ MyAssert.isTrue(!SysRoleEnum.RoleKey.ADMIN.getRoleId().equals(role.getId()), "管理员角色不允许删除");
|
|
|
+ MyAssert.isTrue(!sysRoleService.hasUsers(id), "该角色下存在用户,无法删除");
|
|
|
+ }
|
|
|
return sysRoleService.removeByIds(idList);
|
|
|
}
|
|
|
|
|
|
@@ -76,6 +88,7 @@ public class SysRoleController {
|
|
|
*/
|
|
|
@PutMapping("update")
|
|
|
@ApiOperation("根据主键更新系统角色信息表")
|
|
|
+ @Logger(type = LogTypeEnum.UPDATE)
|
|
|
public boolean update(@RequestBody @ApiParam("系统角色信息表主键") SysRoleSaveVo sysRole) {
|
|
|
if(CollUtil.isNotEmpty(sysRole.getMenuIds())){
|
|
|
sysRoleService.assignMenusToRole(sysRole.getId(),sysRole.getMenuIds());
|