From f3690bc0ff61dee37f6d18ef3e09158afd36843d Mon Sep 17 00:00:00 2001 From: Jay <csj123456> Date: 星期二, 29 四月 2025 16:43:28 +0800 Subject: [PATCH] 新增修改预测模型配置接口 --- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java | 44 ++++++++++++++++++++++++++++++++++---------- 1 files changed, 34 insertions(+), 10 deletions(-) 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 89431c1..45a1ee3 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 @@ -23,6 +23,7 @@ import com.iailab.module.model.mcs.pre.entity.DmModuleEntity; import com.iailab.module.model.mcs.pre.entity.MmItemOutputEntity; import com.iailab.module.model.mcs.pre.entity.MmPredictAlarmMessageEntity; +import com.iailab.module.model.mcs.pre.entity.MmPredictModelEntity; import com.iailab.module.model.mcs.pre.enums.PredGranularityEnum; import com.iailab.module.model.mcs.pre.service.*; import com.iailab.module.model.mcs.pre.vo.MmItemOutputRespVO; @@ -119,7 +120,11 @@ private StScheduleModelSettingService stScheduleModelSettingService; @Autowired - private MmPredictAutoAdjustConfigService autoAdjustService; + private MmPredictModelService mmPredictModelService; + + @Autowired + private MmModelArithSettingsService mmModelArithSettingsService; + private int HOUR_MINS = 60; @Override @@ -141,6 +146,7 @@ PredictItemTreeDTO chd = new PredictItemTreeDTO(); chd.setLabel(item1.getItemName()); chd.setId(item1.getId()); + chd.setDisabled(true); List<PredictItemTreeDTO> chd1 = new ArrayList<>(); List<MmItemOutputEntity> outList = mmItemOutputService.getByItemid(item1.getId()); if (!CollectionUtils.isEmpty(outList)) { @@ -458,12 +464,23 @@ if (!CollectionUtils.isEmpty(dataView.getCurData())) { List<Double> curList = dataView.getCurData().stream().map(t -> { - return new Double(t[1].toString()); - }).collect(Collectors.toList()); - dataView.setPreMax(new BigDecimal(curList.stream().mapToDouble(Double::doubleValue).max().getAsDouble()).setScale(2, BigDecimal.ROUND_HALF_UP)); - dataView.setPreMin(new BigDecimal(curList.stream().mapToDouble(Double::doubleValue).min().getAsDouble()).setScale(2, BigDecimal.ROUND_HALF_UP)); - dataView.setPreLast(new BigDecimal(curList.get(curList.size() - 1)).setScale(2, BigDecimal.ROUND_HALF_UP)); - dataView.setPreCumulant(new BigDecimal(curList.stream().mapToDouble(Double::doubleValue).sum()).setScale(2, BigDecimal.ROUND_HALF_UP)); + try { + return new Double(t[1].toString()); + } catch (NumberFormatException e) { + return null; + } + }).filter(Objects::nonNull).collect(Collectors.toList()); + if (!curList.isEmpty()) { + dataView.setPreMax(new BigDecimal(curList.stream().mapToDouble(Double::doubleValue).max().getAsDouble()).setScale(2, BigDecimal.ROUND_HALF_UP)); + dataView.setPreMin(new BigDecimal(curList.stream().mapToDouble(Double::doubleValue).min().getAsDouble()).setScale(2, BigDecimal.ROUND_HALF_UP)); + dataView.setPreLast(new BigDecimal(curList.get(curList.size() - 1)).setScale(2, BigDecimal.ROUND_HALF_UP)); + dataView.setPreCumulant(new BigDecimal(curList.stream().mapToDouble(Double::doubleValue).sum()).setScale(2, BigDecimal.ROUND_HALF_UP)); + } else { + dataView.setPreMax(null); + dataView.setPreMin(null); + dataView.setPreLast(null); + dataView.setPreCumulant(null); + } } String alarmObj = chartParams.get(CommonConstant.ALARM_OBJ); @@ -826,7 +843,7 @@ } List<String[]> itemNos = reqVO.getItemNos(); for (String[] itemNo : itemNos) { - String key = itemNo[0] + "_" + itemNo[1] + "_" + itemNo[2]; + String key = itemNo[0] + "," + itemNo[1] + "," + itemNo[2]; ItemVO predictItem = mmPredictItemService.getItemByItemNo(itemNo[0]); if (predictItem == null || predictItem.getLastTime() == null) { result.put(key, BigDecimal.ZERO); @@ -971,13 +988,20 @@ } @Override + public Boolean ignoreSuggest(StAlarmAndSuggestReqVO reqVO) { + return stScheduleSuggestService.ignoreSuggest(reqVO); + } + + @Override public List<ScheduleSuggestRespDTO> getLastSuggest(Map<String, Object> params) { return stScheduleSuggestService.getLastSuggest(params); } @Override - public Boolean autoAdjustByCode(MmPredictAutoAdjustReqVO reqVO) { - return autoAdjustService.autoAdjustByCode(reqVO.getConfigCode(), reqVO.getAdjustStartTime()); + public Boolean updatePredictModelSetting(String modelCode, String key, String value) { + MmPredictModelEntity model = mmPredictModelService.getByModelCode(modelCode); + mmModelArithSettingsService.updateByModelIdAndKey(model.getId(), key, value); + return true; } private Date[] calResultTime(ItemVO predictItem, Date startTimeReq, Date endTimeReq, int lengthLeft, int lengthRight) { -- Gitblit v1.9.3