فهرست منبع

租户的修改

dongxin 1 سال پیش
والد
کامیت
9352072e11

+ 7 - 5
authentication/src/main/java/com/jzg/config/JzgAuthenticationProvider.java

@@ -130,11 +130,13 @@ public class JzgAuthenticationProvider implements AuthenticationProvider {
                 dataDeptIds.add(jzgUserInfo.getDeptId());
                 List<SysRoleDataScope> dataScopes3 = sysRoleDataScopes.stream().filter(x -> x.getDataMark().equals("3")).collect(Collectors.toList());
                 List<String> dataScopeLinkRoleIds = dataScopes3.stream().map(x -> x.getRoleId()).collect(Collectors.toList());
-                List<SysRoleDataScopeLink> sysRoleDataScopeLinks = sysRoleDataScopeLinkMapper.selectList(new LambdaQueryWrapper<SysRoleDataScopeLink>()
-                        .in(SysRoleDataScopeLink::getRoleId, dataScopeLinkRoleIds));
-                List<String> deptIds = sysRoleDataScopeLinks.stream().map(x -> x.getDeptId()).collect(Collectors.toList());
-                sysRoleDataScopeVo.setDataMark("3");
-                sysRoleDataScopeVo.setDeptIds(deptIds);
+                if(!dataScopeLinkRoleIds.isEmpty()) {
+                    List<SysRoleDataScopeLink> sysRoleDataScopeLinks = sysRoleDataScopeLinkMapper.selectList(new LambdaQueryWrapper<SysRoleDataScopeLink>()
+                            .in(SysRoleDataScopeLink::getRoleId, dataScopeLinkRoleIds));
+                    List<String> deptIds = sysRoleDataScopeLinks.stream().map(x -> x.getDeptId()).collect(Collectors.toList());
+                    sysRoleDataScopeVo.setDataMark("3");
+                    sysRoleDataScopeVo.setDeptIds(deptIds);
+                }
             }
         }
         java.util.Map<String, Object> detailMap = new java.util.HashMap<>();

+ 2 - 1
authentication/src/main/resources/mapper/SysRolePermsMapper.xml

@@ -15,7 +15,8 @@
                 INNER JOIN sys_system ss ON ss.sys_code = sr.system_code
         WHERE
             su.id = #{userId}
+        AND ss.sys_code = #{systemId}
 
     </select>
 
-</mapper>
+</mapper>

+ 5 - 1
commons/src/main/java/com/jzg/commons/entity/po/SysConfig.java

@@ -23,9 +23,13 @@ public class SysConfig {
     private String id;
 
     /** 系统配置json */
-    @Schema(description = "系统配置json")
+    @Schema(description = "系统菜单配置json")
     private String sysConfig;
 
+    /** 系统配置json */
+    @Schema(description = "系统权限配置json")
+    private String sysPerms;
+
     /** 系统code */
     @Schema(description = "系统code")
     private String systemCode;

+ 7 - 0
commons/src/main/java/com/jzg/commons/entity/po/SysUserJzgInfo.java

@@ -297,4 +297,11 @@ public class SysUserJzgInfo extends BaseModel implements Serializable {
     @TableField(exist = false)
     @Schema(description = "密码")
     private String password;
+
+    public SysUserJzgInfo(SysUser user, String systemCode){
+        this.userId = user.getId();
+        this.status = 0;
+        this.isEnable = 0;
+        this.systemCode = systemCode;
+    }
 }

+ 1 - 0
commons/src/main/java/com/jzg/commons/entity/po/SysUserPlateInfo.java

@@ -48,6 +48,7 @@ public class SysUserPlateInfo extends BaseModel {
      */
     public SysUserPlateInfo(String userId){
         this.userId = userId;
+        this.systemCode = SystemConstants.SYSTEM_PLATFORM.getCode();
         this.isEnable = YesNoEnum.YES.getCode();
     }
 }

+ 2 - 2
platform/src/main/java/com/jzg/service/SysSystemService.java

@@ -40,10 +40,10 @@ public interface SysSystemService extends IService<SysSystem> {
 
     /**
      * 保存配置信息
-     * @param configStr 配置json
+     * @param sysConfig 平台配置
      * @param sysCode 系统code
      */
-    public void saveConfig(String configStr, String sysCode);
+    public void saveConfig(SysConfig sysConfig, String sysCode);
 
     /**
      * 获取租户权限

+ 26 - 24
platform/src/main/java/com/jzg/service/impl/SysSystemServiceImpl.java

@@ -65,7 +65,9 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
     public boolean updatePerms(SysSystemPermsVo sysSystemPermsVo) {
         // 保存勾选菜单配置
         String permsStr = sysSystemPermsVo.getPermsStr();
-        this.saveConfig(permsStr, sysSystemPermsVo.getSystemCode());
+        SysConfig sysConfig = new SysConfig();
+        sysConfig.setSysConfig(sysSystemPermsVo.getPermsStr());
+        this.saveConfig(sysConfig, sysSystemPermsVo.getSystemCode());
 
         // 获取租户管理员角色id
         LambdaQueryWrapper<SysRole> queryWrapper = new LambdaQueryWrapper<>();
@@ -77,27 +79,34 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
         wrapper.eq(SysRolePerms::getRoleId,roles.get(0).getId());
         sysRolePermsMapper.delete(wrapper);
 
-        List<SysSystemPermsVo.PermsVo> permsList = sysSystemPermsVo.getPerms();
+        List<SysSystemPermsVo.PermsVo> permsList = JSON.parseArray(sysSystemPermsVo.getPermsStr(),SysSystemPermsVo.PermsVo.class);;
         return this.savePerms(permsList, roles.get(0).getId());
     }
 
     /**
      * 保存配置信息
-     * @param configStr 配置json
+     * @param sysConfig 平台配置
      * @param sysCode 系统code
      */
-    public void saveConfig(String configStr, String sysCode){
+    public void saveConfig(SysConfig sysConfig, String sysCode){
         List<SysConfig> checkConfigs = sysConfigMapper.selectList(new LambdaQueryWrapper<SysConfig>()
                 .eq(SysConfig::getSystemCode,sysCode));
+
         SysConfig config;
         if(CollUtil.isEmpty(checkConfigs)){
             config = new SysConfig();
-            config.setSysConfig(configStr);
+            config.setSysConfig(sysConfig.getSysConfig());
+            if(StringUtils.isNotEmpty(sysConfig.getSysPerms())){
+                config.setSysPerms(sysConfig.getSysPerms());
+            }
             config.setSystemCode(sysCode);
             sysConfigMapper.insert(config);
         }else{
             config = checkConfigs.get(0);
-            config.setSysConfig(configStr);
+            config.setSysConfig(sysConfig.getSysConfig());
+            if(StringUtils.isNotEmpty(sysConfig.getSysPerms())){
+                config.setSysPerms(sysConfig.getSysPerms());
+            }
             sysConfigMapper.updateById(config);
         }
     }
@@ -245,21 +254,17 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
         List<SysUser> userList = sysUserMapper.selectList(new LambdaQueryWrapper<SysUser>()
                 .eq(SysUser::getMobile, param.getUserAccount())
         );
-        String userId = null;
+        SysUser user;
         if(CollUtil.isNotEmpty(userList)){
-            userId = userList.get(0).getId();
+            user = userList.get(0);
         }else{
             // 新增管理员用户
-            SysUser user = new SysUser(param);
+            user = new SysUser(param);
             sysUserMapper.insert(user);
-            userId = user.getId();
         }
         // 新增用户机构关联信息
-        SysUserPlateInfo info = new SysUserPlateInfo();
-        info.setUserId(userId);
-        info.setSystemCode(sysSystem.getSysCode());
-        info.setIsEnable(1);
-        sysUserPlateInfoMapper.insert(info);
+        SysUserJzgInfo info = new SysUserJzgInfo(user, sysSystem.getSysCode());
+        sysUserJzgInfoMapper.insert(info);
         // 查询该租户是否有管理员角色
         LambdaQueryWrapper<SysRole> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(SysRole::getSystemCode, sysSystem.getSysCode())
@@ -275,20 +280,20 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
         }
         // 关联用户角色
         SysUserRole userRole = new SysUserRole();
-        userRole.setUserId(userId);
+        userRole.setUserId(user.getId());
         userRole.setRoleId(role.getId());
         sysUserRoleMapper.insert(userRole);
         // 初始化权限信息
         // 1.初始化配置的保存
         List<SysConfig> configs = sysConfigMapper.selectList(new LambdaQueryWrapper<SysConfig>()
                 .eq(SysConfig::getSystemCode, SystemConstants.SYSTEM_PLATFORM.getCode()));
-        this.saveConfig(configs.get(0).getSysConfig(), SystemConstants.SYSTEM_PLATFORM.getCode());
+        this.saveConfig(configs.get(0), sysSystem.getSysCode());
 
-        List<SysSystemPermsVo.PermsVo> permsList = JSON.parseArray(configs.get(0).getSysConfig(),SysSystemPermsVo.PermsVo.class);;
+        List<SysSystemPermsVo.PermsVo> permsList = JSON.parseArray(configs.get(0).getSysPerms(),SysSystemPermsVo.PermsVo.class);;
 
         this.savePerms(permsList, role.getId());
         // 租户绑定管理员信息
-        sysSystem.setUserId(userId);
+        sysSystem.setUserId(user.getId());
         this.updateById(sysSystem);
     }
 
@@ -337,11 +342,8 @@ public class SysSystemServiceImpl extends ServiceImpl<SysSystemMapper, SysSystem
             sysUser = new SysUser(param);
             sysUserMapper.insert(sysUser);
             // 新增用户机构关联信息
-            SysUserPlateInfo info = new SysUserPlateInfo();
-            info.setUserId(sysUser.getId());
-            info.setSystemCode(sysSystem.getSysCode());
-            info.setIsEnable(1);
-            sysUserPlateInfoMapper.insert(info);
+            SysUserJzgInfo info = new SysUserJzgInfo(sysUser,sysSystem.getSysCode());
+            sysUserJzgInfoMapper.insert(info);
         }
     }