사용자는 사용자의 식별자, 이메일 , 비밀번호, 사용자 권한, 사용자 유형, 온도의 정보, ntrp의 정보를 가진다.
사용자 권한
사용자의 권한은 ADMIN, USER 중 하나의 권한 정보를 가진다.
사용자 유형
사용자의 유형은 KAKAO 하나의 정보를 가진다.
이메일 정보는 소셜 로그인 정책에 따른다.
행위
로그인한다.
소셜 로그인일 경우, 소셜 로그인 토큰을 이용해 사용자 정보를 확인한다.
사용자의 정보가 존재하지 않는다면 회원가입을 진행하고 로그인한다.
서버토큰을 발급한다.
로그아웃한다.
소셜 로그인일 경우 소셜 로그아웃 한다.
서버토큰을 만료시킨다.
사용자 온도
💡 평가 온도를 이용해 사용자 온도 내의 온도 정보를 계속해서 갱신해나가는 방식이라서 간단하게 온도 정보만 사용자 테이블에 데이터를 추가해도 되지만, 사용자 온도 스스로 해야한고 판단해 분리했습니다.
상태
사용자 온도는 사용자 온도의 식별자, 사용자의 식별자, 온도 정보를 가진다.
사용자의 식별자는 자신의 식별자를 의미한다.
온도는 0 이상 100 미만의 온도가 들어가게 된다.
기본 온도의 정보는 36.5도이다.
행위
일정 시간 마다 사용자 온도 정보를 갱신한다.
기본 온도에서 평가받은 온도를 계산해서 반환한다.
온도 평가
상태
온도 평가는 온도 평가의 식별자, 평가받은 플레이어의 식별자, 평가하는 플레이어의 식별자, 온도 평가 정보를 가진다.
온도 평가는 최상, 상, 중, 하, 최하 중 하나의 정보를 가진다.
행위
상대 플레이어의 온도를 평가한다.
사용자 ntrp
상태
사용자 온도는 사용자 ntrp의 식별자, 사용자의 식별자, ntrp 레벨의 정보를 가진다.
행위
회원가입을 하면 기본 ntrp가 측정된다.
일정 시간 마다 플레이어의 ntrp를 갱신한다.
ntrp 평가
💡 사용자의 후기를 통해 판단되는 영역이며 평가하는 상대 정보의 비밀을 보장해줘야 하기 때문에 일정 시간 뒤에 업데이트해야 합니다. 또한 서비스를 통틀어서 가장 많이 조회되고, 측정되는 영역이기 때문에 사용자 ntrp 레벨 정보라는 테이블을 생성해 직접적으로 동기화해주는 방식으로 진행합니다.
상태
ntrp 평가는 ntrp 평가의 식별자, 평가받은 플레이어의 식별자, 평가하는 플레이어의 식별자, ntrp 평가 정보 가진다.
사용자 도메인
이벤트 흐름
사용자
ADMIN
,USER
중 하나의 권한 정보를 가진다.KAKAO
하나의 정보를 가진다.사용자 온도
온도 평가
사용자 ntrp
ntrp 평가