From d9b88d6eeb378c0291f465862fc76ab6a5f46c8a Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 02 十一月 2024 09:04:15 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java                |   15 ++++++-
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java                            |    2 +
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java                 |    8 ++--
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java                          |    6 +++
 ruoyi-service/ruoyi-chargingPile/src/main/resources/template/运营商名称1-充电桩名称1-结算对账单明细-结算月份1.xlsx                      |    0 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java |   15 ++++++-
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java              |   21 ++++++++--
 7 files changed, 53 insertions(+), 14 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java
index ba76c18..3154e54 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java
@@ -101,6 +101,12 @@
     @ApiModelProperty(value = "承担金额")
     @TableField("proportion_money")
     private BigDecimal proportionMoney;
+    @ApiModelProperty(value = "合作商充电服务费根据合同约定分成比例")
+    @TableField(exist = false)
+    private String proportionPartnerString;
+    @ApiModelProperty(value = "平台充电服务费根据合同约定分成比例")
+    @TableField(exist = false)
+    private String proportionMoneyString;
     @ApiModelProperty(value = "本期结算电费总金额 (实际电费转账)")
     @TableField("total_electronic")
     private BigDecimal totalElectronic;
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java
index cd6ebc7..1c7c508 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java
@@ -17,6 +17,8 @@
 
     @ApiModelProperty(value = "订单状态")
     private Integer status;
+    @ApiModelProperty(value = "充值支付方式(1=微信,2=支付宝)")
+    private Integer rechargePaymentType;
     @ApiModelProperty(value = "充值支付状态(1=待支付,2=已支付)")
     private Integer rechargePaymentStatus;
     @ApiModelProperty(value = "电站id")
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
index 49cbd46..82f92c3 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
@@ -547,9 +547,18 @@
             if (chargingOrder.getCode()!=null){
                 List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataClient.getDataByOrderCode(chargingOrder.getCode()).getData();
                 if (data6!=null && !data6.isEmpty()){
-                    // 第一条数据soc为开始 最后一条数据soc为结束soc
-                    settlementExportVO.setStartSoc(data6.get(0).getSoc()+"%");
-                    settlementExportVO.setEndSoc(data6.get(data6.size()-1).getSoc()+"%");
+                    int min = 100;
+                    int max = 0;
+                    for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data6) {
+                        if (uploadRealTimeMonitoringData.getSoc()>max){
+                            max = uploadRealTimeMonitoringData.getSoc();
+                        }
+                        if (uploadRealTimeMonitoringData.getSoc()!=0 &&uploadRealTimeMonitoringData.getSoc()<min){
+                            min = uploadRealTimeMonitoringData.getSoc();
+                        }
+                    }
+                    settlementExportVO.setEndSoc(max+"");
+                    settlementExportVO.setStartSoc(min+"");
                 }
             }
             settlementExportVO.setIsSoc("否");
diff --git "a/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\350\277\220\350\220\245\345\225\206\345\220\215\347\247\2601-\345\205\205\347\224\265\346\241\251\345\220\215\347\247\2601-\347\273\223\347\256\227\345\257\271\350\264\246\345\215\225\346\230\216\347\273\206-\347\273\223\347\256\227\346\234\210\344\273\2751.xlsx" "b/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\350\277\220\350\220\245\345\225\206\345\220\215\347\247\2601-\345\205\205\347\224\265\346\241\251\345\220\215\347\247\2601-\347\273\223\347\256\227\345\257\271\350\264\246\345\215\225\346\230\216\347\273\206-\347\273\223\347\256\227\346\234\210\344\273\2751.xlsx"
index 52f3fb9..af6676c 100644
--- "a/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\350\277\220\350\220\245\345\225\206\345\220\215\347\247\2601-\345\205\205\347\224\265\346\241\251\345\220\215\347\247\2601-\347\273\223\347\256\227\345\257\271\350\264\246\345\215\225\346\230\216\347\273\206-\347\273\223\347\256\227\346\234\210\344\273\2751.xlsx"
+++ "b/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\350\277\220\350\220\245\345\225\206\345\220\215\347\247\2601-\345\205\205\347\224\265\346\241\251\345\220\215\347\247\2601-\347\273\223\347\256\227\345\257\271\350\264\246\345\215\225\346\230\216\347\273\206-\347\273\223\347\256\227\346\234\210\344\273\2751.xlsx"
Binary files differ
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java
index e08be7f..3a6cfcb 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java
@@ -58,6 +58,7 @@
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.net.URLEncoder;
+import java.text.SimpleDateFormat;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -112,6 +113,8 @@
     @ApiOperation(value = "充电时段统计-导出", tags = {"管理后台-财务结算"})
     @PutMapping("/export")
     public void export(@RequestBody ChargingListQuery dto) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
         ChargingOrderTimeVO res = chargingOrderService.chargingList(dto);
         List<TChargingOrderExport> tChargingOrderExports = new ArrayList<>();
         List<ChargingOrderListVO> exportList = res.getList().getRecords();
@@ -149,10 +152,19 @@
             tChargingOrderExport.setOrderClassification("1");
             tChargingOrderExport.setStartType("扫码");
             tChargingOrderExport.setOne("小程序");
-            tChargingOrderExport.setTwo("小程序");
-            tChargingOrderExport.setCreateTime(chargingOrderListVO.getCreateTime()+"");
-            tChargingOrderExport.setStartTime(chargingOrderListVO.getStartTime()+"");
-            tChargingOrderExport.setEndTime(chargingOrderListVO.getEndTime()+"");
+            if (chargingOrderListVO.getRechargePaymentType()!=null){
+                switch (chargingOrderListVO.getRechargePaymentType()){
+                    case 1:
+                        tChargingOrderExport.setTwo("微信小程序");
+                        break;
+                    case 2:
+                        tChargingOrderExport.setTwo("支付宝小程序");
+                        break;
+                }
+            }
+            tChargingOrderExport.setCreateTime(simpleDateFormat.format(chargingOrderListVO.getCreateTime()));
+            tChargingOrderExport.setStartTime(simpleDateFormat.format(chargingOrderListVO.getStartTime()));
+            tChargingOrderExport.setEndTime(simpleDateFormat.format(chargingOrderListVO.getEndTime()));
             tChargingOrderExport.setRechargePaymentStatus(chargingOrderListVO.getRechargePaymentStatus()+"");
             tChargingOrderExport.setType("充电订单");
             tChargingOrderExport.setChargingType("单桩双充");
@@ -205,7 +217,6 @@
                     tChargingOrderExport.setVipType(data1.getName());
                 }
             }
-//            tChargingOrderExport.setVipType();
             tChargingOrderExport.setIsPlus(chargingOrderListVO.getVipDiscountAmount().compareTo(BigDecimal.ZERO)>0?"是":"否");
             if (data3!=null){
                 tChargingOrderExport.setRealName(data3.getName());
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 2d0a858..5f9c060 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
@@ -645,7 +645,7 @@
                 }
                 // 累加平台手续费
                 if (tChargingOrder.getOrderAmount()!=null){
-                    commissionAmount = commissionAmount.add(tChargingOrder.getOrderAmount().multiply(BigDecimal.valueOf(0.006)));
+                    commissionAmount = commissionAmount.add(tChargingOrder.getPaymentAmount().multiply(BigDecimal.valueOf(0.006)));
                 }
                 // 累加平台分佣
                 if (tChargingOrder.getSharingAmount()!=null){
@@ -664,7 +664,7 @@
             String timeString = String.format("%d小时%d分钟%d秒", hours, minutes, seconds);
             chargingBillVO.setChargingTime(timeString);
 
-            chargingBillListVO.setPaymentAmount(paymentAmount);
+            chargingBillListVO.setPaymentAmount(orderAmount.subtract(commissionAmount).subtract(sharingAmount));
             chargingBillListVO.setOrderAmount(orderAmount);
             chargingBillListVO.setElectrovalence(electrovalence);
             chargingBillListVO.setServiceCharge(serviceCharge.setScale(2,RoundingMode.HALF_DOWN));
@@ -756,8 +756,8 @@
                 }
                 // 累加平台手续费
                 if (tChargingOrder.getOrderAmount()!=null){
-                    commissionAmount = commissionAmount.add(tChargingOrder.getOrderAmount().multiply(new BigDecimal("0.006")));
-                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getOrderAmount().multiply(new BigDecimal("0.006")));
+                    commissionAmount = commissionAmount.add(tChargingOrder.getPaymentAmount().multiply(new BigDecimal("0.006")));
+                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getPaymentAmount().multiply(new BigDecimal("0.006")));
                 }
                 // 累加平台分佣
                 if (tChargingOrder.getSharingAmount()!=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 b38ba84..87ac655 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
@@ -1441,9 +1441,20 @@
 			// 获取开始SOC 结束soc
 			if (chargingOrderListVO.getCode()!=null){
 				List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataClient.getDataByOrderCode(chargingOrderListVO.getCode()).getData();
+
 			if (data6!=null && !data6.isEmpty()){
-					chargingOrderListVO.setEndSoc(data6.get(0).getSoc().toString());
-					chargingOrderListVO.setStartSoc(data6.get(data6.size()-1).getSoc().toString());
+				int min = 100;
+				int max = 0;
+				for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data6) {
+					if (uploadRealTimeMonitoringData.getSoc()>max){
+						max = uploadRealTimeMonitoringData.getSoc();
+					}
+					if (uploadRealTimeMonitoringData.getSoc()!=0 &&uploadRealTimeMonitoringData.getSoc()<min){
+						min = uploadRealTimeMonitoringData.getSoc();
+					}
+				}
+					chargingOrderListVO.setEndSoc(max+"");
+					chargingOrderListVO.setStartSoc(min+"");
 				}
 			}
 

--
Gitblit v1.7.1