|
|
@@ -63,22 +63,24 @@ public class JDLogisticsService implements LogisticsService {
|
|
|
Contact senderContact = new Contact();
|
|
|
senderContact.setName(bizWaybillOrder.getSenderName());
|
|
|
senderContact.setMobile(bizWaybillOrder.getSenderPhone());
|
|
|
-// senderContact.setFullAddress(bizWaybillOrder.getSenderProvince() + bizWaybillOrder.getSenderCity() + bizWaybillOrder.getSenderCounty() + bizWaybillOrder.getSenderAddress());
|
|
|
- senderContact.setFullAddress("北京市大兴区亦庄经济开发区abc");
|
|
|
+ senderContact.setFullAddress(bizWaybillOrder.getSenderProvince() + bizWaybillOrder.getSenderCity() + bizWaybillOrder.getSenderCounty() + bizWaybillOrder.getSenderAddress());
|
|
|
+// senderContact.setFullAddress("北京市大兴区亦庄经济开发区abc");
|
|
|
|
|
|
//收货人
|
|
|
Contact receiverContact = new Contact();
|
|
|
receiverContact.setName(bizWaybillOrder.getReceiverName());
|
|
|
receiverContact.setMobile(bizWaybillOrder.getReceiverPhone());
|
|
|
-// receiverContact.setFullAddress(bizWaybillOrder.getReceiverProvince() + bizWaybillOrder.getReceiverCity() + bizWaybillOrder.getReceiverCounty() + bizWaybillOrder.getReceiverAddress());
|
|
|
- receiverContact.setFullAddress("河南省洛阳市西工区正大国际西区");
|
|
|
+ receiverContact.setFullAddress(bizWaybillOrder.getReceiverProvince() + bizWaybillOrder.getReceiverCity() + bizWaybillOrder.getReceiverCounty() + bizWaybillOrder.getReceiverAddress());
|
|
|
+// receiverContact.setFullAddress("河南省洛阳市西工区正大国际西区");
|
|
|
|
|
|
//订单信息
|
|
|
CommonCreateOrderRequest requestDTO = new CommonCreateOrderRequest();
|
|
|
requestDTO.setOrderOrigin(getOrderOrigin(bizWaybillOrder.getProductCode()));
|
|
|
- requestDTO.setCustomerCode(requestDTO.getOrderOrigin() == 1 ?
|
|
|
- sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE) :
|
|
|
- sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_BUSINESSUNITCODE));
|
|
|
+ if (requestDTO.getOrderOrigin() == 1) {
|
|
|
+ requestDTO.setCustomerCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE));
|
|
|
+ } else {
|
|
|
+ requestDTO.setBusinessUnitCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_BUSINESSUNITCODE));
|
|
|
+ }
|
|
|
requestDTO.setPickupStartTime(bizWaybillOrder.getSendStartTime().getTime());
|
|
|
requestDTO.setPickupEndTime(bizWaybillOrder.getSendEndTime().getTime());
|
|
|
|
|
|
@@ -134,23 +136,25 @@ public class JDLogisticsService implements LogisticsService {
|
|
|
com.lop.open.api.sdk.domain.ECAP.CommonCreateOrderApi.commonCreateOrderV1.Contact senderContact = new com.lop.open.api.sdk.domain.ECAP.CommonCreateOrderApi.commonCreateOrderV1.Contact();
|
|
|
senderContact.setName(bizWaybillOrder.getSenderName());
|
|
|
senderContact.setMobile(bizWaybillOrder.getSenderPhone());
|
|
|
-// senderContact.setFullAddress(bizWaybillOrder.getSenderProvince() + bizWaybillOrder.getSenderCity() + bizWaybillOrder.getSenderCounty() + bizWaybillOrder.getSenderAddress());
|
|
|
- senderContact.setFullAddress("北京市大兴区亦庄经济开发区abc");
|
|
|
+ senderContact.setFullAddress(bizWaybillOrder.getSenderProvince() + bizWaybillOrder.getSenderCity() + bizWaybillOrder.getSenderCounty() + bizWaybillOrder.getSenderAddress());
|
|
|
+// senderContact.setFullAddress("北京市大兴区亦庄经济开发区abc");
|
|
|
|
|
|
//收货人
|
|
|
com.lop.open.api.sdk.domain.ECAP.CommonCreateOrderApi.commonCreateOrderV1.Contact receiverContact = new com.lop.open.api.sdk.domain.ECAP.CommonCreateOrderApi.commonCreateOrderV1.Contact();
|
|
|
receiverContact.setName(bizWaybillOrder.getReceiverName());
|
|
|
receiverContact.setMobile(bizWaybillOrder.getReceiverPhone());
|
|
|
-// receiverContact.setFullAddress(bizWaybillOrder.getReceiverProvince() + bizWaybillOrder.getReceiverCity() + bizWaybillOrder.getReceiverCounty() + bizWaybillOrder.getReceiverAddress());
|
|
|
- receiverContact.setFullAddress("河南省洛阳市西工区正大国际西区");
|
|
|
+ receiverContact.setFullAddress(bizWaybillOrder.getReceiverProvince() + bizWaybillOrder.getReceiverCity() + bizWaybillOrder.getReceiverCounty() + bizWaybillOrder.getReceiverAddress());
|
|
|
+// receiverContact.setFullAddress("河南省洛阳市西工区正大国际西区");
|
|
|
|
|
|
//订单信息
|
|
|
com.lop.open.api.sdk.domain.ECAP.CommonCreateOrderApi.commonCreateOrderV1.CommonCreateOrderRequest requestDTO = new com.lop.open.api.sdk.domain.ECAP.CommonCreateOrderApi.commonCreateOrderV1.CommonCreateOrderRequest();
|
|
|
requestDTO.setOrderId(bizWaybillOrder.getWaybillNo());
|
|
|
requestDTO.setOrderOrigin(getOrderOrigin(bizWaybillOrder.getProductCode()));
|
|
|
- requestDTO.setCustomerCode(requestDTO.getOrderOrigin() == 1 ?
|
|
|
- sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE) :
|
|
|
- sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_BUSINESSUNITCODE));
|
|
|
+ if (requestDTO.getOrderOrigin() == 1) {
|
|
|
+ requestDTO.setCustomerCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE));
|
|
|
+ } else {
|
|
|
+ requestDTO.setBusinessUnitCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_BUSINESSUNITCODE));
|
|
|
+ }
|
|
|
requestDTO.setSettleType(3);
|
|
|
requestDTO.setPickupStartTime(bizWaybillOrder.getSendStartTime().getTime());
|
|
|
requestDTO.setPickupEndTime(bizWaybillOrder.getSendEndTime().getTime());
|
|
|
@@ -222,12 +226,14 @@ public class JDLogisticsService implements LogisticsService {
|
|
|
|
|
|
//取消订单入参对象
|
|
|
CommonOrderCancelRequest requestDTO = new CommonOrderCancelRequest();
|
|
|
- requestDTO.setWaybillCode(bizWaybillOrder.getExternalWaybillNo());//JDV025588771574
|
|
|
- requestDTO.setCustomerOrderId(bizWaybillOrder.getWaybillNo());//RJSD20260206000027
|
|
|
+ requestDTO.setWaybillCode(bizWaybillOrder.getExternalWaybillNo());
|
|
|
+ requestDTO.setCustomerOrderId(bizWaybillOrder.getWaybillNo());
|
|
|
requestDTO.setOrderOrigin(getOrderOrigin(bizWaybillOrder.getProductCode()));
|
|
|
- requestDTO.setCustomerCode(requestDTO.getOrderOrigin() == 1 ?
|
|
|
- sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE) :
|
|
|
- sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_BUSINESSUNITCODE));
|
|
|
+ if (requestDTO.getOrderOrigin() == 1) {
|
|
|
+ requestDTO.setCustomerCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_CUSTOMERCODE));
|
|
|
+ } else {
|
|
|
+ requestDTO.setBusinessUnitCode(sysConfigService.selectConfigByKey(SysConfigConstants.JD_LOGISTICS_BUSINESSUNITCODE));
|
|
|
+ }
|
|
|
requestDTO.setCancelReason(bizWaybillOrder.getCancelReason());
|
|
|
requestDTO.setCancelReasonCode("1");
|
|
|
requestDTO.setCancelType(1);
|
|
|
@@ -360,16 +366,16 @@ public class JDLogisticsService implements LogisticsService {
|
|
|
static {
|
|
|
// 订单来源为1的配置
|
|
|
Map<String, ProductConfig> origin1Config = new HashMap<>();
|
|
|
- origin1Config.put("isPack", new ProductConfig("ed-a-0002", true));
|
|
|
- origin1Config.put("guaranteeMoney", new ProductConfig("ed-a-0010", true));
|
|
|
- origin1Config.put("isReceiptCollect", new ProductConfig("ed-a-0011", false));
|
|
|
+ origin1Config.put("isPack", new ProductConfig("ed-a-0011", false, true));
|
|
|
+ origin1Config.put("guaranteeMoney", new ProductConfig("ed-a-0002", true, false));
|
|
|
+ origin1Config.put("isReceiptCollect", new ProductConfig("ed-a-0010", true, true));
|
|
|
SERVICE_CONFIG_MAP.put(1, origin1Config);
|
|
|
|
|
|
// 订单来源为4的配置
|
|
|
Map<String, ProductConfig> origin4Config = new HashMap<>();
|
|
|
- origin4Config.put("isPack", new ProductConfig("fr-a-0002", true));
|
|
|
- origin4Config.put("guaranteeMoney", new ProductConfig("fr-a-0007", true));
|
|
|
- origin4Config.put("isReceiptCollect", new ProductConfig("fr-a-0005", false));
|
|
|
+ origin4Config.put("isPack", new ProductConfig("fr-a-0005", false, true));
|
|
|
+ origin4Config.put("guaranteeMoney", new ProductConfig("fr-a-0002", true, false));
|
|
|
+ origin4Config.put("isReceiptCollect", new ProductConfig("fr-a-0007", true, true));
|
|
|
SERVICE_CONFIG_MAP.put(4, origin4Config);
|
|
|
}
|
|
|
|
|
|
@@ -379,10 +385,12 @@ public class JDLogisticsService implements LogisticsService {
|
|
|
private static class ProductConfig {
|
|
|
private final String productCode;
|
|
|
private final boolean hasAttrs;
|
|
|
+ private final boolean valueType;
|
|
|
|
|
|
- public ProductConfig(String productCode, boolean hasAttrs) {
|
|
|
+ public ProductConfig(String productCode, boolean hasAttrs, boolean valueType) {
|
|
|
this.productCode = productCode;
|
|
|
this.hasAttrs = hasAttrs;
|
|
|
+ this.valueType = valueType;
|
|
|
}
|
|
|
|
|
|
public String getProductCode() {
|
|
|
@@ -392,6 +400,10 @@ public class JDLogisticsService implements LogisticsService {
|
|
|
public boolean isHasAttrs() {
|
|
|
return hasAttrs;
|
|
|
}
|
|
|
+
|
|
|
+ public boolean getValueType() {
|
|
|
+ return valueType;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -418,6 +430,9 @@ public class JDLogisticsService implements LogisticsService {
|
|
|
for (Map.Entry<String, ProductConfig> entry : configMap.entrySet()) {
|
|
|
String serviceKey = entry.getKey();
|
|
|
ProductConfig config = entry.getValue();
|
|
|
+ if (StringUtils.isBlank(addedJson.getString(serviceKey))) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
|
|
|
// 检查JSON中是否包含该增值服务
|
|
|
if (addedJson.containsKey(serviceKey)) {
|