Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* [deploy] merge to develop (#27) * [deploy] merge to main (#26) * [#2] chore(.gitignore): .gradle, .idea 파일 삭제 (#3) * [refactor] #4 - 도메인형 디렉터리 구조 변경 및 local, dev, prod 운영 환경 분리 (#5) * [#4] fix: 클래스 첫글자 대문자로 수정 * [#4] remove: enum 삭제 * [#4] feat(BaseSuccessCode): 성공 상태 관리를 위한 인터페이스 생성 * [#4] feat(BaseErrorCode): 에러 상태 관리를 위한 인터페이스 생성 * [#4] refactor: global 패키지로 이동 * [#4] refactor: 서버 운영 환경 분리 * [feat] #6 - dev, prod Dockerfile 분리 및 github Action CI workflow 구현 (#7) * [#6] feat(Dockerfile): prod용 도커 파일 구현 * [#6] feat(Dockerfile-dev): dev용 도커 파일 구현 * [#6] feat(dev-CI.yml): dev용 CI workflow 구현 * [#6] feat(prod-CI.yml): prod용 CI workflow 구현 * [#6] chore(.gitignore): gradle-wrapper.jar 파일은 레포지토리에 포함되도록 설정 * [#6] fix(gradle-wrapper.jar): .gitignore로 누락된 파일 추가 * [#6] chore(build.grade): plain jar 생성 방지 * [#9] docs(README.md): 서비스 소개 README v1 작성 (#10) * [#11] docs(README.md): 리드미 업데이트 (#12) * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [feat] #14 - 회원, 홍보, 등장인물, 스태프 엔티티 생성 (#16) * [#14] feat(Member): 멤버 엔티티 생성 * [#14] feat(Promotion): 홍보 엔티티 생성 * [#14] feat(Cast): 등장인물 엔티티 생성 * [#14] feat(Staff): 스태프 엔티티 생성 * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [#14} fix: 스태프, 등장인물, 홍보 엔티티 상속관계 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [#18] feat(Jenkinsfile): 젠킨스 파일 생성 (#19) * [#20] refactor(Jenkinsfile): 젠킨스 파일 Webhook 테스트용 커밋 (#21) * [#22] feat(Jenkinsfile): Jenkins multibranch 스크립트 작성 (#23) * HOTFIX(Jenkinsfile): Jenkins multibranch 스크립트 수정 * HOTFIX(workflows): 빌드 후 젠킨스 배포가 진행되도록 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * [#24] feat(Jenkinsfile): slack 연동 스크립트 작성 (#25) --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * HOTFIX(workflow): 오타 수정 --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * [feat] #28 - 비회원 예매 조회 POST API 구현 (#29) * chore(application-dev.yml): dialect 추가 * chore(application-prod.yml): dialect 추가 * [#28] chore(build.gradle): security 의존성 비활성화 - security 일시적으로 비활성화 * [#28] refactor(Booking): 예매 엔티티에 빌더 및 정적팩토리 메서드 추가 * [#28] refactor(ErrorResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(Schedule): 회차 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(Performance): 공연 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(SuccessResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(GlobalExceptionHandler): INTERNAL_SERVER_ERROR 핸들러 메서드 추가 * [#28] feat(BookingSuccessCode): 예매 성공 메시지를 관리하는 열거형 생성 * [#28] feat(BookingErrorCode): 예매 에러 메시지를 관리하는 열거형 생성 * [#28] feat(BookingRetrieveResponse): 예매 조회 응답 DTO 생성 * [#28] feat(BookingRetrieveRequest): 예매 조회 요청 DTO 생성 * [#28] feat(BookingRepository): 예매 레포지토리 생성 및 비회원 예매 조회 시 예매 내역 가져오는 메서드 구현 * [#28] feat(BookingService): 예매 서비스 레이어 생성 및 비회원 조회 메서드 구현 * [#28] feat(BookingController): 예매 컨트롤러 생성 및 비회원 예매조회 POST API 구현 * [feat] #30 - SwaggerConfig 및 WebConfig 구현 (#31) * [#30] chore(build.gradle): springdoc 의존성 추가 * [#30] feat(SwaggerConfig): SwaggerConfig 추가 * [#30] feat(WebConfig): WebConfig 추가 * HOTFIX(workflows): push 이벤트 시 github action이 빌드 되지 않도록 수정 * HOTFIX(Jenkinsfile): 포트 수정 * [feat] #32 - 티켓 예매 가능 여부 GET API 구현 (#33) * [#32] refactor(BookingController): 메서드명 수정 * [#32] feat(ConflictException): Conflict 409에러 클래스 생성 * [#32] feat(GlobalExceptionHandler): ConflictException 등록 * [#32] feat(TicketAvailabilityRequest): TicketAvailabilityRequest DTO 생성 * [#32] feat(TicketAvailabilityResponse): TicketAvailabilityResponse DTO 생성 * [#32] feat(ScheduleSuccessCode): ScheduleSuccessCode 열거형 생성 * [#32] feat(ScheduleErrorCode): ScheduleErrorCode 열거형 생성 * [#32] feat(ScheduleRepository): ScheduleRepository 생성 * [#32] feat(ScheduleService): ScheduleService 생성 및 회차별 티켓 구매 가능 여부 판단 메서드 구현 * [#32] feat(ScheduleController): 회차별 티켓 수량 조회 GET API 구현 * [feat] #17 - 카카오 소셜 로그인 API 구현 (#36) * [#17] feat(build.gradle): jwt, security, open feign, Redis 의존성 추가 * [#17] feat(BeatApplication): OpenFeign 관련 어노테이션 추가 * [#17] feat(RedisConfig): redis 설정 * [#17] feat: redis 활용 jwt 토큰 생성 로직 구현 * [#17] feat(SecurityConfig): security 설정 * [#17] refactor: Member, Users 엔티티 수정 및 관련 enum 추가 * [#17] feat: Member, Users 도메인 관련 인증 로직 구현 * [#17] feat(MemberController): Member 관련 API 엔드포인트 구현 * [#17] feat: Security 관련 인증 객체 구현 * [#17] feat: 소셜로그인 로직 구현 * [#17] fix: 소셜로그인 오류 해결 * [#17] refactor: 코드리뷰 반영 * [#17] refactor: 코드리뷰 반영 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #34 - 비회원 예매 POST API 구현 (#35) * [#34] feat(Users): 빌더 및 정적 팩토리 메서드 추가 * [#34] feat(Entity): 엔티티 id 필드 수정 * [#34] refactor(application.yml): dialect 추가 * [#34] refactor(ScheduleService): 네이밍 수정 * [#34] refactor(BookingSuccessCode): 비회원 예매 조회 성공 메시지 추가 * [#34] feat(GuestBookingRequest): 비회원 예매 요청 DTO 생성 * [#34] feat(GuestBookingResponse): 비회원 예매 응답 DTO 생성 * [#34] refactor(BookingRetrieveService): 네이밍 수정 * [#34] feat(PerformanceRepository): 공연 레포지토리 생성 * [#34] feat(UserRepository): 유저 레포지토리 생성 * [#34] refactor(BookingRepository): 비회원 예매 시 네가지 정보가 모두 일치 해야만 다른 유저로 판단하는 메서드 구현 * [#34] refactor(ScheduleRepository): 비관적 락 적용 * [#34] feat(GuestBookingService): 비관적 락을 이용해 비회원 예매 로직 구현 * [#34] feat(BookingController): 비회원 예매 POST API 구현 * [#34] test(GuestBookingServiceConcurrencyTest): 동시성 테스트 구현 * [Refactor] #37 - 카카오 로그인 API response 수정 (#39) * [#37] rename: 빈 충돌 해결 위해 UserRepository를 UsersRepository로 rename * [#37] refactor: login response에서 refreshToken을 cookie에 담아주도록 변경 * [#37] fix: dao, repository 충돌 해결 * [#37] refactor: 어노테이션 수정 * [feat] #40 - 소개 관련 공연 정보 조회 GET API 구현 (#41) * [#40] feat: repository 추가 * [#40] feat: 공연 관련 성공, 실패 메세지 추가 * [#40] feat(PerformanceDetailResponse): 공연 상세페이지 조회 응답 dto * [#40] feat(PerformanceService): 공연 상세페이지 조회 로직 구현 * [#40] feat(PerformanceController): 공연 상세페이지 엔드포인트 구현 * [#40] feat(SecurityConfig): auth whitelist update * [#40] refactor: dto 분리 및 rename * [feat] #42 - 예매 관련 공연 정보 GET API 구현 (#43) * [#42] feat: 예매 관련 정보 조회 dto 생성 * [#42] feat: 예매 관련 정보 조회 성공 메세지 추가 * [#42] feat(ScheduleService): 잔여티켓계산, 예매가능여부확인, 예매가능여부 update 메소드 구현 * [#42] feat(PerformanceService): 예매관련공연정보의 response 생성하는 로직 구현 * [#42] feat(PerformanceController): 예매관련공연정보 조회 엔드포인트 구현 * [#42] feat(SecurityConfig): auth_whitelist update * [#42] refactor(ScheduleService): findTicketAvailability에서 getAvailableTicketCount method 사용하도록 수정 * [feat] #38 - 회원 예매 POST API 구현 (#45) * [#38] fix(Cast): Join 하는 부분 수정 및 빌더와 정적 팩토리 메서드 패턴 도입 * [#38] chore(application.yml): 계층 수정 * [#38] feat: 커스텀 어노테이션 생성 * [#38] fix(UserRepository): 중복된 클래스 삭제 * [#38] feat(UserErrorCode): 유저의 에러 메시지를 관리하는 열거형 생성 * [#38] refactor(MemberErrorCode): message 목적에 맞게 변경 * [#38] refactor(BookingSuccessCode): 회원 예매 성공 메시지 추가 * [#38] feat: 커스텀 어노테이션 생성 커밋에 누락된 클래스 추가 * [#38] refactor(GuestBookingService): schedule에서 바로 get 하도록 수정 * [#38] test(GuestBookingServiceConcurrencyTest): import문 경로명 변경 * [#38] refactor(MemberService): @Transactional 어노테이션이 필요한 메서드에 해당 옵션 추가 * [#38] feat(MemberBookingRequest): 회원 예매 요청 DTO 생성 * [#38] feat(MemberBookingResponse): 회원 예매 응답 DTO 생성 * [#38] refactor(MemberController): refreshToken을 쿠키에 넣어주도록 구현 * [#38] feat(MemberBookingService): 회원 예매 서비스 로직 구현 * [#38] feat(BookingController): 회원 예매 요청 POST API 구현 * [#38] fix: 빌드 안되는 부분 수정 * [#38] remove(MemberBookingService): 사용하지 않는 import문 삭제 * [#38] refactor: 커스텀 어노테이션 이름 수정 * [feat] #44 - 홈페이지 공연 및 홍보 조회 GET API 구현 (#47) * [#44] refactor: 코드리뷰 반영 * [#44] fix(Promotion): 기본키 이름 수정, performanceId 연관관계 설정 * [#44] feat: Repository 및 관련 로직 추가 * [#44] feat: errorcode, successcode 추가 * [#44] feat: 홈페이지 request, response dto 생성 * [#44] feat(ScheduleService): dueDate 관련 로직 구현 * [#44] feat(PerformanceService): 홈페이지 정렬 및 response 생성 로직 구현 * [#44] chore: import문 추가 * [feat] #46 - 회원 예매 조회 GET API 구현 (#48) * [#46] remove(BookingRetrieveRequest): 클래스 삭제 * [#46] refactor(BookingSuccessCode): 회원 예매 조회 성공 메시지 추가 * [#46] refactor(GuestBookingRetrieveResponse): 클래스 명 변경 * [#46] refactor(GuestBookingRetrieveRequest): 안쓰는 코드 주석처리 * [#46] refactor(GuestBookingRetrieveService): 클래스 명 수정으로 인한 리팩토링 * [#46] refactor(SecurityConfig): 토큰 사용하지 않는 api 경로 추가하기 * [#46] refactor(BookingRepository): userId로 예약 정보를 가져오는 JPA 메서드 구현 * [#46] feat(MemberBookingRetrieveResponse): 회원 조회 응답 DTO 생성 * [#46] feat(MemberBookingRetrieveService): 회원 예매 조회 로직을 담당하는 서비스 레이어 구현 * [#46] feat(BookingController): 회원 예매 조회 GET API 구현 * [feat] #49 - 예매자 관리 API 구현 (#51) * [#49] feat: 티켓 관련 success, error code 추가 * [#49] feat(Booking): 입금여부 setter 메소드 추가 * [#49] feat(TicketRetrieveResponse): 예매자 확인 response dto 생성 * [#49] feat(Ticket): 예매자 확인용 티켓 정보 response dto 생성 * [#49] feat(TicketRepository): 예매자 필터링용 메소드 생성 * [#49] feat: 예매자 입금정보 수정 request dto 생성 * [#49] feat(TicketDeleteRequest): 예매자 삭제 request dto 생성 * [#49] feat(TicketService): 예매자 관리 관련 로직 구현 * [#49] feat(TicketController): 예매자 관리 엔드포인트 구현 * [#49] chore: swagger annotation 추가 * HOTFIX(SecurityConfig): WHITELIST 경로명 수정 * [fix] #52 - auth whitelist 수정 (#53) * [#52]fix(SecurityConfig): auth_whitelist 수정 * [#52]fix(SecurityConfig): auth_whitelist 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #54 - 등록한 공연 목록 조회 GET API 구현 (#55) * [#54] feat(PerformanceSuccessCode): success code 추가 * [#54] feat: 회원이 등록한 공연목록 조회 dto 생성 * [#54] feat(PerformanceService): 회원이 등록한 공연목록 조회 로직 구현 * [#54] feat(PerformanceRepository): 회원이 등록한 공연목록 조회 관련 메소드 추가 * [#54] feat(PerformanceController): 회원이 등록한 공연목록 조회 엔드포인트 생성 * [#54] fix(TicketService): exception error 수정 * [#54] chore(application.yml): yml 수정 * [fix] #58 - dev-ci.yml, prod-ci.yml 환경변수 추가 (#59) * [#58] fix(dev-CI.yml): Dev 서버 CI 워크플로우 수정 * [#58] fix(prod-CI.yml): Prod 서버 CI 워크플로우 수정 * [refactor] #61 - Performance Entity field 추가 (#62) * [#61] refactor(Performance): bankHolder 필드 추가 * [#61] chore(BookingController): swagger annotation 수정 * [feat] #63 - healthCheckController 생성 (#64) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [feat] #63 - health check URL 화이트리스트에 등록 (#67) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [#63] feat(SecurityConfig): healthcheck url white_list에 등록 * [fix] #57 - entity 연관관계 설정 SecurityConfig 수정 (#65) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 --------- Co-authored-by: DongHoon Lee <[email protected]> * [fix] #57 - security 관련 에러 대응 (#71) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [fix] #73 - security 수정 (#74) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [#57] fix:security 수정 * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 (#77) * [fix] #76 - 누락된 코드 추가 (#79) * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 * [#76] chore(SecurityConfig): 누락된 import문 추가 * [#76] chore(JwtTokenProvider): 누락된 코드 추가 * [#81] fix(JwtTokenProvider): jwtsecret을 인코딩하고 디코딩을 하도록 수정 (#82) * [#85] chore(application.yml): 환경변수 설정 (#86) * [chore] #88 - 레디스 환경변수 추가 (#89) * [#88] chore(dev-CI.yml): dev서버 레디스 환경변수 설정 추가 * [#88] chore(prod-CI.yml): prod 서버 레디스 환경변수 설정 추가 * [deploy] merge to main (#90) * [deploy] merge to main (#83) * [deploy] merge to develop (#27) * [deploy] merge to main (#26) * [#2] chore(.gitignore): .gradle, .idea 파일 삭제 (#3) * [refactor] #4 - 도메인형 디렉터리 구조 변경 및 local, dev, prod 운영 환경 분리 (#5) * [#4] fix: 클래스 첫글자 대문자로 수정 * [#4] remove: enum 삭제 * [#4] feat(BaseSuccessCode): 성공 상태 관리를 위한 인터페이스 생성 * [#4] feat(BaseErrorCode): 에러 상태 관리를 위한 인터페이스 생성 * [#4] refactor: global 패키지로 이동 * [#4] refactor: 서버 운영 환경 분리 * [feat] #6 - dev, prod Dockerfile 분리 및 github Action CI workflow 구현 (#7) * [#6] feat(Dockerfile): prod용 도커 파일 구현 * [#6] feat(Dockerfile-dev): dev용 도커 파일 구현 * [#6] feat(dev-CI.yml): dev용 CI workflow 구현 * [#6] feat(prod-CI.yml): prod용 CI workflow 구현 * [#6] chore(.gitignore): gradle-wrapper.jar 파일은 레포지토리에 포함되도록 설정 * [#6] fix(gradle-wrapper.jar): .gitignore로 누락된 파일 추가 * [#6] chore(build.grade): plain jar 생성 방지 * [#9] docs(README.md): 서비스 소개 README v1 작성 (#10) * [#11] docs(README.md): 리드미 업데이트 (#12) * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [feat] #14 - 회원, 홍보, 등장인물, 스태프 엔티티 생성 (#16) * [#14] feat(Member): 멤버 엔티티 생성 * [#14] feat(Promotion): 홍보 엔티티 생성 * [#14] feat(Cast): 등장인물 엔티티 생성 * [#14] feat(Staff): 스태프 엔티티 생성 * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [#14} fix: 스태프, 등장인물, 홍보 엔티티 상속관계 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [#18] feat(Jenkinsfile): 젠킨스 파일 생성 (#19) * [#20] refactor(Jenkinsfile): 젠킨스 파일 Webhook 테스트용 커밋 (#21) * [#22] feat(Jenkinsfile): Jenkins multibranch 스크립트 작성 (#23) * HOTFIX(Jenkinsfile): Jenkins multibranch 스크립트 수정 * HOTFIX(workflows): 빌드 후 젠킨스 배포가 진행되도록 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * [#24] feat(Jenkinsfile): slack 연동 스크립트 작성 (#25) --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * HOTFIX(workflow): 오타 수정 --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * [feat] #28 - 비회원 예매 조회 POST API 구현 (#29) * chore(application-dev.yml): dialect 추가 * chore(application-prod.yml): dialect 추가 * [#28] chore(build.gradle): security 의존성 비활성화 - security 일시적으로 비활성화 * [#28] refactor(Booking): 예매 엔티티에 빌더 및 정적팩토리 메서드 추가 * [#28] refactor(ErrorResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(Schedule): 회차 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(Performance): 공연 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(SuccessResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(GlobalExceptionHandler): INTERNAL_SERVER_ERROR 핸들러 메서드 추가 * [#28] feat(BookingSuccessCode): 예매 성공 메시지를 관리하는 열거형 생성 * [#28] feat(BookingErrorCode): 예매 에러 메시지를 관리하는 열거형 생성 * [#28] feat(BookingRetrieveResponse): 예매 조회 응답 DTO 생성 * [#28] feat(BookingRetrieveRequest): 예매 조회 요청 DTO 생성 * [#28] feat(BookingRepository): 예매 레포지토리 생성 및 비회원 예매 조회 시 예매 내역 가져오는 메서드 구현 * [#28] feat(BookingService): 예매 서비스 레이어 생성 및 비회원 조회 메서드 구현 * [#28] feat(BookingController): 예매 컨트롤러 생성 및 비회원 예매조회 POST API 구현 * [feat] #30 - SwaggerConfig 및 WebConfig 구현 (#31) * [#30] chore(build.gradle): springdoc 의존성 추가 * [#30] feat(SwaggerConfig): SwaggerConfig 추가 * [#30] feat(WebConfig): WebConfig 추가 * HOTFIX(workflows): push 이벤트 시 github action이 빌드 되지 않도록 수정 * HOTFIX(Jenkinsfile): 포트 수정 * [feat] #32 - 티켓 예매 가능 여부 GET API 구현 (#33) * [#32] refactor(BookingController): 메서드명 수정 * [#32] feat(ConflictException): Conflict 409에러 클래스 생성 * [#32] feat(GlobalExceptionHandler): ConflictException 등록 * [#32] feat(TicketAvailabilityRequest): TicketAvailabilityRequest DTO 생성 * [#32] feat(TicketAvailabilityResponse): TicketAvailabilityResponse DTO 생성 * [#32] feat(ScheduleSuccessCode): ScheduleSuccessCode 열거형 생성 * [#32] feat(ScheduleErrorCode): ScheduleErrorCode 열거형 생성 * [#32] feat(ScheduleRepository): ScheduleRepository 생성 * [#32] feat(ScheduleService): ScheduleService 생성 및 회차별 티켓 구매 가능 여부 판단 메서드 구현 * [#32] feat(ScheduleController): 회차별 티켓 수량 조회 GET API 구현 * [feat] #17 - 카카오 소셜 로그인 API 구현 (#36) * [#17] feat(build.gradle): jwt, security, open feign, Redis 의존성 추가 * [#17] feat(BeatApplication): OpenFeign 관련 어노테이션 추가 * [#17] feat(RedisConfig): redis 설정 * [#17] feat: redis 활용 jwt 토큰 생성 로직 구현 * [#17] feat(SecurityConfig): security 설정 * [#17] refactor: Member, Users 엔티티 수정 및 관련 enum 추가 * [#17] feat: Member, Users 도메인 관련 인증 로직 구현 * [#17] feat(MemberController): Member 관련 API 엔드포인트 구현 * [#17] feat: Security 관련 인증 객체 구현 * [#17] feat: 소셜로그인 로직 구현 * [#17] fix: 소셜로그인 오류 해결 * [#17] refactor: 코드리뷰 반영 * [#17] refactor: 코드리뷰 반영 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #34 - 비회원 예매 POST API 구현 (#35) * [#34] feat(Users): 빌더 및 정적 팩토리 메서드 추가 * [#34] feat(Entity): 엔티티 id 필드 수정 * [#34] refactor(application.yml): dialect 추가 * [#34] refactor(ScheduleService): 네이밍 수정 * [#34] refactor(BookingSuccessCode): 비회원 예매 조회 성공 메시지 추가 * [#34] feat(GuestBookingRequest): 비회원 예매 요청 DTO 생성 * [#34] feat(GuestBookingResponse): 비회원 예매 응답 DTO 생성 * [#34] refactor(BookingRetrieveService): 네이밍 수정 * [#34] feat(PerformanceRepository): 공연 레포지토리 생성 * [#34] feat(UserRepository): 유저 레포지토리 생성 * [#34] refactor(BookingRepository): 비회원 예매 시 네가지 정보가 모두 일치 해야만 다른 유저로 판단하는 메서드 구현 * [#34] refactor(ScheduleRepository): 비관적 락 적용 * [#34] feat(GuestBookingService): 비관적 락을 이용해 비회원 예매 로직 구현 * [#34] feat(BookingController): 비회원 예매 POST API 구현 * [#34] test(GuestBookingServiceConcurrencyTest): 동시성 테스트 구현 * [Refactor] #37 - 카카오 로그인 API response 수정 (#39) * [#37] rename: 빈 충돌 해결 위해 UserRepository를 UsersRepository로 rename * [#37] refactor: login response에서 refreshToken을 cookie에 담아주도록 변경 * [#37] fix: dao, repository 충돌 해결 * [#37] refactor: 어노테이션 수정 * [feat] #40 - 소개 관련 공연 정보 조회 GET API 구현 (#41) * [#40] feat: repository 추가 * [#40] feat: 공연 관련 성공, 실패 메세지 추가 * [#40] feat(PerformanceDetailResponse): 공연 상세페이지 조회 응답 dto * [#40] feat(PerformanceService): 공연 상세페이지 조회 로직 구현 * [#40] feat(PerformanceController): 공연 상세페이지 엔드포인트 구현 * [#40] feat(SecurityConfig): auth whitelist update * [#40] refactor: dto 분리 및 rename * [feat] #42 - 예매 관련 공연 정보 GET API 구현 (#43) * [#42] feat: 예매 관련 정보 조회 dto 생성 * [#42] feat: 예매 관련 정보 조회 성공 메세지 추가 * [#42] feat(ScheduleService): 잔여티켓계산, 예매가능여부확인, 예매가능여부 update 메소드 구현 * [#42] feat(PerformanceService): 예매관련공연정보의 response 생성하는 로직 구현 * [#42] feat(PerformanceController): 예매관련공연정보 조회 엔드포인트 구현 * [#42] feat(SecurityConfig): auth_whitelist update * [#42] refactor(ScheduleService): findTicketAvailability에서 getAvailableTicketCount method 사용하도록 수정 * [feat] #38 - 회원 예매 POST API 구현 (#45) * [#38] fix(Cast): Join 하는 부분 수정 및 빌더와 정적 팩토리 메서드 패턴 도입 * [#38] chore(application.yml): 계층 수정 * [#38] feat: 커스텀 어노테이션 생성 * [#38] fix(UserRepository): 중복된 클래스 삭제 * [#38] feat(UserErrorCode): 유저의 에러 메시지를 관리하는 열거형 생성 * [#38] refactor(MemberErrorCode): message 목적에 맞게 변경 * [#38] refactor(BookingSuccessCode): 회원 예매 성공 메시지 추가 * [#38] feat: 커스텀 어노테이션 생성 커밋에 누락된 클래스 추가 * [#38] refactor(GuestBookingService): schedule에서 바로 get 하도록 수정 * [#38] test(GuestBookingServiceConcurrencyTest): import문 경로명 변경 * [#38] refactor(MemberService): @Transactional 어노테이션이 필요한 메서드에 해당 옵션 추가 * [#38] feat(MemberBookingRequest): 회원 예매 요청 DTO 생성 * [#38] feat(MemberBookingResponse): 회원 예매 응답 DTO 생성 * [#38] refactor(MemberController): refreshToken을 쿠키에 넣어주도록 구현 * [#38] feat(MemberBookingService): 회원 예매 서비스 로직 구현 * [#38] feat(BookingController): 회원 예매 요청 POST API 구현 * [#38] fix: 빌드 안되는 부분 수정 * [#38] remove(MemberBookingService): 사용하지 않는 import문 삭제 * [#38] refactor: 커스텀 어노테이션 이름 수정 * [feat] #44 - 홈페이지 공연 및 홍보 조회 GET API 구현 (#47) * [#44] refactor: 코드리뷰 반영 * [#44] fix(Promotion): 기본키 이름 수정, performanceId 연관관계 설정 * [#44] feat: Repository 및 관련 로직 추가 * [#44] feat: errorcode, successcode 추가 * [#44] feat: 홈페이지 request, response dto 생성 * [#44] feat(ScheduleService): dueDate 관련 로직 구현 * [#44] feat(PerformanceService): 홈페이지 정렬 및 response 생성 로직 구현 * [#44] chore: import문 추가 * [feat] #46 - 회원 예매 조회 GET API 구현 (#48) * [#46] remove(BookingRetrieveRequest): 클래스 삭제 * [#46] refactor(BookingSuccessCode): 회원 예매 조회 성공 메시지 추가 * [#46] refactor(GuestBookingRetrieveResponse): 클래스 명 변경 * [#46] refactor(GuestBookingRetrieveRequest): 안쓰는 코드 주석처리 * [#46] refactor(GuestBookingRetrieveService): 클래스 명 수정으로 인한 리팩토링 * [#46] refactor(SecurityConfig): 토큰 사용하지 않는 api 경로 추가하기 * [#46] refactor(BookingRepository): userId로 예약 정보를 가져오는 JPA 메서드 구현 * [#46] feat(MemberBookingRetrieveResponse): 회원 조회 응답 DTO 생성 * [#46] feat(MemberBookingRetrieveService): 회원 예매 조회 로직을 담당하는 서비스 레이어 구현 * [#46] feat(BookingController): 회원 예매 조회 GET API 구현 * [feat] #49 - 예매자 관리 API 구현 (#51) * [#49] feat: 티켓 관련 success, error code 추가 * [#49] feat(Booking): 입금여부 setter 메소드 추가 * [#49] feat(TicketRetrieveResponse): 예매자 확인 response dto 생성 * [#49] feat(Ticket): 예매자 확인용 티켓 정보 response dto 생성 * [#49] feat(TicketRepository): 예매자 필터링용 메소드 생성 * [#49] feat: 예매자 입금정보 수정 request dto 생성 * [#49] feat(TicketDeleteRequest): 예매자 삭제 request dto 생성 * [#49] feat(TicketService): 예매자 관리 관련 로직 구현 * [#49] feat(TicketController): 예매자 관리 엔드포인트 구현 * [#49] chore: swagger annotation 추가 * HOTFIX(SecurityConfig): WHITELIST 경로명 수정 * [fix] #52 - auth whitelist 수정 (#53) * [#52]fix(SecurityConfig): auth_whitelist 수정 * [#52]fix(SecurityConfig): auth_whitelist 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #54 - 등록한 공연 목록 조회 GET API 구현 (#55) * [#54] feat(PerformanceSuccessCode): success code 추가 * [#54] feat: 회원이 등록한 공연목록 조회 dto 생성 * [#54] feat(PerformanceService): 회원이 등록한 공연목록 조회 로직 구현 * [#54] feat(PerformanceRepository): 회원이 등록한 공연목록 조회 관련 메소드 추가 * [#54] feat(PerformanceController): 회원이 등록한 공연목록 조회 엔드포인트 생성 * [#54] fix(TicketService): exception error 수정 * [#54] chore(application.yml): yml 수정 * [fix] #58 - dev-ci.yml, prod-ci.yml 환경변수 추가 (#59) * [#58] fix(dev-CI.yml): Dev 서버 CI 워크플로우 수정 * [#58] fix(prod-CI.yml): Prod 서버 CI 워크플로우 수정 * [refactor] #61 - Performance Entity field 추가 (#62) * [#61] refactor(Performance): bankHolder 필드 추가 * [#61] chore(BookingController): swagger annotation 수정 * [feat] #63 - healthCheckController 생성 (#64) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [feat] #63 - health check URL 화이트리스트에 등록 (#67) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [#63] feat(SecurityConfig): healthcheck url white_list에 등록 * [fix] #57 - entity 연관관계 설정 SecurityConfig 수정 (#65) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 --------- Co-authored-by: DongHoon Lee <[email protected]> * [fix] #57 - security 관련 에러 대응 (#71) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [fix] #73 - security 수정 (#74) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [#57] fix:security 수정 * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 (#77) * [fix] #76 - 누락된 코드 추가 (#79) * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 * [#76] chore(SecurityConfig): 누락된 import문 추가 * [#76] chore(JwtTokenProvider): 누락된 코드 추가 * [#81] fix(JwtTokenProvider): jwtsecret을 인코딩하고 디코딩을 하도록 수정 (#82) --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * [deploy] merge to main (#87) * [deploy] merge to develop (#27) * [deploy] merge to main (#26) * [#2] chore(.gitignore): .gradle, .idea 파일 삭제 (#3) * [refactor] #4 - 도메인형 디렉터리 구조 변경 및 local, dev, prod 운영 환경 분리 (#5) * [#4] fix: 클래스 첫글자 대문자로 수정 * [#4] remove: enum 삭제 * [#4] feat(BaseSuccessCode): 성공 상태 관리를 위한 인터페이스 생성 * [#4] feat(BaseErrorCode): 에러 상태 관리를 위한 인터페이스 생성 * [#4] refactor: global 패키지로 이동 * [#4] refactor: 서버 운영 환경 분리 * [feat] #6 - dev, prod Dockerfile 분리 및 github Action CI workflow 구현 (#7) * [#6] feat(Dockerfile): prod용 도커 파일 구현 * [#6] feat(Dockerfile-dev): dev용 도커 파일 구현 * [#6] feat(dev-CI.yml): dev용 CI workflow 구현 * [#6] feat(prod-CI.yml): prod용 CI workflow 구현 * [#6] chore(.gitignore): gradle-wrapper.jar 파일은 레포지토리에 포함되도록 설정 * [#6] fix(gradle-wrapper.jar): .gitignore로 누락된 파일 추가 * [#6] chore(build.grade): plain jar 생성 방지 * [#9] docs(README.md): 서비스 소개 README v1 작성 (#10) * [#11] docs(README.md): 리드미 업데이트 (#12) * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [feat] #14 - 회원, 홍보, 등장인물, 스태프 엔티티 생성 (#16) * [#14] feat(Member): 멤버 엔티티 생성 * [#14] feat(Promotion): 홍보 엔티티 생성 * [#14] feat(Cast): 등장인물 엔티티 생성 * [#14] feat(Staff): 스태프 엔티티 생성 * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [#14} fix: 스태프, 등장인물, 홍보 엔티티 상속관계 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [#18] feat(Jenkinsfile): 젠킨스 파일 생성 (#19) * [#20] refactor(Jenkinsfile): 젠킨스 파일 Webhook 테스트용 커밋 (#21) * [#22] feat(Jenkinsfile): Jenkins multibranch 스크립트 작성 (#23) * HOTFIX(Jenkinsfile): Jenkins multibranch 스크립트 수정 * HOTFIX(workflows): 빌드 후 젠킨스 배포가 진행되도록 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * [#24] feat(Jenkinsfile): slack 연동 스크립트 작성 (#25) --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * HOTFIX(workflow): 오타 수정 --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * [feat] #28 - 비회원 예매 조회 POST API 구현 (#29) * chore(application-dev.yml): dialect 추가 * chore(application-prod.yml): dialect 추가 * [#28] chore(build.gradle): security 의존성 비활성화 - security 일시적으로 비활성화 * [#28] refactor(Booking): 예매 엔티티에 빌더 및 정적팩토리 메서드 추가 * [#28] refactor(ErrorResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(Schedule): 회차 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(Performance): 공연 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(SuccessResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(GlobalExceptionHandler): INTERNAL_SERVER_ERROR 핸들러 메서드 추가 * [#28] feat(BookingSuccessCode): 예매 성공 메시지를 관리하는 열거형 생성 * [#28] feat(BookingErrorCode): 예매 에러 메시지를 관리하는 열거형 생성 * [#28] feat(BookingRetrieveResponse): 예매 조회 응답 DTO 생성 * [#28] feat(BookingRetrieveRequest): 예매 조회 요청 DTO 생성 * [#28] feat(BookingRepository): 예매 레포지토리 생성 및 비회원 예매 조회 시 예매 내역 가져오는 메서드 구현 * [#28] feat(BookingService): 예매 서비스 레이어 생성 및 비회원 조회 메서드 구현 * [#28] feat(BookingController): 예매 컨트롤러 생성 및 비회원 예매조회 POST API 구현 * [feat] #30 - SwaggerConfig 및 WebConfig 구현 (#31) * [#30] chore(build.gradle): springdoc 의존성 추가 * [#30] feat(SwaggerConfig): SwaggerConfig 추가 * [#30] feat(WebConfig): WebConfig 추가 * HOTFIX(workflows): push 이벤트 시 github action이 빌드 되지 않도록 수정 * HOTFIX(Jenkinsfile): 포트 수정 * [feat] #32 - 티켓 예매 가능 여부 GET API 구현 (#33) * [#32] refactor(BookingController): 메서드명 수정 * [#32] feat(ConflictException): Conflict 409에러 클래스 생성 * [#32] feat(GlobalExceptionHandler): ConflictException 등록 * [#32] feat(TicketAvailabilityRequest): TicketAvailabilityRequest DTO 생성 * [#32] feat(TicketAvailabilityResponse): TicketAvailabilityResponse DTO 생성 * [#32] feat(ScheduleSuccessCode): ScheduleSuccessCode 열거형 생성 * [#32] feat(ScheduleErrorCode): ScheduleErrorCode 열거형 생성 * [#32] feat(ScheduleRepository): ScheduleRepository 생성 * [#32] feat(ScheduleService): ScheduleService 생성 및 회차별 티켓 구매 가능 여부 판단 메서드 구현 * [#32] feat(ScheduleController): 회차별 티켓 수량 조회 GET API 구현 * [feat] #17 - 카카오 소셜 로그인 API 구현 (#36) * [#17] feat(build.gradle): jwt, security, open feign, Redis 의존성 추가 * [#17] feat(BeatApplication): OpenFeign 관련 어노테이션 추가 * [#17] feat(RedisConfig): redis 설정 * [#17] feat: redis 활용 jwt 토큰 생성 로직 구현 * [#17] feat(SecurityConfig): security 설정 * [#17] refactor: Member, Users 엔티티 수정 및 관련 enum 추가 * [#17] feat: Member, Users 도메인 관련 인증 로직 구현 * [#17] feat(MemberController): Member 관련 API 엔드포인트 구현 * [#17] feat: Security 관련 인증 객체 구현 * [#17] feat: 소셜로그인 로직 구현 * [#17] fix: 소셜로그인 오류 해결 * [#17] refactor: 코드리뷰 반영 * [#17] refactor: 코드리뷰 반영 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #34 - 비회원 예매 POST API 구현 (#35) * [#34] feat(Users): 빌더 및 정적 팩토리 메서드 추가 * [#34] feat(Entity): 엔티티 id 필드 수정 * [#34] refactor(application.yml): dialect 추가 * [#34] refactor(ScheduleService): 네이밍 수정 * [#34] refactor(BookingSuccessCode): 비회원 예매 조회 성공 메시지 추가 * [#34] feat(GuestBookingRequest): 비회원 예매 요청 DTO 생성 * [#34] feat(GuestBookingResponse): 비회원 예매 응답 DTO 생성 * [#34] refactor(BookingRetrieveService): 네이밍 수정 * [#34] feat(PerformanceRepository): 공연 레포지토리 생성 * [#34] feat(UserRepository): 유저 레포지토리 생성 * [#34] refactor(BookingRepository): 비회원 예매 시 네가지 정보가 모두 일치 해야만 다른 유저로 판단하는 메서드 구현 * [#34] refactor(ScheduleRepository): 비관적 락 적용 * [#34] feat(GuestBookingService): 비관적 락을 이용해 비회원 예매 로직 구현 * [#34] feat(BookingController): 비회원 예매 POST API 구현 * [#34] test(GuestBookingServiceConcurrencyTest): 동시성 테스트 구현 * [Refactor] #37 - 카카오 로그인 API response 수정 (#39) * [#37] rename: 빈 충돌 해결 위해 UserRepository를 UsersRepository로 rename * [#37] refactor: login response에서 refreshToken을 cookie에 담아주도록 변경 * [#37] fix: dao, repository 충돌 해결 * [#37] refactor: 어노테이션 수정 * [feat] #40 - 소개 관련 공연 정보 조회 GET API 구현 (#41) * [#40] feat: repository 추가 * [#40] feat: 공연 관련 성공, 실패 메세지 추가 * [#40] feat(PerformanceDetailResponse): 공연 상세페이지 조회 응답 dto * [#40] feat(PerformanceService): 공연 상세페이지 조회 로직 구현 * [#40] feat(PerformanceController): 공연 상세페이지 엔드포인트 구현 * [#40] feat(SecurityConfig): auth whitelist update * [#40] refactor: dto 분리 및 rename * [feat] #42 - 예매 관련 공연 정보 GET API 구현 (#43) * [#42] feat: 예매 관련 정보 조회 dto 생성 * [#42] feat: 예매 관련 정보 조회 성공 메세지 추가 * [#42] feat(ScheduleService): 잔여티켓계산, 예매가능여부확인, 예매가능여부 update 메소드 구현 * [#42] feat(PerformanceService): 예매관련공연정보의 response 생성하는 로직 구현 * [#42] feat(PerformanceController): 예매관련공연정보 조회 엔드포인트 구현 * [#42] feat(SecurityConfig): auth_whitelist update * [#42] refactor(ScheduleService): findTicketAvailability에서 getAvailableTicketCount method 사용하도록 수정 * [feat] #38 - 회원 예매 POST API 구현 (#45) * [#38] fix(Cast): Join 하는 부분 수정 및 빌더와 정적 팩토리 메서드 패턴 도입 * [#38] chore(application.yml): 계층 수정 * [#38] feat: 커스텀 어노테이션 생성 * [#38] fix(UserRepository): 중복된 클래스 삭제 * [#38] feat(UserErrorCode): 유저의 에러 메시지를 관리하는 열거형 생성 * [#38] refactor(MemberErrorCode): message 목적에 맞게 변경 * [#38] refactor(BookingSuccessCode): 회원 예매 성공 메시지 추가 * [#38] feat: 커스텀 어노테이션 생성 커밋에 누락된 클래스 추가 * [#38] refactor(GuestBookingService): schedule에서 바로 get 하도록 수정 * [#38] test(GuestBookingServiceConcurrencyTest): import문 경로명 변경 * [#38] refactor(MemberService): @Transactional 어노테이션이 필요한 메서드에 해당 옵션 추가 * [#38] feat(MemberBookingRequest): 회원 예매 요청 DTO 생성 * [#38] feat(MemberBookingResponse): 회원 예매 응답 DTO 생성 * [#38] refactor(MemberController): refreshToken을 쿠키에 넣어주도록 구현 * [#38] feat(MemberBookingService): 회원 예매 서비스 로직 구현 * [#38] feat(BookingController): 회원 예매 요청 POST API 구현 * [#38] fix: 빌드 안되는 부분 수정 * [#38] remove(MemberBookingService): 사용하지 않는 import문 삭제 * [#38] refactor: 커스텀 어노테이션 이름 수정 * [feat] #44 - 홈페이지 공연 및 홍보 조회 GET API 구현 (#47) * [#44] refactor: 코드리뷰 반영 * [#44] fix(Promotion): 기본키 이름 수정, performanceId 연관관계 설정 * [#44] feat: Repository 및 관련 로직 추가 * [#44] feat: errorcode, successcode 추가 * [#44] feat: 홈페이지 request, response dto 생성 * [#44] feat(ScheduleService): dueDate 관련 로직 구현 * [#44] feat(PerformanceService): 홈페이지 정렬 및 response 생성 로직 구현 * [#44] chore: import문 추가 * [feat] #46 - 회원 예매 조회 GET API 구현 (#48) * [#46] remove(BookingRetrieveRequest): 클래스 삭제 * [#46] refactor(BookingSuccessCode): 회원 예매 조회 성공 메시지 추가 * [#46] refactor(GuestBookingRetrieveResponse): 클래스 명 변경 * [#46] refactor(GuestBookingRetrieveRequest): 안쓰는 코드 주석처리 * [#46] refactor(GuestBookingRetrieveService): 클래스 명 수정으로 인한 리팩토링 * [#46] refactor(SecurityConfig): 토큰 사용하지 않는 api 경로 추가하기 * [#46] refactor(BookingRepository): userId로 예약 정보를 가져오는 JPA 메서드 구현 * [#46] feat(MemberBookingRetrieveResponse): 회원 조회 응답 DTO 생성 * [#46] feat(MemberBookingRetrieveService): 회원 예매 조회 로직을 담당하는 서비스 레이어 구현 * [#46] feat(BookingController): 회원 예매 조회 GET API 구현 * [feat] #49 - 예매자 관리 API 구현 (#51) * [#49] feat: 티켓 관련 success, error code 추가 * [#49] feat(Booking): 입금여부 setter 메소드 추가 * [#49] feat(TicketRetrieveResponse): 예매자 확인 response dto 생성 * [#49] feat(Ticket): 예매자 확인용 티켓 정보 response dto 생성 * [#49] feat(TicketRepository): 예매자 필터링용 메소드 생성 * [#49] feat: 예매자 입금정보 수정 request dto 생성 * [#49] feat(TicketDeleteRequest): 예매자 삭제 request dto 생성 * [#49] feat(TicketService): 예매자 관리 관련 로직 구현 * [#49] feat(TicketController): 예매자 관리 엔드포인트 구현 * [#49] chore: swagger annotation 추가 * HOTFIX(SecurityConfig): WHITELIST 경로명 수정 * [fix] #52 - auth whitelist 수정 (#53) * [#52]fix(SecurityConfig): auth_whitelist 수정 * [#52]fix(SecurityConfig): auth_whitelist 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #54 - 등록한 공연 목록 조회 GET API 구현 (#55) * [#54] feat(PerformanceSuccessCode): success code 추가 * [#54] feat: 회원이 등록한 공연목록 조회 dto 생성 * [#54] feat(PerformanceService): 회원이 등록한 공연목록 조회 로직 구현 * [#54] feat(PerformanceRepository): 회원이 등록한 공연목록 조회 관련 메소드 추가 * [#54] feat(PerformanceController): 회원이 등록한 공연목록 조회 엔드포인트 생성 * [#54] fix(TicketService): exception error 수정 * [#54] chore(application.yml): yml 수정 * [fix] #58 - dev-ci.yml, prod-ci.yml 환경변수 추가 (#59) * [#58] fix(dev-CI.yml): Dev 서버 CI 워크플로우 수정 * [#58] fix(prod-CI.yml): Prod 서버 CI 워크플로우 수정 * [refactor] #61 - Performance Entity field 추가 (#62) * [#61] refactor(Performance): bankHolder 필드 추가 * [#61] chore(BookingController): swagger annotation 수정 * [feat] #63 - healthCheckController 생성 (#64) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [feat] #63 - health check URL 화이트리스트에 등록 (#67) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [#63] feat(SecurityConfig): healthcheck url white_list에 등록 * [fix] #57 - entity 연관관계 설정 SecurityConfig 수정 (#65) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 --------- Co-authored-by: DongHoon Lee <[email protected]> * [fix] #57 - security 관련 에러 대응 (#71) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [fix] #73 - security 수정 (#74) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [#57] fix:security 수정 * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 (#77) * [fix] #76 - 누락된 코드 추가 (#79) * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 * [#76] chore(SecurityConfig): 누락된 import문 추가 * [#76] chore(JwtTokenProvider): 누락된 코드 추가 * [#81] fix(JwtTokenProvider): jwtsecret을 인코딩하고 디코딩을 하도록 수정 (#82) * [#85] chore(application.yml): 환경변수 설정 (#86) --------- Co-authored-by: hyerinhwang-sailin <[email protected]> --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * Revert "[deploy] merge to main (#90)" (#91) This reverts commit f519b0c82a2f01d4374eb045b9e90c6303381e50. * [fix] #93 - 누락된 어노테이션 및 누락된 경로명 추가 (#94) * [#93] fix(HealthCheckController): 누락된 어노테이션 추가 * [#93] refactor(SecurityConfig): 누락된 경로명 추가 * [bug] #84 - actuator/health 의존성 및 설정 추가 (#96) * [#84] chore(build.gradle): 의존성 추가 * [#84] chore: health/actuator yml 설정 추가 * [#84] chore: redis yml 설정 추가 * [#84] chore: yml 수정 (#99) * [bug] #101 - yml, s3 수정 (#102) * [#101] chore: yml 수정 * [#101] feat: s3 추가 * HOTIFX: prod ci-yml 수정 * Main redis host yml 수정 (#105) * [deploy] merge to main (#104) * [deploy] merge to develop (#27) * [deploy] merge to main (#26) * [#2] chore(.gitignore): .gradle, .idea 파일 삭제 (#3) * [refactor] #4 - 도메인형 디렉터리 구조 변경 및 local, dev, prod 운영 환경 분리 (#5) * [#4] fix: 클래스 첫글자 대문자로 수정 * [#4] remove: enum 삭제 * [#4] feat(BaseSuccessCode): 성공 상태 관리를 위한 인터페이스 생성 * [#4] feat(BaseErrorCode): 에러 상태 관리를 위한 인터페이스 생성 * [#4] refactor: global 패키지로 이동 * [#4] refactor: 서버 운영 환경 분리 * [feat] #6 - dev, prod Dockerfile 분리 및 github Action CI workflow 구현 (#7) * [#6] feat(Dockerfile): prod용 도커 파일 구현 * [#6] feat(Dockerfile-dev): dev용 도커 파일 구현 * [#6] feat(dev-CI.yml): dev용 CI workflow 구현 * [#6] feat(prod-CI.yml): prod용 CI workflow 구현 * [#6] chore(.gitignore): gradle-wrapper.jar 파일은 레포지토리에 포함되도록 설정 * [#6] fix(gradle-wrapper.jar): .gitignore로 누락된 파일 추가 * [#6] chore(build.grade): plain jar 생성 방지 * [#9] docs(README.md): 서비스 소개 README v1 작성 (#10) * [#11] docs(README.md): 리드미 업데이트 (#12) * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [feat] #14 - 회원, 홍보, 등장인물, 스태프 엔티티 생성 (#16) * [#14] feat(Member): 멤버 엔티티 생성 * [#14] feat(Promotion): 홍보 엔티티 생성 * [#14] feat(Cast): 등장인물 엔티티 생성 * [#14] feat(Staff): 스태프 엔티티 생성 * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [#14} fix: 스태프, 등장인물, 홍보 엔티티 상속관계 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [#18] feat(Jenkinsfile): 젠킨스 파일 생성 (#19) * [#20] refactor(Jenkinsfile): 젠킨스 파일 Webhook 테스트용 커밋 (#21) * [#22] feat(Jenkinsfile): Jenkins multibranch 스크립트 작성 (#23) * HOTFIX(Jenkinsfile): Jenkins multibranch 스크립트 수정 * HOTFIX(workflows): 빌드 후 젠킨스 배포가 진행되도록 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * [#24] feat(Jenkinsfile): slack 연동 스크립트 작성 (#25) --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * HOTFIX(workflow): 오타 수정 --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * [feat] #28 - 비회원 예매 조회 POST API 구현 (#29) * chore(application-dev.yml): dialect 추가 * chore(application-prod.yml): dialect 추가 * [#28] chore(build.gradle): security 의존성 비활성화 - security 일시적으로 비활성화 * [#28] refactor(Booking): 예매 엔티티에 빌더 및 정적팩토리 메서드 추가 * [#28] refactor(ErrorResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(Schedule): 회차 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(Performance): 공연 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(SuccessResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(GlobalExceptionHandler): INTERNAL_SERVER_ERROR 핸들러 메서드 추가 * [#28] feat(BookingSuccessCode): 예매 성공 메시지를 관리하는 열거형 생성 * [#28] feat(BookingErrorCode): 예매 에러 메시지를 관리하는 열거형 생성 * [#28] feat(BookingRetrieveResponse): 예매 조회 응답 DTO 생성 * [#28] feat(BookingRetrieveRequest): 예매 조회 요청 DTO 생성 * [#28] feat(BookingRepository): 예매 레포지토리 생성 및 비회원 예매 조회 시 예매 내역 가져오는 메서드 구현 * [#28] feat(BookingService): 예매 서비스 레이어 생성 및 비회원 조회 메서드 구현 * [#28] feat(BookingController): 예매 컨트롤러 생성 및 비회원 예매조회 POST API 구현 * [feat] #30 - SwaggerConfig 및 WebConfig 구현 (#31) * [#30] chore(build.gradle): springdoc 의존성 추가 * [#30] feat(SwaggerConfig): SwaggerConfig 추가 * [#30] feat(WebConfig): WebConfig 추가 * HOTFIX(workflows): push 이벤트 시 github action이 빌드 되지 않도록 수정 * HOTFIX(Jenkinsfile): 포트 수정 * [feat] #32 - 티켓 예매 가능 여부 GET API 구현 (#33) * [#32] refactor(BookingController): 메서드명 수정 * [#32] feat(ConflictException): Conflict 409에러 클래스 생성 * [#32] feat(GlobalExceptionHandler): ConflictException 등록 * [#32] feat(TicketAvailabilityRequest): TicketAvailabilityRequest DTO 생성 * [#32] feat(TicketAvailabilityResponse): TicketAvailabilityResponse DTO 생성 * [#32] feat(ScheduleSuccessCode): ScheduleSuccessCode 열거형 생성 * [#32] feat(ScheduleErrorCode): ScheduleErrorCode 열거형 생성 * [#32] feat(ScheduleRepository): ScheduleRepository 생성 * [#32] feat(ScheduleService): ScheduleService 생성 및 회차별 티켓 구매 가능 여부 판단 메서드 구현 * [#32] feat(ScheduleController): 회차별 티켓 수량 조회 GET API 구현 * [feat] #17 - 카카오 소셜 로그인 API 구현 (#36) * [#17] feat(build.gradle): jwt, security, open feign, Redis 의존성 추가 * [#17] feat(BeatApplication): OpenFeign 관련 어노테이션 추가 * [#17] feat(RedisConfig): redis 설정 * [#17] feat: redis 활용 jwt 토큰 생성 로직 구현 * [#17] feat(SecurityConfig): security 설정 * [#17] refactor: Member, Users 엔티티 수정 및 관련 enum 추가 * [#17] feat: Member, Users 도메인 관련 인증 로직 구현 * [#17] feat(MemberController): Member 관련 API 엔드포인트 구현 * [#17] feat: Security 관련 인증 객체 구현 * [#17] feat: 소셜로그인 로직 구현 * [#17] fix: 소셜로그인 오류 해결 * [#17] refactor: 코드리뷰 반영 * [#17] refactor: 코드리뷰 반영 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #34 - 비회원 예매 POST API 구현 (#35) * [#34] feat(Users): 빌더 및 정적 팩토리 메서드 추가 * [#34] feat(Entity): 엔티티 id 필드 수정 * [#34] refactor(application.yml): dialect 추가 * [#34] refactor(ScheduleService): 네이밍 수정 * [#34] refactor(BookingSuccessCode): 비회원 예매 조회 성공 메시지 추가 * [#34] feat(GuestBookingRequest): 비회원 예매 요청 DTO 생성 * [#34] feat(GuestBookingResponse): 비회원 예매 응답 DTO 생성 * [#34] refactor(BookingRetrieveService): 네이밍 수정 * [#34] feat(PerformanceRepository): 공연 레포지토리 생성 * [#34] feat(UserRepository): 유저 레포지토리 생성 * [#34] refactor(BookingRepository): 비회원 예매 시 네가지 정보가 모두 일치 해야만 다른 유저로 판단하는 메서드 구현 * [#34] refactor(ScheduleRepository): 비관적 락 적용 * [#34] feat(GuestBookingService): 비관적 락을 이용해 비회원 예매 로직 구현 * [#34] feat(BookingController): 비회원 예매 POST API 구현 * [#34] test(GuestBookingServiceConcurrencyTest): 동시성 테스트 구현 * [Refactor] #37 - 카카오 로그인 API response 수정 (#39) * [#37] rename: 빈 충돌 해결 위해 UserRepository를 UsersRepository로 rename * [#37] refactor: login response에서 refreshToken을 cookie에 담아주도록 변경 * [#37] fix: dao, repository 충돌 해결 * [#37] refactor: 어노테이션 수정 * [feat] #40 - 소개 관련 공연 정보 조회 GET API 구현 (#41) * [#40] feat: repository 추가 * [#40] feat: 공연 관련 성공, 실패 메세지 추가 * [#40] feat(PerformanceDetailResponse): 공연 상세페이지 조회 응답 dto * [#40] feat(PerformanceService): 공연 상세페이지 조회 로직 구현 * [#40] feat(PerformanceController): 공연 상세페이지 엔드포인트 구현 * [#40] feat(SecurityConfig): auth whitelist update * [#40] refactor: dto 분리 및 rename * [feat] #42 - 예매 관련 공연 정보 GET API 구현 (#43) * [#42] feat: 예매 관련 정보 조회 dto 생성 * [#42] feat: 예매 관련 정보 조회 성공 메세지 추가 * [#42] feat(ScheduleService): 잔여티켓계산, 예매가능여부확인, 예매가능여부 update 메소드 구현 * [#42] feat(PerformanceService): 예매관련공연정보의 response 생성하는 로직 구현 * [#42] feat(PerformanceController): 예매관련공연정보 조회 엔드포인트 구현 * [#42] feat(SecurityConfig): auth_whitelist update * [#42] refactor(ScheduleService): findTicketAvailability에서 getAvailableTicketCount method 사용하도록 수정 * [feat] #38 - 회원 예매 POST API 구현 (#45) * [#38] fix(Cast): Join 하는 부분 수정 및 빌더와 정적 팩토리 메서드 패턴 도입 * [#38] chore(application.yml): 계층 수정 * [#38] feat: 커스텀 어노테이션 생성 * [#38] fix(UserRepository): 중복된 클래스 삭제 * [#38] feat(UserErrorCode): 유저의 에러 메시지를 관리하는 열거형 생성 * [#38] refactor(MemberErrorCode): message 목적에 맞게 변경 * [#38] refactor(BookingSuccessCode): 회원 예매 성공 메시지 추가 * [#38] feat: 커스텀 어노테이션 생성 커밋에 누락된 클래스 추가 * [#38] refactor(GuestBookingService): schedule에서 바로 get 하도록 수정 * [#38] test(GuestBookingServiceConcurrencyTest): import문 경로명 변경 * [#38] refactor(MemberService): @Transactional 어노테이션이 필요한 메서드에 해당 옵션 추가 * [#38] feat(MemberBookingRequest): 회원 예매 요청 DTO 생성 * [#38] feat(MemberBookingResponse): 회원 예매 응답 DTO 생성 * [#38] refactor(MemberController): refreshToken을 쿠키에 넣어주도록 구현 * [#38] feat(MemberBookingService): 회원 예매 서비스 로직 구현 * [#38] feat(BookingController): 회원 예매 요청 POST API 구현 * [#38] fix: 빌드 안되는 부분 수정 * [#38] remove(MemberBookingService): 사용하지 않는 import문 삭제 * [#38] refactor: 커스텀 어노테이션 이름 수정 * [feat] #44 - 홈페이지 공연 및 홍보 조회 GET API 구현 (#47) * [#44] refactor: 코드리뷰 반영 * [#44] fix(Promotion): 기본키 이름 수정, performanceId 연관관계 설정 * [#44] feat: Repository 및 관련 로직 추가 * [#44] feat: errorcode, successcode 추가 * [#44] feat: 홈페이지 request, response dto 생성 * [#44] feat(ScheduleService): dueDate 관련 로직 구현 * [#44] feat(PerformanceService): 홈페이지 정렬 및 response 생성 로직 구현 * [#44] chore: import문 추가 * [feat] #46 - 회원 예매 조회 GET API 구현 (#48) * [#46] remove(BookingRetrieveRequest): 클래스 삭제 * [#46] refactor(BookingSuccessCode): 회원 예매 조회 성공 메시지 추가 * [#46] refactor(GuestBookingRetrieveResponse): 클래스 명 변경 * [#46] refactor(GuestBookingRetrieveRequest): 안쓰는 코드 주석처리 * [#46] refactor(GuestBookingRetrieveService): 클래스 명 수정으로 인한 리팩토링 * [#46] refactor(SecurityConfig): 토큰 사용하지 않는 api 경로 추가하기 * [#46] refactor(BookingRepository): userId로 예약 정보를 가져오는 JPA 메서드 구현 * [#46] feat(MemberBookingRetrieveResponse): 회원 조회 응답 DTO 생성 * [#46] feat(MemberBookingRetrieveService): 회원 예매 조회 로직을 담당하는 서비스 레이어 구현 * [#46] feat(BookingController): 회원 예매 조회 GET API 구현 * [feat] #49 - 예매자 관리 API 구현 (#51) * [#49] feat: 티켓 관련 success, error code 추가 * [#49] feat(Booking): 입금여부 setter 메소드 추가 * [#49] feat(TicketRetrieveResponse): 예매자 확인 response dto 생성 * [#49] feat(Ticket): 예매자 확인용 티켓 정보 response dto 생성 * [#49] feat(TicketRepository): 예매자 필터링용 메소드 생성 * [#49] feat: 예매자 입금정보 수정 request dto 생성 * [#49] feat(TicketDeleteRequest): 예매자 삭제 request dto 생성 * [#49] feat(TicketService): 예매자 관리 관련 로직 구현 * [#49] feat(TicketController): 예매자 관리 엔드포인트 구현 * [#49] chore: swagger annotation 추가 * HOTFIX(SecurityConfig): WHITELIST 경로명 수정 * [fix] #52 - auth whitelist 수정 (#53) * [#52]fix(SecurityConfig): auth_whitelist 수정 * [#52]fix(SecurityConfig): auth_whitelist 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #54 - 등록한 공연 목록 조회 GET API 구현 (#55) * [#54] feat(PerformanceSuccessCode): success code 추가 * [#54] feat: 회원이 등록한 공연목록 조회 dto 생성 * [#54] feat(PerformanceService): 회원이 등록한 공연목록 조회 로직 구현 * [#54] feat(PerformanceRepository): 회원이 등록한 공연목록 조회 관련 메소드 추가 * [#54] feat(PerformanceController): 회원이 등록한 공연목록 조회 엔드포인트 생성 * [#54] fix(TicketService): exception error 수정 * [#54] chore(application.yml): yml 수정 * [fix] #58 - dev-ci.yml, prod-ci.yml 환경변수 추가 (#59) * [#58] fix(dev-CI.yml): Dev 서버 CI 워크플로우 수정 * [#58] fix(prod-CI.yml): Prod 서버 CI 워크플로우 수정 * [refactor] #61 - Performance Entity field 추가 (#62) * [#61] refactor(Performance): bankHolder 필드 추가 * [#61] chore(BookingController): swagger annotation 수정 * [feat] #63 - healthCheckController 생성 (#64) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [feat] #63 - health check URL 화이트리스트에 등록 (#67) * [#63] remove(UsersRepository): 중복 클래스 삭제 * [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성 * [#63] feat(SecurityConfig): healthcheck url white_list에 등록 * [fix] #57 - entity 연관관계 설정 SecurityConfig 수정 (#65) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 --------- Co-authored-by: DongHoon Lee <[email protected]> * [fix] #57 - security 관련 에러 대응 (#71) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [fix] #73 - security 수정 (#74) * [#57] refactor: entity 연관관계 설정 및 수정 * [#57] fix(SecurityConfig): auth_whitelist update * [#57] chore(UsersRepository): 중복된 파일 및 불필요한 패키지 제거 * [#57] refactor(SecurityConfig): auth_whitelist update * [#57] refactor: 엔티티 정적팩토리 메소드 추가 * [#57] comment(SecurityConfig): 주석 제거 * [#57] fix(JwtAuthenticationFilter): 에러 로직 수정 * fix(SecurityConfig): webSecurityCustomizer 로직 추가 * [#57] fix:security 수정 * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 (#77) * [fix] #76 - 누락된 코드 추가 (#79) * [#76] fix(SecurityConfig): Base64 인코딩을 하도록 변경 * [#76] chore(SecurityConfig): 누락된 import문 추가 * [#76] chore(JwtTokenProvider): 누락된 코드 추가 * [#81] fix(JwtTokenProvider): jwtsecret을 인코딩하고 디코딩을 하도록 수정 (#82) * [#85] chore(application.yml): 환경변수 설정 (#86) * [chore] #88 - 레디스 환경변수 추가 (#89) * [#88] chore(dev-CI.yml): dev서버 레디스 환경변수 설정 추가 * [#88] chore(prod-CI.yml): prod 서버 레디스 환경변수 설정 추가 * [deploy] merge to main (#90) * [deploy] merge to main (#83) * [deploy] merge to develop (#27) * [deploy] merge to main (#26) * [#2] chore(.gitignore): .gradle, .idea 파일 삭제 (#3) * [refactor] #4 - 도메인형 디렉터리 구조 변경 및 local, dev, prod 운영 환경 분리 (#5) * [#4] fix: 클래스 첫글자 대문자로 수정 * [#4] remove: enum 삭제 * [#4] feat(BaseSuccessCode): 성공 상태 관리를 위한 인터페이스 생성 * [#4] feat(BaseErrorCode): 에러 상태 관리를 위한 인터페이스 생성 * [#4] refactor: global 패키지로 이동 * [#4] refactor: 서버 운영 환경 분리 * [feat] #6 - dev, prod Dockerfile 분리 및 github Action CI workflow 구현 (#7) * [#6] feat(Dockerfile): prod용 도커 파일 구현 * [#6] feat(Dockerfile-dev): dev용 도커 파일 구현 * [#6] feat(dev-CI.yml): dev용 CI workflow 구현 * [#6] feat(prod-CI.yml): prod용 CI workflow 구현 * [#6] chore(.gitignore): gradle-wrapper.jar 파일은 레포지토리에 포함되도록 설정 * [#6] fix(gradle-wrapper.jar): .gitignore로 누락된 파일 추가 * [#6] chore(build.grade): plain jar 생성 방지 * [#9] docs(README.md): 서비스 소개 README v1 작성 (#10) * [#11] docs(README.md): 리드미 업데이트 (#12) * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [feat] #14 - 회원, 홍보, 등장인물, 스태프 엔티티 생성 (#16) * [#14] feat(Member): 멤버 엔티티 생성 * [#14] feat(Promotion): 홍보 엔티티 생성 * [#14] feat(Cast): 등장인물 엔티티 생성 * [#14] feat(Staff): 스태프 엔티티 생성 * [feat] #13 - 유저, 예매, 공연, 회차 엔티티 생성 (#15) * [#13] feat(Users): 사용자 엔티티 생성 * [#13] feat(Genre): 장르 열거형 생성 * [#13] feat(BankName): 은행명 열거형 생성 * [#13] refactor(BaseTimeEntity): 업데이트 시간 관리 필드 활성화 * [#13] feat(Performance): 공연 엔티티 생성 * [#13] feat(ScheduleNumber): 회차 번호 열거형 생성 * [#13] feat(Schedule): 회차 엔티티 생성 * [#13] feat(Booking): 예매 엔티티 생성 * [#13] refactor(ScheduleNumber): 네이밍 수정 * [#14} fix: 스태프, 등장인물, 홍보 엔티티 상속관계 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [#18] feat(Jenkinsfile): 젠킨스 파일 생성 (#19) * [#20] refactor(Jenkinsfile): 젠킨스 파일 Webhook 테스트용 커밋 (#21) * [#22] feat(Jenkinsfile): Jenkins multibranch 스크립트 작성 (#23) * HOTFIX(Jenkinsfile): Jenkins multibranch 스크립트 수정 * HOTFIX(workflows): 빌드 후 젠킨스 배포가 진행되도록 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * HOTFIX(workflows): Jenkinsfile 스크립트 수정 * [#24] feat(Jenkinsfile): slack 연동 스크립트 작성 (#25) --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * HOTFIX(workflow): 오타 수정 --------- Co-authored-by: hyerinhwang-sailin <[email protected]> * [feat] #28 - 비회원 예매 조회 POST API 구현 (#29) * chore(application-dev.yml): dialect 추가 * chore(application-prod.yml): dialect 추가 * [#28] chore(build.gradle): security 의존성 비활성화 - security 일시적으로 비활성화 * [#28] refactor(Booking): 예매 엔티티에 빌더 및 정적팩토리 메서드 추가 * [#28] refactor(ErrorResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(Schedule): 회차 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(Performance): 공연 엔티티에 빌더 및 정적 팩토리 메서드 추가 * [#28] refactor(SuccessResponse): 정적 팩토리 메서드 네이밍 변환 * [#28] refactor(GlobalExceptionHandler): INTERNAL_SERVER_ERROR 핸들러 메서드 추가 * [#28] feat(BookingSuccessCode): 예매 성공 메시지를 관리하는 열거형 생성 * [#28] feat(BookingErrorCode): 예매 에러 메시지를 관리하는 열거형 생성 * [#28] feat(BookingRetrieveResponse): 예매 조회 응답 DTO 생성 * [#28] feat(BookingRetrieveRequest): 예매 조회 요청 DTO 생성 * [#28] feat(BookingRepository): 예매 레포지토리 생성 및 비회원 예매 조회 시 예매 내역 가져오는 메서드 구현 * [#28] feat(BookingService): 예매 서비스 레이어 생성 및 비회원 조회 메서드 구현 * [#28] feat(BookingController): 예매 컨트롤러 생성 및 비회원 예매조회 POST API 구현 * [feat] #30 - SwaggerConfig 및 WebConfig 구현 (#31) * [#30] chore(build.gradle): springdoc 의존성 추가 * [#30] feat(SwaggerConfig): SwaggerConfig 추가 * [#30] feat(WebConfig): WebConfig 추가 * HOTFIX(workflows): push 이벤트 시 github action이 빌드 되지 않도록 수정 * HOTFIX(Jenkinsfile): 포트 수정 * [feat] #32 - 티켓 예매 가능 여부 GET API 구현 (#33) * [#32] refactor(BookingController): 메서드명 수정 * [#32] feat(ConflictException): Conflict 409에러 클래스 생성 * [#32] feat(GlobalExceptionHandler): ConflictException 등록 * [#32] feat(TicketAvailabilityRequest): TicketAvailabilityRequest DTO 생성 * [#32] feat(TicketAvailabilityResponse): TicketAvailabilityResponse DTO 생성 * [#32] feat(ScheduleSuccessCode): ScheduleSuccessCode 열거형 생성 * [#32] feat(ScheduleErrorCode): ScheduleErrorCode 열거형 생성 * [#32] feat(ScheduleRepository): ScheduleRepository 생성 * [#32] feat(ScheduleService): ScheduleService 생성 및 회차별 티켓 구매 가능 여부 판단 메서드 구현 * [#32] feat(ScheduleController): 회차별 티켓 수량 조회 GET API 구현 * [feat] #17 - 카카오 소셜 로그인 API 구현 (#36) * [#17] feat(build.gradle): jwt, security, open feign, Redis 의존성 추가 * [#17] feat(BeatApplication): OpenFeign 관련 어노테이션 추가 * [#17] feat(RedisConfig): redis 설정 * [#17] feat: redis 활용 jwt 토큰 생성 로직 구현 * [#17] feat(SecurityConfig): security 설정 * [#17] refactor: Member, Users 엔티티 수정 및 관련 enum 추가 * [#17] feat: Member, Users 도메인 관련 인증 로직 구현 * [#17] feat(MemberController): Member 관련 API 엔드포인트 구현 * [#17] feat: Security 관련 인증 객체 구현 * [#17] feat: 소셜로그인 로직 구현 * [#17] fix: 소셜로그인 오류 해결 * [#17] refactor: 코드리뷰 반영 * [#17] refactor: 코드리뷰 반영 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #34 - 비회원 예매 POST API 구현 (#35) * [#34] feat(Users): 빌더 및 정적 팩토리 메서드 추가 * [#34] feat(Entity): 엔티티 id 필드 수정 * [#34] refactor(application.yml): dialect 추가 * [#34] refactor(ScheduleService): 네이밍 수정 * [#34] refactor(BookingSuccessCode): 비회원 예매 조회 성공 메시지 추가 * [#34] feat(GuestBookingRequest): 비회원 예매 요청 DTO 생성 * [#34] feat(GuestBookingResponse): 비회원 예매 응답 DTO 생성 * [#34] refactor(BookingRetrieveService): 네이밍 수정 * [#34] feat(PerformanceRepository): 공연 레포지토리 생성 * [#34] feat(UserRepository): 유저 레포지토리 생성 * [#34] refactor(BookingRepository): 비회원 예매 시 네가지 정보가 모두 일치 해야만 다른 유저로 판단하는 메서드 구현 * [#34] refactor(ScheduleRepository): 비관적 락 적용 * [#34] feat(GuestBookingService): 비관적 락을 이용해 비회원 예매 로직 구현 * [#34] feat(BookingController): 비회원 예매 POST API 구현 * [#34] test(GuestBookingServiceConcurrencyTest): 동시성 테스트 구현 * [Refactor] #37 - 카카오 로그인 API response 수정 (#39) * [#37] rename: 빈 충돌 해결 위해 UserRepository를 UsersRepository로 rename * [#37] refactor: login response에서 refreshToken을 cookie에 담아주도록 변경 * [#37] fix: dao, repository 충돌 해결 * [#37] refactor: 어노테이션 수정 * [feat] #40 - 소개 관련 공연 정보 조회 GET API 구현 (#41) * [#40] feat: repository 추가 * [#40] feat: 공연 관련 성공, 실패 메세지 추가 * [#40] feat(PerformanceDetailResponse): 공연 상세페이지 조회 응답 dto * [#40] feat(PerformanceService): 공연 상세페이지 조회 로직 구현 * [#40] feat(PerformanceController): 공연 상세페이지 엔드포인트 구현 * [#40] feat(SecurityConfig): auth whitelist update * [#40] refactor: dto 분리 및 rename * [feat] #42 - 예매 관련 공연 정보 GET API 구현 (#43) * [#42] feat: 예매 관련 정보 조회 dto 생성 * [#42] feat: 예매 관련 정보 조회 성공 메세지 추가 * [#42] feat(ScheduleService): 잔여티켓계산, 예매가능여부확인, 예매가능여부 update 메소드 구현 * [#42] feat(PerformanceService): 예매관련공연정보의 response 생성하는 로직 구현 * [#42] feat(PerformanceController): 예매관련공연정보 조회 엔드포인트 구현 * [#42] feat(SecurityConfig): auth_whitelist update * [#42] refactor(ScheduleService): findTicketAvailability에서 getAvailableTicketCount method 사용하도록 수정 * [feat] #38 - 회원 예매 POST API 구현 (#45) * [#38] fix(Cast): Join 하는 부분 수정 및 빌더와 정적 팩토리 메서드 패턴 도입 * [#38] chore(application.yml): 계층 수정 * [#38] feat: 커스텀 어노테이션 생성 * [#38] fix(UserRepository): 중복된 클래스 삭제 * [#38] feat(UserErrorCode): 유저의 에러 메시지를 관리하는 열거형 생성 * [#38] refactor(MemberErrorCode): message 목적에 맞게 변경 * [#38] refactor(BookingSuccessCode): 회원 예매 성공 메시지 추가 * [#38] feat: 커스텀 어노테이션 생성 커밋에 누락된 클래스 추가 * [#38] refactor(GuestBookingService): schedule에서 바로 get 하도록 수정 * [#38] test(GuestBookingServiceConcurrencyTest): import문 경로명 변경 * [#38] refactor(MemberService): @Transactional 어노테이션이 필요한 메서드에 해당 옵션 추가 * [#38] feat(MemberBookingRequest): 회원 예매 요청 DTO 생성 * [#38] feat(MemberBookingResponse): 회원 예매 응답 DTO 생성 * [#38] refactor(MemberController): refreshToken을 쿠키에 넣어주도록 구현 * [#38] feat(MemberBookingService): 회원 예매 서비스 로직 구현 * [#38] feat(BookingController): 회원 예매 요청 POST API 구현 * [#38] fix: 빌드 안되는 부분 수정 * [#38] remove(MemberBookingService): 사용하지 않는 import문 삭제 * [#38] refactor: 커스텀 어노테이션 이름 수정 * [feat] #44 - 홈페이지 공연 및 홍보 조회 GET API 구현 (#47) * [#44] refactor: 코드리뷰 반영 * [#44] fix(Promotion): 기본키 이름 수정, performanceId 연관관계 설정 * [#44] feat: Repository 및 관련 로직 추가 * [#44] feat: errorcode, successcode 추가 * [#44] feat: 홈페이지 request, response dto 생성 * [#44] feat(ScheduleService): dueDate 관련 로직 구현 * [#44] feat(PerformanceService): 홈페이지 정렬 및 response 생성 로직 구현 * [#44] chore: import문 추가 * [feat] #46 - 회원 예매 조회 GET API 구현 (#48) * [#46] remove(BookingRetrieveRequest): 클래스 삭제 * [#46] refactor(BookingSuccessCode): 회원 예매 조회 성공 메시지 추가 * [#46] refactor(GuestBookingRetrieveResponse): 클래스 명 변경 * [#46] refactor(GuestBookingRetrieveRequest): 안쓰는 코드 주석처리 * [#46] refactor(GuestBookingRetrieveService): 클래스 명 수정으로 인한 리팩토링 * [#46] refactor(SecurityConfig): 토큰 사용하지 않는 api 경로 추가하기 * [#46] refactor(BookingRepository): userId로 예약 정보를 가져오는 JPA 메서드 구현 * [#46] feat(MemberBookingRetrieveResponse): 회원 조회 응답 DTO 생성 * [#46] feat(MemberBookingRetrieveService): 회원 예매 조회 로직을 담당하는 서비스 레이어 구현 * [#46] feat(BookingController): 회원 예매 조회 GET API 구현 * [feat] #49 - 예매자 관리 API 구현 (#51) * [#49] feat: 티켓 관련 success, error code 추가 * [#49] feat(Booking): 입금여부 setter 메소드 추가 * [#49] feat(TicketRetrieveResponse): 예매자 확인 response dto 생성 * [#49] feat(Ticket): 예매자 확인용 티켓 정보 response dto 생성 * [#49] feat(TicketRepository): 예매자 필터링용 메소드 생성 * [#49] feat: 예매자 입금정보 수정 request dto 생성 * [#49] feat(TicketDeleteRequest): 예매자 삭제 request dto 생성 * [#49] feat(TicketService): 예매자 관리 관련 로직 구현 * [#49] feat(TicketController): 예매자 관리 엔드포인트 구현 * [#49] chore: swagger annotation 추가 * HOTFIX(SecurityConfig): WHITELIST 경로명 수정 * [fix] #52 - auth whitelist 수정 (#53) * [#52]fix(SecurityConfig): auth_whitelist 수정 * [#52]fix(SecurityConfig): auth_whitelist 수정 --------- Co-authored-by: DongHoon Lee <[email protected]> * [feat] #54 - 등록한 공연 목록 조회 GET API 구현 (#55) * [#54] feat(PerformanceSuccessCode): success code 추가 * [#54] feat: 회원이 등록한 공연목록 조회 dto 생성 * [#54] feat(PerformanceService): 회원이 등록한 공연목록 조회 로직 구현 * [#54] feat(PerformanceRepository): 회원이 등록한 공연목록 조회 관련 메소드 추가 * [#54] feat(PerformanceController): 회원이 등록한 공연목록 조회 엔드포인트 생성 * [#54] fix(TicketService): exception error 수정 * [#54] chore(application.yml): yml 수정 * [fix] #58 - dev-ci.yml, prod-ci.yml 환경변수 추가 (#59) * [#58] fix(dev-CI.yml): Dev 서버 CI 워크플로우 수정 * [#58] fix(prod-CI.yml): Prod 서버 CI 워크플로우 수정 * [refactor] #61 - Performance Entity field 추가 (#62) * [#61] refactor(Performance): bankHolder 필드 추가 * [#61] chore(BookingController): swagger annotation 수정 * [feat] #63 - healthCheckController 생성 (#64) * [#63] remove(Users…
- Loading branch information