From 99beaf36eaa0d2b683e93b1173199ce94c375582 Mon Sep 17 00:00:00 2001 From: DrRivaski <48974215+DrRivaski@users.noreply.github.com> Date: Mon, 19 Aug 2024 14:56:46 +0900 Subject: [PATCH] =?UTF-8?q?[Feat]=20=EA=B3=B5=EC=9C=A0=20url=EC=9D=98=20BA?= =?UTF-8?q?SE=20URL=20=EB=B3=80=EA=B2=BD=20(#157)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Feature] static text를 관리하는 enum 구현 (#71) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 --------- Co-authored-by: hyeokson * [Refactor] MainPageController 클래스명 변경 (#72) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * feat: final 객체 초기화 --------- Co-authored-by: hyeokson * [Feature] 메인 페이지 GET API 구현하기 (#73) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * feat: final 객체 초기화 * feat: 메인페이지 자동차 정적 정보 응답 dto 구현 * feat: 메인페이지 이벤트 정적 정보 응답 dto 구현 * refactor: 클래스 및 변수명 변경 * refactor: 클래스명 변경 * refactor: 클래스명 변경 * refactor: round 변수 삭제 * feat: 인증검사를 하지 않는 url 추가 * feat: 메인 페이지 컨트롤러 구현 * feat: 메인 페이지 service 클래스 구현 * feat: 정적자원util 클래스 초기화 메서드 구현 * refactor: enum 변수명 수정 * refactor: Fcfs 당첨자 수 수정 로직 변경 --------- Co-authored-by: hyeokson * [Feature] 어드민 회원가입 기능 구현 (#75) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: 어드민 회원가입 요청 dto 구현 * feat: swagger controller 구현 * feat: 어드민 회원가입 controller 메서드 구현 * feat: 어드민 로그인 요청 dto 수정 * feat: 어드민 회원가입 기능 구현 * feat: 메서드 추가 - 특정 account에 대한 데이터가 admin 저장소에 있는지 확인하는 메서드 구현 * feat: swagger, admin url 추가 * feat: swagger 서버 주소 변경 * feat: cors 설정 --------- Co-authored-by: hyeokson * [Feature] 특정 url에 대해 인가 검사 하지 않도록 구현 (#76) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: 어드민 회원가입 요청 dto 구현 * feat: swagger controller 구현 * feat: 어드민 회원가입 controller 메서드 구현 * feat: 어드민 로그인 요청 dto 수정 * feat: 어드민 회원가입 기능 구현 * feat: 메서드 추가 - 특정 account에 대한 데이터가 admin 저장소에 있는지 확인하는 메서드 구현 * feat: swagger, admin url 추가 * feat: swagger 서버 주소 변경 * feat: cors 설정 * feat: 특정 url에 대해서 인가 검사 하지 않도록 구현 --------- Co-authored-by: hyeokson * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Refactor] 사용자 생성 시 추첨 참여 정보, 공유 링크 정보, 공유 정보 생성 (#78) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * feat: 유저 생성 시 공유 정보 생성하도록 수정 * feat: 유저 생성 시 추첨 이벤트 참여 정보 생성되도록 수정 * refactor: ShareUrlInfo에 빌더 어노테이션 추가 * feat: List형태로 공유 url 가져오는 메서드 추가 * feat: 중복되지 않는 공유 url 생성 후 DB에 저장하는 로직 추가 * refactor: NoArgsConstructor, AllArgsConstructor 추가 * refactor: GeneratedValue 어노테이션 삭제 * refactor: readOnly false로 변경 * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Feature] static text를 관리하는 enum 구현 (#71) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 --------- Co-authored-by: hyeokson * [Refactor] MainPageController 클래스명 변경 (#72) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * feat: final 객체 초기화 --------- Co-authored-by: hyeokson * [Feature] 메인 페이지 GET API 구현하기 (#73) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * feat: final 객체 초기화 * feat: 메인페이지 자동차 정적 정보 응답 dto 구현 * feat: 메인페이지 이벤트 정적 정보 응답 dto 구현 * refactor: 클래스 및 변수명 변경 * refactor: 클래스명 변경 * refactor: 클래스명 변경 * refactor: round 변수 삭제 * feat: 인증검사를 하지 않는 url 추가 * feat: 메인 페이지 컨트롤러 구현 * feat: 메인 페이지 service 클래스 구현 * feat: 정적자원util 클래스 초기화 메서드 구현 * refactor: enum 변수명 수정 * refactor: Fcfs 당첨자 수 수정 로직 변경 --------- Co-authored-by: hyeokson * [Feature] 어드민 회원가입 기능 구현 (#75) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: 어드민 회원가입 요청 dto 구현 * feat: swagger controller 구현 * feat: 어드민 회원가입 controller 메서드 구현 * feat: 어드민 로그인 요청 dto 수정 * feat: 어드민 회원가입 기능 구현 * feat: 메서드 추가 - 특정 account에 대한 데이터가 admin 저장소에 있는지 확인하는 메서드 구현 * feat: swagger, admin url 추가 * feat: swagger 서버 주소 변경 * feat: cors 설정 --------- Co-authored-by: hyeokson * [Feature] 특정 url에 대해 인가 검사 하지 않도록 구현 (#76) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: 어드민 회원가입 요청 dto 구현 * feat: swagger controller 구현 * feat: 어드민 회원가입 controller 메서드 구현 * feat: 어드민 로그인 요청 dto 수정 * feat: 어드민 회원가입 기능 구현 * feat: 메서드 추가 - 특정 account에 대한 데이터가 admin 저장소에 있는지 확인하는 메서드 구현 * feat: swagger, admin url 추가 * feat: swagger 서버 주소 변경 * feat: cors 설정 * feat: 특정 url에 대해서 인가 검사 하지 않도록 구현 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Refactor] 사용자 생성 시 추첨 참여 정보, 공유 링크 정보, 공유 정보 생성 (#78) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * feat: 유저 생성 시 공유 정보 생성하도록 수정 * feat: 유저 생성 시 추첨 이벤트 참여 정보 생성되도록 수정 * refactor: ShareUrlInfo에 빌더 어노테이션 추가 * feat: List형태로 공유 url 가져오는 메서드 추가 * feat: 중복되지 않는 공유 url 생성 후 DB에 저장하는 로직 추가 * refactor: NoArgsConstructor, AllArgsConstructor 추가 * refactor: GeneratedValue 어노테이션 삭제 * refactor: readOnly false로 변경 * [Refactor] 공유 url 조회하는 api 수정 (#70) * infra: 빌드 테스트 yml 작성 * infra: DB 정보 추가 * infra: ssh-agent 버전 변경 * infra: known_hosts 추가 * infra: db port 변경 * infra: database test 설정 변경 * infra: DB 환경변수 설정 및 application.yml 생성 * infra: application.yml 동적 생성 스크립트 수정 * infra: 레디스 설정 추가 * infra: redis test 추가 * infra: redis 버전 변경 * infra: redis cli 설치 * infra: application.yml 위치 및 내용 확인 * infra: Github Actions 환경변수에 REDIS_HOST, REDIS_PORT 추가 * infra: 환경변수 확인 추가 * feat: draw_rank column 이름 수정 * infra: pull_request시 Github Actions 동작하도록 수정 * cicd test (#54) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test --------- Co-authored-by: hyeokson * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson * cicd test (#58) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * chore: ci/cd를 위한 커밋 --------- Co-authored-by: hyeokson * refactor: 공유 url 조회하는 레포지토리 변경 - ShareInfoRepository -> ShareUrlInfoRepository * refactor: 잘못 작성된 메서드 삭제 - findSharedUrlByUserId 삭제 * refactor: 사용되지 않는 shareInfoRepository 삭제 * refactor: 변수명 변경 - sharedUrl -> shareUrl * [Feat] 성공, 실패 상태 코드 수정하기 (#65) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: cors 도메인 설정 * refactor: 커스텀 코드 형식 수정 및 에러코드 수정 - '(에러를 구분하는 알파벳)3자리 숫자' 형태로 커스텀 에러 코드 관리 - 클라이언트에서 에러 코드에 의해 분기되지 않으면 하나의 에러로 관리하도록 변경 * refactor: 하나의 성공 코드로 관리하도록 변경 * rebase: 원본 develop 브랜치와 rebase * rebase: 원본 develop 브랜치 rebase * feat: cors 설정에 localhost 추가 * refactor: 함수명 변경 * refactor: 예외 코드 변경 --------- Co-authored-by: hyeokson * [Feat]Admin Api 구현 (#67) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: Admin entity 클래스 생성 * feat: Admin exception 클래스 생성 * feat: Admin 로그인 컨트롤러 구현 * feat: Admin 로그인 요청 dto 구현 * feat: Admin 로그인 서비스 클래스 구현 * feat: Admin repository 구현 * feat: 추첨 이벤트 시간 설정 요청 dto 구현 * feat: 추첨 시간 검증 클래스 구현 * feat: 추첨 당첨자 응답 dto 구현 * feat: 추첨 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 응답 dto 구현 * feat: 이벤트 페이지 컨트롤러 구현 * feat: 이벤트 페이지 service 클래스 구현 * feat: 선착순 날짜 검증 클래스 구현 * feat: 선착순 날짜 등록 요청 dto 구현 * feat: 선착순 시간 검증 클래스 구현 * feat: 선착순 당첨자 응답 dto 구현 * feat: 선착순 당첨자 수 수정 요청 dto 구현 * feat: 이벤트 지표 컨트롤러 클래스 구현 * feat: 이벤트 지표 service 클래스 구현 * feat: 메인 페이지 관련 컨트롤러 클래스 구현 * feat: 메인 페이지 응답 dto 구현 * feat: 메인 페이지 service 클래스 구현 * feat: password encoder 구현 * feat: 확률값을 %형태로 바꿔주는 serializer 구현 * feat: 전화번호에 '-'를 붙여주는 serializer 구현 * feat: 추첨 시간 검증 애노테이션 구현 * feat: 선착순 날짜 검증 애노테이션 구현 * feat: 선착순 시간 검증 애노테이션 구현 * feat: 당첨 관리 페이지 컨트롤러 클래스 구현 * feat: 당첨 관리 페이지 service 클래스 구현 * config: Bcrypt 의존성 설정 * refactor: winningDate 변수의 자료형 변경 * feat: Draw, User를 조회하는 메서드 구현 * refactor: 변수명 변경 * feat: Transactional 애노테이션 추가 * refactor: 자료형 변경 및 시간 관련 변수 분리 * refactor: 자료형 변경 * feat: eventDate 변수 추가 * feat: EventParticipation 조회 메서드 구현 * feat: round값으로 Fcfs 조회하는 메서드 구현 * feat: @setter 애노테이션 추가 * docs: TODO 추가 * refactor: 클래스명 변경 * refactor: 패키지 변경 * refactor: 패키지 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 및 변수명 변경 * refactor: 클래스명 변경 * refactor: Refresh Token을 삭제하는 메서드 구현 * refactor: 커스텀 코드값 변경 * refactor: 검증 관련 상수 추가 * style: 코드 형식 맞추기 --------- Co-authored-by: hyeokson * infra: 레디스 설정 추가 * [Feat] 기대평 기능 구현 (#57) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * cicd test (#47) * config: jwt 속성을 yml에 설정 * config: git cache 초기화 * feat: Jwt 속성 관리 클래스 생성 * feat: 로그인 컨트롤러 클래스 생성 * feat: 로그인 요청 dto 클래스 생성 * feat: 로그인 service 클래스 생성 * feat: 메서드 추가 - 전화번호에 해당하는 유저가 있는지 확인하는 메서드 - 전화번호로 유저 객체를 반환하는 메서드 * feat: 필드 추가 및 전화번호 인덱싱 설정 * feat: 로그인 성공 상태 코드 추가 * feat: 로그인 실패 상태 코드 추가 * style: 엔터한 공간 줄이기 * chore: ci/cd test --------- Co-authored-by: hyeokson * chore: ci/cd test * chore: ci/cd test * chore: ci/cd test * config: gradle 의존성 설정 * refactor: BaseEntity 삭제 * feat: if문 추가 - 인증 및 미인증 유저가 공동으로 사용하는 api를 위해서 인증을 하지 않았다면 예외가 아니라 userId값으로 null을 갖도록 변경 * feat: 댓글 예외 상태 코드 추가 * feat: Comment 엔티티 클래스 생성 * feat: Comment 컨트롤러 생성 및 구현 - 기대평 조회 및 저장 로직 구현 * feat: Comment 예외 클래스 생성 * feat: 기대평 닉네임을 관리하는 Enum 클래스 생성 * feat: Comment repository 생성 및 구현 * feat: Comment service 생성 및 구현 - SCROLL_SIZE 만큼의 기대평을 반환하는 메서드 구현 - 기대평을 저장하는 메서드 구현 * feat: Comment 조회 응답 클래스 생성 * feat: 기대평을 관리하는 Enum 클래스 생성 * feat: 컨버터 클래스 생성 - 기대평 Enum 객체와 comment 값을 서로 변환해주는 컨버터 생성 * feat: Util 클래스 생성 - 커서 기반 스크롤 기능을 사용할 수 있는 Util 클래스 생성 * refactor: jsonformat 패턴 변경 * feat: 기대평 성공 상태 코드 추가 * refactor: enum 값 변경 * refactor: 호출하는 메서드 명 변경 * refactor: 자료형 변경 * refactor: 애노테이션 변경 * refactor: claim의 id값 자료형 변경 * feat: 변수 및 메서드 추가 - Access Token이 header에 있으면 인증하고 없으면 인증하지 않는 url 설정 및 기능 구현 * feat: 자동으로 생성 시간 저장하도록 구현 * refactor: 시간값 설정 코드 삭제 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Feature] static text를 관리하는 enum 구현 (#71) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 --------- Co-authored-by: hyeokson * [Refactor] MainPageController 클래스명 변경 (#72) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * feat: final 객체 초기화 --------- Co-authored-by: hyeokson * [Feature] 메인 페이지 GET API 구현하기 (#73) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * refactor: transactional 어노테이션 수정 * refactor: 변수명 변경 * feat: MainPage 컨트롤러 클래스 생성 * feat: MainPage service 클래스 생성 * feat: StaticResources entity 클래스 생성 * feat: StaticResources repository 클래스 생성 * feat: StaticResourcesUtil 클래스 생성 * feat: 정적 text를 관리하는 enum 생성 * refactor: 변수명 변경 * refactor: 검증 애노테이션 추가 * refactor: DayOfWeek 속성 변경 * refactor: 예외 msg를 응답객체 result에 넣도록 변경 * refactor: 변수명 변경 * refactor: DayOfWeek 속성 변경 * refactor: 검증 애노테이션 추가 * refactor: 검증 상수 추가 * refactor: 변수 타입을 래퍼타입으로 변경 * refactor: 클래스명 변경 * refactor: 클래스명 및 변수명 변경 * feat: final 객체 초기화 * feat: 메인페이지 자동차 정적 정보 응답 dto 구현 * feat: 메인페이지 이벤트 정적 정보 응답 dto 구현 * refactor: 클래스 및 변수명 변경 * refactor: 클래스명 변경 * refactor: 클래스명 변경 * refactor: round 변수 삭제 * feat: 인증검사를 하지 않는 url 추가 * feat: 메인 페이지 컨트롤러 구현 * feat: 메인 페이지 service 클래스 구현 * feat: 정적자원util 클래스 초기화 메서드 구현 * refactor: enum 변수명 수정 * refactor: Fcfs 당첨자 수 수정 로직 변경 --------- Co-authored-by: hyeokson * [Feature] 어드민 회원가입 기능 구현 (#75) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: 어드민 회원가입 요청 dto 구현 * feat: swagger controller 구현 * feat: 어드민 회원가입 controller 메서드 구현 * feat: 어드민 로그인 요청 dto 수정 * feat: 어드민 회원가입 기능 구현 * feat: 메서드 추가 - 특정 account에 대한 데이터가 admin 저장소에 있는지 확인하는 메서드 구현 * feat: swagger, admin url 추가 * feat: swagger 서버 주소 변경 * feat: cors 설정 --------- Co-authored-by: hyeokson * [Feature] 특정 url에 대해 인가 검사 하지 않도록 구현 (#76) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: 어드민 회원가입 요청 dto 구현 * feat: swagger controller 구현 * feat: 어드민 회원가입 controller 메서드 구현 * feat: 어드민 로그인 요청 dto 수정 * feat: 어드민 회원가입 기능 구현 * feat: 메서드 추가 - 특정 account에 대한 데이터가 admin 저장소에 있는지 확인하는 메서드 구현 * feat: swagger, admin url 추가 * feat: swagger 서버 주소 변경 * feat: cors 설정 * feat: 특정 url에 대해서 인가 검사 하지 않도록 구현 --------- Co-authored-by: hyeokson --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson * [Refactor] MainPageCarResponseDto 필드 변경 (#79) * config: jwt 속성을 yml에 설정 * rebase: 원본 develop 브랜치와 병합 * feat: 어드민 회원가입 요청 dto 구현 * feat: swagger controller 구현 * feat: 어드민 회원가입 controller 메서드 구현 * feat: 어드민 로그인 요청 dto 수정 * feat: 어드민 회원가입 기능 구현 * feat: 메서드 추가 - 특정 account에 대한 데이터가 admin 저장소에 있는지 확인하는 메서드 구현 * feat: swagger, admin url 추가 * feat: swagger 서버 주소 변경 * feat: cors 설정 * feat: 특정 url에 대해서 인가 검사 하지 않도록 구현 * refactor: CarVideoInfo 내부클래스 삭제 * refactor: CarVideoInfo를 사용하지 않도록 변경 * refactor: TODO 삭제 --------- Co-authored-by: hyeokson * feat: 반환하는 공유 url 수정 * feat: 헤더를 통해 공유 코드를 받아오도록 구현 * feat: 헤더를 통해 공유 코드를 받아오도록 구현, 세션 관련된 코드 삭제 * feat: 공유코드를 새로 만드는 로직 수정 - DB에 없을 경우 새로 만들도록 수정 * feat: 사용하지 않는 import문 삭제 * feat: 세션 사용하지 않도록 수정 * chore: 사용하지 않는 import문 삭제 * refactor: 변수명 변경 - drawParticipationCount -> drawAttendanceCount --------- Co-authored-by: Son Chanhyeok <127181634+hyeokson@users.noreply.github.com> Co-authored-by: hyeokson --- .../draw/dto/main/DrawMainResponseDto.java | 2 +- .../draw/util/DrawResponseGenerateUtil.java | 12 +++++----- .../share/service/ShareUrlInfoService.java | 10 ++++---- .../user/controller/LoginController.java | 10 +++----- .../fo_domain/user/service/LoginService.java | 24 ++++++------------- 5 files changed, 21 insertions(+), 37 deletions(-) diff --git a/src/main/java/com/softeer/backend/fo_domain/draw/dto/main/DrawMainResponseDto.java b/src/main/java/com/softeer/backend/fo_domain/draw/dto/main/DrawMainResponseDto.java index c4d4825c..71ea920c 100644 --- a/src/main/java/com/softeer/backend/fo_domain/draw/dto/main/DrawMainResponseDto.java +++ b/src/main/java/com/softeer/backend/fo_domain/draw/dto/main/DrawMainResponseDto.java @@ -12,5 +12,5 @@ public class DrawMainResponseDto { private int invitedNum; // 내가 초대한 친구 수 private int remainDrawCount; // 남은 복권 기회 - private int drawParticipationCount; // 연속 참여 일수 + private int drawAttendanceCount; // 연속 참여 일수 } diff --git a/src/main/java/com/softeer/backend/fo_domain/draw/util/DrawResponseGenerateUtil.java b/src/main/java/com/softeer/backend/fo_domain/draw/util/DrawResponseGenerateUtil.java index d9c2e222..a7a3f633 100644 --- a/src/main/java/com/softeer/backend/fo_domain/draw/util/DrawResponseGenerateUtil.java +++ b/src/main/java/com/softeer/backend/fo_domain/draw/util/DrawResponseGenerateUtil.java @@ -26,14 +26,14 @@ public class DrawResponseGenerateUtil { * * @param invitedNum 초대한 사람 수 * @param remainDrawCount 남은 추첨 기회 - * @param drawParticipationCount 연속 출석 일수 + * @param drawAttendanceCount 연속 출석 일수 * @return 7일 연속 출석 상품 모달 */ - public DrawMainFullAttendResponseDto generateMainFullAttendResponse(int invitedNum, int remainDrawCount, int drawParticipationCount) { + public DrawMainFullAttendResponseDto generateMainFullAttendResponse(int invitedNum, int remainDrawCount, int drawAttendanceCount) { return DrawMainFullAttendResponseDto.builder() .invitedNum(invitedNum) .remainDrawCount(remainDrawCount) - .drawParticipationCount(drawParticipationCount) + .drawAttendanceCount(drawAttendanceCount) .fullAttendModal(drawModalGenerateUtil.generateWinModal(7)) .build(); } @@ -43,14 +43,14 @@ public DrawMainFullAttendResponseDto generateMainFullAttendResponse(int invitedN * * @param invitedNum 초대한 사람 수 * @param remainDrawCount 남은 추첨 기회 - * @param drawParticipationCount 연속 출석 일수 + * @param drawAttendanceCount 연속 출석 일수 * @return 7일 미만 출석 상품 모달 */ - public DrawMainResponseDto generateMainNotAttendResponse(int invitedNum, int remainDrawCount, int drawParticipationCount) { + public DrawMainResponseDto generateMainNotAttendResponse(int invitedNum, int remainDrawCount, int drawAttendanceCount) { return DrawMainResponseDto.builder() .invitedNum(invitedNum) .remainDrawCount(remainDrawCount) - .drawParticipationCount(drawParticipationCount) + .drawAttendanceCount(drawAttendanceCount) .build(); } diff --git a/src/main/java/com/softeer/backend/fo_domain/share/service/ShareUrlInfoService.java b/src/main/java/com/softeer/backend/fo_domain/share/service/ShareUrlInfoService.java index 9a466cbe..4820df64 100644 --- a/src/main/java/com/softeer/backend/fo_domain/share/service/ShareUrlInfoService.java +++ b/src/main/java/com/softeer/backend/fo_domain/share/service/ShareUrlInfoService.java @@ -4,7 +4,6 @@ import com.softeer.backend.fo_domain.share.exception.ShareInfoException; import com.softeer.backend.fo_domain.share.repository.ShareUrlInfoRepository; import com.softeer.backend.global.common.code.status.ErrorStatus; -import com.softeer.backend.global.staticresources.util.StaticResourcesUtil; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -12,23 +11,22 @@ @RequiredArgsConstructor public class ShareUrlInfoService { private final ShareUrlInfoRepository shareUrlInfoRepository; - private final StaticResourcesUtil staticResourcesUtil; public ShareUrlInfoResponseDto getShortenShareUrl(Integer userId) { if (userId == null) { // 로그인하지 않은 사용자 return ShareUrlInfoResponseDto.builder() - .shareUrl(staticResourcesUtil.getData("NON_USER_SHARE_URL")) + .shareUrl("https://softeer.site") .build(); } else { // 로그인한 사용자 - String shareUrl = shareUrlInfoRepository.findShareUrlByUserId(userId).orElseThrow( + String shareCode = shareUrlInfoRepository.findShareUrlByUserId(userId).orElseThrow( () -> new ShareInfoException(ErrorStatus._NOT_FOUND) ); - // DB에 이미 생성된 단축 url 반환 + // DB에 이미 생성된 단축 url 코드 반환 return ShareUrlInfoResponseDto.builder() - .shareUrl(staticResourcesUtil.getData("BASE_URL") + shareUrl) + .shareUrl("https://softeer.site/" + shareCode) .build(); } } diff --git a/src/main/java/com/softeer/backend/fo_domain/user/controller/LoginController.java b/src/main/java/com/softeer/backend/fo_domain/user/controller/LoginController.java index ef685fe3..7438be0c 100644 --- a/src/main/java/com/softeer/backend/fo_domain/user/controller/LoginController.java +++ b/src/main/java/com/softeer/backend/fo_domain/user/controller/LoginController.java @@ -4,13 +4,9 @@ import com.softeer.backend.global.common.dto.JwtTokenResponseDto; import com.softeer.backend.fo_domain.user.service.LoginService; import com.softeer.backend.global.common.response.ResponseDto; -import io.swagger.v3.oas.annotations.Parameter; -import jakarta.servlet.http.HttpSession; import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; @RestController @RequiredArgsConstructor @@ -20,8 +16,8 @@ public class LoginController { @PostMapping("/login") ResponseDto handleLogin(@Valid @RequestBody LoginRequestDto loginRequestDto, - @Parameter(hidden = true) HttpSession session) { - JwtTokenResponseDto jwtTokenResponseDto = loginService.handleLogin(loginRequestDto, session); + @RequestHeader(value = "shareCode", required = false) String shareCode) { + JwtTokenResponseDto jwtTokenResponseDto = loginService.handleLogin(loginRequestDto, shareCode); return ResponseDto.onSuccess(jwtTokenResponseDto); } diff --git a/src/main/java/com/softeer/backend/fo_domain/user/service/LoginService.java b/src/main/java/com/softeer/backend/fo_domain/user/service/LoginService.java index db2fcdc8..899eee43 100644 --- a/src/main/java/com/softeer/backend/fo_domain/user/service/LoginService.java +++ b/src/main/java/com/softeer/backend/fo_domain/user/service/LoginService.java @@ -17,21 +17,15 @@ import com.softeer.backend.global.common.dto.JwtClaimsDto; import com.softeer.backend.global.util.JwtUtil; import com.softeer.backend.global.util.RandomCodeUtil; -import jakarta.servlet.http.HttpSession; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - @Slf4j @Service @RequiredArgsConstructor public class LoginService { - private final UserRepository userRepository; private final ShareInfoRepository shareInfoRepository; private final ShareUrlInfoRepository shareUrlInfoRepository; @@ -47,7 +41,7 @@ public class LoginService { * 4. User 객체의 id를 얻은 후에, access & refresh token을 client에게 전달한다. */ @Transactional - public JwtTokenResponseDto handleLogin(LoginRequestDto loginRequestDto, HttpSession session) { + public JwtTokenResponseDto handleLogin(LoginRequestDto loginRequestDto, String shareCode) { // 인증번호가 인증 되지 않은 경우, 예외 발생 if (!loginRequestDto.getHasCodeVerified()) { log.error("hasCodeVerified is false in loginRequest."); @@ -77,14 +71,13 @@ public JwtTokenResponseDto handleLogin(LoginRequestDto loginRequestDto, HttpSess createShareInfo(userId); // 공유 정보 생성(초대한 친구 수, 남은 추첨 횟수) createShareUrlInfo(userId); // 공유 url 생성 - String shareUrl = (String) session.getAttribute("shareUrl"); // 공유받은 url을 이용해 인증한다면 // 공유한 사람 추첨 기회 추가 // 공유한 사람의 "내가 초대한 친구 수" 추가 // 공유받은 사람은 이미 공유 url로 참여했다고 표시해주기 - if (shareUrl != null) { + if (shareCode != null) { // 공유한 사람의 아이디 - Integer shareUserId = shareUrlInfoRepository.findUserIdByShareUrl(shareUrl) + Integer shareUserId = shareUrlInfoRepository.findUserIdByShareUrl(shareCode) .orElseThrow(() -> new ShareUrlInfoException(ErrorStatus._NOT_FOUND)); // 공유한 사람 추첨 기회 추가 @@ -115,19 +108,16 @@ private void createShareInfo(Integer userId) { } private void createShareUrlInfo(Integer userId) { - List shareUrlList = shareUrlInfoRepository.findAllShareUrl(); - Set shareUrlSet = new HashSet<>(shareUrlList); - RandomCodeUtil randomCodeUtil = new RandomCodeUtil(); - String shareUrl; + String shareCode; do { - shareUrl = randomCodeUtil.generateRandomCode(4); - } while (shareUrlSet.contains(shareUrl)); + shareCode = randomCodeUtil.generateRandomCode(4); + } while (shareUrlInfoRepository.findUserIdByShareUrl(shareCode).isPresent()); ShareUrlInfo shareUrlInfo = ShareUrlInfo.builder() .userId(userId) - .shareUrl(shareUrl) + .shareUrl(shareCode) .build(); shareUrlInfoRepository.save(shareUrlInfo);