From 7f615dc1f37ccc9efd7f5b2f7e044c2e62f01074 Mon Sep 17 00:00:00 2001
From: gonglilong <328255720@qq.com>
Date: Sat, 14 Sep 2024 14:11:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jtdev' into jtdev

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProjectInfoServiceImpl.java |   48 ++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 42 insertions(+), 6 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 275f281..f2141b0 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
@@ -52,6 +52,7 @@
 	public Object queryPageList(IPage<SgProjectInfoDO> page, ProjectSearchDTO searchDTO) {
 		List<String> sgCodeS = getSgCodeByUser();
 		searchDTO.setSgCodeS(sgCodeS);
+		setDeptId(searchDTO);
 		Boolean isPage = searchDTO.getIsPage();
 		if (isPage==null) isPage = true;
 		if (isPage ){
@@ -61,6 +62,7 @@
 				Map<Long, String> progressMap = projectProgress.stream().filter(s->s.getProjectProgress()!=null).collect(Collectors.toMap(SgProjectInfoDO::getId, SgProjectInfoDO::getProjectProgress));
 				sgProjectInfoDOS.forEach(s->{
 					s.setProjectProgress(progressMap.get(s.getId()));
+//					setPercentage(s);
 				});
 			}
 			return page.setRecords(sgProjectInfoDOS);
@@ -75,6 +77,7 @@
 				Map<Long, String> progressMap = projectProgress.stream().filter(s->s.getProjectProgress()!=null).collect(Collectors.toMap(SgProjectInfoDO::getId, SgProjectInfoDO::getProjectProgress));
 				sgProjectInfoDOS.forEach(s->{
 					s.setProjectProgress(progressMap.get(s.getId()));
+//					setPercentage(s);
 				});
 			}
 			sgProjectInfoDOS.forEach(s->{
@@ -111,6 +114,18 @@
 			return sgProjectInfoDOS;
 		}
 
+	}
+
+	/**
+	 * 设置百分号
+	 * @param s
+	 */
+	private void setPercentage(SgProjectInfoDO s) {
+		s.setSurfaceProgress(StringUtils.isNotBlank(s.getSurfaceProgress()) ?null:s.getSurfaceProgress()+"%");
+		s.setVideoProgress(StringUtils.isNotBlank(s.getVideoProgress())?null:s.getVideoProgress()+"%");
+		s.setTransProgress(StringUtils.isNotBlank(s.getTransProgress())?null:s.getTransProgress()+"%");
+		s.setSeepageProgress(StringUtils.isNotBlank(s.getSeepageProgress())?null:s.getSeepageProgress()+"%");
+		s.setProjectAddress(StringUtils.isNotBlank(s.getProjectProgress())?null:s.getProjectProgress()+"%");
 	}
 
 	/**
@@ -288,6 +303,7 @@
 	 */
 	@Override
 	public IPage<SgProjectInfoVO> progressPage(IPage<SgProjectInfoVO> page, ProjectSearchDTO searchDTO) {
+		setDeptId(searchDTO);
 		List<SgProjectInfoVO> list = new ArrayList<>();
 			if(StringUtils.isNotBlank(searchDTO.getAdCode())){
 				list =	sgProjectInfoMapper.progressList1(page, searchDTO);
@@ -321,7 +337,19 @@
 	public List<SgProjectInfoDO> listAll(ProjectSearchDTO searchDTO) {
 		List<String> sgCodeS = getSgCodeByUser();
 		searchDTO.setSgCodeS(sgCodeS);
+		setDeptId(searchDTO);
 		return sgProjectInfoMapper.queryPageList(null,searchDTO);
+	}
+
+	/**
+	 * setDeptId
+	 * @param searchDTO
+	 */
+	private  void setDeptId(ProjectSearchDTO searchDTO) {
+		String deptId = AuthUtil.getDeptId();
+		if (!deptId.equals("420000000000")){
+			searchDTO.setDeptId(deptId);
+		}
 	}
 
 	/**
@@ -381,13 +409,13 @@
 				SgOperatingRateVO sVo = deviceTypes.get(vo.getProIds());
 				if (Objects.nonNull(sVo)){
 					vo.setSurfaceNum(sVo.getSurfaceNum());
-					vo.setSurfaceProgress(sVo.getSurfaceProgress()+"%");
+					vo.setSurfaceProgress(sVo.getSurfaceProgress());
 					vo.setVideoNum(sVo.getVideoNum());
-					vo.setVideoProgress(sVo.getVideoProgress()+"%");
+					vo.setVideoProgress(sVo.getVideoProgress());
 					vo.setTransNum(sVo.getTransNum());
-					vo.setTransProgress(sVo.getTransProgress()+"%");
+					vo.setTransProgress(sVo.getTransProgress());
 					vo.setSeepageNum(sVo.getSeepageNum());
-					vo.setSeepageProgress(sVo.getSeepageProgress()+"%");
+					vo.setSeepageProgress(sVo.getSeepageProgress());
 				}
 			}
 		}
@@ -423,7 +451,7 @@
 	/**
 	 * 统计设备类型开工率
 	 */
-	private Map<String,SgOperatingRateVO> getDeviceTypes(List<String> projectIds) {
+	public Map<String,SgOperatingRateVO> getDeviceTypes(List<String> projectIds) {
 		Map<String,SgOperatingRateVO> result = new HashMap<>();
 		if (CollectionUtils.isNotEmpty(projectIds)){
 			for (String proIds : projectIds) {
@@ -582,7 +610,7 @@
 		BigDecimal percentage = bigDecimal.multiply(new BigDecimal("100"));
 		// 如果不需要保留小数位,可以设置一个scale为0
 		BigDecimal percentageRounded = percentage.setScale(0, RoundingMode.HALF_UP);
-		return percentageRounded.toString();
+		return percentageRounded+"%";
 	}
 
 	@Override
@@ -648,6 +676,14 @@
 		dto.setSgCodeS(sgCodeS);
 		List<SgProjectTreeVO> list = 	sgProjectInfoMapper.projectTree(dto);
 		if (CollectionUtils.isNotEmpty(list)){
+			list.forEach(x->{
+				if (StringUtils.isBlank(x.getCountyNm())){
+					x.setCountyNm(x.getCityNm());
+				}
+				if (StringUtils.isBlank(x.getTownNm())){
+					x.setTownNm(x.getCountyNm());
+				}
+			});
 			// 按省、片区、市、县、乡镇分组
 			Map<String, Map<String, Map<String, Map<String, Map<String, List<SgProjectTreeVO>>>>>> groupedProjects = list.stream()
 				.collect(

--
Gitblit v1.9.3