diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 5f8344a..3fee1d5 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -9,12 +9,28 @@ - + + + + - - - - + + + + + + + + + + + + + + + + + @@ -60,7 +76,7 @@ - + @@ -69,11 +85,11 @@ + + + - - - @@ -217,7 +233,9 @@ - + + + 1645354476031 @@ -450,7 +468,21 @@ 1650025938024 - + + 1650035532550 + + + + 1650035532550 + + + 1650110425602 + + + + 1650110425602 + + @@ -470,8 +502,6 @@ - - @@ -495,6 +525,8 @@ - + + + \ No newline at end of file diff --git a/src/main/java/com/backoffice/api/ApiSMSController.java b/src/main/java/com/backoffice/api/ApiSMSController.java index 48a4cb1..dbfe6fc 100644 --- a/src/main/java/com/backoffice/api/ApiSMSController.java +++ b/src/main/java/com/backoffice/api/ApiSMSController.java @@ -2,6 +2,8 @@ package com.backoffice.api; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + import com.backoffice.constants.ConstantSystem; import com.backoffice.admin.bf.ConstantBF; import com.backoffice.admin.member.member_issued_pwd.A_Member_issued_pwdBO; @@ -512,6 +514,140 @@ public class ApiSMSController extends AbstractControllerManager{ } + /** + * 전화번호 변경을 위한 휴대폰 인증번호 발송 + * @param model + * @param request + * @param response + * @return + */ + @RequestMapping(value="send_sms_change_phone", produces="text/plain;charset=UTF-8") + @ResponseBody + public String send_sms_change_phone(@ModelAttribute("model") ModelMap model, HttpServletRequest request, HttpServletResponse response) { + HttpSession session = request.getSession(false); + DataMap rm_mem = (DataMap) session.getAttribute(ConstantSystem.SESSION_RM_MEMBER); + + DataMap paramMap = this.getDataMapFromRequest(request); + + // need params + String[] arrParam = {"phone_num"}; + + // check head parameter + int isValid = checkHeaderParam(AbstractControllerManager.CHECK_NEED_PARAMS, paramMap); + + String json = "empty"; + DataMap map_json = new DataMap(); + + map_json.put("RESULT", "false"); + map_json.put("RESULT_CODE", "200"); + + String ip = ""; + HttpServletRequest req = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest(); + ip = req.getHeader("X-FORWARDED-FOR"); + if (ip == null){ + ip = req.getRemoteAddr(); + } + + //바꿀 전화번호가 회원의 기존 전화번호와 같을 경우 처리 불가 + if(rm_mem.get("phone_num").equals(paramMap.get("phone_num"))) { + map_json.put("MSG", "변경 전화번호가 이전 전화번호와 같습니다."); + json = RenaStringUtil.getJSONFromMap(map_json); + return json; + } + + json = RenaStringUtil.getJSONFromMap(map_json); + + if(isValid == 0){ + // check parameter for api + if(checkNeedParam(arrParam, paramMap) == true){ + map_json.put("RESULT", "false"); + + json = RenaStringUtil.getJSONFromMap(map_json); + }else{ + try { + map_json.put("RESULT", "true"); + + String is_test = RenaStringUtil.getData(paramMap, "is_test"); + String phone_num = RenaStringUtil.getData(paramMap, "phone_num"); + String check_num = DateUtil.getUniqueNumber(4); + paramMap.put("check_num", check_num); + paramMap.put("sms_cd_no", SMS_STATUS_READY); + + ConstantResultCode.putResultCode(map_json, true, ConstantResultCode.RESULT_MEMBER_IS_BEING); // json result code + String s_no = String.valueOf(apiSMSBO.insert_sms_log(paramMap)); + paramMap.put("s_no", s_no); + + String arr[] = new String[7]; + arr[0] = "sms"; // SMS/LMS 발송 구분 + arr[1] = "sona_" + s_no; // 발송 결과 확인을 위한 고객이 생성 관리 하는 Unique Key (MAX 40byte) (해당 키를 이용하여 어떤 발송 건인지에 대한 구분을 해줌. 겹치지 않을만한 무작위 문자열) + arr[2] = "폰 인증"; // LMS 발송 시 제목으로 사용 SMS 발송 시는 수신자에게 내용이 보이지 않습니다. + arr[3] = "[이유식당] 인증번호 : " + check_num; // 본문 (90byte 제한: SMS의 경우) + arr[4] = SEND_PHONE_NUM; // 발신 번호(010-0000-0000 or 01000000000) + arr[5] = phone_num; // 수신 번호(010-0000-0000 or 01000000000) + arr[6] = "0"; // 예약 일자 "2013-07-30 12:00:00" 또는 "0" 0 또는 빈값(null)은 즉시 발송 + + String api_id = ConstantSystem.API_ID; + String api_key = ConstantSystem.API_KEY; + ApiClass api = new ApiClass(api_id, api_key); + + String responseXml = null; + ApiResult res = null; + + String sms_code = null; + String sms_msg = null; + + try{ + + if("Y".equals(is_test) == false){ + responseXml = api.send(arr); + + res = api.getResult( responseXml ); + System.out.println( "code = [" + res.getCode() + "] mesg=[" + res.getMesg() + "]" ); + + + if( res.getCode().compareTo("0000") == 0 ) + { + String resultXml = api.getResultXml(responseXml); + System.out.println("result xml : \n" + resultXml); + } + + sms_code = res.getCode(); + sms_msg = res.getMesg(); + + }else{ + sms_code = "test_code"; + sms_msg = "input:" + check_num; + } + + paramMap.put("sms_cd_no", SMS_STATUS_READY); + }catch(Exception ex1){ + sms_code = "EX"; + sms_msg = ex1.getMessage(); + + paramMap.put("sms_cd_no", SMS_STATUS_SEND_FAIL); + } + + paramMap.put("sms_code", sms_code); + paramMap.put("sms_msg", sms_msg); + apiSMSBO.update_sms_log_by_s_no(paramMap); + + map_json.put("s_no", s_no); + map_json.put("check_num", check_num); + map_json.put("sms_code", sms_code); + map_json.put("sms_msg", sms_msg); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + + map_json.put("RESULT", "false"); + map_json.put("MSG", "시스템 장애가 발생하였습니다"); + } + json = RenaStringUtil.getJSONFromMap(map_json); + } + } + return json; + } + @RequestMapping(value="confirm_sms", produces="text/plain;charset=UTF-8") @ResponseBody public String confirm_sms(@ModelAttribute("model") ModelMap model, HttpServletRequest request, HttpServletResponse response) { @@ -690,6 +826,132 @@ public class ApiSMSController extends AbstractControllerManager{ return json; } + + /** + * 전화번호 변경 sms 인증코드 확인 + * @param model + * @param request + * @return + */ + @RequestMapping(value="confirm_change_phone_sms", produces="text/plain;charset=UTF-8") + @ResponseBody + public String confirm_change_phone_sms(@ModelAttribute("model") ModelMap model, HttpServletRequest request) { + DataMap paramMap = this.getDataMapFromRequest(request); + + // need params + String[] arrParam = {"s_no","phone_num","check_num"}; + + // check head parameter + int isValid = checkHeaderParam(AbstractControllerManager.CHECK_NEED_PARAMS, paramMap); + + String json = "empty"; + DataMap map_json = new DataMap(); + + map_json.put("RESULT", "false"); + map_json.put("RESULT_CODE", "200"); + + HttpServletRequest req = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest(); + json = RenaStringUtil.getJSONFromMap(map_json); + + if(isValid == 0){ + // check parameter for api + if(checkNeedParam(arrParam, paramMap) == true){ + map_json.put("RESULT", "false"); + + json = RenaStringUtil.getJSONFromMap(map_json); + }else{ + try { + map_json.put("RESULT", "true"); + + /** 인증코드 확인 시작 **/ + DataMap rm_check = apiSMSBO.select_sms_log_for_check(paramMap); + + if(rm_check == null){ + paramMap.put("sms_cd_no", SMS_STATUS_CHECK_FAIL); + apiSMSBO.update_sms_log_by_s_no(paramMap); + map_json.put("check_status", "N"); + }else{ + paramMap.put("sms_cd_no", SMS_STATUS_CHECK_SUCCESS); + apiSMSBO.update_sms_log_by_s_no(paramMap); + map_json.put("check_status", "Y"); + map_json.put("s_no", ""); + map_json.put("RESULT_CODE", "200"); + json = RenaStringUtil.getJSONFromMap(map_json); + return json; + } + /** 인증코드 확인 종료 **/ + + //System.out.println(json); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + + map_json.put("RESULT", "false"); + map_json.put("MSG", "시스템 장애가 발생하였습니다"); + } + json = RenaStringUtil.getJSONFromMap(map_json); + } + } + return json; + } + + /** + * 사용자 전화번호 변경 처리 + * @param model + * @param request + * @return + */ + @RequestMapping(value="ajax_change_phone", produces="text/plain;charset=UTF-8") + @ResponseBody + public String ajax_change_phone(@ModelAttribute("model") ModelMap model, HttpServletRequest request) { + HttpSession session = request.getSession(false); + DataMap rm_mem = (DataMap) session.getAttribute(ConstantSystem.SESSION_RM_MEMBER); + + DataMap paramMap = this.getDataMapFromRequest(request); + + // need params + String[] arrParam = {"phone_num"}; + + // check head parameter + int isValid = checkHeaderParam(AbstractControllerManager.CHECK_NEED_PARAMS, paramMap); + + String json = "empty"; + DataMap map_json = new DataMap(); + + map_json.put("RESULT", "false"); + map_json.put("RESULT_CODE", "200"); + + HttpServletRequest req = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest(); + json = RenaStringUtil.getJSONFromMap(map_json); + + if(isValid == 0){ + // check parameter for api + if(checkNeedParam(arrParam, paramMap) == true){ + map_json.put("RESULT", "false"); + json = RenaStringUtil.getJSONFromMap(map_json); + }else{ + try { + paramMap.put("email", rm_mem.get("email")); + aPIMemberBO.update_member_phone(paramMap); + map_json.put("RESULT", "true"); + + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + + map_json.put("RESULT", "false"); + map_json.put("MSG", "시스템 장애가 발생하였습니다"); + } + json = RenaStringUtil.getJSONFromMap(map_json); + } + } + System.out.println("json:" + json); + String callback = RenaStringUtil.getData(paramMap, "callback"); + //json = callback + "(" + json + ")"; + + return json; + } + /** * 비밀번호 변경 이메일 인증코드 확인 * @param model diff --git a/src/main/java/com/backoffice/api/bo/APIMemberBO.java b/src/main/java/com/backoffice/api/bo/APIMemberBO.java index 416f3f0..893f237 100644 --- a/src/main/java/com/backoffice/api/bo/APIMemberBO.java +++ b/src/main/java/com/backoffice/api/bo/APIMemberBO.java @@ -7,6 +7,8 @@ public interface APIMemberBO { DataMap select_member_is_being_member_id(DataMap paramMap) throws Exception; DataMap select_member_with_pwd(DataMap paramMap) throws Exception; DataMap select_member_with_email_phone(DataMap paramMap) throws Exception; + + Object update_member_phone(DataMap paramMap) throws Exception; Object reset_pwd(DataMap paramMap) throws Exception; Object update_member_with_pwd(DataMap paramMap) throws Exception; } \ No newline at end of file diff --git a/src/main/java/com/backoffice/api/bo/APIMemberBOImpl.java b/src/main/java/com/backoffice/api/bo/APIMemberBOImpl.java index e017942..23bc6ef 100644 --- a/src/main/java/com/backoffice/api/bo/APIMemberBOImpl.java +++ b/src/main/java/com/backoffice/api/bo/APIMemberBOImpl.java @@ -105,4 +105,24 @@ public class APIMemberBOImpl extends AbstractBOManager implements APIMemberBO { return resultObj; } + + @Override + public Object update_member_phone(DataMap paramMap) throws Exception{ + Object resultObj = null; + + try { + generalDAO.setNamespace(SQLMAP_NAMESPACE); + generalDAO.startTransaction(); + + generalDAO.update("update_member_phone", paramMap); + + generalDAO.commitTransaction(); + } catch (SQLException e) { + throw e; + }finally{ + generalDAO.endTransaction(); + } + + return resultObj; + } } diff --git a/src/main/java/com/backoffice/m/login/M_LoginController.java b/src/main/java/com/backoffice/m/login/M_LoginController.java index 992c19f..4a2e779 100644 --- a/src/main/java/com/backoffice/m/login/M_LoginController.java +++ b/src/main/java/com/backoffice/m/login/M_LoginController.java @@ -313,6 +313,7 @@ public class M_LoginController extends AbstractControllerManager{ return "m/login/view_pw_reset_phone_02"; } + @RequestMapping(value="logout") public String logout(@ModelAttribute("model") ModelMap model, HttpServletRequest request, HttpServletResponse response , RedirectAttributes redirectAttributes) { diff --git a/src/main/java/com/backoffice/m/member_env/M_Member_envController.java b/src/main/java/com/backoffice/m/member_env/M_Member_envController.java index 27e9764..55a50f9 100644 --- a/src/main/java/com/backoffice/m/member_env/M_Member_envController.java +++ b/src/main/java/com/backoffice/m/member_env/M_Member_envController.java @@ -64,6 +64,31 @@ public class M_Member_envController extends AbstractControllerManager{ M_Util gmUtil = new M_Util(); + /** + * 전화번호 변경 SMS인증코드 확인 페이지 이동 + * @param model + * @param request + * @return + */ + @RequestMapping(value="view_set_account_phone_confirm") + public String view_set_account_phone_confirm(@ModelAttribute("model") ModelMap model, HttpServletRequest request){ + DataMap paramMap = gmUtil.getDataMapFromRequest(request); + gmUtil.redirectParam(model, paramMap); + return "m/member_env/view_set_account_phone_confirm"; + } + + /** + * 인증코드 정상확인 후 전화번호 변경 확인 페이지 이동 + * @param model + * @param request + * @return + */ + @RequestMapping(value="view_set_account_phone_02") + public String view_set_account_phone_02(@ModelAttribute("model") ModelMap model, HttpServletRequest request){ + DataMap paramMap = gmUtil.getDataMapFromRequest(request); + gmUtil.redirectParam(model, paramMap); + return "m/member_env/view_set_account_phone_02"; + } /** * 설정하기 > 계정연동 > 인증코드 확인 > 계정연동 성공(완료) 화면 diff --git a/src/main/resources/sqlmap/admin/bf/com.backoffice.admin.bf.bf_recommend.xml b/src/main/resources/sqlmap/admin/bf/com.backoffice.admin.bf.bf_recommend.xml index 38e192e..6a7ab70 100644 --- a/src/main/resources/sqlmap/admin/bf/com.backoffice.admin.bf.bf_recommend.xml +++ b/src/main/resources/sqlmap/admin/bf/com.backoffice.admin.bf.bf_recommend.xml @@ -63,6 +63,7 @@ FROM ( SELECT dbi_no ,food_cd + ,meaning ,name_real ,keyword1 ,keyword2 diff --git a/src/main/resources/sqlmap/api/com.backoffice.api.bf.xml b/src/main/resources/sqlmap/api/com.backoffice.api.bf.xml index 6852bba..632050e 100644 --- a/src/main/resources/sqlmap/api/com.backoffice.api.bf.xml +++ b/src/main/resources/sqlmap/api/com.backoffice.api.bf.xml @@ -136,4 +136,9 @@ AND password = #password# + + UPDATE tbl_member_confirm + SET phone_num = #phone_num# + WHERE email = #email# + diff --git a/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_cart_popup.ftl b/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_cart_popup.ftl index 29b4718..6c9c64c 100644 --- a/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_cart_popup.ftl +++ b/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_cart_popup.ftl @@ -5,7 +5,7 @@ - + 검색 @@ -36,6 +36,13 @@ ${item['g']!}g #list> + <#else> + + + 카트데 담긴 식재료가 없습니다. + + + #if> diff --git a/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_ingre_recommend.ftl b/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_ingre_recommend.ftl index 2a2475c..c30fedf 100644 --- a/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_ingre_recommend.ftl +++ b/src/main/webapp/WEB-INF/views/ftl/m/bf_food/list_bf_ingre_recommend.ftl @@ -60,7 +60,7 @@ <#if model['ingre']?has_content> <#list model['ingre'] as item> - ${item['name_real']!} + ${item['name_real']!} ${item['meaning']!} #list> #if> diff --git a/src/main/webapp/WEB-INF/views/ftl/m/bf_food/view_bf_homemade_popup.ftl b/src/main/webapp/WEB-INF/views/ftl/m/bf_food/view_bf_homemade_popup.ftl index e988872..b43c615 100644 --- a/src/main/webapp/WEB-INF/views/ftl/m/bf_food/view_bf_homemade_popup.ftl +++ b/src/main/webapp/WEB-INF/views/ftl/m/bf_food/view_bf_homemade_popup.ftl @@ -43,7 +43,7 @@ - 조리과정 + 레시피 <#if model['rm']['recipe1']?exists>${model['rm']['recipe1']!}#if> <#if model['rm']['recipe2']?exists>${model['rm']['recipe2']!}#if> @@ -76,36 +76,6 @@ -<#if (model['rm_child']['m']>5)&&(model['rm_child']['m']<60)> - - - 영양추천 - - 연관식재료 - - <#if model['ingre']?has_content> - <#list model['ingre'] as item> - - - - ${item['name_real']!} - - - <#if item['keyword1']?exists>${item['keyword1']!}#if> - <#if item['keyword2']?exists>, ${item['keyword2']!}#if> - <#if item['keyword3']?exists>, ${item['keyword3']!}#if> - - 조회수 ${item['views']!} - - - - #list> - #if> - - - - -#if> diff --git a/src/main/webapp/WEB-INF/views/ftl/m/include/confirm.ftl b/src/main/webapp/WEB-INF/views/ftl/m/include/confirm.ftl index 22e47a8..7a3893f 100644 --- a/src/main/webapp/WEB-INF/views/ftl/m/include/confirm.ftl +++ b/src/main/webapp/WEB-INF/views/ftl/m/include/confirm.ftl @@ -36,13 +36,14 @@ //SMS 아이디 또는 패스워드를 찾기 위한 인증코드 발송 function ajax_send_sms(flag) { + if (is_loading == false) { is_loading = true; - var phone_num = $('#phone').val(); if(phone_num == ''){ Swal.fire({ text: "휴대폰 번호를 입력해주세요.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success + is_loading == false // stop_timer(); }else{ $.ajax({ @@ -57,8 +58,7 @@ dataType:'json', error:function(request,status,error){ alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); - - // stop_timer(); + is_loading == false }, success:function(result){ console.log(result); @@ -69,25 +69,65 @@ if(RESULT == "true") { if(s_no != ''){ - // start_timer(); - // Swal.fire({ text: "발송되었습니다.", icon: 'success', showConfirmButton: false, timer: 1500 }); // success - - //아이디 찾기의 경우 - if(flag == 1) { + if(flag == 1) { //아이디 찾기의 경우 location.href = "${URL_ROOT}/m/login/view_find_id_02.do?phone_num=" + phone_num + "&s_no=" + s_no; } else if(flag == 2) { //패스워드 찾기의 경우 location.href = "${URL_ROOT}/m/login/view_pw_reset_phone_02.do?phone_num=" + phone_num + "&s_no=" + s_no; } - }else{ Swal.fire({ text: "인증코드가 발송되지 않았습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success - // stop_timer(); } } else { - // Swal.fire({ text: RESULT_MSG, icon: 'success', showConfirmButton: false, timer: 1500 }); // success - // stop_timer(); location.href='${URL_ROOT}/m/login/view_find_id_no_result.do?email=' + RESULT_MSG; } + is_loading = false; + } + }); + } + } + } + + //전화번호 변경을 위한 인증코드 발송 + function ajax_send_change_phone(flag) { + + if (is_loading == false) { + is_loading = true; + var phone_num = $('#phone').val(); + + if(phone_num == ''){ + Swal.fire({ text: "휴대폰 번호를 입력해주세요.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success + is_loading == false + }else{ + $.ajax({ + url:'${URL_ROOT}/api/sms/send_sms_change_phone.do?1=1', + type:'get', + data: { + "pt": 0 + ,"is_test":"N" + ,"phone_num": phone_num + ,"sms_use_cd_no": "SMS_CHANGE_PWD" + }, + dataType:'json', + error:function(request,status,error){ + alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); + is_loading == false + }, + success:function(result){ + console.log(result); + + var RESULT = result.RESULT; + var RESULT_MSG = result.MSG; + var s_no = result.s_no; + + if(RESULT == "true") { + if(s_no != ''){ + location.href = "${URL_ROOT}/m/member_env/view_set_account_phone_confirm.do?phone_num=" + phone_num + "&s_no=" + s_no; + }else{ + Swal.fire({ text: "인증코드가 발송되지 않았습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success + } + } else { + Swal.fire({ text: RESULT_MSG, icon: 'warning', showConfirmButton: false, timer: 1500 }); // success + } is_loading = false; } @@ -145,6 +185,88 @@ } } + //전화번호 변경을 위한 인증번호 확인 + function ajax_confirm_change_phone_sms() { + if (is_loading == false) { + is_loading = true; + + var s_no = $('#s_no').val(); + var phone_num = $('#phone').val(); + var check_num = $('#check_num').val(); + + if(check_num == ''){ + Swal.fire({ text: "인증번호를 입력해주세요.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success + is_loading = false; + }else{ + $.ajax({ + url:'${URL_ROOT}/api/sms/confirm_change_phone_sms.do?1=1', + type:'post', + data: { + "pt": 0 + ,"is_test":"N" + ,"s_no": s_no + ,"phone_num": phone_num + ,"check_num": check_num + ,"sms_use_cd_no": "SMS_CHANGE_PWD" + }, + dataType:'json', + error:function(request,status,error){ + alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); + // stop_timer(); + }, + success:function(result){ + console.log(result); + // var RESULT = result.RESULT; + // var RESULT_MSG = result.RESULT_MSG; + + if(result.check_status == 'Y'){ + // stop_timer(); + location.href='${URL_ROOT}/m/member_env/view_set_account_phone_02.do?phone=' + phone_num + "&check_num=" + check_num; + }else{ + Swal.fire({ text: "인증에 실패했습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success + is_loading = false; + } + + $('#check_status').val(result.check_status); + } + }); + } + } + } + + //전화번호 변경 처리 + function ajax_change_phone() { + if (is_loading == false) { + is_loading = true; + var phone_num = $('#phone').val(); + + $.ajax({ + url:'${URL_ROOT}/api/sms/ajax_change_phone.do?1=1', + type:'post', + data: { + "phone_num": phone_num + }, + dataType:'json', + error:function(request,status,error){ + is_loading = false; + alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); + }, + success:function(result){ + console.log(result); + // var RESULT = result.RESULT; + // var RESULT_MSG = result.RESULT_MSG; + + if(result.RESULT_CODE == '200'){ + Swal.fire({text: '전화번호가 변경 되었습니다.'}).then((result)=>{ window.location.href = '${URL_ROOT}/m/member_env/setting_nm.do?return_url=setting&view_nm=view_set_account' }) + }else{ + Swal.fire({ text: "전화번호 변경처리 실패했습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success + } + is_loading = false; + } + }); + } + } + //SMS 패스워드변경을 위한 인증번호 확인 function ajax_confirm_pw_sms() { if (is_loading == false) { diff --git a/src/main/webapp/WEB-INF/views/ftl/m/include/index_bottom.ftl b/src/main/webapp/WEB-INF/views/ftl/m/include/index_bottom.ftl index d9b0044..29c0008 100644 --- a/src/main/webapp/WEB-INF/views/ftl/m/include/index_bottom.ftl +++ b/src/main/webapp/WEB-INF/views/ftl/m/include/index_bottom.ftl @@ -162,6 +162,8 @@ <#--location.href = "${URL_ROOT}/m/bf_food/list_bf_homemade_recommend.do?smc_no=" + $("#smc_no").val() + "&return_url=list_bf_homemade_recommend";--> location.href = "${URL_ROOT}/m/bf_food/list_bf_homemade_recommend.do?return_url=list_bf_homemade_recommend"; } + +
${item['meaning']!}
<#if model['rm']['recipe1']?exists>${model['rm']['recipe1']!}#if> <#if model['rm']['recipe2']?exists>${model['rm']['recipe2']!}#if> @@ -76,36 +76,6 @@
${item['name_real']!}