Skip to content
Snippets Groups Projects
Commit e7a1978d authored by evilimkova's avatar evilimkova
Browse files

Adding CourseCertificateDto - do not pass students

parent 232d51e0
No related branches found
No related tags found
1 merge request!36M2 fix certificate
...@@ -4,7 +4,7 @@ import jakarta.validation.Valid; ...@@ -4,7 +4,7 @@ import jakarta.validation.Valid;
import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.NotNull;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import org.fuseri.model.dto.course.CourseDto; import org.fuseri.model.dto.course.CourseCertificateDto;
import org.fuseri.model.dto.user.UserDto; import org.fuseri.model.dto.user.UserDto;
...@@ -20,9 +20,9 @@ public class CertificateCreateDto { ...@@ -20,9 +20,9 @@ public class CertificateCreateDto {
private UserDto user; private UserDto user;
@NotNull @NotNull
@Valid @Valid
private CourseDto course; private CourseCertificateDto course;
public CertificateCreateDto(UserDto user, CourseDto course) { public CertificateCreateDto(UserDto user, CourseCertificateDto course) {
this.user = user; this.user = user;
this.course = course; this.course = course;
} }
......
package org.fuseri.model.dto.course;
import jakarta.validation.Valid;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import org.fuseri.model.dto.common.DomainObjectDto;
/**
* This class represents a Data Transfer Object (DTO) for Course entities.
* It is used for passing Course data to Certificate module.
* It extends the DomainObjectDto class and includes additional Course-specific fields.
*/
@Getter
@Setter
@EqualsAndHashCode(callSuper = false)
public class CourseCertificateDto extends DomainObjectDto {
@NotBlank(message = "Course name is required")
@Size(max = 63, message = "Course name must not exceed {max} characters")
private String name;
@NotNull(message = "Lecture capacity cannot be null")
@Min(value = 1, message = "Lecture capacity must be at least 1")
private Integer capacity;
@NotNull(message = "Language type is required")
@Valid
private LanguageTypeDto language;
@NotNull(message = "Proficiency level is required")
@Valid
private ProficiencyLevelDto proficiency;
public CourseCertificateDto(String name, Integer capacity, LanguageTypeDto languageTypeDto, ProficiencyLevelDto proficiencyLevelDto) {
this.name = name;
this.capacity = capacity;
this.language = languageTypeDto;
this.proficiency = proficiencyLevelDto;
}
}
...@@ -3,7 +3,7 @@ package org.fuseri.modulecertificate; ...@@ -3,7 +3,7 @@ package org.fuseri.modulecertificate;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import org.fuseri.model.dto.certificate.CertificateCreateDto; import org.fuseri.model.dto.certificate.CertificateCreateDto;
import org.fuseri.model.dto.certificate.CertificateSimpleDto; import org.fuseri.model.dto.certificate.CertificateSimpleDto;
import org.fuseri.model.dto.course.CourseDto; import org.fuseri.model.dto.course.CourseCertificateDto;
import org.fuseri.model.dto.course.LanguageTypeDto; import org.fuseri.model.dto.course.LanguageTypeDto;
import org.fuseri.model.dto.course.ProficiencyLevelDto; import org.fuseri.model.dto.course.ProficiencyLevelDto;
import org.fuseri.model.dto.user.AddressDto; import org.fuseri.model.dto.user.AddressDto;
...@@ -36,7 +36,7 @@ class CertificateControllerTests { ...@@ -36,7 +36,7 @@ class CertificateControllerTests {
private final UserDto USER = new UserDto("novakovat", private final UserDto USER = new UserDto("novakovat",
"novakova@gamil.com", "Tereza", "Nováková", new AddressDto(), UserType.STUDENT); "novakova@gamil.com", "Tereza", "Nováková", new AddressDto(), UserType.STUDENT);
private final CourseDto COURSE = new CourseDto("AJ1", 10, private final CourseCertificateDto COURSE = new CourseCertificateDto("AJ1", 10,
LanguageTypeDto.ENGLISH, ProficiencyLevelDto.A1); LanguageTypeDto.ENGLISH, ProficiencyLevelDto.A1);
private final CertificateCreateDto certificateCreateDto = new CertificateCreateDto(USER, COURSE); private final CertificateCreateDto certificateCreateDto = new CertificateCreateDto(USER, COURSE);
private final CertificateSimpleDto certificateDto = new CertificateSimpleDto(0L, USER.getId(), private final CertificateSimpleDto certificateDto = new CertificateSimpleDto(0L, USER.getId(),
......
...@@ -2,7 +2,7 @@ package org.fuseri.modulecertificate; ...@@ -2,7 +2,7 @@ package org.fuseri.modulecertificate;
import org.fuseri.model.dto.certificate.CertificateCreateDto; import org.fuseri.model.dto.certificate.CertificateCreateDto;
import org.fuseri.model.dto.certificate.CertificateSimpleDto; import org.fuseri.model.dto.certificate.CertificateSimpleDto;
import org.fuseri.model.dto.course.CourseDto; import org.fuseri.model.dto.course.CourseCertificateDto;
import org.fuseri.model.dto.course.LanguageTypeDto; import org.fuseri.model.dto.course.LanguageTypeDto;
import org.fuseri.model.dto.course.ProficiencyLevelDto; import org.fuseri.model.dto.course.ProficiencyLevelDto;
import org.fuseri.model.dto.user.AddressDto; import org.fuseri.model.dto.user.AddressDto;
...@@ -35,7 +35,7 @@ import static org.mockito.Mockito.when; ...@@ -35,7 +35,7 @@ import static org.mockito.Mockito.when;
final class CertificateFacadeTests { final class CertificateFacadeTests {
private final UserDto USER = new UserDto("novakovat", private final UserDto USER = new UserDto("novakovat",
"novakova@gamil.com", "Tereza", "Nováková", new AddressDto(), UserType.STUDENT); "novakova@gamil.com", "Tereza", "Nováková", new AddressDto(), UserType.STUDENT);
private final CourseDto COURSE = new CourseDto("AJ1", 10, private final CourseCertificateDto COURSE = new CourseCertificateDto("AJ1", 10,
LanguageTypeDto.ENGLISH, ProficiencyLevelDto.A1); LanguageTypeDto.ENGLISH, ProficiencyLevelDto.A1);
private final CertificateCreateDto certificateCreateDto = new CertificateCreateDto(USER, COURSE); private final CertificateCreateDto certificateCreateDto = new CertificateCreateDto(USER, COURSE);
private final CertificateSimpleDto certificateDto = new CertificateSimpleDto(0L, USER.getId(), private final CertificateSimpleDto certificateDto = new CertificateSimpleDto(0L, USER.getId(),
......
...@@ -2,7 +2,7 @@ package org.fuseri.modulecertificate; ...@@ -2,7 +2,7 @@ package org.fuseri.modulecertificate;
import org.fuseri.model.dto.certificate.CertificateCreateDto; import org.fuseri.model.dto.certificate.CertificateCreateDto;
import org.fuseri.model.dto.certificate.CertificateSimpleDto; import org.fuseri.model.dto.certificate.CertificateSimpleDto;
import org.fuseri.model.dto.course.CourseDto; import org.fuseri.model.dto.course.CourseCertificateDto;
import org.fuseri.model.dto.course.LanguageTypeDto; import org.fuseri.model.dto.course.LanguageTypeDto;
import org.fuseri.model.dto.course.ProficiencyLevelDto; import org.fuseri.model.dto.course.ProficiencyLevelDto;
import org.fuseri.model.dto.user.AddressDto; import org.fuseri.model.dto.user.AddressDto;
...@@ -27,7 +27,7 @@ final class CertificateMapperTests { ...@@ -27,7 +27,7 @@ final class CertificateMapperTests {
private final UserDto USER = new UserDto("novakovat", private final UserDto USER = new UserDto("novakovat",
"novakova@gamil.com", "Tereza", "Nováková", new AddressDto(), UserType.STUDENT); "novakova@gamil.com", "Tereza", "Nováková", new AddressDto(), UserType.STUDENT);
private final CourseDto COURSE = new CourseDto("AJ1", 10, private final CourseCertificateDto COURSE = new CourseCertificateDto("AJ1", 10,
LanguageTypeDto.ENGLISH, ProficiencyLevelDto.A1); LanguageTypeDto.ENGLISH, ProficiencyLevelDto.A1);
private final Instant instant = Instant.now(); private final Instant instant = Instant.now();
private final String fileName = "fileName"; private final String fileName = "fileName";
......
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