فهرست منبع

修改可领取优惠券规则

hgw 3 سال پیش
والد
کامیت
f8a2fba636

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysCouponIssueRecordDao.java

@@ -37,6 +37,6 @@ public interface SysCouponIssueRecordDao extends BaseMapper<SysCouponIssueRecord
      */
     void opsConsume(@Param("id") Integer id, @Param("consumeNum") Integer consumeNum);
 
-    List<SysCoupon> queryUserCanGetCoupon(@Param("userId") Integer userId);
+    List<SysCoupon> queryUserCanGetCoupon(@Param("userId") Integer userId,@Param("tenantId") Integer tenantId);
 }
 

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysCouponIssueRecordServiceImpl.java

@@ -153,7 +153,7 @@ public class SysCouponIssueRecordServiceImpl extends ServiceImpl<SysCouponIssueR
      */
     @Override
     public List<SysCoupon> queryCanBeGetCoupon(Integer userId) {
-        return baseMapper.queryUserCanGetCoupon(userId);
+        return baseMapper.queryUserCanGetCoupon(userId,TenantContextHolder.getTenantId());
     }
 
     /**

+ 12 - 10
mec-biz/src/main/resources/config/mybatis/SysCouponIssueRecordMapper.xml

@@ -127,7 +127,7 @@
     </resultMap>
 
     <select id="queryUserCanGetCoupon" resultMap="SysCoupon">
-        SELECT
+        SELECT DISTINCT
             id_,
             name_,
             description_,
@@ -150,26 +150,28 @@
             warning_status_,
             create_time_,
             update_time_,
-            a.tenant_id_
+            tenant_id_
         FROM
             sys_coupon AS a
-                JOIN
-            (SELECT DISTINCT
-                 coupon_id_,
-                 tenant_id_
+                LEFT JOIN
+            (SELECT
+                 COUNT(coupon_id_) AS couponNum,
+                 coupon_id_
              FROM
                  sys_coupon_code
-             WHERE user_id_ = #{userId}) AS b
-            ON a.`id_` NOT IN (b.coupon_id_)
-                AND a.tenant_id_ = b.tenant_id_
+             WHERE user_id_ = #{userId}
+             GROUP BY coupon_id_) AS b
+            ON a.id_ = b.coupon_id_
         WHERE issuance_type_ = 0
           AND status_ = 1
+          AND tenant_id_ = #{tenantId}
+          AND a.`limit_exchange_num_` > IFNULL(b.couponNum,0)
           AND (
                     effective_expire_time_ > NOW()
                 OR deadline_ > 0
             )
           AND (
-                    stock_count_ <![CDATA[ > ]]> consume_num_
+                    stock_count_ > consume_num_
                 OR stock_count_ = - 1
             )
     </select>