From c0fc8683fda54cf916c8bc2c5abe6247d43c77f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=80=A1=E8=93=89?= <377046077@qq.com> Date: Fri, 26 Sep 2025 14:09:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=A7=E7=BA=BF=E8=BE=93=E9=80=81=E6=9C=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/ruoyi/common/Constant.java | 1 - .../com/ruoyi/job/mapper/MydoJobMapper.java | 5 ++++ .../job/service/impl/MydoJobServiceImpl.java | 3 +- .../ssj/floor2/Floor2InSsjThread.java | 5 ++-- .../ssj/floor2/Floor2OutSsjThread.java | 2 +- .../ssj/floor2/LineSsjThread.java | 28 +++++++++++-------- .../resources/mapper/job/MydoJobMapper.xml | 5 ++++ 7 files changed, 32 insertions(+), 17 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java b/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java index 9806569..7376f39 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java @@ -13,7 +13,6 @@ public class Constant { public static final String GEN_AGV_SCHEDULING_TASK = RCS_BASE_URL+"genAgvSchedulingTask";; public static final String CREATE_IN_MYDO_JOB_URL = WMS_BASE_URL+"requestEnterByTrayCode"; public static final String REQUEST_MYDO_JOB_URL = WMS_BASE_URL+"requestByNoTrayCode"; - public static final String RE_ASSIGN_URL = WMS_BASE_URL+"reAssign"; public static final String RE_MATERIAL_URL = WMS_BASE_URL+"reMaterial"; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/job/mapper/MydoJobMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/job/mapper/MydoJobMapper.java index 1c5b0ae..6f42da7 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/job/mapper/MydoJobMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/job/mapper/MydoJobMapper.java @@ -45,6 +45,11 @@ public interface MydoJobMapper */ public int updateMydoJob(MydoJob mydoJob); + /** + * 按任务号查作业 + */ + public MydoJob selectMydoJobByTaskNo(String taskNo); + /** * 删除作业信息 * diff --git a/ruoyi-admin/src/main/java/com/ruoyi/job/service/impl/MydoJobServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/job/service/impl/MydoJobServiceImpl.java index 3e0848e..e155bed 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/job/service/impl/MydoJobServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/job/service/impl/MydoJobServiceImpl.java @@ -98,7 +98,8 @@ public class MydoJobServiceImpl implements IMydoJobService @Override public MydoJob selectMydoJobByTaskNo(Long rwh) { - return null; + String s = String.valueOf(rwh); + return mydoJobMapper.selectMydoJobByTaskNo(s); } @Override diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InSsjThread.java index c17a8a2..f1036c7 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2InSsjThread.java @@ -94,7 +94,7 @@ public class Floor2InSsjThread implements Runnable { //如果输送机空闲 if (inSsjDevice.getKx() == 1) { AgvQueue agvQueue = new AgvQueue(); - agvQueue.setStatus("5"); + agvQueue.setStatus("5");//请求放货 agvQueue.setPositionCode2(inSsjDevice.getDeviceCode()); List agvQueues = agvQueueService.selectAgvQueueList(agvQueue); //不允许放货 @@ -110,6 +110,7 @@ public class Floor2InSsjThread implements Runnable { log.info("设备:{} 位置:{} 任务号:{} 请求放货成功", inSsjDevice.getDeviceCode(), "输送线", agvQueues.get(0).getTaskCode()); AjaxResult ajaxResult = apiService.continueTask(agvQueues.get(0)); if(ajaxResult.isSuccess()) { + log.info("下发agv允许放货成功"+agvQueues.get(0).getWmsTaskNo()); agvQueues.get(0).setStatus("6"); agvQueueService.updateAgvQueue(agvQueues.get(0)); } @@ -119,7 +120,7 @@ public class Floor2InSsjThread implements Runnable { //入库下发输送线 if(inSsjDevice.getKx()==0 && inSsjDevice.getTaskNo()==0){ AgvQueue agvQueue = new AgvQueue(); - agvQueue.setStatus("7"); + agvQueue.setStatus("7"); //end agvQueue.setPositionCode2(inSsjDevice.getDeviceCode()); List agvQueues = agvQueueService.selectAgvQueueList(agvQueue); if(agvQueues.size()!=0) { diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2OutSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2OutSsjThread.java index eecf3c3..5afa2b1 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2OutSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/Floor2OutSsjThread.java @@ -120,7 +120,7 @@ public class Floor2OutSsjThread implements Runnable { ddjDeviceExecutionQueue.setDdjxf("0"); ddjDeviceExecutionQueue.setMlfs(5); ddjDeviceExecutionQueue.setScsj(DateUtil.formatDateTime(DateUtil.date())); - ddjDeviceExecutionQueue.setRwlx(DDJ_RWLX_3); + ddjDeviceExecutionQueue.setRwlx(DDJ_RWLX_1); ddjDeviceExecutionQueueService.insertDdjDeviceExecutionQueue(ddjDeviceExecutionQueue); mydoJob.setExecutionPhase(TASK_EP_DDJ); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/LineSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/LineSsjThread.java index 8cc79e6..6749631 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/LineSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/floor2/LineSsjThread.java @@ -162,7 +162,7 @@ public class LineSsjThread implements Runnable { } else { //没有,请求错误接口,找作业,返回成功,//拿到正常作业,插到wcs作业表,下发给输送机任务号,覆盖任务号,shibai... HashMap paramMap = new HashMap<>(); - paramMap.put("traySize", SsjDevice.getTraySize()); + paramMap.put("size", SsjDevice.getTraySize()); AjaxResult ajaxResult = apiService.selectMydoJobByNoTrayCode(paramMap); if (ajaxResult.isSuccess()) { MydoJob mydoJob2 = (MydoJob) ajaxResult.get("mydoJob"); @@ -188,16 +188,16 @@ public class LineSsjThread implements Runnable { if (SsjDevice.getDw() == 1 && SsjDevice.getTraySize() != 0 && StrUtil.isNotBlank(SsjDevice.getTrayCode()) && SsjDevice.getTaskNo() > 1000) { - log.info("设备:{} 位置:{} 条码:{} 托盘大小:{}", SsjDevice.getDeviceCode(), "产线", SsjDevice.getTrayCode(), SsjDevice.getTraySize()); + log.info("设备:{} 位置:{} 条码:{} 托盘大小:{}", SsjDevice.getDeviceCode(), "产线收到wcs任务号", SsjDevice.getTrayCode(), SsjDevice.getTraySize()); //任务号查wcs作业,查巷道,看目标输送线是否空闲,查是否有出库作业,生成agv队列 MydoJob mydoJob = mydoJobService.selectMydoJobByTaskNo(Long.valueOf(SsjDevice.getTaskNo())); String deviceCode = ""; if (mydoJob != null) { if ("1".equals(mydoJob.getRoadwayId())) { - deviceCode = "L1011"; - } else { deviceCode = "L1012"; + } else { + deviceCode = "L1011"; } int kx = deviceSsjMap.get(deviceCode).getKx(); MydoJob mydoJob1 = new MydoJob(); @@ -205,17 +205,21 @@ public class LineSsjThread implements Runnable { mydoJob1.setStatus("3"); mydoJob1.setExitId(deviceCode); List mydoJob2 = mydoJobService.selectInOrOutMydoJobList(mydoJob1); - if (mydoJob2.size() == 0 && kx == 1 && "1".equals(mydoJob.getStatus())) { + + + if (mydoJob2.size() == 0 && kx == 1) { //查是否有队列,如果有了请求放货修改为允许放货 AgvQueue agvQueue = agvQueueService.selectAgvQueueByTaskCode(mydoJob.getJobId()); - if (agvQueue != null && "1".equals(agvQueue.getStatus())) { - AjaxResult ajaxResult = apiService.continueTask(agvQueue); - if (ajaxResult.isSuccess()) { - agvQueue.setStatus("2"); - agvQueueService.updateAgvQueue(agvQueue); - } + if (agvQueue != null && "1".equals(agvQueue.getStatus()) && "3".equals(mydoJob.getStatus()) ) { - } else { + AjaxResult ajaxResult = apiService.continueTask(agvQueue); + if (ajaxResult.isSuccess()) { + log.info("给agv下发允许取货继续任务成功"+agvQueue.getWmsTaskNo()); + agvQueue.setStatus("2"); + agvQueueService.updateAgvQueue(agvQueue); + } + + } else if("1".equals(mydoJob.getStatus()) && agvQueue==null){ HashMap paramMap = new HashMap<>(); paramMap.put("trayCode", mydoJob.getTrayCode()); paramMap.put("taskNo", mydoJob.getJobId()); diff --git a/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml b/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml index 7071042..7872a49 100644 --- a/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/job/MydoJobMapper.xml @@ -53,6 +53,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where job_id = #{jobId} + +