diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoMoveBoxTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoMoveBoxTask.java index bdd60665a..79774630f 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoMoveBoxTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoMoveBoxTask.java @@ -2,6 +2,7 @@ package org.nl.b_lms.sch.tasks; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -172,7 +173,12 @@ public class TwoMoveBoxTask extends AbstractAcsTask { if (StrUtil.isBlank(form.getString("vehicle_code"))) { throw new BadRequestException("木箱号不能为空!"); } - + String vehicle_code = form.getString("vehicle_code"); + String point_code1 = form.getString("start_device_code"); + JSONObject task1 = isSingleTask(point_code1); + if ( ObjectUtil.isNotEmpty(task1)) { + throw new BadRequestException("载具:"+vehicle_code+"所在点位:" + point_code1 + "存在未完成的任务:"+task1.getString("task_code")); + } JSONObject json = new JSONObject(); json.put("task_id", IdUtil.getSnowflake(1, 1).nextId()); json.put("task_code", IdUtil.getSnowflake(1, 1).nextId()); @@ -206,4 +212,24 @@ public class TwoMoveBoxTask extends AbstractAcsTask { JSONObject taskObj = WQLObject.getWQLObject("SCH_BASE_Task").query("task_id = '" + task_id + "'").uniqueResult(0); this.updateTaskStatus(taskObj, IOSEnum.ACS_RESULT.code("取消")); } + + + public JSONObject 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)){ + return task1; + }else if(ObjectUtil.isNotEmpty(task2)){ + return task2; + }else if(ObjectUtil.isNotEmpty(task3)){ + return task3; + }else if(ObjectUtil.isNotEmpty(task4)){ + return task4; + } + + return null; + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxExcepTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxExcepTask.java index cb67893ea..e3f7a88da 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxExcepTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxExcepTask.java @@ -2,6 +2,7 @@ package org.nl.b_lms.sch.tasks; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; @@ -159,7 +160,12 @@ public class TwoOutBoxExcepTask extends AbstractAcsTask { if (StrUtil.isBlank(form.getString("vehicle_code"))) { throw new BadRequestException("木箱号不能为空!"); } - + String vehicle_code = form.getString("vehicle_code"); + String point_code1 = form.getString("start_device_code"); + JSONObject task1 = isSingleTask(point_code1); + if ( ObjectUtil.isNotEmpty(task1)) { + throw new BadRequestException("载具:"+vehicle_code+"所在点位:" + point_code1 + "存在未完成的任务:"+task1.getString("task_code")); + } JSONObject json = new JSONObject(); json.put("task_id", IdUtil.getSnowflake(1, 1).nextId()); json.put("task_code", IdUtil.getSnowflake(1, 1).nextId()); @@ -195,4 +201,23 @@ public class TwoOutBoxExcepTask extends AbstractAcsTask { JSONObject taskObj = WQLObject.getWQLObject("SCH_BASE_Task").query("task_id = '" + task_id + "'").uniqueResult(0); this.updateTaskStatus(taskObj, IOSEnum.ACS_RESULT.code("取消")); } + + public JSONObject 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)){ + return task1; + }else if(ObjectUtil.isNotEmpty(task2)){ + return task2; + }else if(ObjectUtil.isNotEmpty(task3)){ + return task3; + }else if(ObjectUtil.isNotEmpty(task4)){ + return task4; + } + + return null; + } } diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxTask.java index c6480faa0..4227edede 100644 --- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxTask.java +++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoOutBoxTask.java @@ -225,7 +225,15 @@ public class TwoOutBoxTask extends AbstractAcsTask { if (StrUtil.isBlank(form.getString("vehicle_code"))) { throw new BadRequestException("木箱号不能为空!"); } - + if (StrUtil.isBlank(form.getString("vehicle_code"))) { + throw new BadRequestException("木箱号不能为空!"); + } + String vehicle_code = form.getString("vehicle_code"); + String point_code1 = form.getString("start_device_code"); + JSONObject task1 = isSingleTask(point_code1); + if ( ObjectUtil.isNotEmpty(task1)) { + throw new BadRequestException("载具:"+vehicle_code+"所在点位:" + point_code1 + "存在未完成的任务:"+task1.getString("task_code")); + } JSONObject json = new JSONObject(); json.put("task_id", IdUtil.getSnowflake(1, 1).nextId()); json.put("task_code", IdUtil.getSnowflake(1, 1).nextId()); @@ -261,4 +269,23 @@ public class TwoOutBoxTask extends AbstractAcsTask { JSONObject taskObj = WQLObject.getWQLObject("SCH_BASE_Task").query("task_id = '" + task_id + "'").uniqueResult(0); this.updateTaskStatus(taskObj, IOSEnum.ACS_RESULT.code("取消")); } + + public JSONObject 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)){ + return task1; + }else if(ObjectUtil.isNotEmpty(task2)){ + return task2; + }else if(ObjectUtil.isNotEmpty(task3)){ + return task3; + }else if(ObjectUtil.isNotEmpty(task4)){ + return task4; + } + + return null; + } }