|
|
@@ -2538,48 +2538,8 @@ public class LiveOrderServiceImpl implements ILiveOrderService {
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public R syncExpress(Long id) {
|
|
|
- LiveOrder order = baseMapper.selectLiveOrderByOrderId(String.valueOf(id));
|
|
|
- String lastFourNumber = "";
|
|
|
- if (order.getDeliveryCode().equals(ShipperCodeEnum.SF.getValue()) || order.getDeliveryCode().equals(ShipperCodeEnum.ZTO.getValue())) {
|
|
|
- lastFourNumber = PhoneUtils.getLastFourNum(order.getUserPhone());
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- List<FsStoreDelivers> byOrderId = fsStoreDeliversMapper.findByOrderIdWithType(order.getOrderId(),1);
|
|
|
- if (byOrderId.isEmpty()) {
|
|
|
- return R.error("当前账号没有快递记录!");
|
|
|
- }
|
|
|
- String orderCode = order.getOrderCode();
|
|
|
-
|
|
|
- for (FsStoreDelivers fsStoreDelivers : byOrderId) {
|
|
|
- if (ObjectUtil.isNotEmpty(fsStoreDelivers.getDeliverId())) {
|
|
|
-
|
|
|
- ExpressInfoDTO dto = null;
|
|
|
- try {
|
|
|
- // 记录HTTP请求前的信息
|
|
|
- log.info("开始调用快递查询接口, 订单号: {}, 快递公司编码: {}, 快递单号: {}, 手机号后四位: {}",
|
|
|
- orderCode, fsStoreDelivers.getDeliverId(), fsStoreDelivers.getDeliverSn(), lastFourNumber);
|
|
|
- dto = expressService.getExpressInfo(orderCode,
|
|
|
- fsStoreDelivers.getDeliverSn(), fsStoreDelivers.getDeliverId(), lastFourNumber);
|
|
|
- // 假设expressService.getExpressInfo内部进行了HTTP请求,你需要在expressService内部打印更详细的日志
|
|
|
- // 这里只记录返回结果
|
|
|
- if (ObjectUtil.isNotNull(dto)) {
|
|
|
- log.info("快递查询接口调用成功, 订单号: {}, 快递状态: {}, 扩展状态: {}",
|
|
|
- orderCode, dto.getState(), dto.getStateEx());
|
|
|
- fsStoreDelivers.setStatus(Integer.valueOf(dto.getState()));
|
|
|
- fsStoreDelivers.setStateEx(Integer.valueOf(dto.getStateEx()));
|
|
|
- } else {
|
|
|
- log.warn("快递查询接口调用成功,但返回结果为空, 订单号: {}", orderCode);
|
|
|
- }
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("快递查询接口调用失败, 订单号: {}, 快递单号: {}, 错误信息: {}", orderCode, fsStoreDelivers.getDeliverSn(), e.getMessage(), e);
|
|
|
- }
|
|
|
- } else {
|
|
|
- log.info("发货单信息中快递ID为空, 跳过处理, 发货单ID: {}", fsStoreDelivers.getId());
|
|
|
- }
|
|
|
- }
|
|
|
- fsStoreDeliversMapper.updateBatch(byOrderId);
|
|
|
-
|
|
|
+ fsStoreDeliversService.syncDeliverInfo(id,1);
|
|
|
+ fsStoreDeliversService.finishOrder(id,1);
|
|
|
// FsStoreDelivers delivers = byOrderId.get(0);
|
|
|
//
|
|
|
// ExpressInfoDTO dto = expressService.getExpressInfo(order.getOrderCode(), delivers.getDeliverSn(), delivers.getDeliverId(), lastFourNumber);
|