From fbe8d4c023163130e498c2b51c8bdebab6c0fbf2 Mon Sep 17 00:00:00 2001
From: dengzedong <dengzedong@email>
Date: 星期三, 16 四月 2025 11:35:29 +0800
Subject: [PATCH] 自动调整 放到MdkApi中

---
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java |   36 +++++++++++++++++++++++++++---------
 1 files changed, 27 insertions(+), 9 deletions(-)

diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
index e69bac2..9da578f 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -117,9 +117,6 @@
 
     @Autowired
     private StScheduleModelSettingService stScheduleModelSettingService;
-
-    @Autowired
-    private MmPredictAutoAdjustConfigService autoAdjustService;
     private int HOUR_MINS = 60;
 
     @Override
@@ -335,6 +332,7 @@
                 viewDto.setRealData(getHisData(out.getPointid(), startTime, endTime, reqVO.getPrec()));
             }
             viewDto.setPreDataN(mmItemResultService.getData(out.getId(), startTime, endTime, DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND));
+            viewDto.setPreDataL(mmItemResultLastPointService.getData(out.getId(), startTime, endTime, DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND, 3));
             //处理预测累计
             if (out.getIscumulant() == 1) {
                 if (StringUtils.isNotBlank(out.getCumulpoint())) {
@@ -431,7 +429,7 @@
                 dataView.setPreDataN(mmItemResultService.getData(outPut.getId(), startTime, endTime, timeFormat, decimalPlaces));
                 break;
             case TL:
-                dataView.setPreDataN(mmItemResultService.getData(outPut.getId(), predictTime, endTime, timeFormat, decimalPlaces));
+                dataView.setPreDataN(mmItemResultService.getData(outPut.getId(), startTime, endTime, timeFormat, decimalPlaces));
                 dataView.setPreDataL(mmItemResultLastPointService.getData(outPut.getId(), startTime, endTime, timeFormat, decimalPlaces));
                 break;
             default:
@@ -785,6 +783,7 @@
         return result;
     }
 
+    @Override
     public Map<String, BigDecimal> getPredictLastValue(PredictLastValueReqVO reqVO) {
         Map<String, BigDecimal> result = new HashMap<>(reqVO.getItemNos().size());
         if (CollectionUtils.isEmpty(reqVO.getItemNos())) {
@@ -807,6 +806,30 @@
             }
             Date predictTime = predictItem.getLastTime();
             List<Object[]> curData = mmItemResultJsonService.getData(outputId, predictTime, DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
+            if (CollectionUtils.isEmpty(curData)) {
+                result.put(key, BigDecimal.ZERO);
+            } else {
+                result.put(key, new BigDecimal(curData.get(curData.size() - 1)[1].toString()));
+            }
+        }
+        return result;
+    }
+
+    @Override
+    public Map<String, BigDecimal> getPredictValueByTime(PredictLastValueReqVO reqVO) {
+        Map<String, BigDecimal> result = new HashMap<>(reqVO.getItemNos().size());
+        if (CollectionUtils.isEmpty(reqVO.getItemNos())) {
+            return result;
+        }
+        List<String[]> itemNos = reqVO.getItemNos();
+        for (String[] itemNo : itemNos) {
+            String key = itemNo[0] + "," + itemNo[1] + "," + itemNo[2];
+            ItemVO predictItem = mmPredictItemService.getItemByItemNo(itemNo[0]);
+            if (predictItem == null || predictItem.getLastTime() == null) {
+                result.put(key, BigDecimal.ZERO);
+            }
+            MmItemOutputEntity outPut = mmItemOutputService.getByItemid(predictItem.getId(), itemNo[1], itemNo[2]);
+            List<Object[]> curData = mmItemResultJsonService.getData(outPut.getId(), reqVO.getPredictTime(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
             if (CollectionUtils.isEmpty(curData)) {
                 result.put(key, BigDecimal.ZERO);
             } else {
@@ -947,11 +970,6 @@
     @Override
     public List<ScheduleSuggestRespDTO> getLastSuggest(Map<String, Object> params) {
         return stScheduleSuggestService.getLastSuggest(params);
-    }
-
-    @Override
-    public Boolean autoAdjustByCode(MmPredictAutoAdjustReqVO reqVO) {
-        return autoAdjustService.autoAdjustByCode(reqVO.getConfigCode(), reqVO.getAdjustStartTime());
     }
 
     private Date[] calResultTime(ItemVO predictItem, Date startTimeReq, Date endTimeReq, int lengthLeft, int lengthRight) {

--
Gitblit v1.9.3