From 78e90c78a3a8e7bd36a6ad343392fd41af077a89 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期四, 20 三月 2025 14:38:35 +0800 Subject: [PATCH] 修改报表bug --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java | 65 ++++++++++++++++++++------------ 1 files changed, 41 insertions(+), 24 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java index a9bcfb4..33ffeb3 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java @@ -103,8 +103,7 @@ List<TChargingPile> pileList = chargingGunClient.getAllPile().getData(); List<TAppUser> userList = appUserClient.getAllUser().getData(); List<TAppUserCar> carList = appUserCarClient.getAllCar().getData(); - List<TChargingOrder> total = chargingOrderList.selectList(new LambdaQueryWrapper<>(TChargingOrder.class) - .eq(TChargingOrder::getRechargePaymentStatus, 2).eq(TChargingOrder::getStatus, 5)); + List<TChargingOrder> total = chargingOrderList.selectList(new LambdaQueryWrapper<>(TChargingOrder.class)); List<TChargingOrderRefund> totalRefund = chargingOrderRefundService.lambdaQuery().eq(TChargingOrderRefund::getRefundStatus, 2).list(); Long userId = tokenService.getLoginUser().getUserid(); // 查询当前登陆人按钮权限 @@ -362,8 +361,8 @@ .setScale(2,BigDecimal.ROUND_DOWN)); } // 累加平台分佣 - if (tChargingOrder.getSharingAmount()!=null){ - sharingAmount = sharingAmount.add(tChargingOrder.getSharingAmount()); + if (tChargingOrder.getOrderSource()==2 && tChargingOrder.getServiceCharge()!=null){ + sharingAmount = sharingAmount.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.2)).setScale(2,BigDecimal.ROUND_DOWN)); } // 累加充电度数 if (tChargingOrder.getChargingCapacity()!=null){ @@ -411,11 +410,15 @@ BigDecimal bigDecimal = new BigDecimal("0"); int i = 0; for (ChargingBillListVO chargingBillListVO : list1) { - if (chargingBillListVO.getSiteId()!=0&&!siteIds.contains(chargingBillListVO.getSiteId())){ - continue; - } - if (chargingBillListVO.getType()==1){ - continue; + if (dto.getType() == 1){ + + }else{ + if (chargingBillListVO.getSiteId()!=0&&!siteIds.contains(chargingBillListVO.getSiteId())){ + continue; + } + if (chargingBillListVO.getType()==1){ + continue; + } } i++; LocalDateTime billTime = chargingBillListVO.getBillTime(); @@ -446,7 +449,6 @@ if (tChargingOrder.getOrderAmount()!=null){ paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()); } - // 累加订单金额 if (tChargingOrder.getRechargeAmount()!=null){ orderAmountTotal = orderAmountTotal.add(tChargingOrder.getRechargeAmount()); @@ -474,8 +476,8 @@ .setScale(2,BigDecimal.ROUND_DOWN)); } // 累加平台分佣 - if (tChargingOrder.getSharingAmount()!=null){ - sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getSharingAmount()); + if (tChargingOrder.getOrderSource()==2 && tChargingOrder.getServiceCharge()!=null){ + sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.2)).setScale(2,BigDecimal.ROUND_DOWN)); } // 累加充电度数 if (tChargingOrder.getElectricity()!=null){ @@ -531,8 +533,7 @@ startTime1 = split[0]; startTime2 = split[1]; } - List<TChargingOrder> total = chargingOrderList.selectList(new LambdaQueryWrapper<>(TChargingOrder.class) - .eq(TChargingOrder::getRechargePaymentStatus, 2).eq(TChargingOrder::getStatus, 5)); + List<TChargingOrder> total = chargingOrderList.selectList(new LambdaQueryWrapper<>(TChargingOrder.class)); PageInfo<ChargingBillListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize()); List<Site> data6 = siteClient.getSiteAll().getData(); List<TChargingGun> gunList = chargingGunClient.getAllGun().getData(); @@ -650,10 +651,14 @@ // 获取该月份的最后一天 LocalDateTime lastDayOfMonth = localDate.with(TemporalAdjusters.lastDayOfMonth()); LocalDateTime firstDayOfMonth = localDate.with(TemporalAdjusters.firstDayOfMonth()); - List<TChargingOrder> tChargingOrders = total.stream().filter(e -> chargingBillListVO.getType() == 2 ? - e.getSiteId().equals(chargingBillListVO.getSiteId()) : true && - e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59)) - && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList()); + List<TChargingOrder> tChargingOrders = new ArrayList<>(); + if (chargingBillListVO.getType() == 2){ + tChargingOrders = total.stream().filter(e -> e.getSiteId().equals(chargingBillListVO.getSiteId()) && e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59)) + && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList()); + }else{ + tChargingOrders = total.stream().filter(e -> e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59)) + && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList()); + } int chargingSecond = 0; BigDecimal paymentAmount = new BigDecimal("0"); BigDecimal orderAmount = new BigDecimal("0"); @@ -839,8 +844,15 @@ chargingBillListVO.setChargingSecond(chargingSecond); } for (ChargingBillListVO chargingBillListVO : list1) { - if (chargingBillListVO.getSiteId()!=0&&!siteIds.contains(chargingBillListVO.getSiteId())){ - continue; + if (dto.getType() == 1){ + + }else{ + if (chargingBillListVO.getSiteId()!=0&&!siteIds.contains(chargingBillListVO.getSiteId())){ + continue; + } + if (chargingBillListVO.getType()==1){ + continue; + } } if (roleType == 2){ if (chargingBillListVO.getSiteId()==0){ @@ -864,10 +876,15 @@ // 获取该月份的最后一天 LocalDateTime lastDayOfMonth = localDate.with(TemporalAdjusters.lastDayOfMonth()); LocalDateTime firstDayOfMonth = localDate.with(TemporalAdjusters.firstDayOfMonth()); - List<TChargingOrder> tChargingOrders = total.stream().filter(e -> chargingBillListVO.getType() == 2 ? - e.getSiteId().equals(chargingBillListVO.getSiteId()) : true && - e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59)) - && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList()); + + List<TChargingOrder> tChargingOrders = new ArrayList<>(); + if (chargingBillListVO.getType() == 2){ + tChargingOrders = total.stream().filter(e -> e.getSiteId().equals(chargingBillListVO.getSiteId()) && e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59)) + && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList()); + }else{ + tChargingOrders = total.stream().filter(e -> e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59)) + && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList()); + } orderCount+=tChargingOrders.size(); BigDecimal paymentAmount = new BigDecimal("0"); BigDecimal orderAmount = new BigDecimal("0"); -- Gitblit v1.7.1