Parcourir la source

按周审核日报过滤功能

zhouyy il y a 5 mois
Parent
commit
23c24f1577

+ 41 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/WeeklyChargeReportData.java

@@ -0,0 +1,41 @@
+package com.management.platform.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Data
+public class WeeklyChargeReportData {
+    private String content;
+    private BigDecimal cost;
+    private String creatorId;
+    private Integer customData;
+    private String customText;
+    private String date;
+    private Integer degree_id;
+    private Integer departmentAuditState;
+    private String departmentName;
+    private Integer groupAuditState;
+    private Integer groupId;
+    private Integer id;
+    private Integer isDeptAudit;
+    private Integer isOvertime;
+    private BigDecimal multiWorktime;
+    private String name;
+    private BigDecimal overtimeHours;
+    private Integer progress;
+    private String project;
+    private Integer projectAuditState;
+    private String projectAuditorId;
+    private String projectAuditorName;
+    private String projectCode;
+    private Integer projectId;
+    private Integer reportTimeType;
+    private String stage;
+    private Integer state;
+    private Integer time;
+    private Integer timeType;
+    private String userId;
+    private List<WeeklyChargeReportWorkTime> worktimeList;
+}

+ 12 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/WeeklyChargeReportWorkTime.java

@@ -0,0 +1,12 @@
+package com.management.platform.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class WeeklyChargeReportWorkTime {
+    private String endTime;
+    private String startTime;
+    private BigDecimal time;
+}

+ 23 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/entity/WeeklyChargeReports.java

@@ -0,0 +1,23 @@
+package com.management.platform.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+@Data
+public class WeeklyChargeReports {
+    private String auditDeptName;
+    private String corpwxUserid;
+    private BigDecimal cost;
+    private String dateStr;
+    private String departmentName;
+    private String deptAuditorName;
+    private Integer groupAuditState;
+    private String isDeptAudit;
+    private String name;
+    private String reportTime;
+    private Integer state;
+    private String userId;
+    private List<WeeklyChargeReportData> data;
+}

+ 33 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ReportServiceImpl.java

@@ -1876,10 +1876,39 @@ public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> impleme
                     }
                 }
             }
-//            if(1 == timeType.getWeeklyChargeFilter()){
-//
-//            }
-            httpRespMsg.data = nameList;
+            if(1 == timeType.getWeeklyChargeFilter()){
+                Map<String,Object> resMap = new HashMap<>();
+                List<WeeklyChargeReports> weeklyChargeReports = JSONObject.parseArray(JSON.toJSON(nameList).toString(), WeeklyChargeReports.class);
+                System.out.println("weeklyChargeReports.size()== "+weeklyChargeReports.size());
+                List<Integer> finalProjectIdList = new ArrayList<>();
+                for (WeeklyChargeReports weeklyChargeReport : weeklyChargeReports) {
+                    List<Integer> projectIdList = weeklyChargeReport.getData().stream()
+                            .filter(t -> null != t.getProjectId())
+                            .map(WeeklyChargeReportData::getProjectId)
+                            .distinct()
+                            .collect(Collectors.toList());
+                    finalProjectIdList.addAll(projectIdList);
+
+
+
+                }
+                finalProjectIdList = finalProjectIdList.stream().distinct().collect(Collectors.toList());
+
+                List<Project> projects = projectMapper.selectList(new LambdaQueryWrapper<Project>().eq(Project::getCompanyId, companyId)
+                        .in(Project::getId, finalProjectIdList)
+                );
+                resMap.put("projects",projects);
+
+
+
+
+
+
+                httpRespMsg.data = resMap;
+            }else{
+                httpRespMsg.data = nameList;
+            }
+
         } catch (NullPointerException e) {
             //httpRespMsg.setError("验证失败");
             e.printStackTrace();