luodangjia
2024-10-31 e25b31c6abf9b26f2b61768ad6039961574b10a1
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java
@@ -91,6 +91,7 @@
        chargingBillVO.setOrderCount(list1.size());
        BigDecimal paymentAmountTotal = new BigDecimal("0");
        BigDecimal orderAmountTotal = new BigDecimal("0");
        BigDecimal refundAmountTotal = new BigDecimal("0");
        BigDecimal electrovalenceTotal = new BigDecimal("0");
        BigDecimal serviceChargeTotal = new BigDecimal("0");
        BigDecimal commissionAmountTotal = new BigDecimal("0");
@@ -248,11 +249,11 @@
                    }
                }
                if (data3!=null)tChargingOrder.setUserName(data3.getName());
                // 累加实收金额
                // 累加实收金额 支付结算金额
                if (tChargingOrder.getOrderAmount()!=null){
                    paymentAmount = paymentAmount.add(tChargingOrder.getOrderAmount());
                }
                // 累加订单金额
                // 入账金额
                if (tChargingOrder.getOrderAmount()!=null){
                    orderAmount = orderAmount.add(tChargingOrder.getOrderAmount());
                }
@@ -263,7 +264,7 @@
                List<TChargingOrderRefund> list2 = chargingOrderRefundService.lambdaQuery().eq(TChargingOrderRefund::getRefundStatus, 2)
                        .eq(TChargingOrderRefund::getChargingOrderId, tChargingOrder.getId()).list();
                for (TChargingOrderRefund tChargingOrderRefund : list2) {
                    refundAmount = refundAmount.add(tChargingOrderRefund.getRefundAmount());
                    refundAmount = refundAmount.add(tChargingOrderRefund.getRefundTotalAmount());
                }
                // 累加累计服务费
                if (tChargingOrder.getServiceCharge()!=null){
@@ -298,8 +299,8 @@
                    .subtract(chargingBillVO.getCommissionAmount()==null?BigDecimal.ZERO:chargingBillVO.getCommissionAmount())
                    .subtract(chargingBillVO.getSharingAmount()==null?BigDecimal.ZERO:chargingBillVO.getSharingAmount()));
            chargingBillListVO.setPaymentAmount(paymentAmount == null?BigDecimal.ZERO:paymentAmount);
            chargingBillListVO.setOrderAmount(orderAmount == null?BigDecimal.ZERO:orderAmount);
            chargingBillListVO.setRefundAmount(refundAmount == null?BigDecimal.ZERO:orderAmount);
            chargingBillListVO.setOrderAmount(orderAmount == null?BigDecimal.ZERO:orderAmount.subtract(refundAmount).subtract(commissionAmount).subtract(sharingAmount));
            chargingBillListVO.setRefundAmount(refundAmount == null?BigDecimal.ZERO:refundAmount);
            chargingBillListVO.setElectrovalence(electrovalence == null?BigDecimal.ZERO:electrovalence);
            chargingBillListVO.setServiceCharge(serviceCharge == null?BigDecimal.ZERO:serviceCharge);
            chargingBillListVO.setCommissionAmount(commissionAmount == null?BigDecimal.ZERO:commissionAmount.setScale(2, RoundingMode.HALF_DOWN));
@@ -364,6 +365,7 @@
                }else if (tChargingOrder.getPaymentAmount()!=null){
                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount());
                }
                // 累加订单金额
                if (tChargingOrder.getOrderAmount()!=null){
                    orderAmountTotal = orderAmountTotal.add(tChargingOrder.getOrderAmount());
@@ -372,8 +374,10 @@
                if (tChargingOrder.getElectrovalence()!=null){
                    electrovalenceTotal = electrovalenceTotal.add(tChargingOrder.getElectrovalence());
                }
                if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus()!=null&&  tChargingOrder.getRefundStatus()==2){
                    refundAmount = refundAmount.add(tChargingOrder.getRefundAmount());
                List<TChargingOrderRefund> list2 = chargingOrderRefundService.lambdaQuery().eq(TChargingOrderRefund::getChargingOrderId, tChargingOrder.getId())
                        .eq(TChargingOrderRefund::getRefundStatus, 2).list();
                for (TChargingOrderRefund tChargingOrderRefund : list2) {
                    refundAmountTotal =refundAmountTotal.add(tChargingOrder.getRefundAmount());
                }
                // 累加累计服务费
                if (tChargingOrder.getServiceCharge()!=null){
@@ -410,7 +414,7 @@
        chargingBillVO.setCommissionAmount(commissionAmountTotal.setScale(2, RoundingMode.HALF_DOWN));
        chargingBillVO.setSharingAmount(sharingAmountTotal.setScale(2, RoundingMode.HALF_DOWN));
        chargingBillVO.setDiscount(discountTotal);
        chargingBillVO.setRefundAmount(refundAmountTotal);
        pageInfo.setRecords(list);
        chargingBillVO.setList(pageInfo);