Ver código fonte

修复工时统计未显示离职员工部门和名称的问题

zhangjq 1 ano atrás
pai
commit
1c50cd82af

+ 2 - 2
zjugis-module-adm/zjugis-module-adm-biz/src/main/java/com/zjugis/module/adm/service/report/ReportServiceImpl.java

@@ -842,7 +842,7 @@ public class ReportServiceImpl implements ReportService {
 
         Map<String, BigDecimal> workloadStatisticMap = reportWorkloadRelationList.stream().collect(Collectors.groupingBy(item -> item.getUserId() + "_" + item.getProjectId(), Collectors.mapping(ReportWorkloadDO::getWorkTime, Collectors.reducing(BigDecimal.ZERO, BigDecimal::add))));
 
-        Map<String, AdminUserRespDTO> userMap = adminUserApi.getUserMap();
+        Map<String, AdminUserRespDTO> userMap = adminUserApi.getAllUserMap();
         Map<String, String> contractMap = getContractMap();
         List<ReportWorkloadStatisticVO> resultList = new ArrayList<>();
         for (String key : workloadStatisticMap.keySet()) {
@@ -854,7 +854,7 @@ public class ReportServiceImpl implements ReportService {
             ReportWorkloadStatisticVO result = new ReportWorkloadStatisticVO();
             result.setUserId(userId);
             result.setNickName(userMap.get(userId) == null ? null : userMap.get(userId).getNickname());
-            result.setDeptId(userId);
+            result.setDeptId(userMap.get(userId) == null ? null : userMap.get(userId).getDeptId());
             result.setDeptName(userMap.get(userId) == null ? null : userMap.get(userId).getDeptName());
             result.setProjectId(projectId);
             result.setContractNumber(contractMap.get(projectId));

+ 13 - 0
zjugis-module-system/zjugis-module-system-api/src/main/java/com/zjugis/module/system/api/user/AdminUserApi.java

@@ -63,6 +63,10 @@ public interface AdminUserApi {
     @Operation(summary = "获取全部开启用户")
     CommonResult<List<AdminUserRespDTO>> getUserList();
 
+    @GetMapping(PREFIX + "/list-all")
+    @Operation(summary = "获取全部用户")
+    CommonResult<List<AdminUserRespDTO>> getAllUserList();
+
     @GetMapping(PREFIX + "/dept-child-list-by-dept-id")
     @Operation(summary = "获得指定部门的用户数组")
     @Parameter(name = "deptIds", description = "部门编号数组", example = "1,2", required = true)
@@ -107,6 +111,15 @@ public interface AdminUserApi {
         return CollectionUtils.convertMap(getUserList().getCheckedData(), AdminUserRespDTO::getId);
     }
 
+    /**
+     * 获得全部用户 Map
+     *
+     * @return 用户 Map
+     */
+    default Map<String, AdminUserRespDTO> getAllUserMap() {
+        return CollectionUtils.convertMap(getAllUserList().getCheckedData(), AdminUserRespDTO::getId);
+    }
+
     @GetMapping(PREFIX + "/valid")
     @Operation(summary = "校验用户们是否有效")
     @Parameter(name = "ids", description = "用户编号数组", example = "3,5", required = true)

+ 6 - 0
zjugis-module-system/zjugis-module-system-biz/src/main/java/com/zjugis/module/system/api/user/AdminUserApiImpl.java

@@ -98,6 +98,12 @@ public class AdminUserApiImpl implements AdminUserApi {
         return success(UserConvert.INSTANCE.convertList4(list));
     }
 
+    @Override
+    public CommonResult<List<AdminUserRespDTO>> getAllUserList() {
+        List<AdminUserDO> list = userService.getUserList();
+        return success(UserConvert.INSTANCE.convertList4(list));
+    }
+
     @Override
     public CommonResult<List<AdminUserRespDTO>> getDeptChildUserListByDeptId(String deptId) {
         List<AdminUserDO> users = userService.getUserListByDeptId(deptId);