Interface MemberService

  • All Superinterfaces:
    org.springframework.security.core.userdetails.UserDetailsService
    All Known Implementing Classes:
    MemberServiceImpl

    public interface MemberService
    extends org.springframework.security.core.userdetails.UserDetailsService
    회원정보 Service Interface
    Version:
    1.0
    Author:
    Yeonhee Kim, Wooyoung Lee
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void accountExpired​(java.lang.String member_id)
      3개월 이상 접속하지 않은 계정 만료
      void deleteMember​(java.lang.String member_id)
      회원 탈퇴
      void deleteMemberByScheduler​(java.lang.String member_id)
      스케쥴러로 인한 멤버 삭제
      java.util.List<Member> getAllMemberList()
      회원 정보를 모두 가져옴
      java.util.Collection<org.springframework.security.core.GrantedAuthority> getAuthorities​(java.lang.String username)
      읽어온 회원정보에 대하여 권한을 부여한 뒤 리턴함
      java.util.List<Member> getMemberList()
      회원 정보를 페이징 처리하여 가져옴
      ResponseData getMemberList​(java.lang.String role, java.lang.String function_name, int current_page_no, int count_per_page, int count_per_list, java.lang.String search_word, java.lang.String approval)
      사용자 목록 테이블을 페이징 처리하여 가져옴
      ResponseData getUsingLog​(java.lang.String member_id, java.lang.String function_name, int current_page_no, int count_per_page, int count_per_list, java.lang.String search_word, java.lang.String log_type, java.util.Map<java.lang.String,​java.lang.Object> searchMap)
      사용 로그 테이블을 페이징 처리하여 가져옴
      org.springframework.security.core.userdetails.UserDetails loadUserByUsername​(java.lang.String username)
      Spring Security에서 아이디로 회원 정보를 읽어옴
      org.springframework.security.crypto.password.PasswordEncoder passwordEncoder()
      사용할 PasswordEncoder를 리턴해줌
      Member readMemberById​(java.lang.String member_id)
      아이디로 회원정보를 가져옴
      void recordLogout()
      사용 로그에 로그아웃을 기록함
      int registerCheck​(java.lang.String object, java.lang.String value)
      회원가입시 해당 요소가 DB에 존재하는지 중복 체크
      int registerMember​(org.springframework.web.multipart.MultipartFile[] uploadImgFile, Member member)
      회원가입
      java.lang.String sendPwdToEmail​(java.lang.String member_id, java.lang.String email)
      비밀번호를 잊어버린 회원에게 아이디와 이메일을 받고 임시 비밀번호를 메일로 발송
      void updateAccountActivation​(java.lang.String member_id)
      관리자 권한으로 계정 활성화
      int updateAuthorities​(java.lang.String member_id, java.lang.String[] authoritiesArr)
      관리자 권한으로 회원 정보(권한) 수정
      void updateLoginTime​(java.lang.String member_id)
      로그인 할 때마다 마지막 로그인 시간을 업데이트
      int updateMember​(org.springframework.web.multipart.MultipartFile[] uploadImgFile, Member member, boolean changeToDefaultImg)
      회원 정보 수정
      void updateMemberApprovalUsingId​(Member member)
      관리자 권한으로 가입 승인
      int updatePwd​(java.lang.String member_id, java.lang.String pwd)
      비밀번호 변경
    • Method Detail

      • registerMember

        int registerMember​(org.springframework.web.multipart.MultipartFile[] uploadImgFile,
                           Member member)
        회원가입
        Parameters:
        uploadImgFile - 업로드한 이미지 파일
        member - 회원 정보
        Returns:
        회원정보값을 리턴
      • readMemberById

        Member readMemberById​(java.lang.String member_id)
        아이디로 회원정보를 가져옴
        Parameters:
        member_id - 회원 아이디
        Returns:
        회원 아이디 값을 리턴
      • registerCheck

        int registerCheck​(java.lang.String object,
                          java.lang.String value)
        회원가입시 해당 요소가 DB에 존재하는지 중복 체크
        Parameters:
        object - DB 객체
        value - 여부 확인
        Returns:
        DB에 존재하는 해당 요소의 총 row 수를 리턴
      • getMemberList

        java.util.List<Member> getMemberList()
        회원 정보를 페이징 처리하여 가져옴
        Returns:
        회원 목록
      • getMemberList

        ResponseData getMemberList​(java.lang.String role,
                                   java.lang.String function_name,
                                   int current_page_no,
                                   int count_per_page,
                                   int count_per_list,
                                   java.lang.String search_word,
                                   java.lang.String approval)
        사용자 목록 테이블을 페이징 처리하여 가져옴
        Parameters:
        role - 사용자 권한
        function_name - 페이지의 번호를 클릭했을 때 호출되는 자바스크립트 함수명 또는 게시글 조회를 요청하는 함수명을 저장할 변수
        current_page_no - 현재 화면에 출력되고 있는 페이지 번호 또는 페이지의 번호를 클릭했을 때에 번호를 저장할 변수
        count_per_page - 한 화면에 출력되는 페이지의 수를 저장할 변수
        count_per_list - 한 화면에 출력되는 게시글의 수를 저장할 변수
        search_word - 검색어
        approval - 승인 여부
        Returns:
        사용자 목록 테이블
      • updateMember

        int updateMember​(org.springframework.web.multipart.MultipartFile[] uploadImgFile,
                         Member member,
                         boolean changeToDefaultImg)
        회원 정보 수정
        Parameters:
        uploadImgFile - 업로드한 이미지 파일
        member - 회원 정보
        changeToDefaultImg - 프로필 이미지를 기본 이미지로 바꾸는지 여부
        Returns:
        member 테이블에 수정된 row의 수
      • updateAuthorities

        int updateAuthorities​(java.lang.String member_id,
                              java.lang.String[] authoritiesArr)
        관리자 권한으로 회원 정보(권한) 수정
        Parameters:
        member_id - 회원 아이디
        authoritiesArr - 권한 배열
        Returns:
        authority 테이블에 수정된 row의 수
      • updatePwd

        int updatePwd​(java.lang.String member_id,
                      java.lang.String pwd)
        비밀번호 변경
        Parameters:
        member_id - 회원 아이디
        pwd - 회원 비밀 번호
        Returns:
        member 테이블에 수정된 row의 수
      • sendPwdToEmail

        java.lang.String sendPwdToEmail​(java.lang.String member_id,
                                        java.lang.String email)
        비밀번호를 잊어버린 회원에게 아이디와 이메일을 받고 임시 비밀번호를 메일로 발송
        Parameters:
        member_id - 회원 아이디
        email - 회원 이메일
        Returns:
        성공 여부
      • deleteMember

        void deleteMember​(java.lang.String member_id)
        회원 탈퇴
        Parameters:
        member_id - 회원 아이디
      • loadUserByUsername

        org.springframework.security.core.userdetails.UserDetails loadUserByUsername​(java.lang.String username)
                                                                              throws org.springframework.security.core.userdetails.UsernameNotFoundException
        Spring Security에서 아이디로 회원 정보를 읽어옴
        Specified by:
        loadUserByUsername in interface org.springframework.security.core.userdetails.UserDetailsService
        Parameters:
        username - 회원 이름
        Returns:
        회원 정보
        Throws:
        org.springframework.security.core.userdetails.UsernameNotFoundException - 유저정보 예외처리
      • getAuthorities

        java.util.Collection<org.springframework.security.core.GrantedAuthority> getAuthorities​(java.lang.String username)
        읽어온 회원정보에 대하여 권한을 부여한 뒤 리턴함
        Parameters:
        username - 회원 이름
        Returns:
        권한 목록
      • passwordEncoder

        org.springframework.security.crypto.password.PasswordEncoder passwordEncoder()
        사용할 PasswordEncoder를 리턴해줌
        Returns:
        비밀번호 암호화 객체
      • getUsingLog

        ResponseData getUsingLog​(java.lang.String member_id,
                                 java.lang.String function_name,
                                 int current_page_no,
                                 int count_per_page,
                                 int count_per_list,
                                 java.lang.String search_word,
                                 java.lang.String log_type,
                                 java.util.Map<java.lang.String,​java.lang.Object> searchMap)
        사용 로그 테이블을 페이징 처리하여 가져옴
        Parameters:
        member_id - 사용자 아이디
        function_name - 페이지의 번호를 클릭했을 때 호출되는 자바스크립트 함수명 또는 게시글 조회를 요청하는 함수명을 저장할 변수
        current_page_no - 현재 화면에 출력되고 있는 페이지 번호 또는 페이지의 번호를 클릭했을 때에 번호를 저장할 변수
        count_per_page - 한 화면에 출력되는 페이지의 수를 저장할 변수
        count_per_list - 한 화면에 출력되는 게시글의 수를 저장할 변수
        search_word - 검색어
        log_type - 상세 검색 타입(사용자 아이디/사용 내역/IP 주소/접속 시간) 중 하나
        searchMap - 상세 검색어(사용자 아이디/사용 내역/IP 주소/접속 시간) 값을 담고 있는 Map
        Returns:
        사용 로그 테이블
      • updateMemberApprovalUsingId

        void updateMemberApprovalUsingId​(Member member)
        관리자 권한으로 가입 승인
        Parameters:
        member - 회원
      • recordLogout

        void recordLogout()
        사용 로그에 로그아웃을 기록함
      • deleteMemberByScheduler

        void deleteMemberByScheduler​(java.lang.String member_id)
        스케쥴러로 인한 멤버 삭제
        Parameters:
        member_id - 삭제할 계정 id
      • updateLoginTime

        void updateLoginTime​(java.lang.String member_id)
        로그인 할 때마다 마지막 로그인 시간을 업데이트
        Parameters:
        member_id - 업데이트 할 계정 id
      • getAllMemberList

        java.util.List<Member> getAllMemberList()
        회원 정보를 모두 가져옴
        Returns:
        회원 목록
      • accountExpired

        void accountExpired​(java.lang.String member_id)
        3개월 이상 접속하지 않은 계정 만료
        Parameters:
        member_id - 만료할 계정 ID
      • updateAccountActivation

        void updateAccountActivation​(java.lang.String member_id)
        관리자 권한으로 계정 활성화
        Parameters:
        member_id - 활성화 할 member_id