|
|
|
@ -238,15 +238,19 @@ public class AgvTaskServiceImpl implements AgvTaskService { |
|
|
|
String station = null; |
|
|
|
log.info("开始处理等待询问回调 - rqrq:目标站点={}", checkTask.getToLocation()); |
|
|
|
|
|
|
|
// 判断是否为立库站点D1或D2 - rqrq |
|
|
|
// ⚠️ 判断是否为立库站点D1或D2 - rqrq |
|
|
|
// D1、D2是立库管理的特殊站点,实际状态由立库PLC管理 |
|
|
|
// WMS通过"等待询问"机制实现动态分配 - rqrq |
|
|
|
if(checkTask.getToLocation().equals("D1") || checkTask.getToLocation().equals("D2")){ |
|
|
|
log.info("目标站点为立库站点,询问立库分配放货点 - rqrq"); |
|
|
|
|
|
|
|
// 更新原目标站点状态为空闲 - rqrq |
|
|
|
// 1. 释放WMS的原目标站点状态记录 - rqrq |
|
|
|
// 注:此处只是释放WMS的状态记录,不影响立库PLC的实际状态 - rqrq |
|
|
|
wcsIntegrationMapper.updateAgvStationStatus(checkTask.getToLocation(), 0, "空闲"); |
|
|
|
log.info("原目标站点{}状态已更新为空闲 - rqrq", checkTask.getToLocation()); |
|
|
|
log.info("原目标站点{}状态已更新为空闲(WMS相对记录)- rqrq", checkTask.getToLocation()); |
|
|
|
|
|
|
|
// 询问立库分配放货点 - rqrq |
|
|
|
// 2. 询问立库PLC分配实际可用的放货点 - rqrq |
|
|
|
// 立库PLC根据实际状态返回D1或D2 - rqrq |
|
|
|
WarehouseAskStation askStation = new WarehouseAskStation(); |
|
|
|
askStation.setTaskNo(checkTask.getTaskNo()); |
|
|
|
askStation.setItemNo(checkTask.getItemNo()); |
|
|
|
@ -259,9 +263,9 @@ public class AgvTaskServiceImpl implements AgvTaskService { |
|
|
|
throw new RuntimeException("立库返回放货点有误!!"); |
|
|
|
} |
|
|
|
|
|
|
|
// 更新立库返回的站点状态为待放货 - rqrq |
|
|
|
// 3. 更新立库返回的站点状态为待放货(WMS相对记录)- rqrq |
|
|
|
wcsIntegrationMapper.updateAgvStationStatus(station, 2, "待放货"); |
|
|
|
log.info("立库返回站点{},状态已更新为待放货 - rqrq", station); |
|
|
|
log.info("立库返回站点{},状态已更新为待放货(WMS相对记录)- rqrq", station); |
|
|
|
|
|
|
|
} else { |
|
|
|
// 非立库站点,查询原目标点状态 - rqrq |
|
|
|
|