diff --git a/docker-compose.yaml b/docker-compose.yaml index 6e06b4b..9920fd1 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -16,6 +16,7 @@ services: app: image: popovtsev/ncp +# build: . container_name: no_copy_app environment: POSTGRES_DB: no_copy_ diff --git a/src/main/java/ru/soune/no_copy/controller/UserController.java b/src/main/java/ru/soune/no_copy/controller/UserController.java new file mode 100644 index 0000000..db4bdd4 --- /dev/null +++ b/src/main/java/ru/soune/no_copy/controller/UserController.java @@ -0,0 +1,28 @@ +package ru.soune.no_copy.controller; + +import lombok.RequiredArgsConstructor; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import ru.soune.no_copy.dto.UserDTO; +import ru.soune.no_copy.repository.UserRepository; + +import java.util.List; + +@RestController +@RequestMapping("/api/user") +@RequiredArgsConstructor +public class UserController { + + private final UserRepository userRepository; + + @GetMapping("/all") + public ResponseEntity> getAllUsers() { + List allUsers = userRepository.findAll().stream() + .map(u -> new UserDTO(u.getFirstName(), u.getEmail(), u.getIsActive())) + .toList(); + + return ResponseEntity.ok(allUsers); + } +} diff --git a/src/main/java/ru/soune/no_copy/dto/UserDTO.java b/src/main/java/ru/soune/no_copy/dto/UserDTO.java new file mode 100644 index 0000000..ebe4f63 --- /dev/null +++ b/src/main/java/ru/soune/no_copy/dto/UserDTO.java @@ -0,0 +1,12 @@ +package ru.soune.no_copy.dto; + +import lombok.AllArgsConstructor; +import lombok.Data; + +@Data +@AllArgsConstructor +public class UserDTO { + private String fullName; + private String email; + private boolean isActive; +} diff --git a/src/main/java/ru/soune/no_copy/entity/User.java b/src/main/java/ru/soune/no_copy/entity/User.java index 808c70f..6301a33 100644 --- a/src/main/java/ru/soune/no_copy/entity/User.java +++ b/src/main/java/ru/soune/no_copy/entity/User.java @@ -53,6 +53,6 @@ public class User { private LocalDateTime createdAt; @Column(name = "is_active") - private Boolean isActive; + private Boolean isActive = true; }