From a4cd27af8c445e2b043aa146ee38f04222c992e7 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Sun, 31 Mar 2024 15:24:21 +0800
Subject: [PATCH] 人工上报
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DwsResFormDiServiceImpl.java | 175 ++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 134 insertions(+), 41 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DbPersonReportServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DwsResFormDiServiceImpl.java
similarity index 60%
rename from skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DbPersonReportServiceImpl.java
rename to skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DwsResFormDiServiceImpl.java
index f966765..927ca3d 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DbPersonReportServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztdw/service/impl/DwsResFormDiServiceImpl.java
@@ -1,11 +1,10 @@
package cn.gistack.sm.sjztdw.service.impl;
-import cn.gistack.sm.sjztdw.entity.DwsRainResDi;
-import cn.gistack.sm.sjztdw.entity.DwsResPressDi;
-import cn.gistack.sm.sjztdw.entity.DwsResSlDi;
-import cn.gistack.sm.sjztdw.entity.DwsWaterResZEightDetailAll;
+import cn.gistack.sm.sjztdw.entity.*;
import cn.gistack.sm.sjztdw.excel.DbExcel;
+import cn.gistack.sm.sjztdw.mapper.DwsResFormDiMapper;
import cn.gistack.sm.sjztdw.service.*;
+import cn.gistack.sm.sjztdw.vo.DbExcelVO;
import cn.gistack.sm.sjztmd.service.IAttResBaseService;
import cn.gistack.sm.sjztmd.vo.AttResAdVO;
import cn.gistack.sm.sjztods.entity.DsmSpgSpprmp;
@@ -13,11 +12,8 @@
import cn.gistack.sm.sjztods.service.IDsmSpgSpprmpService;
import cn.gistack.sm.sjztods.service.IDsmSpgSpqnmpService;
import com.baomidou.dynamic.datasource.annotation.DS;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor;
-import org.apache.logging.log4j.util.Strings;
-import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -31,14 +27,17 @@
@Service
@AllArgsConstructor
@Transactional(rollbackFor = Exception.class)
-public class DbPersonReportServiceImpl implements IDbPersonReportService {
+@DS("ztdw")
+public class DwsResFormDiServiceImpl extends ServiceImpl<DwsResFormDiMapper, DwsResFormDi> implements IDwsResFormDiService {
private IAttResBaseService attResBaseService;
+
+ //日数据监测
private IDwsRainResDiService dwsRainResDiService;
private IDwsWaterResZEightDetailAllService dwsWaterResZEightDetailAllService;
private IDwsResPressDiService dwsResPressDiService;
private IDwsResSlDiService dwsResSlDiService;
-
+ //测点表
private IDsmSpgSpqnmpService dsmSpgSpqnmpService;
private IDsmSpgSpprmpService dsmSpgSpprmpService;
@@ -63,53 +62,147 @@
data.forEach(dbExcel->{
- //存雨情数据
- saveDayRainFall(dbExcel,resAd);
+ if (StringUtil.isBlank(dbExcel.getRz())){
+ dbExcel.setRz("");
+ }
+ if (StringUtil.isBlank(dbExcel.getDrp())){
+ dbExcel.setDrp("");
+ }
+ if (StringUtil.isBlank(dbExcel.getLowZ())){
+ dbExcel.setLowZ("");
+ }
+ if (StringUtil.isBlank(dbExcel.getAvgValue())){
+ dbExcel.setAvgValue("");
+ }
+ if (StringUtil.isBlank(dbExcel.getAvgSpqnValue())){
+ dbExcel.setAvgSpqnValue("");
+ }
- //存水位数据
- saveWaterLevel(dbExcel,resAd);
+ //存总表数据
+ Integer i = baseMapper.updateCustomize(dbExcel,resAd,ch);
+ if (i<=0){
+ baseMapper.save(dbExcel,resAd,ch);
+ }
- //存渗压数据
- saveSy(dbExcel,resAd,dsmSpgSpprmpList);
+ if (StringUtil.isNotBlank(dbExcel.getDrp())){
+ //存雨情数据
+ saveDayRainFall(dbExcel,resAd);
+ }
+ if (StringUtil.isNotBlank(dbExcel.getRz()) || StringUtil.isNotBlank(dbExcel.getLowZ())){
+ //存水位数据
+ saveWaterLevel(dbExcel,resAd);
+ }
- //存渗流数据
- saveSl(dbExcel,resAd,dsmSpgSpqnmpList);
+ if (StringUtil.isNotBlank(dbExcel.getAvgValue())){
+ //存渗压数据
+ saveSy(dbExcel,resAd,dsmSpgSpprmpList);
+ }
+
+ if (StringUtil.isNotBlank(dbExcel.getAvgSpqnValue())){
+ //存渗流数据
+ saveSl(dbExcel,resAd,dsmSpgSpqnmpList);
+ }
+
});
}
+ @Override
+ public Boolean update(DbExcelVO dbExcel) {
+
+
+ baseMapper.edit(dbExcel);
+
+ //根据日期更新数据
+ if (StringUtil.isNotBlank(dbExcel.getMonitorDate())){
+
+
+
+ Integer a = dwsRainResDiService.updateByBasic(dbExcel);
+ Integer b = dwsWaterResZEightDetailAllService.updateByBasic(dbExcel);
+
+ Integer c = dwsResPressDiService.updateByBasic(dbExcel);
+ Integer d = dwsResSlDiService.updateByBasic(dbExcel);
+
+ boolean b1 = a > 0;
+ boolean b2 = b > 0;
+ boolean b3 = c > 0;
+ boolean b4 = d > 0;
+ return true;
+ }
+
+ return false;
+ }
+
+ @Override
+ public Boolean remove(DbExcelVO dbExcelVO) {
+
+ baseMapper.remove(dbExcelVO);
+
+ //根据日期删除数据
+ if (StringUtil.isNotBlank(dbExcelVO.getMonitorDate())){
+ Integer a = dwsRainResDiService.removeByBasic(dbExcelVO);
+ Integer b = dwsWaterResZEightDetailAllService.removeByBasic(dbExcelVO);
+ Integer c = dwsResPressDiService.removeByBasic(dbExcelVO);
+ Integer d = dwsResSlDiService.removeByBasic(dbExcelVO);
+
+ boolean b1 = a > 0;
+ boolean b2 = b > 0;
+ boolean b3 = c > 0;
+ boolean b4 = d > 0;
+
+ return b1&&b2&&b3&&b4;
+ }
+
+ return null;
+ }
+
+ @Override
+ public Boolean removeBatch(List<DbExcelVO> list) {
+
+ list.forEach(e->{
+ remove(e);
+ });
+
+ return true;
+ }
+
private void saveSy(DbExcel dbExcel, AttResAdVO resAd,List<DsmSpgSpprmp> list) {
+ try {
+ //excel数据应是按测压管从小到大
+ List<String> avgValueList = Arrays.asList(dbExcel.getAvgValue().split(","));
- //excel数据应是按测压管从小到大
- List<String> avgValueList = Arrays.asList(dbExcel.getAvgValue().split(","));
+ //有渗压站才添加
+ if (list !=null && list.size()>0){
+ for (int i = 0; i < avgValueList.size(); i++) {
+ String avgValue = avgValueList.get(i);
+ DsmSpgSpprmp dsmSpgSpprmp = list.get(i);
- //有渗压站才添加
- if (list !=null && list.size()>0){
- for (int i = 0; i < avgValueList.size(); i++) {
- String avgValue = avgValueList.get(i);
- DsmSpgSpprmp dsmSpgSpprmp = list.get(i);
+ DwsResPressDi dwsResPressDi = new DwsResPressDi();
+ //站点编码
+ dwsResPressDi.setCd(dsmSpgSpprmp.getMpcd());
+ //站点名称
+ dwsResPressDi.setCdNm(dsmSpgSpprmp.getMpcd());
- DwsResPressDi dwsResPressDi = new DwsResPressDi();
- //站点编码
- dwsResPressDi.setCd(dsmSpgSpprmp.getMpcd());
- //站点名称
- dwsResPressDi.setCdNm(dsmSpgSpprmp.getMpcd());
+ dwsResPressDi.setResCd(resAd.getResGuid());
+ dwsResPressDi.setResNm(resAd.getResName());
+ dwsResPressDi.setAvgValue(avgValue);
- dwsResPressDi.setResCd(resAd.getResGuid());
- dwsResPressDi.setResNm(resAd.getResName());
- dwsResPressDi.setAvgValue(avgValue);
+ Date date = dateFormatString(dbExcel.getMonitorDate(), "yyyy-MM-dd");
+ dwsResPressDi.setDt(date);
+ dwsResPressDi.setIsTb("y");
- Date date = dateFormatString(dbExcel.getMonitorDate(), "yyyy-MM-dd");
- dwsResPressDi.setDt(date);
- dwsResPressDi.setIsTb("y");
-
- Integer result = dwsResPressDiService.updateCustomize(dwsResPressDi);
- if (result<=0){
- dwsResPressDiService.save(dwsResPressDi);
+ Integer result = dwsResPressDiService.updateCustomize(dwsResPressDi);
+ if (result<=0){
+ dwsResPressDiService.save(dwsResPressDi);
+ }
}
}
+ }catch (Exception e){
+ throw new RuntimeException("表格渗压数据个数超过当前水库断面测点个数");
}
+
}
@@ -212,7 +305,7 @@
dwsWaterResZEightDetailAll.setResourceFlag("人工");
dwsWaterResZEightDetailAll.setIsTb("y");
- Date date = dateFormatString(dbExcel.getMonitorDate(), "yyyy-MM-dd 08:00:00");
+ Date date = dateFormatString(dbExcel.getMonitorDate() + " 08:00:00", "yyyy-MM-dd 08:00:00");
dwsWaterResZEightDetailAll.setDt(date);
dwsWaterResZEightDetailAll.setTm(date);
dwsWaterResZEightDetailAll.setCollectDt(date);
--
Gitblit v1.9.3