From 7c69a5f7246ae92bf07884258abd64c9635e1bea Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期日, 27 四月 2025 14:51:49 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/TaskLogScheduler.java | 124 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 123 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java index dc30951..9f0112d 100644 --- a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java +++ b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java @@ -1,6 +1,8 @@ package com.zy.asrs.task; import com.alibaba.fastjson.JSON; +import com.core.common.Cools; +import com.core.common.R; import com.core.exception.CoolException; import com.zy.asrs.domain.dto.NotifyCustomDataDto; import com.zy.asrs.domain.enums.NotifyMsgType; @@ -16,6 +18,7 @@ import org.springframework.stereotype.Component; import java.io.IOException; +import java.util.Date; import java.util.HashMap; /** @@ -42,6 +45,8 @@ private String taskStatusFeedbackPath; @Autowired private NotifyUtils notifyUtils; + @Autowired + private LocMastService locMastService; @Scheduled(cron = "0/3 * * * * ? ") public void execute() throws IOException { @@ -50,12 +55,129 @@ headParam.put("TaskNo", taskWrk.getTaskNo()); NotifyMsgType notifyMsgType = null; - if (taskWrk.getStatus().equals(TaskStatusType.OVER.id) || taskWrk.getStatus() == 7) {//瀹屾垚 + if (taskWrk.getStatus().equals(TaskStatusType.OVER.id) || taskWrk.getStatus().equals(TaskStatusType.MANUAL_OVER.id)) {//瀹屾垚 headParam.put("Result", 1);//瀹屾垚 notifyMsgType = NotifyMsgType.TASK_COMPLETE; + + if (taskWrk.getIoType() == 1) {//鍏ュ簱浠诲姟瀹屾垚搴撲綅涓篎 + LocMast locMast = locMastService.selectByLocNo(taskWrk.getTargetPoint()); + if (locMast == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getTargetPoint()); + } + + if (!locMast.getLocSts().equals("S")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶴.鍏ュ簱棰勭害"); + } + + locMast.setLocSts("F"); + locMast.setModiTime(new Date()); + locMast.setBarcode(taskWrk.getBarcode()); + locMastService.updateById(locMast); + } else if (taskWrk.getIoType() == 2) {//鍑哄簱浠诲姟瀹屾垚搴撲綅涓篛 + LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint()); + if (locMast == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getStartPoint()); + } + + if (!locMast.getLocSts().equals("R")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶳.鍑哄簱棰勭害"); + } + + locMast.setLocSts("O"); + locMast.setModiTime(new Date()); + locMast.setBarcode(""); + locMastService.updateById(locMast); + } else if (taskWrk.getIoType() == 3) {//绉诲簱 + LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint()); + if (locMast == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getStartPoint()); + } + + if (!locMast.getLocSts().equals("R")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶳.鍑哄簱棰勭害"); + } + + LocMast locMastTarget = locMastService.selectByLocNo(taskWrk.getTargetPoint()); + if (locMastTarget == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getTargetPoint()); + } + + if (!locMastTarget.getLocSts().equals("S")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶴.鍏ュ簱棰勭害"); + } + + locMastTarget.setLocSts("F"); + locMastTarget.setModiTime(new Date()); + locMastTarget.setBarcode(taskWrk.getBarcode()); + locMastService.updateById(locMastTarget); + + locMast.setLocSts("O"); + locMast.setModiTime(new Date()); + locMast.setBarcode(""); + locMastService.updateById(locMast); + } + } else if (taskWrk.getStatus().equals(TaskStatusType.CANCEL.id)) { headParam.put("Result", 2);//鍙栨秷 notifyMsgType = NotifyMsgType.TASK_CANCEL; + + if (taskWrk.getIoType() == 1) {//鍏ュ簱浠诲姟 + LocMast locMast = locMastService.selectByLocNo(taskWrk.getTargetPoint()); + if (locMast == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getTargetPoint()); + } + + if (!locMast.getLocSts().equals("S")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶴.鍏ュ簱棰勭害"); + } + + locMast.setLocSts("O"); + locMast.setModiTime(new Date()); + locMast.setBarcode(""); + locMastService.updateById(locMast); + } else if (taskWrk.getIoType() == 2) {//鍑哄簱浠诲姟 + LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint()); + if (locMast == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getStartPoint()); + } + + if (!locMast.getLocSts().equals("R")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶳.鍑哄簱棰勭害"); + } + + locMast.setLocSts("F"); + locMast.setModiTime(new Date()); + locMast.setBarcode(taskWrk.getBarcode()); + locMastService.updateById(locMast); + } else if (taskWrk.getIoType() == 3) {//绉诲簱 + LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint()); + if (locMast == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getStartPoint()); + } + + if (!locMast.getLocSts().equals("R")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶳.鍑哄簱棰勭害"); + } + + LocMast locMastTarget = locMastService.selectByLocNo(taskWrk.getTargetPoint()); + if (locMastTarget == null) { + throw new CoolException("娌℃湁鎵惧埌璇ュ簱浣�" + taskWrk.getTargetPoint()); + } + + if (!locMastTarget.getLocSts().equals("S")) { + throw new CoolException(taskWrk.getTaskNo() + "搴撲綅涓嶅浜嶴.鍏ュ簱棰勭害"); + } + + locMastTarget.setLocSts("O"); + locMastTarget.setModiTime(new Date()); + locMastTarget.setBarcode(""); + locMastService.updateById(locMastTarget); + + locMast.setLocSts("F"); + locMast.setModiTime(new Date()); + locMast.setBarcode(taskWrk.getBarcode()); + locMastService.updateById(locMast); + } } NotifyCustomDataDto customDataDto = new NotifyCustomDataDto(); -- Gitblit v1.9.1