From 59c5450e074572a607908986f8dc2e6dbd1151d5 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 23 十月 2024 18:49:22 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java                          |   65 ++++-
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java                                      |    4 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TRepairServiceImpl.java                   |   36 ++
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java                          |   72 ++++++
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TRepairController.java                      |   28 ++
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java |    2 
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java                                     |   12 
 ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/SiteMapper.xml                                       |    4 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java                         |   15 +
 ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java              |    1 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyController.java          |    5 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TRepairService.java                            |    6 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserTagController.java                            |    2 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java                   |    2 
 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml                                           |    7 
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingBill.java                                         |    3 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java                             |   58 +++-
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java |    1 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java                                |    4 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java                           |  251 +++++++++++++++++---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderChargingInfo.java                                        |    3 
 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                               |   16 
 ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/StrategyPriceVO.java                            |    2 
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java                                              |   73 ++++-
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java             |   10 
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrderRefund.java                                  |    2 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java                      |   11 
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TGoodsServiceImpl.java                                  |    8 
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderVO.java                                          |    3 
 30 files changed, 574 insertions(+), 134 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/StrategyPriceVO.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/StrategyPriceVO.java
index dcddb54..690ea5e 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/StrategyPriceVO.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/StrategyPriceVO.java
@@ -23,7 +23,7 @@
     @ApiModelProperty(value = "服务费折扣")
     private BigDecimal serviceFeeDiscount;
 
-    @ApiModelProperty(value = "折扣")
+    @ApiModelProperty(value = "模板折扣几折")
     private BigDecimal discount;
 
 }
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java
index e00f706..58d5b85 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java
@@ -26,6 +26,7 @@
     private Integer insertion_status; // 是否插枪(0:否,1:是)
     private BigDecimal output_voltage; // 输出电压,精确到小数点后一位;待机置零
     private BigDecimal output_current; // 输出电流,精确到小数点后一位;待机置零
+    private BigDecimal power; // 功率
     private Integer gun_line_temperature; // 枪线温度,整形,偏移量-50;待机置零
     private String gun_line_code; // 枪线编码,没有置零
     private Integer soc; // SOC待机置零;交流桩置零
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingBill.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingBill.java
index 2a3ecf5..6bbb818 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingBill.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingBill.java
@@ -55,6 +55,9 @@
     @ApiModelProperty(value = "1未出账2已出账")
     @TableField("status")
     private Integer status;
+    @ApiModelProperty(value = "账单类型 1充电算帐单 2账号结算帐单")
+    @TableField("billType")
+    private Integer billType;
     @ApiModelProperty(value = "1日结2月结")
     @TableField("orderState")
     private Integer orderState;
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrderRefund.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrderRefund.java
index 8bd1674..a2c7b2b 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrderRefund.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TChargingOrderRefund.java
@@ -106,4 +106,6 @@
     private String orderId;
     @TableField(exist = false)
     private String userId;
+    @TableField(exist = false)
+    private String uid;
 }
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 59b6847..57bc9ba 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
@@ -36,6 +36,10 @@
     private Long chargingSecond;
     @ApiModelProperty(value = "充电电流 度")
     private BigDecimal chargingCapacity;
+    @ApiModelProperty(value = "充电电流 度")
+    private BigDecimal electricity;
+    @ApiModelProperty(value = "充电到账金额")
+    private BigDecimal orderAmount;
     @ApiModelProperty(value = "车牌号")
     private String licensePlate;
     @ApiModelProperty(value = "客户手机号")
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderVO.java
index f4f6ee2..48a0b5c 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderVO.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderVO.java
@@ -23,8 +23,7 @@
     private Long chargingSecond;
     @ApiModelProperty(value = "平台手续费")
     private BigDecimal platFormMoney;
-    @ApiModelProperty(value = "三方平台分佣")
-    private BigDecimal commission;
+
     @ApiModelProperty(value = "车牌号")
     private String licensePlate;
     @ApiModelProperty(value = "手机号")
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserTagController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserTagController.java
index 6c8218b..dd40be3 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserTagController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserTagController.java
@@ -73,7 +73,7 @@
         //拿到单位列表
         String[] split = ids.split(",");
 
-         List<TAppUserTag> list = appUserTagService.lambdaQuery().in(TAppUserTag::getUserTagId).list();
+         List<TAppUserTag> list = appUserTagService.lambdaQuery().in(TAppUserTag::getUserTagId,split).list();
          if (!list.isEmpty()){
              return R.fail("当前标签已有用户获取,无法删除");
          }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
index 4a70696..a3d64ac 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
@@ -71,8 +71,8 @@
     /**
      * 上传文件存储在本地的根路径
      */
-    @Value("${file.upload.location}")
-    private String localFilePath;
+//    @Value("${file.upload.location}")
+//    private String localFilePath;
 
 
 
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java
index 8626df8..85ec054 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java
@@ -1,9 +1,13 @@
 package com.ruoyi.account.service.impl;
 
+import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.account.api.model.TInviteUser;
 import com.ruoyi.account.mapper.TInviteUserMapper;
 import com.ruoyi.account.service.TInviteUserService;
+import com.ruoyi.other.api.domain.TIntegralRule;
+import com.ruoyi.other.api.feignClient.IntegralRuleClient;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.time.LocalDateTime;
@@ -19,12 +23,19 @@
 @Service
 public class TInviteUserServiceImpl extends ServiceImpl<TInviteUserMapper, TInviteUser> implements TInviteUserService {
 
+    @Autowired
+    private IntegralRuleClient integralRuleClient;
+
     @Override
     public void saveInviteUser(Long appUserId, Long beInvitedAppUserId) {
+        // 查询邀请用户获得积分配置
+        TIntegralRule integralRule = integralRuleClient.getSet().getData();
+        JSONObject jsonObject = JSONObject.parseObject(integralRule.getInviteUsersToEarnPoints());
         TInviteUser inviteUser = new TInviteUser();
-        inviteUser.setAppUserId(appUserId);
-        inviteUser.setBeInvitedAppUserId(beInvitedAppUserId);
+        inviteUser.setAppUserId(beInvitedAppUserId);
+        inviteUser.setBeInvitedAppUserId(appUserId);
         inviteUser.setCreateTime(LocalDateTime.now());
+        inviteUser.setAward(jsonObject.getInteger("num1"));
         this.save(inviteUser);
     }
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyController.java
index b01cc2b..aaf608f 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TAccountingStrategyController.java
@@ -2,6 +2,7 @@
 
 
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.account.api.model.TAppUser;
 import com.ruoyi.chargingPile.api.dto.TAccountingStrategyDTO;
 import com.ruoyi.chargingPile.api.model.*;
 import com.ruoyi.chargingPile.api.query.BatchSetAccountingStrategy;
@@ -14,6 +15,7 @@
 import com.ruoyi.chargingPile.service.TChargingPileService;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.dto.SteategyPassDto;
+import com.ruoyi.common.core.enums.status.AppUserStatusEnum;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.common.log.annotation.Log;
@@ -146,6 +148,9 @@
         if(!flag1){
             return AjaxResult.error("同阶段费率值需一致");
         }
+        if(Objects.isNull(dto.getDiscount())){
+            accountingStrategyService.update(Wrappers.<TAccountingStrategy>lambdaUpdate().set(TAccountingStrategy::getDiscount, null).eq(TAccountingStrategy::getId, dto.getId()));
+        }
         // 判断修改的计费策略是否为已通过
         if(null != dto.getAuditStatus() && (dto.getAuditStatus() == 3 || dto.getAuditStatus() == 4)){
             // 查询是否有下级审核中的策略
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TRepairController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TRepairController.java
index 8156686..7fb53ff 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TRepairController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TRepairController.java
@@ -10,11 +10,17 @@
 import com.ruoyi.common.log.annotation.Log;
 import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.log.enums.OperatorType;
+import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.feignClient.SysUserClient;
 import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * <p>
@@ -30,7 +36,27 @@
 
 	@Resource
 	private TRepairService repairService;
-	
+	@Resource
+	private TokenService tokenService;
+	@Autowired
+	private SysUserClient userClient;
+
+	/**
+	 * 添加故障报修管理
+	 */
+	@Log(title = "添加故障报修管理", businessType = BusinessType.INSERT,operatorType = OperatorType.MOBILE)
+	@ApiOperation(tags = {"小程序-故障报修"},value = "添加故障报修管理")
+	@PostMapping(value = "/add")
+	public AjaxResult<String> add(@Validated @RequestBody TRepair dto) {
+		Long userId = tokenService.getLoginUserApplet().getUserId();
+		// 查询报修人员信息
+		SysUser user = userClient.getSysUser(userId).getData();
+		if(Objects.nonNull(user)){
+			dto.setRepairman(user.getUserName());
+		}
+		repairService.add(dto);
+		return AjaxResult.success();
+	}
 	
 	@ResponseBody
 	@GetMapping("/getRepairList")
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TRepairService.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TRepairService.java
index 4f85479..02edf11 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TRepairService.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TRepairService.java
@@ -24,4 +24,10 @@
 	 * @return
 	 */
 	List<TRepair> getRepairList(PageInfo<TRepair> pageInfo, String name, String siteId);
+
+	/**
+	 * 添加报修记录
+	 * @param dto
+	 */
+    void add(TRepair dto);
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java
index 728a9f4..7ee4de8 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/PartnerServiceImpl.java
@@ -145,9 +145,9 @@
 		user.setDelFlag("0");
 		user.setRoleId(partner.getRoleId().longValue());
 		user.setRoleType(2);
-		user.setObjectId(partner.getId());
 		//添加新数据
 		this.save(partner);
+		user.setObjectId(partner.getId());
 		R r = sysUserClient.addSysUser(user);
 		if(200 != r.getCode()){
 			throw new RuntimeException(r.getMsg());
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
index 04b0e46..8228a4c 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java
@@ -39,6 +39,7 @@
 import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -237,9 +238,9 @@
 		if(StringUtils.isEmpty(site.getAddress())){
 			return AjaxResult.error("详细地址不能为空");
 		}
-		if(StringUtils.isEmpty(site.getLon()) || StringUtils.isEmpty(site.getLat())){
-			return AjaxResult.error("地图位置不能为空");
-		}
+//		if(StringUtils.isEmpty(site.getLon()) || StringUtils.isEmpty(site.getLat())){
+//			return AjaxResult.error("地图位置不能为空");
+//		}
 		if(StringUtils.isEmpty(site.getPhone())){
 			return AjaxResult.error("站点电话不能为空");
 		}
@@ -292,7 +293,7 @@
 			TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
 			if(Objects.nonNull(vip) && vip.getType() == 2){
 				list.forEach(item -> {
-					item.setVipElectrovalence(vip.getDiscount().multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
+					item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
 				});
 			}
 		}
@@ -374,7 +375,7 @@
 			TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
 			if(Objects.nonNull(vip) && vip.getType() == 2){
 				list.forEach(item -> {
-					item.setVipElectrovalence(vip.getDiscount().multiply(item.getElectrovalence()));
+					item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
 				});
 			}
 		}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java
index a8cc5e0..57d3f7e 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java
@@ -135,7 +135,7 @@
         // 查询最高折扣的会员
         TVip monthlyCardDiscount = vipClient.getVipInfoByType(3).getData();
         strategyPriceVO.setServiceFeeDiscount(monthlyCardDiscount.getMonthlyCardDiscount());
-        // 查询最高抵扣的会员
+        // 查询最高优惠的会员
         TVip maximumDeduction = vipClient.getVipInfoByType(1).getData();
         strategyPriceVO.setMaxDiscountAmount(maximumDeduction.getMaximumDeduction());
         // 查询最低起步价会员
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java
index 2fa9813..9bead20 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java
@@ -109,6 +109,7 @@
 				notification.setContent(data);
 				break;
 		}
+		this.save(notification);
 	}
 
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
index 1c55a4d..eca82dd 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
@@ -298,8 +298,14 @@
 			List<TChargingGun> chargingGunList = chargingGuns.stream().filter(gun -> gun.getChargingPileId().equals(item.getId())).collect(Collectors.toList());
 			for (TChargingGun chargingGun : chargingGunList) {
 				if(chargingGun.getStatus().equals(4)){
-					// TODO 查询正在充电的单子的实时记录
-					chargingGun.setSoc(100);
+					// 查询正在充电的单子的实时记录
+					TChargingOrder chargingOrder = chargingOrderClient.getOrderDetailByGunId(chargingGun.getId()).getData();
+					if(Objects.nonNull(chargingOrder)){
+						UploadRealTimeMonitoringData uploadRealTimeMonitoringData = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrder.getCode()).getData();
+						chargingGun.setSoc(uploadRealTimeMonitoringData.getSoc());
+					}else {
+						chargingGun.setSoc(100);
+					}
 				}
 				if(chargingGun.getStatus().equals(5)){
 					chargingGun.setSoc(100);
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TRepairServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TRepairServiceImpl.java
index d348ebb..3832dc5 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TRepairServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TRepairServiceImpl.java
@@ -3,14 +3,24 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.chargingPile.api.feignClient.SiteClient;
 import com.ruoyi.chargingPile.api.model.Site;
+import com.ruoyi.chargingPile.api.model.TChargingPile;
 import com.ruoyi.chargingPile.api.model.TRepair;
 import com.ruoyi.chargingPile.mapper.TRepairMapper;
+import com.ruoyi.chargingPile.service.ISiteService;
+import com.ruoyi.chargingPile.service.TChargingPileNotificationService;
+import com.ruoyi.chargingPile.service.TChargingPileService;
 import com.ruoyi.chargingPile.service.TRepairService;
+import com.ruoyi.common.core.constant.MsgConstants;
+import com.ruoyi.common.core.utils.HttpUtils;
+import com.ruoyi.common.core.utils.MsgUtil;
 import com.ruoyi.common.core.web.page.BasePage;
 import com.ruoyi.common.core.web.page.PageInfo;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.time.LocalDateTime;
 import java.util.Arrays;
 import java.util.List;
 
@@ -22,10 +32,15 @@
  * @author xiaochen
  * @since 2024-08-08
  */
+@Slf4j
 @Service
 public class TRepairServiceImpl extends ServiceImpl<TRepairMapper, TRepair> implements TRepairService {
-	
-	
+	@Autowired
+	private ISiteService siteService;
+	@Autowired
+	private TChargingPileService chargingPileService;
+	@Autowired
+	private TChargingPileNotificationService chargingPileNotificationService;
 	/**
 	 * 获取报修记录列表
 	 * @param name
@@ -36,4 +51,21 @@
 	public List<TRepair> getRepairList(PageInfo<TRepair> pageInfo, String name, String siteId) {
 		return this.baseMapper.getRepairList(pageInfo, name, siteId);
 	}
+
+	@Override
+	public void add(TRepair dto) {
+		// 故障短信提醒
+		Site site = siteService.getById(dto.getSiteId());
+		TChargingPile chargingPile = chargingPileService.getById(dto.getChargingPileId());
+		String siteName = site.getName();
+		String reqStr = MsgUtil.faultMsg(site.getPhone(), site.getName(), chargingPile.getNumber() + "");
+		String result = HttpUtils.post(MsgConstants.SEND_URL, reqStr);
+		log.info("故障短信提醒:{}",result);
+		if(siteName.length()>10){
+			siteName = siteName.substring(0,10);
+		}
+		chargingPileNotificationService.saveData(4,dto.getSiteId(),dto.getChargingPileId(),site.getPhone(),"检测到"+siteName+"..."+chargingPile.getNumber()+"号桩设备离线,请及时查看处理!");
+		dto.setRepairTime(LocalDateTime.now());
+		this.save(dto);
+	}
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/SiteMapper.xml b/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/SiteMapper.xml
index 2c96080..1073452 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/SiteMapper.xml
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/resources/mapper/chargingPile/SiteMapper.xml
@@ -285,8 +285,10 @@
 		left join (
 		select
 		a.accounting_strategy_id,
+		a.service_charge AS serviceCharge,
+		a.electrovalence AS electrovalenceOriginal,
 		(a.electrovalence+a.service_charge) AS electrovalence,
-		((a.electrovalence+a.service_charge)*b.discount) AS vipElectrovalence
+		(a.electrovalence+(a.service_charge*b.discount)) AS vipElectrovalence
 		from
 		t_accounting_strategy_detail a
 		left join
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 5ffee38..3cb2293 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
@@ -43,7 +43,7 @@
                 AND tpr.code LIKE concat('%',#{query.code},'%')
             </if>
             <if test="query.licensePlate != null and query.licensePlate != ''">
-                AND tpr.licensePlate LIKE concat('%',#{query.licensePlate},'%')
+                AND tpr.license_plate LIKE concat('%',#{query.licensePlate},'%')
             </if>
             <if test="query.lotIds != null and query.lotIds.size()>0">
                 AND tpr.parking_lot_id IN
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 d9b3c8d..f10fe03 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
@@ -73,18 +73,12 @@
     public R<AccountListVO> accountBillList(@RequestBody ChargingListQuery dto) {
         AccountListVO accountListVO = new AccountListVO();
         ChargingBillVO res = chargingBillService.chargingBillList1(dto);
-
-        ChargingBillVO res1 = chargingBillService.chargingBillList1(dto);
-        List<ChargingBillListVO> records = res1.getList().getRecords();
+        List<ChargingBillListVO> records = res.getList().getRecords();
         accountListVO.setBillCount(records.size());
-        accountListVO.setTotalAmount(
-                res1.getPaymentAmount().subtract(res1.getRefundAmount()==null?BigDecimal.ZERO:res1.getRefundAmount())
-                        .subtract(res1.getCommissionAmount()==null?BigDecimal.ZERO:res1.getCommissionAmount())
-                        .subtract(res1.getSharingAmount()==null?BigDecimal.ZERO:res1.getSharingAmount()));
-        accountListVO.setPaymentAmount(res1.getPaymentAmount());
-        accountListVO.setRefundAmount(res1.getRefundAmount());
-        accountListVO.setCommissionAmount(res1.getCommissionAmount());
-        accountListVO.setSharingAmount(res1.getSharingAmount());
+        accountListVO.setPaymentAmount(res.getPaymentAmount());
+        accountListVO.setRefundAmount(res.getRefundAmount());
+        accountListVO.setCommissionAmount(res.getCommissionAmount());
+        accountListVO.setSharingAmount(res.getSharingAmount());
         accountListVO.setList(res.getList());
         return R.ok(accountListVO);
     }
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 afa1ff4..b5458b9 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
@@ -181,7 +181,7 @@
                 payOrderInfoDto.setTradeNo(byId.getRechargeSerialNumber());
                 payOrderInfoDto.setPayType(byId.getRechargePaymentType());
                 payOrderInfoDto.setPayAmount(byId.getPaymentAmount());
-                payOrderInfoDto.setPayTime(byId.getPayTime());
+                payOrderInfoDto.setPayTime(byId.getCreateTime());
                 payOrderInfoDto.setRefundAmount(byId.getRefundAmount());
                 return R.ok(payOrderInfoDto);
             case 2:
@@ -192,7 +192,7 @@
                 payOrderInfoDto1.setTradeNo(byId1.getSerialNumber());
                 payOrderInfoDto1.setPayType(byId1.getPaymentType());
                 payOrderInfoDto1.setPayAmount(byId1.getPaymentAmount());
-                payOrderInfoDto1.setPayTime(byId1.getPayTime());
+                payOrderInfoDto1.setPayTime(byId1.getCreateTime());
                 payOrderInfoDto1.setRefundAmount(byId1.getRefundAmount());
                 return R.ok(payOrderInfoDto1);
             case 3:
@@ -203,7 +203,7 @@
                 payOrderInfoDto2.setTradeNo(byId2.getSerialNumber());
                 payOrderInfoDto2.setPayType(byId2.getPaymentType());
                 payOrderInfoDto2.setPayAmount(byId2.getPaymentAmount());
-                payOrderInfoDto2.setPayTime(byId2.getPayTime());
+                payOrderInfoDto2.setPayTime(byId2.getCreateTime());
                 payOrderInfoDto2.setRefundAmount(byId2.getRefundAmount());
                 return R.ok(payOrderInfoDto2);
             //todo luo 停车场订单
@@ -248,7 +248,7 @@
     @ResponseBody
     @GetMapping(value = "/pay/order/charging")
     @ApiOperation(value = "充电信息", tags = {"管理后台-支付订单-订单信息"})
-    public R refundDetail(Long orderId) {
+    public R<PayOrderChargingInfo> refundDetail(Long orderId) {
         PayOrderChargingInfo payOrderChargingInfo = new PayOrderChargingInfo();
         TChargingOrder byId = chargingOrderService.getById(orderId);
         List<Site> data = siteClient.getSiteByIds(Collections.singletonList(byId.getSiteId())).getData();
@@ -261,7 +261,15 @@
             List<TAppUserCar> data3 = appUserCarClient.getCarByIds(Collections.singletonList(byId.getAppUserCarId())).getData();
             payOrderChargingInfo.setCarNum(data3.get(0).getLicensePlate());
         }
-        return R.ok();
+        payOrderChargingInfo.setTChargingOrder(byId);
+
+        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());
+        return R.ok(payOrderChargingInfo);
     }
 
     @ResponseBody
@@ -278,7 +286,11 @@
     @PostMapping(value = "/pay/order/refund/list")
     @ApiOperation(value = "列表", tags = {"管理后台-支付订单-退款订单"})
     public R<PageInfo<TChargingOrderRefund>> refundList(@RequestBody ChargingRefundDto chargingRefundDto) {
-        return chargingOrderService.getRefundList(chargingRefundDto);
+        R<PageInfo<TChargingOrderRefund>> refundList = chargingOrderService.getRefundList(chargingRefundDto);
+        for (TChargingOrderRefund record : refundList.getData().getRecords()) {
+            record.setUid(record.getId().toString());
+        }
+        return refundList;
 
     }
     @ResponseBody
@@ -311,10 +323,10 @@
         TChargingOrder byId = chargingOrderService.getById(strategyId);
         ChargingOrderInfoVO chargingOrderInfoVO = new ChargingOrderInfoVO();
 
-        chargingOrderInfoVO.setCdElectronic(byId.getCurrent()!=null?byId.getCurrent()+"":"");
-        chargingOrderInfoVO.setCdVoltage(byId.getVoltage()!=null?byId.getVoltage()+"":"");
-        chargingOrderInfoVO.setSurplus(byId.getTotalElectricity()!=null?byId.getTotalElectricity()+"":"");
-        chargingOrderInfoVO.setTotalPower(byId.getPower()!=null?byId.getPower()+"":"");
+        chargingOrderInfoVO.setCdElectronic(byId.getCurrent()!=null?byId.getCurrent().setScale(2, BigDecimal.ROUND_HALF_DOWN)+"":"");
+        chargingOrderInfoVO.setCdVoltage(byId.getVoltage()!=null?byId.getVoltage().setScale(2, BigDecimal.ROUND_HALF_DOWN)+"":"");
+        chargingOrderInfoVO.setSurplus(byId.getTotalElectricity()!=null?byId.getTotalElectricity().setScale(2, BigDecimal.ROUND_HALF_DOWN)+"":"");
+        chargingOrderInfoVO.setTotalPower(byId.getPower()!=null?byId.getPower().setScale(2, BigDecimal.ROUND_HALF_DOWN)+"":"");
         if (byId.getAppUserCarId()!=null){
             List<TAppUserCar> data = appUserCarClient.getCarByIds(Collections.singletonList(byId.getAppUserCarId())).getData();
             if (!data.isEmpty()){
@@ -327,16 +339,20 @@
         // 时段总服务费
         BigDecimal bigDecimal = new BigDecimal("0");
         List<TChargingOrderAccountingStrategy> list = chargingOrderAccountingStrategyService.lambdaQuery().eq(TChargingOrderAccountingStrategy::getChargingOrderId, strategyId).orderByDesc(TChargingOrderAccountingStrategy::getStartTime).list();
+
         for (TChargingOrderAccountingStrategy tChargingOrderAccountingStrategy : list) {
+            if (byId.getVipDiscountAmount()!=null){
+                BigDecimal multiply = byId.getVipDiscountAmount().divide(byId.getServiceCharge(), 2)
+                        .multiply(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
+                tChargingOrderAccountingStrategy.setVipDiscount(multiply);
+            }
             bigDecimal = bigDecimal.add(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
-            tChargingOrderAccountingStrategy.setVipDiscount(
-                    tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice()
-                            .subtract(tChargingOrderAccountingStrategy.getPeriodServicePrice())
-            );
-            tChargingOrderAccountingStrategy.setCouponDiscount(
-                    tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice()
-                            .subtract(tChargingOrderAccountingStrategy.getPeriodServicePrice())
-            );
+
+            if (byId.getCouponDiscountAmount()!=null){
+                BigDecimal multiply = byId.getCouponDiscountAmount().divide(byId.getServiceCharge(), 2)
+                        .multiply(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
+                tChargingOrderAccountingStrategy.setCouponDiscount(multiply);
+            }
         }
         chargingOrderInfoVO.setList(list);
         return AjaxResult.success(chargingOrderInfoVO);
@@ -781,19 +797,23 @@
         LocalDate end = null;
         if (statisticsQueryDto.getDayType()==1){
             start = LocalDate.now();
+            end = LocalDate.now().plusDays(1);
 
         }else if (statisticsQueryDto.getDayType()==2){
             LocalDate today = LocalDate.now();
 
             // 获取本周一的日期
             LocalDate mondayThisWeek = today.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY));
+            start = statisticsQueryDto.getStartTime();
+            end = statisticsQueryDto.getEndTime();
 
             System.out.println("本周一是: " + mondayThisWeek);
         }
         else if (statisticsQueryDto.getDayType()==3){
             // 获取当前日期
             LocalDate today = LocalDate.now();
-
+            start = statisticsQueryDto.getStartTime();
+            end = statisticsQueryDto.getEndTime();
             // 获取本月1号的日期
             YearMonth yearMonth = YearMonth.from(today);
 //            start = yearMonth.atDay(1);
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 0c6b0c9..9d0b2cd 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
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.order.api.model.TChargingOrder;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -34,4 +35,6 @@
     private BigDecimal orderAmount;
     @ApiModelProperty(value = "车牌")
     private String carNum;
+    private TChargingOrder tChargingOrder;
+    private Long periodCount;
 }
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 f955e49..4bd5a2e 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
@@ -29,8 +29,10 @@
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.time.LocalTime;
 import java.time.temporal.TemporalAdjusters;
 import java.util.Arrays;
 import java.util.List;
@@ -71,7 +73,10 @@
             startTime2 = split[1];
         }
         PageInfo<ChargingBillListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
+        PageInfo<ChargingBillListVO> pageInfo1 = new PageInfo<>(1,9999999);
         List<ChargingBillListVO> list = this.baseMapper.chargingBillList1(pageInfo,dto,startTime1,startTime2);
+        List<ChargingBillListVO> list1 = this.baseMapper.chargingBillList1(pageInfo1,dto,startTime1,startTime2);
+        chargingBillVO.setOrderCount(list1.size());
         BigDecimal paymentAmountTotal = new BigDecimal("0");
         BigDecimal orderAmountTotal = new BigDecimal("0");
         BigDecimal electrovalenceTotal = new BigDecimal("0");
@@ -109,15 +114,20 @@
 
             chargingBillListVO.setUid(chargingBillListVO.getId().toString());
             // 根据账单的出账时间 查询上个月的充电订单
-            LocalDateTime localDate = chargingBillListVO.getBillTime().minusMonths(1);
+//            LocalDateTime localDate = chargingBillListVO.getBillTime().minusMonths(1);
+            // todo 临时修改为查询昨天的充电订单
+            LocalDateTime localDate = chargingBillListVO.getBillTime().minusDays(1);
             // 账单周期
             chargingBillListVO.setBillWeek(localDate.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM")));
             // 获取 LocalDate 对象
             LocalDate date = localDate.toLocalDate();
-            // 获取该月份的第一天
-            LocalDate firstDayOfMonth = date.withDayOfMonth(1);
-            // 获取该月份的最后一天
-            LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth());
+//            // 获取该月份的第一天
+//            LocalDate firstDayOfMonth = date.withDayOfMonth(1);
+//            // 获取该月份的最后一天
+//            LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth());
+            // todo 临时修改为查询昨天凌晨00:00:00 到 23:59:59
+            LocalDateTime firstDayOfMonth = LocalDateTime.of(date, LocalTime.MIN);
+            LocalDateTime lastDayOfMonth = LocalDateTime.of(date, LocalTime.MAX);
             QueryWrapper<TChargingOrder> eq = new QueryWrapper<TChargingOrder>()
                     .between("create_time", firstDayOfMonth, lastDayOfMonth)
                     .eq("status", 5)
@@ -228,21 +238,17 @@
                 // 累加实收金额 支付金额减去退款金额
                 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){
                     paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount());
-                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount());
 
                 }else if (tChargingOrder.getPaymentAmount()!=null){
                     paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount());
-                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount());
                 }
                 // 累加订单金额
                 if (tChargingOrder.getOrderAmount()!=null){
                     orderAmount = orderAmount.add(tChargingOrder.getOrderAmount());
-                    orderAmountTotal = orderAmountTotal.add(tChargingOrder.getOrderAmount());
                 }
                 // 累加累计电费
                 if (tChargingOrder.getElectrovalence()!=null){
                     electrovalence = electrovalence.add(tChargingOrder.getElectrovalence());
-                    electrovalenceTotal = electrovalenceTotal.add(tChargingOrder.getElectrovalence());
                 }
                 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus() == 2){
                     refundAmount = refundAmount.add(tChargingOrder.getRefundAmount());
@@ -250,30 +256,20 @@
                 // 累加累计服务费
                 if (tChargingOrder.getServiceCharge()!=null){
                     serviceCharge = serviceCharge.add(tChargingOrder.getServiceCharge());
-                    serviceChargeTotal = serviceChargeTotal.add(tChargingOrder.getServiceCharge());
                 }
                 // 累加平台手续费
                 if (tChargingOrder.getCommissionAmount()!=null){
                     commissionAmount = commissionAmount.add(tChargingOrder.getCommissionAmount());
-                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getCommissionAmount());
                 }
                 // 累加平台分佣
                 if (tChargingOrder.getSharingAmount()!=null){
                     sharingAmount = sharingAmount.add(tChargingOrder.getSharingAmount());
-                    sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getSharingAmount());
                 }
                 // 累加充电度数
                 if (tChargingOrder.getChargingCapacity()!=null){
                     chargingCapacity = chargingCapacity.add(tChargingOrder.getChargingCapacity());
-                    chargingCapacityTotal = chargingCapacityTotal.add(tChargingOrder.getChargingCapacity());
                 }
-                // 累加优惠金额
-                if (tChargingOrder.getCouponDiscountAmount()!=null){
-                    discountTotal = discountTotal.add(tChargingOrder.getCouponDiscountAmount());
-                }
-                if (tChargingOrder.getVipDiscountAmount()!=null){
-                    discountTotal = discountTotal.add(tChargingOrder.getVipDiscountAmount());
-                }
+
             }
             // 将chargingSecond 这是以秒为单位存放的总秒数 将其转化为xx小时xx分钟xx秒
             int hours = chargingSecond / 3600;
@@ -315,6 +311,95 @@
             // 充电时间秒
             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")));
+            // 将billTime减去一个月 转化为yyyy-MM格式字符串
+            chargingBillVO.setBillWeek(billTime.minusMonths(1).format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM")));
+
+            chargingBillListVO.setUid(chargingBillListVO.getId().toString());
+            // 根据账单的出账时间 查询上个月的充电订单
+            LocalDateTime localDate = chargingBillListVO.getBillTime().minusMonths(1);
+            // 账单周期
+            chargingBillListVO.setBillWeek(localDate.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM")));
+            // 获取 LocalDate 对象
+            LocalDate date = localDate.toLocalDate();
+//            // 获取该月份的第一天
+//            LocalDate firstDayOfMonth = date.withDayOfMonth(1);
+//            // 获取该月份的最后一天
+//            LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth());
+            // todo 临时修改为查询昨天凌晨00:00:00 到 23:59:59
+            LocalDateTime firstDayOfMonth = LocalDateTime.of(date, LocalTime.MIN);
+            LocalDateTime lastDayOfMonth = LocalDateTime.of(date, LocalTime.MAX);
+            QueryWrapper<TChargingOrder> eq = new QueryWrapper<TChargingOrder>()
+                    .between("create_time", firstDayOfMonth, lastDayOfMonth)
+                    .eq("status", 5)
+                    .eq("recharge_payment_status", 2);
+            if (chargingBillListVO.getType() == 2) {
+                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);
+            for (TChargingOrder tChargingOrder : tChargingOrders) {
+
+                // 累加实收金额 支付金额减去退款金额
+                if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){
+                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount());
+
+                }else if (tChargingOrder.getPaymentAmount()!=null){
+                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount());
+                }
+                // 累加订单金额
+                if (tChargingOrder.getOrderAmount()!=null){
+                    orderAmountTotal = orderAmountTotal.add(tChargingOrder.getOrderAmount());
+                }
+                // 累加累计电费
+                if (tChargingOrder.getElectrovalence()!=null){
+                    electrovalenceTotal = electrovalenceTotal.add(tChargingOrder.getElectrovalence());
+                }
+                if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus() == 2){
+                    refundAmount = refundAmount.add(tChargingOrder.getRefundAmount());
+                }
+                // 累加累计服务费
+                if (tChargingOrder.getServiceCharge()!=null){
+                    serviceChargeTotal = serviceChargeTotal.add(tChargingOrder.getServiceCharge());
+                }
+                // 累加平台手续费
+                if (tChargingOrder.getServiceCharge()!=null){
+                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.006")));
+                }
+                // 累加平台分佣
+                if (tChargingOrder.getSharingAmount()!=null){
+                    sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getSharingAmount());
+                }
+                // 累加充电度数
+                if (tChargingOrder.getElectricity()!=null){
+
+                    chargingCapacityTotal = chargingCapacityTotal.add(tChargingOrder.getElectricity());
+                }
+                // 累加优惠金额
+                if (tChargingOrder.getCouponDiscountAmount()!=null){
+                    discountTotal = discountTotal.add(tChargingOrder.getCouponDiscountAmount());
+                }
+                if (tChargingOrder.getVipDiscountAmount()!=null){
+                    discountTotal = discountTotal.add(tChargingOrder.getVipDiscountAmount());
+                }
+            }
+        }
         chargingBillVO.setChargingCapacity(chargingCapacityTotal);
         chargingBillVO.setPaymentAmount(paymentAmountTotal);
         chargingBillVO.setOrderAmount(orderAmountTotal);
@@ -341,7 +426,9 @@
             startTime2 = split[1];
         }
         PageInfo<ChargingBillListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
+        PageInfo<ChargingBillListVO> pageInfo1 = new PageInfo<>(1,9999999);
         List<ChargingBillListVO> list = this.baseMapper.chargingBillList(pageInfo,dto,startTime1,startTime2);
+        List<ChargingBillListVO> list1 = this.baseMapper.chargingBillList(pageInfo1,dto,startTime1,startTime2);
         BigDecimal paymentAmountTotal = new BigDecimal("0");
         BigDecimal orderAmountTotal = new BigDecimal("0");
         BigDecimal electrovalenceTotal = new BigDecimal("0");
@@ -379,15 +466,20 @@
 
             chargingBillListVO.setUid(chargingBillListVO.getId().toString());
             // 根据账单的出账时间 查询上个月的充电订单
-            LocalDateTime localDate = chargingBillListVO.getBillTime().minusMonths(1);
+//            LocalDateTime localDate = chargingBillListVO.getBillTime().minusMonths(1);
+            // todo 临时修改为查询昨天的充电订单
+            LocalDateTime localDate = chargingBillListVO.getBillTime().minusDays(1);
             // 账单周期
             chargingBillListVO.setBillWeek(localDate.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM")));
             // 获取 LocalDate 对象
             LocalDate date = localDate.toLocalDate();
-            // 获取该月份的第一天
-            LocalDate firstDayOfMonth = date.withDayOfMonth(1);
-            // 获取该月份的最后一天
-            LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth());
+//            // 获取该月份的第一天
+//            LocalDate firstDayOfMonth = date.withDayOfMonth(1);
+//            // 获取该月份的最后一天
+//            LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth());
+            // todo 临时修改为查询昨天凌晨00:00:00 到 23:59:59
+            LocalDateTime firstDayOfMonth = LocalDateTime.of(date, LocalTime.MIN);
+            LocalDateTime lastDayOfMonth = LocalDateTime.of(date, LocalTime.MAX);
             QueryWrapper<TChargingOrder> eq = new QueryWrapper<TChargingOrder>()
                     .between("create_time", firstDayOfMonth, lastDayOfMonth)
                     .eq("status", 5)
@@ -498,21 +590,17 @@
                 // 累加实收金额 支付金额减去退款金额
                 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getPaymentAmount()!=null){
                     paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount());
-                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount()).subtract(tChargingOrder.getRefundAmount());
 
                 }else if (tChargingOrder.getPaymentAmount()!=null){
                     paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount());
-                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount());
                 }
                 // 累加订单金额
                 if (tChargingOrder.getOrderAmount()!=null){
                 orderAmount = orderAmount.add(tChargingOrder.getOrderAmount());
-                orderAmountTotal = orderAmountTotal.add(tChargingOrder.getOrderAmount());
                 }
                 // 累加累计电费
                 if (tChargingOrder.getElectrovalence()!=null){
                 electrovalence = electrovalence.add(tChargingOrder.getElectrovalence());
-                electrovalenceTotal = electrovalenceTotal.add(tChargingOrder.getElectrovalence());
                 }
                 if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus() !=null && tChargingOrder.getRefundStatus() == 2){
                     refundAmount = refundAmount.add(tChargingOrder.getRefundAmount());
@@ -520,29 +608,18 @@
                 // 累加累计服务费
                 if (tChargingOrder.getServiceCharge()!=null){
                 serviceCharge = serviceCharge.add(tChargingOrder.getServiceCharge());
-                serviceChargeTotal = serviceChargeTotal.add(tChargingOrder.getServiceCharge());
                 }
                 // 累加平台手续费
                 if (tChargingOrder.getCommissionAmount()!=null){
                     commissionAmount = commissionAmount.add(tChargingOrder.getCommissionAmount());
-                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getCommissionAmount());
                 }
                 // 累加平台分佣
                 if (tChargingOrder.getSharingAmount()!=null){
                     sharingAmount = sharingAmount.add(tChargingOrder.getSharingAmount());
-                    sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getSharingAmount());
                 }
                 // 累加充电度数
                 if (tChargingOrder.getChargingCapacity()!=null){
                     chargingCapacity = chargingCapacity.add(tChargingOrder.getChargingCapacity());
-                    chargingCapacityTotal = chargingCapacityTotal.add(tChargingOrder.getChargingCapacity());
-                }
-                // 累加优惠金额
-                if (tChargingOrder.getCouponDiscountAmount()!=null){
-                    discountTotal = discountTotal.add(tChargingOrder.getCouponDiscountAmount());
-                }
-                if (tChargingOrder.getVipDiscountAmount()!=null){
-                    discountTotal = discountTotal.add(tChargingOrder.getVipDiscountAmount());
                 }
             }
             // 将chargingSecond 这是以秒为单位存放的总秒数 将其转化为xx小时xx分钟xx秒
@@ -576,6 +653,98 @@
             // 充电时间秒
             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")));
+            // 将billTime减去一个月 转化为yyyy-MM格式字符串
+            chargingBillVO.setBillWeek(billTime.minusMonths(1).format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM")));
+
+            chargingBillListVO.setUid(chargingBillListVO.getId().toString());
+            // 根据账单的出账时间 查询上个月的充电订单
+//            LocalDateTime localDate = chargingBillListVO.getBillTime().minusMonths(1);
+            // todo 临时修改为查询昨天的充电订单
+            LocalDateTime localDate = chargingBillListVO.getBillTime().minusDays(1);
+            // 账单周期
+            chargingBillListVO.setBillWeek(localDate.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM")));
+            // 获取 LocalDate 对象
+            LocalDate date = localDate.toLocalDate();
+//            // 获取该月份的第一天
+//            LocalDate firstDayOfMonth = date.withDayOfMonth(1);
+//            // 获取该月份的最后一天
+//            LocalDate lastDayOfMonth = date.with(TemporalAdjusters.lastDayOfMonth());
+            // todo 临时修改为查询昨天凌晨00:00:00 到 23:59:59
+            LocalDateTime firstDayOfMonth = LocalDateTime.of(date, LocalTime.MIN);
+            LocalDateTime lastDayOfMonth = LocalDateTime.of(date, LocalTime.MAX);
+            QueryWrapper<TChargingOrder> eq = new QueryWrapper<TChargingOrder>()
+                    .between("create_time", firstDayOfMonth, lastDayOfMonth)
+                    .eq("status", 5)
+                    .eq("recharge_payment_status", 2);
+            if (chargingBillListVO.getType() == 2) {
+                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();
+            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());
+
+                }else if (tChargingOrder.getPaymentAmount()!=null){
+                    paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount());
+                    paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount());
+                }
+                // 累加订单金额
+                if (tChargingOrder.getOrderAmount()!=null){
+                    orderAmount = orderAmount.add(tChargingOrder.getOrderAmount());
+                    orderAmountTotal = orderAmountTotal.add(tChargingOrder.getOrderAmount());
+                }
+                // 累加累计电费
+                if (tChargingOrder.getElectrovalence()!=null){
+                    electrovalence = electrovalence.add(tChargingOrder.getElectrovalence());
+                    electrovalenceTotal = electrovalenceTotal.add(tChargingOrder.getElectrovalence());
+                }
+                if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus() !=null && tChargingOrder.getRefundStatus() == 2){
+                    refundAmount = refundAmount.add(tChargingOrder.getRefundAmount());
+                }
+                // 累加累计服务费
+                if (tChargingOrder.getServiceCharge()!=null){
+                    serviceCharge = serviceCharge.add(tChargingOrder.getServiceCharge());
+                    serviceChargeTotal = serviceChargeTotal.add(tChargingOrder.getServiceCharge());
+                }
+                // 累加平台手续费
+                if (tChargingOrder.getServiceCharge()!=null){
+                    commissionAmount = commissionAmount.add(tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.006")).setScale(2, RoundingMode.HALF_DOWN));
+                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getServiceCharge().multiply(new BigDecimal("0.006")).setScale(2, RoundingMode.HALF_DOWN));
+                }
+                // 累加平台分佣
+                if (tChargingOrder.getSharingAmount()!=null){
+                    sharingAmount = sharingAmount.add(tChargingOrder.getSharingAmount());
+                    sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getSharingAmount());
+                }
+                // 累加充电度数
+                if (tChargingOrder.getElectricity()!=null){
+                    chargingCapacity = chargingCapacity.add(tChargingOrder.getElectricity());
+                    chargingCapacityTotal = chargingCapacityTotal.add(tChargingOrder.getElectricity());
+                }
+                // 累加优惠金额
+                if (tChargingOrder.getCouponDiscountAmount()!=null){
+                    discountTotal = discountTotal.add(tChargingOrder.getCouponDiscountAmount());
+                }
+                if (tChargingOrder.getVipDiscountAmount()!=null){
+                    discountTotal = discountTotal.add(tChargingOrder.getVipDiscountAmount());
+                }
+            }
+        }
         chargingBillVO.setChargingCapacity(chargingCapacityTotal);
         chargingBillVO.setPaymentAmount(paymentAmountTotal);
         chargingBillVO.setOrderAmount(orderAmountTotal);
@@ -585,8 +754,6 @@
         chargingBillVO.setCommissionAmount(commissionAmountTotal);
         chargingBillVO.setSharingAmount(sharingAmountTotal);
         chargingBillVO.setDiscount(discountTotal);
-
-
         pageInfo.setRecords(list);
         chargingBillVO.setList(pageInfo);
         return chargingBillVO;
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 6428d7a..c337f27 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
@@ -1072,6 +1072,7 @@
 			endTime2 = split[1];
 		}
 		PageInfo<ChargingOrderVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
+		PageInfo<ChargingOrderVO> pageInfo1 = new PageInfo<>(1,9999999);
 
 		if (StringUtils.hasLength(dto.getPhone())){
 			List<Long> data = appUserClient.getUserIdsByPhone(dto.getPhone()).getData();
@@ -1082,12 +1083,15 @@
 			dto.setUserIds(data);
 		}
 		List<ChargingOrderVO> list = this.baseMapper.chargingOrder(pageInfo,dto,startTime1,startTime2,endTime1,endTime2);
+		List<ChargingOrderVO> list1 = this.baseMapper.chargingOrder(pageInfo1,dto,startTime1,startTime2,endTime1,endTime2);
 		 BigDecimal total = new BigDecimal("0");
 		 long time = 0L;
 		 BigDecimal income = new BigDecimal("0");
 		 BigDecimal electronicMoney = new BigDecimal("0");
 		 BigDecimal serviceMoney = new BigDecimal("0");
 		for (ChargingOrderVO chargingOrderVO : list) {
+			chargingOrderVO.setCommissionAmount(chargingOrderVO.getServiceCharge().multiply(new BigDecimal("0.006")));
+			chargingOrderVO.setPlatFormMoney(chargingOrderVO.getServiceCharge().multiply(new BigDecimal("0.006")));
 			chargingOrderVO.setUid(chargingOrderVO.getId()+"");
 			TChargingGun data3 = chargingGunClient.getChargingGunById(chargingOrderVO.getChargingGunId()).getData();
 			TChargingPile data2 = chargingPileClient.getChargingPileById(chargingOrderVO.getChargingPileId()).getData();
@@ -1099,10 +1103,6 @@
 			}
 			if (data2!=null && data3!=null){
 				chargingOrderVO.setTerminalName(data2.getName()+"-"+data3.getName());
-
-			}
-			if (chargingOrderVO.getChargingCapacity()!=null){
-				total = total.add(chargingOrderVO.getElectricity());
 			}
 			// 充电订单 明细记录
 			List<TChargingOrderAccountingStrategy> chargingOrderId = chargingOrderAccountingStrategyService.list(new QueryWrapper<TChargingOrderAccountingStrategy>()
@@ -1111,14 +1111,6 @@
 			if (data5!=null){
 				long l = data5.getCumulative_charging_time() * 60L;
 				chargingOrderVO.setChargingSecond(l);
-				time+=l;
-			}
-			electronicMoney = electronicMoney.add(chargingOrderVO.getElectrovalence());
-			serviceMoney = serviceMoney.add(chargingOrderVO.getServiceCharge());
-
-			income = income.add(chargingOrderVO.getServiceCharge().add(chargingOrderVO.getElectrovalence()));
-			if (chargingOrderVO.getRefundAmount()!=null){
-				income = income.subtract(chargingOrderVO.getRefundAmount());
 			}
 			// 充电时段数
 			int size = chargingOrderId.size();
@@ -1138,6 +1130,27 @@
 				}
 
 			}
+		}
+		for (ChargingOrderVO chargingOrderVO : list1) {
+			if (chargingOrderVO.getChargingCapacity()!=null){
+				total = total.add(chargingOrderVO.getElectricity());
+			}
+			// 充电订单 明细记录
+			List<TChargingOrderAccountingStrategy> chargingOrderId = chargingOrderAccountingStrategyService.list(new QueryWrapper<TChargingOrderAccountingStrategy>()
+					.eq("charging_order_id", chargingOrderVO.getId()));
+			UploadRealTimeMonitoringData data5 = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrderVO.getCode()).getData();
+			if (data5!=null){
+				long l = data5.getCumulative_charging_time() * 60L;
+				chargingOrderVO.setChargingSecond(l);
+				time+=l;
+			}
+			electronicMoney = electronicMoney.add(chargingOrderVO.getElectrovalence());
+			serviceMoney = serviceMoney.add(chargingOrderVO.getServiceCharge());
+
+			income = income.add(chargingOrderVO.getOrderAmount());
+
+
+
 		}
 		tCharingOrderVO.setTotal(total);
 		tCharingOrderVO.setTime(time);
@@ -1241,7 +1254,7 @@
 				dto.setUserIds(carIds);
 			}
 		}
-		if (StringUtils.hasLength(dto.getPhone())){
+		if (StringUtils.hasLength(dto.getLicensePlate())){
 			List<Long> data = appUserCarClient.getAppUserCarByLicensePlates(dto.getLicensePlate()).getData();
 			if(data!=null){
 				if (!data.isEmpty()){
@@ -1259,6 +1272,12 @@
 		PageInfo<ChargingOrderListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
 		List<ChargingOrderListVO> list = this.baseMapper.chargingList(pageInfo,dto,startTime1,startTime2,endTime1,endTime2);
 		for (ChargingOrderListVO chargingOrderListVO : list) {
+			chargingOrderListVO.setChargingCapacity(chargingOrderListVO.getElectricity());
+			chargingOrderListVO.setPaymentAmount(chargingOrderListVO.getOrderAmount());
+			BigDecimal bigDecimal = new BigDecimal("0.006");
+			if (chargingOrderListVO.getServiceCharge()!=null){
+				chargingOrderListVO.setCommissionAmount(chargingOrderListVO.getServiceCharge().multiply(bigDecimal));
+			}
 			chargingOrderListVO.setPaymentAmount(chargingOrderListVO.getResidualAmount()==null?chargingOrderListVO.getPaymentAmount():chargingOrderListVO.getPaymentAmount().subtract(chargingOrderListVO.getResidualAmount()));
 			chargingOrderListVO.setUid(chargingOrderListVO.getId()+"");
 			List<Integer> integers = new ArrayList<>();
@@ -1316,6 +1335,9 @@
 			BigDecimal gu = new BigDecimal("0");
 			BigDecimal total = new BigDecimal("0");
 			for (TChargingOrderAccountingStrategy temp : list2) {
+				if (temp.getChargingCapacity() == null){
+					temp.setChargingCapacity(BigDecimal.ZERO);
+				}
 				switch (temp.getType()) {
 					case 1:
 						jian = jian.add(temp.getChargingCapacity());
@@ -1376,9 +1398,9 @@
 		BigDecimal ping = new BigDecimal("0");
 		BigDecimal gu = new BigDecimal("0");
 		for (ChargingOrderListVO chargingOrderListVO : list1) {
-			if (chargingOrderListVO.getChargingCapacity()!=null)electronic = electronic.add(chargingOrderListVO.getChargingCapacity());
+			if (chargingOrderListVO.getChargingCapacity()!=null)electronic = electronic.add(chargingOrderListVO.getElectricity());
 
-			if (chargingOrderListVO.getPaymentAmount()!=null)paymentAmount = paymentAmount.add(chargingOrderListVO.getPaymentAmount());
+			if (chargingOrderListVO.getPaymentAmount()!=null)paymentAmount = paymentAmount.add(chargingOrderListVO.getOrderAmount());
 			if (chargingOrderListVO.getElectrovalence()!=null)electrovalence = electrovalence.add(chargingOrderListVO.getElectrovalence());
 			if (chargingOrderListVO.getServiceCharge()!=null)serviceCharge = serviceCharge.add(chargingOrderListVO.getServiceCharge());
 			List<TChargingOrderAccountingStrategy> list2 = chargingOrderAccountingStrategyService.lambdaQuery()
@@ -1465,6 +1487,12 @@
 		TChargingOrder chargingOrder= this.getById(uid);
 
 		ChargingOrderListInfoVO chargingOrderListInfoVO = new ChargingOrderListInfoVO();
+
+		chargingOrderListInfoVO.setStatus(chargingOrder.getStatus());
+		BigDecimal bigDecimal = new BigDecimal("0.006");
+		if (chargingOrder.getServiceCharge()!=null){
+			chargingOrderListInfoVO.setCommissionAmount(chargingOrder.getServiceCharge().multiply(bigDecimal));
+		}
 		chargingOrderListInfoVO.setElectrovalence(chargingOrder.getElectrovalence());
 		chargingOrderListInfoVO.setServiceCharge(chargingOrder.getServiceCharge());
 		if (chargingOrder.getElectrovalence()!=null && chargingOrder.getServiceCharge()!=null){
@@ -1504,6 +1532,13 @@
 		if (chargingOrder.getCode()!=null){
 			List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataClient.getDataByOrderCode(chargingOrder.getCode()).getData();
 			if (data6!=null){
+				for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data6) {
+					if (uploadRealTimeMonitoringData.getOutput_current()!=null&&
+							uploadRealTimeMonitoringData.getOutput_voltage()!=null){
+						uploadRealTimeMonitoringData.setPower(uploadRealTimeMonitoringData.getOutput_voltage()
+								.multiply(uploadRealTimeMonitoringData.getOutput_current()));
+					}
+				}
 				if (!data6.isEmpty()){
 					// 第一条数据soc为开始 最后一条数据soc为结束soc
 					chargingOrderListInfoVO.setStartSoc(data6.get(0).getSoc().toString());
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
index 7f8b25f..05e1997 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
@@ -102,7 +102,10 @@
 
 
         PageInfo<TActivityStatisticslVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
+        PageInfo<TActivityStatisticslVO> pageInfo1 = new PageInfo<>(1,9999999);
         List<TActivityStatisticslVO> list = this.baseMapper.activityStatistics(pageInfo,dto);
+        List<TActivityStatisticslVO> list1 = this.baseMapper.activityStatistics(pageInfo1,dto);
+
         list.sort((o1, o2) -> o2.getCreateTime().compareTo(o1.getCreateTime()));
         // 优惠券金额
         BigDecimal coupon = new BigDecimal("0");
@@ -113,7 +116,76 @@
         // 赠送会员
         BigDecimal grantVip = new BigDecimal("0");
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        for (TActivityStatisticslVO tActivityStatisticslVO : list1) {
+            // 判断享有了哪些类型
+            switch (tActivityStatisticslVO.getOrderType()){
+                case 1:
+                    StringBuilder stringBuilder = new StringBuilder();
 
+                    // 充电订单 优惠券金额大于0
+                    if (tActivityStatisticslVO.getCouponDiscountAmount()!=null
+                            &&
+                            (tActivityStatisticslVO.getCouponDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
+                        coupon = coupon.add(tActivityStatisticslVO.getCouponDiscountAmount());
+                        stringBuilder.append("优惠券抵扣").append("+");
+                    }
+                    if (tActivityStatisticslVO.getVipDiscountAmount()!=null &&(tActivityStatisticslVO.getVipDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
+                        discount = discount.add(tActivityStatisticslVO.getVipDiscountAmount());
+                        stringBuilder.append("会员抵扣").append("+");
+                    }
+                    if (stringBuilder.length()>0){
+                        stringBuilder.deleteCharAt(stringBuilder.length()-1);
+                        tActivityStatisticslVO.setType(stringBuilder.toString());
+                    }
+                    tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
+                    break;
+                case 2:
+                    StringBuilder stringBuilder1 = new StringBuilder();
+
+                    // 购物订单 优惠券金额大于0
+                    if (tActivityStatisticslVO.getCouponDiscountAmount()!=null
+                            &&
+                            (tActivityStatisticslVO.getCouponDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
+                        coupon = coupon.add(tActivityStatisticslVO.getCouponDiscountAmount());
+                        stringBuilder1.append("优惠券抵扣").append("+");
+                    }
+                    if (tActivityStatisticslVO.getVipDiscountAmount()!=null
+                            &&
+                            (tActivityStatisticslVO.getVipDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
+                        discount = discount.add(tActivityStatisticslVO.getVipDiscountAmount());
+                        stringBuilder1.append("会员抵扣").append("+");
+                    }
+                    if (stringBuilder1.length()>0){
+                        stringBuilder1.deleteCharAt(stringBuilder1.length()-1);
+                    }
+                    tActivityStatisticslVO.setType(stringBuilder1.toString());
+                    tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
+                    break;
+                case 3:
+                    // 会员订单 优惠金额大于0
+                    if (tActivityStatisticslVO.getVipDiscountAmount()!=null
+                            &&
+                            (tActivityStatisticslVO.getCouponDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
+                        vipActivity = vipActivity.add(tActivityStatisticslVO.getVipDiscountAmount());
+                    }
+                    tActivityStatisticslVO.setType("会员活动");
+                    tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
+                    break;
+                case 4:
+                    // 赠送会员订单 如果支付金额为0 那么就是后台赠送的会员
+                    if (tActivityStatisticslVO.getPaymentAmount().compareTo(BigDecimal.ZERO)==0){
+                        grantVip = grantVip.add(tActivityStatisticslVO.getOrderAmount());
+                        tActivityStatisticslVO.setType("赠送会员");
+                        tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
+                    }else{
+                        // 赠送
+                        grantVip = grantVip.add(tActivityStatisticslVO.getVipDiscountAmount());
+                        tActivityStatisticslVO.setType("赠送会员");
+                        tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
+                    }
+                    break;
+            }
+        }
         for (TActivityStatisticslVO tActivityStatisticslVO : list) {
             // 判断享有了哪些类型
             switch (tActivityStatisticslVO.getOrderType()){
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
index fdd88a3..a1e684f 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
@@ -49,9 +49,9 @@
 
 
 @Scheduled(cron = "0 0 12 1 * ?")
+//@Scheduled(fixedRate = 60000)
     public void taskMonth() {
         try {
-            System.err.println("执行定时任务生成账单");
             // 获取上个月的开始和结束日期
             LocalDate firstDayOfLastMonth = LocalDate.now().minusMonths(1).
                     withDayOfMonth(2);
@@ -71,33 +71,70 @@
             tChargingBill.setBillTime(LocalDateTime.now());
             tChargingBill.setStatus(1);
             tChargingBill.setOrderState(2);
+            tChargingBill.setBillType(1);
+            System.err.println("定时任务生成充电算帐单:全站");
             chargingBillService.save(tChargingBill);
-            // 每月二号给每个站点生成上月账单
+            // 生成一次全站订单
+            TChargingBill tChargingBill1 = new TChargingBill();
+            // 订单生成规则JSD+20231201(账单所属月份)+1131304205(随机10位数)+001(当月账单序号,每月重置)
+            Random random1 = new Random();
+            String randomDigits1 = random1.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+                    .mapToObj(String::valueOf)
+                    .collect(Collectors.joining()); // 将其连接成一个字符串
+            tChargingBill1.setCode("JSD"+string+randomDigits1 );
+            tChargingBill1.setType(1);
+            tChargingBill1.setSiteId(0);
+            tChargingBill1.setBillTime(LocalDateTime.now());
+            tChargingBill1.setStatus(1);
+            tChargingBill1.setOrderState(2);
+            tChargingBill1.setBillType(2);
+            System.err.println("定时任务生成账户结算帐单:全站");
+            chargingBillService.save(tChargingBill1);
+            System.err.println("定时任务生成各个站点结算帐单");
             List<Integer> collect = siteClient.getSiteAll().getData().stream().map(Site::getId).collect(Collectors.toList());
+            // 充电算帐单
             List<TChargingBill> tChargingBills = new ArrayList<>();
+            // 账户结算账单
+            List<TChargingBill> tChargingBills1 = new ArrayList<>();
             for (int i = 0; i < collect.size(); i++) {
-                TChargingBill tChargingBill1 = new TChargingBill();
-                Random random1 = new Random();
-                String randomDigits1 = random1.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+                TChargingBill tChargingBill2 = new TChargingBill();
+                Random random2 = new Random();
+                String randomDigits2 = random2.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
                         .mapToObj(String::valueOf)
                         .collect(Collectors.joining()); // 将其连接成一个字符串
-                tChargingBill1.setCode("JSD"+string+randomDigits1+(i+1) );
-                tChargingBill1.setType(2);
-                tChargingBill1.setSiteId(collect.get(i));
-                tChargingBill1.setBillTime(LocalDateTime.now());
-                tChargingBill1.setStatus(1);
-                tChargingBill1.setOrderState(2);
-                tChargingBills.add(tChargingBill1);
+                tChargingBill2.setCode("JSD"+string+randomDigits2+(i+1) );
+                tChargingBill2.setType(2);
+                tChargingBill2.setSiteId(collect.get(i));
+                tChargingBill2.setBillTime(LocalDateTime.now());
+                tChargingBill2.setBillType(1);
+                tChargingBill2.setStatus(1);
+                tChargingBill2.setOrderState(2);
+                tChargingBills.add(tChargingBill2);
+                TChargingBill tChargingBill3 = new TChargingBill();
+                Random random3 = new Random();
+                String randomDigits3 = random3.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
+                        .mapToObj(String::valueOf)
+                        .collect(Collectors.joining()); // 将其连接成一个字符串
+                tChargingBill3.setCode("JSD"+string+randomDigits3+(i+1) );
+                tChargingBill3.setType(2);
+                tChargingBill3.setSiteId(collect.get(i));
+                tChargingBill3.setBillTime(LocalDateTime.now());
+                tChargingBill3.setBillType(1);
+                tChargingBill3.setStatus(1);
+                tChargingBill3.setOrderState(2);
+                tChargingBills1.add(tChargingBill3);
             }
             System.err.println("列表"+tChargingBills);
             if (!tChargingBills.isEmpty())chargingBillService.saveBatch(tChargingBills);
+            if (!tChargingBills1.isEmpty())chargingBillService.saveBatch(tChargingBills1);
 
         } catch (Exception e) {
             e.printStackTrace();
         }
     }
-    // 每个月最后一天23点执行的定时任务
-    @Scheduled(cron = "0 0 12 1 * ?")
+
+    // 每天晚上23:59:59执行的定时任务
+    @Scheduled(cron = "0 0 23 1 * ?")
     public void taskLastDay() {
         try {
             // 获取上个月的开始和结束日期
@@ -110,10 +147,10 @@
             LocalDateTime endDateTime = lastDayOfLastMonth.atTime(23, 59, 59); // 设定到最后一秒
             // 构建查询条件
             LambdaQueryWrapper<TChargingBill> queryWrapper = new LambdaQueryWrapper<>();
-            queryWrapper.ge(TChargingBill::getBillTime,
-                            Date.from(startDateTime.atZone(ZoneId.systemDefault()).toInstant()))
-                    .le(TChargingBill::getBillTime,
-                            Date.from(endDateTime.atZone(ZoneId.systemDefault()).toInstant())); // 使用 le 包括最后一天的记录
+//            queryWrapper.ge(TChargingBill::getBillTime,
+//                            Date.from(startDateTime.atZone(ZoneId.systemDefault()).toInstant()))
+//                    .le(TChargingBill::getBillTime,
+//                            Date.from(endDateTime.atZone(ZoneId.systemDefault()).toInstant())); // 使用 le 包括最后一天的记录
             List<TChargingBill> list = chargingBillService.list(queryWrapper);
             for (TChargingBill tChargingBill : list) {
                 tChargingBill.setStatus(2);
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
index 15ee690..b995f9a 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
@@ -92,6 +92,9 @@
         <if test="req.status != null ">
             and t1.status = #{req.status}
         </if>
+        <if test="req.orderSource != null and req.orderSource != 1 ">
+            and t1.orderSource = #{req.orderSource}
+        </if>
         <if test="req.siteId != null ">
             and t1.site_id = #{req.siteId}
         </if>
@@ -108,6 +111,7 @@
             and (t1.end_time between #{endTime1} and #{endTime2})
         </if>
         and t1.del_flag = 0
+        order by t1.create_time desc
     </select>
     <select id="payOrderQuery" resultType="com.ruoyi.order.dto.PayOrderDto">
         SELECT o.*,i.phone FROM (SELECT
@@ -872,6 +876,9 @@
         <if test="endTime1 != null and endTime1!=''">
             and (t1.end_time between #{endTime1} and #{endTime2})
         </if>
+        AND t1.del_flag = 0
+        and t1.start_time IS NOT NULL
+        order by t1.create_time desc
     </select>
     <select id="chargingListNoPage" resultType="com.ruoyi.order.api.vo.ChargingOrderListVO">
         select t1.* from t_charging_order t1
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
index 8e5f18f..e09a61f 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TGoodsController.java
@@ -131,14 +131,20 @@
         if (byId==null||byId.getStatus()==2){
             return R.fail(2,"该商品已不存在");
         }
-        return R.ok(byId);}
+//            List<Integer> data = orderClient.getSalesCountByGoodsId(String.valueOf(id)).getData();
+//            for (int i = 0; i < list.size(); i++) {
+//                list.get(i).setSalesCount(data.get(i));
+//            }
+
+        return R.ok(byId);
+        }
         else {
             TCoupon byId = couponService.getById(id);
             if (byId==null||byId.getStatus()==2){
                 return R.fail(2,"该商品已不存在");
             }
-            return R.ok(byId);
-    }
+                return R.ok(byId);
+            }
     }
 
 
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TGoodsServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TGoodsServiceImpl.java
index b9f434d..7a58640 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TGoodsServiceImpl.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TGoodsServiceImpl.java
@@ -83,10 +83,10 @@
         // 订单号加上商品类型
         String res = string+"-"+dto.getType();
 
-//        List<Integer> data = orderClient.getSalesCountByGoodsId(res).getData();
-//        for (int i = 0; i < list.size(); i++) {
-//            list.get(i).setSalesCount(data.get(i));
-//        }
+        List<Integer> data = orderClient.getSalesCountByGoodsId(res).getData();
+        for (int i = 0; i < list.size(); i++) {
+            list.get(i).setSalesCount(data.get(i));
+        }
         pageInfo.setRecords(list);
         return pageInfo;
     }

--
Gitblit v1.7.1