已修改6个文件
43 ■■■■ 文件已修改
iailab-framework/iailab-common-excel/src/main/java/com/iailab/framework/excel/core/util/ExcelUtils.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/PredictTnValueReqVO.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StScheduleSuggestDao.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-framework/iailab-common-excel/src/main/java/com/iailab/framework/excel/core/util/ExcelUtils.java
@@ -1,5 +1,7 @@
package com.iailab.framework.excel.core.util;
import com.alibaba.excel.EasyExcelFactory;
import com.alibaba.excel.write.handler.AbstractRowWriteHandler;
import com.iailab.framework.excel.core.handler.SelectSheetWriteHandler;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.converters.longconverter.LongStringConverter;
@@ -10,6 +12,7 @@
import java.io.IOException;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
/**
@@ -36,7 +39,7 @@
        EasyExcel.write(response.getOutputStream(), head)
                .autoCloseStream(false) // 不要自动关闭,交给 Servlet 自己处理
                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 基于 column 长度,自动适配。最大 255 宽度
                .registerWriteHandler(new SelectSheetWriteHandler(head,false)) // 基于固定 sheet 实现下拉框
                .registerWriteHandler(new SelectSheetWriteHandler(head, false)) // 基于固定 sheet 实现下拉框
                .registerConverter(new LongStringConverter()) // 避免 Long 类型丢失精度
                .sheet(sheetName).doWrite(data);
        // 设置 header 和 contentType。写在最后的原因是,避免报错时,响应 contentType 已经被修改了
@@ -56,11 +59,33 @@
        EasyExcel.write(response.getOutputStream(), head)
                .autoCloseStream(false) // 不要自动关闭,交给 Servlet 自己处理
                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) // 基于 column 长度,自动适配。最大 255 宽度
                .registerWriteHandler(new SelectSheetWriteHandler(head,selectFlag)) // 基于固定 sheet 实现下拉框
                .registerWriteHandler(new SelectSheetWriteHandler(head, selectFlag)) // 基于固定 sheet 实现下拉框
                .registerConverter(new LongStringConverter()) // 避免 Long 类型丢失精度
                .sheet(sheetName).doWrite(data);
        // 设置 header 和 contentType。写在最后的原因是,避免报错时,响应 contentType 已经被修改了
        response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(filename, StandardCharsets.UTF_8.name()));
        response.setContentType("application/vnd.ms-excel;charset=UTF-8");
    }
    public static void write(HttpServletResponse response, String filename, String sheetName,
                             List<String> column, List<List<Object>> data) throws IOException {
        List<List<String>> head = new ArrayList<>();
        if (column != null && column.size() > 0) {
            for (String columnName : column) {
                List<String> item = new ArrayList<>();
                item.add(columnName);
                head.add(item);
            }
        }
        EasyExcelFactory.write(response.getOutputStream())
                .head(head)
                // handle
                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
                .sheet(sheetName).doWrite(data);
        // 设置 header 和 contentType。写在最后的原因是,避免报错时,响应 contentType 已经被修改了
        response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(filename, StandardCharsets.UTF_8.name()));
        response.setContentType("application/vnd.ms-excel;charset=UTF-8");
    }
}
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
@@ -175,7 +175,7 @@
    @PostMapping(PREFIX + "/predict-data/tn-value")
    @Operation(summary = "根据预测时间获取T+N预测值")
    List<MdkPredictDataDTO> getPredictTnValue(PredictTnValueReqVO reqVO);
    List<MdkPredictDataDTO> getPredictTnValue(@RequestBody PredictTnValueReqVO reqVO);
    @GetMapping(PREFIX + "/predict/model/setting/update")
    @Operation(summary = "修改预测模型配置")
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/PredictTnValueReqVO.java
@@ -18,9 +18,7 @@
    private String outId;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;
    private long startTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;
    private long endTime;
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -752,7 +752,7 @@
    @Override
    public List<MdkPredictDataDTO> getPredictTnValue(PredictTnValueReqVO reqVO) {
        List<DataValueVO> list = mmItemResultService.getPredictValue(reqVO.getOutId(), reqVO.getStartTime(), reqVO.getEndTime());
        List<DataValueVO> list = mmItemResultService.getPredictValue(reqVO.getOutId(), new Date(reqVO.getStartTime()), new Date(reqVO.getEndTime()));
        return ConvertUtils.sourceToTarget(list, MdkPredictDataDTO.class);
    }
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java
@@ -156,7 +156,7 @@
    @PostMapping("/predict-data/tn-value")
    @Operation(summary = "获取T+N预测数据")
    public CommonResult<List<MdkPredictDataDTO>> getPredictTnValue(PredictTnValueReqVO reqVO) {
    public CommonResult<List<MdkPredictDataDTO>> getPredictTnValue(@RequestBody PredictTnValueReqVO reqVO) {
        List<MdkPredictDataDTO> list = mcsApi.getPredictTnValue(reqVO);
        return success(list);
    }
iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StScheduleSuggestDao.xml
@@ -10,7 +10,7 @@
                                              ROW_NUMBER() OVER ( PARTITION BY schedule_obj ORDER BY schedule_time DESC ) AS rn
                                       FROM t_st_schedule_suggest
                                       WHERE schedule_obj in
                                             ('BFG_ALARM', 'COG_ALARM', 'LDG1_ALARM', 'LDG2_ALARM', 'LDGt_ALARM')
                                             ('BFG_FLOW_WARNING_ALARM', 'COG_ALARM', 'LDG1', 'LDG2', 'LDGt')
                                         and schedule_time >= DATE_SUB(NOW(), INTERVAL 15 MINUTE ))
        SELECT *
        FROM t_st_schedule_suggest