From 2d47f5ac48f6ee7eb0194ffb5b65ed12b3b64437 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 01 十一月 2024 18:20:49 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java                          |   17 +----
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java                         |   19 +++--
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java                         |   30 ++++++---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java                |    7 ++
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderInfoDto.java                                             |    2 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/SiteServiceImpl.java                      |   32 ++++++----
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java |   25 +++++++-
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java                             |    3 +
 ruoyi-service/ruoyi-other/src/main/resources/mapper/other/TGoodsMapper.xml                                                   |   24 ++++++-
 9 files changed, 105 insertions(+), 54 deletions(-)

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 692caa6..0ee6f22 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
@@ -55,21 +55,24 @@
         getAppUserVipDetail.setVipId(user.getVipId());
         R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
         TAppUserVipDetail data1 = appUserVipDetail.getData();
-        String vipJson = data1.getVipJson();
-        TVip vip = JSON.parseObject(vipJson, TVip.class);
-
         // 查询邀请用户获得积分配置
         TIntegralRule integralRule = integralRuleClient.getSet().getData();
         JSONObject jsonObject = JSONObject.parseObject(integralRule.getInviteUsersToEarnPoints());
         TInviteUser inviteUser = new TInviteUser();
-        inviteUser.setAppUserId(beInvitedAppUserId);
-        inviteUser.setBeInvitedAppUserId(appUserId);
-        inviteUser.setCreateTime(LocalDateTime.now());
-        if(Objects.nonNull(vip) && vip.getDoubleIntegration() == 1){
-            inviteUser.setAward(jsonObject.getInteger("num1")*2);
+        if(Objects.nonNull(data1)){
+            String vipJson = data1.getVipJson();
+            TVip vip = JSON.parseObject(vipJson, TVip.class);
+            if(Objects.nonNull(vip) && vip.getDoubleIntegration() == 1){
+                inviteUser.setAward(jsonObject.getInteger("num1")*2);
+            }else {
+                inviteUser.setAward(jsonObject.getInteger("num1"));
+            }
         }else {
             inviteUser.setAward(jsonObject.getInteger("num1"));
         }
+        inviteUser.setAppUserId(beInvitedAppUserId);
+        inviteUser.setBeInvitedAppUserId(appUserId);
+        inviteUser.setCreateTime(LocalDateTime.now());
         this.save(inviteUser);
     }
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
index 1a0fb15..8b3b6ac 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
@@ -151,12 +151,16 @@
 					getAppUserVipDetail.setVipId(appUser.getVipId());
 					R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
 					TAppUserVipDetail data1 = appUserVipDetail.getData();
-					String vipJson = data1.getVipJson();
-					TVip vip = JSON.parseObject(vipJson, TVip.class);
-					if(Objects.nonNull(vip) && vip.getType() == 2){
-						siteInfoVO.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(tAccountingStrategyDetail.getServiceCharge()).add(tAccountingStrategyDetail.getElectrovalence()));
+					if(Objects.nonNull(data1)){
+						String vipJson = data1.getVipJson();
+						TVip vip = JSON.parseObject(vipJson, TVip.class);
+						if(Objects.nonNull(vip) && vip.getType() == 2){
+							siteInfoVO.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(tAccountingStrategyDetail.getServiceCharge()).add(tAccountingStrategyDetail.getElectrovalence()));
+						}else {
+							siteInfoVO.setVipElectrovalence((tAccountingStrategyDetail.getServiceCharge().multiply(byId1.getDiscount()).add(tAccountingStrategyDetail.getElectrovalence())).setScale(4, BigDecimal.ROUND_HALF_UP));
+						}
 					}else {
-						siteInfoVO.setVipElectrovalence((tAccountingStrategyDetail.getServiceCharge().multiply(byId1.getDiscount()).add(tAccountingStrategyDetail.getElectrovalence())).setScale(4, BigDecimal.ROUND_HALF_UP));
+						siteInfoVO.setVipElectrovalence(tAccountingStrategyDetail.getElectrovalence().add(tAccountingStrategyDetail.getServiceCharge()).setScale(4, BigDecimal.ROUND_HALF_UP));
 					}
 				}else {
 					siteInfoVO.setVipElectrovalence(tAccountingStrategyDetail.getElectrovalence().add(tAccountingStrategyDetail.getServiceCharge()).setScale(4, BigDecimal.ROUND_HALF_UP));
@@ -199,12 +203,16 @@
 					getAppUserVipDetail.setVipId(appUser.getVipId());
 					R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
 					TAppUserVipDetail data1 = appUserVipDetail.getData();
-					String vipJson = data1.getVipJson();
-					TVip vip = JSON.parseObject(vipJson, TVip.class);
-					if(Objects.nonNull(vip) && vip.getType() == 2){
-						siteInfoVO.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(tAccountingStrategyDetail.getServiceCharge()).add(tAccountingStrategyDetail.getElectrovalence()));
-					}else{
-						siteInfoVO.setVipElectrovalence((tAccountingStrategyDetail.getServiceCharge().multiply(byId1.getDiscount()).add(tAccountingStrategyDetail.getElectrovalence())).setScale(4, BigDecimal.ROUND_HALF_UP));
+					if(Objects.nonNull(data1)){
+						String vipJson = data1.getVipJson();
+						TVip vip = JSON.parseObject(vipJson, TVip.class);
+						if(Objects.nonNull(vip) && vip.getType() == 2){
+							siteInfoVO.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(tAccountingStrategyDetail.getServiceCharge()).add(tAccountingStrategyDetail.getElectrovalence()));
+						}else{
+							siteInfoVO.setVipElectrovalence((tAccountingStrategyDetail.getServiceCharge().multiply(byId1.getDiscount()).add(tAccountingStrategyDetail.getElectrovalence())).setScale(4, BigDecimal.ROUND_HALF_UP));
+						}
+					}else {
+						siteInfoVO.setVipElectrovalence(tAccountingStrategyDetail.getElectrovalence().add(tAccountingStrategyDetail.getServiceCharge()).setScale(4, BigDecimal.ROUND_HALF_UP));
 					}
 				}else {
 					siteInfoVO.setVipElectrovalence(tAccountingStrategyDetail.getElectrovalence().add(tAccountingStrategyDetail.getServiceCharge()).setScale(4, BigDecimal.ROUND_HALF_UP));
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
index 4a4feea..ab5661a 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
@@ -295,7 +295,7 @@
 				if(orders.size() > 0){
 					TChargingOrder chargingOrder = orders.get(0);
 					TChargingGun tChargingGun1 = new TChargingGun();
-					if(Arrays.asList(1, 2).contains(chargingOrder.getStatus())){
+					if(Arrays.asList(1, 2, 5).contains(chargingOrder.getStatus())){
 						tChargingGun1.setStatus(3);
 					}
 					if(Arrays.asList(3).contains(chargingOrder.getStatus())){
@@ -306,6 +306,11 @@
 					}
 					tChargingGun1.setId(tChargingGun.getId());
 					chargingGunService.updateById(tChargingGun1);
+				}else{
+					TChargingGun tChargingGun1 = new TChargingGun();
+					tChargingGun1.setId(tChargingGun.getId());
+					tChargingGun1.setStatus(3);
+					chargingGunService.updateById(tChargingGun1);
 				}
 			}
 		}
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 3a4d301..079b76d 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
@@ -308,14 +308,16 @@
 			getAppUserVipDetail.setVipId(appUser.getVipId());
 			R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
 			TAppUserVipDetail data1 = appUserVipDetail.getData();
-			String vipJson = data1.getVipJson();
-			TVip vip = JSON.parseObject(vipJson, TVip.class);
-			if(Objects.nonNull(vip) && vip.getType() == 2){
-				list.forEach(item -> {
-					if(Objects.nonNull(vip.getDiscount())){
-						item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
-					}
-				});
+			if(Objects.nonNull(data1)){
+				String vipJson = data1.getVipJson();
+				TVip vip = JSON.parseObject(vipJson, TVip.class);
+				if(Objects.nonNull(vip) && vip.getType() == 2){
+					list.forEach(item -> {
+						if(Objects.nonNull(vip.getDiscount())){
+							item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
+						}
+					});
+				}
 			}
 		}
 		pageInfo.setRecords(list);
@@ -405,12 +407,14 @@
 			getAppUserVipDetail.setVipId(appUser.getVipId());
 			R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
 			TAppUserVipDetail data1 = appUserVipDetail.getData();
-			String vipJson = data1.getVipJson();
-			TVip vip = JSON.parseObject(vipJson, TVip.class);
-			if(Objects.nonNull(vip) && vip.getType() == 2){
-				list.forEach(item -> {
-					item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
-				});
+			if(Objects.nonNull(data1)){
+				String vipJson = data1.getVipJson();
+				TVip vip = JSON.parseObject(vipJson, TVip.class);
+				if(Objects.nonNull(vip) && vip.getType() == 2){
+					list.forEach(item -> {
+						item.setVipElectrovalence(vip.getDiscount().divide(new BigDecimal(10)).multiply(item.getServiceCharge()).add(item.getElectrovalenceOriginal()));
+					});
+				}
 			}
 		}
 		return list;
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 ec6ab63..b5c657b 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
@@ -61,7 +61,22 @@
     private AppUserVipDetailClient vipDetailClient;
     @Override
     public List<TAccountingStrategyDetailVO> queryAccountingStrategyDetailByStrategyId(Integer strategyId) {
-        return this.baseMapper.queryAccountingStrategyDetailByStrategyId(strategyId);
+        List<TAccountingStrategyDetailVO> tAccountingStrategyDetailVOS = this.baseMapper.queryAccountingStrategyDetailByStrategyId(strategyId);
+        Long userId = tokenService.getLoginUserApplet().getUserId();
+        TAppUser appUser = appUserClient.getUserById(userId).getData();
+        for (TAccountingStrategyDetailVO tAccountingStrategyDetailVO : tAccountingStrategyDetailVOS) {
+            GetAppUserVipDetail getAppUserVipDetail = new GetAppUserVipDetail();
+            getAppUserVipDetail.setAppUserId(userId);
+            getAppUserVipDetail.setVipId(appUser.getVipId());
+            R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
+            TAppUserVipDetail data1 = appUserVipDetail.getData();
+            if(Objects.nonNull(data1)){
+                String vipJson = data1.getVipJson();
+                TVip vip = JSON.parseObject(vipJson, TVip.class);
+                tAccountingStrategyDetailVO.setDiscount(vip.getDiscount().divide(new BigDecimal(10)));
+            }
+        }
+        return tAccountingStrategyDetailVOS;
     }
 
     @Override
@@ -86,8 +101,11 @@
             getAppUserVipDetail.setVipId(appUser.getVipId());
             R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
             TAppUserVipDetail data1 = appUserVipDetail.getData();
-            String vipJson = data1.getVipJson();
-            TVip vip = JSON.parseObject(vipJson, TVip.class);
+            TVip vip = null;
+            if(Objects.nonNull(data1)){
+                String vipJson = data1.getVipJson();
+                vip = JSON.parseObject(vipJson, TVip.class);
+            }
 
             TAccountingStrategyDetailVO accountingStrategyDetailVO;
             TAccountingStrategyDetailVO accountingStrategyDetailNext;
@@ -102,6 +120,7 @@
             if(Objects.nonNull(vip)) {
                 if (vip.getType() == 2) {
                     accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(vip.getDiscount())));
+                    accountingStrategyDetailVO.setDiscount(vip.getDiscount().divide(new BigDecimal(10)));
                     accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(vip.getDiscount())));
                 } else {
                     if(Objects.isNull(accountingStrategy.getDiscount())){
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 fe828dd..4a14d46 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
@@ -197,6 +197,7 @@
                 payOrderInfoDto.setPayTime(byId.getCreateTime());
                 payOrderInfoDto.setRefundAmount(byId.getRefundAmount());
                 payOrderInfoDto.setRechargeAmount(byId.getRechargeAmount());
+                payOrderInfoDto.setFinalAmount(byId.getRechargeAmount().subtract(byId.getRefundAmount()));
                 return R.ok(payOrderInfoDto);
             case 2:
                 TShoppingOrder byId1 = shoppingOrderService.getById(orderId);
@@ -209,6 +210,7 @@
                 payOrderInfoDto1.setPayTime(byId1.getCreateTime());
                 payOrderInfoDto1.setRefundAmount(byId1.getRefundAmount());
                 payOrderInfoDto1.setRechargeAmount(byId1.getPaymentAmount());
+                payOrderInfoDto1.setFinalAmount(byId1.getPaymentAmount().subtract(byId1.getRefundAmount()));
                 return R.ok(payOrderInfoDto1);
             case 3:
                 TVipOrder byId2 = vipOrderService.getById(orderId);
@@ -221,6 +223,7 @@
                 payOrderInfoDto2.setPayTime(byId2.getCreateTime());
                 payOrderInfoDto2.setRefundAmount(byId2.getRefundAmount());
                 payOrderInfoDto2.setRechargeAmount(byId2.getPaymentAmount());
+                payOrderInfoDto2.setFinalAmount(byId2.getPaymentAmount().subtract(byId2.getRefundAmount()));
                 return R.ok(payOrderInfoDto2);
             //todo luo 停车场订单
 //                case 4:
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderInfoDto.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderInfoDto.java
index ae3424d..3379441 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderInfoDto.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderInfoDto.java
@@ -1,5 +1,6 @@
 package com.ruoyi.order.dto;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -25,6 +26,7 @@
     @ApiModelProperty("退款金额")
     private BigDecimal refundAmount;
     private BigDecimal rechargeAmount;
+    private BigDecimal finalAmount;
 
 
 }
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 a19fda8..023fc21 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
@@ -2571,14 +2571,10 @@
 			if (tChargingOrder.getCouponDiscountAmount()!=null){
 				couponDiscount = couponDiscount.add(tChargingOrder.getCouponDiscountAmount());
 			}
-			if (tChargingOrder.getRefundStatus()!=null &&tChargingOrder.getRefundStatus() == 2){
-				// 如果成功退款 那么减去退款金额
+			if (tChargingOrder.getPaymentAmount()!=null){
 				paymentAmount = paymentAmount.add(tChargingOrder.getOrderAmount());
-			}else{
-				if (tChargingOrder.getPaymentAmount()!=null){
-					paymentAmount = paymentAmount.add(tChargingOrder.getOrderAmount());
-				}
 			}
+
 		}
 		// 三方交易手续费 三方收费*0.6%
 		commissionAmount = sharingAmount.multiply(new BigDecimal("0.006"));
@@ -2587,7 +2583,7 @@
 		tSettlementConfirm.setSharingAmount(sharingAmount.setScale(2, RoundingMode.HALF_DOWN));
 		tSettlementConfirm.setCommissionAmount(commissionAmount.setScale(2, RoundingMode.HALF_DOWN));
 		tSettlementConfirm.setElectrovalence(electrovalence.setScale(2, RoundingMode.HALF_DOWN));
-		tSettlementConfirm.setServiceCharge(serviceCharge.setScale(2, RoundingMode.HALF_DOWN));
+		tSettlementConfirm.setServiceCharge(serviceCharge.subtract(commissionAmount).setScale(2, RoundingMode.HALF_DOWN));
 		tSettlementConfirm.setOrderCommission(orderCommission);
 		tSettlementConfirm.setVipDiscount(vipDiscount);
 		tSettlementConfirm.setCouponDiscount(couponDiscount);
@@ -2627,7 +2623,7 @@
 			tSettlementConfirm.setServiceRemark(dto.getServiceRemark());
 			tSettlementConfirm.setDistribution(dto.getDistribution());
 			tSettlementConfirm.setIncome(dto.getElectrovalence().add(dto.getServiceCharge()));
-			tSettlementConfirm.setCost(dto.getVenue().add(dto.getClean()).add(dto.getMaintain()).add(dto.getMetering()));
+			tSettlementConfirm.setCost(dto.getVenue().add(dto.getClean()).add(dto.getMaintain()).add(dto.getSupplyElectronic()));
 			tSettlementConfirm.setProfitMoney(chargingElectronic.add(serviceCharge).subtract(tSettlementConfirm.getCost()));
 			tSettlementConfirm.setNewSettlement(subtract2.subtract(tSettlementConfirm.getCost()));
 
@@ -3021,11 +3017,8 @@
 		if(null != order.getAppUserId()){
 			queryWrapper.eq(TChargingOrder::getAppUserId, order.getAppUserId());
 		}
-		if(null != order.getAppUserId()){
-			queryWrapper.eq(TChargingOrder::getAppUserId, order.getAppUserId());
-		}
 		if(null != order.getStatusList()){
-			queryWrapper.in(TChargingOrder::getAppUserId, order.getStatusList());
+			queryWrapper.in(TChargingOrder::getStatus, order.getStatusList());
 		}
 		if(null != order.getEndMode()){
 			queryWrapper.eq(TChargingOrder::getEndMode, order.getEndMode());
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 4351904..610e7a8 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
@@ -61,15 +61,29 @@
         WHERE `status` = 1 and del_flag = 0 and type = #{appGoodQuery.type}
         UNION ALL
         SELECT
-            id,name,redeem_points  as redeemPoints,inventory_quantity as inventory,payment_amount as originalPrice,payment_amount as preferentiaPrice,vip_payment_amount as vipPrice,2 as goodType,cover_picture as coverPicture,0 as underlyingSales
+            id,
+            NAME,
+            redeem_points AS redeemPoints,
+            inventory_quantity AS inventory,
+            payment_amount AS originalPrice,
+            payment_amount AS preferentiaPrice,
+            vip_payment_amount AS vipPrice,
+            2 AS goodType,
+            cover_picture AS coverPicture,
+            0 AS underlyingSales
         FROM
             t_coupon
-        WHERE `status`= 1 and del_flag = 0 and ways_to_obtain != #{appGoodQuery.type}
+        WHERE
+            `status` = 1
+          AND del_flag = 0 and ways_to_obtain != #{appGoodQuery.type}
+          AND (
+            validity_period_mode != 1
+        OR (validity_period_mode = 1 AND end_time >= NOW())
+            )
         ORDER BY
             CASE
-
-                WHEN `inventory` = 0 THEN
-                    0 ELSE 1
+                WHEN `inventory` = 0 THEN 0
+                ELSE 1
                 END DESC,
             `redeemPoints` ASC
     </select>

--
Gitblit v1.7.1