From 394738cf23b8f9fdcbeb3375351c93ed899994f2 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Fri, 04 Aug 2023 17:52:57 +0800
Subject: [PATCH] hst预测,arima预测分离;
---
skjcmanager/skjcmanager-common/src/main/java/cn/gistack/common/utils/CommonUtil.java | 17 +++++
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IHsybService.java | 8 ++
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java | 32 +++++++++-
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/rabbitmq/MyRabbitReceiver.java | 8 +-
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/resultpojo/HsybGetFuturePo.java | 20 ++++++
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/requestpojo/HstPredictReqPo.java | 6 +-
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java | 1
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java | 60 +++++++++++++------
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/entity/AlarmGet.java | 5 +
9 files changed, 126 insertions(+), 31 deletions(-)
diff --git a/skjcmanager/skjcmanager-common/src/main/java/cn/gistack/common/utils/CommonUtil.java b/skjcmanager/skjcmanager-common/src/main/java/cn/gistack/common/utils/CommonUtil.java
index 14eb083..e966fc3 100644
--- a/skjcmanager/skjcmanager-common/src/main/java/cn/gistack/common/utils/CommonUtil.java
+++ b/skjcmanager/skjcmanager-common/src/main/java/cn/gistack/common/utils/CommonUtil.java
@@ -16,6 +16,10 @@
*/
package cn.gistack.common.utils;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
/**
* 通用工具类
*
@@ -23,4 +27,17 @@
*/
public class CommonUtil {
+ public static Date strToDate(String stringDate){
+
+ //SimpleDateFormat 格式化日期所用到的类
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");//格式为 年-月-日 如2017-09-16
+ java.util.Date date = null;
+ try {
+ date = format.parse(stringDate);
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
+
+ return date;
+ }
}
diff --git a/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/entity/AlarmGet.java b/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/entity/AlarmGet.java
index ae5f749..e75812a 100644
--- a/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/entity/AlarmGet.java
+++ b/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/entity/AlarmGet.java
@@ -1,7 +1,12 @@
package cn.gistack.nky.entity;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import lombok.Data;
+import org.springframework.data.annotation.Id;
/**
* 南科院判定异常查询实体类
diff --git a/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/requestpojo/HstPredictReqPo.java b/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/requestpojo/HstPredictReqPo.java
index f4d9b0d..83c9632 100644
--- a/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/requestpojo/HstPredictReqPo.java
+++ b/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/requestpojo/HstPredictReqPo.java
@@ -23,9 +23,9 @@
private List<PredictWatersPo> predictWaters;
- public HstPredictReqPo(String damId, String pointId, String type, List<PredictWatersPo> predictWaters) {
- this.damId = damId;
- this.pointId = pointId;
+ public HstPredictReqPo(DataResChildrenPo dataResChildrenPo, String type, List<PredictWatersPo> predictWaters) {
+ this.damId = dataResChildrenPo.getRes_cd();
+ this.pointId = dataResChildrenPo.getCd();
this.type = type;
this.predictWaters = predictWaters;
}
diff --git a/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/resultpojo/HsybGetFuturePo.java b/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/resultpojo/HsybGetFuturePo.java
new file mode 100644
index 0000000..c293197
--- /dev/null
+++ b/skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/resultpojo/HsybGetFuturePo.java
@@ -0,0 +1,20 @@
+package cn.gistack.nky.resultpojo;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class HsybGetFuturePo {
+
+ List<List<String>> data;
+
+ String respCode;
+
+ String message;
+
+ String params;
+
+ String success;
+
+}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/rabbitmq/MyRabbitReceiver.java b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/rabbitmq/MyRabbitReceiver.java
index d296231..3883f7b 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/rabbitmq/MyRabbitReceiver.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/rabbitmq/MyRabbitReceiver.java
@@ -22,10 +22,10 @@
@RabbitListener(queues = "alarm")
public void processMessage(Message message) {
- AlarmGet alarmGet = JSONObject.parseObject(new String(message.getBody()), AlarmGet.class);
- alarmGetService.save(alarmGet);
-
- System.out.println("收到消息"+new String(message.getBody()));
+// AlarmGet alarmGet = JSONObject.parseObject(new String(message.getBody()), AlarmGet.class);
+// alarmGetService.save(alarmGet);
+//
+// System.out.println("收到消息"+new String(message.getBody()));
}
}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IHsybService.java b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IHsybService.java
new file mode 100644
index 0000000..a6f6b31
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IHsybService.java
@@ -0,0 +1,8 @@
+package cn.gistack.nky.service;
+
+import java.util.List;
+
+public interface IHsybService {
+
+ List<List<String>> getFuture(String resCd);
+}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java
index 0988382..e5f1069 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java
@@ -4,6 +4,7 @@
import cn.gistack.nky.resultpojo.DataBigResultPojo;
import cn.gistack.nky.resultpojo.DataResChildrenPo;
import cn.gistack.nky.resultpojo.DataResPo;
+import com.alibaba.fastjson.JSONObject;
import java.util.List;
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..a89259d 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
@@ -3,6 +3,8 @@
import cn.gistack.nky.entity.ArimaPredict;
import cn.gistack.nky.mapper.ArimaPredictMapper;
import cn.gistack.nky.requestpojo.ArimaPredictReqPo;
+import cn.gistack.nky.requestpojo.HstPredictReqPo;
+import cn.gistack.nky.requestpojo.PredictWatersPo;
import cn.gistack.nky.requestpojo.QueryReqPo;
import cn.gistack.nky.resultpojo.DataResChildrenPo;
import cn.gistack.nky.service.IArimaPredictService;
@@ -42,11 +44,31 @@
@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
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java b/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java
index 97abf07..eaad23d 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java
@@ -1,8 +1,6 @@
package cn.gistack.job.executor.jobhandler;
import cn.gistack.nky.fegin.INkyClient;
-import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONObject;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.annotation.XxlJob;
import com.xxl.job.core.log.XxlJobLogger;
@@ -28,7 +26,7 @@
private final INkyClient nkyClient;
/**
- * 南科院请求预测
+ * 南科院Arima请求预测
* @param param
* @return
* @throws Exception
@@ -39,16 +37,43 @@
arimaPredict();
XxlJobLogger.log("ArimaPredict预测结束...");
- XxlJobLogger.log("开始Hst预测...");
- hstPredict();
- XxlJobLogger.log("Hst预测结束...");
-
XxlJobLogger.log("结束任务...");
return ReturnT.SUCCESS;
}
/**
- * 南科院请求预测结果
+ * 南科院Hst请求预测
+ * @param param
+ * @return
+ * @throws Exception
+ */
+ @XxlJob("predictNkyHstDataJobHandler")
+ public ReturnT<String> predictNkyHstDataJobHandler(String param){
+
+ XxlJobLogger.log("开始Hst预测...");
+ hstPredict();
+ XxlJobLogger.log("Hst预测结束...");
+ XxlJobLogger.log("结束任务...");
+ return ReturnT.SUCCESS;
+ }
+
+ /**
+ * 南科院Hst请求预测结果
+ * @param param
+ * @return
+ * @throws Exception
+ */
+ @XxlJob("queryNkyHstDataJobHandler")
+ public ReturnT<String> queryNkyHstDataJobHandler(String param){
+ XxlJobLogger.log("开始Hst预测结果请求");
+ hstQuery();
+ XxlJobLogger.log("Hst预测结果请求结束");
+ XxlJobLogger.log("结束任务...");
+ return ReturnT.SUCCESS;
+ }
+
+ /**
+ * 南科院Arima请求预测结果
* @param param
* @return
* @throws Exception
@@ -57,23 +82,17 @@
public ReturnT<String> queryNkyDataJobHandler(String param){
XxlJobLogger.log("开始Arima预测结果请求");
arimaQuery();
-
XxlJobLogger.log("Arima预测结果请求结束");
-
- XxlJobLogger.log("开始Hst预测结果请求");
- hstQuery();
- XxlJobLogger.log("Hst预测结果请求结束");
-
-
XxlJobLogger.log("结束任务...");
return ReturnT.SUCCESS;
}
public void arimaPredict(){
+ XxlJobLogger.log("渗压预测开始");
nkyClient.arimaPredictData(SY);
+ XxlJobLogger.log("位移预测开始");
nkyClient.arimaPredictData(X);
- nkyClient.arimaPredictData(Y);
- nkyClient.arimaPredictData(Z);
+
}
public void arimaQuery(){
@@ -83,11 +102,14 @@
nkyClient.arimaQueryData(Z);
}
+ /**
+ * hst预测
+ */
public void hstPredict(){
+ XxlJobLogger.log("渗压预测开始");
nkyClient.hstPredictData(SY);
+ XxlJobLogger.log("位移预测开始");
nkyClient.hstPredictData(X);
- nkyClient.hstPredictData(Y);
- nkyClient.hstPredictData(Z);
}
public void hstQuery(){
--
Gitblit v1.9.3