|
@@ -49,12 +49,31 @@ public class KuaiDiNiaoServiceImpl implements KuaiDiNiaoService {
|
|
|
*/
|
|
|
@Value("${kuaidianiao.key}")
|
|
|
private String apiKey;
|
|
|
+
|
|
|
/**
|
|
|
* 快递鸟请求地址
|
|
|
*/
|
|
|
@Value("${kuaidianiao.apiUrl}")
|
|
|
private String url;
|
|
|
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 快递鸟apiId
|
|
|
+ */
|
|
|
+ @Value("${kuaidianiao.kuaidi.id}")
|
|
|
+ private String kuaiDiId;
|
|
|
+ /**
|
|
|
+ * 快递鸟apiKey
|
|
|
+ */
|
|
|
+ @Value("${kuaidianiao.kuaidi.key}")
|
|
|
+ private String kuaiDiKey;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 快递鸟请求地址
|
|
|
+ */
|
|
|
+ @Value("${kuaidianiao.kuaidi.apiUrl}")
|
|
|
+ private String kuaiDiUrl;
|
|
|
+
|
|
|
@Autowired
|
|
|
private OrderSendManager orderSendManager;
|
|
|
|
|
@@ -113,10 +132,10 @@ public class KuaiDiNiaoServiceImpl implements KuaiDiNiaoService {
|
|
|
}
|
|
|
Map dataMap = JSON.parseObject(JSON.toJSONString(map.get("data")), Map.class);
|
|
|
createStoreModel.setKdnStoreCode(dataMap.get("kdnStoreCode").toString());
|
|
|
- if (ObjectUtil.isNotNull(modelId)){
|
|
|
+ if (ObjectUtil.isNotNull(modelId)) {
|
|
|
createStoreModel.setId(modelId);
|
|
|
kdnMapper.updateById(createStoreModel);
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
kdnMapper.insert(createStoreModel);
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
@@ -133,7 +152,7 @@ public class KuaiDiNiaoServiceImpl implements KuaiDiNiaoService {
|
|
|
@Override
|
|
|
public void selectAudit(CreateStoreModel createStoreModel) {
|
|
|
Map<String, Object> hashMap = new HashMap<>();
|
|
|
- hashMap.put("storeCode",createStoreModel.getStoreCode());
|
|
|
+ hashMap.put("storeCode", createStoreModel.getStoreCode());
|
|
|
try {
|
|
|
String design = URLEncoder.encode(Base64.encode(DigestUtil.md5Hex(JSONUtil.toJsonStr(hashMap) + apiKey)), "UTF-8");
|
|
|
System.out.println("获取门店状态签名--------------------------------------" + design);
|
|
@@ -170,6 +189,47 @@ public class KuaiDiNiaoServiceImpl implements KuaiDiNiaoService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 订阅就行了,订阅成功与否均不影响货物的正常派发
|
|
|
+ *
|
|
|
+ * @param logistics
|
|
|
+ * @param logisticsType
|
|
|
+ * @param userPhone
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public void queryLogistics(String logistics, String logisticsType, String userPhone) {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ map.put("ShipperCode", logisticsType);
|
|
|
+ map.put("LogisticCode", logistics);
|
|
|
+ map.put("CustomerName", userPhone);
|
|
|
+ String design = null;
|
|
|
+ try {
|
|
|
+ design = URLEncoder.encode(Base64.encode(DigestUtil.md5Hex(JSONUtil.toJsonStr(map) + apiKey)), "UTF-8");
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ }
|
|
|
+ Map<String, Object> paramMap = new HashMap<>();
|
|
|
+ paramMap.put("RequestData", map);
|
|
|
+ paramMap.put("DataType", 2);
|
|
|
+ paramMap.put("EBusinessID", kuaiDiId);
|
|
|
+ paramMap.put("DataSign", design);
|
|
|
+ paramMap.put("RequestType", KdConstants.orderLogistics);
|
|
|
+ //发请求
|
|
|
+ String res = HttpUtil.post(kuaiDiUrl, paramMap);
|
|
|
+ log.info(logistics + "快递鸟轨迹订阅" + res);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void kdnReturnBackLogistics(Map map) {
|
|
|
+ OrderSendDO sendDO = orderSendManager.getOne(new LambdaQueryWrapper<OrderSendDO>().eq(OrderSendDO::getLogisticsCode, map.get("LogisticCode").toString()).last("limit 1"));
|
|
|
+ if (ObjectUtil.isNotNull(sendDO)) {
|
|
|
+ List<Map> maps = JSON.parseArray(JSON.toJSONString(map.get("Traces")), Map.class);
|
|
|
+ sendDO.setLogistics(maps);
|
|
|
+ }
|
|
|
+ orderSendManager.updateById(sendDO);
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* @param dataJson 业务参数
|
|
@@ -244,7 +304,7 @@ public class KuaiDiNiaoServiceImpl implements KuaiDiNiaoService {
|
|
|
*/
|
|
|
|
|
|
@Override
|
|
|
- public resReturnBackBase kdnReturnBack(ReturnBackBase returnBackBase) {
|
|
|
+ public resReturnBackBase kdnReturnBack(ReturnBackInstant returnBackBase) {
|
|
|
Map map = JSON.parseObject(returnBackBase.getRequestData(), Map.class);
|
|
|
resReturnBackBase base = new resReturnBackBase();
|
|
|
base.setKdnOrderCode(map.get("kdnOrderCode").toString());
|