package com.qs.mp.admin.service;

import com.qs.mp.admin.domain.Coupon;
import com.qs.mp.admin.domain.CouponTicket;
import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qs.mp.admin.domain.Ticket;

/**
 * <p>
 * 优惠券 服务类
 * </p>
 *
 * @author quanshu
 * @since 2022-03-07
 */
public interface ICouponService extends IService<Coupon> {

	/**
	 * 新增信息
	 * 
	 * @param coupon
	 * @param ticketList
	 */
	public void saveCoupon(Coupon coupon, List<CouponTicket> ticketList);

	/**
	 * 修改信息
	 * 
	 * @param coupon
	 * @param ticketList
	 */
	public void updateCoupon(Coupon coupon, List<CouponTicket> ticketList);

	/**
	 * 发放
	 * 
	 * @param ticket
	 * @param userId
	 * @param couponId
	 */
	void distribute(Ticket ticket, Long userId, String couponId);

	/**
	 * 营销活动优惠券发放
	 * @param userId
	 * @param couponId
	 */
    void distributeByMarketing(Long userId, String couponId);
}
