From d51668f3ec85ca63a7420f4e523d95bcf622c873 Mon Sep 17 00:00:00 2001 From: Suh Date: Wed, 17 Jan 2024 10:25:14 +0900 Subject: [PATCH] =?UTF-8?q?ResetPassword=20=EA=B4=80=EB=A0=A8=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/no1/wms/base/AuthAspect.java | 2 +- .../ResetPasswordController.java | 36 ++++++++++++++++ .../wms/resetpassword/ResetPasswordDto.java | 27 ++++++++++++ .../resetpassword/ResetPasswordMapper.java | 15 +++++++ .../resetpassword/ResetPasswordService.java | 19 +++++++++ .../resources/mappers/ResetPasswordMapper.xml | 42 +++++++++++++++++++ .../WEB-INF/views/modal/pass_reset_call.jsp | 20 +++++++-- 7 files changed, 156 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/no1/wms/resetpassword/ResetPasswordController.java create mode 100644 src/main/java/com/no1/wms/resetpassword/ResetPasswordDto.java create mode 100644 src/main/java/com/no1/wms/resetpassword/ResetPasswordMapper.java create mode 100644 src/main/java/com/no1/wms/resetpassword/ResetPasswordService.java create mode 100644 src/main/resources/mappers/ResetPasswordMapper.xml diff --git a/src/main/java/com/no1/wms/base/AuthAspect.java b/src/main/java/com/no1/wms/base/AuthAspect.java index 6bfe1e3..3553aa9 100644 --- a/src/main/java/com/no1/wms/base/AuthAspect.java +++ b/src/main/java/com/no1/wms/base/AuthAspect.java @@ -45,7 +45,7 @@ public class AuthAspect { String[] list = targetController.split("\\."); String packageName = list[3]; - if(packageName.equals("login")) { + if(packageName.equals("login") || packageName.equals("resetpassword")) { return joinPoint.proceed(); } diff --git a/src/main/java/com/no1/wms/resetpassword/ResetPasswordController.java b/src/main/java/com/no1/wms/resetpassword/ResetPasswordController.java new file mode 100644 index 0000000..8736520 --- /dev/null +++ b/src/main/java/com/no1/wms/resetpassword/ResetPasswordController.java @@ -0,0 +1,36 @@ +package com.no1.wms.resetpassword; + +import com.google.gson.Gson; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +@Controller +@RequestMapping("/resetpassword") +public class ResetPasswordController { + + + @Autowired + ResetPasswordService resetPasswordService; + + @PostMapping("/insert") + @ResponseBody + public String insert(ResetPasswordDto dto, Gson gson){ + resetPasswordService.insert(dto); + + return gson.toJson("s"); + + } + + @PostMapping("/delete") + @ResponseBody + public String delete(ResetPasswordDto dto, Gson gson){ + resetPasswordService.delete(dto); + + return gson.toJson("s"); + + } + +} diff --git a/src/main/java/com/no1/wms/resetpassword/ResetPasswordDto.java b/src/main/java/com/no1/wms/resetpassword/ResetPasswordDto.java new file mode 100644 index 0000000..9084d19 --- /dev/null +++ b/src/main/java/com/no1/wms/resetpassword/ResetPasswordDto.java @@ -0,0 +1,27 @@ +package com.no1.wms.resetpassword; + +import com.no1.wms.account.AccountDto; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.apache.ibatis.type.Alias; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Alias("ResetPasswordDto") +public class ResetPasswordDto { + String id; + String accountId; + String note; + @DateTimeFormat(pattern = "yyyy-MM-dd") + Date date; + + AccountDto accountDto; + String employeeNumber; +} diff --git a/src/main/java/com/no1/wms/resetpassword/ResetPasswordMapper.java b/src/main/java/com/no1/wms/resetpassword/ResetPasswordMapper.java new file mode 100644 index 0000000..1de2009 --- /dev/null +++ b/src/main/java/com/no1/wms/resetpassword/ResetPasswordMapper.java @@ -0,0 +1,15 @@ +package com.no1.wms.resetpassword; + +import org.apache.ibatis.annotations.Mapper; +import org.springframework.stereotype.Repository; + +@Repository +@Mapper +public interface ResetPasswordMapper { + + void insert(ResetPasswordDto dto); + + void delete(ResetPasswordDto dto); + + +} diff --git a/src/main/java/com/no1/wms/resetpassword/ResetPasswordService.java b/src/main/java/com/no1/wms/resetpassword/ResetPasswordService.java new file mode 100644 index 0000000..9f5fd67 --- /dev/null +++ b/src/main/java/com/no1/wms/resetpassword/ResetPasswordService.java @@ -0,0 +1,19 @@ +package com.no1.wms.resetpassword; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class ResetPasswordService { + + @Autowired + ResetPasswordMapper mapper; + + void insert(ResetPasswordDto dto){ + mapper.insert(dto); + } + + void delete(ResetPasswordDto dto){ + mapper.delete(dto); + } +} diff --git a/src/main/resources/mappers/ResetPasswordMapper.xml b/src/main/resources/mappers/ResetPasswordMapper.xml new file mode 100644 index 0000000..34feaff --- /dev/null +++ b/src/main/resources/mappers/ResetPasswordMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + insert into reset_password + ( + id, account_id, note, date + ) + VALUES + ( + UUID(), (SELECT id from account where employee_number = #{employeeNumber} ), #{note}, NOW() + ) + + + + delete from reset_password WHERE id = #{id} + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/views/modal/pass_reset_call.jsp b/src/main/webapp/WEB-INF/views/modal/pass_reset_call.jsp index a75f4e5..4e8d048 100644 --- a/src/main/webapp/WEB-INF/views/modal/pass_reset_call.jsp +++ b/src/main/webapp/WEB-INF/views/modal/pass_reset_call.jsp @@ -36,14 +36,19 @@ function onPassReset(){ const data={}; data.employeeNumber=$("#employ_number").val(); + data.note=$("#note").val(); $.ajax({ type: 'post', // 타입 (get, post, put 등등) - url: '/login/pass_reset_call', // 요청할 서버url + url: '/resetpassword/insert', // 요청할 서버url dataType: 'json', // 데이터 타입 (html, xml, json, text 등등) data: data, success: function (result) { // 결과 성공 콜백함수 - alert("패스워드 초기화 요청이 완료되었습니다"); - window.location.href = "/"; + if (result === 's') { + alert("패스워드 초기화 요청이 완료되었습니다"); + window.location.href = "/login"; + }else if(result === 'f'){ + alert("요청에 실패하였습니다") + } }, error: function (request, status, error) { alert(error); @@ -56,8 +61,15 @@

비밀번호 초기화 요청

- + + +
+
+ + + +

© 2023–2024