liujie
2026-05-19 26043931d294d84ff7ef0305bf7879f74d70afdd
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java
@@ -172,6 +172,9 @@
                }
            }
            tChargingOrderExport.setPaymentMethod(getPaymentMethod(chargingOrderListVO));
            tChargingOrderExport.setCashPayAmount(formatMoney(getCashPayAmount(chargingOrderListVO)));
            tChargingOrderExport.setBalancePayAmount(formatMoney(getBalancePayAmount(chargingOrderListVO)));
            if (chargingOrderListVO.getCreateTime()!=null){
                String s1 = DateUtils.localDateTimeToString(chargingOrderListVO.getCreateTime());
                tChargingOrderExport.setCreateTime(s1);
@@ -218,7 +221,6 @@
            tChargingOrderExport.setServiceChargePrice("");
            tChargingOrderExport.setServiceChargePriceLook("");
            tChargingOrderExport.setCumulativeChargingTime(chargingOrderListVO.getChargingSecond() + "");
            tChargingOrderExport.setRechargeAmount(chargingOrderListVO.getRechargeAmount().toString());
            tChargingOrderExport.setRefundAmount(null != chargingOrderListVO.getRefundAmount() ? chargingOrderListVO.getRefundAmount().toString() : "");
            tChargingOrderExport.setStartSoc(chargingOrderListVO.getStartSoc());
            tChargingOrderExport.setEndtSoc(chargingOrderListVO.getEndSoc());
@@ -245,21 +247,18 @@
            TAppUserCar tAppUserCar = data8.stream().filter(e -> e.getId().equals(chargingOrderListVO.getAppUserId())).findFirst().orElse(null);
            if (tAppUserCar!=null){
                tChargingOrderExport.setCarNumber(tAppUserCar.getLicensePlate());
                tChargingOrderExport.setCarType(tAppUserCar.getVehicleModel());
                tChargingOrderExport.setCarBrand(tAppUserCar.getVehicleBrand());
            }
            tChargingOrderExport.setBalanceIncome(formatMoney(chargingOrderListVO.getBalanceIncome()));
            tChargingOrderExport.setBalanceGiftIncome(formatMoney(chargingOrderListVO.getBalanceGiftIncome()));
            tChargingOrderExport.setTripartiteCommission(formatMoney(chargingOrderListVO.getSharingAmount()));
            tChargingOrderExport.setOrderCode(chargingOrderListVO.getStartChargeSeq());
            tChargingOrderExport.setIsSingle("是");
            tChargingOrderExport.setPayTime(chargingOrderListVO.getPayTime()+"");
            tChargingOrderExport.setElectrovalenceSiteName("四川明星新能源科技有限公司");
            tChargingOrderExport.setCompanyNameAdmin("四川明星新能源科技有限公司");
            tChargingOrderExport.setMoneyType("线上计费");
            tChargingOrderExport.setDeviceType("设备直连(自由集控)");
            tChargingOrderExport.setSettlementCompanyName("四川明星新能源科技有限公司");
            tChargingOrderExport.setPrePaymentType("先付后退");
            tChargingOrderExport.setIsSecurity("是");
            tChargingOrderExport.setSharingAmount(formatMoney(chargingOrderListVO.getSharingAmount()));
            tChargingOrderExport.setIsWhitelist(Integer.valueOf(1).equals(chargingOrderListVO.getIsWhitelist()) ? "是" : "否");
            tChargingOrderExport.setWhitelistElectricRefundAmount(formatMoney(chargingOrderListVO.getWhitelistElectricRefundAmount()));
            tChargingOrderExport.setWhitelistServiceRefundAmount(formatMoney(chargingOrderListVO.getWhitelistServiceRefundAmount()));
            tChargingOrderExports.add(tChargingOrderExport);
            i++;
        }
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TChargingOrderExport.class, tChargingOrderExports);
        HttpServletResponse response = WebUtils.response();
@@ -283,6 +282,59 @@
                e.printStackTrace();
            }
        }
    }
    private String getPaymentMethod(ChargingOrderListVO chargingOrderListVO) {
        Integer payMethod = chargingOrderListVO.getPayMethod();
        String thirdPayName = getThirdPayName(chargingOrderListVO.getRechargePaymentType());
        if (Integer.valueOf(1).equals(payMethod)) {
            return "余额支付";
        }
        if (Integer.valueOf(2).equals(payMethod)) {
            return thirdPayName.isEmpty() ? "余额支付" : "余额支付+" + thirdPayName;
        }
        if (Integer.valueOf(3).equals(payMethod)) {
            return thirdPayName;
        }
        return thirdPayName;
    }
    private String getThirdPayName(Integer rechargePaymentType) {
        if (Integer.valueOf(1).equals(rechargePaymentType)) {
            return "微信支付";
        }
        if (Integer.valueOf(2).equals(rechargePaymentType) || Integer.valueOf(3).equals(rechargePaymentType)) {
            return "支付宝支付";
        }
        return "";
    }
    private BigDecimal getCashPayAmount(ChargingOrderListVO chargingOrderListVO) {
        if (chargingOrderListVO.getThirdPayAmount() != null) {
            return chargingOrderListVO.getThirdPayAmount();
        }
        if (Integer.valueOf(3).equals(chargingOrderListVO.getPayMethod())) {
            return nullToZero(chargingOrderListVO.getPaymentAmount());
        }
        return BigDecimal.ZERO;
    }
    private BigDecimal getBalancePayAmount(ChargingOrderListVO chargingOrderListVO) {
        if (chargingOrderListVO.getBalancePayAmount() != null) {
            return chargingOrderListVO.getBalancePayAmount();
        }
        if (Integer.valueOf(1).equals(chargingOrderListVO.getPayMethod())) {
            return nullToZero(chargingOrderListVO.getPaymentAmount());
        }
        return BigDecimal.ZERO;
    }
    private BigDecimal nullToZero(BigDecimal amount) {
        return amount == null ? BigDecimal.ZERO : amount;
    }
    private String formatMoney(BigDecimal amount) {
        return nullToZero(amount).setScale(2, RoundingMode.HALF_UP).toPlainString();
    }
    
    
@@ -356,4 +408,3 @@
    }
}