dev
ljw 2026-02-10 17:39:04 +08:00
commit d51b56254e
2 changed files with 32 additions and 24 deletions

View File

@ -8,6 +8,8 @@ import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
@Getter
@Setter
@ToString
@ -23,5 +25,5 @@ public class HsoaRecode {
private Boolean success;
@TableField(fill = FieldFill.INSERT)
private String createTime;
private LocalDateTime createTime;
}

View File

@ -1277,6 +1277,7 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
Long orderId = truckLeavingOrderParam.getOrderId();
OrderInfoEntity orderInfoEntity = this.getById(orderId);
Long truckId = orderInfoEntity.getTruckId();
boolean result = false;
try {
Assert.notNull(orderInfoEntity, () -> Exceptions.clierr("订单不存在"));
OrderStatus orderStatus = orderInfoEntity.getOrderStatus();
@ -1352,25 +1353,6 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
log.error("订单状态改变事件发布失败,订单{},状态{}", orderInfoEntity_.getSn(), newOrderStatus, e);
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())) {
@ -1378,12 +1360,13 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
// 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())) {
// 扣费
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 {
if (orderInfoEntity.getOrderCategory() != OrderCategory.DuanBoChu) {
// 关闭 GPS
@ -1391,8 +1374,31 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
String gpsId = truckInfo.getGps();
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;
});
}
/**