From 52eeb5e914c367f04e7f42ae2a7c0d83e527087f Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 01 Apr 2024 16:48:25 +0800
Subject: [PATCH] 初始化挡水建筑物,正常溢洪道,泄洪洞,非常溢洪道,输水建筑物,电站
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbAttResBaseServiceImpl.java | 125 ++++++++++++++++++++++++++++++++++++++++-
1 files changed, 121 insertions(+), 4 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 46f7d6b..f65adc8 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
@@ -53,6 +53,10 @@
*/
@Override
public boolean updateByGuid(TbAttResBase tbAttResBase) {
+ // 设置填报数据表的最终填报状态
+ if (tbAttResBase.getCheckState()!=4) {
+ tbAttResBase.setFinalState(0);
+ }
// 查询是否存在
TbAttResBase detail = baseMapper.getDetailByGuid(tbAttResBase.getGuid());
// 更新审核日志
@@ -84,10 +88,22 @@
// 驳回情况下将状态修改回0即已填写未提交状态
if (tbAttResBase.getCheckState()==3){
tbAttResBase.setCheckState(0);
+ // 只要一个退回则设置为填写中...
+ tbAttResBase.setFinalState(0);
}
// 更新数据
int i = baseMapper.updateById(tbAttResBase);
if (i>0){
+ // 如果是审核通过需要判断其他报表是否都已填报并审核通过
+ if (tbAttResBase.getCheckState()==2){
+ Boolean flag = baseMapper.getFinalCheckStateByGuid(tbAttResBase.getGuid());
+ if (flag){
+ TbAttResBase tbAttResBase1 = new TbAttResBase();
+ tbAttResBase1.setFinalState(1);
+ tbAttResBase1.setGuid(tbAttResBase.getGuid());
+ updateById(tbAttResBase1);
+ }
+ }
return true;
}
return false;
@@ -103,6 +119,7 @@
if (null!=tbAttResBase.getGuid()){
// 更新
i = baseMapper.updateById(tbAttResBase);
+ updateFinalState(tbAttResBase.getGuid(),tbAttResBase.getCheckState());
}else {
tbAttResBase.setCreateTime(new Date());
i = baseMapper.insert(tbAttResBase);
@@ -212,7 +229,7 @@
// 查询水库基础填报数据
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>>> 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);
@@ -225,11 +242,12 @@
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);
+ CompletableFuture<List<Map<String,Object>>> tbFileStorageLocation = getTbInfo("tb_file_storage_location",resGuid,executor);
//等待所有任务执行完成
try {
CompletableFuture.allOf(
tbAttResBaseInfo,
- tbAttResBuildInfo,
+ tbFileStorageLocation,
tbAttResEngBene,
tbAttResInfomationProject,
tbAttResMgrSysB,
@@ -241,10 +259,10 @@
tbAttResSafetyMonitor,
tbAttResStagChar,
tbAttResWaterBlock,
- tbAttResWaterDelivery).get();
+ tbAttResWaterDelivery
+ ).get();
// 数据处理
list.addAll(tbAttResBaseInfo.get());
- list.addAll(tbAttResBuildInfo.get());
list.addAll(tbAttResEngBene.get());
list.addAll(tbAttResInfomationProject.get());
list.addAll(tbAttResMgrSysB.get());
@@ -257,6 +275,7 @@
list.addAll(tbAttResStagChar.get());
list.addAll(tbAttResWaterBlock.get());
list.addAll(tbAttResWaterDelivery.get());
+ list.addAll(tbFileStorageLocation.get());
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
@@ -300,4 +319,102 @@
return tbInfo;
},executor);
}
+
+ /**
+ * 更新水库信息填报最终状态
+ * @param resGuid 水库编码
+ * @param state 状态值
+ */
+ @Override
+ public Boolean updateFinalState(String resGuid, int state) {
+ TbAttResBase tbAttResBase = new TbAttResBase();
+ tbAttResBase.setGuid(resGuid);
+ if (state==1 || state==2){
+ // 审核通过,判断是否已全部通过审核
+ Boolean flag = baseMapper.getFinalCheckStateByGuid(resGuid);
+ if (flag){
+ tbAttResBase.setFinalState(1);
+ }else {
+ // 否则判断是否审核中
+ flag = baseMapper.getFinalCheckStateCheckLoadingByGuid(resGuid);
+ if (flag){
+ // 设置为审核中
+ tbAttResBase.setFinalState(2);
+ }else {
+ // 填写中
+ tbAttResBase.setFinalState(0);
+ }
+ }
+ }else {
+ tbAttResBase.setFinalState(0);
+ }
+ //更新
+ return updateById(tbAttResBase);
+ }
+
+ @Override
+ public void initTbData() {
+ //初始化基础信心
+ initTbAttResBase();
+
+ //初始化水文特征
+ initTbAttResStagChar();
+
+ //初始化挡水建筑物
+ initTbAttResWaterBlock();
+
+ //初始化正常溢洪道
+ initTbAttResRsbNorspi();
+
+ //初始化泄洪洞
+ initTbAttResRsbSpillway();
+
+ //初始化非常溢洪道
+ initTbAttResRsbVerspi();
+
+ //初始化输水建筑物
+ initTbAttResWaterDelivery();
+
+ //初始化电站
+ initTbAttResPowerStation();
+ }
+
+ private Integer initTbAttResPowerStation() {
+ return baseMapper.initTbAttResPowerStation();
+ }
+
+ private Integer initTbAttResWaterDelivery() {
+ return baseMapper.initTbAttResWaterDelivery();
+ }
+
+ private Integer initTbAttResRsbVerspi() {
+ return baseMapper.initTbAttResRsbVerspi();
+ }
+
+ private Integer initTbAttResRsbSpillway() {
+ return baseMapper.initTbAttResRsbSpillway();
+ }
+
+ private Integer initTbAttResRsbNorspi() {
+ return baseMapper.initTbAttResRsbNorspi();
+ }
+
+ private Integer initTbAttResWaterBlock() {
+ return baseMapper.initTbAttResWaterBlock();
+ }
+
+ /**
+ * 初始化填报水文特征表
+ */
+ private Integer initTbAttResStagChar() {
+ return baseMapper.initTbAttResStagChar();
+ }
+
+ /**
+ * 初始化水库基础信息填报表
+ */
+ private Integer initTbAttResBase() {
+ Integer i = baseMapper.initTbAttResBase();
+ return i;
+ }
}
--
Gitblit v1.9.3