1
This commit is contained in:
@@ -715,19 +715,29 @@ public class JDOrderController extends BaseController {
|
||||
logger.info("手动获取物流信息 - 订单ID: {}, 订单号: {}, 分销标识: {}, 物流链接: {}",
|
||||
orderId, order.getOrderId(), distributionMark, logisticsLink);
|
||||
|
||||
// 调用外部接口
|
||||
// 构建外部接口URL
|
||||
String externalUrl = "http://192.168.8.88:5001/fetch_logistics?tracking_url=" +
|
||||
java.net.URLEncoder.encode(logisticsLink, "UTF-8");
|
||||
|
||||
logger.info("调用外部接口 - URL: {}", externalUrl);
|
||||
logger.info("准备调用外部接口 - URL: {}", externalUrl);
|
||||
|
||||
String result = "";
|
||||
// 在服务端执行HTTP请求
|
||||
String result = null;
|
||||
try {
|
||||
// 使用HttpUtils在服务端发起GET请求
|
||||
result = HttpUtils.sendGet(externalUrl);
|
||||
logger.info("外部接口返回 - 订单ID: {}, 订单号: {}, 返回数据: {}",
|
||||
orderId, order.getOrderId(), result);
|
||||
|
||||
// 检查返回结果是否为空
|
||||
if (result == null || result.trim().isEmpty()) {
|
||||
logger.warn("外部接口返回空结果 - 订单ID: {}, 订单号: {}", orderId, order.getOrderId());
|
||||
return AjaxResult.error("外部接口返回空结果,请检查接口是否正常");
|
||||
}
|
||||
|
||||
logger.info("外部接口调用成功 - 订单ID: {}, 订单号: {}, 返回数据长度: {}",
|
||||
orderId, order.getOrderId(), result.length());
|
||||
logger.debug("外部接口返回数据: {}", result);
|
||||
} catch (Exception e) {
|
||||
logger.error("调用外部接口失败 - 订单ID: {}, 订单号: {}, 错误: {}",
|
||||
logger.error("调用外部接口异常 - 订单ID: {}, 订单号: {}, 错误: {}",
|
||||
orderId, order.getOrderId(), e.getMessage(), e);
|
||||
return AjaxResult.error("调用外部接口失败: " + e.getMessage());
|
||||
}
|
||||
@@ -742,25 +752,26 @@ public class JDOrderController extends BaseController {
|
||||
logger.info("返回数据: {}", result);
|
||||
logger.info("=====================================");
|
||||
|
||||
// 解析返回结果
|
||||
// 解析返回结果并构建响应
|
||||
JSONObject responseData = new JSONObject();
|
||||
responseData.put("orderId", orderId);
|
||||
responseData.put("orderNo", order.getOrderId());
|
||||
responseData.put("distributionMark", distributionMark);
|
||||
responseData.put("logisticsLink", logisticsLink);
|
||||
responseData.put("requestUrl", externalUrl);
|
||||
responseData.put("responseRaw", result); // 原始返回数据
|
||||
|
||||
try {
|
||||
// 尝试解析为JSON
|
||||
Object parsed = JSON.parse(result);
|
||||
responseData.put("responseData", parsed);
|
||||
responseData.put("responseRaw", result);
|
||||
logger.info("返回数据已解析为JSON对象");
|
||||
} catch (Exception e) {
|
||||
// 如果不是JSON,直接保存原始字符串
|
||||
responseData.put("responseRaw", result);
|
||||
logger.warn("返回数据不是有效的JSON格式: {}", result);
|
||||
// 如果不是JSON,只保存原始字符串
|
||||
logger.warn("返回数据不是有效的JSON格式,将作为原始字符串返回: {}", e.getMessage());
|
||||
}
|
||||
|
||||
logger.info("返回响应数据给前端 - 订单ID: {}", orderId);
|
||||
return AjaxResult.success(responseData);
|
||||
} catch (Exception e) {
|
||||
logger.error("手动获取物流信息异常", e);
|
||||
|
||||
Reference in New Issue
Block a user