
package nlib.user.service;

import java.util.List;
import java.util.Map;

import egovframework.com.ext.oauth.service.OAuthUniversalUser;

/**
 * Description : 
 * @author
 * @since
 * @version
 * @see
 *
 * <pre>
 * << Modification Information >>
 *   
 *   Date     Modifier               Expression
 *  -------    --------    ---------------------------
 *  
 *
 * 
 * </pre>
 */
public interface UserInfoService
{
	
	/** 사용자의 SNS 연동 리스트를 조회한다.
	 * @param vo
	 * @return
	 * @throws Exception
	 */
	public List<OAuthUniversalUser> selectSnsSignUpList(NlibLoginVO vo) throws Exception;
	
	/** 내 정보를 수정한다.
	 * @param vo
	 * @throws Exception
	 */
	public void updateMyInfo(NlibLoginVO vo) throws Exception;


	/** SNS연동을 해지한다.
	 * @param oAuthVO
	 * @throws Exception
	 */
	public void deleteSnsLink(OAuthUniversalUser oAuthVO) throws Exception;

	/** 사용자의 정보를 조회한다.
	 * @param vo
	 * @return
	 * @throws Exception
	 */
	public NlibLoginVO selectMyInfo(NlibLoginVO vo) throws Exception;

	/**
	 * 직전 로그인 시간을 조회한다. 
	 * 
	 * @param mbInfoId
	 * @return
	 * @throws Exception
	 */
	public List<Map<String, String>> getLastLogin(String mbInfoId) throws Exception; 
	
	/**
	 * 최근 1건이내 접속한 문화원 정보를 조회한다.
	 * 
	 * @param mbInfoId
	 * @return
	 * @throws Exception
	 */
	public List<Map<String, String>> getVisitedOrgs(String mbInfoId) throws Exception; 
	
}