From 55b27f5ff82fcb1e81340bb3793ad4d5abd51072 Mon Sep 17 00:00:00 2001 From: zhanghl <253316343@qq.com> Date: 星期三, 16 四月 2025 15:45:13 +0800 Subject: [PATCH] 焊缝统计表-逻辑更新 --- aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWeldSeamServiceImpl.java | 47 ++++++++++++++++++++++++++++------------------- 1 files changed, 28 insertions(+), 19 deletions(-) diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWeldSeamServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWeldSeamServiceImpl.java index 145f118..417fdf7 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWeldSeamServiceImpl.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsWeldSeamServiceImpl.java @@ -139,35 +139,44 @@ List<Long> years = apsWeldSeamStatistics.stream().map(ApsWeldSeamStatistics::getYear).distinct().toList(); List<Long> months = apsWeldSeamStatistics.stream().map(ApsWeldSeamStatistics::getMonth).distinct().toList(); List<String> bases = apsWeldSeamStatistics.stream().map(ApsWeldSeamStatistics::getProductionBase).distinct().toList(); - + /*宸ュ崟绫诲瀷锛氳鍗�*/ + String WorkOrderType_Order="0"; + /*宸ュ崟绫诲瀷锛氶娴�*/ + String WorkOrderType_Prediction="1"; + /*绫诲瀷锛氭皵浣�*/ + String Classification_Gas="0"; + /*绫诲瀷锛氱璺�*/ + String Classification_Piping="1"; for (Long year : years) { for (Long month : months) { for (String basis : bases) { List<ApsWeldSeamStatistics> list = apsWeldSeamStatistics.stream() .filter(x -> x.getYear().equals(year) && x.getMonth().equals(month) && x.getProductionBase().equals(basis)).toList(); - long gasOrderRequirement = list.stream().filter(x -> x.getWorkOrderType().equals("0") && x.getClassification().equals("0")) + long gasOrderRequirement = list.stream().filter(x -> x.getWorkOrderType().equals(WorkOrderType_Order) && x.getClassification().equals(Classification_Gas)) .mapToLong(ApsWeldSeamStatistics::getTotal).sum(); - long gasPredictionRequirement = list.stream().filter(x -> x.getWorkOrderType().equals("1") && x.getClassification().equals("0")) + long gasPredictionRequirement = list.stream().filter(x -> x.getWorkOrderType().equals(WorkOrderType_Prediction) && x.getClassification().equals(Classification_Gas)) .mapToLong(ApsWeldSeamStatistics::getTotal).sum(); - long pipingOrderRequirement = list.stream().filter(x -> x.getWorkOrderType().equals("0") && x.getClassification().equals("1")) + long pipingOrderRequirement = list.stream().filter(x -> x.getWorkOrderType().equals(WorkOrderType_Order) && x.getClassification().equals(Classification_Piping)) .mapToLong(ApsWeldSeamStatistics::getTotal).sum(); - long pipingPredictionRequirement = list.stream().filter(x -> x.getWorkOrderType().equals("1") && x.getClassification().equals("1")) + long pipingPredictionRequirement = list.stream().filter(x -> x.getWorkOrderType().equals(WorkOrderType_Prediction) && x.getClassification().equals(Classification_Piping)) .mapToLong(ApsWeldSeamStatistics::getTotal).sum(); - - ApsWeldSeamStatistics seamStatistics = new ApsWeldSeamStatistics(); - seamStatistics.setId(IdUtils.fastSimpleUUID()); - seamStatistics.setYear(year); - seamStatistics.setMonth(month); - seamStatistics.setProductionBase(basis); - seamStatistics.setPipingOrderRequirement(pipingOrderRequirement); - seamStatistics.setPipingPredictionRequirement(pipingPredictionRequirement); - seamStatistics.setGasOrderRequirement(gasOrderRequirement); - seamStatistics.setGasPredictionRequirement(gasPredictionRequirement); - seamStatistics.setTotal(gasOrderRequirement + gasPredictionRequirement + pipingOrderRequirement + pipingPredictionRequirement); - seamStatistics.setCreateTime(DateUtils.getNowDate()); - seamStatistics.setCreateBy(SecurityUtils.getUsername()); - apsWeldSeamStatisticsMapper.insertApsWeldSeamStatistics(seamStatistics); + long total = gasOrderRequirement + gasPredictionRequirement + pipingOrderRequirement + pipingPredictionRequirement; + if(total>0) { + ApsWeldSeamStatistics seamStatistics = new ApsWeldSeamStatistics(); + seamStatistics.setId(IdUtils.fastSimpleUUID()); + seamStatistics.setYear(year); + seamStatistics.setMonth(month); + seamStatistics.setProductionBase(basis); + seamStatistics.setPipingOrderRequirement(pipingOrderRequirement); + seamStatistics.setPipingPredictionRequirement(pipingPredictionRequirement); + seamStatistics.setGasOrderRequirement(gasOrderRequirement); + seamStatistics.setGasPredictionRequirement(gasPredictionRequirement); + seamStatistics.setTotal(total); + seamStatistics.setCreateTime(DateUtils.getNowDate()); + seamStatistics.setCreateBy(SecurityUtils.getUsername()); + apsWeldSeamStatisticsMapper.insertApsWeldSeamStatistics(seamStatistics); + } } } -- Gitblit v1.9.3