| | |
| | | public void addApprove(ApproveProcessVO approveProcessVO) throws Exception { |
| | | SysUser sysUser = sysUserMapper.selectUserById(approveProcessVO.getApproveUser()); |
| | | List<Long> approveDeptIds = normalizeDeptIds(approveProcessVO.getApproveDeptIdArray(), approveProcessVO.getApproveDeptId()); |
| | | List<SysDept> sysDepts = sysDeptMapper.selectBatchIds(approveDeptIds); |
| | | Map<Long, SysDept> deptMap = sysDepts.stream().collect(Collectors.toMap(SysDept::getDeptId, dept -> dept)); |
| | | Map<Long, SysDept> deptMap = loadDepartments(approveDeptIds); |
| | | if (deptMap.size() != approveDeptIds.size()) throw new RuntimeException("部门不存在"); |
| | | SysDept sysDept = deptMap.get(approveDeptIds.get(0)); |
| | | String[] split = approveProcessVO.getApproveUserIds().split(","); |
| | |
| | | if (approveGetAndUpdateVo.getApproveDeptIdArray() != null || approveGetAndUpdateVo.getApproveDeptId() != null) { |
| | | if (approve.getApproveStatus() == 1) throw new RuntimeException("审核中不可以修改审批部门"); |
| | | List<Long> deptIds = normalizeDeptIds(approveGetAndUpdateVo.getApproveDeptIdArray(), approveGetAndUpdateVo.getApproveDeptId()); |
| | | List<SysDept> departments = sysDeptMapper.selectBatchIds(deptIds); |
| | | Map<Long, SysDept> deptMap = departments.stream().collect(Collectors.toMap(SysDept::getDeptId, dept -> dept)); |
| | | Map<Long, SysDept> deptMap = loadDepartments(deptIds); |
| | | if (deptMap.size() != deptIds.size()) throw new RuntimeException("部门不存在"); |
| | | approve.setApproveDeptId(deptIds.get(0)); |
| | | approve.setApproveDeptName(deptIds.stream().map(deptMap::get).map(SysDept::getDeptName).collect(Collectors.joining(","))); |
| | |
| | | } |
| | | |
| | | |
| | | private Map<Long, SysDept> loadDepartments(List<Long> deptIds) { |
| | | Map<Long, SysDept> deptMap = new java.util.HashMap<>(); |
| | | for (Long deptId : deptIds) { |
| | | SysDept dept = sysDeptMapper.selectDeptById(deptId); |
| | | if (dept != null) deptMap.put(deptId, dept); |
| | | } |
| | | return deptMap; |
| | | } |
| | | |
| | | private List<Long> normalizeDeptIds(List<Long> deptIds, Long deptId) { |
| | | List<Long> ids = deptIds == null || deptIds.isEmpty() ? (deptId == null ? new ArrayList<>() : Arrays.asList(deptId)) : deptIds; |
| | | if (ids.isEmpty()) throw new RuntimeException("请选择审批部门"); |