From 000e98d896ab54b1a91ca7f595e079a329409e12 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 22 八月 2024 21:03:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java |   26 ++++++++++--
 ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TVip.java                        |    4 +
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TVipServiceImpl.java           |   23 +++++++++++
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java          |    3 +
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java    |    5 +-
 ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TCharingOrderVO.java                 |   25 ++++++++++++
 6 files changed, 77 insertions(+), 9 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TCharingOrderVO.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TCharingOrderVO.java
new file mode 100644
index 0000000..6a1db27
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TCharingOrderVO.java
@@ -0,0 +1,25 @@
+package com.ruoyi.order.api.vo;
+
+import com.ruoyi.common.core.web.page.PageInfo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+@ApiModel(value = "TOrderAppealVO对象", description = "充电桩订单VO")
+public class TCharingOrderVO {
+    @ApiModelProperty(value = "分页列表")
+    private PageInfo<ChargingOrderVO> list;
+    @ApiModelProperty(value = "总充电量")
+    private BigDecimal total;
+    @ApiModelProperty(value = "充电时长")
+    private BigDecimal time;
+    @ApiModelProperty(value = "收入")
+    private BigDecimal income;
+    @ApiModelProperty(value = "电费")
+    private BigDecimal electronicMoney;
+    @ApiModelProperty(value = "服务费")
+    private BigDecimal serviceMoney;
+}
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TVip.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TVip.java
index 798028d..93d41af 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TVip.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TVip.java
@@ -148,7 +148,9 @@
     @TableField("type")
     private Integer type;
 
-
+    @ApiModelProperty(value = "优惠券名称和张数 后台列表展示使用")
+    @TableField(exist = false)
+    private String couponName;
 
 
 }
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 726a850..6f39524 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
@@ -14,6 +14,7 @@
 import com.ruoyi.order.api.query.ChargingOrderQuery;
 import com.ruoyi.order.api.query.TChargingCountQuery;
 import com.ruoyi.order.api.vo.ChargingOrderVO;
+import com.ruoyi.order.api.vo.TCharingOrderVO;
 import com.ruoyi.order.dto.GetMyChargingOrderList;
 import com.ruoyi.order.dto.GetNoInvoicedOrder;
 import com.ruoyi.order.dto.MyChargingOrderInfo;
@@ -70,8 +71,8 @@
     @ResponseBody
     @PostMapping(value = "/chargingOrder")
     @ApiOperation(value = "充电桩订单列表", tags = {"管理后台-订单管理"})
-    public AjaxResult<PageInfo<ChargingOrderVO>> chargingOrder(@RequestBody ChargingOrderQuery dto){
-        PageInfo<ChargingOrderVO> res = chargingOrderService.chargingOrder(dto);
+    public AjaxResult<TCharingOrderVO> chargingOrder(@RequestBody ChargingOrderQuery dto){
+        TCharingOrderVO res = chargingOrderService.chargingOrder(dto);
         return AjaxResult.success(res);
     }
 
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
index 06c75b4..1fbe0e4 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java
@@ -7,6 +7,7 @@
 import com.ruoyi.order.api.model.TChargingOrder;
 import com.ruoyi.order.api.query.ChargingOrderQuery;
 import com.ruoyi.order.api.vo.ChargingOrderVO;
+import com.ruoyi.order.api.vo.TCharingOrderVO;
 import com.ruoyi.order.dto.*;
 import org.springframework.web.bind.annotation.RequestBody;
 
@@ -82,5 +83,5 @@
 	 */
 	AjaxResult stopCharging(String id);
 
-    PageInfo<ChargingOrderVO> chargingOrder(ChargingOrderQuery dto);
+	TCharingOrderVO chargingOrder(ChargingOrderQuery dto);
 }
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 f203995..425fe9e 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
@@ -1,5 +1,7 @@
 package com.ruoyi.order.service.impl;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.account.api.feignClient.AppUserCarClient;
@@ -25,15 +27,18 @@
 import com.ruoyi.order.api.model.TChargingOrderAccountingStrategy;
 import com.ruoyi.order.api.query.ChargingOrderQuery;
 import com.ruoyi.order.api.vo.ChargingOrderVO;
+import com.ruoyi.order.api.vo.TCharingOrderVO;
 import com.ruoyi.order.dto.*;
 import com.ruoyi.order.mapper.TChargingOrderMapper;
 import com.ruoyi.order.service.TChargingOrderAccountingStrategyService;
 import com.ruoyi.order.service.TChargingOrderService;
+import com.ruoyi.other.api.domain.TCoupon;
 import com.ruoyi.other.api.domain.TVip;
 import com.ruoyi.payment.api.feignClient.WxPaymentClient;
 import com.ruoyi.payment.api.vo.NotifyV3PayDecodeRespBody;
 import com.ruoyi.payment.api.vo.PaymentOrder;
 import io.seata.spring.annotation.GlobalTransactional;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
@@ -64,6 +69,8 @@
 	
 	@Resource
 	private AppUserCarClient appUserCarClient;
+	@Resource
+	private AppUserClient appUserClient;
 	
 	@Resource
 	private TChargingOrderAccountingStrategyService chargingOrderAccountingStrategyService;
@@ -77,9 +84,7 @@
 	@Resource
 	private ChargingPileClient chargingPileClient;
 	
-	@Resource
-	private AppUserClient appUserClient;
-	
+
 	@Resource
 	private AppUserVipDetailClient appUserVipDetailClient;
 	
@@ -392,8 +397,10 @@
 		return AjaxResult.success();
 	}
 
+
     @Override
-    public PageInfo<ChargingOrderVO> chargingOrder(ChargingOrderQuery dto) {
+    public TCharingOrderVO chargingOrder(ChargingOrderQuery dto) {
+		TCharingOrderVO tCharingOrderVO = new TCharingOrderVO();
 		String startTime1 = null;
 		String startTime2 = null;
 		String endTime1 = null;
@@ -409,9 +416,18 @@
 			endTime1 = split[0];
 			endTime2 = split[1];
 		}
+		if (StringUtils.hasLength(dto.getPhone())){
+			List<Long> data = appUserClient.getUserIdsByPhone(dto.getPhone()).getData();
+			if (data.isEmpty()){
+				data.add(0L);
+			}
+			dto.setUserIds(data);
+		}
 		PageInfo<ChargingOrderVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
 		List<ChargingOrderVO> list = this.baseMapper.chargingOrder(pageInfo,dto,startTime1,startTime2,endTime1,endTime2);
+
 		pageInfo.setRecords(list);
-        return pageInfo;
+		tCharingOrderVO.setList(pageInfo);
+        return tCharingOrderVO;
     }
 }
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TVipServiceImpl.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TVipServiceImpl.java
index 0b9319a..f0d8245 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TVipServiceImpl.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/service/impl/TVipServiceImpl.java
@@ -1,10 +1,15 @@
 package com.ruoyi.other.service.impl;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.ruoyi.common.core.web.page.PageInfo;
+import com.ruoyi.other.api.domain.TCoupon;
 import com.ruoyi.other.api.domain.TVip;
+import com.ruoyi.other.mapper.TCouponMapper;
 import com.ruoyi.other.mapper.TVipMapper;
 import com.ruoyi.other.service.TVipService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -20,10 +25,28 @@
 @Service
 public class TVipServiceImpl extends ServiceImpl<TVipMapper, TVip> implements TVipService {
 
+    @Autowired
+    private TCouponMapper tCouponMapper;
     @Override
     public PageInfo<TVip> pageList(Integer pageCurr,Integer pageSize) {
         PageInfo<TVip> pageInfo = new PageInfo<>(pageCurr,pageSize);
         List<TVip> list = this.baseMapper.pageList(pageInfo);
+
+        for (TVip tVip : list) {
+            String coupon = tVip.getCoupon();
+            JSONArray jsonArray = JSONObject.parseArray(coupon);
+            StringBuilder stringBuilder = new StringBuilder();
+            for (int i = 0; i < jsonArray.size(); i++) {
+                JSONObject jsonObject = jsonArray.getJSONObject(i);
+                Integer id = jsonObject.getInteger("id");
+                Integer number = jsonObject.getInteger("number");
+                TCoupon tCoupon = tCouponMapper.selectById(id);
+                if (tCoupon!=null){
+                    stringBuilder.append(tCoupon.getName()).append("*").append(number).append(";");
+                }
+            }
+            tVip.setCouponName(stringBuilder.toString());
+        }
         pageInfo.setRecords(list);
         return pageInfo;
     }

--
Gitblit v1.7.1