package com.style24.admin.biz.dao;

import java.util.Collection;

import org.springframework.stereotype.Repository;

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

/**
 * poll Dao
 *
 * @author sowon
 * @since 2021. 2. 19
 */

@ShopDs
@Repository
public interface TsaPollDao {
	
	/**
	 * POLL 저장
	 *
	 * @param poll 정보
	 * @author sowon
	 * @since 2021. 02. 19
	 */
	void savePoll(Poll poll);
	
	/**
	 * POLL 문항 삭제
	 *
	 * @param pollSq
	 * @author sowon
	 * @since 2021. 2. 19
	 */
	void deletePollQuestion(Poll poll);
	
	/**
	 * POLL 문항 등록
	 *
	 * @param Poll 문항 정보
	 * @author sowon
	 * @since 2021. 2. 19
	 */
	void createPollQuestion(Poll poll);
	
	/**
	 * POLL 문항 삭제
	 *
	 * @param Poll 문항 정보
	 * @author sowon
	 * @since 2021. 5. 2
	 */
	void removeQuestion(Poll poll);

	/**
	 * POLL 목록
	 *
	 * @param Poll
	 * @return Poll목록
	 * @author sowon
	 * @since 2021. 2. 19
	 */
	Collection<Poll> getPollList(Poll poll);
	
	/**
	 * POLL 투표자 목록
	 *
	 * @param Poll
	 * @return Poll목록
	 * @author sowon
	 * @since 2021. 2. 22
	 */
	Collection<Poll> getPollVoterList(Poll poll);
	
	/**
	 * POLL 보기 조회
	 *
	 * @param Poll
	 * @return Poll 보기 
	 * @author sowon
	 * @since 2021. 2. 22
	 */
	Collection<Poll> getPollQuestion(Poll poll);
	
	/**
	 * POLL ANSWER 조회
	 *
	 * @param Poll
	 * @return Poll ANSWER 
	 * @author sowon
	 * @since 2021. 2. 22
	 */
	Collection<Poll> getPollAnswer(Poll poll);
	
	/**
	 * POLL ALL QUESTION 조회
	 *
	 * @param Poll
	 * @return POLL
	 * @author sowon
	 * @since 2021. 6. 2
	 */
	Collection<Poll> getPollAllQuestionList(Poll poll);
	
	


}
