package com.iailab.module.model.api.mcs; import com.iailab.framework.common.pojo.PageResult; import com.iailab.module.model.api.mcs.dto.*; import com.iailab.module.model.api.mdk.dto.StScheduleRecordVO; import com.iailab.module.model.enums.ApiConstants; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.Map; /** * @author PanZhibao * @Description * @createTime 2024å¹´08月26æ—¥ */ @FeignClient(name = ApiConstants.NAME) @Tag(name = "RPC æœåŠ¡ - 模型é…置信æ¯æŽ¥å£") public interface McsApi { String PREFIX = ApiConstants.PREFIX + "/mcs"; @GetMapping(PREFIX + "/predict-item/tree") @Operation(summary = "é¢„æµ‹é¡¹æ ‘") List<PredictItemTreeDTO> getPredictItemTree(); @PostMapping(PREFIX + "/predict-data/charts") @Operation(summary = "预测数æ®å›¾è¡¨") PreDataBarLineRespVO getPreDataCharts(@RequestBody PreDataBarLineReqVO reqVO); @PostMapping(PREFIX + "/predict-data/item-chart") @Operation(summary = "预测数æ®å›¾è¡¨-预测项首页图表") PreDataItemChartRespVO getPreDataItemChart(@RequestBody PreDataItemChartReqVO reqVO); @PostMapping(PREFIX + "/predict-data/single-chart") @Operation(summary = "预测数æ®å›¾è¡¨") PreDataSingleChartRespVO getPreDataSingleChart(@RequestBody PreDataSingleChartReqVO reqVO); @PostMapping(PREFIX + "/predict-data/cur") @Operation(summary = "获å–当å‰é¢„测数æ®") Map<String, List<Object[]>> getPreDataCur(@RequestBody PreDataJsonReqVO reqVO); @PostMapping(PREFIX + "/plan-data/single-chart") @Operation(summary = "计划数æ®å›¾è¡¨") PlanDataSingleChartRespVO getPlanDataSingleChart(@RequestBody PreDataSingleChartReqVO reqVO); @PostMapping(PREFIX + "/alarm-message/create") @Operation(summary = "æ·»åŠ é¢„è¦ä¿¡æ¯") Boolean createAlarmMessage(@RequestBody AlarmMessageRespDTO dto); @GetMapping(PREFIX + "/alarm-message/list") @Operation(summary = "获å–预è¦ä¿¡æ¯åˆ—表") List<AlarmMessageRespDTO> listAlarmMessage(@RequestParam Map<String, Object> params); @GetMapping(PREFIX + "/alarm-config/list") @Operation(summary = "获å–预è¦é…置列表") List<AlarmConfigRespDTO> listAlarmConfig(@RequestParam Map<String, Object> params); @GetMapping(PREFIX + "/alarm-message/last-one") @Operation(summary = "获å–最新预è¦ä¿¡æ¯") AlarmMessageRespDTO getLastAlarmMessage(@RequestParam("alarmObj") String alarmObj); @PostMapping(PREFIX + "/schedule-suggest/create") @Operation(summary = "æ·»åŠ è°ƒåº¦å»ºè®®") Boolean createScheduleSuggest(@RequestBody ScheduleSuggestRespDTO dto); @PostMapping(PREFIX + "/schedule-suggest/list") @Operation(summary = "获å–调度建议列表") List<ScheduleSuggestRespDTO> listScheduleSuggest(@RequestBody ScheduleSuggestReqDTO vo); @PostMapping(PREFIX + "/predict-model-setting/modify") @Operation(summary = "修改预测模型设置å‚æ•°") Boolean modifyPredictModelSetting(@RequestBody List<PredictModelSettingReqDTO> dtos); @GetMapping(PREFIX + "/schedule-suggest/last-limit") @Operation(summary = "获å–调度建议列表") List<ScheduleSuggestRespDTO> getLastLimitScheduleSuggest(@RequestParam("scheduleObj") String scheduleObj, @RequestParam("limit") Integer limit); @PostMapping(PREFIX + "/schedule-model-setting/modify") @Operation(summary = "修改调度模型设置å‚æ•°") Boolean modifyScheduleModelSetting(@RequestBody List<ScheduleModelSettingReqDTO> dtos); @GetMapping(PREFIX + "/schedule-scheme/list") @Operation(summary = "获å–调度方案列表") List<StScheduleSchemeDTO> listScheduleScheme(@RequestParam("triggerMethod") String triggerMethod, @RequestParam("triggerCondition") String triggerCondition); @GetMapping(PREFIX + "/chart/param/list") @Operation(summary = "图表é…置列表") List<ChartParamDTO> getChartParamList(@RequestParam("chartCode") String chartCode); @PostMapping(PREFIX + "/alarm-suggest/page") @Operation(summary = "获å–预è¦ä¿¡æ¯å’Œè°ƒåº¦å»ºè®®åˆ†é¡µåˆ—表") PageResult<StAlarmAndSuggestRespVO> getAlarmAndSuggestPage(@RequestBody StAlarmAndSuggestPageReqVO reqVO); @PostMapping(PREFIX + "/predict-data/doubleValue") @Operation(summary = "获å–多个预测项Double类型数æ®") Map<String, Map<String, Double>> getPreDoubleData(PreDoubleDataReqVO reqVO); @PostMapping(PREFIX + "/predict-data/last-value") @Operation(summary = "获å–最åŽé¢„测值") Map<String, BigDecimal> getPredictLastValue(@RequestBody PredictLastValueReqVO reqVO); @GetMapping("/schedule-data/last") @Operation(summary = "调度模型最新结果查询") List<StScheduleRecordVO> getLastScheduleData(@RequestParam("scheduleCode") String scheduleCode,@RequestParam("limit") Integer limit); @PostMapping("/predict-data/itemNo") @Operation(summary = "查询时间范围内预测结果") Map<String,List<Object[]>> getPredictDataItemNo(@RequestBody PreDataItemNoReqVO reqVO); @GetMapping(PREFIX + "/electricityPrice/list") @Operation(summary = "电价时段é…置列表") List<ElectricityPriceSegmentedDTO> getElectricityPriceList(@RequestParam("year") String year, @RequestParam("time") String time); @PostMapping(PREFIX + "/electricityPrice/create") @Operation(summary = "æ·»åŠ ç”µä»·æ—¶æ®µé…置列表") Boolean createElectricityPrice(@RequestBody List<ElectricityPriceSegmentedDTO> list); @GetMapping(PREFIX + "/schedule/model/setting/update") @Operation(summary = "修改调度模型é…ç½®") Boolean updateScheduleModelSetting(@RequestParam("modelCode") String modelCode, @RequestParam("key") String key, @RequestParam("value") String value); @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); @GetMapping(PREFIX + "/item/output/itemId") @Operation(summary = "获å–") MmItemOutputDTO getItemOutputByItemid(@RequestParam("itemid") String itemid, @RequestParam("resultstr")String resultstr, @RequestParam("resultIndex")String resultIndex); @PostMapping(PREFIX + "/item/result") @Operation(summary = "获å–") List<Object[]> getItemResult(@RequestBody PreItemResultReqVO reqVO); @GetMapping(PREFIX + "/predict-item/itemNo") @Operation(summary = "获å–") PredictItemVO getPredictItemByItemNo(@RequestParam("itemNo") String itemNo); @PostMapping(PREFIX + "/item/result/last-point") @Operation(summary = "获å–") List<Object[]> getItemResultLastPoint(@RequestBody PreItemResultReqVO reqVO); }