-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathSaveAndGetQuestionRequest.java
More file actions
51 lines (42 loc) · 1.72 KB
/
SaveAndGetQuestionRequest.java
File metadata and controls
51 lines (42 loc) · 1.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package com.ourmenu.backend.domain.home.dto;
import com.ourmenu.backend.domain.cache.application.UrlConverterService;
import com.ourmenu.backend.domain.home.domain.Answer;
import com.ourmenu.backend.domain.home.domain.HomeQuestionAnswer;
import com.ourmenu.backend.domain.home.domain.Question;
import java.util.List;
import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
@AllArgsConstructor(access = AccessLevel.PRIVATE)
@Getter
@Builder(access = AccessLevel.PRIVATE)
public class SaveAndGetQuestionRequest {
private String question;
private List<AnswerDto> answers;
public static SaveAndGetQuestionRequest from(HomeQuestionAnswer homeQuestionAnswer,
UrlConverterService urlConverterService) {
Question question = homeQuestionAnswer.getQuestion();
Answer answer1 = question.getAnswer1();
AnswerDto answerDto1 = AnswerDto.builder()
.answer(answer1)
.answerImgUrl(urlConverterService.getAnswerImgUrl(answer1))
.build();
Answer answer2 = question.getAnswer2();
AnswerDto answerDto2 = AnswerDto.builder()
.answer(answer2)
.answerImgUrl(urlConverterService.getAnswerImgUrl(answer2))
.build();
return SaveAndGetQuestionRequest.builder()
.question(question.getQuestion())
.answers(List.of(answerDto1, answerDto2))
.build();
}
@AllArgsConstructor(access = AccessLevel.PRIVATE)
@Getter
@Builder(access = AccessLevel.PRIVATE)
private static class AnswerDto {
private Answer answer;
private String answerImgUrl;
}
}