From e88fba9645a57535d858ce48da8e9d9a3dc84adc Mon Sep 17 00:00:00 2001 From: dongyukun <1208714201@qq.com> Date: 星期四, 02 一月 2025 16:48:01 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModuleHandler.java | 31 ++++++++++++++++++++----------- 1 files changed, 20 insertions(+), 11 deletions(-) diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModuleHandler.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModuleHandler.java index bf5be31..47596e7 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModuleHandler.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModuleHandler.java @@ -1,5 +1,6 @@ package com.iailab.module.model.mdk.predict; +import com.iailab.module.model.common.exception.ModelResultErrorException; import com.iailab.module.model.mcs.pre.entity.MmItemOutputEntity; import com.iailab.module.model.mcs.pre.enums.ItemRunStatusEnum; import com.iailab.module.model.mcs.pre.enums.ItemStatus; @@ -49,7 +50,6 @@ * @return */ public void predict(List<ItemVO> predictItemList, Date predictTime, int intervalTime,Map<String, PredictResultVO> predictResultMap) { - PredictResultVO predictResult; Map<String, double[]> predictValueMap = null; if (!CollectionUtils.isEmpty(predictResultMap)) { // 将predictResultMap处理成Map<outPutId, double[]> @@ -61,6 +61,7 @@ } } for (ItemVO predictItem : predictItemList) { + PredictResultVO predictResult; if (!predictItem.getStatus().equals(ItemStatus.STATUS1.getCode())) { continue; } @@ -72,33 +73,41 @@ long start = System.currentTimeMillis(); try { // 预测项开始预测 - predictResult = predictItemHandler.predict(predictTime, predictItem, predictValueMap,itemRunStatusEnum); + predictResult = predictItemHandler.predict(predictTime, predictItem, predictValueMap); + } catch (ModelResultErrorException e) { + itemRunStatusEnum = ItemRunStatusEnum.MODELRESULTERROR; + continue; } catch (Exception e) { + itemRunStatusEnum = ItemRunStatusEnum.FAIL; continue; } long end = System.currentTimeMillis(); Long drtPre = end - start; log.info(MessageFormat.format("预测项:{0},预测时间:{1}ms", predictItem.getItemName(), drtPre)); totalDur = totalDur + drtPre; - predictResult.setGranularity(predictItem.getGranularity()); predictResult.setT(intervalTime); predictResult.setSaveIndex(predictItem.getSaveIndex()); predictResult.setLt(1); + predictResultMap.put(predictItem.getItemNo(), predictResult); // 保存预测结果 - predictResultHandler.savePredictResult(predictResult); - long endSave = System.currentTimeMillis(); - Long drtSave = endSave - end; - log.info(MessageFormat.format("预测项:{0},保存时间:{1}ms", predictItem.getItemName(), - drtSave)); - totalDur = totalDur + drtSave; - predictResultMap.put(predictItem.getItemNo(), predictResult); + try { + predictResultHandler.savePredictResult(predictResult); + } catch (Exception e) { + itemRunStatusEnum = ItemRunStatusEnum.MODELRESULTSAVEERROR; + throw new RuntimeException("模型结果保存异常,result:" + predictResult); + } + itemRunStatusEnum = ItemRunStatusEnum.SUCCESS; +// long endSave = System.currentTimeMillis(); +// Long drtSave = endSave - end; +// log.info(MessageFormat.format("预测项:{0},保存时间:{1}ms", predictItem.getItemName(), +// drtSave)); +// totalDur = totalDur + drtSave; } catch (Exception e) { e.printStackTrace(); log.error(MessageFormat.format("预测项编号:{0},预测项名称:{1},预测失败:{2} 预测时刻:{3}", predictItem.getId(), predictItem.getItemName(), e.getMessage(), predictTime)); - itemRunStatusEnum = ItemRunStatusEnum.FAIL; } finally { mmItemStatusService.recordStatus(predictItem.getId(), itemRunStatusEnum, totalDur, predictTime); } -- Gitblit v1.9.3