wangzaijun 9 månader sedan
förälder
incheckning
780869a68b

+ 1 - 4
service-base/src/main/java/com/simuwang/base/pojo/dto/sys/RoleMenuAssignCmd.java

@@ -2,7 +2,6 @@ package com.simuwang.base.pojo.dto.sys;
 
 import com.simuwang.base.common.support.command.BaseCmd;
 import jakarta.validation.constraints.NotNull;
-import jakarta.validation.constraints.Size;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -21,10 +20,8 @@ public class RoleMenuAssignCmd extends BaseCmd {
      */
     @NotNull(message = "待分配的角色不能为空")
     private Integer roleId;
-
     /**
-     * 分配的权限
+     * 分配的权限,当问空时清空分配的权限
      */
-    @Size(message = "分配的权限不能为空", min = 1)
     private List<Integer> menuIds;
 }

+ 1 - 4
service-base/src/main/java/com/simuwang/base/pojo/dto/sys/UserRoleBindCmd.java

@@ -2,7 +2,6 @@ package com.simuwang.base.pojo.dto.sys;
 
 import com.simuwang.base.common.support.command.BaseCmd;
 import jakarta.validation.constraints.NotNull;
-import jakarta.validation.constraints.Size;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -22,9 +21,7 @@ public class UserRoleBindCmd extends BaseCmd {
     @NotNull(message = "用户id不能为空")
     private Integer userId;
     /**
-     * 绑定的角色
+     * 绑定的角色,当为null时清空绑定的角色
      */
-    @NotNull(message = "绑定的角色不能为空")
-    @Size(message = "绑定的角色不能为空", min = 1)
     private List<Integer> roleIds;
 }

+ 7 - 1
service-manage/src/main/java/com/simuwang/manage/api/deletion/DeletionController.java

@@ -95,8 +95,8 @@ public class DeletionController {
      * @param fundDeletionListVO
      * @return
      */
-    @ExcludeGlobalResult
     @SystemLog(value = "下载缺失数据")
+    @ExcludeGlobalResult
     @PostMapping("/download-fund-deletion")
     public void downloadFundDeletion(@RequestBody FundDeletionListVO fundDeletionListVO, HttpServletResponse response){
         List<ExcelDeletionInfoDTO> fundDeletionInfoVOList = deletionService.selectFundDeletionInfoVOList(fundDeletionListVO);
@@ -132,6 +132,12 @@ public class DeletionController {
             outputStream.close();
         } catch (Exception e) {
             logger.error(e.getMessage(),e);
+        } finally {
+            try {
+                wb.close();
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
         }
     }
 }

+ 5 - 1
service-manage/src/main/java/com/simuwang/manage/service/impl/system/SysRoleServiceImpl.java

@@ -1,5 +1,6 @@
 package com.simuwang.manage.service.impl.system;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -110,7 +111,10 @@ public class SysRoleServiceImpl implements SysRoleService {
     public void assignPerms(RoleMenuAssignCmd command) {
         Integer roleId = command.getRoleId();
         int i = this.mapper.delRoleMenuByUserId(roleId);
-        int j = this.mapper.batchRoleMenus(roleId, command.getMenuIds());
+        int j = 0;
+        if (CollUtil.isNotEmpty(command.getMenuIds())) {
+            j = this.mapper.batchRoleMenus(roleId, command.getMenuIds());
+        }
         if (this.logger.isInfoEnabled()) {
             this.logger.info("给{}角色分配权限时删除了{}条记录,新增{}条记录", roleId, i, j);
         }

+ 5 - 1
service-manage/src/main/java/com/simuwang/manage/service/impl/system/SysUserServiceImpl.java

@@ -1,5 +1,6 @@
 package com.simuwang.manage.service.impl.system;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.crypto.asymmetric.KeyType;
 import cn.hutool.crypto.asymmetric.RSA;
@@ -142,7 +143,10 @@ public class SysUserServiceImpl implements SysUserService {
     public void bindRoles(UserRoleBindCmd command) {
         Integer userId = command.getUserId();
         int i = this.mapper.delUserRoleByUserId(userId);
-        int j = this.mapper.batchUserRoles(userId, command.getRoleIds());
+        int j = 0;
+        if (CollUtil.isNotEmpty(command.getRoleIds())) {
+            j = this.mapper.batchUserRoles(userId, command.getRoleIds());
+        }
         if (this.logger.isInfoEnabled()) {
             this.logger.info("绑定用户{} 角色时删除了{}条记录,新增{}条记录", userId, i, j);
         }