臂式ctu入库 流程测试

This commit is contained in:
liuhanqing
2025-07-16 16:07:41 +08:00
parent 5cebe0369c
commit 448bbfa23d
2 changed files with 29 additions and 30 deletions

View File

@@ -154,7 +154,7 @@ public class BsInSsjThread implements Runnable {
*/ */
public void inDispatch(DeviceSsj inSsjDevice) { public void inDispatch(DeviceSsj inSsjDevice) {
//如果入库请求1 并且 托盘码不为空 //如果入库请求1 并且 托盘码不为空
if (inSsjDevice.getRkqq() == 1 && StrUtil.isNotEmpty(inSsjDevice.getTrayCode())) { if (inSsjDevice.getDw()==1 && inSsjDevice.getRkqq() == 1 && StrUtil.isNotEmpty(inSsjDevice.getTrayCode())) {
//判断是否生成队列 //判断是否生成队列
AgvQueue agvQueueParam = new AgvQueue(); AgvQueue agvQueueParam = new AgvQueue();
agvQueueParam.setWmsTraycode(inSsjDevice.getTrayCode()); agvQueueParam.setWmsTraycode(inSsjDevice.getTrayCode());
@@ -227,7 +227,7 @@ public class BsInSsjThread implements Runnable {
* @param agvQueue * @param agvQueue
*/ */
private GenAgvSchedulingTaskResponse requestAgvQueue(MydoJob mydoJob, AgvQueue agvQueue) { private GenAgvSchedulingTaskResponse requestAgvQueue(MydoJob mydoJob, AgvQueue agvQueue) {
//请求ctu //todo 请求ctu
GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest = new GenAgvSchedulingTaskRequest(); GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest = new GenAgvSchedulingTaskRequest();
genAgvSchedulingTaskRequest.setReqCode(agvQueue.getReqCode()); genAgvSchedulingTaskRequest.setReqCode(agvQueue.getReqCode());
genAgvSchedulingTaskRequest.setTaskMode("0"); genAgvSchedulingTaskRequest.setTaskMode("0");

View File

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