推送数据

dev
lzq 2026-02-10 16:34:14 +08:00
parent 3e052223e6
commit 45c2cc854f
1 changed files with 29 additions and 23 deletions

View File

@ -1275,6 +1275,7 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
Long orderId = truckLeavingOrderParam.getOrderId(); Long orderId = truckLeavingOrderParam.getOrderId();
OrderInfoEntity orderInfoEntity = this.getById(orderId); OrderInfoEntity orderInfoEntity = this.getById(orderId);
Long truckId = orderInfoEntity.getTruckId(); Long truckId = orderInfoEntity.getTruckId();
boolean result = false;
try { try {
Assert.notNull(orderInfoEntity, () -> Exceptions.clierr("订单不存在")); Assert.notNull(orderInfoEntity, () -> Exceptions.clierr("订单不存在"));
OrderStatus orderStatus = orderInfoEntity.getOrderStatus(); OrderStatus orderStatus = orderInfoEntity.getOrderStatus();
@ -1350,25 +1351,6 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
log.error("订单状态改变事件发布失败,订单{},状态{}", orderInfoEntity_.getSn(), newOrderStatus, e); log.error("订单状态改变事件发布失败,订单{},状态{}", orderInfoEntity_.getSn(), newOrderStatus, e);
return null; return null;
}); });
CompletableFuture.runAsync(() -> {
OrderPagingResult detail = this.detail(orderId);
HsoaResult<?> result = hsoaService.pushProvincialSave(detail);
HsoaRecode hsoaRecode = new HsoaRecode()
.setOrderId(orderId)
.setOrderSn(detail.getSn())
.setLicensePlate(detail.getLicensePlate())
.setPushType(PushType.LianDan);
if (result == null || !result.isSuccess()) {
Hsoa.relogin();
log.error("推送订单数据失败数据Id{}", entity.getId());
hsoaService.save(hsoaRecode.setSuccess(Boolean.FALSE));
} else {
hsoaService.save(hsoaRecode.setSuccess(Boolean.TRUE));
}
}).exceptionally(e -> {
log.error("推送订单数据失败数据Id{}", entity.getId(), e);
return null;
});
// 出厂付费 // 出厂付费
if (OrderCategory.PuTong.equals(orderInfoEntity.getOrderCategory()) && MoneyWay.OUT.getVal().equals(entity.getMoneyWay())) { if (OrderCategory.PuTong.equals(orderInfoEntity.getOrderCategory()) && MoneyWay.OUT.getVal().equals(entity.getMoneyWay())) {
@ -1376,12 +1358,13 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
// updateOrderItems(orderInfoEntity.getId(), settleWeight, Boolean.FALSE); // updateOrderItems(orderInfoEntity.getId(), settleWeight, Boolean.FALSE);
// 扣费 // 扣费
return handleCompanyPay(orderInfoEntity, Boolean.FALSE, new BigDecimal("0"), Boolean.FALSE); result = handleCompanyPay(orderInfoEntity, Boolean.FALSE, new BigDecimal("0"), Boolean.FALSE);
} else if (OrderCategory.DuanBoRu.equals(orderInfoEntity.getOrderCategory())) { } else if (OrderCategory.DuanBoRu.equals(orderInfoEntity.getOrderCategory())) {
// 扣费 // 扣费
return handleCompanyPay(orderInfoEntity, Boolean.FALSE, new BigDecimal("0"), Boolean.FALSE); result = handleCompanyPay(orderInfoEntity, Boolean.FALSE, new BigDecimal("0"), Boolean.FALSE);
} }
OrderPagingResult detail = this.detail(orderId);
pushData(detail);
} finally { } finally {
if (orderInfoEntity.getOrderCategory() != OrderCategory.DuanBoChu) { if (orderInfoEntity.getOrderCategory() != OrderCategory.DuanBoChu) {
// 关闭 GPS // 关闭 GPS
@ -1389,8 +1372,31 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
String gpsId = truckInfo.getGps(); String gpsId = truckInfo.getGps();
stopTrack(gpsId); stopTrack(gpsId);
} }
} }
return false; return result;
}
public void pushData(OrderPagingResult detail) {
Long orderId = detail.getId();
CompletableFuture.runAsync(() -> {
HsoaResult<?> result = hsoaService.pushProvincialSave(detail);
HsoaRecode hsoaRecode = new HsoaRecode()
.setOrderId(orderId)
.setOrderSn(detail.getSn())
.setLicensePlate(detail.getLicensePlate())
.setPushType(PushType.LianDan);
if (result == null || !result.isSuccess()) {
Hsoa.relogin();
log.error("推送订单数据失败数据Id{}", orderId);
hsoaService.save(hsoaRecode.setSuccess(Boolean.FALSE));
} else {
hsoaService.save(hsoaRecode.setSuccess(Boolean.TRUE));
}
}).exceptionally(e -> {
log.error("推送订单数据失败数据Id{}", orderId, e);
return null;
});
} }
/** /**