From 191b8ae5c768fbb97c7cdea87edde77d0a10e7da Mon Sep 17 00:00:00 2001
From: zhanghl <253316343@qq.com>
Date: 星期五, 09 五月 2025 15:15:41 +0800
Subject: [PATCH] 钣金需求匹配-完善工时计算

---
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java |   54 ++++++++++++++++++++++++++++--------------------------
 1 files changed, 28 insertions(+), 26 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java
index ea0b10f..3a71bcf 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java
@@ -313,30 +313,32 @@
             String planStartDate = "";
             //缁熻鎵�鏈夊伐搴忓搴旂殑寮�宸ユ椂闂�
             for (ApsGasPipingRouteStat apsGasPipingRouteStatTemp : apsGasPipingRouteStats) {
-                planStartDate = simpleDateFormat.format(apsGasPipingRouteStatTemp.getProcessPlanStartDay());
-                if("month".equals(apsGasPipingRouteStat.getSearchType())){
-                    planStartDate = planStartDate+"-01";
-                }
-                ApsResourceDateStat apsResourceDateStat = new ApsResourceDateStat();
-                apsResourceDateStat.setPlanDay(LocalDate.parse(planStartDate, formatter));
-                apsResourceDateStat.setResourceName(apsGasPipingRouteStatTemp.getProcessName());
-                //鏌ヨ姘旀煖绠¤矾浜ц兘瑙勫垝琛�
-                apsResourceDateStat.setDesignTimes(apsGasPipingPlanMap.get(apsGasPipingRouteStatTemp.getProcessName()+"-"+planStartDate.substring(0, 7))!=null?apsGasPipingPlanMap.get(apsGasPipingRouteStatTemp.getProcessName()+"-"+planStartDate.substring(0, 7)).getDayProduceAllNum():new BigDecimal(0));
-                //鏌ヨ鏂欏彿宸ュ簭浜ц兘琛�
-                apsResourceDateStat.setRequireTimes(apsGasPipingRouteStatTemp.getProcessTotalTime());
-                if(apsResourceDateStat.getDesignTimes().compareTo(BigDecimal.ZERO)>0){
-                    apsResourceDateStat.setCapacityLoad(apsResourceDateStat.getRequireTimes()
-                            .divide(apsResourceDateStat.getDesignTimes(), 2, RoundingMode.HALF_UP)
-                            .multiply(new BigDecimal(100)));
-                }else{
-                    apsResourceDateStat.setCapacityLoad(BigDecimal.valueOf(0));
-                }
-                List<ApsResourceDateStat> apsResourceDateStatList = new ArrayList<>();
                 if(processMap.containsKey(apsGasPipingRouteStatTemp.getProcessName())){
-                    apsResourceDateStatList = processMap.get(apsGasPipingRouteStatTemp.getProcessName());
+                    planStartDate = simpleDateFormat.format(apsGasPipingRouteStatTemp.getProcessPlanStartDay());
+                    if("month".equals(apsGasPipingRouteStat.getSearchType())){
+                        planStartDate = planStartDate+"-01";
+                    }
+                    ApsResourceDateStat apsResourceDateStat = new ApsResourceDateStat();
+                    apsResourceDateStat.setPlanDay(LocalDate.parse(planStartDate, formatter));
+                    apsResourceDateStat.setResourceName(apsGasPipingRouteStatTemp.getProcessName());
+                    //鏌ヨ姘旀煖绠¤矾浜ц兘瑙勫垝琛�
+                    apsResourceDateStat.setDesignTimes(apsGasPipingPlanMap.get(apsGasPipingRouteStatTemp.getProcessName()+"-"+planStartDate.substring(0, 7))!=null?apsGasPipingPlanMap.get(apsGasPipingRouteStatTemp.getProcessName()+"-"+planStartDate.substring(0, 7)).getDayProduceAllNum():new BigDecimal(0));
+                    //鏌ヨ鏂欏彿宸ュ簭浜ц兘琛�
+                    apsResourceDateStat.setRequireTimes(apsGasPipingRouteStatTemp.getProcessTotalTime());
+                    if(apsResourceDateStat.getDesignTimes().compareTo(BigDecimal.ZERO)>0){
+                        apsResourceDateStat.setCapacityLoad(apsResourceDateStat.getRequireTimes()
+                                .divide(apsResourceDateStat.getDesignTimes(), 2, RoundingMode.HALF_UP)
+                                .multiply(new BigDecimal(100)));
+                    }else{
+                        apsResourceDateStat.setCapacityLoad(BigDecimal.valueOf(0));
+                    }
+                   // apsResourceDateStatList = new ArrayList<>();
+
+                    List<ApsResourceDateStat>   apsResourceDateStatList = processMap.get(apsGasPipingRouteStatTemp.getProcessName());
+                    apsResourceDateStatList.add(apsResourceDateStat);
+                    processMap.put(apsGasPipingRouteStatTemp.getProcessName(), apsResourceDateStatList);
                 }
-                apsResourceDateStatList.add(apsResourceDateStat);
-                processMap.put(apsGasPipingRouteStatTemp.getProcessName(), apsResourceDateStatList);
+
             }
             //鑱氬悎姣忛亾宸ュ簭鐨勫紑宸ユ椂闂村拰浜ц兘
             processMap.forEach((processName, apsResourceDateStatList) -> {
@@ -697,10 +699,10 @@
                     }
                 }
                if(stat.getProcessPlanStartDay()!=null){
-                   Date processPlanStartDay = stat.getProcessPlanStartDay();
-                   stat.setPlanStartYear(processPlanStartDay.getYear()+"");
-                   stat.setPlanStartMonth(processPlanStartDay.getMonth()+"");
-                   stat.setPlanStartDay(processPlanStartDay.getDay()+"");
+                   String[] strNow = new SimpleDateFormat("yyyy-MM-dd").format(stat.getProcessPlanStartDay()).toString().split("-");
+                   stat.setPlanStartYear(strNow[0]);
+                   stat.setPlanStartMonth(strNow[1]);
+                   stat.setPlanStartDay(strNow[2]);
                }
                 last = stat;
                 cptStateList.add(stat);

--
Gitblit v1.9.3