From 3c096d3cfd56a23e6794f30ccd150bfe19aa4ae8 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Fri, 11 Aug 2023 14:27:25 +0800
Subject: [PATCH] arima预测和hst预测更新最新数据;对预报水位去重
---
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 38 insertions(+), 14 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java
index e7558a0..d4fed4d 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java
@@ -8,8 +8,8 @@
import cn.gistack.nky.service.IArimaPredictService;
import cn.gistack.nky.service.INkyService;
import cn.gistack.nky.service.IZtApiService;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.mysql.cj.util.StringUtils;
import lombok.AllArgsConstructor;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.utils.ObjectUtil;
@@ -42,11 +42,40 @@
@Override
public void predictData(String type) {
List<DataResChildrenPo> cdList = getCdList(type);
- cdList.forEach(dataResChildrenPo -> {
- ArimaPredictReqPo arimaPredictReqPo = new ArimaPredictReqPo(dataResChildrenPo, type);
- //循环预测请求
- nkyService.arimaPredict(arimaPredictReqPo);
+
+ if (type.equals("1")){
+ //渗压
+ cdList.forEach(dataResChildrenPo -> {
+ ArimaPredictReqPo arimaPredictReqPo = new ArimaPredictReqPo(dataResChildrenPo, type);
+ //循环预测请求
+ nkyService.arimaPredict(arimaPredictReqPo);
+ });
+ }else if (type.equals("2")){
+ //渗流
+ }else if (type.equals("3") || type.equals("4") || type.equals("5")){
+ cdList.forEach(dataResChildrenPo -> {
+ //循环预测请求
+ ArimaPredictReqPo arimaPredictReqPoX = new ArimaPredictReqPo(dataResChildrenPo, "3");
+ nkyService.arimaPredict(arimaPredictReqPoX);
+
+ ArimaPredictReqPo arimaPredictReqPoY = new ArimaPredictReqPo(dataResChildrenPo, "4");
+ nkyService.arimaPredict(arimaPredictReqPoY);
+
+ ArimaPredictReqPo arimaPredictReqPoZ = new ArimaPredictReqPo(dataResChildrenPo, "5");
+ nkyService.arimaPredict(arimaPredictReqPoZ);
+ });
+ }
+
+
+ }
+
+ @Override
+ public List<ArimaPredict> getFutureData(String resCd,String type) {
+ List<ArimaPredict> futureData = baseMapper.getFutureData(resCd, type);
+ futureData.forEach(arimaPredict -> {
+ arimaPredict.setPredicts(JSON.parse(arimaPredict.getPredicts().toString()));
});
+ return futureData;
}
@Override
@@ -56,17 +85,12 @@
return false;
}
- //遍历表中当前水库,当前测点,当前类型的数据,检查是否有重复数据
- ArimaPredict params = new ArimaPredict();
- params.setDamId(entity.getDamId());
- params.setPointId(entity.getPointId());
- params.setType(entity.getType());
- params.setCreateTime(entity.getCreateTime());
-
- List<ArimaPredict> list = list(Condition.getQueryWrapper(params));
+ List<ArimaPredict> list = baseMapper.selectTodayData(entity);
if (list.size()>0){
- return false;
+ //删除该数据,添加最新数据
+ baseMapper.deleteById(list.get(0));
+ return super.save(entity);
}else {
return super.save(entity);
}
--
Gitblit v1.9.3