From 02aa8adb8ce9ca916dd1ef0afd2adbea54dd1ee6 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 23 十月 2024 20:48:16 +0800
Subject: [PATCH] bug修改

---
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java               |   10 +++++
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java    |    4 ++
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/FinancialSettlementController.java |   97 +++++++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 109 insertions(+), 2 deletions(-)

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 57bc9ba..cd6ebc7 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
@@ -14,8 +14,11 @@
 public class ChargingOrderListVO  {
     @ApiModelProperty(value = "电站名称")
     private String siteName;
+
     @ApiModelProperty(value = "订单状态")
     private Integer status;
+    @ApiModelProperty(value = "充值支付状态(1=待支付,2=已支付)")
+    private Integer rechargePaymentStatus;
     @ApiModelProperty(value = "电站id")
     private Integer siteId;
     @ApiModelProperty(value = "充电桩id")
@@ -40,6 +43,8 @@
     private BigDecimal electricity;
     @ApiModelProperty(value = "充电到账金额")
     private BigDecimal orderAmount;
+    @ApiModelProperty(value = "会员抵扣金额")
+    private BigDecimal vipDiscountAmount;
     @ApiModelProperty(value = "车牌号")
     private String licensePlate;
     @ApiModelProperty(value = "客户手机号")
@@ -61,6 +66,11 @@
     @ApiModelProperty(value = "开始时间")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private LocalDateTime startTime;
+    @ApiModelProperty(value = "最后支付时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private LocalDateTime payTime;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private LocalDateTime createTime;
     @ApiModelProperty(value = "结束时间")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private LocalDateTime endTime;
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 62bd3c0..e589fe1 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
@@ -5,10 +5,15 @@
 import cn.afterturn.easypoi.excel.entity.ExportParams;
 import com.ruoyi.account.api.feignClient.AppUserCarClient;
 import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.model.TAppUser;
+import com.ruoyi.account.api.model.TAppUserCar;
 import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient;
 import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
 import com.ruoyi.chargingPile.api.feignClient.ParkingLotClient;
 import com.ruoyi.chargingPile.api.feignClient.SiteClient;
+import com.ruoyi.chargingPile.api.model.Partner;
+import com.ruoyi.chargingPile.api.model.Site;
+import com.ruoyi.chargingPile.api.model.TChargingGun;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.core.utils.WebUtils;
@@ -46,9 +51,11 @@
 import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.math.BigDecimal;
 import java.net.URLEncoder;
 import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
 /**
@@ -80,17 +87,103 @@
         ChargingOrderListInfoVO res = chargingOrderService.chargingInfo(uid);
         return AjaxResult.success(res);
     }
+    @Autowired
+    private SiteClient siteClient;
+    @Autowired
+    private AppUserClient appUserClient;
+    @Autowired
+    private ChargingGunClient chargingGunClient;
+    @Autowired
+    private AppUserCarClient appUserCarClient;
     @ApiOperation(value = "充电时段统计-导出", tags = {"管理后台-财务结算"})
     @PutMapping("/export")
     public void export(@RequestBody ChargingListQuery dto) {
         ChargingOrderTimeVO res = chargingOrderService.chargingList(dto);
         List<TChargingOrderExport> tChargingOrderExports = new ArrayList<>();
         List<ChargingOrderListVO> exportList = res.getExportList();
+        int i = 0;
         for (ChargingOrderListVO chargingOrderListVO : exportList) {
             TChargingOrderExport tChargingOrderExport = new TChargingOrderExport();
-            BeanUtils.copyProperties(chargingOrderListVO,tChargingOrderExport);
-            tChargingOrderExports.add(tChargingOrderExport);
 
+            List<Site> data = siteClient.getSiteByIds(Arrays.asList(chargingOrderListVO.getSiteId())).getData();
+            TAppUser data3 = appUserClient.getUserById(chargingOrderListVO.getAppUserId()).getData();
+            TChargingGun data4 = chargingGunClient.getChargingGunById(chargingOrderListVO.getChargingGunId()).getData();
+            if (data!=null&&(!data.isEmpty())){
+                tChargingOrderExport.setSiteCode(data.get(0).getCode());
+                tChargingOrderExport.setSiteName(chargingOrderListVO.getSiteName());
+                tChargingOrderExport.setCity(data.get(0).getCity());
+                tChargingOrderExport.setCityName(data.get(0).getDistricts());
+                tChargingOrderExport.setSiteType(data.get(0).getSiteType());
+
+                Partner data2 = siteClient.getPartnerR(data.get(0).getPartnerId()).getData();
+                if (data2!=null){
+                    tChargingOrderExport.setPartner(data2.getName());
+                }
+            }
+            tChargingOrderExport.setSaleType("1");
+            tChargingOrderExport.setBusinessCategory("1");
+            tChargingOrderExport.setId(i);
+            tChargingOrderExport.setCode(chargingOrderListVO.getCode());
+            tChargingOrderExport.setTerminalName(chargingOrderListVO.getTerminalName());
+//            tChargingOrderExport.setName();
+            tChargingOrderExport.setOrderClassification("1");
+            tChargingOrderExport.setStartType("扫码");
+            tChargingOrderExport.setOne("小程序");
+            tChargingOrderExport.setTwo("小程序");
+            tChargingOrderExport.setCreateTime(chargingOrderListVO.getCreateTime()+"");
+            tChargingOrderExport.setStartTime(chargingOrderListVO.getStartTime()+"");
+            tChargingOrderExport.setEndTime(chargingOrderListVO.getEndTime()+"");
+            tChargingOrderExport.setRechargePaymentStatus(chargingOrderListVO.getRechargePaymentStatus()+"");
+            tChargingOrderExport.setType("充电订单");
+            tChargingOrderExport.setChargingType("单桩双充");
+            tChargingOrderExport.setEndmode(chargingOrderListVO.getEndMode()+"");
+            tChargingOrderExport.setChargingEndAccount("平台");
+            tChargingOrderExport.setIsFree("否");
+            tChargingOrderExport.setElectrovalence(chargingOrderListVO.getElectrovalence()+"");
+            tChargingOrderExport.setServiceCharge(chargingOrderListVO.getServiceCharge()+"");
+            tChargingOrderExport.setTotal(chargingOrderListVO.getPaymentAmount()+"");
+            tChargingOrderExport.setChargingCapacity(chargingOrderListVO.getElectricity()+"");
+//            tChargingOrderExport.setElectrovalencePrice();
+//            tChargingOrderExport.setServiceChargePrice();
+//            tChargingOrderExport.setServiceChargePriceLook();
+//            tChargingOrderExport.setCumulativeChargingTime();
+            tChargingOrderExport.setStartSoc(chargingOrderListVO.getStartSoc());
+            tChargingOrderExport.setEndtSoc(chargingOrderListVO.getEndSoc());
+            tChargingOrderExport.setIsSoc("否");
+            tChargingOrderExport.setIsSocType("");
+            tChargingOrderExport.setIsSocNum("0");
+            tChargingOrderExport.setUserType("普通个人用户");
+//            tChargingOrderExport.setVipType();
+            tChargingOrderExport.setIsPlus(chargingOrderListVO.getVipDiscountAmount().compareTo(BigDecimal.ZERO)>0?"是":"否");
+            if (data3!=null){
+                tChargingOrderExport.setRealName(data3.getName());
+                tChargingOrderExport.setPhone(data3.getPhone());
+                tChargingOrderExport.setNickName(data3.getName());
+            }
+            if (data4!=null){
+                tChargingOrderExport.setDeviceCode(data4.getCode());
+            }
+            tChargingOrderExport.setAccountType("个人");
+            List<TAppUserCar> data1 = appUserCarClient.getCarByIds(Arrays.asList(chargingOrderListVO.getAppUserCarId())).getData();
+            if (data1!=null&&(!data1.isEmpty())){
+                tChargingOrderExport.setCarNumber(data1.get(0).getLicensePlate());
+                tChargingOrderExport.setCarType(data1.get(0).getVehicleModel());
+                tChargingOrderExport.setCarBrand(data1.get(0).getVehicleBrand());
+
+
+            }
+            tChargingOrderExport.setOrderCode(chargingOrderListVO.getCode());
+            tChargingOrderExport.setIsSingle("是");
+            tChargingOrderExport.setPayTime(chargingOrderListVO.getPayTime()+"");
+            tChargingOrderExport.setElectrovalenceSiteName("四川明星新能源科技有限公司");
+            tChargingOrderExport.setCompanyNameAdmin("四川明星新能源科技有限公司");
+            tChargingOrderExport.setMoneyType("线上计费");
+            tChargingOrderExport.setDeviceType("设备直连(自由集控)");
+            tChargingOrderExport.setSettlementCompanyName("四川明星新能源科技有限公司");
+            tChargingOrderExport.setPrePaymentType("先付后退");
+            tChargingOrderExport.setIsSecurity("是");
+            tChargingOrderExports.add(tChargingOrderExport);
+            i++;
         }
         Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), TChargingOrderExport.class, tChargingOrderExports);
         HttpServletResponse response = WebUtils.response();
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 3ce44cb..90c3b81 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
@@ -23,6 +23,7 @@
 import com.ruoyi.order.mapper.TChargingBillMapper;
 import com.ruoyi.order.mapper.TChargingOrderMapper;
 import com.ruoyi.order.service.TChargingBillService;
+import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ;
 import org.omg.CORBA.PRIVATE_MEMBER;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
@@ -642,6 +643,9 @@
             chargingBillListVO.setChargingSecond(chargingSecond);
         }
         for (ChargingBillListVO chargingBillListVO : list1) {
+            if (chargingBillListVO.getType() ==1){
+                continue;
+            }
             LocalDateTime billTime = chargingBillListVO.getBillTime();
             // 将其转化为yyyy-MM格式字符串
             chargingBillVO.setCreateTime(billTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));

--
Gitblit v1.7.1