From 1d893feaa091ea901dec35a1e2f7bcb1e46cf120 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Wed, 23 Aug 2023 18:39:20 +0800
Subject: [PATCH] 水库填报状态查询修改

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbAttResBaseServiceImpl.java |  127 ++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 121 insertions(+), 6 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbAttResBaseServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbAttResBaseServiceImpl.java
index 91f54c7..46f7d6b 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbAttResBaseServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbAttResBaseServiceImpl.java
@@ -1,6 +1,8 @@
 package cn.gistack.sm.sjztmd.service.impl;
 
+import cn.gistack.common.config.MyThreadPoolConfig;
 import cn.gistack.sm.feedback.service.IFeedbackService;
+import cn.gistack.sm.intelligentCall.vo.CallTaskStatistic;
 import cn.gistack.sm.sjztmd.entity.TbAttResBase;
 import cn.gistack.sm.sjztmd.mapper.TbAttResBaseMapper;
 import cn.gistack.sm.sjztmd.service.ITbAttResBaseService;
@@ -12,7 +14,10 @@
 import org.springframework.stereotype.Service;
 
 import java.text.SimpleDateFormat;
-import java.util.Date;
+import java.util.*;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.ThreadPoolExecutor;
 
 /**
  * @ClassName AttResBaseServiceImpl
@@ -27,6 +32,9 @@
 
 	@Autowired
 	private IUserClient userClient;
+
+	@Autowired
+	private MyThreadPoolConfig myThreadPoolConfig;
 
 	/**
 	 * 查询水库填报详情信息
@@ -66,10 +74,10 @@
 	public boolean auditByGuid(TbAttResBase tbAttResBase) {
 		// 查询是否存在
 		TbAttResBase detail = baseMapper.getDetailByGuid(tbAttResBase.getGuid());
-		// 更新审核日志
-		setUpdateCheckLog(detail,tbAttResBase);
 		// 更新操作日志
 		setUpdateLog(detail,tbAttResBase);
+		// 更新审核日志
+		setUpdateCheckLog(detail,tbAttResBase);
 		if (null!=detail){
 			tbAttResBase.setGuid(detail.getGuid());
 		}
@@ -78,7 +86,7 @@
 			tbAttResBase.setCheckState(0);
 		}
 		// 更新数据
-		int i = baseMapper.updateByGuid(tbAttResBase);
+		int i = baseMapper.updateById(tbAttResBase);
 		if (i>0){
 			return true;
 		}
@@ -94,8 +102,9 @@
 		int i = 0;
 		if (null!=tbAttResBase.getGuid()){
 			// 更新
-			i = baseMapper.updateByGuid(tbAttResBase);
+			i = baseMapper.updateById(tbAttResBase);
 		}else {
+			tbAttResBase.setCreateTime(new Date());
 			i = baseMapper.insert(tbAttResBase);
 		}
 		// 返回
@@ -158,7 +167,12 @@
 			fillName = "审核";
 		}
 		if (newTbAttResBase.getCheckState()==3){
-			fillName = "退回" + (null==newTbAttResBase.getLog()?"":":" + newTbAttResBase.getLog());
+			fillName = "退回" + (null==newTbAttResBase.getCheckLog()?"":":" + newTbAttResBase.getCheckLog());
+		}
+		// 管理员编辑
+		if (newTbAttResBase.getCheckState()==4){
+			fillName = "编辑";
+			newTbAttResBase.setCheckState(oldAbAttResBase.getCheckState());
 		}
 
 		// 拼接
@@ -185,4 +199,105 @@
 			newTbAttResBase.setLog(stringBuilder.toString());
 		}
 	}
+
+	/**
+	 * 查询所有水库填报的状态信息
+	 * @param resGuid
+	 * @return
+	 */
+	@Override
+	public List<Map<String, Object>> getAllWaterFillInfoByResGuid(String resGuid) {
+		List<Map<String, Object>> list = new ArrayList<>();
+		ThreadPoolExecutor executor = myThreadPoolConfig.threadPoolExecutor();
+		// 查询水库基础填报数据
+		CompletableFuture<List<Map<String,Object>>> tbAttResBaseInfo = getTbAttResBaseInfo("tb_att_res_base",resGuid, executor);
+		// 查询水库其他填报数据
+		CompletableFuture<List<Map<String,Object>>> tbAttResBuildInfo = getTbInfo("tb_att_res_build_info",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResEngBene = getTbInfo("tb_att_res_eng_bene",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResInfomationProject = getTbInfo("tb_att_res_infomation_project",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResMgrSysB = getTbInfo("tb_att_res_mgr_sys_b",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResPowerStation = getTbInfo("tb_att_res_power_station",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResProjectUtilize = getTbInfo("tb_att_res_project_utilize",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResRsbNorspi = getTbInfo("tb_att_res_rsb_norspi",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResRsbSpillway = getTbInfo("tb_att_res_rsb_spillway",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResRsbVerspi = getTbInfo("tb_att_res_rsb_verspi",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResSafetyMonitor = getTbInfo("tb_att_res_safety_monitor",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResStagChar = getTbInfo("tb_att_res_stag_char",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResWaterBlock = getTbInfo("tb_att_res_water_block",resGuid,executor);
+		CompletableFuture<List<Map<String,Object>>> tbAttResWaterDelivery = getTbInfo("tb_att_res_water_delivery",resGuid,executor);
+		//等待所有任务执行完成
+		try {
+			CompletableFuture.allOf(
+				tbAttResBaseInfo,
+				tbAttResBuildInfo,
+				tbAttResEngBene,
+				tbAttResInfomationProject,
+				tbAttResMgrSysB,
+				tbAttResPowerStation,
+				tbAttResProjectUtilize,
+				tbAttResRsbNorspi,
+				tbAttResRsbSpillway,
+				tbAttResRsbVerspi,
+				tbAttResSafetyMonitor,
+				tbAttResStagChar,
+				tbAttResWaterBlock,
+				tbAttResWaterDelivery).get();
+			// 数据处理
+			list.addAll(tbAttResBaseInfo.get());
+			list.addAll(tbAttResBuildInfo.get());
+			list.addAll(tbAttResEngBene.get());
+			list.addAll(tbAttResInfomationProject.get());
+			list.addAll(tbAttResMgrSysB.get());
+			list.addAll(tbAttResPowerStation.get());
+			list.addAll(tbAttResProjectUtilize.get());
+			list.addAll(tbAttResRsbNorspi.get());
+			list.addAll(tbAttResRsbSpillway.get());
+			list.addAll(tbAttResRsbVerspi.get());
+			list.addAll(tbAttResSafetyMonitor.get());
+			list.addAll(tbAttResStagChar.get());
+			list.addAll(tbAttResWaterBlock.get());
+			list.addAll(tbAttResWaterDelivery.get());
+		} catch (InterruptedException e) {
+			e.printStackTrace();
+		} catch (ExecutionException e) {
+			e.printStackTrace();
+		}
+		// 返回
+		return list;
+	}
+
+	/**
+	 * 查询水库基础填报数据
+	 * @param tableName
+	 * @param resGuid
+	 * @param executor
+	 * @return
+	 */
+	private CompletableFuture<List<Map<String,Object>>> getTbAttResBaseInfo(String tableName,String resGuid,ThreadPoolExecutor executor){
+		return CompletableFuture.supplyAsync(()->{
+			// 查询所有水库填报的状态信息
+			return baseMapper.getTbAttResBaseInfo(resGuid,tableName);
+		},executor);
+	}
+
+	/**
+	 * 查询水库其他填报数据
+	 * @param tableName
+	 * @param resGuid
+	 * @param executor
+	 * @return
+	 */
+	private CompletableFuture<List<Map<String,Object>>> getTbInfo(String tableName,String resGuid,ThreadPoolExecutor executor){
+		return CompletableFuture.supplyAsync(()->{
+			// 查询所有水库填报的状态信息
+			List<Map<String, Object>> tbInfo = baseMapper.getTbInfo(resGuid,"\'"+tableName+"'" ,"\""+tableName+"\"");
+			if (tbInfo.size()==0){
+				Map<String, Object> map = new HashMap<>(2);
+				map.put("NAME",tableName);
+				map.put("VALUE",-1);
+				tbInfo.add(map);
+			}
+			return tbInfo;
+		},executor);
+	}
 }

--
Gitblit v1.9.3