liriming
2024-11-28 f96689bddf69ea3d635116cf1dd98bd5e5e0755a
Merge remote-tracking branch 'origin/master'

# Conflicts:
# iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
# iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
已修改10个文件
已添加4个文件
390 ■■■■■ 文件已修改
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/PreDataJsonReqVO.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java 24 ●●●● 补丁 | 查看 | 原始文档 | 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/MmPredictAlarmMessageServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StScheduleSuggestDao.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StScheduleSuggestEntity.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StScheduleSuggestService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StScheduleSuggestServiceImpl.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestPageReqVO.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestRespVO.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestSaveReqVO.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java
@@ -38,7 +38,6 @@
import javax.annotation.security.PermitAll;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
@@ -40,6 +40,10 @@
    @Operation(summary = "预测数据图表")
    PreDataSingleChartRespVO getPreDataSingleChart(@RequestBody PreDataSingleChartReqVO reqVO);
    @PostMapping(PREFIX + "/predict-data/cur")
    @Operation(summary = "获取当前预测数据")
    Map<String, List<Object[]>> getPreDataCur(PreDataJsonReqVO reqVO);
    @PostMapping(PREFIX + "/plan-data/single-chart")
    @Operation(summary = "计划数据图表")
    PlanDataSingleChartRespVO getPlanDataSingleChart(@RequestBody PreDataSingleChartReqVO reqVO);
@@ -56,6 +60,10 @@
    @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);
iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/PreDataJsonReqVO.java
对比新文件
@@ -0,0 +1,26 @@
package com.iailab.module.model.api.mcs.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
 * @author PanZhibao
 * @Description
 * @createTime 2024年11月27日
 */
@Data
public class PreDataJsonReqVO implements Serializable {
    private static final long serialVersionUID = 1L;
    @Schema(description = "预测时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date predictTime;
    @Schema(description = "预测输出ID")
    private List<String> outputIdList;
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -15,8 +15,12 @@
import com.iailab.module.model.common.enums.PreLineTypeEnum;
import com.iailab.module.model.mcs.pre.entity.DmModuleEntity;
import com.iailab.module.model.mcs.pre.entity.MmItemOutputEntity;
import com.iailab.module.model.mcs.pre.entity.MmPredictAlarmMessageEntity;
import com.iailab.module.model.mcs.pre.service.*;
import com.iailab.module.model.mcs.pre.service.impl.MmPredictAlarmConfigServiceImpl;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessageSaveReqVO;
import com.iailab.module.model.mcs.sche.entity.StScheduleSuggestEntity;
import com.iailab.module.model.mcs.sche.service.StScheduleSuggestService;
import com.iailab.module.model.mdk.vo.ItemVO;
import com.iailab.module.model.mpk.service.ChartService;
import lombok.extern.slf4j.Slf4j;
@@ -63,6 +67,12 @@
    @Autowired
    private ChartService chartService;
    @Autowired
    private MmPredictAlarmMessageService mmPredictAlarmMessageService;
    @Autowired
    private StScheduleSuggestService stScheduleSuggestService;
    @Autowired
    private PlanItemApi planItemApi;
@@ -350,6 +360,18 @@
    }
    @Override
    public Map<String, List<Object[]>> getPreDataCur(PreDataJsonReqVO reqVO) {
        Map<String, List<Object[]>> result = new HashMap<>();
        if (reqVO == null || reqVO.getPredictTime() == null || CollectionUtils.isEmpty(reqVO.getOutputIdList())) {
            return result;
        }
        reqVO.getOutputIdList().forEach(outPutId -> {
            result.put(outPutId, mmItemResultJsonService.getData(outPutId, reqVO.getPredictTime(), DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND));
        });
        return result;
    }
    @Override
    public PlanDataSingleChartRespVO getPlanDataSingleChart(PreDataSingleChartReqVO reqVO) {
        PlanDataSingleChartRespVO result = new PlanDataSingleChartRespVO();
        Map<String, String> chartParams = chartService.getByChartCode(reqVO.getChartCode());
@@ -456,9 +478,20 @@
        return result;
    }
    /**
     * 新增预警信息
     *
     * @param dto
     * @return
     */
    @Override
    public Boolean createAlarmMessage(AlarmMessageRespDTO dto) {
        return true;
        try {
            mmPredictAlarmMessageService.create(ConvertUtils.sourceToTarget(dto, MmPredictAlarmMessageSaveReqVO.class));
            return true;
        } catch (Exception e) {
            return false;
        }
    }
    @Override
@@ -472,13 +505,20 @@
    }
    @Override
    public AlarmMessageRespDTO getLastAlarmMessage(String alarmObj) {
        MmPredictAlarmMessageEntity entity = mmPredictAlarmMessageService.getLast(alarmObj);
        return ConvertUtils.sourceToTarget(entity, AlarmMessageRespDTO.class);
    }
    @Override
    public Boolean createScheduleSuggest(ScheduleSuggestRespDTO dto) {
        return true;
    }
    @Override
    public List<ScheduleSuggestRespDTO> listScheduleSuggest(ScheduleSuggestReqDTO params) {
        return null;
    public List<ScheduleSuggestRespDTO> getLastLimitScheduleSuggest(String scheduleObj, Integer limit) {
        List<StScheduleSuggestEntity> list = stScheduleSuggestService.getList(scheduleObj, limit);
        return ConvertUtils.sourceToTarget(list, ScheduleSuggestRespDTO.class);
    }
    @Override
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java
@@ -19,6 +19,7 @@
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import static com.iailab.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
/**
@@ -90,7 +91,6 @@
    @GetMapping("/predict-data/exportValue")
    @Operation(summary = "导出预测数据")
    @ApiAccessLog(operateType = EXPORT)
    public void exportPointValue(@RequestParam("itemId") String itemId,
                                 @RequestParam("startTime") String startTime,
                                 @RequestParam("endTime") String endTime,
@@ -100,13 +100,13 @@
        reqVO.setItemId(itemId);
        try {
            if (startTime == "") {
                reqVO.setStartTime(new Date((new Date()).getTime() - 60*60*1000));
                reqVO.setStartTime(new Date((new Date()).getTime() - 60 * 60 * 1000));
            } else {
                reqVO.setStartTime(formatter.parse(startTime));
            }
            if (endTime == "") {
                reqVO.setEndTime(new Date((new Date()).getTime() + 60*60*1000));
                reqVO.setEndTime(new Date((new Date()).getTime() + 60 * 60 * 1000));
            } else {
                reqVO.setEndTime(formatter.parse(endTime));
            }
@@ -115,10 +115,26 @@
        }
        PreDataItemChartRespVO respVO = mcsApi.getPreDataItemChart(reqVO);
        try {
            String sheetTitle =  "sheet1";
            String sheetTitle = "sheet1";
            ExcelUtil.exportchart(sheetTitle, respVO, response);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
    @GetMapping("/alarm-message/last-one")
    @Operation(summary = "根据监控对象获取最新预警信息")
    public CommonResult<AlarmMessageRespDTO> getLastAlarmMessage(HttpServletResponse response, HttpServletRequest
            request, @RequestParam("alarmObj") String alarmObj) {
        AlarmMessageRespDTO data = mcsApi.getLastAlarmMessage(alarmObj);
        return CommonResult.success(data);
    }
    @GetMapping("/schedule-suggest/last-limit")
    @Operation(summary = "根据监控对象获取最新预警信息")
    public CommonResult<List<ScheduleSuggestRespDTO>> getLastLimitScheduleSuggest(HttpServletResponse response, HttpServletRequest
            request, @RequestParam("scheduleObj") String scheduleObj, @RequestParam("limit") Integer limit) {
        List<ScheduleSuggestRespDTO> data = mcsApi.getLastLimitScheduleSuggest(scheduleObj, limit);
        return CommonResult.success(data);
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/MmPredictAlarmMessageService.java
@@ -17,6 +17,8 @@
    MmPredictAlarmMessageEntity getInfo(String id);
    MmPredictAlarmMessageEntity getLast(String alarmObj);
    void create(MmPredictAlarmMessageSaveReqVO reqVO);
    void update(MmPredictAlarmMessageSaveReqVO reqVO);
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/service/impl/MmPredictAlarmMessageServiceImpl.java
@@ -1,5 +1,6 @@
package com.iailab.module.model.mcs.pre.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.iailab.framework.common.pojo.PageResult;
import com.iailab.framework.common.service.impl.BaseServiceImpl;
import com.iailab.framework.common.util.object.BeanUtils;
@@ -9,8 +10,10 @@
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessagePageReqVO;
import com.iailab.module.model.mcs.pre.vo.MmPredictAlarmMessageSaveReqVO;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.Date;
import java.util.List;
import java.util.UUID;
/**
@@ -34,6 +37,15 @@
    }
    @Override
    public MmPredictAlarmMessageEntity getLast(String alarmObj) {
        QueryWrapper<MmPredictAlarmMessageEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("alarm_obj", alarmObj)
                .orderByDesc("alarm_time")
                .last("limit 1");
        return baseDao.selectOne(queryWrapper);
    }
    @Override
    public void create(MmPredictAlarmMessageSaveReqVO reqVO) {
        MmPredictAlarmMessageEntity entity = BeanUtils.toBean(reqVO, MmPredictAlarmMessageEntity.class);
        entity.setId(UUID.randomUUID().toString());
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/dao/StScheduleSuggestDao.java
@@ -1,8 +1,11 @@
package com.iailab.module.model.mcs.sche.dao;
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.StScheduleSuggestEntity;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestPageReqVO;
import org.apache.ibatis.annotations.Mapper;
/**
@@ -13,4 +16,11 @@
@TenantDS
@Mapper
public interface StScheduleSuggestDao extends BaseMapperX<StScheduleSuggestEntity> {
    default PageResult<StScheduleSuggestEntity> selectPage(StScheduleSuggestPageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<StScheduleSuggestEntity>()
                .likeIfPresent(StScheduleSuggestEntity::getTitle, reqVO.getTitle())
                .likeIfPresent(StScheduleSuggestEntity::getScheduleObj, reqVO.getScheduleObj())
                .orderByDesc(StScheduleSuggestEntity::getCreateTime));
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StScheduleSuggestEntity.java
@@ -111,7 +111,7 @@
    private Date scheduleTime;
    /**
     * 状态
     * 状态(0未处理 1已采纳 2已忽略)
     */
    private Integer status;
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StScheduleSuggestService.java
@@ -1,7 +1,12 @@
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.StScheduleSuggestEntity;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestPageReqVO;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestSaveReqVO;
import java.util.List;
/**
 * @author PanZhibao
@@ -9,4 +14,16 @@
 * @createTime 2024年09月06日
 */
public interface StScheduleSuggestService extends BaseService<StScheduleSuggestEntity> {
    PageResult<StScheduleSuggestEntity> page(StScheduleSuggestPageReqVO reqVO);
    void create(StScheduleSuggestSaveReqVO createReqVO);
    void update(StScheduleSuggestSaveReqVO createReqVO);
    void delete(String id);
    StScheduleSuggestEntity getInfo(String id);
    List<StScheduleSuggestEntity> getList(String scheduleObj, Integer limit);
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StScheduleSuggestServiceImpl.java
@@ -1,10 +1,18 @@
package com.iailab.module.model.mcs.sche.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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.module.model.mcs.sche.dao.StScheduleSuggestDao;
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.StScheduleSuggestSaveReqVO;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.UUID;
/**
 * @author PanZhibao
@@ -14,4 +22,42 @@
@Service
public class StScheduleSuggestServiceImpl extends BaseServiceImpl<StScheduleSuggestDao, StScheduleSuggestEntity>
        implements StScheduleSuggestService {
    @Override
    public PageResult<StScheduleSuggestEntity> page(StScheduleSuggestPageReqVO reqVO) {
        return baseDao.selectPage(reqVO);
    }
    @Override
    public void create(StScheduleSuggestSaveReqVO createReqVO) {
        StScheduleSuggestEntity entity = BeanUtils.toBean(createReqVO, StScheduleSuggestEntity.class);
        entity.setId(UUID.randomUUID().toString());
        baseDao.insert(entity);
    }
    @Override
    public void update(StScheduleSuggestSaveReqVO createReqVO) {
        StScheduleSuggestEntity entity = BeanUtils.toBean(createReqVO, StScheduleSuggestEntity.class);
        baseDao.updateById(entity);
    }
    @Override
    public void delete(String id) {
        baseDao.deleteById(id);
    }
    @Override
    public StScheduleSuggestEntity getInfo(String id) {
        return baseDao.selectById(id);
    }
    @Override
    public List<StScheduleSuggestEntity> getList(String scheduleObj, Integer limit) {
        QueryWrapper<StScheduleSuggestEntity> queryWrapper = new QueryWrapper<>();
        limit = limit == null ? 1 : limit;
        queryWrapper.eq("schedule_obj", scheduleObj)
                .orderByDesc("create_time")
                .last("limit " + limit);
        return baseDao.selectList(queryWrapper);
    }
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestPageReqVO.java
对比新文件
@@ -0,0 +1,25 @@
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 2024年11月27日
 */
@Schema(description = "模型服务 - 调度建议分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class StScheduleSuggestPageReqVO extends PageParam {
    @Schema(description = "标题,模糊匹配", example = "")
    private String title;
    @Schema(description = "调整对象,模糊匹配", example = "")
    private String scheduleObj;
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestRespVO.java
对比新文件
@@ -0,0 +1,83 @@
package com.iailab.module.model.mcs.sche.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @author PanZhibao
 * @Description
 * @createTime 2024年11月27日
 */
@Schema(description = "模型服务 - 调度建议 Response VO")
@Data
public class StScheduleSuggestRespVO {
    @Schema(description = "ID")
    private String id;
    @Schema(description = "标题")
    private String title;
    @Schema(description = "内容")
    private String content;
    @Schema(description = "排序")
    private Integer sort;
    @Schema(description = "方案ID")
    private String schemeId;
    @Schema(description = "预警ID")
    private String alarmId;
    @Schema(description = "预测项ID")
    private String itemId;
    @Schema(description = "模型ID")
    private String modelId;
    @Schema(description = "调整对象")
    private String scheduleObj;
    @Schema(description = "调整类型")
    private String scheduleType;
    @Schema(description = "调整策略")
    private String scheduleStrategy;
    @Schema(description = "调整方式")
    private String adjustMode;
    @Schema(description = "调整值")
    private BigDecimal adjustValue;
    @Schema(description = "调整单位")
    private String adjustUnit;
    @Schema(description = "持续时长")
    private BigDecimal adjustTimes;
    @Schema(description = "调整开始时间")
    private Date adjustStart;
    @Schema(description = "调整结束时间")
    private Date adjustEnd;
    @Schema(description = "调度时间")
    private Date scheduleTime;
    @Schema(description = "状态(0未处理 1已采纳 2已忽略)")
    private Integer status;
    @Schema(description = "处理人")
    private String handler;
    @Schema(description = "处理时间")
    private Date handleTime;
    @Schema(description = "创建时间")
    private Date createTime;
}
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StScheduleSuggestSaveReqVO.java
对比新文件
@@ -0,0 +1,88 @@
package com.iailab.module.model.mcs.sche.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @author PanZhibao
 * @Description
 * @createTime 2024年11月27日
 */
@Schema(description = "模型服务 - 调度建议创建/修改 Request VO")
@Data
public class StScheduleSuggestSaveReqVO {
    @Schema(description = "ID")
    private String id;
    @Schema(description = "标题")
    @NotNull(message = "应用编号不能为空")
    private String title;
    @Schema(description = "内容")
    @NotNull(message = "应用编号不能为空")
    private String content;
    @Schema(description = "排序")
    @NotNull(message = "应用编号不能为空")
    private Integer sort;
    @Schema(description = "方案ID")
    private String schemeId;
    @Schema(description = "预警ID")
    private String alarmId;
    @Schema(description = "预测项ID")
    private String itemId;
    @Schema(description = "模型ID")
    private String modelId;
    @Schema(description = "调整对象")
    @NotNull(message = "应用编号不能为空")
    private String scheduleObj;
    @Schema(description = "调整类型")
    private String scheduleType;
    @Schema(description = "调整策略")
    private String scheduleStrategy;
    @Schema(description = "调整方式")
    private String adjustMode;
    @Schema(description = "调整值")
    private BigDecimal adjustValue;
    @Schema(description = "调整单位")
    private String adjustUnit;
    @Schema(description = "持续时长")
    private BigDecimal adjustTimes;
    @Schema(description = "调整开始时间")
    private Date adjustStart;
    @Schema(description = "调整结束时间")
    private Date adjustEnd;
    @Schema(description = "调度时间")
    private Date scheduleTime;
    @Schema(description = "状态(0未处理 1已采纳 2已忽略)")
    private Integer status;
    @Schema(description = "处理人")
    private String handler;
    @Schema(description = "处理时间")
    private Date handleTime;
    @Schema(description = "创建时间")
    private Date createTime;
}