TdCCouponPersonDao.java 2.59 KB
package com.zteits.pay.dao;

import java.util.Date;
import java.util.List;

import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.dto.order.coupon.CouponPageRequest;
import com.zteits.clouds.api.dto.order.coupon.CouponPageVO;
import com.zteits.clouds.api.dto.order.coupon.CouponStatisticsVO;
import com.zteits.clouds.api.dto.owner.dto.OwnerBaseDTO;
import com.zteits.clouds.api.dto.owner.param.OwnerRequest;
import com.zteits.clouds.api.dto.pay.param.DeleteCouponInfoReq;
import com.zteits.clouds.api.dto.pay.param.TdCCouponPersonRequest;
import com.zteits.pay.domain.*;

public interface TdCCouponPersonDao {


	List<TdCCouponPersonDO> getCouponPersonState(TdCCouponPersonRequest request);

	List<TdCCouponPersonDO> getCouponPersonStateForShare(TdCCouponPersonRequest request);

	Integer getCouponPersonNum(TdCCouponPersonRequest request);

	/**
	 * 新增个人卡劵
	 * @param tdCCouponPerson
	 * @return
	 * 2017年12月27日 wangfei
	 */
	Integer insertCouponPerson(TdCCouponPerson tdCCouponPerson);

	/**
	 * 新增个人卡劵
	 * @param tdCCouponPerson
	 * @return
	 * 2017年12月27日 wangfei
	 */
	Integer UpdateCouponPerson(TdCCouponPerson tdCCouponPerson);

	/**
	 * 删除个人卡劵
	 * @param request
	 * @return
	 * 2018年1月2日 wangfei
	 */
	Boolean deleteCouponPerson(TdCCouponPersonRequest request);

	/**
	 * 获取今天获取的卡劵记录,用于判断年终活动是否已经获取了卡劵
	 * @param request
	 * @return
	 * 2018年1月15日 wangfei
	 */
	List<TdCCouponPerson> getTodayReceiveCoupon(TdCCouponPersonRequest request);

	/**
	 * 根据赠送规则给个人赠送卡券
	 * @param endTime 失效时间
	 * @param custId 用户ID
	 */
	void presentCouponForCust(TdCPresentRule presentRule, Date endTime, String custId,String acquireNo);

	long countByExample(TdCCouponPersonExample example);

	/**
	 * 车主平台查询车主卡劵数量
	 * @param request
	 * @return
	 * 2019年7月2日 wangfei
	 */
	OwnerBaseDTO getPersonCouponNum(OwnerRequest request);

	/**
	 * 作废个人卡券
	 * @param request
	 */
	Boolean deleteCouponPersonById(DeleteCouponInfoReq request);

	/**
	 * 根据主键查询优惠券
	 * @param id
	 * @return
	 */
	TdCCouponPerson getCouponById(Long id);

	/**
	 * 分页查询优惠券详情
	 * @param request
	 * @return
	 */
	PageInfo<CouponPageVO> getCouponsPage(CouponPageRequest request);

	/**
	 * 查询优惠券统计数据
	 * @param request
	 * @return
	 */
	CouponStatisticsVO getCouponsStatistics(CouponPageRequest request);

	/**
	 * 优惠券列表
	 * @param request
	 * @return
	 */
	List<CouponPageVO> getCouponsList(CouponPageRequest request);

}