潘志宝
2025-03-20 7587c74159ce4026baa811f25f306510569ee54a
数据分析 预警,建议
已添加1个文件
已修改14个文件
174 ■■■■■ 文件已修改
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/DmModuleController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/MmPredictAlarmMessageController.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/DmModuleItemService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/DmModuleService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmItemOutputService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmMessageService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/DmModuleItemServiceImpl.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/DmModuleServiceImpl.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmItemOutputServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmMessageServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/vo/MmPredictAlarmMessagePageReqVO.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StScheduleSuggestController.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StScheduleSuggestService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StScheduleSuggestServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestPageReqVO.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/DmModuleController.java
@@ -101,4 +101,5 @@
        dmModuleService.deleteBatch(new String[]{id});
        return success(true);
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/MmPredictAlarmMessageController.java
@@ -4,6 +4,9 @@
import com.iailab.framework.common.pojo.PageResult;
import com.iailab.framework.common.util.object.BeanUtils;
import com.iailab.module.model.mcs.pre.entity.MmPredictAlarmMessageEntity;
import com.iailab.module.model.mcs.pre.service.DmModuleItemService;
import com.iailab.module.model.mcs.pre.service.DmModuleService;
import com.iailab.module.model.mcs.pre.service.MmItemOutputService;
import com.iailab.module.model.mcs.pre.service.MmPredictAlarmMessageService;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessagePageReqVO;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessageRespVO;
@@ -15,6 +18,8 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
import static com.iailab.framework.common.pojo.CommonResult.success;
@@ -29,6 +34,15 @@
    @Autowired
    private MmPredictAlarmMessageService mmPredictAlarmMessageService;
    @Autowired
    private MmItemOutputService mmItemOutputService;
    @Autowired
    private DmModuleItemService dmModuleItemService;
    @Autowired
    private DmModuleService dmModuleService;
    @PostMapping("/create")
    @Operation(summary = "创建预警消息")
@@ -50,7 +64,7 @@
    @Operation(summary = "删除预警消息")
    @Parameter(name = "id", description = "编号", required = true, example = "1024")
    @PreAuthorize("@ss.hasPermission('pre:alarm-message:delete')")
    public CommonResult<Boolean> deleteTenant(@RequestParam("id") String id) {
    public CommonResult<Boolean> delete(@RequestParam("id") String id) {
        mmPredictAlarmMessageService.delete(id);
        return success(true);
    }
@@ -67,8 +81,18 @@
    @GetMapping("/page")
    @Operation(summary = "获得预警消息分页")
    @PreAuthorize("@ss.hasPermission('pre:alarm-message:query')")
    public CommonResult<PageResult<MmPredictAlarmMessageRespVO>> getTenantPage(@Valid MmPredictAlarmMessagePageReqVO pageVO) {
    public CommonResult<PageResult<MmPredictAlarmMessageRespVO>> getPage(@Valid MmPredictAlarmMessagePageReqVO pageVO) {
        PageResult<MmPredictAlarmMessageEntity> pageResult = mmPredictAlarmMessageService.page(pageVO);
        return success(BeanUtils.toBean(pageResult, MmPredictAlarmMessageRespVO.class));
    }
    @PostMapping("/list-out")
    @Operation(summary = "获得预警消息列表")
    public CommonResult<List<MmPredictAlarmMessageRespVO>> getListByOut(@RequestBody MmPredictAlarmMessagePageReqVO pageVO) {
        List<String> itemIds = mmItemOutputService.getItemIdByOut(pageVO.getOutIds());
        List<String> moduleIds = dmModuleItemService.getModuleIdByItemId(itemIds);
        List<String> moduleList = dmModuleService.geModuleByIds(moduleIds);
        List<MmPredictAlarmMessageEntity> list = mmPredictAlarmMessageService.getList(moduleList, pageVO.getPredictTime());
        return success(BeanUtils.toBean(list, MmPredictAlarmMessageRespVO.class));
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/DmModuleItemService.java
@@ -2,6 +2,8 @@
import com.iailab.module.model.mcs.pre.entity.DmModuleItemEntity;
import java.util.List;
/**
 * @author PanZhibao
 * @date 2021年04月27日 9:11
@@ -11,4 +13,6 @@
    void saveModuleItem(DmModuleItemEntity moduleItem);
    void update(DmModuleItemEntity moduleItem);
    List<String> getModuleIdByItemId(List<String> itemIds);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/DmModuleService.java
@@ -33,4 +33,6 @@
    DmModuleEntity getModuleByItemId(String itemId);
    void updatePredictTime(String id, Date predictTime);
    List<String> geModuleByIds(List<String> ids);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmItemOutputService.java
@@ -27,4 +27,6 @@
    List<MmItemOutputEntity> getByItemid(String itemid, String resultstr, List<Integer> resultIndexs);
    void deleteByItemId(String itemId);
    List<String> getItemIdByOut(List<String> outIds);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmMessageService.java
@@ -32,4 +32,6 @@
    void delete(String id);
    void cleanAlarmMessage(Map<String, Date> tMap);
    List<MmPredictAlarmMessageEntity> getList(List<String> alarmObjList, Date predictTime);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/DmModuleItemServiceImpl.java
@@ -9,6 +9,7 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
@@ -32,6 +33,19 @@
        dmModuleItemDao.updateById(moduleItem);
    }
    @Override
    public List<String> getModuleIdByItemId(List<String> itemIds) {
        List<String> result = new ArrayList<String>();
        QueryWrapper<DmModuleItemEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.in("itemid", itemIds);
        List<DmModuleItemEntity> list = dmModuleItemDao.selectList(queryWrapper);
        if (CollectionUtils.isEmpty(list)) {
           return result;
        }
        list.forEach(item -> result.add(item.getModuleid()));
        return result;
    }
    public DmModuleItemEntity getByItemid(String itemid) {
        List<DmModuleItemEntity> list = dmModuleItemDao.selectList(new QueryWrapper<DmModuleItemEntity>().in("itemid", itemid));
        if (CollectionUtils.isEmpty(list)) {
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/DmModuleServiceImpl.java
@@ -99,6 +99,23 @@
    }
    @Override
    public List<String> geModuleByIds(List<String> ids) {
        List<String> result = new ArrayList<>();
        QueryWrapper<DmModuleEntity> wrapper = new QueryWrapper<>();
        wrapper.in("id", ids);
        List<DmModuleEntity> list = dmModuleDao.selectList(wrapper);
        if (CollectionUtils.isEmpty(list)) {
            return result;
        }
        list.forEach(item -> {
            if (StringUtils.isNotBlank(item.getModulenavconfig())) {
                result.addAll(Arrays.asList(item.getModulenavconfig().split(",")));
            }
        });
        return result;
    }
    @Override
    public int check(DmModuleEntity module) {
        String id = module.getId();
        String modulename = module.getModulename();
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmItemOutputServiceImpl.java
@@ -11,6 +11,7 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -105,6 +106,21 @@
    }
    @Override
    public List<String> getItemIdByOut(List<String> outIds) {
        List<String> result = new ArrayList<>();
        QueryWrapper<MmItemOutputEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.in("id", outIds);
        List<MmItemOutputEntity> list = baseMapper.selectList(queryWrapper);
        if (CollectionUtils.isEmpty(list)) {
            return result;
        }
        list.forEach(item -> {
            result.add(item.getId());
        });
        return result;
    }
    @Override
    public MmItemOutputEntity getOutPutById(String outputid) {
        if (outputMap.containsKey(outputid)) {
            return outputMap.get(outputid);
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmMessageServiceImpl.java
@@ -47,6 +47,14 @@
    }
    @Override
    public List<MmPredictAlarmMessageEntity> getList(List<String> alarmObjList, Date predictTime) {
        QueryWrapper<MmPredictAlarmMessageEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.in("alarm_obj", alarmObjList);
        queryWrapper.eq("alarm_time", predictTime);
        return baseDao.selectList(queryWrapper);
    }
    @Override
    public List<MmPredictAlarmMessageEntity> getList(String alarmObj, Date alarmTime) {
        QueryWrapper<MmPredictAlarmMessageEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("alarm_obj", alarmObj)
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/vo/MmPredictAlarmMessagePageReqVO.java
@@ -7,6 +7,7 @@
import lombok.ToString;
import java.util.Date;
import java.util.List;
/**
 * @author PanZhibao
@@ -36,4 +37,10 @@
    @Schema(description = "结束时间", example = "")
    private Date endTime;
    @Schema(description = "预测时间", example = "")
    private Date predictTime;
    @Schema(description = "输出ID", example = "")
    private List<String> outIds;
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/controller/admin/StScheduleSuggestController.java
对比新文件
@@ -0,0 +1,54 @@
package com.iailab.module.model.mcs.sche.controller.admin;
import com.iailab.framework.common.pojo.CommonResult;
import com.iailab.framework.common.util.object.BeanUtils;
import com.iailab.module.model.mcs.pre.service.DmModuleItemService;
import com.iailab.module.model.mcs.pre.service.DmModuleService;
import com.iailab.module.model.mcs.pre.service.MmItemOutputService;
import com.iailab.module.model.mcs.sche.entity.StScheduleSuggestEntity;
import com.iailab.module.model.mcs.sche.service.StScheduleSuggestService;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestPageReqVO;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestRespVO;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import static com.iailab.framework.common.pojo.CommonResult.success;
/**
 * @author PanZhibao
 * @Description
 * @createTime 2025年03月20日
 */
@Tag(name = "模型服务 - 调度建议")
@RestController
@RequestMapping("/model/sche/suggest")
public class StScheduleSuggestController {
    @Autowired
    private StScheduleSuggestService stScheduleSuggestService;
    @Autowired
    private MmItemOutputService mmItemOutputService;
    @Autowired
    private DmModuleItemService dmModuleItemService;
    @Autowired
    private DmModuleService dmModuleService;
    @PostMapping("/list-out")
    @Operation(summary = "获得预警消息列表")
    public CommonResult<List<StScheduleSuggestRespVO>> getListByOut(StScheduleSuggestPageReqVO pageVO) {
        List<String> itemIds = mmItemOutputService.getItemIdByOut(pageVO.getOutIds());
        List<String> moduleIds = dmModuleItemService.getModuleIdByItemId(itemIds);
        List<String> moduleList = dmModuleService.geModuleByIds(moduleIds);
        List<StScheduleSuggestEntity> list = stScheduleSuggestService.getList(moduleList, pageVO.getPredictTime());
        return success(BeanUtils.toBean(list, StScheduleSuggestRespVO.class));
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StScheduleSuggestService.java
@@ -34,4 +34,6 @@
    void cleanScheduleSuggest(Map<String, Date> tMap);
    List<ScheduleSuggestRespDTO> list(ScheduleSuggestReqDTO vo);
    List<StScheduleSuggestEntity> getList(List<String> scheduleObjList, Date predictTime);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StScheduleSuggestServiceImpl.java
@@ -82,4 +82,12 @@
                .le(null != vo.getEndTime(),"schedule_time",vo.getEndTime());
        return ConvertUtils.sourceToTarget(baseDao.selectList(queryWrapper),ScheduleSuggestRespDTO.class);
    }
    @Override
    public List<StScheduleSuggestEntity> getList(List<String> scheduleObjList, Date predictTime) {
        QueryWrapper<StScheduleSuggestEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.in("schedule_obj", scheduleObjList);
        queryWrapper.eq("schedule_time", predictTime);
        return baseDao.selectList(queryWrapper);
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestPageReqVO.java
@@ -6,6 +6,9 @@
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.util.Date;
import java.util.List;
/**
 * @author PanZhibao
 * @Description
@@ -22,4 +25,10 @@
    @Schema(description = "调整对象,模糊匹配", example = "")
    private String scheduleObj;
    @Schema(description = "预测时间", example = "")
    private Date predictTime;
    @Schema(description = "输出ID", example = "")
    private List<String> outIds;
}