From 1b8c74f3dc3ac98c08ffa157e40c0bd5a9aeb799 Mon Sep 17 00:00:00 2001
From: shenyijian <1178253012@qq.com>
Date: Wed, 26 Jun 2024 18:44:33 +0800
Subject: [PATCH] 湖北水库:施工: 项目新增地区、工序角色配置校验
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java | 10 ++++++++--
1 files changed, 8 insertions(+), 2 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 20e4770..1414008 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
@@ -43,6 +43,11 @@
@Override
public IPage<SgProjectInfoDO> queryPageList(IPage<SgProjectInfoDO> page, ProjectSearchDTO searchDTO) {
List<SgProjectInfoDO> sgProjectInfoDOS = baseMapper.queryPageList(page,searchDTO);
+ List<SgProjectInfoDO> projectProgress = getProjectProgress(sgProjectInfoMapper.queryStepByProject(searchDTO));
+ Map<Long, String> progressMap = projectProgress.stream().collect(Collectors.toMap(SgProjectInfoDO::getId, SgProjectInfoDO::getProjectProgress));
+ sgProjectInfoDOS.forEach(s->{
+ s.setProjectProgress(progressMap.get(s.getId()));
+ });
return page.setRecords(sgProjectInfoDOS);
}
@@ -139,7 +144,7 @@
Map<Long, SgProjectInfoDO> progressMap = projectProgress.stream().collect(Collectors.toMap(SgProjectInfoDO::getId, Function.identity()));
list.forEach(s->{
SgProjectInfoDO sgProjectInfoDO = progressMap.get(s.getId());
- s.setProjectProgress(sgProjectInfoDO.getProjectProgress());
+ s.setProgressName(sgProjectInfoDO.getProjectProgress());
s.setProjectProgressNum(sgProjectInfoDO.getProjectProgressNum());
});
return list;
@@ -192,11 +197,12 @@
List<SgProjectInfoVO> progressList = progressList(searchDTO);
BigDecimal reduce = progressList.stream().map(SgProjectInfoDO::getProjectProgressNum).reduce(BigDecimal.ZERO, BigDecimal::add);
+ BigDecimal divide = reduce.divide(BigDecimal.valueOf(progressList.size()), 2, RoundingMode.HALF_UP);
map.put("all", list.size());
map.put("pending", pending.size());
map.put("progress", progress.size());
map.put("over", over.size());
- map.put("projectProgress", getBigDecimalPercent(reduce));
+ map.put("projectProgress", getBigDecimalPercent(divide));
return map;
}
--
Gitblit v1.9.3