luofl
2025-03-14 0449a6264819bce3869f47b9e5bd3729f158db54
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserCouponServiceImpl.java
@@ -1,6 +1,7 @@
package com.ruoyi.account.service.impl;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.account.api.vo.PaymentUserCouponVo;
@@ -46,11 +47,13 @@
   public List<PaymentUserCouponVo> getUserCoupon(Long userId, Integer type) {
      List<UserCoupon> list = this.list(new LambdaQueryWrapper<UserCoupon>().eq(UserCoupon::getAppUserId, userId).eq(UserCoupon::getDelFlag, 0)
            .isNull(UserCoupon::getUseTime).gt(UserCoupon::getEndTime, LocalDateTime.now()).last(" and now() between start_time and end_time"));
      List<Integer> couponIds = list.stream().map(UserCoupon::getCouponId).collect(Collectors.toList());
      if(couponIds.size() == 0){
         return null;
      List<CouponInfo> couponInfoList = new ArrayList<>();
      for (String jsonStr : list.stream().map(UserCoupon::getCouponInfo).collect(Collectors.toList())) {
         CouponInfo couponInfo = JSONObject.parseObject(jsonStr, CouponInfo.class);
         couponInfoList.add(couponInfo);
      }
      List<CouponInfo> couponInfoList = couponInfoClient.getCouponInfoList(couponIds).getData();
      //构建返回数据
      DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.MM.dd HH:mm");
      List<PaymentUserCouponVo> infoVoList = new ArrayList<>();