package com.style24.scm.biz.dao;

import java.util.Collection;

import com.style24.core.support.annotation.ShopDs;
import com.style24.persistence.domain.Notice;
import com.style24.persistence.domain.NoticeFileList;

/**
 * 공지사항 Dao
 *
 * @author gagamel
 * @since 2020. 10. 30
 */
@ShopDs
public interface TssNoticeDao {

	/**
	 * 공지사항 저장
	 * @param notice - 공지사항 정보
	 * @author gagamel
	 * @since 2020. 10. 30
	 */
	void createNotice(Notice notice);

	/**
	 * 공지사항 수정
	 * @param notice - 공지사항 정보
	 * @author gagamel
	 * @since 2020. 10. 30
	 */
	void updateNotice(Notice notice);

	/**
	 * 공지사항 팝업 총건수
	 * @param roleCd - 권한코드
	 * @return
	 * @author gagamel
	 * @since 2020. 12. 30
	 */
	int getNoticePopupTotalCount(String roleCd);

	/**
	 * 공지사항 팝업 목록
	 * @param roleCd - 권한코드
	 * @return
	 * @author gagamel
	 * @since 2020. 12. 29
	 */
	Collection<Notice> getNoticePopupList(String roleCd);

	/**
	 * 공지사항 팝업 파일 목록
	 * @param noticeSq - 공지사항번호
	 * @return
	 * @author gagamel
	 * @since 2020. 12. 29
	 */
	Collection<NoticeFileList> getNoticePopupFileList(Integer noticeSq);

}
