diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java index 8cbe921..4e1a205 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java @@ -154,7 +154,7 @@ public class BsInSsjThread implements Runnable { */ public void inDispatch(DeviceSsj inSsjDevice) { //如果入库请求1 并且 托盘码不为空 - if (inSsjDevice.getRkqq() == 1 && StrUtil.isNotEmpty(inSsjDevice.getTrayCode())) { + if (inSsjDevice.getDw()==1 && inSsjDevice.getRkqq() == 1 && StrUtil.isNotEmpty(inSsjDevice.getTrayCode())) { //判断是否生成队列 AgvQueue agvQueueParam = new AgvQueue(); agvQueueParam.setWmsTraycode(inSsjDevice.getTrayCode()); @@ -227,7 +227,7 @@ public class BsInSsjThread implements Runnable { * @param agvQueue */ private GenAgvSchedulingTaskResponse requestAgvQueue(MydoJob mydoJob, AgvQueue agvQueue) { - //请求ctu + //todo 请求ctu GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest = new GenAgvSchedulingTaskRequest(); genAgvSchedulingTaskRequest.setReqCode(agvQueue.getReqCode()); genAgvSchedulingTaskRequest.setTaskMode("0"); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/js/JsInSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/js/JsInSsjThread.java index 154e890..5ebed3d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/js/JsInSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/js/JsInSsjThread.java @@ -89,25 +89,23 @@ public class JsInSsjThread implements Runnable { public void inDispatch(DeviceSsj inSsjDevice) { //如果入库请求1 并且 托盘码不为空 - if (inSsjDevice.getRkqq() == 1 && StrUtil.isNotEmpty(inSsjDevice.getTrayCode())) { - //根据入口,查询对应的入库作业 - MydoJob mydoJobParam = new MydoJob(); - mydoJobParam.setStatus("1"); - mydoJobParam.setTrayCode(inSsjDevice.getTrayCode()); - MydoJob mydoJob = apiService.requestEnter(mydoJobParam); - if (ObjUtil.isNotNull(mydoJob) && !"6".equals(mydoJob.getExecutionPhase())){ - //通知wms 当前料箱的入库口 - mydoJob.setEntranceId(inSsjDevice.getDeviceCode()); - apiService.updateMydoJob(mydoJob); - //判断是否生成队列 - AgvQueue agvQueueParam = new AgvQueue(); - agvQueueParam.setWmsTaskNo(mydoJob.getTaskNo()); - agvQueueParam.setPositionCode1(inSsjDevice.getDeviceCode()); - agvQueueParam.setStatus("0"); - List agvQueues = agvQueueService.selectAgvQueueList(agvQueueParam); - if (CollUtil.isEmpty(agvQueues)) { + if (inSsjDevice.getDw()==1 && inSsjDevice.getRkqq() == 1 && StrUtil.isNotEmpty(inSsjDevice.getTrayCode())) { + //判断是否生成队列 + AgvQueue agvQueueParam = new AgvQueue(); + agvQueueParam.setWmsTraycode(inSsjDevice.getTrayCode()); + agvQueueParam.setStatus("0"); + List agvQueues = agvQueueService.selectAgvQueueList(agvQueueParam); + if (CollUtil.isEmpty(agvQueues)) { + //根据入口,查询对应的入库作业 + MydoJob mydoJobParam = new MydoJob(); + mydoJobParam.setStatus("1"); + mydoJobParam.setTrayCode(inSsjDevice.getTrayCode()); + mydoJobParam.setEntranceId(inSsjDevice.getDeviceCode()); + MydoJob mydoJob = apiService.requestEnter(mydoJobParam); + if (ObjUtil.isNotNull(mydoJob)) { + //生成agv队列 - AgvQueue agvQueue = createAgvQueue(inSsjDevice, mydoJob); + AgvQueue agvQueue = createAgvQueue(inSsjDevice.getDeviceCode(), mydoJob); //请求任务生成 GenAgvSchedulingTaskResponse genAgvSchedulingTaskResponse = requestAgvQueue(mydoJob, agvQueue); //修改wms任务状态 @@ -116,32 +114,32 @@ public class JsInSsjThread implements Runnable { agvQueue.setStatus("1"); agvQueueService.updateAgvQueue(agvQueue); log.info("向CTU下入库库作业"); - //修改mydoJob执行阶段 - mydoJob.setExecutionPhase("6"); - apiService.updateMydoJob(mydoJob); + } + } } - } } /** * 生成入库AGV队列 * - * @param ssjDevice + * @param positionCode1 * @param mydoJob * @return */ - private AgvQueue createAgvQueue(DeviceSsj ssjDevice, MydoJob mydoJob) { + private AgvQueue createAgvQueue(String positionCode1, MydoJob mydoJob) { + //生成ctu执行队列 //生成ctu执行队列 AgvQueue agvQueue = new AgvQueue(); String reqCode = IdUtil.fastSimpleUUID(); + String taskCode = IdUtil.fastSimpleUUID(); agvQueue.setReqCode(reqCode); agvQueue.setReqTime(DateUtil.formatDateTime(DateUtil.date())); agvQueue.setAgvType("CTU"); - agvQueue.setPositionCode1(mydoJob.getCargoSpaceId()); - agvQueue.setPositionCode2(ssjDevice.getDeviceCode()); + agvQueue.setPositionCode1(positionCode1); + agvQueue.setPositionCode2(mydoJob.getCargoSpaceId()); agvQueue.setTaskType("F01"); agvQueue.setCtnrType("0"); agvQueue.setCtnrCode("0"); @@ -152,7 +150,8 @@ public class JsInSsjThread implements Runnable { agvQueue.setWmsTraycode(mydoJob.getTrayCode()); agvQueue.setWmsTaskNo(mydoJob.getTaskNo()); agvQueue.setStatus("0"); - agvQueueService.insertAgvQueue(agvQueue); + agvQueue.setTaskCode(taskCode); + agvQueue.setWmsTaskType("1"); return agvQueue; } @@ -163,7 +162,7 @@ public class JsInSsjThread implements Runnable { * @param agvQueue */ private GenAgvSchedulingTaskResponse requestAgvQueue(MydoJob mydoJob, AgvQueue agvQueue) { - //请求ctu + //todo 请求ctu GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest = new GenAgvSchedulingTaskRequest(); genAgvSchedulingTaskRequest.setReqCode(agvQueue.getReqCode()); genAgvSchedulingTaskRequest.setTaskMode("0");