-
Notifications
You must be signed in to change notification settings - Fork 3
[feat] 이미지 퀴즈 추가 #186
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
[feat] 이미지 퀴즈 추가 #186
Conversation
|
먼저 많은 양 해주시느라 너무 고생 많으셨습니다 감사합니다! |
| String destination = getDestination(roomId); | ||
| String userDestination = getUserDestination(); | ||
|
|
||
| Long quizId = room.getGameSetting().getQuizId(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[L4-변경제안]
Room 클래스에 getQuiz() 메서드가 존재하는 걸로 알고 있습니다!
room.getQuizId()로 퀴즈아이디를 가져와도 좋을 것 같습니다!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
확인해 보니 room 클래스 내부에 getQuizId 메서드가 있는 것을 확인하여 수정했습니다.
감사합니다!
|
[L4-변경제안]
|
퀴즈 서비스에서 말씀하신 코드를 살펴보니 deleteQuestion 메서드로 대체하는 것이 코드가 깔끔해지고 재사용성도 챙길 수 있는 좋은 방법인 것 같습니다. |
LimKangHyun
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
텍스트 퀘스천 테이블을 ContentQeustion으로 바꾸어 텍스트와 이미지 타입 퀴즈까지 활용하신 부분이
좋은 것 같습니다. 고생하셨습니다!
jiwon1217
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
많은 양을 작업하시느라 고생하셨습니다 ! 이미지 퀴즈가 추가됨에 따라 발생한 구조 변화나 API 분리 등 다양한 이슈에 잘 대응해주신 것 같습니다 !
sehee123
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
수고하셨습니다! 👏
🛰️ Issue Number
🪐 작업 내용
TextQuestion을 ContentQuestion으로 변경
작업 목적
텍스트 문제와 이미지 문제의 공통점은 문제(content)와 정답(answer)으로 이루어져 있다는 점입니다.
텍스트 문제의 content는 "1+1은 무엇인가?"와 같은 VARCHAR 값이 들어갈 것이고,
이미지 문제의 content는 "images/question/UUID.png"와 같은 VARCHAR 값이 들어갈 것입니다.
따라서, 기존 content를 담고 있던 TextQuestion을 ContentQuestion으로 변경해 텍스트 문제와 이미지 문제 모두 사용할 수 있도록 했습니다.
변경 내용
텍스트와 이미지 문제에 대한 API 분리
작업 목적
이미지 퀴즈는 각 문제에 대한 content를 MultipartFile로 요청받아야 하며, API의 역할 또한 명백하게 분리됩니다.
따라서 텍스트 퀴즈와 이미지 퀴즈 생성에 대한 API를 분리했으며, 이는
/quizzes/text및/quizzes/image각각의 엔드포인트를 갖도록 설계했습니다.업데이트에 대한 API도 위와 같은 이유로
/quizzes/text/{quizId}및/quizzes/image/{quizId}두 엔드포인트로 분리했습니다.변경 내용
문제 삭제 API 변경
작업 목적
기존 문제 삭제는 삭제가 필요한 각 문제마다 요청을 보내 n개의 문제 삭제가 필요할 경우 n개의 요청이 발생하는 형태였습니다.
이를 개선하기 위해, 삭제가 필요한 문제 id들을 담아 하나의 요청으로 처리할 수 있도록 QuizController에
/quizzes/{quizId}/questionsAPI를 추가했으며, 기존 QuestionController의 API는 삭제했습니다.변경 내용
GAME_START 메시지 수정
작업 목적
텍스트 퀴즈와 이미지 퀴즈는 ContentQuestion 엔티티를 공유 사용합니다.
하지만, 프론트엔드에서는 이를 구분해 렌더링해야 하기 때문에 GAME_START 메시지에 quizType 항목을 추가했습니다.
변경 내용
기타 수정 사항
기타 전달 사항
📚 Reference
max-part-count
✅ Check List