|
@@ -1749,7 +1749,9 @@ public class DataDashboardService {
|
|
|
List<ProducePlanAuditExport> exportList = new ArrayList<>();
|
|
|
dateStrList = Lists.reverse(dateStrList);
|
|
|
for (String dateStr : dateStrList) {
|
|
|
- exportList.addAll(buildProducePlanAuditExport(dateStr));
|
|
|
+ String yesterday = DateUtils.getBeforeDaysDateStr(dateStr, "yyyyMMdd", 1);
|
|
|
+ List<ProducePlanAuditExport> yesterdayExportList = buildProducePlanAuditExport(yesterday, new ArrayList<>());
|
|
|
+ exportList.addAll(buildProducePlanAuditExport(dateStr, yesterdayExportList));
|
|
|
}
|
|
|
if (CollectionUtil.isEmpty(exportList)) {
|
|
|
return;
|
|
@@ -1777,7 +1779,8 @@ public class DataDashboardService {
|
|
|
2, null, null);
|
|
|
}
|
|
|
|
|
|
- private List<ProducePlanAuditExport> buildProducePlanAuditExport(String dateStr) {
|
|
|
+ private List<ProducePlanAuditExport> buildProducePlanAuditExport(String dateStr,
|
|
|
+ List<ProducePlanAuditExport> yesterdayExportList) {
|
|
|
Long timeStamp = DateUtils.getStartOfDay(dateStr, "yyyyMMdd") * 1000;
|
|
|
List<String> planIds = Arrays.asList("20240802143345289374071", "20240802171417146947657",
|
|
|
"20240804003153130851174", "20241030070010871546586", "20240802080355355308981",
|
|
@@ -1792,6 +1795,8 @@ public class DataDashboardService {
|
|
|
timeStamp, timeStamp + 86400000, planIds);
|
|
|
Map<String, Integer> producePlanProduceMap = producePlanProduceList.stream()
|
|
|
.collect(Collectors.toMap(ProducePlanAuditCheckDTO::getPlanId, ProducePlanAuditCheckDTO::getNum));
|
|
|
+ Map<String, ProducePlanAuditExport> yesterdayMap = yesterdayExportList.stream()
|
|
|
+ .collect(Collectors.toMap(ProducePlanAuditExport::getPlanName, o -> o));
|
|
|
List<ProducePlanAuditExport> exportList = new ArrayList<>();
|
|
|
Integer totalAuditNum = 0, totalAuditPassNum = 0, totalWaitingAuditNum = 0, totalAuditFailNum = 0, totalProduceNum = 0;
|
|
|
for (String planId : planIds) {
|
|
@@ -1815,22 +1820,31 @@ public class DataDashboardService {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ String planName = producePlanMap.get(planId);
|
|
|
+ ProducePlanAuditExport yesterdayExport = yesterdayMap.get(planName);
|
|
|
Integer produceCount = producePlanProduceMap.getOrDefault(planId, 0);
|
|
|
totalProduceNum += produceCount;
|
|
|
ProducePlanAuditExport export = new ProducePlanAuditExport();
|
|
|
export.setDateStr(dateStr);
|
|
|
- export.setPlanName(producePlanMap.get(planId));
|
|
|
+ export.setPlanName(planName);
|
|
|
export.setProduceCount(produceCount);
|
|
|
+ if (Objects.nonNull(yesterdayExport)) {
|
|
|
+ export.setRealProduceCount(waitingAuditNum + yesterdayAuditNum - yesterdayExport.getHisNotAuditCount());
|
|
|
+ }
|
|
|
export.setAuditCount(yesterdayAuditNum);
|
|
|
export.setAuditPassCount(yesterdayAuditPassNum);
|
|
|
export.setHisNotAuditCount(waitingAuditNum);
|
|
|
export.setAuditFailCount(yesterdayAuditFailNum);
|
|
|
exportList.add(export);
|
|
|
}
|
|
|
+ ProducePlanAuditExport yesterdayExport = yesterdayMap.get("SUM");
|
|
|
ProducePlanAuditExport sum = new ProducePlanAuditExport();
|
|
|
sum.setDateStr(dateStr);
|
|
|
sum.setPlanName("SUM");
|
|
|
sum.setProduceCount(totalProduceNum);
|
|
|
+ if (Objects.nonNull(yesterdayExport)) {
|
|
|
+ sum.setRealProduceCount(totalWaitingAuditNum + totalAuditNum - yesterdayExport.getHisNotAuditCount());
|
|
|
+ }
|
|
|
sum.setAuditCount(totalAuditNum);
|
|
|
sum.setAuditPassCount(totalAuditPassNum);
|
|
|
sum.setHisNotAuditCount(totalWaitingAuditNum);
|