|
|
|
@ -109,6 +109,9 @@ public class ZbomNodeDataPushListener {
|
|
|
|
|
for (NodeDataDTO order : orders) { |
|
|
|
|
nodeDataMap.put(order.getDepartCode() + order.getPlatformOrderCode(), order); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
log.error("【{}】节点【{}】未查到数据", StrUtil.toString(packageCodeList), node); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
// 签收节点获取组装未签收数据
|
|
|
|
|
Map<String, Integer> noSignNumberMap = null; |
|
|
|
@ -234,11 +237,11 @@ public class ZbomNodeDataPushListener {
|
|
|
|
|
Integer signNumber = Convert.toInt(nodeData.getSignQty()); |
|
|
|
|
log.info("key:{},签收数量:{}", departCode + "_" + platformOrderCode, signNumber); |
|
|
|
|
|
|
|
|
|
// 签收环节上一个节点是在途,说明缺少一个送货抵达,需要补一个节点
|
|
|
|
|
if (ObjectUtil.isEmpty(nodeOrderEntity.getPushNode()) || !StrUtil.contains(nodeOrderEntity.getPushNode(), ZbomNodeEnums.DELIVERY_ARRIVAL.getCode())) { |
|
|
|
|
// 签收环节,历史中不存在送货抵达,补送货抵达
|
|
|
|
|
if (ObjectUtil.isNotEmpty(nodeOrderEntity.getPushNode()) && !StrUtil.contains(nodeOrderEntity.getPushNode(), ZbomNodeEnums.DELIVERY_ARRIVAL.getIndex().toString())) { |
|
|
|
|
// 第一次签收,节点改为送货抵达
|
|
|
|
|
currentNode = ZbomNodeEnums.DELIVERY_ARRIVAL; |
|
|
|
|
Integer nodeDelay = 15 * 60 * 1000; |
|
|
|
|
Integer nodeDelay = 30 * 60 * 1000; |
|
|
|
|
buildSendMag(sendMsgMap, nodeData, key, paramDTO, node, nodeDelay); |
|
|
|
|
} else { |
|
|
|
|
// 查询当前未签收的数量与当前签收数量比较,如果未签收数较大,则是部分签收
|
|
|
|
@ -280,7 +283,7 @@ public class ZbomNodeDataPushListener {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// 组装历史节点数据
|
|
|
|
|
if (buildNodeOrder(nodeOrderEntity, currentNode, departCode, platformOrderCode, index, nodeOrderMap)) { |
|
|
|
|
if (buildNodeOrder(nodeOrderEntity, currentNode, departCode, platformOrderCode, nodeOrderMap)) { |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
paramDTO.setNode(currentNode.getCode()); |
|
|
|
@ -313,7 +316,8 @@ public class ZbomNodeDataPushListener {
|
|
|
|
|
sendMsgMap.put(key, message); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private boolean buildNodeOrder(ZbFactoryNodeOrderEntity nodeOrderEntity, ZbomNodeEnums zbNode, String departCode, String platformOrderCode, Integer index, Map<String, ZbFactoryNodeOrderEntity> nodeOrderEntityMap) { |
|
|
|
|
private boolean buildNodeOrder(ZbFactoryNodeOrderEntity nodeOrderEntity, ZbomNodeEnums zbNode, String departCode, String platformOrderCode, Map<String, ZbFactoryNodeOrderEntity> nodeOrderEntityMap) { |
|
|
|
|
Integer index = zbNode.getIndex(); |
|
|
|
|
if (ObjectUtil.isNotEmpty(nodeOrderEntity)) { |
|
|
|
|
Integer currentNode = nodeOrderEntity.getCurrentNode(); |
|
|
|
|
String pushNode = nodeOrderEntity.getPushNode(); |
|
|
|
|