|
|
@@ -43,6 +43,7 @@ import java.util.concurrent.TimeUnit;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
import static cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils.getLoginUserId;
|
|
|
+import static cn.iocoder.yudao.module.iscs.enums.TicketStatusEnum.FINISHED;
|
|
|
import static cn.iocoder.yudao.module.system.dal.redis.RedisKeyConstants.ISCS_ATTR;
|
|
|
|
|
|
|
|
|
@@ -1144,4 +1145,38 @@ public class HardwareApiServiceImpl implements HardwareApiService {
|
|
|
}
|
|
|
return 5;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Boolean updateJobToFinish(JobTicketSaveReqVO isJobTicket) {
|
|
|
+ Assert.notNull(isJobTicket.getId(), "作业票ID不可为空!");
|
|
|
+ // 1.查询未完成的八大步骤
|
|
|
+ List<JobTicketStepDO> list = iIsJobTicketStepService.list(Wrappers.<JobTicketStepDO>lambdaQuery()
|
|
|
+ .eq(JobTicketStepDO::getTicketId, isJobTicket.getId())
|
|
|
+ .ne(JobTicketStepDO::getStepStatus, 1));
|
|
|
+ Assert.isTrue(list.isEmpty(), "存在未完成的步骤,暂不可完成!");
|
|
|
+ // 2.既然走到这了,说明可以完成了
|
|
|
+ isJobTicketService.update(Wrappers.<JobTicketDO>lambdaUpdate().eq(JobTicketDO::getId, isJobTicket.getId())
|
|
|
+ .set(JobTicketDO::getTicketStatus, FINISHED.status)
|
|
|
+ .set(JobTicketDO::getTicketEndTime, new Date()));
|
|
|
+ // 结束作业
|
|
|
+ isTicketOperLogService.addLog11(isJobTicket.getId(), isJobTicketService.getById(isJobTicket.getId()).getTicketName());
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Boolean updateJobToCancel(JobTicketSaveReqVO isJobTicket) {
|
|
|
+ Assert.notNull(isJobTicket.getId(), "作业票ID不可为空!");
|
|
|
+ // 1.检查第六步有没有被执行,被执行了不能取消
|
|
|
+ JobTicketStepDO jobTicketStep = iIsJobTicketStepService.getOne(Wrappers.<JobTicketStepDO>lambdaQuery()
|
|
|
+ .eq(JobTicketStepDO::getTicketId, isJobTicket.getId())
|
|
|
+ .eq(JobTicketStepDO::getStepIndex, 6)
|
|
|
+ .eq(JobTicketStepDO::getStepStatus, 1));
|
|
|
+ Assert.isFalse(jobTicketStep != null, "该作业票已执行至第六步,无法取消!");
|
|
|
+ // 2.既然走到这了,说明可以取消
|
|
|
+ isJobTicketService.update(Wrappers.<JobTicketDO>lambdaUpdate().eq(JobTicketDO::getId, isJobTicket.getId())
|
|
|
+ .set(JobTicketDO::getTicketStatus, 6));
|
|
|
+ // 取消作业
|
|
|
+ isTicketOperLogService.addLog10(isJobTicket.getId(), isJobTicketService.getById(isJobTicket.getId()).getTicketName());
|
|
|
+ return true;
|
|
|
+ }
|
|
|
}
|