Преглед на файлове

Merge remote-tracking branch 'origin/master'

李进 преди 2 години
родител
ревизия
e94023953e

+ 2 - 2
authorize-api-service/src/main/java/com/xy/service/SysDeptRoleService.java

@@ -21,7 +21,7 @@ public interface SysDeptRoleService extends IService<SysDeptRole> {
      * @author 谭斌
      * @date 2022/12/15 10:47
      */
-    void saveDeptRole(Long deptId, List<Long> roleIds);
+    void saveDeptRole(Long deptId, List<Long> roleIds, Long sysId);
 
     /***
      * 更新部门角色关系
@@ -29,7 +29,7 @@ public interface SysDeptRoleService extends IService<SysDeptRole> {
      * @author 谭斌
      * @date 2022/12/15 10:47
      */
-    void updateDeptRole(Long deptId, List<Long> roleIds);
+    void updateDeptRole(Long deptId, List<Long> roleIds, Long sysId);
 
     /**
      * 通过部门ID删除部门角色关系

+ 4 - 4
authorize-api-service/src/main/java/com/xy/service/impl/SysDeptRoleServiceImpl.java

@@ -23,16 +23,16 @@ import java.util.stream.Collectors;
 public class SysDeptRoleServiceImpl extends ServiceImpl<SysDeptRoleMapper, SysDeptRole> implements SysDeptRoleService {
 
     @Override
-    public void saveDeptRole(Long deptId, List<Long> roleIds) {
-        List<SysDeptRole> sysDeptRoles = roleIds.stream().map(roleId -> new SysDeptRole().setDeptId(deptId).setRoleId(roleId)).collect(Collectors.toList());
+    public void saveDeptRole(Long deptId, List<Long> roleIds, Long sysId) {
+        List<SysDeptRole> sysDeptRoles = roleIds.stream().map(roleId -> new SysDeptRole().setSysId(sysId).setDeptId(deptId).setRoleId(roleId)).collect(Collectors.toList());
         saveBatch(sysDeptRoles);
     }
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public void updateDeptRole(Long deptId, List<Long> roleIds) {
+    public void updateDeptRole(Long deptId, List<Long> roleIds, Long sysId) {
         removeDeptRoleById(deptId);
-        saveDeptRole(deptId, roleIds);
+        saveDeptRole(deptId, roleIds, sysId);
     }
 
     @Override

+ 18 - 3
authorize-api-service/src/main/java/com/xy/service/impl/SysDeptServiceImpl.java

@@ -12,6 +12,7 @@ import com.xy.dto.SysDeptDto;
 import com.xy.dto.SysDeptListDto;
 import com.xy.entity.SysDept;
 import com.xy.entity.SysDeptRelation;
+import com.xy.entity.SysDeptRole;
 import com.xy.entity.SysUserDept;
 import com.xy.mapper.SysDeptMapper;
 import com.xy.redis.RedisCache;
@@ -77,13 +78,13 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
             return R.fail("此部门已存在");
         }
         List<Long> roleIds = sysDeptDto.getRoleIds();
-        SysDept sysDept = copy(SysDept.class, sysDeptDto).saveOrUpdate(loginId, sysDeptDto.getSysId());
+        SysDept sysDept = copy(SysDept.class, sysDeptDto).saveOrUpdate(loginId, sysDeptDto.getId());
         if (isAdd) {
             //新建部门关系
             sysDeptRelationService.saveDeptRelation(sysDept);
             //角色部门关系建立
             if (CollUtil.isNotEmpty(roleIds)) {
-                sysDeptRoleService.saveDeptRole(sysDept.getId(), roleIds);
+                sysDeptRoleService.saveDeptRole(sysDept.getId(), roleIds, sysDeptDto.getSysId());
             }
         } else {
             // 更新部门关系
@@ -93,7 +94,7 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
             sysDeptRelationService.updateDeptRelation(relation);
             //角色部门关系更新
             if (CollUtil.isNotEmpty(roleIds)) {
-                sysDeptRoleService.updateDeptRole(sysDept.getId(), roleIds);
+                sysDeptRoleService.updateDeptRole(sysDept.getId(), roleIds, sysDeptDto.getSysId());
             }
         }
         return R.ok(saveOrUpdate(sysDept));
@@ -167,4 +168,18 @@ public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> impl
         return TreeUtil.build(collect, parentId);
     }
 
+
+    @ApiOperation(value = "获取部门关联角色ID(回显显用)", notes = "获取部门关联角色ID(回显显用)")
+    @PostMapping("getRefRoleIds")
+    public R<List<Long>> getRefRoleIds(@Valid @RequestBody SysDeptDto.QueryRoleDTO dto) {
+        Long sysId = dto.getSysId();
+        List<SysDeptRole> list = sysDeptRoleService.list(
+                Wrappers.<SysDeptRole>lambdaQuery().
+                        eq(SysDeptRole::getDeptId, dto.getId()).
+                        eq(sysId != null, SysDeptRole::getSysId, sysId));
+        List<Long> ids = list.stream().map(SysDeptRole::getRoleId).collect(Collectors.toList());
+        return R.ok(ids);
+    }
+
+
 }

+ 5 - 4
authorize-api-service/src/main/java/com/xy/service/impl/SysWorkUserServiceImpl.java

@@ -117,7 +117,7 @@ public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWo
             sysUserRoleService.remove(Wrappers.<SysUserRole>lambdaUpdate().eq(SysUserRole::getWorkUserId, sysWorkUser.getId())
                     .eq(SysUserRole::getSysId, updateDto.getSysId()));
 
-            List<SysUserRole> sysUserRoleList = roleIds.stream().map(roleId -> new SysUserRole()
+            List<SysUserRole> sysUserRoleList = roleIds.stream().map(roleId -> new SysUserRole().createId()
                     .setRoleId(roleId).setWorkUserId(sysWorkUser.getId()).setSysId(updateDto.getSysId())).collect(Collectors.toList());
             //保存用户角色绑定信息
             sysUserRoleService.saveBatch(sysUserRoleList);
@@ -130,7 +130,7 @@ public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWo
                     .eq(SysUserDept::getWorkUserId, sysWorkUser.getId())
                     .eq(SysUserDept::getSysId, updateDto.getSysId()));
 
-            List<SysUserDept> newSysUserDeptList = deptIds.stream().map(deptId -> new SysUserDept()
+            List<SysUserDept> newSysUserDeptList = deptIds.stream().map(deptId -> new SysUserDept().createId()
                     .setDeptId(deptId).setWorkUserId(sysWorkUser.getId()).setSysId(updateDto.getSysId())).collect(Collectors.toList());
             sysUserDeptService.saveBatch(newSysUserDeptList);
 
@@ -219,13 +219,14 @@ public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWo
     @Override
     @ApiOperation("集合查询")
     public R<List<SysWorkVo>> list(ListDto listDto) {
+        Long sysId = listDto.getSysId();
         //条件构造
         JoinLambdaWrapper<SysWorkUser> joinLambdaWrapper = new JoinLambdaWrapper<>(SysWorkUser.class)
                 .in(SysWorkUser::getId, listDto.getId())
-                .leftJoin(SysUserRole.class, SysUserRole::getWorkUserId, SysWorkUser::getId)
+                .leftJoin(SysUserRole.class, SysUserRole::getWorkUserId, SysWorkUser::getId).eq(sysId != null, SysUserRole::getSysId, sysId)
                 .manyToManySelect(SysWorkVo::getRoleIds, Long.class, cb -> cb.add(SysUserRole::getRoleId))
                 .end()
-                .leftJoin(SysUserDept.class, SysUserDept::getWorkUserId, SysWorkUser::getId)
+                .leftJoin(SysUserDept.class, SysUserDept::getWorkUserId, SysWorkUser::getId).eq(sysId != null, SysUserDept::getSysId, sysId)
                 .manyToManySelect(SysWorkVo::getDeptIds, Long.class, cb -> cb.add(SysUserDept::getDeptId))
                 .end();
         //查询数据

+ 14 - 0
authorize-api/src/main/java/com/xy/dto/SysDeptDto.java

@@ -63,4 +63,18 @@ public class SysDeptDto {
     private List<Long> roleIds;
 
 
+    @Data
+    @ApiModel("添加类")
+    @Accessors(chain = true)
+    public static class QueryRoleDTO {
+
+        @ApiModelProperty(value = "系统id", required = false)
+        private Long sysId;
+
+        @NotNull(message = "部门ID不能为空")
+        @ApiModelProperty(value = "部门ID", required = true)
+        private Long id;
+
+    }
+
 }

+ 3 - 0
authorize-api/src/main/java/com/xy/dto/SysWorkUser/ListDto.java

@@ -17,4 +17,7 @@ public class ListDto {
     @ApiModelProperty(value = "用户ID")
     private List<Long> id;
 
+    @ApiModelProperty(value = "用户ID", required = false)
+    private Long sysId;
+
 }