From bb18fbb5291e13b0545b90e8d8641c8392f7a112 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 06 十一月 2024 16:25:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java | 3
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 27 +++++---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java | 10 +-
ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/TParkingRecordMapper.xml | 2
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java | 81 ++++++++++++++++++++++----
5 files changed, 93 insertions(+), 30 deletions(-)
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java
index e486dd2..6a65354 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java
@@ -76,7 +76,8 @@
}else{
tParkingRecordVO.setFeeDuration(tParkingRecordVO.getParkingDuration()-tParkingRecordVO.getFreeDuration());
}
-
+ tParkingRecordVO.setOrderAmount(tParkingRecordVO.getOrderAmount().add(tParkingRecordVO.getTimeoutAmount()));
+ tParkingRecordVO.setParkingFee(tParkingRecordVO.getOrderAmount());
}
pageInfo.setRecords(list);
// 查询总数
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/TParkingRecordMapper.xml b/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/TParkingRecordMapper.xml
index 3831658..354d63e 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/TParkingRecordMapper.xml
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/TParkingRecordMapper.xml
@@ -30,7 +30,7 @@
<select id="pageList" resultType="com.ruoyi.chargingPile.api.vo.TParkingRecordVO">
select
tpr.id, tpr.code,tpr.app_user_id, tpr.license_plate, tpr.vehicle_color, tpr.charging_order_id, tpr.parking_lot_id, tpr.in_parking_time, tpr.out_parking_time,
- tpr.parking_duration, tpr.order_amount, tpr.status, tpr.out_parking_type, tpr.create_time,(tpr.order_amount - tpr.timeout_amount) as parkingFee,tpr.timeout_amount,
+ tpr.parking_duration, tpr.order_amount, tpr.status, tpr.out_parking_type, tpr.create_time,(tpr.order_amount + tpr.timeout_amount) as parkingFee,tpr.timeout_amount,
tpr.free_duration,(tpr.parking_duration - tpr.free_duration) as feeDuration,ts.name as siteName
from t_parking_record tpr
left join t_parking_lot tpl on tpr.parking_lot_id = tpl.id
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 5f3c9f4..b377ae8 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
@@ -41,11 +41,9 @@
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjusters;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
+import java.util.stream.Collectors;
/**
* <p>
@@ -66,7 +64,63 @@
private SiteClient siteClient;
@Resource
private TChargingOrderService chargingOrderService;
-
+// @GetMapping(value = "/test")
+// public R accountAdd() {
+// TChargingBill tChargingBill = new TChargingBill();
+// Random random = new Random();
+// String randomDigits = random.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+// .mapToObj(String::valueOf)
+// .collect(Collectors.joining()); // 将其连接成一个字符串
+// tChargingBill.setCode("JSD"+randomDigits );
+// tChargingBill.setType(1);
+// tChargingBill.setSiteId(0);
+// tChargingBill.setBillTime(LocalDateTime.now().plusDays(1));
+// tChargingBill.setStatus(1);
+// tChargingBill.setOrderState(2);
+// tChargingBill.setBillType(1);
+// chargingBillService.save(tChargingBill);
+// TChargingBill tChargingBill1 = new TChargingBill();
+// Random random1 = new Random();
+// String randomDigits1 = random1.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+// .mapToObj(String::valueOf)
+// .collect(Collectors.joining()); // 将其连接成一个字符串
+// tChargingBill1.setCode("JSD"+randomDigits1);
+// tChargingBill1.setType(2);
+// tChargingBill1.setSiteId(13);
+// tChargingBill1.setBillTime(LocalDateTime.now().plusDays(1));
+// tChargingBill1.setStatus(1);
+// tChargingBill1.setOrderState(2);
+// tChargingBill1.setBillType(1);
+// chargingBillService.save(tChargingBill1);
+//
+// TChargingBill tChargingBil3 = new TChargingBill();
+// Random random2 = new Random();
+// String randomDigits2 = random2.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+// .mapToObj(String::valueOf)
+// .collect(Collectors.joining()); // 将其连接成一个字符串
+// tChargingBil3.setCode("JSD"+randomDigits2 );
+// tChargingBil3.setType(1);
+// tChargingBil3.setSiteId(0);
+// tChargingBil3.setBillTime(LocalDateTime.now().plusDays(1));
+// tChargingBil3.setStatus(1);
+// tChargingBil3.setOrderState(2);
+// tChargingBil3.setBillType(2);
+// chargingBillService.save(tChargingBil3);
+// TChargingBill tChargingBill14 = new TChargingBill();
+// Random random3 = new Random();
+// String randomDigits3 = random3.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+// .mapToObj(String::valueOf)
+// .collect(Collectors.joining()); // 将其连接成一个字符串
+// tChargingBill14.setCode("JSD"+randomDigits3);
+// tChargingBill14.setType(2);
+// tChargingBill14.setSiteId(13);
+// tChargingBill14.setBillTime(LocalDateTime.now().plusDays(1));
+// tChargingBill14.setStatus(1);
+// tChargingBill14.setOrderState(2);
+// tChargingBill14.setBillType(2);
+// chargingBillService.save(tChargingBill14);
+// return R.ok();
+// }
@PostMapping(value = "/accountBillList")
@ApiOperation(value = "列表查询", tags = {"管理后台-账户结算账单"})
public R<AccountListVO> accountBillList(@RequestBody ChargingListQuery dto) {
@@ -74,8 +128,7 @@
ChargingBillVO res = chargingBillService.chargingBillList1(dto);
List<ChargingBillListVO> records = res.getList().getRecords();
accountListVO.setBillCount(records.size());
- accountListVO.setTotalAmount(res.getPaymentAmount().subtract(res.getRefundAmount())
- .subtract(res.getCommissionAmount().setScale(2,BigDecimal.ROUND_DOWN)).subtract(res.getSharingAmount()).setScale(2, BigDecimal.ROUND_DOWN));
+ accountListVO.setTotalAmount(res.getPaymentAmount().subtract(res.getRefundAmount()).subtract(res.getCommissionAmount()).subtract(res.getSharingAmount()).setScale(2, BigDecimal.ROUND_DOWN));
accountListVO.setPaymentAmount(res.getPaymentAmount().setScale(2, BigDecimal.ROUND_DOWN));
accountListVO.setRefundAmount(res.getRefundAmount().setScale(2, BigDecimal.ROUND_DOWN));
accountListVO.setCommissionAmount(res.getCommissionAmount().setScale(2, BigDecimal.ROUND_DOWN));
@@ -287,6 +340,7 @@
BigDecimal paymentAmount = new BigDecimal("0");
BigDecimal refundAmount = new BigDecimal("0");
BigDecimal commissionAmount = new BigDecimal("0");
+ BigDecimal sharingAmount = new BigDecimal("0");
List<TChargingOrder> tChargingOrders = chargingOrderService.list(eq);
// 累加支付金额
@@ -296,9 +350,9 @@
int i =1;
for (TChargingOrder tChargingOrder : tChargingOrders) {
// 账单信息
- paymentAmount = paymentAmount.add(tChargingOrder.getChargeAmount());
- commissionAmount = commissionAmount.add(tChargingOrder.getPaymentAmount().multiply(bigDecimal1).setScale(2, BigDecimal.ROUND_DOWN))
- ;
+ paymentAmount = paymentAmount.add(tChargingOrder.getRechargeAmount());
+ commissionAmount = commissionAmount.add(tChargingOrder.getPaymentAmount().multiply(bigDecimal1).setScale(2, BigDecimal.ROUND_DOWN));
+ sharingAmount = sharingAmount.add(tChargingOrder.getSharingAmount());
// 退款信息
ChargingBillRefundExport chargingBillRefundExport = new ChargingBillRefundExport();
ChargingBillPayExport chargingBillPayExport = new ChargingBillPayExport();
@@ -342,11 +396,11 @@
chargingBillPayExport.setRechargeSerialNumber(tChargingOrder.getRechargeSerialNumber());
chargingBillPayExport.setCode(tChargingOrder.getCode());
chargingBillPayExport.setPayTime(tChargingOrder.getPayTime()!=null?DateUtils.parseDateToStr("yyyy-MM-dd HH:mm:ss",DateUtils.toDate(tChargingOrder.getPayTime())):"");
- chargingBillPayExport.setPaymentAmount(tChargingOrder.getChargeAmount().toString());
+ chargingBillPayExport.setPaymentAmount(tChargingOrder.getRechargeAmount().toString());
chargingBillPayExport.setTotal("");
chargingBillPayExports.add(chargingBillPayExport);
i++;
- bigDecimal = bigDecimal.add(tChargingOrder.getChargeAmount());
+ bigDecimal = bigDecimal.add(tChargingOrder.getRechargeAmount());
}
if (!chargingBillPayExports.isEmpty()){
chargingBillPayExports.get(0).setTotal(bigDecimal+"");
@@ -362,7 +416,8 @@
}
chargingBillExport.setPaymentAmount(paymentAmount);
chargingBillExport.setRefundAmount(refundAmount);
- chargingBillExport.setIncome(paymentAmount.subtract(refundAmount).subtract(commissionAmount).setScale(2, BigDecimal.ROUND_DOWN));
+ chargingBillExport.setIncome(paymentAmount.subtract(refundAmount).subtract(commissionAmount)
+ .subtract(sharingAmount).setScale(2, BigDecimal.ROUND_DOWN));
chargingBillExports.add(chargingBillExport);
// 导出
List<Map<String, Object>> sheetsList = new ArrayList<>();
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 4085b34..b97dde3 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
@@ -266,7 +266,7 @@
if (data3!=null)tChargingOrder.setUserName(data3.getName());
// 累加实收金额 支付结算金额
if (tChargingOrder.getChargeAmount()!=null){
- paymentAmount = paymentAmount.add(tChargingOrder.getChargeAmount());
+ paymentAmount = paymentAmount.add(tChargingOrder.getRechargeAmount());
}
// 总金额
if (tChargingOrder.getOrderAmount()!=null){
@@ -383,7 +383,7 @@
chargingBillVO.setExportList(tChargingOrders);
for (TChargingOrder tChargingOrder : tChargingOrders) {
if (tChargingOrder.getOrderAmount()!=null){
- paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getChargeAmount());
+ paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getRechargeAmount());
}
// 累加订单金额
@@ -753,9 +753,9 @@
paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount());
}
// 累加订单金额
- if (tChargingOrder.getOrderAmount()!=null){
- orderAmount = orderAmount.add(tChargingOrder.getPaymentAmount());
- orderAmountTotal = orderAmountTotal.add(tChargingOrder.getPaymentAmount());
+ if (tChargingOrder.getRechargeAmount()!=null){
+ orderAmount = orderAmount.add(tChargingOrder.getRechargeAmount());
+ orderAmountTotal = orderAmountTotal.add(tChargingOrder.getRechargeAmount());
}
// 累加累计电费
if (tChargingOrder.getElectrovalence()!=null){
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
index 579229c..56b0ebf 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -1216,9 +1216,12 @@
BigDecimal income = new BigDecimal("0");
BigDecimal electronicMoney = new BigDecimal("0");
BigDecimal serviceMoney = new BigDecimal("0");
+ BigDecimal commissionMoney = new BigDecimal("0");
+ BigDecimal refundMoney = new BigDecimal("0");
+ BigDecimal paymentMoney = new BigDecimal("0");
for (ChargingOrderVO chargingOrderVO : list) {
- chargingOrderVO.setCommissionAmount(chargingOrderVO.getOrderAmount().multiply(new BigDecimal("0.006")));
- chargingOrderVO.setPlatFormMoney(chargingOrderVO.getOrderAmount().multiply(new BigDecimal("0.006")));
+ chargingOrderVO.setCommissionAmount(chargingOrderVO.getOrderAmount()!=null?chargingOrderVO.getOrderAmount().multiply(new BigDecimal("0.006")):new BigDecimal("0"));
+ chargingOrderVO.setPlatFormMoney(chargingOrderVO.getOrderAmount()!=null?chargingOrderVO.getOrderAmount().multiply(new BigDecimal("0.006")).setScale(2,BigDecimal.ROUND_DOWN):new BigDecimal("0"));
chargingOrderVO.setUid(chargingOrderVO.getId()+"");
TChargingGun data3 = chargingGunClient.getChargingGunById(chargingOrderVO.getChargingGunId()).getData();
TChargingPile data2 = chargingPileClient.getChargingPileById(chargingOrderVO.getChargingPileId()).getData();
@@ -1259,6 +1262,8 @@
}
}
for (ChargingOrderVO chargingOrderVO : list1) {
+ paymentMoney= paymentMoney.add(chargingOrderVO.getPaymentAmount()!=null?chargingOrderVO.getPaymentAmount():new BigDecimal("0"));
+ commissionMoney = commissionMoney.add(chargingOrderVO.getOrderAmount()!=null?chargingOrderVO.getOrderAmount().multiply(new BigDecimal("0.006")):new BigDecimal("0"));
if (chargingOrderVO.getChargingCapacity()!=null){
total = total.add(chargingOrderVO.getElectricity());
}
@@ -1271,17 +1276,19 @@
chargingOrderVO.setChargingSecond(l);
time+=l;
}
- electronicMoney = electronicMoney.add(chargingOrderVO.getElectrovalence());
- serviceMoney = serviceMoney.add(chargingOrderVO.getServiceCharge());
-
- income = income.add(chargingOrderVO.getPaymentAmount());
-
-
-
+ List<TChargingOrderRefund> list2 = chargingOrderRefundService.lambdaQuery().eq(TChargingOrderRefund::getRefundStatus, 2)
+ .eq(TChargingOrderRefund::getChargingOrderId, chargingOrderVO.getId()).list();
+ for (TChargingOrderRefund tChargingOrderRefund : list2) {
+ if (tChargingOrderRefund.getRefundStatus()==2){
+ refundMoney = refundMoney.add(tChargingOrderRefund.getRefundTotalAmount());
+ }
+ }
+ electronicMoney = electronicMoney.add(chargingOrderVO.getElectrovalence()!=null?chargingOrderVO.getElectrovalence():new BigDecimal("0"));
+ serviceMoney = serviceMoney.add(chargingOrderVO.getServiceCharge()!=null?chargingOrderVO.getServiceCharge():new BigDecimal("0"));
}
tCharingOrderVO.setTotal(total);
tCharingOrderVO.setTime(time);
- tCharingOrderVO.setIncome(income);
+ tCharingOrderVO.setIncome(income.subtract(commissionMoney));
tCharingOrderVO.setElectronicMoney(electronicMoney);
tCharingOrderVO.setServiceMoney(serviceMoney);
pageInfo.setRecords(list);
--
Gitblit v1.7.1