Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[release] v1.0.1 릴리즈 #174

Merged
merged 79 commits into from
Aug 13, 2024
Merged

[release] v1.0.1 릴리즈 #174

merged 79 commits into from
Aug 13, 2024

Conversation

hoonyworld
Copy link
Member

Release Version

v1.0.1

Major changes

  1. 같은 네트워크 위에서 스프링부트와 레디스를 도커로 띄우도록 Jenkinsfile 스크립트 변경
  2. 더 이상 사용하지 않는 Docker dangling 이미지를 정리하도록 Jenkinsfile 스크립트 변경
  3. 예매자 삭제 API, 예매자 입금여부 수정 및 웹발신 API 경로명 변경
  4. 공연 삭제 로직 변경
  5. 예매자 삭제 시, 삭제된 예매자가 구매한 티켓수를 현재 판매 가능한 티켓 수에 반영하도록 수정
  6. 운영 서버 ddl-auto none으로 변경

hoonyworld and others added 30 commits July 12, 2024 01:32
* [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]>
* 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 구현
* [#30] chore(build.gradle): springdoc 의존성 추가

* [#30] feat(SwaggerConfig): SwaggerConfig 추가

* [#30] feat(WebConfig): WebConfig 추가
* [#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 구현
* [#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]>
* [#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): 동시성 테스트 구현
* [#37] rename: 빈 충돌 해결 위해 UserRepository를 UsersRepository로 rename

* [#37] refactor: login response에서 refreshToken을 cookie에 담아주도록 변경

* [#37] fix: dao, repository 충돌 해결

* [#37] refactor: 어노테이션 수정
* [#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
* [#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 사용하도록 수정
* [#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: 커스텀 어노테이션 이름 수정
* [#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문 추가
* [#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 구현
* [#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 추가
* [#52]fix(SecurityConfig): auth_whitelist 수정

* [#52]fix(SecurityConfig): auth_whitelist 수정

---------

Co-authored-by: DongHoon Lee <[email protected]>
* [#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 수정
* [#58] fix(dev-CI.yml): Dev 서버 CI 워크플로우 수정

* [#58] fix(prod-CI.yml): Prod 서버 CI 워크플로우 수정
* [#61] refactor(Performance): bankHolder 필드 추가

* [#61] chore(BookingController): swagger annotation 수정
* [#63] remove(UsersRepository): 중복 클래스 삭제

* [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성
* [#63] remove(UsersRepository): 중복 클래스 삭제

* [#63] feat(HealthCheckController): healthcheck 컨트롤러 생성

* [#63] feat(SecurityConfig): healthcheck url white_list에 등록
* [#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]>
* [#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] 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 수정
hoonyworld and others added 22 commits July 18, 2024 02:25
…록 구현 (#131)

* [#127] feat(SecurityConfig): 화이트 리스트에 presigned-url 추가

* [#127] refactor(FileService): 포스터 이미지, 등장인물 이미지 리스트, 스태프 이미지 리스트의 presigned-url을 반환하는 메서드 구현

* [#127] feat(FileController): presigned-url GET API 구현
* [#133] remove: 삭제된 클래스 커밋

* [#133] refactor(FileService): URL의 유효시간 2시간으로 설정
* [#126] refactor(BookingController): 회원 예매 조회시 성공 메시지 변경

* [#126] refactor(BookingRepository): 쿼리문 추가

* [#126] refactor(GuestBookingRequest): enum으로 리턴값 변경

* [#126] refactor(GuestBookingResponse): enum으로 리턴값 변경

* [#126] chore(GuestBookingRetrieveRequest): 주석 삭제

* [#126] refactor(GuestBookingRetrieveResponse): performanceId, posterImage, totalPaymentAmount 추가

* [#126] refactor(MemberBookingRetrieveResponse): performanceId, posterImage, totalPaymentAmount 추가

* [#126] refactor(MemberBookingRetrieveService): response에 추가된 필드 리턴하도록 리팩토링

* [#126] refactor(GuestBookingRetrieveService): response에 추가된 필드 리턴하도록 리팩토링

* [#126] refactor(GuestBookingService): displayName이 아닌 열거형으로 리턴하도록 수정

* [#126] refactor(MemberBookingRequest): 정적 팩토리 메서드 삭제

* [#126] refactor(MemberBookingResponse): enum으로 리턴하도록 수정

* [#126] refactor(MemberBookingService): enum으로 리턴하도록 수정

* [#126] test(GuestBookingServiceConcurrencyTest): DTO에서 수정된 리턴 방법 반영
… 주지 않아도 presigned-url을 발급하도록 변경 (#143)
* [#150] feat(Jenkinsfile): 스프링 서버를 redis와 동일한 네트워크에서 실행되도록 구현

* [#150] refactor(prod-CI.yml): prod에서 PR시에만 빌드 되도록 수정
* [#162] refactor(Performance): Promotion 엔티티 양방향 매핑

* [#162] refactor(BookingRepository): JPQL을 사용해 회차 아이디가 담긴 리스트의 회차 아이디가 예매 테이블에도 존재하는지 비교하도록 변경

* [#162] refactor(PerformanceController): 메서드 네이밍 리팩토링

* [#162] refactor(PerformanceErrorCode): 에러 상태 변경 및 해당 공연의 메이커가 아닐 때 발생하는 에러메시지 추가

* [#162] refactor(PerformanceManagementService): 변경된 JPA 메서드에 맞추어 서비스 로직 변경 및 해당 공연의 메이커만 공연삭제가 가능하도록 변경

* [#162] refactor(PerformanceService): 변경된 JPA 메서드에 맞추어 공연 수정 시 공연 정보를 반환하는 서비스 로직 변경

* [#162] fix(TicketController): 예매자 삭제 시 불필요한 pathVariable 속성 삭제

* [#162] refactor(ScheduleRepository): 공연 id에 해당하는 모든 회차 id를 리스트로 반환하는 메서드 추가

* [#162] refactor(TicketService): 해당 공연의 메이커가 아니면 예매자를 삭제하지 못하는 로직 추가
* [#164] fix(TicketController): 예매자 입금여부 수정 api 경로 수정

* [#164] chore(application-dev): dev db 초기화
* [#170] feat: 예매자 삭제 관련 에러 메세지 추가

* [#170] feat(Schedule): soldTicketCount 변경 메소드 추가

* [#170] fix(TicketService): 예매자 삭제 시 soldTicketCount에 반영되도록 메소드 수정

* [#170] fix(Schedule): 예매자 삭제 시 exception 처리 방식 수정
Copy link
Collaborator

@hyerinhwang-sailin hyerinhwang-sailin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

major changes 정리해주신 거 깔끔하고 좋네요! LGTM~

@hoonyworld hoonyworld merged commit eb3ec1b into main Aug 13, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants