fanli/src/main/java/com/yeshi/fanli/dao/mybatis/user/UserSystemCouponMapper.java
@@ -103,4 +103,15 @@ * @return */ List<UserSystemCoupon> getCouponByUsingTimeOut(@Param("uid") Long uid,@Param("list") List<Long> list, @Param("number") Long number); /** * 统计有效券 * @param uid * @param listCouponId * @return */ long countUsableByUid(@Param("uid") Long uid, @Param("list") List<Long> listCouponId); } fanli/src/main/java/com/yeshi/fanli/mapping/user/UserSystemCouponMapper.xml
@@ -145,7 +145,7 @@ <select id="getEnableListByCouponId" resultMap="ResultVOMap"> SELECT * FROM `yeshi_ec_user_system_coupon` uc WHERE uc.`usc_uid`= #{uid} AND uc.usc_state = 1 WHERE uc.`usc_uid`= #{uid} AND uc.usc_state = 1 AND DATE_FORMAT(CURDATE(),'%Y%m%d') <![CDATA[ >= ]]>DATE_FORMAT(uc.`usc_start_time`,'%Y%m%d') <if test="activated != null">AND uc.usc_state_activate = #{activated}</if> AND uc.usc_coupon_id in @@ -154,6 +154,16 @@ ORDER BY uc.usc_state_activate desc, uc.`usc_create_time` </select> <select id="countUsableByUid" resultType="java.lang.Long"> SELECT IFNULL(count(cp.`usc_id`),0) FROM `yeshi_ec_user_system_coupon` cp WHERE cp.`usc_state` = 1 AND cp.usc_state_activate = 1 AND cp.`usc_end_time` <![CDATA[>]]> NOW() AND cp.`usc_uid`= #{uid} AND cp.usc_coupon_id in <foreach collection="list" item="item" open="(" close=")" separator=",">#{item}</foreach> </select> <select id="getCounponNowInvalid" resultMap="BaseResultMap"> SELECT * FROM `yeshi_ec_user_system_coupon` cp WHERE <![CDATA[cp.`usc_state` <> 3 AND cp.`usc_state` <> 4]]> fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserSystemCouponServiceImpl.java
@@ -647,7 +647,27 @@ return list; } @Override public long countUsableFreeCouponForBuy (Long uid) { if (uid == null) return 0; List<SystemCoupon> couponList = systemCouponService.getGoodsCouponList(); if (couponList == null || couponList.size() == 0) return 0; List<Long> listCouponId = new ArrayList<Long>(); for (SystemCoupon systemCoupon : couponList) { listCouponId.add(systemCoupon.getId()); } return userSystemCouponMapper.countUsableByUid(uid, listCouponId); } @Transactional @Override public void useGoodsCoupon(Long uid, Long id, Long goodId, Integer sourceType) throws UserSystemCouponException, Exception { fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserSystemCouponService.java
@@ -287,4 +287,11 @@ */ public void sendBackGiveUser(Long uid); /** * 统计可使用的免单券 * @param uid * @return */ public long countUsableFreeCouponForBuy(Long uid); }