From 6bf04d03aa5376062bc9bb77030f533b3d1b9aa9 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 24 四月 2026 15:34:22 +0800
Subject: [PATCH] 修改打卡规则

---
 xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpAppUserCouponServiceImpl.java |   39 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 39 insertions(+), 0 deletions(-)

diff --git a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpAppUserCouponServiceImpl.java b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpAppUserCouponServiceImpl.java
index be93da3..0898eb1 100644
--- a/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpAppUserCouponServiceImpl.java
+++ b/xp-robotaxi-account-boot/src/main/java/com/xiaopeng/account/service/impl/XpAppUserCouponServiceImpl.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson2.JSONArray;
 import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xiaopeng.account.mapper.XpAppUserCouponMapper;
@@ -14,6 +15,8 @@
 import com.xiaopeng.account.model.vo.XpAppUserCouponVo;
 import com.xiaopeng.account.service.IXpAppUserCouponService;
 import com.xiaopeng.account.util.holiday.HolidayUtil;
+import com.xiaopeng.account.vo.CouponVo;
+import com.xiaopeng.account.vo.UserCouponListVo;
 import com.xiaopeng.api.dto.account.NavigationCouponPickerRequest;
 import com.xiaopeng.api.dto.account.UcUserInfo;
 import com.xiaopeng.api.enums.NavigationCouponBubbleType;
@@ -404,4 +407,40 @@
         return Math.min(orderAmount, m);
     }
 
+
+    /**
+     * 获取可用优惠券
+     * @param orderMoney
+     * @param uid
+     * @return
+     */
+    @Override
+    public UserCouponListVo getUserCouponList(BigDecimal orderMoney, String uid) {
+        List<CouponVo> usableCouponList = new ArrayList<>();
+        List<CouponVo> notUsableCouponList = new ArrayList<>();
+        List<XpAppUserCoupon> list = this.list(new QueryWrapper<XpAppUserCoupon>().eq("app_user_id", uid).eq("status", 1).eq("is_deleted", 0));
+        for (XpAppUserCoupon xpAppUserCoupon : list) {
+            XpCoupon data = xpCouponClient.getCouponById(xpAppUserCoupon.getCouponId()).getData();
+            if(null == data){
+                continue;
+            }
+            CouponVo vo = new CouponVo();
+            vo.setId(xpAppUserCoupon.getId());
+            vo.setConditionalAmount(data.getConditionalAmount());
+            vo.setAmount(data.getAmount());
+            vo.setCouponType(data.getCouponType());
+            vo.setCouponName(data.getCouponName());
+            vo.setCouponDesc(data.getCouponDescription());
+            vo.setEndTime(xpAppUserCoupon.getExpirationTime().toString());
+            if(orderMoney.compareTo(data.getConditionalAmount()) >= 0){
+                usableCouponList.add(vo);
+            }else{
+                notUsableCouponList.add(vo);
+            }
+        }
+        UserCouponListVo userCouponListVo = new UserCouponListVo();
+        userCouponListVo.setUsableCouponList(usableCouponList);
+        userCouponListVo.setNotUsableCouponList(notUsableCouponList);
+        return userCouponListVo;
+    }
 }

--
Gitblit v1.7.1