Skip to content

Commit

Permalink
데이터 수정 후 재배포 (#37)
Browse files Browse the repository at this point in the history
* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* backup <user> package to <archive/user_old>

* modify endpoint

* feat: 공연장 생성시 좌석도 함께 생성

* feat: seat 초기화 적용, 버그 수정

PerformanceHall이 생성될 때 Seat을 같이 생성,
PerformanceEvent가 생성될 때 Reservation을 같이 생성하도록 변경

* 공연 카테고리 검색, 상세 조회, 생성, 삭제 기능 구현  (#15)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* modify searchPerformance

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* assign posterimageURL

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* applying spring security

* setup .env

* feat: Find PerformanceEvent

PerformanceId와 LocalDate로부터 PerformanceEventId를 반환하도록 추가

잘못된 PerformanceEventId로 빈좌석정보를 확인했을 때 에러 반환

* chore: .env 무시

* feat: Reinforce Simultaneous test code

동시에 여러 사람의 접근이 있어도 통과하는지 테스트 코드 추가
동시에 여러 사람이 서로 다른 좌석에 접근할 때 테스트 코드 추가

* 예매 동시성 처리, 로그인 엔드포인트 변경 (#18)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* feat: 공연장 생성시 좌석도 함께 생성

* feat: seat 초기화 적용, 버그 수정

PerformanceHall이 생성될 때 Seat을 같이 생성,
PerformanceEvent가 생성될 때 Reservation을 같이 생성하도록 변경

* feat: Find PerformanceEvent

PerformanceId와 LocalDate로부터 PerformanceEventId를 반환하도록 추가

잘못된 PerformanceEventId로 빈좌석정보를 확인했을 때 에러 반환

* chore: .env 무시

* feat: Reinforce Simultaneous test code

동시에 여러 사람의 접근이 있어도 통과하는지 테스트 코드 추가
동시에 여러 사람이 서로 다른 좌석에 접근할 때 테스트 코드 추가

---------

Co-authored-by: Dohyeon Kim <[email protected]>

* fix .http localhost port number

* apply spring security

* apply spring security

* minor

* remove .env from tracked files

* gitignore

* remove unused method

* minor

* minor

* add new line at EOF

* modify jwtfilter comment

* convert Instant to KoreanLocalDateTime in PerformanceEventDTO

* add permission

* feat: Review/Reply 연결

review와 reply 마무리

* comment: user 설명 추가

username과 password의 조건 설명 추가

* chore: 필요없는 코드 지우기

* feat: Sort Reviews and Replies

GET을 통해 리뷰나 댓글을 조회할 때 최신순으로 반환한다

* Spring security 적용 (#19)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* backup <user> package to <archive/user_old>

* modify endpoint

* applying spring security

* setup .env

* fix .http localhost port number

* apply spring security

* apply spring security

* minor

* remove .env from tracked files

* gitignore

* remove unused method

* minor

* minor

* add new line at EOF

* modify jwtfilter comment

* convert Instant to KoreanLocalDateTime in PerformanceEventDTO

* add permission

---------

Co-authored-by: ChungPlusPlus <[email protected]>

* style: add new line at EOF

* throw AuthenticateException when accessToken is not valid

* Review & Reply (#20)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* feat: 공연장 생성시 좌석도 함께 생성

* feat: seat 초기화 적용, 버그 수정

PerformanceHall이 생성될 때 Seat을 같이 생성,
PerformanceEvent가 생성될 때 Reservation을 같이 생성하도록 변경

* feat: Find PerformanceEvent

PerformanceId와 LocalDate로부터 PerformanceEventId를 반환하도록 추가

잘못된 PerformanceEventId로 빈좌석정보를 확인했을 때 에러 반환

* chore: .env 무시

* feat: Reinforce Simultaneous test code

동시에 여러 사람의 접근이 있어도 통과하는지 테스트 코드 추가
동시에 여러 사람이 서로 다른 좌석에 접근할 때 테스트 코드 추가

* feat: Review/Reply 연결

review와 reply 마무리

* comment: user 설명 추가

username과 password의 조건 설명 추가

* chore: 필요없는 코드 지우기

* feat: Sort Reviews and Replies

GET을 통해 리뷰나 댓글을 조회할 때 최신순으로 반환한다

* style: add new line at EOF

---------

Co-authored-by: Dohyeon Kim <[email protected]>

* save

* Revert "Review & Reply (#20)" (#21)

This reverts commit 9510784.

* hotfix: test 안되던 오류 수정

* 빌드 안되던 버그 수정 (#22)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* feat: 공연장 생성시 좌석도 함께 생성

* feat: seat 초기화 적용, 버그 수정

PerformanceHall이 생성될 때 Seat을 같이 생성,
PerformanceEvent가 생성될 때 Reservation을 같이 생성하도록 변경

* feat: Find PerformanceEvent

PerformanceId와 LocalDate로부터 PerformanceEventId를 반환하도록 추가

잘못된 PerformanceEventId로 빈좌석정보를 확인했을 때 에러 반환

* chore: .env 무시

* feat: Reinforce Simultaneous test code

동시에 여러 사람의 접근이 있어도 통과하는지 테스트 코드 추가
동시에 여러 사람이 서로 다른 좌석에 접근할 때 테스트 코드 추가

* feat: Review/Reply 연결

review와 reply 마무리

* comment: user 설명 추가

username과 password의 조건 설명 추가

* chore: 필요없는 코드 지우기

* feat: Sort Reviews and Replies

GET을 통해 리뷰나 댓글을 조회할 때 최신순으로 반환한다

* style: add new line at EOF

* hotfix: test 안되던 오류 수정

---------

Co-authored-by: Dohyeon Kim <[email protected]>

* roll back 401 -> 403 when access denied

* setup .env

* fix: Change Reservation

ReservationEntity 예매하면서 만들어지도록 변경

* CI: fixed CI (#23)

* hotfix: change CI/CD jdk to 23

* hotfix: use compose in CI

* hotfix: fix ci

* hotfix: reset ci

* fix: build test on all branch

* fix: error 핸들링

SeatService에서 DataIntegrityViolationException을 핸들링하기 위해
saveAndFlush를 사용했다. 기존에는 save가 트랜잭션이 끝나고 완료되어서
오류가 핸들링이 안 되었었다

* fix: Seat Test

* fix: test conflict resolve

테스트에서 같은 username을 쓰던 부분을 수정

* feat: Seat Api Test

* fix: 예매 취소 POST -> DELETE

* Reservation 수정 (#25)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* feat: 공연장 생성시 좌석도 함께 생성

* feat: seat 초기화 적용, 버그 수정

PerformanceHall이 생성될 때 Seat을 같이 생성,
PerformanceEvent가 생성될 때 Reservation을 같이 생성하도록 변경

* feat: Find PerformanceEvent

PerformanceId와 LocalDate로부터 PerformanceEventId를 반환하도록 추가

잘못된 PerformanceEventId로 빈좌석정보를 확인했을 때 에러 반환

* chore: .env 무시

* feat: Reinforce Simultaneous test code

동시에 여러 사람의 접근이 있어도 통과하는지 테스트 코드 추가
동시에 여러 사람이 서로 다른 좌석에 접근할 때 테스트 코드 추가

* feat: Review/Reply 연결

review와 reply 마무리

* comment: user 설명 추가

username과 password의 조건 설명 추가

* chore: 필요없는 코드 지우기

* feat: Sort Reviews and Replies

GET을 통해 리뷰나 댓글을 조회할 때 최신순으로 반환한다

* style: add new line at EOF

* hotfix: test 안되던 오류 수정

* fix: Change Reservation

ReservationEntity 예매하면서 만들어지도록 변경

* fix: error 핸들링

SeatService에서 DataIntegrityViolationException을 핸들링하기 위해
saveAndFlush를 사용했다. 기존에는 save가 트랜잭션이 끝나고 완료되어서
오류가 핸들링이 안 되었었다

* fix: Seat Test

* fix: test conflict resolve

테스트에서 같은 username을 쓰던 부분을 수정

* feat: Seat Api Test

* fix: 예매 취소 POST -> DELETE

---------

Co-authored-by: Dohyeon Kim <[email protected]>

* add: Review, Reply DTO Instant -> LocalDatTime

* feat: Cursor Pagination Tools

CursorSpecification은 조건 추가해수는 기능
CursorPageService는 cursor 포함해서 검색하는 기능
CursorEncoder는 cursor를 컨트롤러에서 인코딩/디코딩 할 수 있도록 하는
기능

* feat: CursorPageable 적용

* fix: modify CursorPageable

디폴트 값을 데이터 클래스가 생성될 때 채워지는 것으로 적용

* fix: Reply Test

Instant 대신 LocalDateTime을 씀에 따라 테스트에서의 파싱도 변경

* social login 구현중 중간 save

* setup .env

* add SocialLoginApi.http

* remove .env

* feat: response

hasNext와 nextCursor 반환

* write swagger api for socialauthcontroller

* modify social login api docs description

* add social login query paramter explanations

* fix: nextCursor 수정

원래 객체 자체를 인코딩해서 ".id",".id"같은 값이 인코딩되어 나왔습니다
get을 사용해서 객체의 값을 가져올 수 있도록 수정했습니다

* feat: Performance Pagination 완성

* social endpoint permitall

* feat: pagination 적용된 review 조회

v2로 만들었습니다

* social login receive socialAccessToken, not authorizatoinCode

* fix: Review Cursor

기능 완성

* feat: Reply에도 Cursor 적용

* fix: 엔드포인트 분리

* feat: performance 엔드포인트 분리

v1과 v2로 나누어 선택할 수 있도록

* feat: permitAll for pagination

* fix: test 코드 수정

* fix: test 수정

* feat: Performance Search & Get Review 페이지네이션 적용 완료

* modify makefile / test: h2 -> mysql

* modify social login explanation

* feat: Exception 처리

* fix: 기존 테스트 코드 유지

* feat: Reply Pagination 완성

Performance, Review, Reply Pagination 구현 완료

* feat: Performance Date 추가

* CI: add env on CI

* CI: add check on pull_requests

* Pagination 구현 (#26)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* feat: 공연장 생성시 좌석도 함께 생성

* feat: seat 초기화 적용, 버그 수정

PerformanceHall이 생성될 때 Seat을 같이 생성,
PerformanceEvent가 생성될 때 Reservation을 같이 생성하도록 변경

* feat: Find PerformanceEvent

PerformanceId와 LocalDate로부터 PerformanceEventId를 반환하도록 추가

잘못된 PerformanceEventId로 빈좌석정보를 확인했을 때 에러 반환

* chore: .env 무시

* feat: Reinforce Simultaneous test code

동시에 여러 사람의 접근이 있어도 통과하는지 테스트 코드 추가
동시에 여러 사람이 서로 다른 좌석에 접근할 때 테스트 코드 추가

* feat: Review/Reply 연결

review와 reply 마무리

* comment: user 설명 추가

username과 password의 조건 설명 추가

* chore: 필요없는 코드 지우기

* feat: Sort Reviews and Replies

GET을 통해 리뷰나 댓글을 조회할 때 최신순으로 반환한다

* style: add new line at EOF

* hotfix: test 안되던 오류 수정

* fix: Change Reservation

ReservationEntity 예매하면서 만들어지도록 변경

* fix: error 핸들링

SeatService에서 DataIntegrityViolationException을 핸들링하기 위해
saveAndFlush를 사용했다. 기존에는 save가 트랜잭션이 끝나고 완료되어서
오류가 핸들링이 안 되었었다

* fix: Seat Test

* fix: test conflict resolve

테스트에서 같은 username을 쓰던 부분을 수정

* feat: Seat Api Test

* fix: 예매 취소 POST -> DELETE

* add: Review, Reply DTO Instant -> LocalDatTime

* feat: Cursor Pagination Tools

CursorSpecification은 조건 추가해수는 기능
CursorPageService는 cursor 포함해서 검색하는 기능
CursorEncoder는 cursor를 컨트롤러에서 인코딩/디코딩 할 수 있도록 하는
기능

* feat: CursorPageable 적용

* fix: modify CursorPageable

디폴트 값을 데이터 클래스가 생성될 때 채워지는 것으로 적용

* fix: Reply Test

Instant 대신 LocalDateTime을 씀에 따라 테스트에서의 파싱도 변경

* feat: response

hasNext와 nextCursor 반환

* fix: nextCursor 수정

원래 객체 자체를 인코딩해서 ".id",".id"같은 값이 인코딩되어 나왔습니다
get을 사용해서 객체의 값을 가져올 수 있도록 수정했습니다

* feat: Performance Pagination 완성

* feat: pagination 적용된 review 조회

v2로 만들었습니다

* fix: Review Cursor

기능 완성

* feat: Reply에도 Cursor 적용

* fix: 엔드포인트 분리

* feat: performance 엔드포인트 분리

v1과 v2로 나누어 선택할 수 있도록

* feat: permitAll for pagination

* fix: test 코드 수정

* fix: test 수정

* feat: Performance Search & Get Review 페이지네이션 적용 완료

* feat: Exception 처리

* fix: 기존 테스트 코드 유지

* feat: Reply Pagination 완성

Performance, Review, Reply Pagination 구현 완료

* feat: Performance Date 추가

---------

Co-authored-by: Dohyeon Kim <[email protected]>

* rollback userservice.signup()

* rollback signup

* 소셜 로그인 구현 (#27)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* backup <user> package to <archive/user_old>

* modify endpoint

* applying spring security

* setup .env

* fix .http localhost port number

* apply spring security

* apply spring security

* minor

* remove .env from tracked files

* gitignore

* remove unused method

* minor

* minor

* add new line at EOF

* modify jwtfilter comment

* convert Instant to KoreanLocalDateTime in PerformanceEventDTO

* add permission

* throw AuthenticateException when accessToken is not valid

* save

* roll back 401 -> 403 when access denied

* setup .env

* social login 구현중 중간 save

* add SocialLoginApi.http

* remove .env

* write swagger api for socialauthcontroller

* modify social login api docs description

* add social login query paramter explanations

* social endpoint permitall

* social login receive socialAccessToken, not authorizatoinCode

* modify social login explanation

* rollback userservice.signup()

* rollback signup

---------

Co-authored-by: ChungPlusPlus <[email protected]>

* readme skeleton update

* readme.md skeleton update (#29)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* backup <user> package to <archive/user_old>

* modify endpoint

* applying spring security

* setup .env

* fix .http localhost port number

* apply spring security

* apply spring security

* minor

* remove .env from tracked files

* gitignore

* remove unused method

* minor

* minor

* add new line at EOF

* modify jwtfilter comment

* convert Instant to KoreanLocalDateTime in PerformanceEventDTO

* add permission

* throw AuthenticateException when accessToken is not valid

* save

* roll back 401 -> 403 when access denied

* setup .env

* social login 구현중 중간 save

* add SocialLoginApi.http

* remove .env

* write swagger api for socialauthcontroller

* modify social login api docs description

* add social login query paramter explanations

* social endpoint permitall

* social login receive socialAccessToken, not authorizatoinCode

* modify social login explanation

* rollback userservice.signup()

* rollback signup

* readme skeleton update

---------

Co-authored-by: ChungPlusPlus <[email protected]>

* feat: data 추가중

* feat: MUSICAL data 완료

* feat: PLAY 데이터 추가

* feat: CLASSIC 데이터 추가

* feat: CONCERT 데이터 추가

* 공연 데이터 추가 (#30)

* merge test - generate performancehallentity.kt

* feat: searchPerformance

* chore: 도커 컴포즈

dockerfile 작성해서 도커 이미지 잘 만들어지고 http 파일로 테스트까지
가능한 상태입니다

* modify searchPerformance

* add: docker-compose

* modify build.gradle.kts

* add wildcard import in UserService.kt

* change Performance attribute 'genre' to 'category'

* change category to ENUM Type

* add some Init Datas

* add some Init Datas

* assign posterimageURL

* add: Entity

엔티티 작업중

* assign posterimageURL

* add: SeatService

임시저장하겠습니다

* feat: SeatService

좌석 확인, 예매, 예매 취소 기능 구현
아직 동시성 처리 안됐습니다

* feat: Add Controller

컨트롤러 추가했습니다
곧 테스트 코드 추가해보겠습니다

* modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 RequestParam을 사용하는 원래 방식으로 변경

* feat: SeatCreation

performanceHallId와 type을 받아 좌석엔티티들을 자동으로 생성하는 서비스
함수와 performanceEventId를 받아 빈 예약 가능 엔티티들을 자동을 생성하는
서비스를 만들었습니다

추후 createPerformanceHall과 createPerformanceEvent함수를 수정해서
과정을 더 자동화할 수 있을 것 같습니다

* add: SeatIntegrationTest

SeatIntegrationTest 만들었습니다

테스트 전부 통과하며 빌드 성공합니다
다만 테스트에 mysql 데이터베이스가 쓰이며 초기화가 자동으로 되지 않아
문제가 생기니 이는 개선이 필요합니다

* chore: use h2 while test

application.yaml 파일을 테스트 코드를 위해 하나 추가해줬습니다
테스트코드에서 @transactional까지 사용한다면 테스트 코드가 서로 영향을
끼치지 않게 됩니다

* fix: Seat Reservation

reservation 바뀐 정보 반영하도록 save 사용했고, Detail확인하는 영역은
컨트롤러까지 분리했습니다

* style: seat ktlint

seat폴더의 파일들에 ktlint 적용

* modify MakeFile

* 공연 검색 기능 구현

* fromEntity parameter change: receive Entities -> receive DTOs

* modify searchPerformance endpoint URL

* chore: makefile

OS 따라서 다르게 작동하게 수정

* 공연 1개 상세 정보 반환

* minor modify: change how null type is handled

* 초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음

* modify DataInitializer, SeatIntegrationTest

* add PerformanceDetail Uri

* make PerformanceItegrationTest.kt

* feat: 예매 동시성

동시성 처리 완료
동시성 처리는 잘 되지만, 테스트 코드 작성이 많이 까다로움

* feat: Get My Reservation Api

유저가 로그인한채로 본인의 예약 목록을 확인할 수 있는 기능 추가

* feat: Seat Get TestCode

Get API가 정상작동하는지 테스트코드 추가

* modify SearchPerformanceResponse

* check auth for create, delete performance

* check auth for create, delete performanceEvent, performanceHall

* add posterUri attr to BriefPerformanceDetail

* minor change

* feat: 예매목록 Brief로 주기

기존에 id만 주던 것을 Brief 데이터의 리스트를 주는 것으로 수정
signin을 할 때 User도 같이 반환하도록 수정

* fix: 로그아웃, 토큰 재발급

버그 수정, 엔드포인트 수정

* add UserIdentityNotFoundException

* modify PerformanceDurtion

* feat: 공연장 생성시 좌석도 함께 생성

* feat: seat 초기화 적용, 버그 수정

PerformanceHall이 생성될 때 Seat을 같이 생성,
PerformanceEvent가 생성될 때 Reservation을 같이 생성하도록 변경

* feat: Find PerformanceEvent

PerformanceId와 LocalDate로부터 PerformanceEventId를 반환하도록 추가

잘못된 PerformanceEventId로 빈좌석정보를 확인했을 때 에러 반환

* chore: .env 무시

* feat: Reinforce Simultaneous test code

동시에 여러 사람의 접근이 있어도 통과하는지 테스트 코드 추가
동시에 여러 사람이 서로 다른 좌석에 접근할 때 테스트 코드 추가

* feat: Review/Reply 연결

review와 reply 마무리

* comment: user 설명 추가

username과 password의 조건 설명 추가

* chore: 필요없는 코드 지우기

* feat: Sort Reviews and Replies

GET을 통해 리뷰나 댓글을 조회할 때 최신순으로 반환한다

* style: add new line at EOF

* hotfix: test 안되던 오류 수정

* fix: Change Reservation

ReservationEntity 예매하면서 만들어지도록 변경

* fix: error 핸들링

SeatService에서 DataIntegrityViolationException을 핸들링하기 위해
saveAndFlush를 사용했다. 기존에는 save가 트랜잭션이 끝나고 완료되어서
오류가 핸들링이 안 되었었다

* fix: Seat Test

* fix: test conflict resolve

테스트에서 같은 username을 쓰던 부분을 수정

* feat: Seat Api Test

* fix: 예매 취소 POST -> DELETE

* add: Review, Reply DTO Instant -> LocalDatTime

* feat: Cursor Pagination Tools

CursorSpecification은 조건 추가해수는 기능
CursorPageService는 cursor 포함해서 검색하는 기능
CursorEncoder는 cursor를 컨트롤러에서 인코딩/디코딩 할 수 있도록 하는
기능

* feat: CursorPageable 적용

* fix: modify CursorPageable

디폴트 값을 데이터 클래스가 생성될 때 채워지는 것으로 적용

* fix: Reply Test

Instant 대신 LocalDateTime을 씀에 따라 테스트에서의 파싱도 변경

* feat: response

hasNext와 nextCursor 반환

* fix: nextCursor 수정

원래 객체 자체를 인코딩해서 ".id",".id"같은 값이 인코딩되어 나왔습니다
get을 사용해서 객체의 값을 가져올 수 있도록 수정했습니다

* feat: Performance Pagination 완성

* feat: pagination 적용된 review 조회

v2로 만들었습니다

* fix: Review Cursor

기능 완성

* feat: Reply에도 Cursor 적용

* fix: 엔드포인트 분리

* feat: performance 엔드포인트 분리

v1과 v2로 나누어 선택할 수 있도록

* feat: permitAll for pagination

* fix: test 코드 수정

* fix: test 수정

* feat: Performance Search & Get Review 페이지네이션 적용 완료

* feat: Exception 처리

* fix: 기존 테스트 코드 유지

* feat: Reply Pagination 완성

Performance, Review, Reply Pagination 구현 완료

* feat: Performance Date 추가

* feat: data 추가중

* feat: MUSICAL data 완료

* feat: PLAY 데이터 추가

* feat: CLASSIC 데이터 추가

* feat: CONCERT 데이터 추가

---------

Co-authored-by: Dohyeon Kim <[email protected]>

* readme save

* feat: readMe 추가작성

* feat: Swaager summary

* feat: Swagger summary for UserController

* CI: remove pull request trigger

* CD: add --build on rerun script

* read me save

* feat: Cascade 설정 (#31)

* readme save

* readme save

* fix: README.md

* readme save

* feat: add stack

* feat: add language

* readme save

* feat: add redis

* remove --- lines

* add JWT logo

* add empty lines

* add empty lines

* fix(README.md): add simple deploy descriptions

* index 추가 (#33)

* feat: Cascade 설정

* feat: index 추가중

* feat: 조회 성능 향상을 위한 index 추가

* Token Algorithm 지정 (#35)

* feat: Cascade 설정

* feat: index 추가중

* feat: 조회 성능 향상을 위한 index 추가

* fix: token algorithm 지정

* fix: 데이터 수정

---------

Co-authored-by: Dohyeon Kim <[email protected]>
Co-authored-by: grantzile <[email protected]>
Co-authored-by: grantzile <[email protected]>
  • Loading branch information
4 people authored Feb 2, 2025
1 parent 86a1647 commit 0828329
Showing 1 changed file with 2 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -564,12 +564,12 @@ class DataInitializer(
Triple(
"2025 기리보이 콘서트",
"블루스퀘어 마스터카드홀",
generateDateRange("2025-02-10", "2025-02-02", "16:00:00","18:00:00")
generateDateRange("2025-02-05", "2025-02-10", "16:00:00","18:00:00")
),
Triple(
"2025 검정치마 단독공연",
"올림픽공원 올림픽홀",
generateDateRange("2025-02-03", "2025-02-02", "16:00:00","18:00:00")
generateDateRange("2025-02-03", "2025-02-04", "16:00:00","18:00:00")
),
Triple(
"콜드플레이 내한공연",
Expand Down

0 comments on commit 0828329

Please sign in to comment.