鞍钢鲅鱼圈能源管控系统后端代码
潘志宝
昨天 c1bb9197372150a39e50013d2162f40e7af0b58f
高炉修风修改
已修改3个文件
已添加1个文件
75 ■■■■ 文件已修改
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/ModelController.java 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerTransferGasRespVO.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerTransferReqVO.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/common/utils/DecimalUtil.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/controller/admin/ModelController.java
@@ -6,6 +6,7 @@
import com.iailab.framework.common.pojo.CommonResult;
import com.iailab.framework.common.util.date.DateUtils;
import com.iailab.module.ansteel.api.vo.PowerTransferDetRespVO;
import com.iailab.module.ansteel.api.vo.PowerTransferGasRespVO;
import com.iailab.module.ansteel.api.vo.PowerTransferReqVO;
import com.iailab.module.ansteel.api.vo.PowerTransferRespVO;
import com.iailab.module.ansteel.common.enums.TransferTypeEnum;
@@ -75,6 +76,19 @@
        }
        MdkScheduleReqDTO fhyzDto = new MdkScheduleReqDTO();
        Map<String, PowerTransferDetRespVO> demandAdviceReqMap = new HashMap<>();
        if (CollectionUtils.isEmpty(reqVO.getDemandAdviceList())) {
            for(PowerTransferDetRespVO respVO : reqVO.getDemandAdviceList()) {
                demandAdviceReqMap.put(respVO.getAdviceCode(), respVO);
            }
        }
        Map<String, PowerTransferDetRespVO> gasAdviceReqMap = new HashMap<>();
        if (CollectionUtils.isEmpty(reqVO.getGasAdviceList())) {
            for (PowerTransferDetRespVO respVO : reqVO.getGasAdviceList()) {
                gasAdviceReqMap.put(respVO.getAdviceCode(), respVO);
            }
        }
        PowerTransferRespVO result = new PowerTransferRespVO();
        List<PowerTransferDetRespVO> demandAdviceList = new ArrayList<>();
        List<PowerTransferDetRespVO> gasAdviceList = new ArrayList<>();
@@ -84,7 +98,7 @@
            calendar.set(Calendar.SECOND,0);
            calendar.set(Calendar.MILLISECOND,0);
            // 0 建议编码
            // 0 建议编码-------------------------------------------
            List<ChartParamDTO> demandParamList = mcsApi.getChartParamList(com.iailab.module.ansteel.common.constant.CommonConstant.FHYZ_DEMAND_ADVICE);
            Map<String, ChartParamDTO> demandAdviceCodeMap = new HashMap<>();
            List<String> demandAdviceCodeList = new ArrayList<>();
@@ -104,6 +118,7 @@
                    gasAdviceCodeList.add(chartParamDTO.getParamCode());
                }
            }
            // -----------------------------------------------------
            String nowH = DateUtils.format(calendar.getTime(), "hh:mm");
            switch (TransferTypeEnum.getEumByCode(reqVO.getType())) {
@@ -132,10 +147,14 @@
                    jiaohuaParams.add(reqVO.getIsReduceCog() == 0 ? 0 : 1);
                    jiaohuaParams.add(reqVO.getLimit().intValue());
                    rphSettings.put("jiaohua_params", JSONArray.toJSONString(jiaohuaParams));
                    List<Integer> loadChangeState = new ArrayList<>();
                    List<BigDecimal> loadChangeState = new ArrayList<>();
                    String[] loadChangeArr = {"GASrezhaAdvice", "GAShoubanAdvice", "GASzhongbanAdvice", "GASAshaojieAdvice", "GASBshaojieAdvice"};
                    for (int i = 0; i < loadChangeArr.length; i++) {
                        loadChangeState.add(reqVO.getAdviceCodeList().contains(loadChangeArr[i]) ? 1 : 0);
                        if (CollectionUtils.isEmpty(reqVO.getGasAdviceList())) {
                            loadChangeState.add(BigDecimal.ZERO);
                        } else {
                            loadChangeState.add(gasAdviceReqMap.containsKey(loadChangeArr[i]) ? gasAdviceReqMap.get(loadChangeArr[i]).getAmount() : BigDecimal.ZERO);
                        }
                    }
                    rphSettings.put("testlist", JSONArray.toJSONString(loadChangeState));
                    rphScheduleReqDTO.setDynamicSettings(rphSettings);
@@ -170,11 +189,11 @@
                    dynamicSettings.put("tingji_order", JSONArray.toJSONString(tingjiOrder));
                    // 选择建议编码, 不选默认[-1]
                    List<Integer> choiceParams = new ArrayList<>();
                    if (CollectionUtils.isEmpty(reqVO.getAdviceCodeList())) {
                    if (CollectionUtils.isEmpty(reqVO.getDemandAdviceList())) {
                        choiceParams.add(-1);
                    } else {
                        for(String adviceCode : reqVO.getAdviceCodeList()) {
                            choiceParams.add(Integer.parseInt(demandAdviceCodeMap.get(adviceCode).getParamValue()));
                        for(PowerTransferDetRespVO detRespVO : reqVO.getDemandAdviceList()) {
                            choiceParams.add(Integer.parseInt(demandAdviceCodeMap.get(detRespVO.getAdviceCode()).getParamValue()));
                        }
                    }
                    dynamicSettings.put("choice_params", JSONArray.toJSONString(choiceParams));
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerTransferGasRespVO.java
对比新文件
@@ -0,0 +1,36 @@
package com.iailab.module.ansteel.api.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
 * @author PanZhibao
 * @Description
 * @createTime 2025年06月27日
 */
@Schema(description="异常工况下的负荷移植")
@Data
public class PowerTransferGasRespVO implements Serializable {
    private static final long serialVersionUID = 1L;
    @Schema(description = "建议编码")
    private String adviceCode;
    @Schema(description = "标题")
    private String title;
    @Schema(description = "开始")
    private Integer start;
    @Schema(description = "时长")
    private Integer mins;
    @Schema(description = "工序减BFG")
    private BigDecimal bfg;
    @Schema(description = "工序减COG")
    private BigDecimal cog;
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/api/vo/PowerTransferReqVO.java
@@ -47,6 +47,9 @@
    @Schema(description = "热轧停机时长")
    private Integer tingjiRezha;
    @Schema(description = "先择的建议编码列表")
    private List<String> adviceCodeList;
    @Schema(description = "工序需量管控建议")
    private List<PowerTransferDetRespVO> demandAdviceList;
    @Schema(description = "工序煤气管控建议")
    private List<PowerTransferDetRespVO> gasAdviceList;
}
ansteel-biz/src/main/java/com/iailab/module/ansteel/common/utils/DecimalUtil.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson.JSONArray;
import com.iailab.module.ansteel.api.vo.PowerTransferDetRespVO;
import com.iailab.module.ansteel.api.vo.PowerTransferGasRespVO;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal;