
--- src/main/java/com/takensoft/cms/mber/dao/AdmMbrDAO.java
+++ src/main/java/com/takensoft/cms/mber/dao/AdmMbrDAO.java
... | ... | @@ -78,12 +78,12 @@ |
78 | 78 |
public int mbrInsert(JoinDTO joinDTO); |
79 | 79 |
|
80 | 80 |
/** |
81 |
- * @param mbrVO - 회원 정보 관련 VO |
|
81 |
+ * @param admMbrDTO - 회원 정보 관련 DTO |
|
82 | 82 |
* @return String - 로그인 아이디 |
83 | 83 |
* |
84 |
- * 아이디 찾기 (로그인 아이디) |
|
84 |
+ * 이메일로 아이디 찾기 |
|
85 | 85 |
*/ |
86 |
- public String lgnIdSearch(MberVO mbrVO); |
|
86 |
+ public String lgnIdSearchByEml(AdmMbrDTO admMbrDTO); |
|
87 | 87 |
|
88 | 88 |
/** |
89 | 89 |
* @param admMbrDTO - 회원정보 관련 DTO |
--- src/main/java/com/takensoft/cms/mber/service/AdmMbrService.java
+++ src/main/java/com/takensoft/cms/mber/service/AdmMbrService.java
... | ... | @@ -14,6 +14,7 @@ |
14 | 14 |
* @modification |
15 | 15 |
* since | author | description |
16 | 16 |
* 2024.06.21 | 박정하 | 최초 등록 |
17 |
+ * 2025.06.26 | 하석형 | mbrIdSearch, setNewPswdProc 추가 |
|
17 | 18 |
* |
18 | 19 |
* 회원정보 관련 인터페이스 |
19 | 20 |
*/ |
... | ... | @@ -56,19 +57,26 @@ |
56 | 57 |
public HashMap<String, Object> mbrInsert(HttpServletRequest req, JoinDTO joinDTO); |
57 | 58 |
|
58 | 59 |
/** |
59 |
- * @param mbrVO -회원정보 |
|
60 |
+ * @param admMbrDTO -회원정보 |
|
60 | 61 |
* @return String - 로그인 아이디 |
61 | 62 |
* |
62 | 63 |
* 아이디 찾기 (로그인 아이디) |
63 | 64 |
*/ |
64 |
- public String lgnIdSearch(MberVO mbrVO); |
|
65 |
- |
|
65 |
+ public String lgnIdSearch(AdmMbrDTO admMbrDTO); |
|
66 |
+ |
|
66 | 67 |
/** |
67 |
- * @param resetPswd -초기화비밀번호 |
|
68 | 68 |
* @param admMbrDTO -회원정보 |
69 |
- * @return int - 회원정보 등록 결과 |
|
69 |
+ * @return String - 회원 아이디 |
|
70 | 70 |
* |
71 | 71 |
* 아이디 찾기 (회원 아이디) |
72 | 72 |
*/ |
73 |
- public int mbrIdSearch(String resetPswd, AdmMbrDTO admMbrDTO); |
|
73 |
+ public String mbrIdSearch(AdmMbrDTO admMbrDTO); |
|
74 |
+ |
|
75 |
+ /** |
|
76 |
+ * @param admMbrDTO -회원정보 |
|
77 |
+ * @return int - 비밀번호 수정 응답 결과 |
|
78 |
+ * |
|
79 |
+ * 새 비밀번호 설정 |
|
80 |
+ */ |
|
81 |
+ public int setNewPswdProc(AdmMbrDTO admMbrDTO); |
|
74 | 82 |
}(파일 끝에 줄바꿈 문자 없음) |
--- src/main/java/com/takensoft/cms/mber/service/Impl/AdmMbrServiceImpl.java
+++ src/main/java/com/takensoft/cms/mber/service/Impl/AdmMbrServiceImpl.java
... | ... | @@ -36,6 +36,7 @@ |
36 | 36 |
* @modification |
37 | 37 |
* since | author | description |
38 | 38 |
* 2024.06.21 | 박정하 | 최초 등록 |
39 |
+ * 2025.06.26 | 하석형 | mbrIdSearch, setNewPswdProc 추가 |
|
39 | 40 |
* |
40 | 41 |
* EgovAbstractServiceImpl : 전자정부 상속 |
41 | 42 |
* AdmMbrService : 회원정보 인터페이스 상속 |
... | ... | @@ -323,16 +324,24 @@ |
323 | 324 |
} |
324 | 325 |
|
325 | 326 |
/** |
326 |
- * @param mbrVO -회원정보 |
|
327 |
+ * @param admMbrDTO -회원정보 |
|
327 | 328 |
* @return String - 로그인 아이디 |
328 | 329 |
* @throws DataAccessException - db 관련 예외 발생 시 |
329 | 330 |
* @throws Exception - 그 외 예외 발생 시 |
330 | 331 |
* |
331 | 332 |
* 아이디 찾기 (로그인 아이디) |
332 | 333 |
*/ |
333 |
- public String lgnIdSearch(MberVO mbrVO){ |
|
334 |
+ public String lgnIdSearch(AdmMbrDTO admMbrDTO){ |
|
334 | 335 |
try { |
335 |
- return admMbrDAO.lgnIdSearch(mbrVO); |
|
336 |
+ String lgnId = null; |
|
337 |
+ if(admMbrDTO.getEml() != null || !admMbrDTO.getEml().isEmpty()) { |
|
338 |
+ // 이메일로 아이디 찾기 |
|
339 |
+ lgnId = admMbrDAO.lgnIdSearchByEml(admMbrDTO); |
|
340 |
+ } else if(admMbrDTO.getMblTelno() != null || !admMbrDTO.getMblTelno().isEmpty()) { |
|
341 |
+ // 휴대폰 번호로 아이디 찾기 |
|
342 |
+// lgnId = admMbrDAO.lgnIdSearchByMblTelno(mbrVO); |
|
343 |
+ } |
|
344 |
+ return lgnId; |
|
336 | 345 |
} catch (DataAccessException dae) { |
337 | 346 |
throw dae; |
338 | 347 |
} catch (Exception e) { |
... | ... | @@ -341,22 +350,43 @@ |
341 | 350 |
} |
342 | 351 |
|
343 | 352 |
/** |
344 |
- * @param resetPswd -초기화비밀번호 |
|
345 | 353 |
* @param admMbrDTO -회원정보 |
346 |
- * @return int - 회원정보 등록 결과 |
|
354 |
+ * @return String - 회원 아이디 |
|
347 | 355 |
* @throws DataAccessException - db 관련 예외 발생 시 |
348 | 356 |
* @throws Exception - 그 외 예외 발생 시 |
349 | 357 |
* |
350 | 358 |
* 아이디 찾기 (회원 아이디) |
351 | 359 |
*/ |
352 |
- public int mbrIdSearch(String resetPswd, AdmMbrDTO admMbrDTO){ |
|
360 |
+ public String mbrIdSearch(AdmMbrDTO admMbrDTO){ |
|
353 | 361 |
try { |
362 |
+ // 회원 아이디 조회 |
|
354 | 363 |
String mbrId = admMbrDAO.mbrIdSearch(admMbrDTO); |
364 |
+ |
|
365 |
+ return mbrId; |
|
366 |
+ } catch (DataAccessException dae) { |
|
367 |
+ throw dae; |
|
368 |
+ } catch (Exception e) { |
|
369 |
+ throw e; |
|
370 |
+ } |
|
371 |
+ } |
|
372 |
+ |
|
373 |
+ /** |
|
374 |
+ * @param admMbrDTO -회원정보 |
|
375 |
+ * @return int - 비밀번호 수정 응답 결과 |
|
376 |
+ * @throws DataAccessException - db 관련 예외 발생 시 |
|
377 |
+ * @throws Exception - 그 외 예외 발생 시 |
|
378 |
+ * |
|
379 |
+ * 새 비밀번호 설정 |
|
380 |
+ */ |
|
381 |
+ public int setNewPswdProc(AdmMbrDTO admMbrDTO){ |
|
382 |
+ try { |
|
383 |
+ // 회원 아이디 조회 |
|
384 |
+ String mbrId = mbrIdSearch(admMbrDTO); |
|
355 | 385 |
|
356 | 386 |
PasswordDTO passwordDTO = new PasswordDTO(); |
357 | 387 |
passwordDTO.setMbrId(mbrId); |
358 |
- passwordDTO.setPswd(admMbrDTO.getPswd()); |
|
359 |
- passwordDTO.setNewPswd(resetPswd); |
|
388 |
+ passwordDTO.setPswd(""); |
|
389 |
+ passwordDTO.setNewPswd(admMbrDTO.getPswd()); |
|
360 | 390 |
passwordDTO.setMdfr("SYSTEM"); // 비로그인 수정이기 때문에 시스템 변경 |
361 | 391 |
|
362 | 392 |
// 비밀번호 변경 |
--- src/main/java/com/takensoft/cms/mber/web/AdmMbrController.java
+++ src/main/java/com/takensoft/cms/mber/web/AdmMbrController.java
... | ... | @@ -32,6 +32,7 @@ |
32 | 32 |
* @modification |
33 | 33 |
* since | author | description |
34 | 34 |
* 2024.06.21 | 박정하 | 최초 등록 |
35 |
+ * 2025.06.26 | 하석형 | existMbrProc, setNewPswdProc 추가 |
|
35 | 36 |
* |
36 | 37 |
* 회원정보 관련 Controller |
37 | 38 |
*/ |
... | ... | @@ -80,7 +81,7 @@ |
80 | 81 |
|
81 | 82 |
/** |
82 | 83 |
* @param admMbrDTO - 회원정보 |
83 |
- * @return ResponseEntity - 회회원정보 상세 조회 응답 결과 |
|
84 |
+ * @return ResponseEntity - 회원정보 상세 조회 응답 결과 |
|
84 | 85 |
* |
85 | 86 |
* 회원정보 상세 조회 |
86 | 87 |
*/ |
... | ... | @@ -138,40 +139,52 @@ |
138 | 139 |
return resUtil.successRes(result, MessageCode.SIGNUP_SUCCESS); |
139 | 140 |
} |
140 | 141 |
/** |
141 |
- * @param mbrVO - 회원정보 |
|
142 |
+ * @param admMbrDTO - 회원정보 |
|
142 | 143 |
* @return ResponseEntity - 아이디 찾기 응답 결과 |
143 | 144 |
* |
144 | 145 |
* 아이디 찾기 |
145 | 146 |
*/ |
146 | 147 |
@PostMapping(value = "/searchIdProc.json") |
147 |
- public ResponseEntity<?> searchIdProc(@RequestBody MberVO mbrVO) { |
|
148 |
- String result = admMbrService.lgnIdSearch(mbrVO); |
|
148 |
+ public ResponseEntity<?> searchIdProc(@RequestBody AdmMbrDTO admMbrDTO) { |
|
149 |
+ String result = admMbrService.lgnIdSearch(admMbrDTO); |
|
149 | 150 |
|
150 |
- // 응답 처리 |
|
151 |
- HttpHeaders headers = new HttpHeaders(); |
|
152 |
- headers.setContentType(new MediaType("application", "json", Charset.forName("UTF-8"))); |
|
153 |
- ResponseData responseData = new ResponseData(); |
|
154 | 151 |
if(result != null) { |
155 | 152 |
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); |
156 | 153 |
} else { |
157 | 154 |
return resUtil.errorRes(MessageCode.LOGIN_USER_NOT_FOUND); |
158 | 155 |
} |
159 | 156 |
} |
160 |
- /** |
|
161 |
- * @param resetPswd -초기화비밀번호 |
|
162 |
- * @param admMbrDTO -회원정보 |
|
163 |
- * @return ResponseEntity - 비밀번호 초기화 응답 결과 |
|
164 |
- * |
|
165 |
- * 비밀번호 초기화 |
|
166 |
- */ |
|
167 |
- @PostMapping(value = "/resetPswdProc.json") |
|
168 |
- public ResponseEntity<?> resetPswdProc(@Value("${password.reset}") String resetPswd, @RequestBody AdmMbrDTO admMbrDTO){ |
|
169 |
- int result = admMbrService.mbrIdSearch(resetPswd, admMbrDTO); |
|
170 | 157 |
|
171 |
- // 응답 처리 |
|
172 |
- HttpHeaders headers = new HttpHeaders(); |
|
173 |
- headers.setContentType(new MediaType("application", "json", Charset.forName("UTF-8"))); |
|
174 |
- ResponseData responseData = new ResponseData(); |
|
158 |
+ /** |
|
159 |
+ * @param admMbrDTO -회원정보 |
|
160 |
+ * @return ResponseEntity - 회원정보 존재 확인 응답 결과 |
|
161 |
+ * |
|
162 |
+ * 회원정보 존재 확인 |
|
163 |
+ */ |
|
164 |
+ @PostMapping(value = "/existMbrProc.json") |
|
165 |
+ public ResponseEntity<?> existMbrProc(@RequestBody AdmMbrDTO admMbrDTO){ |
|
166 |
+ boolean result = false; |
|
167 |
+ if(admMbrService.mbrIdSearch(admMbrDTO) != null) { |
|
168 |
+ result = true; // 회원 아이디가 존재하는 경우 |
|
169 |
+ } |
|
170 |
+ |
|
171 |
+ if(result) { |
|
172 |
+ return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); |
|
173 |
+ } else { |
|
174 |
+ return resUtil.errorRes(MessageCode.LOGIN_USER_NOT_FOUND); |
|
175 |
+ } |
|
176 |
+ } |
|
177 |
+ |
|
178 |
+ /** |
|
179 |
+ * @param admMbrDTO -회원정보 |
|
180 |
+ * @return ResponseEntity - 비밀번호 수정 응답 결과 |
|
181 |
+ * |
|
182 |
+ * 새 비밀번호 설정 |
|
183 |
+ */ |
|
184 |
+ @PostMapping(value = "/setNewPswdProc.json") |
|
185 |
+ public ResponseEntity<?> setNewPswdProc(@RequestBody AdmMbrDTO admMbrDTO){ |
|
186 |
+ int result = admMbrService.setNewPswdProc(admMbrDTO); |
|
187 |
+ |
|
175 | 188 |
if(result > 0) { |
176 | 189 |
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); |
177 | 190 |
} else { |
--- src/main/java/com/takensoft/cms/mber/web/MberController.java
+++ src/main/java/com/takensoft/cms/mber/web/MberController.java
... | ... | @@ -63,4 +63,19 @@ |
63 | 63 |
boolean isExistence = mberService.passwordCheck(passwordDTO); |
64 | 64 |
return resUtil.successRes(isExistence, MessageCode.COMMON_SUCCESS); |
65 | 65 |
} |
66 |
+ |
|
67 |
+ /** |
|
68 |
+ * @param params - 이메일 |
|
69 |
+ * @return ResponseEntity - 이메일 중복 검사 결과 |
|
70 |
+ * |
|
71 |
+ * 이메일 중복 검사 |
|
72 |
+ */ |
|
73 |
+ @PostMapping(value = "/findByCheckEmail.json") |
|
74 |
+ public ResponseEntity<?> findByCheckEmail(@RequestBody HashMap<String, Object> params){ |
|
75 |
+ // 상세 조회 |
|
76 |
+ boolean result = mberService.findByCheckEmail(params); |
|
77 |
+ |
|
78 |
+ // 응답 처리 |
|
79 |
+ return resUtil.successRes(result, MessageCode.COMMON_SUCCESS); |
|
80 |
+ } |
|
66 | 81 |
}(파일 끝에 줄바꿈 문자 없음) |
--- src/main/resources/mybatis/mapper/mber/admMbr-SQL.xml
+++ src/main/resources/mybatis/mapper/mber/admMbr-SQL.xml
... | ... | @@ -283,28 +283,26 @@ |
283 | 283 |
</insert> |
284 | 284 |
|
285 | 285 |
<!-- |
286 |
- 작 성 자 : 박정하 |
|
287 |
- 작 성 일 : 2024.07.03 |
|
288 |
- 내 용 : 아이디 찾기 (로그인 아이디) |
|
286 |
+ 작 성 자 : 하석형 |
|
287 |
+ 작 성 일 : 2025.06.26 |
|
288 |
+ 내 용 : 이메일로 아이디 찾기 (로그인 아이디) |
|
289 | 289 |
--> |
290 |
- <select id="lgnIdSearch" parameterType="MberVO" resultType="String"> |
|
290 |
+ <select id="lgnIdSearchByEml" parameterType="AdmMbrDTO" resultType="String"> |
|
291 | 291 |
SELECT lgn_id |
292 | 292 |
FROM mbr_info |
293 |
- WHERE mbr_nm = #{mbrNm} |
|
294 |
- AND eml = #{eml} |
|
293 |
+ WHERE eml = #{eml} |
|
295 | 294 |
AND use_yn = 'Y' |
296 | 295 |
</select> |
297 | 296 |
|
298 | 297 |
<!-- |
299 | 298 |
작 성 자 : 박정하 |
300 | 299 |
작 성 일 : 2024.07.03 |
301 |
- 내 용 : 아이디 찾기 (멤버 아이디) |
|
300 |
+ 내 용 : 아이디 찾기 (회원 아이디) |
|
302 | 301 |
--> |
303 | 302 |
<select id="mbrIdSearch" parameterType="AdmMbrDTO" resultType="String"> |
304 | 303 |
SELECT mbr_id |
305 | 304 |
FROM mbr_info |
306 | 305 |
WHERE lgn_id = #{lgnId} |
307 |
- AND mbr_nm = #{mbrNm} |
|
308 | 306 |
AND eml = #{eml} |
309 | 307 |
AND use_yn = 'Y' |
310 | 308 |
</select> |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?