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

배포 #32

Merged
merged 187 commits into from
Feb 2, 2025
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
187 commits
Select commit Hold shift + click to select a range
792b2c6
merge test - generate performancehallentity.kt
kdh8156 Dec 29, 2024
8ece4de
Merge branch 'main' into performance-dev
kdh8156 Dec 29, 2024
d3df363
feat: searchPerformance
kdh8156 Jan 4, 2025
d1273b2
Merge branch 'main' into performance-dev
kdh8156 Jan 4, 2025
41189ce
chore: 도커 컴포즈
ChungPlusPlus Jan 8, 2025
5f39ad0
modify searchPerformance
kdh8156 Jan 8, 2025
c45a67c
add: docker-compose
ChungPlusPlus Jan 8, 2025
446273a
modify build.gradle.kts
kdh8156 Jan 8, 2025
2b6beca
resolve conflicts
kdh8156 Jan 9, 2025
0c146bf
add wildcard import in UserService.kt
kdh8156 Jan 9, 2025
1fc2ff8
change Performance attribute 'genre' to 'category'
kdh8156 Jan 9, 2025
ae8470d
change category to ENUM Type
kdh8156 Jan 9, 2025
3fc5f41
add some Init Datas
kdh8156 Jan 9, 2025
d0dffd2
add some Init Datas
kdh8156 Jan 9, 2025
83a4eed
assign posterimageURL
kdh8156 Jan 9, 2025
7634b51
add: Entity
ChungPlusPlus Jan 9, 2025
5831bf0
assign posterimageURL
kdh8156 Jan 9, 2025
6d76ac5
Merge branch 'main' into performance-dev
kdh8156 Jan 9, 2025
a8a0647
add: SeatService
ChungPlusPlus Jan 9, 2025
3b2ca5f
Merge branch 'main' into chung-dev
ChungPlusPlus Jan 9, 2025
e8650f7
feat: SeatService
ChungPlusPlus Jan 9, 2025
76c1e46
resolve some syntax errors and modify DataInitializer.kt
kdh8156 Jan 9, 2025
2600422
feat: Add Controller
ChungPlusPlus Jan 9, 2025
4993e88
resolve conflicts
kdh8156 Jan 9, 2025
2685d1d
modify searchPerformance, GET요청은 RequestBody를 사용할 수 없다고 하여 다시 Request…
kdh8156 Jan 9, 2025
bdbe88d
Merge branch 'main' into chung-dev
ChungPlusPlus Jan 10, 2025
4bc0d87
feat: SeatCreation
ChungPlusPlus Jan 10, 2025
766eb0d
Merge branch 'chung-dev' of https://github.com/wafflestudio/22-5-team…
ChungPlusPlus Jan 10, 2025
5d9558e
add: SeatIntegrationTest
ChungPlusPlus Jan 10, 2025
fc68d22
chore: use h2 while test
ChungPlusPlus Jan 10, 2025
30757e6
fix: Seat Reservation
ChungPlusPlus Jan 11, 2025
bda1711
style: seat ktlint
ChungPlusPlus Jan 11, 2025
e226951
modify MakeFile
kdh8156 Jan 11, 2025
8e64ffa
공연 검색 기능 구현
kdh8156 Jan 11, 2025
ce54e67
fromEntity parameter change: receive Entities -> receive DTOs
kdh8156 Jan 11, 2025
28ff62a
modify searchPerformance endpoint URL
kdh8156 Jan 11, 2025
d071a7a
chore: makefile
ChungPlusPlus Jan 11, 2025
9fe0593
공연 1개 상세 정보 반환
kdh8156 Jan 12, 2025
a3bc07a
minor modify: change how null type is handled
kdh8156 Jan 12, 2025
a7adbc0
origin main과 merge
kdh8156 Jan 12, 2025
a7beb9c
초기 데이터 수정, 공연이벤트는 일단 공연 기간의 첫날과 마지막날만 생성하였음
kdh8156 Jan 12, 2025
4030c83
modify DataInitializer, SeatIntegrationTest
kdh8156 Jan 12, 2025
ae82952
add PerformanceDetail Uri
kdh8156 Jan 13, 2025
8f20bdd
make PerformanceItegrationTest.kt
kdh8156 Jan 13, 2025
039623f
feat: 예매 동시성
ChungPlusPlus Jan 14, 2025
d5f24fa
feat: Get My Reservation Api
ChungPlusPlus Jan 14, 2025
841136b
feat: Seat Get TestCode
ChungPlusPlus Jan 14, 2025
5d97612
modify SearchPerformanceResponse
kdh8156 Jan 16, 2025
a401a9b
check auth for create, delete performance
kdh8156 Jan 16, 2025
a2faaa9
check auth for create, delete performanceEvent, performanceHall
kdh8156 Jan 16, 2025
b83a853
add posterUri attr to BriefPerformanceDetail
kdh8156 Jan 16, 2025
d0a22eb
minor change
kdh8156 Jan 16, 2025
96ac9a5
feat: 예매목록 Brief로 주기
ChungPlusPlus Jan 16, 2025
ea16879
fix: 로그아웃, 토큰 재발급
ChungPlusPlus Jan 16, 2025
79da9d8
add UserIdentityNotFoundException
kdh8156 Jan 17, 2025
be2e5bc
modify PerformanceDurtion
kdh8156 Jan 18, 2025
3c72299
backup <user> package to <archive/user_old>
kdh8156 Jan 18, 2025
eb34c29
fetch from origin/chung-dev
kdh8156 Jan 18, 2025
c5f9ecd
modify endpoint
kdh8156 Jan 18, 2025
f814f70
feat: 공연장 생성시 좌석도 함께 생성
ChungPlusPlus Jan 18, 2025
b01d049
Merge branch 'performance-dev' of https://github.com/wafflestudio/22-…
ChungPlusPlus Jan 18, 2025
f1839af
feat: seat 초기화 적용, 버그 수정
ChungPlusPlus Jan 18, 2025
433e6f4
공연 카테고리 검색, 상세 조회, 생성, 삭제 기능 구현 (#15)
kdh8156 Jan 19, 2025
b32f788
applying spring security
kdh8156 Jan 19, 2025
011c9d6
setup .env
kdh8156 Jan 19, 2025
ab58323
feat: Find PerformanceEvent
ChungPlusPlus Jan 19, 2025
d496918
Merge branch 'release-dev' of https://github.com/wafflestudio/22-5-te…
ChungPlusPlus Jan 19, 2025
f09a1b6
chore: .env 무시
ChungPlusPlus Jan 19, 2025
96c6ca5
merge release-dev 1.19
kdh8156 Jan 19, 2025
bf6b0ca
feat: Reinforce Simultaneous test code
ChungPlusPlus Jan 19, 2025
fbeb968
예매 동시성 처리, 로그인 엔드포인트 변경 (#18)
ChungPlusPlus Jan 20, 2025
65317f3
Merge remote-tracking branch 'origin/release-dev' into release-dev
kdh8156 Jan 20, 2025
578f24d
merge release-dev latest ver. 좌석 동시 예매 기능 추가
kdh8156 Jan 20, 2025
b23f74c
fix .http localhost port number
kdh8156 Jan 20, 2025
1d15af5
apply spring security
kdh8156 Jan 20, 2025
69e5c64
apply spring security
kdh8156 Jan 20, 2025
b29b0e1
minor
kdh8156 Jan 21, 2025
1598f5c
remove .env from tracked files
kdh8156 Jan 21, 2025
a0e7281
gitignore
kdh8156 Jan 21, 2025
cb2d903
remove unused method
kdh8156 Jan 21, 2025
6c227f8
minor
kdh8156 Jan 21, 2025
2c053fa
minor
kdh8156 Jan 21, 2025
cb67952
add new line at EOF
kdh8156 Jan 21, 2025
dd82fd3
modify jwtfilter comment
kdh8156 Jan 21, 2025
9d19828
convert Instant to KoreanLocalDateTime in PerformanceEventDTO
kdh8156 Jan 21, 2025
01ce970
add permission
kdh8156 Jan 21, 2025
dfe2232
feat: Review/Reply 연결
ChungPlusPlus Jan 21, 2025
65c5fb4
comment: user 설명 추가
ChungPlusPlus Jan 21, 2025
d1f129e
chore: 필요없는 코드 지우기
ChungPlusPlus Jan 21, 2025
eb299b8
feat: Sort Reviews and Replies
ChungPlusPlus Jan 22, 2025
469df9c
Spring security 적용 (#19)
kdh8156 Jan 22, 2025
5ce45b5
Merge branch 'release-dev' of https://github.com/wafflestudio/22-5-te…
ChungPlusPlus Jan 22, 2025
5749eeb
style: add new line at EOF
ChungPlusPlus Jan 22, 2025
181f2e4
throw AuthenticateException when accessToken is not valid
kdh8156 Jan 22, 2025
9510784
Review & Reply (#20)
ChungPlusPlus Jan 23, 2025
c6599aa
save
kdh8156 Jan 23, 2025
95fa741
Revert "Review & Reply (#20)" (#21)
ChungPlusPlus Jan 23, 2025
7dd9420
hotfix: test 안되던 오류 수정
ChungPlusPlus Jan 23, 2025
2a14088
빌드 안되던 버그 수정 (#22)
ChungPlusPlus Jan 23, 2025
8a846ee
roll back 401 -> 403 when access denied
kdh8156 Jan 24, 2025
c9e88c0
setup .env
kdh8156 Jan 19, 2025
4584d42
pull release-dev
kdh8156 Jan 24, 2025
4bfbbd4
fix: Change Reservation
ChungPlusPlus Jan 24, 2025
3a15d7c
CI: fixed CI (#23)
Grantzile Jan 25, 2025
dda436f
fix: error 핸들링
ChungPlusPlus Jan 25, 2025
8118dd6
fix: Seat Test
ChungPlusPlus Jan 25, 2025
7900d26
fix: test conflict resolve
ChungPlusPlus Jan 25, 2025
1c7c0c7
feat: Seat Api Test
ChungPlusPlus Jan 25, 2025
d725f93
fix: 예매 취소 POST -> DELETE
ChungPlusPlus Jan 25, 2025
1d63233
Reservation 수정 (#25)
ChungPlusPlus Jan 26, 2025
7e54f3a
add: Review, Reply DTO Instant -> LocalDatTime
ChungPlusPlus Jan 28, 2025
ef5cff5
feat: Cursor Pagination Tools
ChungPlusPlus Jan 28, 2025
a3de380
feat: CursorPageable 적용
ChungPlusPlus Jan 28, 2025
c3f33a7
fix: modify CursorPageable
ChungPlusPlus Jan 28, 2025
8c94658
fix: Reply Test
ChungPlusPlus Jan 28, 2025
530a874
social login 구현중 중간 save
kdh8156 Jan 29, 2025
933c087
setup .env
kdh8156 Jan 19, 2025
7248012
merge release-dev (reservation 수정 PR)
kdh8156 Jan 29, 2025
91d76d1
add SocialLoginApi.http
kdh8156 Jan 29, 2025
63178bd
remove .env
kdh8156 Jan 29, 2025
ac313e2
feat: response
ChungPlusPlus Jan 29, 2025
c25de03
write swagger api for socialauthcontroller
kdh8156 Jan 29, 2025
bd56d3d
modify social login api docs description
kdh8156 Jan 29, 2025
1f971d9
add social login query paramter explanations
kdh8156 Jan 29, 2025
a4a9bfb
fix: nextCursor 수정
ChungPlusPlus Jan 29, 2025
34d6d09
feat: Performance Pagination 완성
ChungPlusPlus Jan 29, 2025
550baf1
social endpoint permitall
kdh8156 Jan 30, 2025
55a99eb
feat: pagination 적용된 review 조회
ChungPlusPlus Jan 30, 2025
86ac001
social login receive socialAccessToken, not authorizatoinCode
kdh8156 Jan 30, 2025
5357a77
fix: Review Cursor
ChungPlusPlus Jan 30, 2025
576821f
feat: Reply에도 Cursor 적용
ChungPlusPlus Jan 30, 2025
15f2d39
fix: 엔드포인트 분리
ChungPlusPlus Jan 30, 2025
432057e
feat: performance 엔드포인트 분리
ChungPlusPlus Jan 30, 2025
a24a33d
feat: permitAll for pagination
ChungPlusPlus Jan 30, 2025
4127191
fix: test 코드 수정
ChungPlusPlus Jan 30, 2025
93c1172
fix: test 수정
ChungPlusPlus Jan 30, 2025
f57a99b
feat: Performance Search & Get Review 페이지네이션 적용 완료
ChungPlusPlus Jan 30, 2025
975ae22
modify makefile / test: h2 -> mysql
kdh8156 Jan 31, 2025
093d973
modify social login explanation
kdh8156 Jan 31, 2025
8d5dc55
feat: Exception 처리
ChungPlusPlus Jan 31, 2025
ee56ae0
fix: 기존 테스트 코드 유지
ChungPlusPlus Jan 31, 2025
8cee686
feat: Reply Pagination 완성
ChungPlusPlus Jan 31, 2025
a9c86be
Merge branch 'release-dev' of https://github.com/wafflestudio/22-5-te…
ChungPlusPlus Jan 31, 2025
84a55be
feat: Performance Date 추가
ChungPlusPlus Jan 31, 2025
223bbd3
CI: add env on CI
Grantzile Jan 31, 2025
997fb7e
CI: add check on pull_requests
Grantzile Jan 31, 2025
305b232
Pagination 구현 (#26)
ChungPlusPlus Jan 31, 2025
4f72da6
merge release-dev: pagination
kdh8156 Jan 31, 2025
1c560d5
rollback userservice.signup()
kdh8156 Jan 31, 2025
dcbb27a
rollback signup
kdh8156 Jan 31, 2025
e5c5c03
소셜 로그인 구현 (#27)
kdh8156 Jan 31, 2025
5f9b7fc
Merge branch 'main' into release-dev
kdh8156 Jan 31, 2025
ded76db
readme skeleton update
kdh8156 Jan 31, 2025
0dc0886
readme.md skeleton update (#29)
kdh8156 Jan 31, 2025
5ef75eb
feat: data 추가중
ChungPlusPlus Jan 31, 2025
2ccd258
Merge branch 'main' into chung-dev
ChungPlusPlus Jan 31, 2025
1f69f8c
feat: MUSICAL data 완료
ChungPlusPlus Jan 31, 2025
cf73e45
feat: PLAY 데이터 추가
ChungPlusPlus Feb 1, 2025
e53e122
feat: CLASSIC 데이터 추가
ChungPlusPlus Feb 1, 2025
95a87a5
feat: CONCERT 데이터 추가
ChungPlusPlus Feb 1, 2025
29becec
공연 데이터 추가 (#30)
ChungPlusPlus Feb 1, 2025
8046618
readme save
kdh8156 Feb 1, 2025
6c00e66
get readme from social-dev
kdh8156 Feb 1, 2025
d1a9a6c
feat: readMe 추가작성
ChungPlusPlus Feb 1, 2025
fef8734
Merge branch 'main' into chung-dev
ChungPlusPlus Feb 1, 2025
2aae42f
feat: Swaager summary
ChungPlusPlus Feb 1, 2025
4326b37
feat: Swagger summary for UserController
ChungPlusPlus Feb 1, 2025
65cd2a5
CI: remove pull request trigger
Grantzile Feb 2, 2025
4aa6471
CD: add --build on rerun script
Grantzile Feb 2, 2025
76c7141
read me save
kdh8156 Feb 2, 2025
72d4747
feat: Cascade 설정 (#31)
ChungPlusPlus Feb 2, 2025
32a2985
merge rel-dev
kdh8156 Feb 2, 2025
ea5f96e
Merge remote-tracking branch 'origin/release-dev' into release-dev
kdh8156 Feb 2, 2025
4b7c930
readme save
kdh8156 Feb 2, 2025
3a56e81
readme save
kdh8156 Feb 2, 2025
a972fc0
fix: README.md
Grantzile Feb 2, 2025
f84a7f0
readme save
kdh8156 Feb 2, 2025
06f9572
feat: add stack
Grantzile Feb 2, 2025
cb03856
feat: add language
Grantzile Feb 2, 2025
f754df7
Merge branch 'main' of https://github.com/wafflestudio/22-5-team4-ser…
ChungPlusPlus Feb 2, 2025
a3a7de5
Merge branch 'release-dev' of https://github.com/wafflestudio/22-5-te…
ChungPlusPlus Feb 2, 2025
44342c2
readme save
kdh8156 Feb 2, 2025
ad34b19
readme save
kdh8156 Feb 2, 2025
39ee17b
Merge remote-tracking branch 'origin/release-dev' into release-dev
kdh8156 Feb 2, 2025
4af3d73
feat: add redis
Grantzile Feb 2, 2025
71f8dd6
remove --- lines
kdh8156 Feb 2, 2025
3e63c66
Merge remote-tracking branch 'origin/release-dev' into release-dev
kdh8156 Feb 2, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat: Swaager summary
  • Loading branch information
ChungPlusPlus committed Feb 1, 2025
commit 2aae42fd1878a6e237f75bd19b3f15304bccf07a
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,10 @@ class PerformanceController(
}

@GetMapping("/api/v2/performance/search")
@Operation(
summary = "페이지네이션이 적용된 공연 조회",
description = "제목과 카테고리에 해당하는 공연들의 리스트를 반환합니다."
)
fun searchCursorPerformance(
@RequestParam title: String?,
@RequestParam category: PerformanceCategory?,
Expand All @@ -47,6 +51,10 @@ class PerformanceController(
// WARN: THIS IS FOR ADMIN.
// TODO: SEPERATE THIS TO OTHER APPLICATION
@PostMapping("/admin/v1/performance")
@Operation(
summary = "공연 생성",
description = "관리자가 공연을 생성할 수 있습니다."
)
fun createPerformance(
@Valid @RequestBody request: CreatePerformanceRequest,
@AuthenticationPrincipal userDetails: UserDetailsImpl,
Expand Down Expand Up @@ -76,6 +84,10 @@ class PerformanceController(
}

@DeleteMapping("/admin/v1/performance/{performanceId}")
@Operation(
summary = "공연 삭제",
description = "관리자가 공연을 삭제할 수 있습니다."
)
fun deletePerformance(
@PathVariable performanceId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package com.wafflestudio.interpark.performance.controller

import com.wafflestudio.interpark.performance.service.PerformanceEventService
import com.wafflestudio.interpark.user.controller.UserDetailsImpl
import io.swagger.v3.oas.annotations.Operation
import org.springframework.http.HttpStatus
import org.springframework.http.ResponseEntity
import org.springframework.security.core.annotation.AuthenticationPrincipal
Expand All @@ -14,6 +15,9 @@ class PerformanceEventController(
private val performanceEventService: PerformanceEventService,
) {
@GetMapping("/api/v1/performance-event")
@Operation(
summary = "전체 공연이벤트 조회",
)
fun getPerformanceEvent(
): ResponseEntity<GetPerformanceEventResponse> {
// Currently, no search
Expand All @@ -23,6 +27,10 @@ class PerformanceEventController(
}

@GetMapping("/api/v1/performance-event/{performanceId}/{performanceDate}")
@Operation(
summary = "특정 공연의 공연이벤트 조회",
description = "공연와 특정 공연일이 주어졌을 때 실제 이루어지는 공연들의 정보를 반환합니다."
)
fun getPerformanceEventFromDate(
@PathVariable performanceId: String,
@PathVariable performanceDate: String,
Expand All @@ -38,6 +46,9 @@ class PerformanceEventController(
// WARN: THIS IS FOR ADMIN.
// TODO: SEPERATE THIS TO OTHER APPLICATION
@PostMapping("/admin/v1/performance-event")
@Operation(
summary = "공연이벤트 생성",
)
fun createPerformanceEvent(
@RequestBody request: CreatePerformanceEventRequest,
@AuthenticationPrincipal userDetails: UserDetailsImpl,
Expand All @@ -54,6 +65,9 @@ class PerformanceEventController(
}

@DeleteMapping("/admin/v1/performance-event/{performanceEventId}")
@Operation(
summary = "공연이벤트 삭제",
)
fun deletePerformanceEvent(
@PathVariable performanceEventId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package com.wafflestudio.interpark.performance.controller

import com.wafflestudio.interpark.performance.service.PerformanceHallService
import com.wafflestudio.interpark.user.controller.UserDetailsImpl
import io.swagger.v3.oas.annotations.Operation
import org.springframework.http.HttpStatus
import org.springframework.http.ResponseEntity
import org.springframework.security.core.annotation.AuthenticationPrincipal
Expand All @@ -12,6 +13,9 @@ class PerformanceHallController(
private val performanceHallService: PerformanceHallService,
) {
@GetMapping("/api/v1/performance-hall")
@Operation(
summary = "전체 공연장 조회",
)
fun getPerformanceHall(
): ResponseEntity<GetPerformanceHallResponse> {
// Currently, no search
Expand All @@ -23,6 +27,9 @@ class PerformanceHallController(
// WARN: THIS IS FOR ADMIN.
// TODO: SEPERATE THIS TO OTHER APPLICATION
@PostMapping("/admin/v1/performance-hall")
@Operation(
summary = "공연장 생성",
)
fun createPerformanceHall(
@RequestBody request: CreatePerformanceHallRequest,
@AuthenticationPrincipal userDetails: UserDetailsImpl,
Expand All @@ -38,6 +45,9 @@ class PerformanceHallController(
}

@DeleteMapping("/admin/v1/performance-hall/{performanceHallId}")
@Operation(
summary = "공연장 삭제",
)
fun deletePerformance(
@PathVariable performanceHallId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import com.wafflestudio.interpark.pagination.CursorPageResponse
import com.wafflestudio.interpark.pagination.CursorPageable
import com.wafflestudio.interpark.review.service.ReplyService
import com.wafflestudio.interpark.user.controller.UserDetailsImpl
import io.swagger.v3.oas.annotations.Operation
import org.springframework.http.ResponseEntity
import org.springframework.security.core.annotation.AuthenticationPrincipal
import org.springframework.web.bind.annotation.*
Expand All @@ -13,6 +14,10 @@ class ReplyController(
private val replyService: ReplyService,
) {
@GetMapping("/api/v1/me/reply")
@Operation(
summary = "본인의 댓글 조회",
description = "본인이 작성한 댓글들을 조회할 수 있습니다."
)
fun getRepliesByUser(
@AuthenticationPrincipal userDetails: UserDetailsImpl
): ResponseEntity<GetReplyResponse>{
Expand All @@ -21,6 +26,10 @@ class ReplyController(
}

@GetMapping("/api/v1/review/{reviewId}/reply")
@Operation(
summary = "리뷰의 댓글 조회",
description = "특정 리뷰에 달린 댓글들을 조회할 수 있습니다."
)
fun getReplies(
@PathVariable reviewId: String,
): ResponseEntity<GetReplyResponse>{
Expand All @@ -29,6 +38,10 @@ class ReplyController(
}

@GetMapping("/api/v2/review/{reviewId}/reply")
@Operation(
summary = "페이지네이션이 적용된 리뷰의 댓글 조회",
description = "특정 리뷰에 달린 댓글들을 조회할 수 있습니다."
)
fun getCursorReplies(
@PathVariable reviewId: String,
@RequestParam cursor: String?,
Expand All @@ -39,6 +52,9 @@ class ReplyController(
}

@PostMapping("/api/v1/review/{reviewId}/reply")
@Operation(
summary = "댓글 작성",
)
fun createReply(
@RequestBody request: CreateReplyRequest,
@PathVariable reviewId: String,
Expand All @@ -49,6 +65,9 @@ class ReplyController(
}

@PutMapping("/api/v1/reply/{replyId}")
@Operation(
summary = "댓글 수정",
)
fun editReply(
@RequestBody request: EditReplyRequest,
@PathVariable replyId: String,
Expand All @@ -59,6 +78,9 @@ class ReplyController(
}

@DeleteMapping("/api/v1/reply/{replyId}")
@Operation(
summary = "댓글 삭제",
)
fun deleteReply(
@PathVariable replyId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import com.wafflestudio.interpark.review.*
import com.wafflestudio.interpark.review.service.ReplyService
import com.wafflestudio.interpark.review.service.ReviewService
import com.wafflestudio.interpark.user.controller.UserDetailsImpl
import io.swagger.v3.oas.annotations.Operation
import org.springframework.http.ResponseEntity
import org.springframework.security.core.annotation.AuthenticationPrincipal
import org.springframework.web.bind.annotation.*
Expand All @@ -16,6 +17,10 @@ class ReviewController(
) {

@GetMapping("/api/v1/me/review")
@Operation(
summary = "작성한 리뷰 조회",
description = "본인이 작성했던 리뷰들을 조회할 수 있습니다."
)
fun getMyReviews(
@AuthenticationPrincipal userDetails: UserDetailsImpl
): ResponseEntity<GetReviewResponse>{
Expand All @@ -24,6 +29,10 @@ class ReviewController(
}

@GetMapping("/api/v1/performance/{performanceId}/review")
@Operation(
summary = "공연의 리뷰 조회",
description = "특정 공연에 달린 리뷰들을 조회할 수 있습니다."
)
fun getReviews(
@PathVariable performanceId: String,
): ResponseEntity<GetReviewResponse>{
Expand All @@ -32,6 +41,10 @@ class ReviewController(
}

@GetMapping("/api/v2/performance/{performanceId}/review")
@Operation(
summary = "페이지네이션이 적용된 공연의 리뷰 조회",
description = "특정 공연에 달린 리뷰들을 조회할 수 있습니다."
)
fun getCursorReviews(
@PathVariable performanceId: String,
@RequestParam cursor: String?,
Expand All @@ -42,6 +55,9 @@ class ReviewController(
}

@PostMapping("/api/v1/performance/{performanceId}/review")
@Operation(
summary = "리뷰 작성",
)
fun createReview(
@RequestBody request: CreateReviewRequest,
@PathVariable performanceId: String,
Expand All @@ -52,6 +68,9 @@ class ReviewController(
}

@PutMapping("/api/v1/review/{reviewId}")
@Operation(
summary = "리뷰 수정",
)
fun editReview(
@RequestBody request: EditReviewRequest,
@PathVariable reviewId: String,
Expand All @@ -62,6 +81,9 @@ class ReviewController(
}

@DeleteMapping("/api/v1/review/{reviewId}")
@Operation(
summary = "리뷰 삭제",
)
fun deleteReview(
@PathVariable reviewId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl
Expand All @@ -71,6 +93,9 @@ class ReviewController(
}

@PostMapping("/api/v1/review/{reviewId}/like")
@Operation(
summary = "리뷰 공감",
)
fun likeReview(
@PathVariable reviewId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl
Expand All @@ -80,6 +105,9 @@ class ReviewController(
}

@DeleteMapping("/api/v1/review/{reviewId}/like")
@Operation(
summary = "리뷰 공감 취소",
)
fun cancelLikeReview(
@PathVariable reviewId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import com.wafflestudio.interpark.seat.service.SeatService
import com.wafflestudio.interpark.user.AuthUser
import com.wafflestudio.interpark.user.controller.User
import com.wafflestudio.interpark.user.controller.UserDetailsImpl
import io.swagger.v3.oas.annotations.Operation
import org.springframework.http.ResponseEntity
import org.springframework.security.core.annotation.AuthenticationPrincipal
import org.springframework.web.bind.annotation.DeleteMapping
Expand All @@ -19,6 +20,10 @@ class SeatController(
private val seatService: SeatService,
) {
@GetMapping("/api/v1/seat/{performanceEventId}/available")
@Operation(
summary = "예매가능한 좌석 조회",
description = "구체적인 공연이 주어졌을 때 그 공연에서 예매할 수 있는 좌석들을 알려줍니다."
)
fun getAvailableSeats(
@PathVariable performanceEventId: String,
): ResponseEntity<GetAvailableSeatsResponse> {
Expand All @@ -27,6 +32,10 @@ class SeatController(
}

@PostMapping("/api/v1/reservation/reserve")
@Operation(
summary = "예매",
description = "좌석을 선택해서 예매할 수 있습니다. 예매에 실패하면 409가 반환됩니다."
)
fun reserveSeat(
@RequestBody request: ReserveSeatRequest,
@AuthenticationPrincipal userDetails: UserDetailsImpl
Expand All @@ -36,6 +45,10 @@ class SeatController(
}

@GetMapping("/api/v1/me/reservation")
@Operation(
summary = "본인의 예매내역 조회",
description = "본인이 예매한 내역을 예매정보를 간략화 한 배열로 반환합니다.\n더 구체적인 정보가 필요하다면 /api/v1/reservation/detail/{reservationId}를 사용해야 합니다."
)
fun getMyReservations(
@AuthenticationPrincipal userDetails: UserDetailsImpl
): ResponseEntity<GetMyReservationsResponse> {
Expand All @@ -44,6 +57,10 @@ class SeatController(
}

@GetMapping("/api/v1/reservation/detail/{reservationId}")
@Operation(
summary = "본인의 예매 자세히 보기",
description = "본인의 예매 중 하나를 선택해 자세한 정보를 받을 수 있습니다."
)
fun getReservedSeatDetail(
@PathVariable reservationId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl
Expand All @@ -53,6 +70,10 @@ class SeatController(
}

@DeleteMapping("/api/v1/reservation/{reservationId}")
@Operation(
summary = "예매 취소",
description = "본인의 예매 중 하나를 선택해 취소할 수 있습니다."
)
fun cancelReservedSeat(
@PathVariable reservationId: String,
@AuthenticationPrincipal userDetails: UserDetailsImpl
Expand Down