package com.iamberry.wechat.face.coupon;

import java.util.List;

import com.iamberry.wechat.core.entity.coupon.CouponItem;
import com.iamberry.wechat.core.entity.coupon.CouponItemDto;
/**
 * 优惠券详情 service
 * 2016年7月6日
 * @author Administrator
 *
 */
public interface CouponItemService {
	/**
	 * 分页查询所有优惠券详情列表
	 * 2016年7月6日
	 * @author 穆再兴
	 * @return
	 */
	public List<CouponItemDto> getCouponItemDtoList(CouponItemDto couponItemDto);
	
	/**
	 * 查询所有符合条件的优惠券详情总数
	 * 2016年7月7日
	 * @return
	 */
	public Integer getCouponItemCount(CouponItemDto couponItemDto);
	
	/**
	 * 添加一张优惠券
	 * 2016年7月7日
	 * @author 穆再兴
	 * @param couponItem
	 * @return
	 */
	public Integer insertCouponItem(CouponItem couponItem);
	
	/**
	 * 根据id查询一张优惠券
	 * 2016年7月7日
	 * @param couponItemId
	 * @return
	 */
	public CouponItemDto getCouponItemById(String couponItemId);
	
	/**
	 * 根据id修改优惠券信息
	 * 2016年7月7日
	 * @param couponItem
	 * @return
	 */
	public Integer updateCouponItemById(CouponItem couponItem);
	
	/**
	 * 批量修改优惠券信息
	 * @param couponItemList
	 * @return
	 * @author liuzhiwei
	 */
	public Integer updateCouponItemList(List<CouponItem> couponItemList);
	/**
	 * -根据openid查询是否已领取新人优惠券
	 * @param openId
	 * @return
	 */
	Integer getIsReceive(String openId);

	/**
	 * 获取领取的优惠券的数量
	 * @param couponItem
	 * @return
	 */
	Integer isReceive(CouponItem couponItem);

	/**
	 * 根据openid查询领取了多少张优惠券
	 * @param couponItem
	 * @return
	 */
	Integer userCouponNum(CouponItem couponItem);

	/**
	 * 获取所有领取优惠券的人
	 * @param couponItem
	 * @return
	 */
	Integer allCouponItemNumber(CouponItem couponItem);


}
