From 047676b036956cb9fdbe72dad533a5652addc64e Mon Sep 17 00:00:00 2001 From: liriming <1343021927@qq.com> Date: 星期一, 03 三月 2025 17:24:04 +0800 Subject: [PATCH] 模拟调整 --- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigController.java | 80 ++++++++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java | 28 +++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java | 9 + iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java | 18 ++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java | 31 +++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java | 19 ++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java | 23 ++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java | 4 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java | 3 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java | 10 + iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustConfigDao.xml | 25 ++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java | 15 + iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDTO.java | 46 +++++ iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustResultDao.xml | 21 ++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigResultController.java | 53 +++++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java | 23 ++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigSaveReqVO.java | 40 ++++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java | 63 +++++++ iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java | 4 19 files changed, 514 insertions(+), 1 deletions(-) diff --git a/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDTO.java b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDTO.java new file mode 100644 index 0000000..73e0d60 --- /dev/null +++ b/iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StAdjustConfigDTO.java @@ -0,0 +1,46 @@ +package com.iailab.module.model.api.mcs.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @author lirm + * @date 2025年02月25日 + */ +@Data +public class StAdjustConfigDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 模型代码 + */ + private String modelCode; + + /** + * 模型名称 + */ + private String modelName; + + /** + * 状态(0正常 1停用) + */ + private Integer status; + + /** + * 备注 + */ + private String remark; + + /** + * 创建时间 + */ + private Date createTime; +} diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigController.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigController.java new file mode 100644 index 0000000..c6f22ed --- /dev/null +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigController.java @@ -0,0 +1,80 @@ +package com.iailab.module.model.mcs.sche.controller.admin; + +import com.iailab.framework.common.pojo.CommonResult; +import com.iailab.framework.common.pojo.PageResult; +import com.iailab.framework.common.util.object.BeanUtils; +import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmConfigRespVO; +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.entity.StScheduleModelParamEntity; +import com.iailab.module.model.mcs.sche.service.StAdjustConfigDetService; +import com.iailab.module.model.mcs.sche.service.StAdjustConfigService; +import com.iailab.module.model.mcs.sche.vo.*; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; + +import java.util.List; + +import static com.iailab.framework.common.pojo.CommonResult.success; + +/** + * @author lirm + * @Description + * @createTime 2025年02月25日 + */ +@Tag(name = "模型服务 - 模拟调整") +@RestController +@RequestMapping("/model/sche/adjust") +public class StAdjustConfigController { + + @Autowired + private StAdjustConfigService stAdjustConfigService; + + @Autowired + private StAdjustConfigDetService stAdjustConfigDetService; + + @GetMapping("/page") + @PreAuthorize("@ss.hasPermission('sche:adjust:query')") + public CommonResult<PageResult<StAdjustConfigRespVO>> getPage(@Valid StAdjustConfigPageReqVO pageVO) { + PageResult<StAdjustConfigRespVO> pageResult = stAdjustConfigService.page(pageVO); + return success(pageResult); + } + + @GetMapping("/get") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('sche:adjust:query')") + public CommonResult<StAdjustConfigRespVO> getInfo(@RequestParam("id") String id) { + StAdjustConfigEntity entity = stAdjustConfigService.getInfo(id); + StAdjustConfigRespVO result = BeanUtils.toBean(entity, StAdjustConfigRespVO.class); + List<StAdjustConfigDetEntity> paramList = stAdjustConfigDetService.getListByConfigId(entity.getId()); + result.setAdjustConfigDetList(paramList); + return success(result); + } + + @PostMapping("/create") + @PreAuthorize("@ss.hasPermission('sche:adjust:create')") + public CommonResult<Boolean> create(@Valid @RequestBody StAdjustConfigSaveReqVO createReqVO) { + stAdjustConfigService.create(createReqVO); + return success(true); + } + + @PutMapping("/update") + @PreAuthorize("@ss.hasPermission('sche:adjust:update')") + public CommonResult<Boolean> update(@Valid @RequestBody StAdjustConfigSaveReqVO updateReqVO) { + stAdjustConfigService.update(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + @PreAuthorize("@ss.hasPermission('sche:adjust:delete')") + public CommonResult<Boolean> deleteTenant(@RequestParam("id") String id) { + stAdjustConfigService.delete(id); + return success(true); + } +} \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigResultController.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigResultController.java new file mode 100644 index 0000000..d1b6306 --- /dev/null +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StAdjustConfigResultController.java @@ -0,0 +1,53 @@ +package com.iailab.module.model.mcs.sche.controller.admin; + +import com.iailab.framework.common.pojo.CommonResult; +import com.iailab.framework.common.pojo.PageResult; +import com.iailab.framework.common.util.object.BeanUtils; +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.entity.StAdjustResultEntity; +import com.iailab.module.model.mcs.sche.service.StAdjustConfigDetService; +import com.iailab.module.model.mcs.sche.service.StAdjustConfigService; +import com.iailab.module.model.mcs.sche.service.StAdjustResultService; +import com.iailab.module.model.mcs.sche.service.StScheduleRecordService; +import com.iailab.module.model.mcs.sche.vo.*; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +import static com.iailab.framework.common.pojo.CommonResult.success; + +/** + * @author lirm + * @Description + * @createTime 2025年02月25日 + */ +@Tag(name = "模型服务 - 模拟调整记录") +@RestController +@RequestMapping("/model/sche/adjust-result") +public class StAdjustConfigResultController { + + @Autowired + private StAdjustResultService stAdjustResultService; + + @GetMapping("/get") + @Operation(summary = "获得调整记录") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + public CommonResult<StAdjustResultRespVO> getInfo(@RequestParam("id") String id) { + StAdjustResultRespVO respVO = stAdjustResultService.getInfo(id); + return success(respVO); + } + + @GetMapping("/page") + @Operation(summary = "获得调整记录分页") + public CommonResult<PageResult<StAdjustResultRespVO>> getPage(@Valid StAdjustResultPageReqVO pageVO) { + PageResult<StAdjustResultRespVO> pageResult = stAdjustResultService.page(pageVO); + return success(pageResult); + } +} \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java index 25bd66c..1aad151 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustConfigDao.java @@ -1,9 +1,13 @@ package com.iailab.module.model.mcs.sche.dao; +import com.baomidou.mybatisplus.core.metadata.IPage; 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 com.iailab.module.model.mcs.sche.vo.StAdjustConfigPageReqVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustConfigRespVO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * @author PanZhibao @@ -13,4 +17,10 @@ @TenantDS @Mapper public interface StAdjustConfigDao extends BaseMapperX<StAdjustConfigEntity> { + + IPage<StAdjustConfigRespVO> getPage(IPage<StAdjustConfigEntity> page, @Param("params") StAdjustConfigPageReqVO reqVO); + + default IPage<StAdjustConfigRespVO> selectPage(StAdjustConfigPageReqVO reqVO) { + return getPage(getPage(reqVO), reqVO); + } } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java index e41ea3d..f161cd2 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StAdjustResultDao.java @@ -1,9 +1,18 @@ package com.iailab.module.model.mcs.sche.dao; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.mybatis.core.mapper.BaseMapperX; +import com.iailab.framework.mybatis.core.query.LambdaQueryWrapperX; import com.iailab.framework.tenant.core.db.dynamic.TenantDS; +import com.iailab.module.model.mcs.sche.entity.StAdjustConfigEntity; import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity; +import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity; +import com.iailab.module.model.mcs.sche.vo.StAdjustResultPageReqVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustResultRespVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustResultPageReqVO; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * @author PanZhibao @@ -13,4 +22,10 @@ @TenantDS @Mapper public interface StAdjustResultDao extends BaseMapperX<StAdjustResultEntity> { + + IPage<StAdjustResultRespVO> getPage(IPage<StAdjustResultEntity> page, @Param("params") StAdjustResultPageReqVO reqVO); + + default IPage<StAdjustResultRespVO> selectPage(StAdjustResultPageReqVO reqVO) { + return getPage(getPage(reqVO), reqVO); + } } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java index d88a010..6705a36 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigDetService.java @@ -13,4 +13,8 @@ public interface StAdjustConfigDetService extends BaseService<StAdjustConfigDetEntity> { List<StAdjustConfigDetEntity> getListByConfigId(String configId); + + void deleteByConfigId(String configId); + + void insertList(List<StAdjustConfigDetEntity> detList, String configId); } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java index 87de9cd..f52d19c 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustConfigService.java @@ -1,10 +1,16 @@ package com.iailab.module.model.mcs.sche.service; +import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.common.service.BaseService; +import com.iailab.module.model.api.mcs.dto.StAdjustConfigDTO; 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.vo.StAdjustConfigPageReqVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustConfigRespVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustConfigSaveReqVO; import java.util.List; +import java.util.Map; /** * @author PanZhibao @@ -17,4 +23,16 @@ List<StAdjustConfigDetEntity> getDetByModelId(String modelId); + PageResult<StAdjustConfigRespVO> page(StAdjustConfigPageReqVO reqVO); + + void create(StAdjustConfigSaveReqVO createReqVO); + + void update(StAdjustConfigSaveReqVO createReqVO); + + void delete(String id); + + StAdjustConfigEntity getInfo(String id); + + List<StAdjustConfigDTO> list(Map<String, Object> params); + } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java index 8611414..614ee56 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StAdjustResultService.java @@ -1,9 +1,14 @@ package com.iailab.module.model.mcs.sche.service; +import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.common.service.BaseService; import com.iailab.module.model.mcs.sche.entity.StAdjustResultEntity; +import com.iailab.module.model.mcs.sche.vo.StAdjustConfigRespVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustResultPageReqVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustResultRespVO; import com.iailab.module.model.mdk.vo.DataValueVO; +import javax.validation.Valid; import java.util.Date; import java.util.List; import java.util.Map; @@ -18,4 +23,8 @@ void saveResult(Map<String, List<DataValueVO>> resultMap, Date predictTime, String adjustValue, String scheduleModelId); double[] getSimpleData(String outputId, Date predictTime, int predictLength); + + StAdjustResultRespVO getInfo(String id); + + PageResult<StAdjustResultRespVO> page(@Valid StAdjustResultPageReqVO pageVO); } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java index f9d62f4..b984b9f 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigDetServiceImpl.java @@ -2,13 +2,17 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.iailab.framework.common.service.impl.BaseServiceImpl; +import com.iailab.framework.common.util.object.ConvertUtils; 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.entity.StScheduleModelOutEntity; import com.iailab.module.model.mcs.sche.service.StAdjustConfigDetService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.util.Collections; import java.util.List; +import java.util.UUID; /** * @author PanZhibao @@ -25,4 +29,19 @@ queryWrapper.orderByAsc("sort"); return baseDao.selectList(queryWrapper); } + + @Override + public void deleteByConfigId(String configId) { + baseDao.delete(new QueryWrapper<StAdjustConfigDetEntity>().eq("config_id", configId)); + } + + @Override + public void insertList(List<StAdjustConfigDetEntity> detList, String configId) { + for (int i = 0; i < detList.size(); i++) { + StAdjustConfigDetEntity entity = ConvertUtils.sourceToTarget(detList.get(i), StAdjustConfigDetEntity.class); + entity.setId(UUID.randomUUID().toString()); + entity.setConfigId(configId); + baseDao.insert(entity); + } + } } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java index dd5b57e..6ced3b9 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustConfigServiceImpl.java @@ -1,16 +1,30 @@ package com.iailab.module.model.mcs.sche.service.impl; +import com.baomidou.dynamic.datasource.annotation.DSTransactional; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.fhs.core.trans.anno.Trans; +import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.common.service.impl.BaseServiceImpl; +import com.iailab.framework.common.util.object.BeanUtils; +import com.iailab.framework.common.util.object.ConvertUtils; +import com.iailab.module.model.api.mcs.dto.StAdjustConfigDTO; +import com.iailab.module.model.mcs.pre.entity.MmItemOutputEntity; 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 com.iailab.module.model.mcs.sche.vo.StAdjustConfigPageReqVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustConfigRespVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustConfigSaveReqVO; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Map; +import java.util.UUID; /** * @author PanZhibao @@ -24,6 +38,55 @@ @Autowired private StAdjustConfigDetService stAdjustConfigDetService; + @Override + public PageResult<StAdjustConfigRespVO> page(StAdjustConfigPageReqVO reqVO) { + IPage<StAdjustConfigRespVO> page = baseDao.selectPage(reqVO); + return new PageResult<>(page.getRecords(), page.getTotal()); + } + + @Override + @DSTransactional(rollbackFor = Exception.class) + public void create(StAdjustConfigSaveReqVO createReqVO) { + StAdjustConfigEntity entity = BeanUtils.toBean(createReqVO, StAdjustConfigEntity.class); + entity.setId(UUID.randomUUID().toString()); + baseDao.insert(entity); + + List<StAdjustConfigDetEntity> detList = createReqVO.getAdjustConfigDetList(); + stAdjustConfigDetService.insertList(detList, entity.getId()); + } + + @Override + @DSTransactional(rollbackFor = Exception.class) + public void update(StAdjustConfigSaveReqVO updateReqVO) { + StAdjustConfigEntity entity = BeanUtils.toBean(updateReqVO, StAdjustConfigEntity.class); + baseDao.updateById(entity); + + stAdjustConfigDetService.deleteByConfigId(entity.getId()); + List<StAdjustConfigDetEntity> detList = updateReqVO.getAdjustConfigDetList(); + stAdjustConfigDetService.insertList(detList, entity.getId()); + } + + @Override + @DSTransactional(rollbackFor = Exception.class) + public void delete(String id) { + baseDao.deleteById(id); + stAdjustConfigDetService.deleteByConfigId(id); + } + + @Override + public StAdjustConfigEntity getInfo(String id) { + return baseDao.selectById(id); + } + + @Override + public List<StAdjustConfigDTO> list(Map<String, Object> params) { + QueryWrapper<StAdjustConfigEntity> queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("trigger_method", params.get("triggerMethod")); + queryWrapper.eq("trigger_condition", params.get("triggerCondition")); + List<StAdjustConfigEntity> list = baseDao.selectList(queryWrapper); + return ConvertUtils.sourceToTarget(list, StAdjustConfigDTO.class); + } + public StAdjustConfigEntity getByModelId(String modelId) { return baseDao.selectOne("schedule_model_id", modelId); } diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java index 68c8485..f2b041e 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StAdjustResultServiceImpl.java @@ -2,14 +2,24 @@ import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.common.service.impl.BaseServiceImpl; import com.iailab.framework.common.util.date.DateUtils; +import com.iailab.framework.common.util.object.ConvertUtils; +import com.iailab.module.model.mcs.pre.entity.MmItemOutputEntity; +import com.iailab.module.model.mcs.pre.service.MmItemOutputService; 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 com.iailab.module.model.mcs.sche.vo.StAdjustConfigRespVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustResultPageReqVO; +import com.iailab.module.model.mcs.sche.vo.StAdjustResultRespVO; +import com.iailab.module.model.mcs.sche.vo.StScheduleRecordDetailRespVO; import com.iailab.module.model.mdk.vo.DataValueVO; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -27,6 +37,9 @@ @Slf4j @Service public class StAdjustResultServiceImpl extends BaseServiceImpl<StAdjustResultDao, StAdjustResultEntity> implements StAdjustResultService { + + @Autowired + private MmItemOutputService mmItemOutputService; @Override public void saveResult(Map<String, List<DataValueVO>> resultMap, Date predictTime, String adjustValue, String scheduleModelId) { @@ -62,4 +75,19 @@ } return result; } + + @Override + public StAdjustResultRespVO getInfo(String id) { + StAdjustResultEntity entity = baseDao.selectById(id); + StAdjustResultRespVO result = ConvertUtils.sourceToTarget(entity, StAdjustResultRespVO.class); + MmItemOutputEntity mmItemOutputEntity = mmItemOutputService.getOutPutById(entity.getOutputId()); + result.setOutputName(mmItemOutputEntity.getResultName()); + return result; + } + + @Override + public PageResult<StAdjustResultRespVO> page(StAdjustResultPageReqVO pageVO) { + IPage<StAdjustResultRespVO> page = baseDao.selectPage(pageVO); + return new PageResult<>(page.getRecords(), page.getTotal()); + } } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java index e572cc3..0ba21e5 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigDetRespVO.java @@ -1,9 +1,32 @@ package com.iailab.module.model.mcs.sche.vo; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ +@Schema(description = "模型服务 - 模拟调整配置 Response VO") +@Data public class StAdjustConfigDetRespVO { + @Schema(description = "ID", example = "ID") + private String id; + + private String configId; + + private String item_type_id; + + private String predict_item_id; + + private String out_key; + + private String out_name; + + private Integer model_param_order; + + private Integer model_param_port_order; + + private Integer sort; } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java index 317cf0d..7513b03 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigPageReqVO.java @@ -19,4 +19,7 @@ @Schema(description = "模型编号,模糊匹配", example = "") private String modelCode; + + @Schema(description = "模型名称,模糊匹配", example = "") + private String modelName; } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java index 7894c5e..6a69f77 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigRespVO.java @@ -1,9 +1,40 @@ package com.iailab.module.model.mcs.sche.vo; +import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Date; +import java.util.List; + /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ +@Schema(description = "模型服务 - 模拟调整 Response VO") +@Data public class StAdjustConfigRespVO { + @Schema(description = "ID", example = "ID") + private String id; + + @Schema(description = "模型ID", example = "模型ID") + private String scheduleModelId; + + @Schema(description = "模型代码", example = "模型代码") + private String modelCode; + + @Schema(description = "模型名称", example = "模型名称") + private String modelName; + + @Schema(description = "备注", example = "备注") + private String remark; + + @Schema(description = "状态(0正常 1停用)", example = "0") + private Integer status; + + @Schema(description = "创建时间", example = "创建时间") + private Date createTime; + + private List<StAdjustConfigDetEntity> adjustConfigDetList; } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigSaveReqVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigSaveReqVO.java new file mode 100644 index 0000000..6f324c5 --- /dev/null +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustConfigSaveReqVO.java @@ -0,0 +1,40 @@ +package com.iailab.module.model.mcs.sche.vo; + +import com.iailab.module.model.mcs.sche.entity.StAdjustConfigDetEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.Date; +import java.util.List; + +/** + * @author lirm + * @Description + * @createTime 2025年02月25日 + */ +@Schema(description = "模型服务 - 调度方案创建/修改 Request VO") +@Data +public class StAdjustConfigSaveReqVO { + + @Schema(description = "ID") + private String id; + + @Schema(description = "模型ID", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "模型ID不能为空") + private String scheduleModelId; + + @Schema(description = " 状态(0正常 1停用)") + private Integer status; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "创建时间") + private Date createTime; + + @Schema(description = "修改时间") + private Date updateTime; + + private List<StAdjustConfigDetEntity> adjustConfigDetList; +} \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java index 8b9a735..3082a33 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultPageReqVO.java @@ -11,7 +11,7 @@ * @Description * @createTime 2025年02月20日 */ -@Schema(description = "模型服务 - 调度模型分页 Request VO") +@Schema(description = "模型服务 - 模拟调整记录分页 Request VO") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @@ -23,4 +23,6 @@ @Schema(description = "结束时间", example = "") private String endTime; + private String configId; + } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java index 5a96bf3..c97d10b 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StAdjustResultRespVO.java @@ -1,9 +1,32 @@ package com.iailab.module.model.mcs.sche.vo; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Date; + /** * @author PanZhibao * @Description * @createTime 2025年02月23日 */ +@Schema(description = "模型服务 - 模拟调整记录 Response VO") +@Data public class StAdjustResultRespVO { + @Schema(description = "ID", example = "ID") + private String id; + + private String configId; + + private String outputId; + + private String outputName; + + private String scheduleModelId; + + private Date adjustTime; + + private String adjustValue; + + private String jsonValue; } \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustConfigDao.xml b/iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustConfigDao.xml new file mode 100644 index 0000000..05f8b71 --- /dev/null +++ b/iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustConfigDao.xml @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > +<mapper namespace="com.iailab.module.model.mcs.sche.dao.StAdjustConfigDao"> + <select id="getPage" resultType="com.iailab.module.model.mcs.sche.vo.StAdjustConfigRespVO"> + select + t1.id modelId, + t1.model_code modelCode, + t1.model_name modelName, + t2.id, + t2.remark, + t2.status, + t2.create_time + from t_st_schedule_model t1, t_st_adjust_config t2 + <where> + and t1.id = t2.schedule_model_id + <if test="params.modelCode != null and params.modelCode != ''"> + and t1.model_code like CONCAT('%', #{params.modelCode},'%') + </if> + <if test="params.modelName != null and params.modelName != ''"> + and t1.model_name like CONCAT('%', #{params.modelName},'%') + </if> + </where> + order by t2.create_time desc + </select> +</mapper> \ No newline at end of file diff --git a/iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustResultDao.xml b/iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustResultDao.xml new file mode 100644 index 0000000..e7063af --- /dev/null +++ b/iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StAdjustResultDao.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > +<mapper namespace="com.iailab.module.model.mcs.sche.dao.StAdjustResultDao"> + <select id="getPage" resultType="com.iailab.module.model.mcs.sche.vo.StAdjustResultRespVO"> + SELECT t1.*,t2.result_name outputName + FROM t_st_adjust_result t1,t_mm_item_output t2 + <where> + and t1.output_id = t2.id + <if test="params.configId != null and params.configId != ''"> + and t1.config_id = #{params.configId} + </if> + <if test="params.startTime != null"> + and t1.adjust_time >= #{params.startTime} + </if> + <if test="params.endTime != null"> + and t1.adjust_time <= #{params.endTime} + </if> + </where> + ORDER BY t1.adjust_time desc + </select> +</mapper> \ No newline at end of file -- Gitblit v1.9.3