houzhongjian
2025-03-06 81ec6148e89a6f64dfc8bf091e8d9658484bea8a
Merge branch 'master' of http://dlindusit.com:53929/r/iailab-plat
已添加1个文件
已修改10个文件
156 ■■■■ 文件已修改
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/ChartDTO.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmConfigService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmConfigServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartParamService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartParamServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartServiceImpl.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
@@ -123,12 +123,19 @@
    @Operation(summary = "添加电价时段配置列表")
    Boolean createElectricityPrice(@RequestBody List<ElectricityPriceSegmentedDTO> list);
    @PostMapping(PREFIX + "/schedule/model/setting/update")
    @GetMapping(PREFIX + "/schedule/model/setting/update")
    @Operation(summary = "修改调度模型配置")
    Boolean updateScheduleModelSetting(@RequestParam("modelCode") String modelCode, @RequestParam("key") String key, @RequestParam("value") String value);
    @GetMapping(PREFIX + "/schedule/adjust/config-list")
    @Operation(summary = "获取模拟调整配置")
    List<StAdjustConfigDetDTO> getAdjustConfigListByModelId(@RequestParam("modelId") String modelId);
    @GetMapping(PREFIX + "/alarm-config/update")
    @Operation(summary = "修改预警配置")
    Boolean updateAlarmConfig(@RequestParam("alarmObj")String alarmObj, @RequestParam("upperLimit")String upperLimit, @RequestParam("lowerLimit")String lowerLimit);
    @PostMapping(PREFIX + "/chart/param/update")
    @Operation(summary = "修改图表参数配置")
    Boolean updateChartParam(@RequestBody ChartDTO chartDTO);
}
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/ChartDTO.java
对比新文件
@@ -0,0 +1,44 @@
package com.iailab.module.model.api.mcs.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * @description: 图表参数
 * @author: dzd
 * @date: 2024/11/5 11:17
 **/
@Data
public class ChartDTO implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    private String id;
    /**
     * 图表名称
     */
    private String chartName;
    /**
     * 图表编码
     */
    private String chartCode;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 修改时间
     */
    private Date updateTime;
    private List<ChartParamDTO> chartParams;
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -25,6 +25,7 @@
import com.iailab.module.model.mcs.pre.entity.MmPredictAlarmMessageEntity;
import com.iailab.module.model.mcs.pre.service.*;
import com.iailab.module.model.mcs.pre.vo.MmItemOutputRespVO;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmConfigSaveReqVO;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessageSaveReqVO;
import com.iailab.module.model.mcs.pre.vo.MmPredictItemRespVO;
import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity;
@@ -119,7 +120,6 @@
    @Autowired
    private StAdjustConfigService stAdjustConfigService;
    private int HOUR_MINS = 60;
    @Override
@@ -722,9 +722,11 @@
            }
            MmItemOutputEntity outPut = mmItemOutputService.getByItemid(predictItem.getId(), itemNo[1], itemNo[2]);
            String outputId = outPut.getId();
            // 如果第5个参数为1,则取累计值
            if ("1".equals(itemNo[4])){
                outputId = outPut.getId() + CommonDict.CUMULANT_SUFFIX;
            // 判断是否有第五个参数,如果有第5个参数为1,则取累计值
            if (itemNo.length >= 5){
                if (StringUtils.isNotBlank(itemNo[4]) && "1".equals(itemNo[4])){
                    outputId = outPut.getId() + CommonDict.CUMULANT_SUFFIX;
                }
            }
            Date predictTime = predictItem.getLastTime();
            List<Object[]> curData = mmItemResultJsonService.getData(outputId, predictTime, DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND);
@@ -824,6 +826,27 @@
        return ConvertUtils.sourceToTarget(list, StAdjustConfigDetDTO.class);
    }
    @Override
    public Boolean updateAlarmConfig(String alarmObj,String upperLimit,String lowerLimit) {
        MmPredictAlarmConfigSaveReqVO reqVO = new MmPredictAlarmConfigSaveReqVO();
        reqVO.setAlarmObj(alarmObj);
        reqVO.setUpperLimit(BigDecimal.valueOf(Double.parseDouble(upperLimit)));
        reqVO.setLowerLimit(BigDecimal.valueOf(Double.parseDouble(lowerLimit)));
        mmPredictAlarmConfigService.updateByAlarmObj(reqVO);
        return true;
    }
    @Override
    public Boolean updateChartParam(ChartDTO chartDTO) {
        ChartDTO oldChartDTO = chartService.getChartByChartCode(chartDTO.getChartCode());
        List<ChartParamDTO> chartParams = chartDTO.getChartParams();
        chartParams.forEach(item -> {
            item.setChartId(oldChartDTO.getId());
        });
        chartParamService.updateByChartIdAndParamCode(chartParams);
        return true;
    }
    /**
     * 计算功率因数 p²/(根号:p²+Q²)
     **/
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java
@@ -236,4 +236,18 @@
        mcsApi.updateScheduleModelSetting(modelCode, key, value);
        return success( true);
    }
    @GetMapping("/alarm-config/update")
    @Operation(summary = "修改预警配置列表")
    public CommonResult<Boolean> updateAlarmConfig(@RequestParam("alarmObj")String alarmObj, @RequestParam("upperLimit")String upperLimit, @RequestParam("lowerLimit")String lowerLimit){
        mcsApi.updateAlarmConfig(alarmObj, upperLimit, lowerLimit);
        return success( true);
    }
    @PostMapping("/chart/param/update")
    @Operation(summary = "修改图表参数配置")
    public CommonResult<Boolean> updateChartParam(@RequestBody ChartDTO chartDTO){
        mcsApi.updateChartParam(chartDTO);
        return success( true);
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmConfigService.java
@@ -29,4 +29,6 @@
    void delete(String id);
    List<AlarmConfigRespDTO> list(Map<String, Object> params);
    void updateByAlarmObj(MmPredictAlarmConfigSaveReqVO reqVO);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmConfigServiceImpl.java
@@ -69,4 +69,12 @@
        List<MmPredictAlarmConfigEntity> list = baseDao.selectList(wrapper);
        return ConvertUtils.sourceToTarget(list, AlarmConfigRespDTO.class);
    }
    @Override
    public void updateByAlarmObj(MmPredictAlarmConfigSaveReqVO reqVO) {
        QueryWrapper<MmPredictAlarmConfigEntity> wrapper = new QueryWrapper<>();
        wrapper.eq("is_enable", 1);
        wrapper.eq(StringUtils.isNotBlank(reqVO.getAlarmObj()),"alarm_obj", reqVO.getAlarmObj());
        baseDao.update(ConvertUtils.sourceToTarget(reqVO, MmPredictAlarmConfigEntity.class), wrapper);
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java
@@ -78,20 +78,18 @@
     */
    protected Date getStartTime(ColumnItem columnItem, Date originalTime) {
        Date dateTime = new Date();
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(originalTime);
        switch (ModelParamType.getEumByCode(columnItem.getParamType())) {
            case DATAPOINT:
            case PLAN:
                dateTime = calculateTime(originalTime, true, columnItem.getDataLength(), columnItem.getGranularity());
                dateTime = calculateTime(originalTime, true, columnItem.getDataLength() + 1, columnItem.getGranularity());
                break;
            case IND:
            case IND_ASCII:
                dateTime = calculateTime(originalTime, true, columnItem.getDataLength()-1, columnItem.getGranularity());
                dateTime = calculateTime(originalTime, true, columnItem.getDataLength(), columnItem.getGranularity());
                break;
            case NORMALITEM:
            case MERGEITEM:
                dateTime = calendar.getTime();
                dateTime = calculateTime(originalTime, false, 1, columnItem.getGranularity());
                break;
            default:
                break;
@@ -113,14 +111,14 @@
        calendar.setTime(originalTime);
        switch (ModelParamType.getEumByCode(columnItem.getParamType())) {
            case DATAPOINT:
            case PLAN:
            case IND:
            case IND_ASCII:
            case PLAN:
                dateTime = calendar.getTime();
                dateTime = calculateTime(originalTime, true, 1, columnItem.getGranularity());
                break;
            case NORMALITEM:
            case MERGEITEM:
                dateTime = calculateTime(originalTime, false, columnItem.getDataLength(), columnItem.getGranularity());
                dateTime = calculateTime(originalTime, false, columnItem.getDataLength() + 1, columnItem.getGranularity());
                break;
            default:
                break;
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartParamService.java
@@ -27,4 +27,6 @@
    Map<String, String> getByChartId(String chartId);
    List<com.iailab.module.model.api.mcs.dto.ChartParamDTO> list(String chartCode);
    void updateByChartIdAndParamCode(List<ChartParamDTO> list);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartService.java
@@ -24,4 +24,6 @@
    void delete(String id);
    Map<String, String> getByChartCode(String chartCode);
    com.iailab.module.model.api.mcs.dto.ChartDTO getChartByChartCode(String chartCode);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartParamServiceImpl.java
@@ -75,6 +75,18 @@
    }
    @Override
    public void updateByChartIdAndParamCode(List<ChartParamDTO> list) {
        list.forEach(item -> {
            ChartParamEntity entity = ConvertUtils.sourceToTarget(item, ChartParamEntity.class);
            QueryWrapper<ChartParamEntity> wrapper = new QueryWrapper<>();
            wrapper.eq("chart_id", entity.getChartId())
                    .eq("param_code", entity.getParamCode());
            baseDao.update(entity, wrapper);
        });
    }
    @Override
    public void delete(String id) {
        baseDao.deleteById(id);
    }
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartServiceImpl.java
@@ -4,19 +4,21 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.iailab.framework.common.page.PageData;
import com.iailab.framework.common.service.impl.BaseServiceImpl;
import com.iailab.framework.common.util.object.ConvertUtils;
import com.iailab.module.model.mpk.dao.ChartDao;
import com.iailab.module.model.mpk.dto.ChartDTO;
import com.iailab.module.model.mpk.entity.ChartEntity;
import com.iailab.module.model.mpk.entity.ChartParamEntity;
import com.iailab.module.model.mpk.service.ChartParamService;
import com.iailab.module.model.mpk.service.ChartService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.*;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
/**
 * @description:
@@ -84,4 +86,12 @@
        }
        return chartParamService.getByChartId(entity.getId());
    }
    @Override
    public com.iailab.module.model.api.mcs.dto.ChartDTO getChartByChartCode(String chartCode) {
        QueryWrapper<ChartEntity> wrapper = new QueryWrapper<>();
        wrapper.eq("chart_code", chartCode);
        ChartEntity entity = baseDao.selectOne(wrapper);
        return ConvertUtils.sourceToTarget(entity, com.iailab.module.model.api.mcs.dto.ChartDTO.class);
    }
}