
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
package com.takensoft.cms.mber.service;
import com.takensoft.cms.mber.dto.JoinDTO;
import com.takensoft.cms.mber.dto.PasswordDTO;
import com.takensoft.cms.mber.vo.MberVO;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.dao.DataAccessException;
import java.util.*;
/**
* @author takensoft
* @since 2024.04.01
* @modification
* since | author | description
* 2024.04.01 | takensoft | 최초 등록
*
* 회원 정보 관련 인터페이스
*/
public interface MberService {
/**
* @param lgnId - 로그인 아이디
* @return boolean - 아이디 아이디 중복 여부
*
* 아이디 중복 검사
*/
public boolean findByCheckLoginId(String lgnId);
/**
* @param req - HTTP 요청 객체
* @param joinDTO -회원정보
* @return HashMap<String, Object> - 회원정보 등록 결과
* - mbrId : 회원 아이디
* - result : 회원등록정보 결과
*
* 회원가입
*/
public HashMap<String, Object> userJoin(HttpServletRequest req, JoinDTO joinDTO);
/**
* @param passwordDTO - 비밀번호
* @return boolean - 비밀번호 사용 가능 여부
*
* 비밀번호 비교
*/
public boolean passwordCheck(PasswordDTO passwordDTO);
/**
* @param params
* - 회원 아이디
* @return MberVO - 회원 정보
*
* 회원정보 상세 조회
*/
public MberVO findByMbr(HashMap<String, Object> params);
/**
* @param passwordDTO - 비밀번호
* @return int - 비밀번호 수정 결과
*
* 비밀번호 수정
*/
public int updatePassword(PasswordDTO passwordDTO);
/**
* @param email - 이메일
* @return MberVO - 사용자 정보
*
* 이메일로만 사용자 조회
*/
public MberVO findByEmail(String email);
/**
* @param email - 이메일
* @param mbrType - 회원 유형 (K, N, G, F, S)
* @return MberVO - 사용자 정보
*
* 이메일과 회원 유형으로 사용자 조회
*/
public MberVO findByEmailAndProvider(String email, String mbrType);
/**
* @param user - OAuth2 사용자 정보
* @return MberVO - 저장된 사용자 정보
*
* OAuth2 사용자 저장
*/
public MberVO saveOAuthUser(MberVO user);
/**
* @param user - OAuth2 사용자 정보
* @return MberVO - 업데이트된 사용자 정보
*
* OAuth2 사용자 정보 업데이트
*/
public MberVO updateOAuthUser(MberVO user);
/**
* @param user - OAuth2 연동 정보가 추가된 사용자 정보
* @return MberVO - 연동된 사용자 정보
*
* 기존 계정에 OAuth2 정보 연동
*/
public MberVO linkOAuth2Account(MberVO user);
}