|
|
|
@ -1338,7 +1338,8 @@ public class HaiAnWmsMessageServiceImpl implements HaiAnWmsMessageService { |
|
|
|
validateAgvCallbackRequest(data); |
|
|
|
String wmsId = data.getWmsId().trim(); |
|
|
|
String xjTaskId = data.getTaskId().trim(); |
|
|
|
String palletId = data.getPalletId().trim(); |
|
|
|
// 托盘号兼容对端pallet与内部palletId,两者都有时取palletId,避免协议字段名不一致导致下达任务落空托盘 - rqrq |
|
|
|
String palletId = data.resolvePalletId(); |
|
|
|
String targetPoint = data.getTargetPoint().trim(); |
|
|
|
String targetArea = convertAgvTargetAreaToBusinessArea(site, data.getTargetArea()); |
|
|
|
String normalizedType = normalizeAgvCallbackType(data.getType()); |
|
|
|
@ -1405,18 +1406,18 @@ public class HaiAnWmsMessageServiceImpl implements HaiAnWmsMessageService { |
|
|
|
|
|
|
|
/** |
|
|
|
* @author rqrq |
|
|
|
* @Description 校验AGV回调核心字段:site/wmsId/taskId/palletId/targetPoint/targetArea/type均必填且type必须在白名单内 - rqrq |
|
|
|
* @Description 校验AGV回调核心字段:site/wmsId/taskId/托盘号(palletId优先否则pallet)/targetPoint/targetArea/type均必填且type必须在白名单内 - rqrq |
|
|
|
*/ |
|
|
|
private void validateAgvCallbackRequest(HaiAnAgvCallbackRequest data) { |
|
|
|
if (data == null |
|
|
|
|| !StringUtils.hasText(data.getSite()) |
|
|
|
|| !StringUtils.hasText(data.getWmsId()) |
|
|
|
|| !StringUtils.hasText(data.getTaskId()) |
|
|
|
|| !StringUtils.hasText(data.getPalletId()) |
|
|
|
|| !StringUtils.hasText(data.resolvePalletId()) |
|
|
|
|| !StringUtils.hasText(data.getTargetPoint()) |
|
|
|
|| !StringUtils.hasText(data.getTargetArea()) |
|
|
|
|| !StringUtils.hasText(data.getType())) { |
|
|
|
throw new RuntimeException("AGV反馈参数缺失:site/wmsId/taskId/palletId/targetPoint/targetArea/type为必填项"); |
|
|
|
throw new RuntimeException("AGV反馈参数缺失:site/wmsId/taskId/托盘号(palletId或pallet)/targetPoint/targetArea/type为必填项"); |
|
|
|
} |
|
|
|
String normalizedType = normalizeAgvCallbackType(data.getType()); |
|
|
|
if (!isSupportedAgvCallbackType(normalizedType)) { |
|
|
|
|