package com.style24.batch.biz.dao;

import com.style24.core.support.annotation.ShopDs;
import com.style24.persistence.domain.Point;

import org.springframework.stereotype.Repository;

import java.util.Collection;

/**
 * 포인트 Dao
 *
 * @author jsshin
 * @since 2021. 04. 22
 */
@ShopDs
@Repository
public interface TsbPointDao {

	/**
	 * 자동구매확정 대상 리스트
	 *
	 * @param point - 자동구매확정 기준일, 구매확정 포인트 만료일
	 * @return Collection<Point>
	 * @author jsshin
	 * @since  2021. 04. 23
	 */
	Collection<Point> getAutoBuyConfirmList(Point point);
	
	/**
	 * 포인트 소멸 리스트
	 *
	 * @param point
	 * @return Collection<Point>
	 * @author sowon
	 * @since  2021. 04. 26
	 */
	Collection<Point> getExpirePointList(Point point);

	/**
	 * 포인트 hst insert
	 *
	 * @param point
	 * @return 
	 * @author sowon
	 * @since  2021. 04. 26
	 */
	void saveExpirePointHst(Point point);
	
	/**
	 * 포인트 만료일시 update
	 *
	 * @param point
	 * @return 
	 * @author sowon
	 * @since  2021. 04. 26
	 */
	void updateCustPointExpire(Point point);
	
	/**
	 * 포인트 기간만료 알림톡(30일) 리스트
	 *
	 * @param point
	 * @return Collection<Point>
	 * @author sowon
	 * @since  2021. 05. 28
	 */
	Collection<Point> getSendPointExpectList(Point point);

}
