diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java index ae2048170..b167e3140 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/ReturnShaftAgvTask.java @@ -189,6 +189,12 @@ public class ReturnShaftAgvTask extends AbstractAcsTask { task.setTask_status(TaskStatusEnum.START_AND_POINT.getCode()); task.setPoint_code1(form.getString("point_code1")); task.setPoint_code2(form.getString("point_code2")); + if (this.isSingleTask(form.getString("point_code1"))) { + throw new BadRequestException("点位:" + form.getString("point_code1") + "存在未完成的任务!"); + } + if (this.isSingleTask(form.getString("point_code2"))) { + throw new BadRequestException("点位:" + form.getString("point_code2") + "存在未完成的任务!"); + } task.setVehicle_code(form.getString("vehicle_code1")); task.setVehicle_code2(form.getString("vehicle_code2")); task.setAcs_task_type("3"); @@ -227,4 +233,18 @@ public class ReturnShaftAgvTask extends AbstractAcsTask { this.updateTaskStatus(taskObj, "0"); } + //判断该点位是否存在未完成的任务 + public boolean isSingleTask(String point_code) { + JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code1 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task2 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code2 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task3 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code3 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task4 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code4 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + + if (ObjectUtil.isNotEmpty(task1) || ObjectUtil.isNotEmpty(task2) || ObjectUtil.isNotEmpty(task3) || ObjectUtil.isNotEmpty(task4)) { + return true; + } else { + return false; + } + } + } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/SlitterDownAgvTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/SlitterDownAgvTask.java index e2cda5b25..0ba2786b5 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/SlitterDownAgvTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/SlitterDownAgvTask.java @@ -107,6 +107,12 @@ public class SlitterDownAgvTask extends AbstractAcsTask { task.setTask_status(TaskStatusEnum.START_AND_POINT.getCode()); task.setPoint_code1(form.getString("point_code1")); task.setPoint_code2(form.getString("point_code2")); + if (this.isSingleTask(form.getString("point_code1"))) { + throw new BadRequestException("点位:" + form.getString("point_code1") + "存在未完成的任务!"); + } + if (this.isSingleTask(form.getString("point_code2"))) { + throw new BadRequestException("点位:" + form.getString("point_code2") + "存在未完成的任务!"); + } task.setVehicle_code(form.getString("vehicle_code1")); task.setVehicle_code2(form.getString("vehicle_code2")); task.setAcs_task_type("3"); @@ -142,4 +148,17 @@ public class SlitterDownAgvTask extends AbstractAcsTask { JSONObject taskObj = WQLObject.getWQLObject("SCH_BASE_Task").query("task_id = '" + task_id + "'").uniqueResult(0); this.updateTaskStatus(taskObj, "0"); } + //判断该点位是否存在未完成的任务 + public boolean isSingleTask(String point_code) { + JSONObject task1 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code1 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task2 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code2 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task3 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code3 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + JSONObject task4 = WQLObject.getWQLObject("SCH_BASE_Task").query("point_code4 = '" + point_code + "' AND task_status < '07' AND is_delete = '0'").uniqueResult(0); + + if (ObjectUtil.isNotEmpty(task1) || ObjectUtil.isNotEmpty(task2) || ObjectUtil.isNotEmpty(task3) || ObjectUtil.isNotEmpty(task4)) { + return true; + } else { + return false; + } + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java index 050b9dce6..16c11d05e 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/slitter/service/impl/SlitterServiceImpl.java @@ -2574,7 +2574,6 @@ public class SlitterServiceImpl implements SlitterService { } @Override - @Transactional(rollbackFor = Exception.class) public JSONObject returnShaft(JSONObject param) { log.info("空轴退回 - {}", param); JSONObject res = new JSONObject();