From 2d928646669fe6026c7d63f6b409d9b2790aa65e Mon Sep 17 00:00:00 2001 From: 龚焕茏 <2842157468@qq.com> Date: 星期五, 19 七月 2024 16:09:20 +0800 Subject: [PATCH] feat:设置部门管理员报错解决 --- src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java | 39 ++++++++++++++++++++++----------------- 1 files changed, 22 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java index f723447..0389eab 100644 --- a/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java +++ b/src/main/java/com/mindskip/xzs/service/impl/DepartmentServiceImpl.java @@ -58,15 +58,19 @@ if (Objects.isNull(entity)) { throw new RuntimeException("璇ラ儴闂ㄤ笉瀛樺湪"); } + // 鍏堟竻闄や箣鍓嶇殑绠$悊鍛樻爣璇� + List<BaseSelect> deptUserList = userDepartmentMapper.getDeptUserList(entity.getId()); + List<Integer> userIds = deptUserList.stream().map(BaseSelect::getId).collect(Collectors.toList()); + if (! CollectionUtils.isEmpty(userIds)) { + userMapper.clearDeptAdmin(userIds, entity.getId()); + userMapper.cancelUserDeptAdmin(userIds); + } + // 璁剧疆閮ㄩ棬绠$悊鍛� if (! CollectionUtils.isEmpty(department.getAdminId())) { - List<BaseSelect> deptUserList = userDepartmentMapper.getDeptUserList(entity.getId()); - List<Integer> userIds = deptUserList.stream().map(BaseSelect::getId).collect(Collectors.toList()); - if (! CollectionUtils.isEmpty(userIds)) { - // 鍏堟竻闄や箣鍓嶇殑绠$悊鍛樻爣璇� - userMapper.clearDeptAdmin(userIds, entity.getId()); - } - // 鏍囪瘑閮ㄩ棬绠$悊鍛� userMapper.updateDeptAdmin(department.getAdminId(), DeptAdminEnum.YES.getValue(), entity.getId()); + UpdateDeptAdminVO updateDeptAdminVO = new UpdateDeptAdminVO(); + updateDeptAdminVO.setAdminIds(department.getAdminId()); + userMapper.updateUserDeptAdmin(updateDeptAdminVO); } if (Objects.nonNull(department.getParentId())) { // 鏌ュ嚭鐖剁骇鐨勫眰绾� @@ -133,6 +137,7 @@ Collections.reverse(fatherList); vo.setParentIds(fatherList); } + vo.setAdminId(userDepartmentMapper.selectDeptAdmin(id)); return vo; } @@ -163,20 +168,20 @@ if (Objects.isNull(entity)) { throw new RuntimeException("璇ラ儴闂ㄤ笉瀛樺湪"); } + List<BaseSelect> deptUserList = userDepartmentMapper.getDeptUserList(entity.getId()); + List<Integer> userIds = deptUserList.stream().map(BaseSelect::getId).collect(Collectors.toList()); + if (! CollectionUtils.isEmpty(userIds)) { + // 鍏堟竻闄や箣鍓嶇殑绠$悊鍛樻爣璇� + userMapper.clearDeptAdmin(userIds, entity.getId()); + // 淇敼娌¤閫夋嫨鐨勭敤鎴峰苟涓斾笉鏄埆鐨勯儴闂ㄧ鐞嗗憳鐨勭敤鎴疯鑹蹭负1 + userMapper.cancelUserDeptAdmin(userIds); + } if (! CollectionUtils.isEmpty(form.getAdminIds())) { - List<BaseSelect> deptUserList = userDepartmentMapper.getDeptUserList(entity.getId()); - List<Integer> userIds = deptUserList.stream().map(BaseSelect::getId).collect(Collectors.toList()); - if (! CollectionUtils.isEmpty(userIds)) { - // 鍏堟竻闄や箣鍓嶇殑绠$悊鍛樻爣璇� - userMapper.clearDeptAdmin(userIds, entity.getId()); - } // 鏍囪瘑閮ㄩ棬绠$悊鍛� userMapper.updateDeptAdmin(form.getAdminIds(), DeptAdminEnum.YES.getValue(), entity.getId()); + // 淇敼琚�夋嫨鐨勭敤鎴蜂负閮ㄩ棬绠$悊鍛� + userMapper.updateUserDeptAdmin(form); } - // 淇敼琚�夋嫨鐨勭敤鎴蜂负閮ㄩ棬绠$悊鍛� - userMapper.updateUserDeptAdmin(form); - // 淇敼娌¤閫夋嫨鐨勭敤鎴峰苟涓斾笉鏄埆鐨勯儴闂ㄧ鐞嗗憳鐨勭敤鎴疯鑹蹭负1 - userMapper.cancelUserDeptAdmin(form); } @Override -- Gitblit v1.8.0