Переглянути джерело

휴면해제 기능 추가

jsshin 5 роки тому
батько
коміт
96377ce345

+ 2 - 0
src/main/java/com/style24/front/biz/service/TsfCustomerService.java

@@ -663,6 +663,8 @@ public class TsfCustomerService {
 	 */
 	public GagaMap releaseDormantCustomer(Customer customer) {
 		GagaMap result = new GagaMap();
+		customer.setRegNo(customer.getCustNo());
+		customer.setUpdNo(customer.getCustNo());
 		boolean isRelase = coreCustomerService.saveDormantCustomerRelease(customer);
 		result.setBoolean("isRelase", isRelase);
 		return result;

+ 22 - 1
src/main/java/com/style24/front/biz/web/TsfCustomerController.java

@@ -686,11 +686,32 @@ public class TsfCustomerController extends TsfBaseController {
 	 * @since 2021. 03. 08
 	 */
 	@PostMapping("/dormant/release")
+	@ResponseBody
 	public GagaMap releaseDormantCustomer(@RequestBody Customer customer) {
-
+		String custNo = TsfSession.getAttribute("custNo");
+		if (StringUtils.isBlank(custNo) || StringUtils.isBlank(customer.getEncData())) {
+			throw new IllegalStateException("로그인 후 재인증 해주세요.");
+		}
+		customer.setCustNo(Integer.parseInt(custNo));
 		return customerService.releaseDormantCustomer(customer);
 	}
 
+	/**
+	 * 휴면해제 완료화면
+	 *
+	 * @return ModelAndView - 가입완료 화면
+	 * @author jsshin
+	 * @since 2021. 03. 08
+	 */
+	@GetMapping("/dormant/certify/complete/form")
+	public ModelAndView getDormantCeirtyCompleteForm() {
+		ModelAndView mav = new ModelAndView();
+
+		mav.setViewName(super.getDeviceViewName("customer/DormantCertifyCompleteForm"));
+
+		return mav;
+	}
+
 
 
 

+ 8 - 3
src/main/java/com/style24/front/support/security/TsfAuthenticationProvider.java

@@ -13,6 +13,7 @@ import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.core.authority.SimpleGrantedAuthority;
 import org.springframework.stereotype.Component;
 
+import com.style24.core.support.env.TscConstants;
 import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.front.biz.service.TsfLoginService;
 import com.style24.front.support.env.TsfConstants;
@@ -21,6 +22,7 @@ import com.style24.front.support.exception.TsfEmailDuplicationException;
 import com.style24.front.support.exception.TsfLockedAccountException;
 import com.style24.front.support.exception.TsfSecedeAccountException;
 import com.style24.front.support.exception.TsfUsernameNotFoundException;
+import com.style24.front.support.security.session.TsfSession;
 import com.style24.persistence.domain.Login;
 
 import lombok.extern.slf4j.Slf4j;
@@ -91,10 +93,13 @@ public class TsfAuthenticationProvider implements AuthenticationProvider {
 			}
 		}
 
-		if (loginInfo.getCustStat().equals("20")) { // 휴면회원
-//			WfoSession.setDormantMemberNo(request, loginInfo.getCustId());
+		if (TscConstants.CustStat.DORMANT.value().equals(loginInfo.getCustStat())) { // 휴면회원
+
+			// 휴면해제를 위한 고객번호 세선저장
+			TsfSession.setAttribute("custNo", String.valueOf(loginInfo.getCustNo()));
 			throw new TsfDormantAccountException(message.getMessage("LOGN_0006"));
-		} else if (loginInfo.getCustStat().equals("30")) { // 탈퇴회원
+
+		} else if (TscConstants.CustStat.SECEDE.value().equals(loginInfo.getCustStat())) { // 탈퇴회원
 			throw new TsfSecedeAccountException(message.getMessage("LOGN_0007"));
 		}
 

+ 0 - 0
src/main/webapp/WEB-INF/views/web/customer/DormantCertifyResultFormWeb.html → src/main/webapp/WEB-INF/views/web/customer/DormantCertifyCompleteFormWeb.html


+ 11 - 2
src/main/webapp/WEB-INF/views/web/customer/DormantCertifyFormWeb.html

@@ -63,15 +63,24 @@
 
 <script th:inline="javascript">
 /*<![CDATA[*/
-// 나이스 본인인증 후 콜백
+	// 나이스 본인인증 후 콜백
 	var fnNiceCallBack = function(encData) {
 		if (!gagajf.isNull(encData)) {
 			let custInfo = {};
 			custInfo.encData = encData;
 			let jsonData = JSON.stringify(custInfo);
-			gagajf.ajaxJsonSubmit('/customer/dormnat/release', jsonData, fnInfoConfirmCallBack);
+			gagajf.ajaxJsonSubmit('/customer/dormnat/release', jsonData, fnRelaseCallback);
 		}
 	};
+
+	var fnRelaseCallback = function (result) {
+		if (result.isRelase) {
+			cfnGoToPage(_PAGE_CUSTOMER_DORMANT_COMPLETE);
+		} else {
+			mcxDialog.alert("휴면해제 실패하였습니다. <br> 고객센터에 문의 하시기 바랍니다.");
+			return;
+		}
+	}
 /*]]>*/
 </script>
 

+ 2 - 1
src/main/webapp/ux/style24_link.js

@@ -8,7 +8,7 @@ const _PAGE_LOGOUT = _frontUrl + "/logout";	// GNB > 로그아웃
 const _PAGE_MAIN = _frontUrl + "/display/mall/main/form";	// 몰메인
 
 //== 고객 ==/
-const _PAGE_CUSTOMER_JOIN_TYPE = _frontUrl + "/customer/join/type/form";									// 고객 > 회원가입 유형
+const _PAGE_CUSTOMER_JOIN_TYPE = _frontUrl + "/customer/join/type/form";							// 고객 > 회원가입 유형
 const _PAGE_CUSTOMER_JOIN = _frontUrl + "/customer/join/form";										// 고객 > 회원가입
 const _PAGE_CUSTOMER_SNS_JOIN = _frontUrl + "/customer/sns/join/form";								// 고객 > SNS가입
 const _PAGE_CUSTOMER_JOIN_COMPLETE = _frontUrl + "/customer/join/complete/form";					// 고객 > 고객가입 > 완료페이지
@@ -17,6 +17,7 @@ const _PAGE_CUSTOMER_PWD_FIND = _frontUrl + "/customer/password/find/form";
 const _PAGE_CUSTOMER_PWD_CHANGE_FIND = _frontUrl + "/customer/password/change/form?pageGb=find";	// 고객 > 비밀번호 찾기> 비밀번호 변경 화면
 const _PAGE_CUSTOMER_PWD_CHANGE_TEMP = _frontUrl + "/customer/password/change/form?pageGb=temp";	// 고객 > 임시비밀번호 로그인 > 비밀번호 변경 화면
 const _PAGE_CUSTOMER_DORMANT = _frontUrl + "/customer/dormant/certify/form";						// 고객 > 휴면회원
+const _PAGE_CUSTOMER_DORMANT_COMPLETE = _frontUrl + "/customer/dormant/certify/complete/form";		// 고객 > 휴면회원 > 완료페이지
 
 //== 상품상세 ==/
 const _PAGE_GOODS_DETAIL = _frontUrl + "/goods/detail/form?goodsCd=";						// 상품 상세