From 188776066eb8d35cf789bed2c866bf351ca64f4a Mon Sep 17 00:00:00 2001
From: shenyijian <1178253012@qq.com>
Date: Wed, 16 Oct 2024 18:43:58 +0800
Subject: [PATCH] 湖北水库:项目流程添加设备排序

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java
index 4644186..d48235a 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java
@@ -220,6 +220,7 @@
 						SgDeviceDO sgDeviceDO = new SgDeviceDO();
 						sgDeviceDO.setId(dId);
 						sgDeviceDO.setDeviceName(deList.get(0).getDeviceName());
+						sgDeviceDO.setPrice(deList.get(0).getPrice());
 						List<SgGxStepDO> stepDOS = deList.stream().filter(s -> s.getReportStatus() == null || (s.getReportStatus() != 4 && !(s.getReportStatus() == 3 && s.getResubmit() != 0))).map(s -> SgGxStepDO.builder().id(s.getStepId()).gxStepNum(s.getGxStepNum()).gxStepName(s.getGxStepName()).deviceId(s.getDId()).approvalStatus(s.getReportStatus()).build()).collect(Collectors.toList());
 						List<SgGxStepDO> stepOver = stepDOS.stream().filter(s -> s.getApprovalStatus() != null && s.getApprovalStatus() == 2).collect(Collectors.toList());
 						BigDecimal stepSize = BigDecimal.valueOf(stepDOS.size());
@@ -239,7 +240,8 @@
 					double sum = deviceDOS.stream().mapToDouble(s -> Double.parseDouble(s.getProgress())).sum();
 					BigDecimal deviceOver = BigDecimal.valueOf(sum);
 					BigDecimal divideDevice = deviceOver.divide(deviceSize, 2, RoundingMode.HALF_UP);
-					typeVO.setDeviceDOS(deviceDOS);
+					List<SgDeviceDO> sortDeviceDOs = deviceDOS.stream().sorted(Comparator.comparing(SgDeviceDO::getPrice)).collect(Collectors.toList());
+					typeVO.setDeviceDOS(sortDeviceDOs);
 					typeVO.setTypeProgress(getBigDecimalPercent(divideDevice));
 					typeVO.setProgress(divideDevice.toString());
 					sgGxDOS.add(typeVO);
@@ -408,12 +410,16 @@
 				SgOperatingRateVO sVo = deviceTypes.get(vo.getProIds());
 				if (Objects.nonNull(sVo)){
 					vo.setSurfaceNum(sVo.getSurfaceNum());
+					vo.setSurfaceStartNum(sVo.getSurfaceStartNum());
 					vo.setSurfaceProgress(sVo.getSurfaceProgress());
 					vo.setVideoNum(sVo.getVideoNum());
+					vo.setVideoStartNum(sVo.getVideoStartNum());
 					vo.setVideoProgress(sVo.getVideoProgress());
 					vo.setTransNum(sVo.getTransNum());
+					vo.setTransStartNum(sVo.getTransStartNum());
 					vo.setTransProgress(sVo.getTransProgress());
 					vo.setSeepageNum(sVo.getSeepageNum());
+					vo.setSeepageStartNum(sVo.getSeepageStartNum());
 					vo.setSeepageProgress(sVo.getSeepageProgress());
 				}
 			}
@@ -465,6 +471,7 @@
 						Integer deviceCount = sg108.getDeviceCount();
 						Integer deviceStart = sg108.getDeviceStart();
 						sgOperatingRateVO.setSurfaceNum(deviceCount);
+						sgOperatingRateVO.setSurfaceStartNum(deviceStart);
 						if (deviceCount != 0){
 							BigDecimal divide = BigDecimal.valueOf(deviceStart).divide(BigDecimal.valueOf(deviceCount), 2, BigDecimal.ROUND_UP);
 							sgOperatingRateVO.setSeepageProgress(getBigDecimalPercent(divide));
@@ -478,6 +485,7 @@
 						Integer deviceCount = sg104.getDeviceCount();
 						Integer deviceStart = sg104.getDeviceStart();
 						sgOperatingRateVO.setVideoNum(deviceCount);
+						sgOperatingRateVO.setVideoStartNum(deviceStart);
 						if (deviceCount != 0){
 							BigDecimal divide = BigDecimal.valueOf(deviceStart).divide(BigDecimal.valueOf(deviceCount), 2, BigDecimal.ROUND_UP);
 							sgOperatingRateVO.setVideoProgress(getBigDecimalPercent(divide));
@@ -491,6 +499,7 @@
 						Integer deviceCount = sg101.getDeviceCount();
 						Integer deviceStart = sg101.getDeviceStart();
 						sgOperatingRateVO.setTransNum(deviceCount);
+						sgOperatingRateVO.setTransStartNum(deviceStart);
 						if (deviceCount != 0){
 							BigDecimal divide = BigDecimal.valueOf(deviceStart).divide(BigDecimal.valueOf(deviceCount), 2, BigDecimal.ROUND_UP);
 							sgOperatingRateVO.setTransProgress(getBigDecimalPercent(divide));
@@ -504,6 +513,7 @@
 						Integer deviceCount = sg102.getDeviceCount();
 						Integer deviceStart = sg102.getDeviceStart();
 						sgOperatingRateVO.setSeepageNum(deviceCount);
+						sgOperatingRateVO.setSeepageStartNum(deviceStart);
 						if (deviceCount != 0){
 							BigDecimal divide = BigDecimal.valueOf(deviceStart).divide(BigDecimal.valueOf(deviceCount), 2, BigDecimal.ROUND_UP);
 							sgOperatingRateVO.setSeepageProgress(getBigDecimalPercent(divide));

--
Gitblit v1.9.3