From 81ec6148e89a6f64dfc8bf091e8d9658484bea8a Mon Sep 17 00:00:00 2001 From: houzhongjian <houzhongyi@126.com> Date: 星期四, 06 三月 2025 16:24:02 +0800 Subject: [PATCH] Merge branch 'master' of http://dlindusit.com:53929/r/iailab-plat --- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmConfigServiceImpl.java | 8 ++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartParamServiceImpl.java | 12 ++++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartServiceImpl.java | 16 ++++- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartParamService.java | 2 iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/ChartDTO.java | 44 ++++++++++++++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java | 14 ++-- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartService.java | 2 iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java | 11 +++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java | 14 ++++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmConfigService.java | 2 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java | 31 +++++++++- 11 files changed, 139 insertions(+), 17 deletions(-) diff --git a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java index 9a57522..4d22066 100644 --- a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java +++ b/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); + } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/ChartDTO.java b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/ChartDTO.java new file mode 100644 index 0000000..73a83d7 --- /dev/null +++ b/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; +} \ No newline at end of file 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 3856993..3c80215 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 @@ -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²) **/ diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java index 1e97f5f..4d2a470 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java +++ b/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); + } } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmConfigService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmConfigService.java index 4ba0cbf..6fefa80 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmConfigService.java +++ b/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); } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmConfigServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmConfigServiceImpl.java index 04f69cf..50d5fcc 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmConfigServiceImpl.java +++ b/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); + } } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java index ce08ee6..ba11c8b 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java +++ b/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; diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartParamService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartParamService.java index 70d46e1..10e935f 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartParamService.java +++ b/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); } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartService.java index f52bcb9..a808218 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/ChartService.java +++ b/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); } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartParamServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartParamServiceImpl.java index c0ac2de..013a29a 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartParamServiceImpl.java +++ b/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); } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartServiceImpl.java index ac0b631..7803dc4 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mpk/service/impl/ChartServiceImpl.java +++ b/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); + } } \ No newline at end of file -- Gitblit v1.9.3