From 80d5a608f4543a68a30bab5842d9f793702d6b53 Mon Sep 17 00:00:00 2001
From: dengzedong <dengzedong@email>
Date: 星期三, 23 四月 2025 13:36:47 +0800
Subject: [PATCH] 焦化 异常数据建议生成

---
 ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/DataController.java |   87 +++++++++----------------------------------
 1 files changed, 18 insertions(+), 69 deletions(-)

diff --git a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/DataController.java b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/DataController.java
index eb6529e..4a7fe68 100644
--- a/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/DataController.java
+++ b/ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/DataController.java
@@ -1,24 +1,10 @@
 package com.iailab.module.ansteel.api.controller.admin;
 
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.iailab.framework.common.exception.enums.GlobalErrorCodeConstants;
 import com.iailab.framework.common.pojo.CommonResult;
-import com.iailab.module.ansteel.api.dto.PlanDataChartReqVO;
-import com.iailab.module.ansteel.api.dto.PowerRunStateDTO;
-import com.iailab.module.ansteel.api.dto.PreDataChartRespVO;
-import com.iailab.module.ansteel.api.service.DataApi;
-import com.iailab.module.ansteel.api.vo.PowerTransferDetRespVO;
-import com.iailab.module.ansteel.api.vo.PowerTransferReqVO;
-import com.iailab.module.ansteel.common.utils.DecimalUtil;
-import com.iailab.module.ansteel.api.vo.PowerTransferRespVO;
-import com.iailab.module.api.mcs.AnSteelApi;
-import com.iailab.module.api.mcs.dto.PowerRunStateDTO;
-import com.iailab.module.api.mcs.dto.PreDataChartRespVO;
+import com.iailab.module.ansteel.api.dto.*;
+import com.iailab.module.ansteel.api.service.DataService;
 import com.iailab.module.model.api.mcs.dto.PreDataSingleChartReqVO;
-import com.iailab.module.model.api.mdk.MdkApi;
-import com.iailab.module.model.api.mdk.dto.MdkScheduleReqDTO;
-import com.iailab.module.model.api.mdk.dto.MdkScheduleRespDTO;
+import com.iailab.module.model.api.mcs.dto.StAlarmAndSuggestReqVO;
 import io.swagger.v3.oas.annotations.Operation;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -38,77 +24,40 @@
 public class DataController {
 
     @Autowired
-    private DataApi dataApi;
-
-    @Autowired
-    private MdkApi mdkApi;
+    private DataService dataService;
 
     @GetMapping("/power-run-state/list")
     @Operation(summary = "发电厂机组运行情况")
     public CommonResult<List<PowerRunStateDTO>> getPowerRunState(@RequestParam Map<String, Object> params) {
-        List<PowerRunStateDTO> list = dataApi.getPowerRunState();
+        List<PowerRunStateDTO> list = dataService.getPowerRunState();
         return success(list);
     }
 
     @PostMapping("/predict-data/charts")
     @Operation(summary = "预测数据图表")
     public CommonResult<PreDataChartRespVO> getPreDataChart(@RequestBody PreDataSingleChartReqVO reqVO) {
-        PreDataChartRespVO respVO = dataApi.getPreDataChart(reqVO);
+        PreDataChartRespVO respVO = dataService.getPreDataChart(reqVO);
         return CommonResult.success(respVO);
     }
 
     @PostMapping("/plan-data/charts")
     @Operation(summary = "计划数据图表")
     public CommonResult<Map<String, Object>> getPlanDataChart(@RequestBody PlanDataChartReqVO reqVO) {
-        Map<String, Object> tMap = dataApi.getPlanDataChart(reqVO);
+        Map<String, Object> tMap = dataService.getPlanDataChart(reqVO);
         return CommonResult.success(tMap);
     }
 
-    @PostMapping("/schedule/power-transfer")
-    @Operation(summary = "异常工况下的负荷移植")
-    public CommonResult<PowerTransferRespVO> scheduleEleLoad(@RequestBody PowerTransferReqVO reqVO) {
-        PowerTransferRespVO result = new PowerTransferRespVO();
-        List<PowerTransferDetRespVO> adviceList = new ArrayList<>();
-        try {
-            log.info("PowerTransferReqVO=" + JSONObject.toJSONString(reqVO));
-            Calendar calendar = Calendar.getInstance();
-            calendar.set(Calendar.SECOND,0);
-            calendar.set(Calendar.MILLISECOND,0);
-            MdkScheduleReqDTO dto = new MdkScheduleReqDTO();
-            dto.setScheduleTime(calendar.getTime());
-            dto.setScheduleCode("AnSteelpowertransfer");
-            Map<String, String> dynamicSettings = new HashMap<>();
-            Integer[] xiufengOrder = {reqVO.getBfg(),
-                    reqVO.getStart(),
-                    reqVO.getMins()};
-            dynamicSettings.put("xiufeng_order", JSONArray.toJSONString(xiufengOrder));
-            dynamicSettings.put("jiaohua_BFG_down", reqVO.getLimit().toString());
-            dto.setDynamicSettings(dynamicSettings);
-            MdkScheduleRespDTO mdkScheduleRespDTO = mdkApi.doSchedule(dto);
-            log.info("调度方案执行完成," + mdkScheduleRespDTO);
-
-            Map<String, Object> data = mdkScheduleRespDTO.getResult();
-            result.setBestTotalPower(DecimalUtil.toBigDecimal(data.get("best_total_power")));
-            result.setBfgAdvice(DecimalUtil.toBigDecimal(data.get("BFGAdvice")));
-            result.setDemandAdvice(DecimalUtil.toBigDecimal(data.get("DemandAdvice")));
-            result.setJiaohuaAdviceTime(DecimalUtil.toBigDecimal(data.get("jiaohuaAdvice"), 0).intValue());
-            result.setJiaohuaAdviceAmount(DecimalUtil.toBigDecimal(data.get("jiaohuaAdvice"), 1).intValue());
-
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("中板工序", data.get("zhongabnAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("厚板工序", data.get("houbanAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("热轧工序", data.get("rezhaAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("白灰工序", data.get("baihuiAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("3#制氧机", data.get("zhiyangAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("1#LF炉", data.get("1LFAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("2#LF炉", data.get("2LFAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("B系列烧结", data.get("shaojieAdvice")));
-            adviceList.add(DecimalUtil.toPowerTransferDetRespVO("CCPP", data.get("CCPPAdvice")));
-
-        } catch (Exception ex) {
-            ex.printStackTrace();
-            return CommonResult.error(GlobalErrorCodeConstants.UNKNOWN.getCode(), ex.getMessage());
-        }
-        return CommonResult.success(result);
+    @PostMapping("/schedule-suggest/use-suggest")
+    @Operation(summary = "采纳建议")
+    public CommonResult<Boolean> useSuggest(@RequestBody StAlarmAndSuggestReqVO ReqVO) {
+        return success(dataService.useSuggest(ReqVO));
     }
 
+    @PostMapping("/schedule-suggest/ignore-suggest")
+    @Operation(summary = "忽略建议")
+    public CommonResult<Boolean> ignoreSuggest(@RequestBody StAlarmAndSuggestReqVO ReqVO) {
+        return success(dataService.ignoreSuggest(ReqVO));
+    }
+
+
 }
\ No newline at end of file

--
Gitblit v1.9.3