Skip to content
Snippets Groups Projects
Commit 61aac96f authored by Jan Tymel's avatar Jan Tymel
Browse files

[Cleanup] Task is no longer a subclass of AbstractPhase

parent 3fe63736
No related branches found
No related tags found
No related merge requests found
package com.example.demo.domain;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.ManyToOne;
@Entity
public class Task extends AbstractPhase {
public class Task {
@Id
@GeneratedValue
private Long id;
private String title;
private String content;
private String flag;
private String solution;
private Long incorrectFlagLimit;
@Column(name = "order_in_training_phase", nullable = false)
private Integer order;
@ManyToOne(fetch = FetchType.LAZY)
private TrainingPhase trainingPhase;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public Integer getOrder() {
return order;
}
public void setOrder(Integer order) {
this.order = order;
}
public String getContent() {
return content;
}
......@@ -56,10 +91,17 @@ public class Task extends AbstractPhase {
this.trainingPhase = trainingPhase;
}
@Override
public String toString() {
return "Task{" + "content='" + content + '\'' + ", flag='" +
flag + '\'' + ", solution='" + solution + '\'' + ", incorrectFlagLimit=" + incorrectFlagLimit +
super.toString();
return "Task{" +
"id=" + id +
", title='" + title + '\'' +
", content='" + content + '\'' +
", flag='" + flag + '\'' +
", solution='" + solution + '\'' +
", incorrectFlagLimit=" + incorrectFlagLimit +
", order=" + order +
'}';
}
}
......@@ -2,13 +2,40 @@ package com.example.demo.dto;
import java.io.Serializable;
public class TaskDto extends AbstractPhaseDto implements Serializable {
public class TaskDto implements Serializable {
private Long id;
private String title;
private Integer order;
private String content;
private String flag;
private String solution;
private Long incorrectFlagLimit;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public Integer getOrder() {
return order;
}
public void setOrder(Integer order) {
this.order = order;
}
public String getContent() {
return content;
}
......@@ -44,10 +71,13 @@ public class TaskDto extends AbstractPhaseDto implements Serializable {
@Override
public String toString() {
return "TaskDto{" +
"content='" + content + '\'' +
"id=" + id +
", title='" + title + '\'' +
", order=" + order +
", content='" + content + '\'' +
", flag='" + flag + '\'' +
", solution='" + solution + '\'' +
", incorrectFlagLimit='" + incorrectFlagLimit + '\'' +
", incorrectFlagLimit=" + incorrectFlagLimit +
"} " + super.toString();
}
}
......@@ -2,7 +2,6 @@ package com.example.demo.enums;
public enum PhaseType {
QUESTIONNAIRE,
task, // TODO remove once Task is not a subclass of BaseLevel
INFO,
GAME,
}
......@@ -3,28 +3,28 @@ package com.example.demo.mapper;
import com.example.demo.domain.AbstractPhase;
import com.example.demo.domain.DecisionMatrixRow;
import com.example.demo.domain.InfoPhase;
import com.example.demo.domain.QuestionPhaseRelation;
import com.example.demo.domain.QuestionnairePhase;
import com.example.demo.domain.TrainingPhase;
import com.example.demo.domain.Question;
import com.example.demo.domain.QuestionChoice;
import com.example.demo.domain.QuestionPhaseRelation;
import com.example.demo.domain.QuestionnairePhase;
import com.example.demo.domain.Task;
import com.example.demo.domain.TrainingPhase;
import com.example.demo.dto.AbstractPhaseDto;
import com.example.demo.dto.DecisionMatrixRowDto;
import com.example.demo.dto.InfoPhaseDto;
import com.example.demo.dto.InfoPhaseUpdateDto;
import com.example.demo.dto.QuestionPhaseRelationDto;
import com.example.demo.dto.QuestionRequiredIdDto;
import com.example.demo.dto.TrainingPhaseDto;
import com.example.demo.dto.TrainingPhaseUpdateDto;
import com.example.demo.dto.QuestionChoiceDto;
import com.example.demo.dto.QuestionDto;
import com.example.demo.dto.QuestionPhaseRelationDto;
import com.example.demo.dto.QuestionRequiredIdDto;
import com.example.demo.dto.QuestionUpdateDto;
import com.example.demo.dto.QuestionnairePhaseDto;
import com.example.demo.dto.QuestionnaireUpdateDto;
import com.example.demo.dto.TaskCreateDto;
import com.example.demo.dto.TaskDto;
import com.example.demo.dto.TaskUpdateDto;
import com.example.demo.dto.TrainingPhaseDto;
import com.example.demo.dto.TrainingPhaseUpdateDto;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.factory.Mappers;
......@@ -43,8 +43,6 @@ public interface BeanMapper {
abstractPhaseDto = toDto((TrainingPhase) abstractPhase);
} else if (abstractPhase instanceof InfoPhase) {
abstractPhaseDto = toDto((InfoPhase) abstractPhase);
} else if (abstractPhase instanceof Task) {
abstractPhaseDto = toDto((Task) abstractPhase);
} else if (abstractPhase instanceof QuestionnairePhase) {
abstractPhaseDto = toDto((QuestionnairePhase) abstractPhase);
} else {
......@@ -56,7 +54,6 @@ public interface BeanMapper {
List<AbstractPhaseDto> toDtoList(List<AbstractPhase> abstractPhase);
@Mapping(target = "phaseType", constant = "task")
TaskDto toDto(Task task);
Task toEntity(TaskDto taskDto);
......
package com.example.demo.service;
import com.example.demo.domain.TrainingPhase;
import com.example.demo.domain.Task;
import com.example.demo.domain.TrainingPhase;
import com.example.demo.dto.TaskCreateDto;
import com.example.demo.dto.TaskDto;
import com.example.demo.dto.TaskUpdateDto;
import com.example.demo.mapper.BeanMapper;
import com.example.demo.repository.TrainingPhaseRepository;
import com.example.demo.repository.TaskRepository;
import com.example.demo.repository.TrainingPhaseRepository;
import org.apache.commons.collections4.IterableUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -115,7 +115,6 @@ public class TaskService {
// TODO add check to trainingDefinitionId and phaseId (field structure will be probably changed)
taskUpdate.setTrainingPhase(persistedTask.getTrainingPhase());
taskUpdate.setTrainingDefinitionId(persistedTask.getTrainingDefinitionId());
taskUpdate.setOrder(persistedTask.getOrder());
Task savedEntity = taskRepository.save(taskUpdate);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment