Generate question bank domain model from JDL

This commit is contained in:
jieun committed 2026-10-20 18:46:29 +09:00
1 parent 1d97cc4e31
commit 1d74d8f04b
160 files changed
+26900 -2

No files matched your search

@@ -0,0 +1,147 @@
package com.example.questionbank.service.dto;
import com.example.questionbank.domain.enumeration.OptionKey;
import jakarta.validation.constraints.*;
import java.io.Serializable;
import java.util.Objects;
/**
* A DTO for the {@link com.example.questionbank.domain.ExamAnswer} entity.
*/
@SuppressWarnings("common-java:DuplicatedBlocks")
public class ExamAnswerDTO implements Serializable {
private Long id;
@NotNull
@Size(max = 2000)
private String questionTextSnapshot;
@Size(max = 2000)
private String explanationSnapshot;
private OptionKey selectedOption;
@Size(max = 500)
private String selectedContentSnapshot;
private Boolean correct;
@Min(value = 0)
private Integer awardedPoints;
@NotNull
private QuestionDTO question;
@NotNull
private ExamAttemptDTO attempt;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getQuestionTextSnapshot() {
return questionTextSnapshot;
}
public void setQuestionTextSnapshot(String questionTextSnapshot) {
this.questionTextSnapshot = questionTextSnapshot;
}
public String getExplanationSnapshot() {
return explanationSnapshot;
}
public void setExplanationSnapshot(String explanationSnapshot) {
this.explanationSnapshot = explanationSnapshot;
}
public OptionKey getSelectedOption() {
return selectedOption;
}
public void setSelectedOption(OptionKey selectedOption) {
this.selectedOption = selectedOption;
}
public String getSelectedContentSnapshot() {
return selectedContentSnapshot;
}
public void setSelectedContentSnapshot(String selectedContentSnapshot) {
this.selectedContentSnapshot = selectedContentSnapshot;
}
public Boolean getCorrect() {
return correct;
}
public void setCorrect(Boolean correct) {
this.correct = correct;
}
public Integer getAwardedPoints() {
return awardedPoints;
}
public void setAwardedPoints(Integer awardedPoints) {
this.awardedPoints = awardedPoints;
}
public QuestionDTO getQuestion() {
return question;
}
public void setQuestion(QuestionDTO question) {
this.question = question;
}
public ExamAttemptDTO getAttempt() {
return attempt;
}
public void setAttempt(ExamAttemptDTO attempt) {
this.attempt = attempt;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof ExamAnswerDTO)) {
return false;
}
ExamAnswerDTO examAnswerDTO = (ExamAnswerDTO) o;
if (this.id == null) {
return false;
}
return Objects.equals(this.id, examAnswerDTO.id);
}
@Override
public int hashCode() {
return Objects.hash(this.id);
}
// prettier-ignore
@Override
public String toString() {
return "ExamAnswerDTO{" +
"id=" + getId() +
", questionTextSnapshot='" + getQuestionTextSnapshot() + "'" +
", explanationSnapshot='" + getExplanationSnapshot() + "'" +
", selectedOption='" + getSelectedOption() + "'" +
", selectedContentSnapshot='" + getSelectedContentSnapshot() + "'" +
", correct='" + getCorrect() + "'" +
", awardedPoints=" + getAwardedPoints() +
", question=" + getQuestion() +
", attempt=" + getAttempt() +
"}";
}
}