From 00165e5d50f47c99d9eb7c2fc784bef4d3f72aca Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 16 Nov 2023 15:05:24 +0800
Subject: [PATCH] 预测返回测站名称
---
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java | 70 +++++++++++++++++++++++++++++-----
1 files changed, 59 insertions(+), 11 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java
index c1bd73b..e57dc68 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java
@@ -1,5 +1,6 @@
package cn.gistack.nky.service.impl;
+import cn.gistack.nky.entity.ArimaPredict;
import cn.gistack.nky.entity.HstPredict;
import cn.gistack.nky.mapper.HstPredictMapper;
import cn.gistack.nky.requestpojo.HstPredictReqPo;
@@ -10,6 +11,8 @@
import cn.gistack.nky.service.IHsybService;
import cn.gistack.nky.service.INkyService;
import cn.gistack.nky.service.IZtApiService;
+import cn.gistack.nky.vo.HstPredictVO;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.utils.ObjectUtil;
@@ -81,6 +84,31 @@
});
}else if (type.equals("2")){
//渗流
+ collect.forEach(dataResChildrenPo -> {
+ //所有水库请求预报数据
+ if (!resCd.equals(dataResChildrenPo.getRes_cd())) {
+ //请求预报水位
+ List<List<String>> future = hsybService.getFuture(dataResChildrenPo.getRes_cd());
+ resCd = dataResChildrenPo.getRes_cd();
+ if (future != null && future.size() > 0) {
+ List<PredictWatersPo> po = new ArrayList<>();
+ future.forEach(item -> {
+ PredictWatersPo predictWatersPo = new PredictWatersPo();
+ //设置时间
+ predictWatersPo.setTime(item.get(0));
+ //设置预测水位
+ predictWatersPo.setValue(Double.parseDouble(item.get(2)));
+ po.add(predictWatersPo);
+ });
+ HstPredictReqPo arimaPredictReqPo = new HstPredictReqPo(dataResChildrenPo, type,po);
+ //循环预测请求
+ nkyService.hstPredict(arimaPredictReqPo);
+ }
+ }
+ });
+
+
+
}else if (type.equals("3") || type.equals("4") || type.equals("5")){
collect.forEach(dataResChildrenPo -> {
//所有水库请求预报数据
@@ -115,23 +143,42 @@
}
@Override
+ public List<HstPredictVO> getFutureData(String resCd, String type) {
+ List<HstPredictVO> list = new ArrayList<>();
+ if (type.equals("3")){
+ list = baseMapper.getFutureDataWy(resCd,type);
+ }else {
+ list = baseMapper.getFutureData(resCd,type);
+ }
+
+
+ list.forEach(hstPredict -> {
+ if (hstPredict.getPredictList() != null){
+ hstPredict.setPredictList(JSON.parse(hstPredict.getPredictList().toString()));
+ }else {
+ hstPredict.setPredictList("[]");
+ }
+ hstPredict.setPreWaterList(JSON.parse(hstPredict.getPreWaterList().toString()));
+ });
+
+ return list;
+ }
+
+ @Override
public boolean save(HstPredict entity) {
if (ObjectUtil.isEmpty(entity.getCreateTime())) {
return false;
}
- HstPredict params = new HstPredict();
- params.setDamId(entity.getDamId());
- params.setPointId(entity.getPointId());
- params.setType(entity.getType());
- params.setCreateTime(entity.getCreateTime());
+ List<HstPredict> list = baseMapper.selectTodayData(entity);
- List<HstPredict> list = list(Condition.getQueryWrapper(params));
-
- if (list.size() > 0) {
- return false;
- } else {
+ if (list.size()>0){
+ //删除该数据,添加最新数据
+// baseMapper.deleteById(list.get(0));
+// return super.save(entity);
+ return false;
+ }else {
return super.save(entity);
}
}
@@ -143,7 +190,7 @@
cdList = ztApiService.getSy();
} else if (type.equals("2")) {
//获取渗流测点
- return null;
+ cdList = ztApiService.getSl();
} else if (type.equals("3") || type.equals("4") || type.equals("5")) {
//获取位移测点
cdList = ztApiService.getWy();
@@ -152,4 +199,5 @@
}
return cdList;
}
+
}
--
Gitblit v1.9.3