|
|
@@ -952,26 +952,28 @@ public class DeliveryItemsServiceImpl extends ServiceImpl<DeliveryItemsMapper, D
|
|
|
List<BusinessOverpaymentItem> businessOverpaymentItemList = new ArrayList<>();
|
|
|
BigDecimal packageAmount = new BigDecimal("0.00");
|
|
|
List<OrderFees> orderFees = orderDescClient.getOrderFee(delivery.getSrcId());
|
|
|
+ List<DeliveryFees> deliveryFees = deliveryFeesService.list(new LambdaQueryWrapper<DeliveryFees>()
|
|
|
+ .eq(DeliveryFees::getPid, delivery.getId())
|
|
|
+ .eq(DeliveryFees::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(DeliveryFees::getIsDeleted, 0));
|
|
|
+ BigDecimal orderFeesAmount = new BigDecimal("0.00");
|
|
|
+ BigDecimal deliveryFeesAmount = new BigDecimal("0.00");
|
|
|
if (ObjectUtils.isNotNull(orderFees) && orderFees.size() > 0) {
|
|
|
- List<DeliveryFees> deliveryFees = deliveryFeesService.list(new LambdaQueryWrapper<DeliveryFees>()
|
|
|
- .eq(DeliveryFees::getPid, delivery.getId())
|
|
|
- .eq(DeliveryFees::getTenantId, AuthUtil.getTenantId())
|
|
|
- .eq(DeliveryFees::getIsDeleted, 0));
|
|
|
- if (ObjectUtils.isNotNull(deliveryFees) && deliveryFees.size() > 0) {
|
|
|
- BigDecimal orderFeesAmount = orderFees.stream().map(OrderFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
- BigDecimal deliveryFeesAmount = deliveryFees.stream().map(DeliveryFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
- packageAmount = orderFeesAmount.subtract(deliveryFeesAmount);
|
|
|
- }
|
|
|
- if (new BigDecimal("0.00").compareTo(packageAmount) != 0){
|
|
|
- BusinessOverpaymentItem overpaymentItem = new BusinessOverpaymentItem();
|
|
|
- overpaymentItem.setBillNo(delivery.getSrcOrderNo());
|
|
|
- overpaymentItem.setSrcOrderNo(delivery.getSysNo());
|
|
|
- overpaymentItem.setOrderNo(delivery.getSysNo());
|
|
|
- overpaymentItem.setSrcPid(delivery.getId());
|
|
|
- overpaymentItem.setSrcId(delivery.getId());
|
|
|
- overpaymentItem.setOverpayment(packageAmount);
|
|
|
- businessOverpaymentItemList.add(overpaymentItem);
|
|
|
- }
|
|
|
+ orderFeesAmount = orderFees.stream().map(OrderFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isNotNull(deliveryFees) && deliveryFees.size() > 0) {
|
|
|
+ deliveryFeesAmount = deliveryFees.stream().map(DeliveryFees::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+ }
|
|
|
+ packageAmount = orderFeesAmount.subtract(deliveryFeesAmount);
|
|
|
+ if (new BigDecimal("0.00").compareTo(packageAmount) != 0) {
|
|
|
+ BusinessOverpaymentItem overpaymentItem = new BusinessOverpaymentItem();
|
|
|
+ overpaymentItem.setBillNo(delivery.getSrcOrderNo());
|
|
|
+ overpaymentItem.setSrcOrderNo(delivery.getSysNo());
|
|
|
+ overpaymentItem.setOrderNo(delivery.getSysNo());
|
|
|
+ overpaymentItem.setSrcPid(delivery.getId());
|
|
|
+ overpaymentItem.setSrcId(delivery.getId());
|
|
|
+ overpaymentItem.setOverpayment(packageAmount);
|
|
|
+ businessOverpaymentItemList.add(overpaymentItem);
|
|
|
}
|
|
|
|
|
|
//获取溢付款金额 溢付款金额等于发货数量-到货数量的值 乘以单价 等于溢付款
|