Jelajahi Sumber

feat(user): 添加商户ID字段支持多租户角色管理

- 在UserInfoDto中新增merchantId字段
- 修改UserRoleController的addRoleInfo方法增加InfoEntity参数
- 实现商户ID自动设置逻辑,当角色实体商户ID为空时使用infoEntity中的商户ID
- 确保系统角色创建时不会被允许操作
kongxiangyang 5 bulan lalu
induk
melakukan
dabf9c7d0b

+ 4 - 1
uacrd-manager-server/src/main/java/com/crm/manager/controller/UserRoleController.java

@@ -44,13 +44,16 @@ public class UserRoleController extends BaseLoginController {
      * @throws Exception
      */
     @PostMapping("/add")
-    public BaseResultDto addRoleInfo(@RequestBody @Valid UserRoleAddEntity userRoleAddEntity) throws Exception {
+    public BaseResultDto addRoleInfo(@RequestBody @Valid UserRoleAddEntity userRoleAddEntity,InfoEntity infoEntity) throws Exception {
 
         if (ManagerConstant.ROLE_CODE_SYSTEM.equals(userRoleAddEntity.getCode())) {
             return BaseResultDto.error(Constants.NOT_PERMIT);
         }
 
         String roleCode = getRoleCode(userRoleAddEntity.getDepartmentId());
+        if(userRoleAddEntity.getMerchantId() == null){
+            userRoleAddEntity.setMerchantId(infoEntity.getIbInfo().getMerchantId());
+        }
         userRoleAddEntity.setCode(roleCode);
         roleInfoService.addRoleInfo(userRoleAddEntity);
 

+ 2 - 0
ucard-core/src/main/java/com/crm/rely/backend/core/dto/user/info/UserInfoDto.java

@@ -125,4 +125,6 @@ public class UserInfoDto {
 
     private List<String> excludeShowLoginTypes;
 
+    private Integer merchantId;
+
 }