项目名称:拉新营销平台 业务: ⽤户服务:⽤户注册/登录、 头像和信息维护、 收货地址模块 优惠券服务:展示和领劵、 使⽤和释放, 商品服务:商品基本展示库存扣减回收、 购物⻋模块 订单服务:下单⽀付、 订单基本操作 https://blog.virtualagent.cn/blog/series/Project_XD_Paas
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.6 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.nla.coupon.mapper.CouponMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.nla.coupon.model.entity.CouponEntity">
<id column="id" property="id" />
<result column="category" property="category" />
<result column="publish" property="publish" />
<result column="coupon_img" property="couponImg" />
<result column="coupon_title" property="couponTitle" />
<result column="price" property="price" />
<result column="user_limit" property="userLimit" />
<result column="start_time" property="startTime" />
<result column="end_time" property="endTime" />
<result column="publish_count" property="publishCount" />
<result column="stock" property="stock" />
<result column="create_time" property="createTime" />
<result column="condition_price" property="conditionPrice" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, category, publish, coupon_img, coupon_title, price, user_limit, start_time, end_time, publish_count, stock, create_time, condition_price
</sql>
<!--扣减库存-->
<update id="reduceStock">
update coupon set stock=stock-1 where id = #{couponId}
</update>
<!--扣减库存(加版本号,支持高并发下不超发问题)-->
<update id="reduceStockOpt">
update coupon set stock=stock-1,version=version+1 where id = #{couponId} and stock>0 and version=#{oldVersion}
</update>
</mapper>