Pu Zhibing
2025-03-20 bc044659ae5fde6c1ab32e416db77d81ca2952d6
修改报表bug
1个文件已修改
98 ■■■■ 已修改文件
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java 98 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -1819,48 +1819,24 @@
                for (TChargingOrderAccountingStrategy temp : list2) {
                    switch (temp.getType()){
                        case 1:
                            if (temp.getChargingCapacity()!=null){
                                jian = jian.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                jianElectronic = jianElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                jianService = jianService.add(temp.getServiceCharge());
                            }
                            jian = jian.add(temp.getChargingCapacity());
                            jianElectronic = jianElectronic.add(temp.getPeriodElectricPrice()).add(temp.getPeriodServicePrice());
                            jianService = jianService.add(temp.getPeriodServicePrice());
                            break;
                        case 2:
                            if (temp.getChargingCapacity()!=null){
                                feng = feng.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                fengElectronic = fengElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                fengService = fengService.add(temp.getServiceCharge());
                            }
                            feng = feng.add(temp.getChargingCapacity());
                            fengElectronic = fengElectronic.add(temp.getPeriodElectricPrice()).add(temp.getPeriodServicePrice());
                            fengService = fengService.add(temp.getPeriodServicePrice());
                            break;
                        case 3:
                            if (temp.getChargingCapacity()!=null){
                                ping = ping.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                pingElectronic = pingElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                pingService = pingService.add(temp.getServiceCharge());
                            }
                            ping = ping.add(temp.getChargingCapacity());
                            pingElectronic = pingElectronic.add(temp.getPeriodElectricPrice()).add(temp.getPeriodServicePrice());
                            pingService = pingService.add(temp.getPeriodServicePrice());
                            break;
                        case 4:
                            if (temp.getChargingCapacity()!=null){
                                gu = gu.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                guElectronic = guElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                guService = guService.add(temp.getServiceCharge());
                            }
                            gu = gu.add(temp.getChargingCapacity());
                            guElectronic = guElectronic.add(temp.getPeriodElectricPrice()).add(temp.getPeriodServicePrice());
                            guService = guService.add(temp.getPeriodServicePrice());
                            break;
                    }
                }
@@ -1868,50 +1844,27 @@
                List<TChargingOrderAccountingStrategy> list2 = chargingOrderAccountingStrategies.stream().filter(e -> e.getChargingOrderId().equals(chargingOrderListVO.getId()))
                        .collect(Collectors.toList());
                for (TChargingOrderAccountingStrategy temp : list2) {
                    BigDecimal multiply = temp.getPeriodServicePrice().multiply(new BigDecimal("0.8"));
                    switch (temp.getType()){
                        case 1:
                            if (temp.getChargingCapacity()!=null){
                                jian = jian.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                jianElectronic = jianElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                jianService = jianService.add(temp.getServiceCharge().multiply(new BigDecimal("0.2").setScale(2,BigDecimal.ROUND_HALF_UP)));
                            }
                            jian = jian.add(temp.getChargingCapacity());
                            jianElectronic = jianElectronic.add(temp.getPeriodElectricPrice()).add(multiply);
                            jianService = jianService.add(multiply);
                            break;
                        case 2:
                            if (temp.getChargingCapacity()!=null){
                                feng = feng.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                fengElectronic = fengElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                fengService = fengService.add(temp.getServiceCharge().multiply(new BigDecimal("0.2").setScale(2,BigDecimal.ROUND_HALF_UP)));
                            }
                            feng = feng.add(temp.getChargingCapacity());
                            fengElectronic = fengElectronic.add(temp.getPeriodElectricPrice()).add(multiply);
                            fengService = fengService.add(multiply);
                            break;
                        case 3:
                            if (temp.getChargingCapacity()!=null){
                                ping = ping.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                pingElectronic = pingElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                pingService = pingService.add(temp.getServiceCharge().multiply(new BigDecimal("0.2").setScale(2,BigDecimal.ROUND_HALF_UP)));
                            }
                            ping = ping.add(temp.getChargingCapacity());
                            pingElectronic = pingElectronic.add(temp.getPeriodElectricPrice()).add(multiply);
                            pingService = pingService.add(multiply);
                            break;
                        case 4:
                            if (temp.getChargingCapacity()!=null){
                                gu = gu.add(temp.getChargingCapacity());
                            }
                            if (temp.getElectrovalence()!=null){
                                guElectronic = guElectronic.add(temp.getElectrovalence());
                            }
                            if (temp.getServiceCharge()!=null){
                                guService = guService.add(temp.getServiceCharge().multiply(new BigDecimal("0.2").setScale(2,BigDecimal.ROUND_HALF_UP)));
                            }
                            gu = gu.add(temp.getChargingCapacity());
                            guElectronic = guElectronic.add(temp.getPeriodElectricPrice()).add(multiply);
                            guService = guService.add(multiply);
                            break;
                    }
                }
@@ -1923,7 +1876,6 @@
        chargingOrderTimeVO.setElectrovalence(electrovalence.setScale(2, BigDecimal.ROUND_HALF_EVEN));
        chargingOrderTimeVO.setServiceCharge(serviceCharge.setScale(2, BigDecimal.ROUND_HALF_EVEN));
        // 计算尖峰平谷充电到账占比
        BigDecimal add = jianElectronic.add(fengElectronic).add(pingElectronic).add(guElectronic);
        // 计算尖峰平谷服务费占比
        BigDecimal add1 = jianService.add(fengService).add(pingService).add(guService);