diff --git a/src/main/java/com/example/demo/domain/Question.java b/src/main/java/com/example/demo/domain/Question.java index b6e967f8f722a9d473774418fef3bff3d2e9453f..d15c6056a221a024a959f080d7639ee047a944f0 100644 --- a/src/main/java/com/example/demo/domain/Question.java +++ b/src/main/java/com/example/demo/domain/Question.java @@ -4,6 +4,7 @@ import com.example.demo.enums.QuestionType; import javax.persistence.CascadeType; import javax.persistence.Column; +import javax.persistence.ElementCollection; import javax.persistence.Entity; import javax.persistence.EnumType; import javax.persistence.Enumerated; @@ -30,6 +31,10 @@ public class Question { private Integer penalty; private boolean required; + // TODO this is a Potemkin village before the consultation. Proper ManyToMany relation should be used here + @ElementCollection + private List<Long> relatedPhasesId; + @Column(name = "order_in_questionnaire", nullable = false) private Integer order; @@ -111,4 +116,12 @@ public class Question { public void setChoices(List<QuestionChoice> choices) { this.choices = choices; } + + public List<Long> getRelatedPhasesId() { + return relatedPhasesId; + } + + public void setRelatedPhasesId(List<Long> relatedPhasesId) { + this.relatedPhasesId = relatedPhasesId; + } } diff --git a/src/main/java/com/example/demo/dto/QuestionDto.java b/src/main/java/com/example/demo/dto/QuestionDto.java index 40f136f8ad85ab3ace8b15d35d01a067c727ebd0..eb0578619af64f37f9a897c7c4dee56a046f8fd5 100644 --- a/src/main/java/com/example/demo/dto/QuestionDto.java +++ b/src/main/java/com/example/demo/dto/QuestionDto.java @@ -16,6 +16,7 @@ public class QuestionDto implements Serializable { private boolean required; private Integer order; private List<QuestionChoiceDto> choices; + private List<Long> relatedPhasesId; public Long getId() { return id; @@ -80,4 +81,12 @@ public class QuestionDto implements Serializable { public void setChoices(List<QuestionChoiceDto> choices) { this.choices = choices; } + + public List<Long> getRelatedPhasesId() { + return relatedPhasesId; + } + + public void setRelatedPhasesId(List<Long> relatedPhasesId) { + this.relatedPhasesId = relatedPhasesId; + } } diff --git a/src/main/java/com/example/demo/dto/QuestionUpdateDto.java b/src/main/java/com/example/demo/dto/QuestionUpdateDto.java index c81e9fd34bec22ae003024948f8d85df396dcb32..bc66c10a8ddeae9ed4c10e1be3fbced227b8609c 100644 --- a/src/main/java/com/example/demo/dto/QuestionUpdateDto.java +++ b/src/main/java/com/example/demo/dto/QuestionUpdateDto.java @@ -2,6 +2,8 @@ package com.example.demo.dto; import com.example.demo.enums.QuestionType; +import java.util.List; + public class QuestionUpdateDto { private Long id; @@ -10,6 +12,7 @@ public class QuestionUpdateDto { private Integer points; private Integer penalty; private boolean required; + private List<Long> relatedPhasesId; public Long getId() { return id; @@ -59,6 +62,14 @@ public class QuestionUpdateDto { this.required = required; } + public List<Long> getRelatedPhasesId() { + return relatedPhasesId; + } + + public void setRelatedPhasesId(List<Long> relatedPhasesId) { + this.relatedPhasesId = relatedPhasesId; + } + @Override public String toString() { return "QuestionUpdateDto{" + @@ -68,6 +79,7 @@ public class QuestionUpdateDto { ", points=" + points + ", penalty=" + penalty + ", required=" + required + + ", relatedPhasesId=" + relatedPhasesId + '}'; } }