feat: provider에 대한 리뷰를 추가할 수 있는 form 구현#73
Merged
hyoungjoojin merged 3 commits intoskkil:developfrom Feb 20, 2026
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This PR implements a review creation form for providers (specifically schools) as part of integrating the server's review functionality with the web client. The implementation includes both frontend and backend components to support submitting and storing provider reviews.
Changes:
- Added a review submission form dialog with rating fields for academic quality, campus facilities, student life, and value for money
- Implemented backend API endpoint, service, and data models for creating reviews with discriminated union pattern for different provider types
- Added new UI components (Rating, Checkbox) to support the review form interface
Reviewed changes
Copilot reviewed 18 out of 18 changed files in this pull request and generated 14 comments.
Show a summary per file
| File | Description |
|---|---|
| apps/web/src/features/review/api/create-review.ts | API mutation hook for submitting reviews |
| apps/web/src/features/provider/components/ProviderReviewDialog.tsx | Review form dialog component with validation |
| apps/web/src/features/provider/components/ProviderOverview.tsx | Integration of review dialog into provider page |
| apps/web/src/components/ui/rating.tsx | New star rating component with half-star precision |
| apps/web/src/components/ui/checkbox.tsx | New checkbox component wrapper |
| apps/web/public/locales/ko.json | Korean localization for review form fields |
| apps/server/src/main/java/com/skkil/sync/review/controller/ReviewController.java | REST controller for review endpoints |
| apps/server/src/main/java/com/skkil/sync/review/service/ReviewService.java | Service layer for review business logic |
| apps/server/src/main/java/com/skkil/sync/review/mapper/ReviewMapper.java | MapStruct mapper for DTO to entity conversion |
| apps/server/src/main/java/com/skkil/sync/review/dto/request/*.java | Request DTOs with sealed interface pattern |
| apps/server/src/main/java/com/skkil/sync/review/model/*.java | Review entity models with discriminated union |
| apps/server/src/main/java/com/skkil/sync/provider/model/School.java | Added ID-only constructor for entity references |
| apps/server/build.gradle | Added MapStruct dependency |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
apps/server/src/main/java/com/skkil/sync/review/controller/ReviewController.java
Show resolved
Hide resolved
apps/server/src/main/java/com/skkil/sync/review/dto/request/CreateSchoolReviewRequest.java
Show resolved
Hide resolved
apps/web/src/features/provider/components/ProviderReviewDialog.tsx
Outdated
Show resolved
Hide resolved
apps/web/src/features/provider/components/ProviderReviewDialog.tsx
Outdated
Show resolved
Hide resolved
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
어떤 변경 사항이 있나요?
리뷰를 생성할 수 있도록 웹 클라이언트에 폼을 추가했습니다. 규모가 너무 커질 것 같아 이슈를 쪼개서 해결하기로 결정했습니다.
PR Checklist
Other
Screenshots / Videos (Optional)