diff --git a/application/model/src/main/java/org/fuseri/model/dto/user/AddressDto.java b/application/model/src/main/java/org/fuseri/model/dto/user/AddressDto.java index 4932d99b8864244383f20aa0312d4d89cd7e08c4..ff0af99960e0daa36f948a11bee5f9bdaf1721f0 100644 --- a/application/model/src/main/java/org/fuseri/model/dto/user/AddressDto.java +++ b/application/model/src/main/java/org/fuseri/model/dto/user/AddressDto.java @@ -1,19 +1,20 @@ package org.fuseri.model.dto.user; +import jakarta.validation.constraints.NotBlank; import lombok.Getter; import lombok.Setter; @Getter @Setter public class AddressDto { - + @NotBlank private String country; - + @NotBlank private String city; - + @NotBlank private String street; - + @NotBlank private String houseNumber; - + @NotBlank private String zip; } diff --git a/application/model/src/main/java/org/fuseri/model/dto/user/UserAddLanguageDto.java b/application/model/src/main/java/org/fuseri/model/dto/user/UserAddLanguageDto.java index 23862ac044653eb61db387fbede8caf20d564855..ebe92f4f3068a6b04c2beec0c17b268b8a2b4c17 100644 --- a/application/model/src/main/java/org/fuseri/model/dto/user/UserAddLanguageDto.java +++ b/application/model/src/main/java/org/fuseri/model/dto/user/UserAddLanguageDto.java @@ -1,12 +1,14 @@ package org.fuseri.model.dto.user; +import jakarta.validation.constraints.NotNull; import org.fuseri.model.dto.common.DomainObjectDto; import org.fuseri.model.dto.course.LanguageTypeDto; import org.fuseri.model.dto.course.ProficiencyLevelDto; public class UserAddLanguageDto extends DomainObjectDto { + @NotNull LanguageTypeDto language; - + @NotNull ProficiencyLevelDto proficiency; } diff --git a/application/model/src/main/java/org/fuseri/model/dto/user/UserCreateDto.java b/application/model/src/main/java/org/fuseri/model/dto/user/UserCreateDto.java index ce561102aa302ad7618dc5d123d088fff094d3a9..69059692158d53777207fe6d22b583419fa57ae1 100644 --- a/application/model/src/main/java/org/fuseri/model/dto/user/UserCreateDto.java +++ b/application/model/src/main/java/org/fuseri/model/dto/user/UserCreateDto.java @@ -1,5 +1,8 @@ package org.fuseri.model.dto.user; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.NonNull; import org.fuseri.model.dto.common.DomainObjectDto; import lombok.Getter; import lombok.Setter; @@ -8,15 +11,16 @@ import lombok.Setter; @Setter public class UserCreateDto extends DomainObjectDto { + @NotBlank private String username; - + @NotBlank private String password; - + @NotBlank private String email; - + @NotBlank private String firstName; - + @NotBlank private String lastName; - + @NotNull private AddressDto address; } diff --git a/application/model/src/main/java/org/fuseri/model/dto/user/UserDto.java b/application/model/src/main/java/org/fuseri/model/dto/user/UserDto.java index 0e260ede59e0bc86e163bccce46a70ef07ea5a7c..fce12aabfb8baadbeb620c531ffcc84a92c4bb77 100644 --- a/application/model/src/main/java/org/fuseri/model/dto/user/UserDto.java +++ b/application/model/src/main/java/org/fuseri/model/dto/user/UserDto.java @@ -1,5 +1,7 @@ package org.fuseri.model.dto.user; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import org.fuseri.model.dto.common.DomainObjectDto; import lombok.Getter; import lombok.Setter; @@ -7,15 +9,14 @@ import lombok.Setter; @Getter @Setter public class UserDto extends DomainObjectDto { - + @NotBlank private String username; - + @NotBlank private String email; - + @NotBlank private String firstName; - + @NotBlank private String lastName; - private AddressDto address; diff --git a/application/model/src/main/java/org/fuseri/model/dto/user/UserLoginDto.java b/application/model/src/main/java/org/fuseri/model/dto/user/UserLoginDto.java index a028b6a5cfbab0a5ab73a6bba10a3baedcdea42f..387a9dcbd0651781cfe291c2e3ffc64a9410856a 100644 --- a/application/model/src/main/java/org/fuseri/model/dto/user/UserLoginDto.java +++ b/application/model/src/main/java/org/fuseri/model/dto/user/UserLoginDto.java @@ -1,5 +1,6 @@ package org.fuseri.model.dto.user; +import jakarta.validation.constraints.NotBlank; import lombok.Getter; import lombok.Setter; import org.fuseri.model.dto.common.DomainObjectDto; @@ -7,7 +8,8 @@ import org.fuseri.model.dto.common.DomainObjectDto; @Getter @Setter public class UserLoginDto extends DomainObjectDto { + @NotBlank private String username; - + @NotBlank private String password; } diff --git a/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java b/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java index c88d4f64def645406168fc7406d340bb76f2f53d..31cfd86e0d4f9b7ab652143468c7a61666609e00 100644 --- a/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java +++ b/application/module-language-school/src/main/java/org/fuseri/modulelanguageschool/user/UserController.java @@ -8,8 +8,10 @@ import org.fuseri.model.dto.user.UserDto; import org.fuseri.model.dto.user.UserLoginDto; import org.fuseri.modulelanguageschool.course.Course; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import jakarta.validation.Valid; +import jakarta.validation.constraints.PositiveOrZero; + import java.util.ArrayList; import java.util.List; @@ -34,7 +36,7 @@ public class UserController { } @PostMapping - public UserDto create(@RequestBody UserCreateDto dto) { + public UserDto create(@Valid @RequestBody UserCreateDto dto) { return new UserDto(dto.getUsername(),dto.getEmail(),dto.getFirstName(),dto.getLastName(),dto.getAddress()); } @@ -44,13 +46,13 @@ public class UserController { } @PutMapping("/update/{id}") - public UserDto update(@PathVariable String id, @RequestBody UserCreateDto user) { + public UserDto update(@PositiveOrZero @PathVariable String id,@Valid @RequestBody UserCreateDto user) { return new UserDto(user.getUsername(),user.getEmail(),user.getFirstName(),user.getLastName(),user.getAddress()); } @GetMapping("/all") - public Result<UserDto> findAll(@RequestParam int page) { + public Result<UserDto> findAll(@PositiveOrZero @RequestParam int page) { var res = new Result<UserDto>(); res.setItems(List.of(new UserDto("spracher","spracher@gmail.com","Sprach","MeNot",new AddressDto()) )); @@ -81,7 +83,7 @@ public class UserController { } @PutMapping("/addLanguage/{id}") - public String addLanguage(@PathVariable String id, @RequestBody UserAddLanguageDto body) { + public String addLanguage(@PathVariable String id,@Valid @RequestBody UserAddLanguageDto body) { return "added Absolutely Nothing successfully!"; }