package itn.let.mjo.event.service;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import itn.let.cop.bbs.service.BoardVO;
import itn.let.mjo.pay.service.MjonPayVO;
import itn.let.uss.umt.service.MberManageVO;

public interface MjonEventService {

	//현재 진행중 이벤트 제목으로 검색하여 정보 불러오기
	BoardVO selectEventInfoByNttSj(BoardVO boardVO) throws Exception;
	
	//등록된 이벤트 회원정보가 있는지 확인한다.
	int selectEventMsgMberDefaultInfoCnt(MjonEventVO mjonEventVO) throws Exception;
	
	//등록된 이벤트 회원정보 불러오기
	MjonEventVO selectEventMsgMberDefaultInfo(MjonEventVO mjonEventVO) throws Exception;
	
	//이벤트 회원정보 중 기본 정보를 입력해 준다.
	int insertEventMsgMberDefaultInfo(MjonEventVO mjonEventVO) throws Exception;
	
	//이벤트 유의사항 및 문자수신 동의 정보 업데이트
	int updateEventPolicyMberInfo(MjonEventVO mjonEventVO) throws Exception;
	
	//이벤트 종료 처리
	int updateEventEndStatus(MjonEventVO mjonEventVO) throws Exception;
	
	//관리자 이벤트 강제 종료 처리 및 메모 등록
	int updateEventAdmClosedStatus(MjonEventVO mjonEventVO, MberManageVO mberManageVO) throws Exception;
	
	//관리자 이벤트 수정 처리 및 메모 등록
	int updateEventAdmEdit(MjonEventVO mjonEventVO, MberManageVO mberManageVO) throws Exception;
	
	//이벤트 회원 캐시 남은 금액 수정하기
	int updateEventRemainCash(MjonEventVO mjonEventVO) throws Exception;
	
	//이벤트 정보 신규 추가(관리자가 강제로 입력)
	int insertEventFrstInfoByAdm(MjonEventVO mjonEventVO) throws Exception;
	
	//현재 진행중 이벤트 상태 정보 불러오기
	MjonEventCheckVO selectEventStatus(MjonEventCheckVO p_MjonEventCheckVO) throws Exception;

	MjonEventVO selectEventMsgMberDefaultInfo_advc(String userId) throws Exception;
	
	//이벤트 나이스페이 결제 
	MjonPayVO insertFirstEventNicePay_advc(MjonPayVO mjonPayVO, HttpServletRequest request, String p_payment_comp) throws Exception;
	
	//이벤트 kg모빌런스  모바일 결제
	String insertFirstEventKgPayMobile_advc(MjonPayVO mjonPayVO, HttpServletResponse response, HttpServletRequest request) throws Exception;
	
	//이벤트 kg모빌런스  즉시이체 결제
	String insertFirstEventKgPayBank_advc(MjonPayVO mjonPayVO, HttpServletResponse response, HttpServletRequest request) throws Exception;
	
	//이벤트 kg모빌런스  즉시이체 결제
	String insertFirstEventKgPayCard_advc(MjonPayVO mjonPayVO, HttpServletResponse response, HttpServletRequest request) throws Exception;
}
