From 649d68112e17bc6364790362ee762c1274003b83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=80=A1=E8=93=89?= <377046077@qq.com> Date: Tue, 9 Dec 2025 09:51:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E8=BD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scheduleTask/srgv/BaseSRgvThread.java | 34 +++++++++++-------- .../schedule/scheduleTask/ssj/SsjThread.java | 2 +- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/srgv/BaseSRgvThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/srgv/BaseSRgvThread.java index 6dda8e0..5b11027 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/srgv/BaseSRgvThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/srgv/BaseSRgvThread.java @@ -295,28 +295,34 @@ public class BaseSRgvThread implements Runnable, SRgvThreadInterface { } else { //别的层的出库作业和入库作业 - ArrayList mydoJobs2 = new ArrayList<>(); - MydoJob mydoJob2 = new MydoJob(); - mydoJob2.setInOut("2"); - mydoJob2.setStatus("1"); - List mydoJobs3 = mydoJobService.selectMydoJobList(mydoJob2); + MydoJob job=null; MydoJob mydoJob3 = new MydoJob(); mydoJob3.setStatus("3"); mydoJob3.setInOut("1"); //todo 输送机阶段 mydoJob3.setExecutionPhase("1"); List mydoJobs4 = mydoJobService.selectMydoJobList(mydoJob3); - mydoJobs2.addAll(mydoJobs3); - mydoJobs2.addAll(mydoJobs4); + if(!mydoJobs4.isEmpty()){ + job=mydoJobs4.get(0); + }else{ + MydoJob mydoJob2 = new MydoJob(); + mydoJob2.setInOut("2"); + mydoJob2.setStatus("1"); + List mydoJobs3 = mydoJobService.selectMydoJobList(mydoJob2); + if(!mydoJobs3.isEmpty()){ + job=mydoJobs3.get(0); + } + } + if(job!=null) { - //判断那层没有小车,并且没有要去那层的小车队列,查监控表 - //生成换层任务 - MydoJob job = mydoJobs2.get(0); + //判断那层没有小车,并且没有要去那层的小车队列,查监控表 + //生成换层任务 - DeviceSrgv deviceSrgv1 = new DeviceSrgv(); + + DeviceSrgv deviceSrgv1 = new DeviceSrgv(); deviceSrgv1.setCurrFloor(Convert.toInt(job.getTheFloor())); List srgvs = deviceSrgvService.selectDeviceSrgvList(deviceSrgv1); - //这个作业的目标层没有小车 + //这个作业的目标层没有小车 if (srgvs.isEmpty()) { WcsSrgvQueue wcsSrgvQueue1 = new WcsSrgvQueue(); @@ -325,12 +331,12 @@ public class BaseSRgvThread implements Runnable, SRgvThreadInterface { List wcsSrgvQueues = wcsSagvQueueMapper.selectWcsSrgvQueueList(wcsSrgvQueue1); if (wcsSrgvQueues.isEmpty()) { //生成换层任务 - createCarQueue(mydoJob2, deviceSrgv, "8","0"); + createCarQueue(job, deviceSrgv, "8", "0"); } } - + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/SsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/SsjThread.java index 6ce2d8c..7684683 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/SsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/SsjThread.java @@ -125,7 +125,7 @@ public class SsjThread implements Runnable { void inDispatch1(DeviceSsj deviceSsj) { if (deviceSsj.getDw() == 1 && StrUtil.isNotBlank(deviceSsj.getTrayCode())) { - //todo 查是否为入库模式,不是退回 + //todo 查是否有正执行的出库作业,有退回 HashMap map = new HashMap<>(); map.put("trayCode", deviceSsj.getTrayCode()); //拉取