车车 10 mesiacov pred
rodič
commit
443c56f194

+ 8 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/HardwareApiServiceImpl.java

@@ -110,6 +110,14 @@ public class HardwareApiServiceImpl implements HardwareApiService {
      * @param ticketId
      */
     private void updateFirstProgress(Long ticketId) {
+        // 判断作业票的整体状态,防止状态回退异常
+        IsJobTicketUser jobTicketUser = iIsJobTicketUserService.getOne(Wrappers.<IsJobTicketUser>lambdaQuery()
+                .eq(IsJobTicketUser::getTicketId, ticketId)
+                .eq(IsJobTicketUser::getUserRole, JobUserEnum.JTLOCKER.key));
+        Assert.isFalse(jobTicketUser.getJobStatus() > JobStatusEnum.ACQUIRE_KEY.status, "作业票已完成设备拿取,无法操作!");
+        IsJobTicket isJobTicket = isJobTicketService.getOne(Wrappers.<IsJobTicket>lambdaQuery()
+                .eq(IsJobTicket::getTicketId, ticketId));
+        Assert.isFalse(Integer.parseInt(isJobTicket.getTicketStatus()) > Integer.parseInt(TicketStatusEnum.READY_TO_LOCK.status), "作业票已完成设备拿取,无法进行操作!");
         // 上锁阶段取钥匙,更新is_job_ticket_user和is_job_ticket
         // 1.新更人员状态
         iIsJobTicketUserService.update(Wrappers.<IsJobTicketUser>lambdaUpdate()