From 0d6448bfbf6625700c24dc2dac9eb969a2425272 Mon Sep 17 00:00:00 2001 From: nevermoregb Date: Thu, 10 Apr 2025 23:00:10 +0900 Subject: [PATCH] =?UTF-8?q?=EC=82=AC=EC=9B=90=20=EB=93=B1=EB=A1=9D=20?= =?UTF-8?q?=EC=98=A4=EB=A5=98=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../localhost/controller/api/MainController.java | 7 +++++++ .../localhost/mapper/CommutersMapper.java | 2 ++ .../localhost/service/CommutersService.java | 13 +++++++++++++ .../company/localhost/service/MainService.java | 16 ++++++++++++---- src/main/resources/mapper/CommutersMapper.xml | 5 +++++ 5 files changed, 39 insertions(+), 4 deletions(-) diff --git a/src/main/java/io/company/localhost/controller/api/MainController.java b/src/main/java/io/company/localhost/controller/api/MainController.java index 013321b..11263e1 100644 --- a/src/main/java/io/company/localhost/controller/api/MainController.java +++ b/src/main/java/io/company/localhost/controller/api/MainController.java @@ -76,4 +76,11 @@ public class MainController { long memberSeq = map.getInt("memberSeq"); return mainService.rejectMember(memberSeq); } + + @Member + @ParameterCheck + @PostMapping("/getUserLeaveRecord") + public ApiResponse getUserLeaveRecord(@ReqMap MapDto map) { + return mainService.getUserLeaveRecord(map); + } } diff --git a/src/main/java/io/company/localhost/mapper/CommutersMapper.java b/src/main/java/io/company/localhost/mapper/CommutersMapper.java index 6dc119b..13563df 100644 --- a/src/main/java/io/company/localhost/mapper/CommutersMapper.java +++ b/src/main/java/io/company/localhost/mapper/CommutersMapper.java @@ -36,5 +36,7 @@ public interface CommutersMapper { // int updateCommuterProject(MapDto map); int deleteCommuters(MapDto map); + + MapDto selectUserLeaveWorkList(MapDto map); } diff --git a/src/main/java/io/company/localhost/service/CommutersService.java b/src/main/java/io/company/localhost/service/CommutersService.java index 21977cb..d52482d 100644 --- a/src/main/java/io/company/localhost/service/CommutersService.java +++ b/src/main/java/io/company/localhost/service/CommutersService.java @@ -20,6 +20,8 @@ import java.util.List; import org.springframework.stereotype.Service; +import io.company.localhost.common.annotation.ReqMap; +import io.company.localhost.common.dto.ApiResponse; import io.company.localhost.common.dto.MapDto; import io.company.localhost.mapper.CommutersMapper; import lombok.RequiredArgsConstructor; @@ -106,5 +108,16 @@ public class CommutersService { * public boolean updateCommuterProject(MapDto map) { return * commutersMapper.updateCommuterProject(map) > 0; } */ + + + /** + * 사용자의 퇴근 기록 조회 + * + * @return + */ + public ApiResponse selectUserLeaveWorkList(@ReqMap MapDto map) { + map.put("currentDate", LocalDateTime.now()); + return ApiResponse.ok(commutersMapper.selectUserLeaveWorkList(map)); + } } diff --git a/src/main/java/io/company/localhost/service/MainService.java b/src/main/java/io/company/localhost/service/MainService.java index c816052..d2996cd 100644 --- a/src/main/java/io/company/localhost/service/MainService.java +++ b/src/main/java/io/company/localhost/service/MainService.java @@ -21,6 +21,7 @@ import org.springframework.stereotype.Service; import io.company.localhost.common.dto.ApiResponse; import io.company.localhost.common.dto.MapDto; +import io.company.localhost.utils.AuthUtil; import io.company.localhost.vo.MemberVo; import lombok.RequiredArgsConstructor; @@ -32,6 +33,7 @@ public class MainService { private final NetmemberService netmemberService; private final localvacaService localvacaService; private final LocalevntService localevntService; + private final CommutersService commutersService; /** @@ -104,9 +106,10 @@ public class MainService { * @return */ public ApiResponse registerMember(long memberSeq) { - MemberVo user = netmemberService.getUserInfoById(memberSeq); + Long loginUserId = AuthUtil.getUser().getId(); + MemberVo user = netmemberService.getUserInfoById(loginUserId); - if(user.getId() != memberSeq || !"ROLE_ADMIN".equals(user.getRole())) { + if(user.getId() != loginUserId || !"ROLE_ADMIN".equals(user.getRole())) { return ApiResponse.error(HttpStatus.FORBIDDEN, "사용 권한 없음"); } @@ -121,15 +124,20 @@ public class MainService { * @return */ public ApiResponse rejectMember(long memberSeq) { - MemberVo user = netmemberService.getUserInfoById(memberSeq); + Long loginUserId = AuthUtil.getUser().getId(); + MemberVo user = netmemberService.getUserInfoById(loginUserId); - if(user.getId() != memberSeq || !"ROLE_ADMIN".equals(user.getRole())) { + if(user.getId() != loginUserId || !"ROLE_ADMIN".equals(user.getRole())) { return ApiResponse.error(HttpStatus.UNAUTHORIZED, "사용 권한 없음"); } int result = netmemberService.rejectMember(memberSeq); return result == 1 ? ApiResponse.ok("미승인 대상자 등록") : ApiResponse.ok("미승인 대상자 등록 실패"); } + + public ApiResponse getUserLeaveRecord(MapDto map) { + return commutersService.selectUserLeaveWorkList(map); + } diff --git a/src/main/resources/mapper/CommutersMapper.xml b/src/main/resources/mapper/CommutersMapper.xml index 83a6e35..aafab2a 100644 --- a/src/main/resources/mapper/CommutersMapper.xml +++ b/src/main/resources/mapper/CommutersMapper.xml @@ -100,4 +100,9 @@ DELETE FROM commuters WHERE PROJCTSEQ = #{projctSeq} + +