iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
@@ -127,4 +127,8 @@ @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); } iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDetDTO.java
对比新文件 @@ -0,0 +1,44 @@ package com.iailab.module.model.api.mcs.dto; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.io.Serializable; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ @Schema(description = "RPC 模型 - 模拟调整配置详情 DTO") @Data public class StAdjustConfigDetDTO implements Serializable { private static final long serialVersionUID = 1L; @Schema(description = "ID") private String id; @Schema(description = "配置ID") private String configId; @Schema(description = "预测项类型") private String itemTypeId; @Schema(description = "预测项ID") private String predictItemId; @Schema(description = "输出KEY") private String outKey; @Schema(description = "输出名称") private String outName; @Schema(description = "参数排序") private Integer modelParamOrder; @Schema(description = "输入排序") private Integer modelParamPortOrder; @Schema(description = "执行顺序") private Integer sort; } iailab-module-model/iailab-module-model-biz/db/mysql.sql
@@ -901,3 +901,42 @@ alter table t_mm_item_output add column `iscumulant` tinyint default false COMMENT '是否累计'; alter table t_mm_item_output add column `cumuldivisor` int DEFAULT NULL COMMENT '累计除数'; alter table t_mm_item_output add column `cumulpoint` varchar(36) DEFAULT NULL, COMMENT '累计测点'; CREATE TABLE `t_st_adjust_config` ( `id` varchar(36) NOT NULL COMMENT 'ID', `schedule_model_id` varchar(36) DEFAULT NULL COMMENT '调度模型ID', `remark` varchar(200) DEFAULT NULL COMMENT '备注', `status` tinyint DEFAULT 1 COMMENT '状态', create_time datetime default current_timestamp, update_time datetime default current_timestamp, PRIMARY KEY (`id`) USING BTREE, INDEX `idx_schedule_model_id`(`schedule_model_id` ASC) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='模拟调整配置表'; CREATE TABLE `t_st_adjust_config_det` ( `id` varchar(36) NOT NULL COMMENT 'ID', `config_id` varchar(36) DEFAULT NULL COMMENT '配置ID', `item_type_id` varchar(36) DEFAULT NULL COMMENT '预测项类型', `predict_item_id` varchar(36) DEFAULT NULL COMMENT '预测项ID', `out_key` varchar(50) DEFAULT NULL COMMENT '输出KEY', `out_name` varchar(50) DEFAULT NULL COMMENT '输出名称', `model_param_order` integer DEFAULT NULL COMMENT '参数排序', `model_param_port_order` integer DEFAULT NULL COMMENT '输入排序', `sort` integer COMMENT '执行顺序', PRIMARY KEY (`id`) USING BTREE, INDEX `idx_config_id`(`config_id` ASC) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='模拟调整配置详细表'; CREATE TABLE `t_st_adjust_result` ( `id` varchar(36) NOT NULL COMMENT 'ID', `predict_item_id` varchar(36) DEFAULT NULL COMMENT '预测项ID', `schedule_model_id` varchar(36) DEFAULT NULL COMMENT '调度模型ID', `adjust_time` datetime NULL DEFAULT NULL COMMENT '模拟调整时间', `adjust_value` varchar(500) DEFAULT NULL COMMENT '模拟调整值', `json_value` varchar(1000) DEFAULT NULL COMMENT '模拟调整结果', PRIMARY KEY (`id`) USING BTREE, INDEX `idx_predict_item_id`(`predict_item_id` ASC) USING BTREE, INDEX `idx_schedule_model_id`(`schedule_model_id` ASC) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='模拟调整结果表'; iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -27,6 +27,7 @@ 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.StAdjustConfigDetEntity; 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.*; @@ -113,6 +114,8 @@ @Autowired private StScheduleModelSettingService stScheduleModelSettingService; @Autowired private StAdjustConfigService stAdjustConfigService; private int HOUR_MINS = 60; @@ -801,6 +804,12 @@ return true; } @Override public List<StAdjustConfigDetDTO> getAdjustConfigListByModelId(String modelId) { List<StAdjustConfigDetEntity> list = stAdjustConfigService.getDetByModelId(modelId); return ConvertUtils.sourceToTarget(list, StAdjustConfigDetDTO.class); } /** * 计算功率因数 p²/(根号:p²+Q²) **/ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java
对比新文件 @@ -0,0 +1,16 @@ package com.iailab.module.model.mcs.sche.dao; import com.iailab.framework.mybatis.core.mapper.BaseMapperX; import com.iailab.framework.tenant.core.db.dynamic.TenantDS; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigEntity; import org.apache.ibatis.annotations.Mapper; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ @TenantDS @Mapper public interface StAdjustConfigDao extends BaseMapperX<StAdjustConfigEntity> { } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDetDao.java
对比新文件 @@ -0,0 +1,16 @@ package com.iailab.module.model.mcs.sche.dao; import com.iailab.framework.mybatis.core.mapper.BaseMapperX; import com.iailab.framework.tenant.core.db.dynamic.TenantDS; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity; import org.apache.ibatis.annotations.Mapper; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ @TenantDS @Mapper public interface StAdjustConfigDetDao extends BaseMapperX<StAdjustConfigDetEntity> { } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java
对比新文件 @@ -0,0 +1,16 @@ package com.iailab.module.model.mcs.sche.dao; import com.iailab.framework.mybatis.core.mapper.BaseMapperX; import com.iailab.framework.tenant.core.db.dynamic.TenantDS; import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity; import org.apache.ibatis.annotations.Mapper; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ @TenantDS @Mapper public interface StAdjustResultDao extends BaseMapperX<StAdjustResultEntity> { } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigDetEntity.java
对比新文件 @@ -0,0 +1,65 @@ package com.iailab.module.model.mcs.sche.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.io.Serializable; /** * @author PanZhibao * @Description * @createTime 2025年02月20日 */ @Data @TableName("t_st_adjust_config_det") public class StAdjustConfigDetEntity implements Serializable { private static final long serialVersionUID = 1L; /** * 主键 */ @TableId(value = "id",type = IdType.INPUT) private String id; /** * 配置ID */ private String configId; /** * 预测项类型 */ private String itemTypeId; /** * 预测项ID */ private String predictItemId; /** * 输出KEY */ private String outKey; /** * 输出名称 */ private String outName; /** * 参数排序 */ private Integer modelParamOrder; /** * 输入排序 */ private Integer modelParamPortOrder; /** * 执行顺序 */ private Integer sort; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustConfigEntity.java
对比新文件 @@ -0,0 +1,51 @@ package com.iailab.module.model.mcs.sche.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.io.Serializable; import java.util.Date; /** * @author PanZhibao * @Description * @createTime 2025年02月20日 */ @Data @TableName("t_st_adjust_config") public class StAdjustConfigEntity implements Serializable { private static final long serialVersionUID = 1L; /** * 主键 */ @TableId(value = "id",type = IdType.INPUT) private String id; /** * 调度模型ID */ private String scheduleModelId; /** * 备注 */ private String remark; /** * 状态 */ private Integer status; /** * 创建时间 */ private Date createTime; /** * 修改时间 */ private Date updateTime; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StAdjustResultEntity.java
对比新文件 @@ -0,0 +1,51 @@ package com.iailab.module.model.mcs.sche.entity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.io.Serializable; import java.util.Date; /** * @author PanZhibao * @Description * @createTime 2025年02月20日 */ @Data @TableName("t_st_adjust_result") public class StAdjustResultEntity implements Serializable { private static final long serialVersionUID = 1L; /** * 主键 */ @TableId(value = "id",type = IdType.INPUT) private String id; /** * 预测项ID */ private String predictItemId; /** * 调度模型ID */ private String scheduleModelId; /** * 模拟调整时间 */ private Date adjustTime; /** * 模拟调整值 */ private String adjustValue; /** * 模拟调整结果 */ private String jsonValue; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java
对比新文件 @@ -0,0 +1,16 @@ package com.iailab.module.model.mcs.sche.service; import com.iailab.framework.common.service.BaseService; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity; import java.util.List; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ public interface StAdjustConfigDetService extends BaseService<StAdjustConfigDetEntity> { List<StAdjustConfigDetEntity> getListByConfigId(String configId); } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java
对比新文件 @@ -0,0 +1,20 @@ package com.iailab.module.model.mcs.sche.service; import com.iailab.framework.common.service.BaseService; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigEntity; import java.util.List; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ public interface StAdjustConfigService extends BaseService<StAdjustConfigEntity> { StAdjustConfigEntity getByModelId(String modelId); List<StAdjustConfigDetEntity> getDetByModelId(String modelId); } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java
对比新文件 @@ -0,0 +1,12 @@ package com.iailab.module.model.mcs.sche.service; import com.iailab.framework.common.service.BaseService; import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ public interface StAdjustResultService extends BaseService<StAdjustResultEntity> { } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java
对比新文件 @@ -0,0 +1,28 @@ package com.iailab.module.model.mcs.sche.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.iailab.framework.common.service.impl.BaseServiceImpl; import com.iailab.module.model.mcs.sche.dao.StAdjustConfigDetDao; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity; import com.iailab.module.model.mcs.sche.service.StAdjustConfigDetService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import java.util.List; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ @Slf4j @Service public class StAdjustConfigDetServiceImpl extends BaseServiceImpl<StAdjustConfigDetDao, StAdjustConfigDetEntity> implements StAdjustConfigDetService { public List<StAdjustConfigDetEntity> getListByConfigId(String configId) { QueryWrapper<StAdjustConfigDetEntity> queryWrapper = new QueryWrapper<>(); queryWrapper.eq("config_id", configId); queryWrapper.orderByAsc("sort"); return baseDao.selectList(queryWrapper); } } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java
对比新文件 @@ -0,0 +1,36 @@ package com.iailab.module.model.mcs.sche.service.impl; import com.iailab.framework.common.service.impl.BaseServiceImpl; import com.iailab.module.model.mcs.sche.dao.StAdjustConfigDao; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity; import com.iailab.module.model.mcs.sche.entity.StAdjustConfigEntity; import com.iailab.module.model.mcs.sche.service.StAdjustConfigDetService; import com.iailab.module.model.mcs.sche.service.StAdjustConfigService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ @Slf4j @Service public class StAdjustConfigServiceImpl extends BaseServiceImpl<StAdjustConfigDao, StAdjustConfigEntity> implements StAdjustConfigService { @Autowired private StAdjustConfigDetService stAdjustConfigDetService; public StAdjustConfigEntity getByModelId(String modelId) { return baseDao.selectOne("schedule_model_id", modelId); } public List<StAdjustConfigDetEntity> getDetByModelId(String modelId) { StAdjustConfigEntity configEntity = getByModelId(modelId); return stAdjustConfigDetService.getListByConfigId(configEntity.getId()); } } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java
对比新文件 @@ -0,0 +1,18 @@ package com.iailab.module.model.mcs.sche.service.impl; import com.iailab.framework.common.service.impl.BaseServiceImpl; import com.iailab.module.model.mcs.sche.dao.StAdjustResultDao; import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity; import com.iailab.module.model.mcs.sche.service.StAdjustResultService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ @Slf4j @Service public class StAdjustResultServiceImpl extends BaseServiceImpl<StAdjustResultDao, StAdjustResultEntity> implements StAdjustResultService { } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetPageReqVO.java
对比新文件 @@ -0,0 +1,22 @@ package com.iailab.module.model.mcs.sche.vo; import com.iailab.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; /** * @author PanZhibao * @Description * @createTime 2025年02月20日 */ @Schema(description = "模型服务 - 调度模型分页 Request VO") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) public class StAdjustConfigDetPageReqVO extends PageParam { @Schema(description = "配置ID", example = "") private String configId; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java
对比新文件 @@ -0,0 +1,9 @@ package com.iailab.module.model.mcs.sche.vo; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ public class StAdjustConfigDetRespVO { } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java
对比新文件 @@ -0,0 +1,22 @@ package com.iailab.module.model.mcs.sche.vo; import com.iailab.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; /** * @author PanZhibao * @Description * @createTime 2025年02月20日 */ @Schema(description = "模型服务 - 调度模型分页 Request VO") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) public class StAdjustConfigPageReqVO extends PageParam { @Schema(description = "模型编号,模糊匹配", example = "") private String modelCode; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java
对比新文件 @@ -0,0 +1,9 @@ package com.iailab.module.model.mcs.sche.vo; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ public class StAdjustConfigRespVO { } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java
对比新文件 @@ -0,0 +1,26 @@ package com.iailab.module.model.mcs.sche.vo; import com.iailab.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; /** * @author PanZhibao * @Description * @createTime 2025年02月20日 */ @Schema(description = "模型服务 - 调度模型分页 Request VO") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) public class StAdjustResultPageReqVO extends PageParam { @Schema(description = "开始时间", example = "") private String startTime; @Schema(description = "结束时间", example = "") private String endTime; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java
对比新文件 @@ -0,0 +1,9 @@ package com.iailab.module.model.mcs.sche.vo; /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ public class StAdjustResultRespVO { }