From dc19aee3689fe345c48e5ca51db63662c5d22cc1 Mon Sep 17 00:00:00 2001 From: Shilyaev_Dmitry Date: Wed, 19 Feb 2025 18:23:14 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D1=81=D0=BF=D0=B8=D1=81=D0=BA=D0=B0=20?= =?UTF-8?q?=D0=B2=D1=85=D0=BE=D0=B4=D0=BE=D0=B2=20=D0=BF=D0=BE=D0=BB=D1=8C?= =?UTF-8?q?=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/nto/controller/EmployeeController.java | 6 ++++++ src/main/java/com/example/nto/entity/Enter.java | 4 ++-- .../com/example/nto/repository/EnterRepository.java | 7 +++++++ .../java/com/example/nto/service/EmployeeService.java | 5 +---- .../example/nto/service/impl/EmployeeServiceImpl.java | 11 +++++------ .../db.changelog/1.0/1.0/2025-02-19-0006-enters.xml | 6 +++--- 6 files changed, 24 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/example/nto/controller/EmployeeController.java b/src/main/java/com/example/nto/controller/EmployeeController.java index 40a17c4..a569b57 100644 --- a/src/main/java/com/example/nto/controller/EmployeeController.java +++ b/src/main/java/com/example/nto/controller/EmployeeController.java @@ -13,6 +13,7 @@ import org.springframework.security.core.Authentication; import org.springframework.web.bind.annotation.*; import java.time.LocalDateTime; +import java.util.List; @RestController @RequiredArgsConstructor @@ -35,4 +36,9 @@ public class EmployeeController { public ResponseEntity add(@PathVariable("login") String login, @RequestBody EnterDTO enterDTO){ return ResponseEntity.ok(employeeService.addEnter(login, enterDTO)); } + + @GetMapping("/list/{login}") + public List list(@PathVariable("login") String username){ + return employeeService.getAllEmployeeEnters(username); + } } diff --git a/src/main/java/com/example/nto/entity/Enter.java b/src/main/java/com/example/nto/entity/Enter.java index 5484f71..7b4fa70 100644 --- a/src/main/java/com/example/nto/entity/Enter.java +++ b/src/main/java/com/example/nto/entity/Enter.java @@ -7,13 +7,13 @@ import java.time.LocalDateTime; @Data @Entity -@Table(name="enters") +@Table(name="Enters") public class Enter { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private long id; - @Column(name="employee_username") + @Column(name="username") private String username; @Column(name="value") diff --git a/src/main/java/com/example/nto/repository/EnterRepository.java b/src/main/java/com/example/nto/repository/EnterRepository.java index e593b05..015c2cd 100644 --- a/src/main/java/com/example/nto/repository/EnterRepository.java +++ b/src/main/java/com/example/nto/repository/EnterRepository.java @@ -1,9 +1,16 @@ package com.example.nto.repository; +import com.example.nto.dto.EnterDTO; import com.example.nto.entity.Enter; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; +import java.util.List; + @Repository public interface EnterRepository extends JpaRepository { + @Query("SELECT u FROM Enter u WHERE u.username = :username") + List findAllByUsername(@Param("username") String username); } diff --git a/src/main/java/com/example/nto/service/EmployeeService.java b/src/main/java/com/example/nto/service/EmployeeService.java index 213f276..16fb1fb 100644 --- a/src/main/java/com/example/nto/service/EmployeeService.java +++ b/src/main/java/com/example/nto/service/EmployeeService.java @@ -2,15 +2,12 @@ package com.example.nto.service; import com.example.nto.dto.EmployeeDTO; import com.example.nto.dto.EnterDTO; -import com.example.nto.entity.Employee; -import com.example.nto.entity.EnterType; -import java.time.LocalDateTime; import java.util.List; public interface EmployeeService { EmployeeDTO getEmployeeByUsername(String username); EmployeeDTO getInfo(String username); EnterDTO addEnter(String username, EnterDTO enterDTO); - List getAllEmployeeEnters(); + List getAllEmployeeEnters(String username); } diff --git a/src/main/java/com/example/nto/service/impl/EmployeeServiceImpl.java b/src/main/java/com/example/nto/service/impl/EmployeeServiceImpl.java index 3c0c393..0ca317f 100644 --- a/src/main/java/com/example/nto/service/impl/EmployeeServiceImpl.java +++ b/src/main/java/com/example/nto/service/impl/EmployeeServiceImpl.java @@ -16,15 +16,12 @@ import com.example.nto.repository.EnterTypeRepository; import com.example.nto.service.EmployeeService; import com.example.nto.util.EmployeeMapper; import com.example.nto.util.EnterMapper; -import liquibase.pro.packaged.E; import lombok.RequiredArgsConstructor; -import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; -import org.springframework.web.server.ResponseStatusException; -import java.time.LocalDateTime; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; import static org.springframework.util.Assert.hasText; @@ -81,8 +78,10 @@ public class EmployeeServiceImpl implements EmployeeService { } @Override - public List getAllEmployeeEnters() { - return List.of(); + public List getAllEmployeeEnters(String username) { + return enterRepository.findAllByUsername(username).stream() + .map(EnterMapper::convertToDTO) + .collect(Collectors.toList()); } diff --git a/src/main/resources/db.changelog/1.0/1.0/2025-02-19-0006-enters.xml b/src/main/resources/db.changelog/1.0/1.0/2025-02-19-0006-enters.xml index f3cbc05..6abf12b 100644 --- a/src/main/resources/db.changelog/1.0/1.0/2025-02-19-0006-enters.xml +++ b/src/main/resources/db.changelog/1.0/1.0/2025-02-19-0006-enters.xml @@ -7,15 +7,15 @@ - + - + - +