yujian
2020-01-18 f4a0f2acc63d7785eab108419a4e16f5f688cb95
fanli/src/main/java/com/yeshi/fanli/service/inter/user/UserSystemCouponService.java
@@ -3,7 +3,9 @@
import java.math.BigDecimal;
import java.util.List;
import com.yeshi.fanli.entity.accept.AcceptData;
import com.yeshi.fanli.entity.bus.user.UserSystemCoupon;
import com.yeshi.fanli.entity.bus.user.UserSystemCouponGiveRecord;
import com.yeshi.fanli.entity.system.SystemCoupon;
import com.yeshi.fanli.exception.user.UserSystemCouponException;
import com.yeshi.fanli.vo.user.UserSystemCouponRecordVO;
@@ -80,7 +82,7 @@
    * @throws UserSystemCouponException
    * @throws Exception
    */
   public void useGoodsCoupon(Long uid, Long id, Long goodId) throws UserSystemCouponException, Exception;
   public void useGoodsCoupon(Long uid, Long id, Long goodId, Integer sourceType) throws UserSystemCouponException, Exception;
   
   
   /**
@@ -90,7 +92,7 @@
    * @throws UserSystemCouponException
    * @throws Exception
    */
   public void useOrderCoupon(Long uid, Long id, String orderNo, Integer goodsType) throws UserSystemCouponException, Exception;
   public void useOrderCoupon(Long uid, Long id, String orderNo, Integer sourceType, AcceptData acceptData) throws UserSystemCouponException, Exception;
   /**
    * 根据订单号获取奖励券使用进度
@@ -99,7 +101,7 @@
    * @throws UserSystemCouponException
    * @throws Exception
    */
   public UserSystemCouponRecordVO getRewardCouponRecord(String orderNo) throws UserSystemCouponException, Exception;
   public UserSystemCouponRecordVO getRewardCouponRecord(String orderNo, Integer sourceType) throws UserSystemCouponException, Exception;
   /**
    * 是否存在奖励券
@@ -115,7 +117,7 @@
    * @throws UserSystemCouponException
    * @throws Exception
    */
   public UserSystemCouponRecordVO getFreeCouponRecord(String orderNo) throws UserSystemCouponException, Exception;
   public UserSystemCouponRecordVO getFreeCouponRecord(String orderNo, Integer sourceType) throws UserSystemCouponException, Exception;
   /**
    * 根据订单来源查询
@@ -133,13 +135,8 @@
    * @throws UserSystemCouponException
    * @throws Exception
    */
   public void insertUserCoupon(Long uid, String couponType, String source) throws UserSystemCouponException, Exception;
   public UserSystemCoupon insertUserCoupon(Long uid, String couponType, String source, BigDecimal percent,Boolean needNotify) throws UserSystemCouponException, Exception;
   /**
    * 券已过期更新
    * @param uid
    */
   public void updateCounponInvalid(Long uid);
   /**
    * 退回券
@@ -204,5 +201,142 @@
    * @throws Exception
    */
   public void randomRewardCoupon(int num, Long uid, String source) throws Exception;
   /**
    * 系统赠送奖励券
    * @param num
    * @param uid
    * @param source
    * @throws Exception
    */
   public void systemGiveRewardCoupon(Long uid,int num,String orderId,Integer orderType,String reason) throws Exception;
   /**
    * 添加券
    * @param uid
    * @param couponType
    * @param source
    * @throws UserSystemCouponException
    */
   public void exchangeCoupon(Long uid, String couponType, String source,
         BigDecimal percent) throws UserSystemCouponException, Exception;
   /**
    * 券列表 1.6.5
    * @param start
    * @param count
    * @param uid
    * @return
    * @throws UserSystemCouponException
    * @throws Exception
    */
   public List<UserSystemCouponVO> getCouponList(AcceptData acceptData, long start, int count, Long uid) throws UserSystemCouponException, Exception;
   /**
    * 赠送券生成口令
    * @param uid
    * @param id
    * @return
    * @throws UserSystemCouponException
    */
   public UserSystemCouponVO giveCoupon(Long uid, Long id) throws UserSystemCouponException;
   /**
    * 赠送退回
    * @param id
    */
   public void sendBackGiveCoupon(List<UserSystemCouponGiveRecord> overdueList);
   /**
    * 查询需要过期的
    * @param count
    * @return
    */
   public List<UserSystemCoupon> getCounponNowInvalid(int count);
   /**
    * 过期券
    * @param list
    */
   public void updateCounponInvalid(List<UserSystemCoupon> list);
   /**
    * 有效奖励券
    * @param uid
    * @return
    */
   public boolean getValidRebateCoupon(Long uid);
   /**
    * 查询1.6.5之前的  不等于35%
    * @param uid
    * @return
    */
   public List<UserSystemCouponVO> listIncludeNotExchange(Long uid) throws Exception;
   public long countCouponOld(Long uid);
   /**
    * 更新用户过期券
    * @param uid
    */
   public void updateInvalidSate(Long uid);
   /*
    * 赠送券
    */
   public void sendBackGiveUser(Long uid);
   /**
    * 统计可使用的免单券
    * @param uid
    * @return
    */
   public long countUsableFreeCouponForBuy(Long uid);
   /**
    * 统计可使用的奖励券
    * @param uid
    * @return
    */
   public long countUsableRewardCoupon(Long uid);
   /**
    * 查询免券数量
    * @param uid
    * @param type
    * @return
    */
   public List<UserSystemCoupon> getFreeCouponByType(Long uid, String type);
   /**
    * 激活免单券---订单已到账   触发激活免单券
    * @param uid
    */
   public void triggerFreeCouponActivate(Long uid, String orderNo, Integer source);
   /**
    * 退回券
    * @param giveid
    */
   public void sendBackByGiveId(Long giveid);
   /**
    * 统计赠送免单券
    * @param uid
    * @return
    */
   public long countGiveFreeCoupon(Long uid);
}