From 01136df34a1d8edb6972bbec725b656a602b83af Mon Sep 17 00:00:00 2001
From: elkers <elkers@163.com>
Date: 星期四, 24 四月 2025 16:58:27 +0800
Subject: [PATCH] 修改启泵时间时长计算

---
 src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java |   86 ++++++++++++++++++++++++++++++++++--------
 1 files changed, 69 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java b/src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java
index bff5f78..d4b5be5 100644
--- a/src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java
+++ b/src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java
@@ -291,6 +291,18 @@
             result = CopierUtil.mapTo(facilityPOList, WaterFacilityVO.class);
             int sumTime=0;
             for(WaterFacilityVO facilityVO:result){
+                WaterPumpOperatingRecordPO b001 = recordPOList.stream().filter(item -> item.getFacilityId().equals(facilityVO.getId()) && item.getCode().equals("B001Start")).findFirst().orElse(null);
+                WaterPumpOperatingRecordPO b002 = recordPOList.stream().filter(item -> item.getFacilityId().equals(facilityVO.getId()) && item.getCode().equals("B002Start")).findFirst().orElse(null);
+                if(Objects.nonNull(b001)){
+                    sumTime+=b001.getSumStartTime();
+                }
+                if(Objects.nonNull(b002)){
+                    sumTime+=b002.getSumStartTime();
+                }
+                if(sumTime>0){
+                    String timeString = timeString(sumTime);
+                    facilityVO.setTotalTime(timeString);
+                }
                 List<WaterFacilityParameterPO> collect = parameterPOList.stream().filter(x -> x.getFacilityId().equals(facilityVO.getId())).collect(Collectors.toList());
                 if(ListUtil.isNotNullOrEmpty(collect)){
                     List<WaterFacilityParameterVO>parameterVOList=CopierUtil.mapTo(collect, WaterFacilityParameterVO.class);
@@ -306,28 +318,68 @@
                         if("true".equals(parameterVO.getColumnValue())){
                             parameterVO.setColumnValue("开");
                         }
-                        if(parameterVO.getColumnsCode().equals("B001TimeSum")||parameterVO.getColumnsCode().equals("B002TimeSum")){
-                            int time = new BigDecimal(parameterVO.getColumnValue()).intValue();
-                            sumTime=sumTime+time;
-                            if(sumTime>0){
-                                String timeString = timeString(sumTime);
-                                facilityVO.setTotalTime(timeString);
-                            }
-                        }
-                        if(parameterVO.getColumnsCode().equals("B001Time")||parameterVO.getColumnsCode().equals("B002Time")||parameterVO.getColumnsCode().equals("B001TimeSum")||parameterVO.getColumnsCode().equals("B002TimeSum")){
+                        if(parameterVO.getColumnsCode().equals("B001Time")){
                             //计算时分秒
-                            Integer time= new BigDecimal(parameterVO.getColumnValue()).intValue();
-                            if(time>0){
-                                String timeString = timeString(time);
-                                parameterVO.setColumnValue(timeString);
+                            if(Objects.nonNull(b001)){
+                                if(b001.getStartTime()>0){
+                                    String timeString = timeString(b001.getStartTime());
+                                    parameterVO.setColumnValue(timeString);
+                                }else {
+                                    parameterVO.setColumnValue(String.valueOf(0));
+                                }
+                            }else {
+                                parameterVO.setColumnValue(String.valueOf(0));
                             }
                         }
-                        if(parameterVO.getColumnsCode().equals("B001StartNumber")||parameterVO.getColumnsCode().equals("B002StartNumber")){
-                            WaterPumpOperatingRecordPO recordPO = recordPOList.stream().filter(item -> item.getFacilityId().equals(facilityVO.getId()) && item.getCode().equals(parameterVO.getColumnsCode())).findFirst().orElse(null);
-                            if(Objects.nonNull(recordPO)){
-                                parameterVO.setColumnValue(recordPO.getStartNumber().toString());
+                        if(parameterVO.getColumnsCode().equals("B002Time")){//计算时分秒
+                            if(Objects.nonNull(b002)){
+                                if(b002.getStartTime()>0){
+                                    String timeString = timeString(b002.getStartTime());
+                                    parameterVO.setColumnValue(timeString);
+                                }else {
+                                    parameterVO.setColumnValue(String.valueOf(0));
+                                }
+                            }else {
+                                parameterVO.setColumnValue(String.valueOf(0));
+                            }
+
+                        }
+                        if(parameterVO.getColumnsCode().equals("B001TimeSum")){
+                            if(Objects.nonNull(b001)){
+                                if(b001.getSumStartTime()>0){
+                                    String timeString = timeString(b001.getSumStartTime());
+                                    parameterVO.setColumnValue(timeString);
+                                }else {
+                                    parameterVO.setColumnValue(String.valueOf(0));
+                                }
+                            }else {
+                                parameterVO.setColumnValue(String.valueOf(0));
+                            }
+
+                        }
+                        if(parameterVO.getColumnsCode().equals("B002TimeSum")){
+                            if(Objects.nonNull(b002)){
+                                if(b002.getSumStartTime()>0){
+                                    String timeString = timeString(b002.getSumStartTime());
+                                    parameterVO.setColumnValue(timeString);
+                                }else {
+                                    parameterVO.setColumnValue(String.valueOf(0));
+                                }
+                            }else {
+                                parameterVO.setColumnValue(String.valueOf(0));
                             }
                         }
+                        if(parameterVO.getColumnsCode().equals("B001StartNumber")){
+                            if(Objects.nonNull(b001)){
+                                parameterVO.setColumnValue(b001.getStartNumber().toString());
+                            }
+                        }
+                        if(parameterVO.getColumnsCode().equals("B002StartNumber")){
+                            if(Objects.nonNull(b002)){
+                                parameterVO.setColumnValue(b002.getStartNumber().toString());
+                            }
+                        }
+
                     }
                     facilityVO.setParameterVOList(parameterVOList);
                 }

--
Gitblit v1.9.3