Преглед на файлове

feat: 查询用户优惠券

wrj преди 1 година
родител
ревизия
13d07080d7

+ 33 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/domain/vo/CouponReceiveVo.java

@@ -0,0 +1,33 @@
+package com.ylx.massage.domain.vo;
+
+import com.ylx.massage.domain.Coupon;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * @author jianlong
+ * @date 2024-05-14 17:48
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class CouponReceiveVo extends Coupon {
+
+    @ApiModelProperty("id")
+    private String id;
+
+    //用户openId
+    @ApiModelProperty("用户openId")
+    private String openid;
+
+    //优惠券id
+    @ApiModelProperty("优惠券id")
+    private String couponId;
+
+    //过期时间
+    @ApiModelProperty("过期时间")
+    private Date expirationTime;
+
+}

+ 3 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/mapper/CouponReceiveMapper.java

@@ -3,6 +3,7 @@ package com.ylx.massage.mapper;
 import java.util.List;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ylx.massage.domain.vo.CouponReceiveVo;
 import org.apache.ibatis.annotations.Param;
 import com.ylx.massage.domain.CouponReceive;
 
@@ -31,5 +32,7 @@ public interface CouponReceiveMapper extends BaseMapper<CouponReceive> {
      */
     int insertOrUpdateBatch(@Param("entities") List<CouponReceive> entities);
 
+
+    List<CouponReceiveVo> getByOpenId(String openid);
 }
 

+ 9 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/CouponReceiveService.java

@@ -3,6 +3,9 @@ package com.ylx.massage.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ylx.massage.domain.Coupon;
 import com.ylx.massage.domain.CouponReceive;
+import com.ylx.massage.domain.vo.CouponReceiveVo;
+
+import java.util.List;
 
 /**
  * 优惠券领取表(CouponReceive)表服务接口
@@ -12,6 +15,12 @@ import com.ylx.massage.domain.CouponReceive;
  */
 public interface CouponReceiveService extends IService<CouponReceive> {
 
+    /*
+     * 领取优惠卷
+     */
     Coupon submit(CouponReceive couponReceive);
+
+
+    List<CouponReceiveVo> getByOpenId(String openid);
 }
 

+ 9 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/CouponReceiveServiceImpl.java

@@ -3,6 +3,7 @@ package com.ylx.massage.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ylx.massage.domain.Coupon;
+import com.ylx.massage.domain.vo.CouponReceiveVo;
 import com.ylx.massage.mapper.CouponReceiveMapper;
 import com.ylx.massage.domain.CouponReceive;
 import com.ylx.massage.service.CouponReceiveService;
@@ -26,6 +27,9 @@ public class CouponReceiveServiceImpl extends ServiceImpl<CouponReceiveMapper, C
     @Resource
     private CouponService couponService;
 
+    @Resource
+    private CouponReceiveMapper couponReceiveMapper;
+
     @Override
     public Coupon submit(CouponReceive couponReceive) {
         LambdaQueryWrapper<CouponReceive> queryWrapper = new LambdaQueryWrapper<>();
@@ -44,5 +48,10 @@ public class CouponReceiveServiceImpl extends ServiceImpl<CouponReceiveMapper, C
         return coupon;
     }
 
+    @Override
+    public List<CouponReceiveVo> getByOpenId(String openid) {
+        return couponReceiveMapper.getByOpenId(openid);
+    }
+
 }
 

+ 4 - 1
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TOrderServiceImpl.java

@@ -65,6 +65,9 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
     @Resource
     private MassageUtil massageUtil;
 
+    @Resource
+    private CouponReceiveService couponReceiveService;
+
 
 //    @Resource
 //    private TInfoService infoService;
@@ -115,7 +118,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
             }
         }
         //优惠卷减免
-
+        couponReceiveService.getByOpenId(order.getcOpenId());
 
         //订单价格
         List<TXiangmu> list = JSONObject.parseArray(order.getcGoods().toJSONString(), TXiangmu.class);

+ 38 - 0
nightFragrance-massage/src/main/resources/mapper/massage/CouponReceiveMapper.xml

@@ -12,6 +12,34 @@
         <result property="isDelete" column="is_delete" jdbcType="INTEGER"/>
     </resultMap>
 
+
+
+    <resultMap type="com.ylx.massage.domain.vo.CouponReceiveVo" id="CouponReceiveVoMap">
+        <result property="id" column="id" jdbcType="VARCHAR"/>
+        <result property="openid" column="openid" jdbcType="VARCHAR"/>
+        <result property="couponId" column="coupon_id" jdbcType="VARCHAR"/>
+        <result property="expirationTime" column="expiration_time" jdbcType="TIMESTAMP"/>
+        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+        <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+        <result property="isDelete" column="is_delete" jdbcType="INTEGER"/>
+        <result property="name" column="name" jdbcType="VARCHAR"/>
+        <result property="type" column="type" jdbcType="INTEGER"/>
+        <result property="discountType" column="discount_type" jdbcType="INTEGER"/>
+        <result property="discountValue" column="discount_value" jdbcType="NUMERIC"/>
+        <result property="thresholdAmount" column="threshold_amount" jdbcType="NUMERIC"/>
+        <result property="obtainWay" column="obtain_way" jdbcType="INTEGER"/>
+        <result property="termDays" column="term_days" jdbcType="INTEGER"/>
+        <result property="status" column="status" jdbcType="INTEGER"/>
+        <result property="usedNum" column="used_num" jdbcType="INTEGER"/>
+        <result property="userLimit" column="user_limit" jdbcType="INTEGER"/>
+        <result property="extParam" column="ext_param" jdbcType="VARCHAR"/>
+    </resultMap>
+
+
+    <sql id="selectCouponReceiveVo">
+        a.id, a.openid, a.coupon_id, a.expiration_time, a.create_time, a.update_time, a.is_delete,
+         b.name, b.type, b.discount_type, b.discount_value, b.threshold_amount, b.obtain_way, b.term_days, b.status, b.used_num, b.user_limit, b.ext_param
+    </sql>
     <!-- 批量插入 -->
     <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
         insert into ry-vue.coupon_receive(openidcoupon_idexpiration_timecreate_timeupdate_timeis_delete)
@@ -32,5 +60,15 @@
         values(create_time) update_time = values(update_time) is_delete = values(is_delete)
     </insert>
 
+    <select id="getByOpenId" resultMap="CouponReceiveVoMap">
+        SELECT
+            <include refid="selectCouponReceiveVo"/>
+        FROM coupon_receive a
+        LEFT JOIN coupon b ON a.coupon_id = b.id
+        WHERE a.is_delete = 0
+          AND b.is_delete = 0
+          and a.openid = #{openid}
+    </select>
+
 </mapper>