潘志宝
2025-02-10 88dece072becc2768c18715fb9b022ee7eb9f9a0
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -26,10 +26,9 @@
import com.iailab.module.model.mcs.pre.vo.MmItemOutputRespVO;
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.StScheduleModelEntity;
import com.iailab.module.model.mcs.sche.entity.StScheduleSuggestEntity;
import com.iailab.module.model.mcs.sche.service.StScheduleRecordService;
import com.iailab.module.model.mcs.sche.service.StScheduleSchemeService;
import com.iailab.module.model.mcs.sche.service.StScheduleSuggestService;
import com.iailab.module.model.mcs.sche.service.*;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestSaveReqVO;
import com.iailab.module.model.mdk.vo.ItemVO;
import com.iailab.module.model.mpk.service.ChartParamService;
@@ -106,6 +105,13 @@
    @Autowired
    private ElectricityPriceSegmentedService electricityPriceSegmentedService;
    @Autowired
    private StScheduleModelService stScheduleModelService;
    @Autowired
    private StScheduleModelSettingService stScheduleModelSettingService;
    private int HOUR_MINS = 60;
@@ -204,7 +210,7 @@
            viewDto.setRealData(getHisData(output.getPointid(), startTime, endTime));
            viewDto.setPreDataN(mmItemResultService.getData(output.getId(), startTime, endTime, DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND));
            viewDto.setPreDataL(mmItemResultLastPointService.getData(output.getId(), startTime, endTime, DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND));
            viewDto.setCurData(mmItemResultJsonService.getData(output.getId(), predictTime, DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND));
            List<Double> values = new ArrayList<>();
            if (!CollectionUtils.isEmpty(viewDto.getRealData())) {
                List<Double> hisValues = new ArrayList<>();
@@ -394,8 +400,8 @@
            }).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)));
            dataView.setPreCumulant(new BigDecimal(curList.stream().mapToDouble(Double::doubleValue).sum()));
            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));
        }
        String alarmObj = chartParams.get(CommonConstant.ALARM_OBJ);
@@ -767,6 +773,13 @@
        return true;
    }
    @Override
    public Boolean updateScheduleModelSetting(String modelCode, String key, String value) {
        StScheduleModelEntity model = stScheduleModelService.getByModelCode(modelCode);
        stScheduleModelSettingService.updateByModelIdAndKey(model.getId(), key, value);
        return true;
    }
    /**
     * 计算功率因数 p²/(根号:p²+Q²)
     **/