| | |
| | | |
| | | import com.iailab.framework.common.pojo.PageResult; |
| | | import com.iailab.framework.common.service.impl.BaseServiceImpl; |
| | | import com.iailab.framework.common.util.collection.CollectionUtils; |
| | | import com.iailab.framework.common.util.object.BeanUtils; |
| | | import com.iailab.module.model.mcs.sche.dao.StSuggestOperationRecordDao; |
| | | import com.iailab.module.model.mcs.sche.entity.StSuggestOperationRecordEntity; |
| | |
| | | public class StSuggestOperationRecordServiceImpl extends BaseServiceImpl<StSuggestOperationRecordDao, StSuggestOperationRecordEntity> |
| | | implements StSuggestOperationRecordService { |
| | | |
| | | @Autowired |
| | | private StSuggestSnapshotConfMainService stSuggestSnapshotConfMainService; |
| | | |
| | | @Autowired |
| | | private StSuggestSnapshotConfDetService stSuggestSnapshotConfDetService; |
| | | |
| | | @Autowired |
| | | private StSuggestSnapshotRecordService stSuggestSnapshotRecordService; |
| | | |
| | | @Override |
| | | public PageResult<StSuggestOperationRecordEntity> page(StSuggestOperationRecordPageReqVO reqVO) { |
| | | return baseDao.selectPage(reqVO); |
| | |
| | | entity.setId(UUID.randomUUID().toString()); |
| | | entity.setHandleTime(new Date()); |
| | | baseDao.insert(entity); |
| | | |
| | | //获取调度建议快照配置表信息 |
| | | StSuggestSnapshotConfMainRespVO confMain = stSuggestSnapshotConfMainService.getByModelIdAndScheduleObj(reqVo.getModelId(), reqVo.getSuggestId()); |
| | | if (confMain != null){ |
| | | StSuggestSnapshotRecordSaveReqVO snapshotRecordSaveReqVO = new StSuggestSnapshotRecordSaveReqVO(); |
| | | snapshotRecordSaveReqVO.setModelId(entity.getModelId()); |
| | | List<StSuggestSnapshotConfDetRespVO> confDetList = stSuggestSnapshotConfDetService.getByConfId(confMain.getId()); |
| | | confDetList.forEach(confDet -> { |
| | | snapshotRecordSaveReqVO.setDataNo(confDet.getDataNo()); |
| | | snapshotRecordSaveReqVO.setDataType(confDet.getDataType()); |
| | | snapshotRecordSaveReqVO.setScheduleTime(entity.getScheduleTime()); |
| | | //计算开始时间,开始时间为当前调度时间减去快照配置表配置的左侧时间长度 |
| | | LocalDateTime localStartDateTime = entity.getScheduleTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime().minusMinutes(confDet.getLeftLength()); |
| | | Date startTime = Date.from(localStartDateTime.atZone(ZoneId.systemDefault()).toInstant()); |
| | | snapshotRecordSaveReqVO.setStartTime(startTime); |
| | | //计算结束时间,结束时间为当前调度时间加上快照配置表配置的右侧时间长度 |
| | | LocalDateTime localEndDateTime = entity.getScheduleTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime().plusMinutes(confDet.getRightLength()); |
| | | Date endTime = Date.from(localEndDateTime.atZone(ZoneId.systemDefault()).toInstant()); |
| | | snapshotRecordSaveReqVO.setEndTime(endTime); |
| | | stSuggestSnapshotRecordService.create(snapshotRecordSaveReqVO); |
| | | }); |
| | | } |
| | | } |
| | | |
| | | } |