From caf24ff51f39e8026cd1f6d15b8258a6bdc3d997 Mon Sep 17 00:00:00 2001
From: gonglilong <328255720@qq.com>
Date: Sat, 14 Sep 2024 11:35:33 +0800
Subject: [PATCH] 修改我的审核和代办数量流程逻辑

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java |   70 +++++++++++++++++++++++++++--------
 skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProgressReportDO.java            |   14 +++++++
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml             |    7 ++-
 3 files changed, 73 insertions(+), 18 deletions(-)

diff --git a/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProgressReportDO.java b/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProgressReportDO.java
index 72fa7bc..cd562b1 100644
--- a/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProgressReportDO.java
+++ b/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sg/DO/SgProgressReportDO.java
@@ -153,4 +153,18 @@
 
 	@TableField(exist = false)
 	private List<String> userIDs;
+
+
+
+	@TableField(exist = false)
+	private String controlUnit;
+
+	@TableField(exist = false)
+	private String selfUnit;
+
+	@TableField(exist = false)
+	private String countyCd;
+
+	@TableField(exist = false)
+	private  List<String> xbUnitIDs;
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml
index 3a744ca..e43c9be 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/mapper/SgProgressReportMapper.xml
@@ -39,9 +39,11 @@
         report.*,
         de.device_name,
         de.device_type,
-        dict."DICT_VALUE" as typeName
+        dict."DICT_VALUE" as typeName, si.control_unit,si.self_unit,dria."county_cd"
         FROM
         ywxt.SG_PROGRESS_REPORT report
+        LEFT JOIN ywxt.SG_PROJECT_INFO si ON report.profram_id = si.id
+        LEFT JOIN SJZT_DW."dim_res_info_a" dria ON dria."res_cd" = si.sk_id
         LEFT JOIN ywxt.sg_device de ON report.gx_device_id = de.id
         left join YWXT."BLADE_DICT_BIZ" as dict  on de.device_type=dict.DICT_KEY  and dict.CODE='SG_DEVICE_TYPE'
         where 1=1 and report."STATUS" != 4
@@ -83,10 +85,11 @@
         de.device_type,
        <!-- userR.approval_status, -->
         dict."DICT_VALUE" as typeName,
-        si.
+        si.control_unit,si.self_unit,dria."county_cd"
         FROM
         ywxt.SG_PROGRESS_REPORT report
         LEFT JOIN ywxt.SG_PROJECT_INFO si ON report.profram_id = si.id
+        LEFT JOIN SJZT_DW."dim_res_info_a" dria ON dria."res_cd" = si.sk_id
         LEFT JOIN ywxt.sg_device de ON report.gx_device_id = de.id
         left join YWXT."BLADE_DICT_BIZ" as dict  on de.device_type=dict.DICT_KEY  and dict.CODE='SG_DEVICE_TYPE'
         LEFT JOIN ywxt.sg_report_user userR ON report.id = userR.report_id
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
index b3be869..d236472 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sg/service/impl/SgProgressReportServiceImpl.java
@@ -72,14 +72,33 @@
 		List<SgProgressReportVO> list = sgProgressReportMapper.queryPageList(page,searchDTO);
 		if(list != null){
 			list.forEach(s ->{
-				Long proframId = s.getProframId();
-				SgProjectInfoDO sgProjectInfoDO = sgProjectInfoMapper.selectById(proframId);
-				String controlUnit = sgProjectInfoDO.getControlUnit();
-				List<String> users=sgProjectInfoMapper.getUserS(controlUnit);
-				String selfUnit = sgProjectInfoDO.getSelfUnit();
-				List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
-				users.addAll(selfUnitusers);
-				s.setUserIDs(users);
+				List<String> resultUsers=new ArrayList<>();
+				if(s.getControlUnit()!=null){
+					String controlUnit = s.getControlUnit();
+					List<String> users=sgProjectInfoMapper.getUserS(controlUnit);
+					resultUsers.addAll(users);
+				}
+//				if(s.getSelfUnit()!=null){
+//					String selfUnit = s.getSelfUnit().toString();
+//					List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
+//					resultUsers.addAll(selfUnitusers);
+//				}
+
+
+				s.setUserIDs(resultUsers);
+				String gxStepName = s.getGxStepName();
+				String countyCd = s.getCountyCd();
+
+				if("测量定位".equals(gxStepName)){
+
+					if(countyCd!=null){
+						List<String> xbUnitIDs=sgProjectInfoMapper.getUserS(countyCd);
+						s.setXbUnitIDs(xbUnitIDs);
+					}
+
+				}
+
+
 			});
 
 		}
@@ -90,14 +109,33 @@
 		List<SgProgressReportVO> list = sgProgressReportMapper.queryPageListAll(page,searchDTO);
 		if(list != null){
 			list.forEach(s ->{
-				Long proframId = s.getProframId();
-				SgProjectInfoDO sgProjectInfoDO = sgProjectInfoMapper.selectById(proframId);
-				String controlUnit = sgProjectInfoDO.getControlUnit();
-				List<String> users=sgProjectInfoMapper.getUserS(controlUnit);
-				String selfUnit = sgProjectInfoDO.getSelfUnit();
-				List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
-				users.addAll(selfUnitusers);
-				s.setUserIDs(users);
+				List<String> resultUsers=new ArrayList<>();
+				if(s.getControlUnit()!=null){
+					String controlUnit = s.getControlUnit();
+					List<String> users=sgProjectInfoMapper.getUserS(controlUnit);
+					resultUsers.addAll(users);
+				}
+//				if(s.getSelfUnit()!=null){
+//					String selfUnit = s.getSelfUnit().toString();
+//					List<String> selfUnitusers=sgProjectInfoMapper.getUserS(selfUnit);
+//					resultUsers.addAll(selfUnitusers);
+//				}
+
+
+				s.setUserIDs(resultUsers);
+				String gxStepName = s.getGxStepName();
+				String countyCd = s.getCountyCd();
+
+				if("测量定位".equals(gxStepName)){
+
+					if(countyCd!=null){
+						List<String> xbUnitIDs=sgProjectInfoMapper.getUserS(countyCd);
+						s.setXbUnitIDs(xbUnitIDs);
+					}
+
+				}
+
+
 			});
 
 		}

--
Gitblit v1.9.3