From c97b518d5fbb570817ca835e96c1b8aa49b099e1 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期三, 23 十月 2024 19:15:12 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java | 40 +++++++------------- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderChargingInfo.java | 16 +++++++ ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java | 3 + ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java | 1 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java | 2 + ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 13 ++++-- 6 files changed, 43 insertions(+), 32 deletions(-) diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java index b991d8e..a02ee90 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TOrderAppealVO.java @@ -13,7 +13,8 @@ @ApiModelProperty(value = "uid") private String uid; - + @ApiModelProperty(value = "orderIdStr") + private String orderIdStr; @ApiModelProperty(value = "充电订单") private TChargingOrder chargingOrder; diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java index f10fe03..6288179 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java @@ -75,6 +75,7 @@ ChargingBillVO res = chargingBillService.chargingBillList1(dto); List<ChargingBillListVO> records = res.getList().getRecords(); accountListVO.setBillCount(records.size()); + accountListVO.setTotalAmount(res.getOrderAmount()); accountListVO.setPaymentAmount(res.getPaymentAmount()); accountListVO.setRefundAmount(res.getRefundAmount()); accountListVO.setCommissionAmount(res.getCommissionAmount()); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java index b5458b9..401f10d 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java @@ -265,10 +265,15 @@ Long count = chargingOrderAccountingStrategyService.lambdaQuery().eq(TChargingOrderAccountingStrategy::getChargingOrderId, orderId).count(); payOrderChargingInfo.setPeriodCount(count); - List<Long> carid = new ArrayList<>(); - carid.add(byId.getAppUserCarId()); - R<List<TAppUserCar>> carByIds = appUserCarClient.getCarByIds(carid); - payOrderChargingInfo.setCarNum(carByIds.getData().get(0).getLicensePlate()); + if (byId.getAppUserCarId()!=null) { + List<Long> carid = new ArrayList<>(); + carid.add(byId.getAppUserCarId()); + R<List<TAppUserCar>> carByIds = appUserCarClient.getCarByIds(carid); + payOrderChargingInfo.setCarNum(carByIds.getData().get(0).getLicensePlate()); + } + payOrderChargingInfo.setStartTime(byId.getStartTime()); + payOrderChargingInfo.setEndTime(byId.getEndTime()); + payOrderChargingInfo.setTimeCount(payOrderChargingInfo.calculateDuration()); return R.ok(payOrderChargingInfo); } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderChargingInfo.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderChargingInfo.java index 9d0b2cd..32db2d9 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderChargingInfo.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderChargingInfo.java @@ -5,7 +5,7 @@ import com.ruoyi.order.api.model.TChargingOrder; import io.swagger.annotations.ApiModelProperty; import lombok.Data; - +import java.time.Duration; import java.math.BigDecimal; import java.time.LocalDateTime; @@ -37,4 +37,18 @@ private String carNum; private TChargingOrder tChargingOrder; private Long periodCount; + private String timeCount; + public String calculateDuration() { + if (startTime == null || endTime == null) { + return "00:00:00"; + } + + Duration duration = Duration.between(startTime, endTime); + long totalSeconds = duration.getSeconds(); + long hours = totalSeconds / 3600; + long minutes = (totalSeconds % 3600) / 60; + long seconds = totalSeconds % 60; + + return String.format("%02d:%02d:%02d", hours, minutes, seconds); + } } 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 4bd5a2e..3ce44cb 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 @@ -199,7 +199,7 @@ } BigDecimal add = tChargingOrder.getElectrovalence().add(tChargingOrder.getServiceCharge()); tChargingOrder.setTotalAmount(add.toString()); - tChargingOrder.setDiscount(tChargingOrder.getCouponDiscountAmount().toString()); + tChargingOrder.setDiscount(tChargingOrder.getCouponDiscountAmount()!=null?tChargingOrder.getCouponDiscountAmount().toString():"0"); UploadRealTimeMonitoringData data5 = uploadRealTimeMonitoringDataClient.chargingOrderInfo(tChargingOrder.getCode()).getData(); if (data5!=null){ if (data5.getTime_remaining()!=null){ @@ -236,10 +236,7 @@ } if (data3!=null)tChargingOrder.setUserName(data3.getName()); // 累加实收金额 支付金额减去退款金额 - if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){ - paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount()); - - }else if (tChargingOrder.getPaymentAmount()!=null){ + if (tChargingOrder.getPaymentAmount()!=null){ paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()); } // 累加订单金额 @@ -250,7 +247,7 @@ if (tChargingOrder.getElectrovalence()!=null){ electrovalence = electrovalence.add(tChargingOrder.getElectrovalence()); } - if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus() == 2){ + if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus()!=null && tChargingOrder.getRefundStatus()== 2){ refundAmount = refundAmount.add(tChargingOrder.getRefundAmount()); } // 累加累计服务费 @@ -258,8 +255,9 @@ serviceCharge = serviceCharge.add(tChargingOrder.getServiceCharge()); } // 累加平台手续费 - if (tChargingOrder.getCommissionAmount()!=null){ - commissionAmount = commissionAmount.add(tChargingOrder.getCommissionAmount()); + if (tChargingOrder.getServiceCharge()!=null){ + commissionAmount = commissionAmount.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.006)) + .setScale(2,RoundingMode.HALF_DOWN)); } // 累加平台分佣 if (tChargingOrder.getSharingAmount()!=null){ @@ -287,6 +285,7 @@ .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.setElectrovalence(electrovalence == null?BigDecimal.ZERO:electrovalence); chargingBillListVO.setServiceCharge(serviceCharge == null?BigDecimal.ZERO:serviceCharge); chargingBillListVO.setCommissionAmount(commissionAmount == null?BigDecimal.ZERO:commissionAmount); @@ -312,9 +311,6 @@ chargingBillListVO.setChargingSecond(chargingSecond); } for (ChargingBillListVO chargingBillListVO : list1) { - - - LocalDateTime billTime = chargingBillListVO.getBillTime(); // 将其转化为yyyy-MM格式字符串 chargingBillVO.setCreateTime(billTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); @@ -343,14 +339,6 @@ eq.eq("site_id", chargingBillListVO.getSiteId()); } List<TChargingOrder> tChargingOrders = chargingOrderList.selectList(eq); - int chargingSecond = 0; - BigDecimal paymentAmount = new BigDecimal("0"); - BigDecimal orderAmount = new BigDecimal("0"); - BigDecimal electrovalence = new BigDecimal("0"); - BigDecimal serviceCharge = new BigDecimal("0"); - BigDecimal commissionAmount = new BigDecimal("0"); - BigDecimal sharingAmount = new BigDecimal("0"); - BigDecimal chargingCapacity = new BigDecimal("0"); orderCount+=tChargingOrders.size(); chargingBillVO.setCategory(""); chargingBillVO.setExportList(tChargingOrders); @@ -358,7 +346,7 @@ // 累加实收金额 支付金额减去退款金额 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){ - paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount()); + paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()); }else if (tChargingOrder.getPaymentAmount()!=null){ paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()); @@ -589,7 +577,7 @@ if (data3!=null)tChargingOrder.setUserName(data3.getName()); // 累加实收金额 支付金额减去退款金额 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){ - paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount()); + paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()); }else if (tChargingOrder.getPaymentAmount()!=null){ paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()); @@ -610,8 +598,8 @@ serviceCharge = serviceCharge.add(tChargingOrder.getServiceCharge()); } // 累加平台手续费 - if (tChargingOrder.getCommissionAmount()!=null){ - commissionAmount = commissionAmount.add(tChargingOrder.getCommissionAmount()); + if (tChargingOrder.getServiceCharge()!=null){ + commissionAmount = commissionAmount.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.006)).setScale(2,RoundingMode.HALF_DOWN)); } // 累加平台分佣 if (tChargingOrder.getSharingAmount()!=null){ @@ -633,7 +621,7 @@ chargingBillListVO.setPaymentAmount(paymentAmount); chargingBillListVO.setOrderAmount(orderAmount); chargingBillListVO.setElectrovalence(electrovalence); - chargingBillListVO.setServiceCharge(serviceCharge); + chargingBillListVO.setServiceCharge(serviceCharge.setScale(2,RoundingMode.HALF_DOWN)); chargingBillListVO.setCommissionAmount(commissionAmount); chargingBillListVO.setSharingAmount(sharingAmount); chargingBillListVO.setChargingCapacity(chargingCapacity); @@ -696,8 +684,8 @@ for (TChargingOrder tChargingOrder : tChargingOrders) { // 累加实收金额 支付金额减去退款金额 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){ - paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount()); - paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount()); + paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()); + paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()); }else if (tChargingOrder.getPaymentAmount()!=null){ paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java index 544e9ff..e294a86 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderAppealServiceImpl.java @@ -76,6 +76,7 @@ TShoppingOrder tShoppingOrder = shoppingOrders.stream().filter(shoppingOrder -> shoppingOrder.getId().equals(item.getOrderId())).findFirst().orElse(null); setGoodsInfo(item,tShoppingOrder); } + item.setOrderIdStr(item.getOrderId().toString()); }); list.forEach(e->e.setUid(e.getId().toString())); pageInfo.setRecords(list); @@ -98,6 +99,7 @@ TShoppingOrder tShoppingOrder = shoppingOrderMapper.selectById(orderAppeal.getOrderId()); setGoodsInfo(orderAppealVO,tShoppingOrder); } + orderAppealVO.setOrderIdStr(orderAppealVO.getOrderId().toString()); return orderAppealVO; } -- Gitblit v1.7.1