From 07aa59cf3e26a25792f40ec8e92f316e907aec9c Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期日, 29 九月 2024 18:00:45 +0800
Subject: [PATCH] 合併代碼

---
 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml                 |   19 +++++----
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java   |    6 ++-
 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserCarClient.java  |    2 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java   |   18 +++++++-
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java |   40 +++++++++++--------
 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TExchangeOrderMapper.xml                 |   20 +++++++--
 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml                      |    2 
 ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml                         |    2 
 8 files changed, 71 insertions(+), 38 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserCarClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserCarClient.java
index 80a88a5..a0a477c 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserCarClient.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserCarClient.java
@@ -26,7 +26,7 @@
      * @param carIds 车辆id集合
      * @return
      */
-    @PostMapping(value = "/t-app-user-car/getCarByIds")
+    @PostMapping(value = "/t-app-user-car/t-app-user-car/getCarByIds")
     public R<List<TAppUserCar>> getCarByIds(@RequestBody List<Long> carIds);
     
     
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
index e17f179..f675847 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppCouponController.java
@@ -223,6 +223,7 @@
      */
     @PostMapping("/grantCoupon")
     public R  grantCoupon(@RequestBody GrantCouponDto dto){
+        dto.setWaysToObtain(3);
         List<TAppCoupon> res = new ArrayList<>();
         TCoupon coupon = otherClient.getCouponById(dto.getCouponId()).getData();
 
@@ -246,9 +247,20 @@
                 break;
             case 2:
                 // 根据市codes 查询用户ids
-                List<Long> collect1 = appUserService.list(new QueryWrapper<TAppUser>()
-                                .in("city_code", Arrays.asList(dto.getCityCode().split(","))))
-                        .stream().map(TAppUser::getId).collect(Collectors.toList());
+                List<Long> collect1 = new ArrayList<>();
+                // 根据市codes 查询用户ids
+                if (StringUtils.hasLength(dto.getProvinceCode())){
+                    List<Long> collect2 = appUserService.list(new QueryWrapper<TAppUser>()
+                            .in("province_code", Arrays.asList(dto.getProvinceCode().split(","))))
+                            .stream().map(TAppUser::getId).collect(Collectors.toList());
+                    collect1.addAll(collect2);
+                }
+                if (StringUtils.hasLength(dto.getCityCode())){
+                    List<Long> collect2 = appUserService.list(new QueryWrapper<TAppUser>()
+                            .in("city_code", Arrays.asList(dto.getCityCode().split(","))))
+                            .stream().map(TAppUser::getId).collect(Collectors.toList());
+                    collect1.addAll(collect2);
+                }
                 for (Long l : collect1) {
                     TAppCoupon tAppCoupon = new TAppCoupon();
                     tAppCoupon.setAppUserId(l);
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
index 26c049f..42d7456 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TExchangeOrderController.java
@@ -202,14 +202,16 @@
                 for (int i = 0; i < split1.length; i++) {
                     Integer reduce = tShoppingOrderService.list(new QueryWrapper<TShoppingOrder>()
                                     .eq("order_type",1)
-                                    .ne("refund_status", 2))
+                                    .eq("goods_id", split1[i])
+                                    .isNull("refund_status"))
                             .stream().map(TShoppingOrder::getPurchaseQuantity).reduce(0, Integer::sum);
                     res.add(reduce);
                 }
                 break;
             case 2:
                 for (int i = 0; i < split1.length; i++) {
-                    Integer reduce = exchangeOrderService.list(new QueryWrapper<TExchangeOrder>().eq("order_type",1).ne("status",4).eq("goods_id", split1[i]))
+                    Integer reduce = exchangeOrderService.list(new QueryWrapper<TExchangeOrder>().eq("order_type",1)
+                            .ne("status",4).eq("goods_id", split1[i]))
                             .stream().map(TExchangeOrder::getPurchaseQuantity).reduce(0, Integer::sum);
                     res.add(reduce);
                 }
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java
index 9e9a60e..9f5dd1d 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderInvoiceServiceImpl.java
@@ -263,31 +263,37 @@
 		List<TOrderInvoiceVO> list = this.baseMapper.pageList(query,pageInfo);
 		for (TOrderInvoiceVO tOrderInvoiceVO : list) {
 			tOrderInvoiceVO.setUid(tOrderInvoiceVO.getId().toString());
-			List<Long> collect = orderInvoiceDetailService.lambdaQuery().eq(TOrderInvoiceDetail::getOrderInvoiceId, tOrderInvoiceVO.getId())
-					.eq(TOrderInvoiceDetail::getOrderType, 1).list().stream()
+			List<Long> collect = orderInvoiceDetailService.lambdaQuery().eq(TOrderInvoiceDetail::getOrderInvoiceId, tOrderInvoiceVO.getId()).list().stream()
 					.map(TOrderInvoiceDetail::getOrderId).collect(Collectors.toList());
 			// 将其全部转化为String
 			tOrderInvoiceVO.setIds(collect.stream().map(String::valueOf).collect(Collectors.toList()));
 		}
 		// 查询这个开票的订单ids
 
-		List<Long> ids = list.stream().map(TOrderInvoiceVO::getId).collect(Collectors.toList());
+		if (!list.isEmpty()){
+			List<Long> ids = list.stream().map(TOrderInvoiceVO::getId).collect(Collectors.toList());
 
-		List<TOrderInvoiceDetail> orderInvoiceDetailList = orderInvoiceDetailService.list(new LambdaQueryWrapper<TOrderInvoiceDetail>()
-				.in(TOrderInvoiceDetail::getOrderInvoiceId, ids));
+			List<TOrderInvoiceDetail> orderInvoiceDetailList = orderInvoiceDetailService.list(new LambdaQueryWrapper<TOrderInvoiceDetail>()
+					.in(TOrderInvoiceDetail::getOrderInvoiceId, ids));
 
-		List<TAppUser> finalTAppUsers = tAppUsers;
-		list.forEach(e->{
-			e.setServiceTariff(orderInvoiceDetailList.get(0).getServiceTariff());
-			e.setElectricityTariff(orderInvoiceDetailList.get(0).getElectricityTariff());
-			e.setAddedServiceTariff(orderInvoiceDetailList.get(0).getAddedServiceTariff());
-			e.setAddedService(orderInvoiceDetailList.stream().filter(t->t.getAddedService()!=null).map(TOrderInvoiceDetail::getAddedService).reduce(BigDecimal::add).get());
-			e.setElectrovalence(orderInvoiceDetailList.stream().filter(t->t.getElectrovalence()!=null).map(TOrderInvoiceDetail::getElectrovalence).reduce(BigDecimal::add).get());
-			e.setServiceCharge(orderInvoiceDetailList.stream().filter(t->t.getServiceCharge()!=null).map(TOrderInvoiceDetail::getServiceCharge).reduce(BigDecimal::add).get());
-			if (e.getBillingUserId()!=null){
-				e.setUserPhone(finalTAppUsers.stream().filter(t->t.getId()!=null).filter(m->m.getId().equals(Long.parseLong(e.getBillingUserId().toString()))).findFirst().get().getPhone());
-			}
-		});
+			List<TAppUser> finalTAppUsers = tAppUsers;
+			list.forEach(e->{
+				if (e.getOrderType()!=null&&e.getOrderType()==1){
+					e.setServiceTariff(orderInvoiceDetailList.get(0).getServiceTariff());
+				}else{
+					e.setServiceTariff(new BigDecimal("0"));
+				}
+				e.setElectricityTariff(orderInvoiceDetailList.get(0).getElectricityTariff());
+				e.setAddedServiceTariff(orderInvoiceDetailList.get(0).getAddedServiceTariff());
+				e.setAddedService(orderInvoiceDetailList.stream().filter(t->t.getAddedService()!=null).map(TOrderInvoiceDetail::getAddedService).reduce(BigDecimal::add).get());
+				e.setElectrovalence(orderInvoiceDetailList.stream().filter(t->t.getElectrovalence()!=null).map(TOrderInvoiceDetail::getElectrovalence).reduce(BigDecimal::add).get());
+				e.setServiceCharge(orderInvoiceDetailList.stream().filter(t->t.getServiceCharge()!=null).map(TOrderInvoiceDetail::getServiceCharge).reduce(BigDecimal::add).get());
+				if (e.getBillingUserId()!=null){
+					e.setUserPhone(finalTAppUsers.stream().filter(t->t.getId()!=null).filter(m->m.getId().equals(Long.parseLong(e.getBillingUserId().toString()))).findFirst().get().getPhone());
+				}
+			});
+		}
+
 
 		pageInfo.setRecords(list);
 		return pageInfo;
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TExchangeOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TExchangeOrderMapper.xml
index d69a772..2cad0b5 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TExchangeOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TExchangeOrderMapper.xml
@@ -37,23 +37,33 @@
         <if test="null != req.code and req.code!=''">
             and t1.code  LIKE CONCAT('%',#{req.code},'%')
         </if>
+        <if test="null != req.status">
+            and t1.status = #{req.status}
+        </if>
         <if test="null != req.userIds and req.userIds.size()>0" >
             and t1.app_user_id in
             <foreach collection="req.userIds" item="item" index="index" separator="," open="(" close=")">
                 #{item}
             </foreach>
         </if>
-        <if test="null != req.couponIds and req.couponIds.size()>0 or null != req.couponIds and req.couponIds.size()>0" >
-            and (t1.goods_id in
-            <foreach collection="req.goodsIds" item="item" index="index" separator="," open="(" close=")">
+        <if test="null != req.userIds and req.userIds.size()>0" >
+            and t1.app_user_id in
+            <foreach collection="req.userIds" item="item" index="index" separator="," open="(" close=")">
                 #{item}
             </foreach>
-            or
+        </if>
+
+        <if test="null != req.couponIds and req.couponIds.size()>0" >
             and t1.coupon_id in
             <foreach collection="req.couponIds" item="item" index="index" separator="," open="(" close=")">
                 #{item}
             </foreach>
-            )
+        </if>
+        <if test="null != req.goodsIds and req.goodsIds.size()>0" >
+            and t1.goods_id in
+            <foreach collection="req.goodsIds" item="item" index="index" separator="," open="(" close=")">
+                #{item}
+            </foreach>
         </if>
         <if test="startTime1 != null and startTime1!=''">
             and (t1.create_time between #{startTime1} and #{startTime2})
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml
index e6933bf..de9916e 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TShoppingOrderMapper.xml
@@ -227,9 +227,12 @@
     <select id="pageList" resultType="com.ruoyi.order.api.model.TShoppingOrder">
         select t1.*
         from t_shopping_order t1
-        where 1=1
+        where 1 = 1
         <if test="null != req.code and req.code!=''">
             and t1.code  LIKE CONCAT('%',#{req.code},'%')
+        </if>
+        <if test="null != req.status">
+            and t1.status = #{req.status}
         </if>
         <if test="null != req.userIds and req.userIds.size()>0" >
             and t1.app_user_id in
@@ -238,17 +241,17 @@
             </foreach>
         </if>
 
-        <if test="null != req.couponIds and req.couponIds.size()>0 or null != req.couponIds and req.couponIds.size()>0" >
-            and (t1.goods_id in
-            <foreach collection="req.goodsIds" item="item" index="index" separator="," open="(" close=")">
-                #{item}
-            </foreach>
-                     or
+        <if test="null != req.couponIds and req.couponIds.size()>0" >
             and t1.coupon_id in
             <foreach collection="req.couponIds" item="item" index="index" separator="," open="(" close=")">
                 #{item}
             </foreach>
-            )
+        </if>
+        <if test="null != req.goodsIds and req.goodsIds.size()>0" >
+            and t1.goods_id in
+            <foreach collection="req.goodsIds" item="item" index="index" separator="," open="(" close=")">
+                #{item}
+            </foreach>
         </if>
         <if test="startTime1 != null and startTime1!=''">
             and (t1.create_time between #{startTime1} and #{startTime2})
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml
index ca0b516..739d696 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TVipOrderMapper.xml
@@ -42,7 +42,7 @@
             and t1.vip_id = #{req.vipId}
         </if>
         <if test="startTime1 != null and startTime1!=''">
-            and (t1.create_time between #{startTime1} and #{startTime2}
+            and t1.create_time between #{startTime1} and #{startTime2}
         </if>
         and t1.payment_status = 2
         AND t1.del_flag = ${@com.ruoyi.common.core.enums.DelFlagEnum@NO.getCode()}
diff --git a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml
index f74b1ec..c8879ee 100644
--- a/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml
+++ b/ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml
@@ -46,7 +46,7 @@
                 AND  inventory = 0
             </if>
             <if test="req.otherState != null and req.otherState ==3">
-                AND  status = 3
+                AND  status = 2
             </if>
             AND del_flag = ${@com.ruoyi.common.core.enums.DelFlagEnum@NO.getCode()}
         </where>

--
Gitblit v1.7.1