- 전화번호 인증 만료시 재발행 버튼 적용

- 메인화면 기록이미지 노출(대표이미지 관련 문의해야함)
- 아기정보 성별 변경 오류 수정
dev_bert
jonghwan76 3 years ago
parent 5a9039aac5
commit 0ac737a25d

@ -9,9 +9,17 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="4099ff18-820b-4e43-a4c5-6159d58dccc4" name="변경" comment="회원가입 밸리데이션 및 유효성체크 보완">
<list default="true" id="4099ff18-820b-4e43-a4c5-6159d58dccc4" name="변경" comment="전화번호 인증만료 카운트 적용(인증만료시 인증코드 전송 페이지 이동 처리)">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/member_env/setting.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/member_env/setting.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/bf.properties" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/bf.properties" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/sqlmap/m/bf_daily_nutrition/com.backoffice.m.bf_daily_nutrition.xml" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/sqlmap/m/bf_daily_nutrition/com.backoffice.m.bf_daily_nutrition.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/bf_family_baby/view_bf_family_baby.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/bf_family_baby/view_bf_family_baby.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/include/confirm.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/include/confirm.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/index/index.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/index/index.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_find_id_02.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_find_id_02.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_join_member_01.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_join_member_01.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_join_member_01_confirm.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_join_member_01_confirm.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_pw_reset_phone_02.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_pw_reset_phone_02.ftl" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -74,7 +82,7 @@
</key>
</component>
<component name="RunManager">
<configuration name="Tomcat 9.0.43" type="#com.intellij.j2ee.web.tomcat.TomcatRunConfigurationFactory" factoryName="Local" APPLICATION_SERVER_NAME="Tomcat 9.0.43" ALTERNATIVE_JRE_ENABLED="true" ALTERNATIVE_JRE_PATH="1.8" nameIsGenerated="true">
<configuration name="Tomcat 8.5.73" type="#com.intellij.j2ee.web.tomcat.TomcatRunConfigurationFactory" factoryName="Local" APPLICATION_SERVER_NAME="Tomcat 8.5.73" ALTERNATIVE_JRE_ENABLED="true" ALTERNATIVE_JRE_PATH="1.8" nameIsGenerated="true">
<option name="OPEN_IN_BROWSER_URL" value="http://devops.lookylooks.ai:14288/bf/" />
<option name="COMMON_VM_ARGUMENTS" value="-Dfile.encoding=UTF-8" />
<option name="UPDATE_ON_FRAME_DEACTIVATION" value="true" />
@ -226,6 +234,7 @@
<workItem from="1650593739212" duration="527000" />
<workItem from="1650608503578" duration="718000" />
<workItem from="1650613105021" duration="532000" />
<workItem from="1650638814398" duration="7547000" />
</task>
<task id="LOCAL-00001" summary="최초 커밋">
<created>1645354476031</created>
@ -516,7 +525,6 @@
</entry>
</map>
</option>
<option name="oldMeFiltersMigrated" value="true" />
</component>
<component name="VcsManagerConfiguration">
<option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" />

@ -370,8 +370,8 @@
<select id="select_bf_daily_nutrition_list_by_day" resultClass="dataMap" parameterClass="dataMap">
SELECT x.*
,(select group_concat(tm.memo) from tbl_bf_daily_nutrition_memo tm where tm.dn_no = x.dn_no) as memo
,(select file_seq from tbl_mt_file tf where mt_file_seq = x.file_seq limit 1) as file_seq
,(select group_concat(tm.memo) from tbl_bf_daily_nutrition_memo tm where tm.dn_no = x.dn_no) as memo
,ifnull(append_300_img_file, append_src_img_file) as file_seq
,cis_1.title AS nutirition_cd_no_title
,(select color_cd from tbl_code_item ts where ts.val_1 = cis_1.cd_no) as color_cd
,CASE
@ -456,11 +456,8 @@
x.dn_no
,x.smc_no
,DATE_FORMAT(x.baseday, '%Y.%m.%d') AS baseday
,y.file_seq
,case
when x.append_300_img_file = 0 then x.append_src_img_file
else x.append_300_img_file
end as append_300_img_file
,x.append_src_img_file
,x.append_300_img_file
,x.nutirition_cd_no
,x.reg_dt
,x.mod_dt
@ -472,7 +469,6 @@
ELSE CONCAT(TIMESTAMPDIFF(MONTH, x.reg_dt, NOW()), '달 전')
END AS ago
FROM tbl_bf_daily_nutrition x
LEFT OUTER JOIN tbl_bf_daily_nutrition_attach y on x.dn_no = y.dn_no
WHERE 1 =1
AND x.smc_no = #smc_no#
AND x.baseday = #base_dt#

@ -44,10 +44,10 @@
<h3 class="p_sub_title">아기 성별<span style="color:#FF9C01">*</span></h3>
<div class="p_list_item gender_box">
<button type="button" value="F" id="" name="" class="<#if !item?? || item['gender']! == 'F'>active</#if> p_btn p_border_box">
<button type="button" onclick="fncChangeGender('F')" value="F" id="" name="" class="<#if !item?? || item['gender']! == 'F'>active</#if> p_btn p_border_box">
<span class="hidden icon">체크박스</span>여자
</button>
<button type="button" id="" name="" class="<#if item?? && item['gender']! == 'M'>active</#if> p_btn p_border_box">
<button type="button" onclick="fncChangeGender('M')" value="M" id="" name="" class="<#if item?? && item['gender']! == 'M'>active</#if> p_btn p_border_box">
<span class="hidden icon">체크박스</span>남자
</button>
</div>
@ -153,6 +153,10 @@
$(this).addClass("active").siblings().removeClass("active");
})
function fncChangeGender(gender) {
$("#gender").val(gender);
}
function fncShowDisease(bShow) {
if(bShow) {
$("#disease_yn").val("Y");

@ -10,9 +10,10 @@
if(s_time <= 0){
stop_timer();
// Swal.fire({ text: "다시 인증해주시기 바랍니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
Swal.fire({text: '인증 시간이 만료 되었습니다. 다시 인증해 주시기 바랍니다.'}).then((result)=>{ history.back(); })
$("#divConfirm").hide();
$("#divReSend").show();
Swal.fire({ text: "인증 시간이 만료 되었습니다. 다시 인증해주시기 바랍니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
// Swal.fire({text: '인증 시간이 만료 되었습니다. 다시 인증해 주시기 바랍니다.'}).then((result)=>{ history.back(); })
}else{
--s_time;
@ -23,6 +24,7 @@
// console.log('min:' + min + ' sec:' + sec + ' remain_time:' + remain_time);
$('#id_limit_time').text(remain_time);
}
}
@ -88,6 +90,58 @@
}
}
//회원가입을 위한 인증코드 발송
function ajax_send_join_sms() {
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
stop_timer();
}else{
$.ajax({
url:'${URL_ROOT}/api/sms/send_sms.do?1=1',
type:'post',
data: {
"pt": 0
,"is_test":"N"
,"phone_num": phone_num
,"sms_use_cd_no": "SMS_USE_CODE_JOIN"
},
dataType:'json',
error:function(request,status,error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
// stop_timer();
},
success:function(result){
var s_no = result.s_no;
if(result.RESULT_CODE == "401"){
alert(result.sms_msg);
// stop_timer();
}else{
if(s_no != ''){
// $('#s_no').val(s_no);
// start_timer();
// Swal.fire({ text: "발송되었습니다.", icon: 'success', showConfirmButton: false, timer: 1500 }); // success
location.href='${URL_ROOT}/m/login/view_join_member_01_confirm.do?s_no=' + s_no + "&name=" + $("#name").val() + "&phone=" + phone_num;
}else{
alert("code:s_no is null");
// stop_timer();
}
}
is_loading = false;
}
});
}
}
}
//전화번호 변경을 위한 인증코드 발송
function ajax_send_change_phone(flag) {
@ -186,6 +240,55 @@
}
}
//회원가입을 위한 인증번호 확인
function ajax_confirm_join_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_sms.do?1=1',
type:'post',
data: {
"pt": 0
,"is_test":"N"
,"s_no": s_no
,"phone_num": phone_num
,"check_num": check_num
},
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();
// Swal.fire({ text: "인증되었습니다.", icon: 'success', showConfirmButton: false, timer: 1500 }); // success
location.href='${URL_ROOT}/m/login/view_join_member_02.do';
}else{
Swal.fire({ text: "인증에 실패했습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
is_loading = false;
}
// $('#check_status').val(result.check_status);
}
});
}
}
}
//전화번호 변경을 위한 인증번호 확인
function ajax_confirm_change_phone_sms() {
if (is_loading == false) {
@ -317,7 +420,6 @@
}
}
//EMAIL 인증번호 발송
function ajax_find_pwd() {
var email = $('#email').val();
@ -411,7 +513,6 @@
}
}
function fncShowLoading() {
var width = 0;
var height = 0;
@ -441,6 +542,8 @@
$("#div_ajax_load_image").hide();
}
function NotReload(){ if( (event.ctrlKey == true && (event.keyCode == 78 || event.keyCode == 82)) || (event.keyCode == 116) ) { event.keyCode = 0; event.cancelBubble = true; event.returnValue = false; } }
function wrapWindowByMask(){
//화면의 높이와 너비를 구한다.
var maskHeight = $(document).height();

@ -40,7 +40,8 @@
<h1 class="brand_logo hidden">이유식당</h1>
</div>
<div class="right_btn_box">
<a href="${URL_ROOT}/m/bf_notice/list_bf_notice.do" class="side_Rbtn noti_new_btn hidden">알림센터</a>
<#-- <a href="${URL_ROOT}/m/bf_notice/list_bf_notice.do" class="side_Rbtn noti_new_btn hidden">알림센터</a>-->
<a href="${URL_ROOT}/m/bf_notice/list_bf_notice.do" class="side_Rbtn hidden">알림센터</a>
</div>
</header>

@ -25,9 +25,12 @@
<input type="text" maxlength="4" id="check_num" name="check_num" placeholder="인증코드를 입력하세요" class="input_box" />
남은시간 <span id="id_limit_time"></span>
</div>
<div class="input_search_phone_btn">
<div id="divConfirm" class="input_search_phone_btn">
<a href="javascript:ajax_confirm_sms();">인증코드 확인</a>
</div>
<div id="divReSend" style="display:none" class="input_search_phone_btn">
<a href="javascript:ajax_send_sms(1);">인증코드 재전송</a>
</div>
</div>
</div>
@ -41,6 +44,7 @@
<#include "/m/include/confirm.ftl">
<script>
document.onkeydown = NotReload;
start_timer();
</script>
<#include "/m/include/index_bottom.ftl">

@ -32,7 +32,7 @@
</div>
<div class="input_search_phone_btn">
<a href="javascript:ajax_send_sms();">인증요청</a>
<a href="javascript:ajax_send_join_sms();">인증요청</a>
<p>* 전화번호는 아이디와 비밀번호를 찾을 때 필요합니다.</p>
</div>
@ -43,93 +43,5 @@
</div>
<!-- //wrap -->
</body>
<script>
var is_loading = false;
var s_time = 180;
var timer_check;
/*
start_timer = function() {
stop_timer();
timer_check = setInterval(function() {
if(s_time <= 0){
stop_timer();
Swal.fire({ text: "다시 인증해주시기 바랍니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
}else{
--s_time;
var min = parseInt((s_time%3600)/60);
var sec = s_time%60;
if(sec > -1){
var remain_time = min + ":" + (sec < 10 ? "0" + sec : sec);
console.log('min:' + min + ' sec:' + sec + ' remain_time:' + remain_time);
$('#id_limit_time').text(remain_time);
}
}
}, 1000);
};
stop_timer = function(){
clearInterval(timer_check);
s_time = 180;
is_loading = false;
};
*/
function ajax_send_sms() {
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
stop_timer();
}else{
$.ajax({
url:'${URL_ROOT}/api/sms/send_sms.do?1=1',
type:'post',
data: {
"pt": 0
,"is_test":"N"
,"phone_num": phone_num
,"sms_use_cd_no": "SMS_USE_CODE_JOIN"
},
dataType:'json',
error:function(request,status,error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
// stop_timer();
},
success:function(result){
var s_no = result.s_no;
if(result.RESULT_CODE == "401"){
alert(result.sms_msg);
// stop_timer();
}else{
if(s_no != ''){
// $('#s_no').val(s_no);
// start_timer();
// Swal.fire({ text: "발송되었습니다.", icon: 'success', showConfirmButton: false, timer: 1500 }); // success
location.href='${URL_ROOT}/m/login/view_join_member_01_confirm.do?s_no=' + s_no + "&name=" + $("#name").val() + "&phone=" + phone_num;
}else{
alert("code:s_no is null");
// stop_timer();
}
}
is_loading = false;
}
});
}
}
}
</script>
<#include "/m/include/confirm.ftl">
<#include "/m/include/index_bottom.ftl">

@ -39,11 +39,13 @@
남은시간 <span id="id_limit_time"></span>
</div>
<div class="input_search_phone_btn">
<a href="javascript:ajax_confirm_sms();">인증확인</a>
<div id="divConfirm" class="input_search_phone_btn">
<a href="javascript:ajax_confirm_join_sms();">인증확인</a>
<p>* 전화번호는 아이디와 비밀번호를 찾을 때 필요합니다.</p>
</div>
<div id="divReSend" style="display:none" class="input_search_phone_btn">
<a href="javascript:ajax_send_join_sms();">인증코드 재전송</a>
</div>
</div>
</div>
</form>
@ -51,94 +53,10 @@
</div>
<!-- //wrap -->
</body>
<#include "/m/include/confirm.ftl">
<script>
var is_loading = false;
var s_time = 180;
var timer_check;
start_timer = function() {
stop_timer();
timer_check = setInterval(function() {
if(s_time <= 0){
stop_timer();
// Swal.fire({ text: "다시 인증해주시기 바랍니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
Swal.fire({text: '인증 시간이 만료 되었습니다. 다시 인증해 주시기 바랍니다.'}).then((result)=>{ history.back(); })
}else{
--s_time;
var min = parseInt((s_time%3600)/60);
var sec = s_time%60;
if(sec > -1){
var remain_time = min + ":" + (sec < 10 ? "0" + sec : sec);
// console.log('min:' + min + ' sec:' + sec + ' remain_time:' + remain_time);
$('#id_limit_time').text(remain_time);
}
}
}, 1000);
};
stop_timer = function(){
clearInterval(timer_check);
s_time = 180;
is_loading = false;
};
document.onkeydown = NotReload;
start_timer();
function ajax_confirm_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_sms.do?1=1',
type:'post',
data: {
"pt": 0
,"is_test":"N"
,"s_no": s_no
,"phone_num": phone_num
,"check_num": check_num
},
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();
// Swal.fire({ text: "인증되었습니다.", icon: 'success', showConfirmButton: false, timer: 1500 }); // success
location.href='${URL_ROOT}/m/login/view_join_member_02.do';
}else{
Swal.fire({ text: "인증에 실패했습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
is_loading = false;
}
// $('#check_status').val(result.check_status);
}
});
}
}
}
</script>
<#include "/m/include/index_bottom.ftl">

@ -8,7 +8,7 @@
<!-- header_sub -->
<header class="header_wrapper">
<a href="javascript:history.back();" class="side_Lbtn hidden pre_btn">이전으로</a>
<h1 class="header_title">아이디 찾기</h1>
<h1 class="header_title">비밀번호 찾기</h1>
</header>
<!-- //header_sub -->
@ -25,9 +25,12 @@
<input type="text" maxlength="4" id="check_num" name="check_num" placeholder="인증코드를 입력하세요" class="input_box" />
남은시간 <span id="id_limit_time"></span>
</div>
<div class="input_search_phone_btn">
<div id="divConfirm" class="input_search_phone_btn">
<a href="javascript:ajax_confirm_pw_sms();">인증코드 확인</a>
</div>
<div id="divReSend" style="display:none" class="input_search_phone_btn">
<a href="javascript:ajax_send_sms(2);">인증코드 재전송</a>
</div>
</div>
</div>
@ -41,6 +44,7 @@
<#include "/m/include/confirm.ftl">
<script>
document.onkeydown = NotReload;
start_timer();
</script>
<#include "/m/include/index_bottom.ftl">
Loading…
Cancel
Save