dev_bert
kyebyungha 3 years ago
commit 391ce13c8b

@ -9,17 +9,13 @@
<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/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" />
<change beforePath="$PROJECT_DIR$/src/main/java/com/backoffice/m/login/M_LoginController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/backoffice/m/login/M_LoginController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/index/include_nochild.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/index/include_nochild.ftl" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_login.ftl" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/WEB-INF/views/ftl/m/login/view_login.ftl" 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/webapp/m/html/4-4.회원가입-계정연동(ppt20).html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/webapp/m/html/4-4.회원가입-계정연동(ppt20).html" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -234,7 +230,11 @@
<workItem from="1650593739212" duration="527000" />
<workItem from="1650608503578" duration="718000" />
<workItem from="1650613105021" duration="532000" />
<workItem from="1650638814398" duration="7547000" />
<workItem from="1650638814398" duration="7670000" />
<workItem from="1650687202332" duration="1688000" />
<workItem from="1650693305284" duration="10783000" />
<workItem from="1650722240024" duration="593000" />
<workItem from="1650776418092" duration="21115000" />
</task>
<task id="LOCAL-00001" summary="최초 커밋">
<created>1645354476031</created>
@ -509,7 +509,42 @@
<option name="project" value="LOCAL" />
<updated>1650298188596</updated>
</task>
<option name="localTasksCounter" value="40" />
<task id="LOCAL-00040" summary="- 전화번호 인증 만료시 재발행 버튼 적용&#10;- 메인화면 기록이미지 노출(대표이미지 관련 문의해야함)&#10;- 아기정보 성별 변경 오류 수정">
<created>1650646900010</created>
<option name="number" value="00040" />
<option name="presentableId" value="LOCAL-00040" />
<option name="project" value="LOCAL" />
<updated>1650646900010</updated>
</task>
<task id="LOCAL-00041" summary="- 체크리스트 오류사항 수정">
<created>1650706673085</created>
<option name="number" value="00041" />
<option name="presentableId" value="LOCAL-00041" />
<option name="project" value="LOCAL" />
<updated>1650706673085</updated>
</task>
<task id="LOCAL-00042" summary="- 기본음악파일 삭제불가처리">
<created>1650709918086</created>
<option name="number" value="00042" />
<option name="presentableId" value="LOCAL-00042" />
<option name="project" value="LOCAL" />
<updated>1650709918086</updated>
</task>
<task id="LOCAL-00043" summary="소셜회원가입 오류수정">
<created>1650796823828</created>
<option name="number" value="00043" />
<option name="presentableId" value="LOCAL-00043" />
<option name="project" value="LOCAL" />
<updated>1650796823828</updated>
</task>
<task id="LOCAL-00044" summary="아이디 비밀번호 찾기 오류 수정">
<created>1650801028670</created>
<option name="number" value="00044" />
<option name="presentableId" value="LOCAL-00044" />
<option name="project" value="LOCAL" />
<updated>1650801028670</updated>
</task>
<option name="localTasksCounter" value="45" />
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
@ -529,11 +564,6 @@
<component name="VcsManagerConfiguration">
<option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="false" />
<option name="CHECK_NEW_TODO" value="false" />
<MESSAGE value="홈화면 퍼블리싱 기능 적용" />
<MESSAGE value="카카오,네이버 로그인 연동 설정 - 개발사이트(가온앤 아이디)" />
<MESSAGE value="데이터 연동작업" />
<MESSAGE value="퍼블리싱 기능 적용&#10;1. 설정하기&#10; - 인증코드 확인&#10; - 계정연동 하기&#10; - 기록 카테고리 수정&#10; - 자주쓰는 표현 수정&#10; &#10;2. 로그인화면" />
<MESSAGE value="index_bottom 공유관련 html 스크립트 분리" />
<MESSAGE value="index_bottom 공유관련 html 스크립트 분리-2" />
<MESSAGE value="D-Day 관리기능 적용" />
<MESSAGE value="D-Day 관리기능 적용-2" />
@ -554,6 +584,11 @@
<MESSAGE value="공유기능 퍼블리싱 및 기능 적용" />
<MESSAGE value="이유식당 홈 기록이미지 노출변경(최초 등록된것으로), 이후에 대표이미지로 변경해야함." />
<MESSAGE value="d-day 체크리스트 사항 수정" />
<option name="LAST_COMMIT_MESSAGE" value="d-day 체크리스트 사항 수정" />
<MESSAGE value="- 전화번호 인증 만료시 재발행 버튼 적용&#10;- 메인화면 기록이미지 노출(대표이미지 관련 문의해야함)&#10;- 아기정보 성별 변경 오류 수정" />
<MESSAGE value="- 체크리스트 오류사항 수정" />
<MESSAGE value="- 기본음악파일 삭제불가처리" />
<MESSAGE value="소셜회원가입 오류수정" />
<MESSAGE value="아이디 비밀번호 찾기 오류 수정" />
<option name="LAST_COMMIT_MESSAGE" value="아이디 비밀번호 찾기 오류 수정" />
</component>
</project>

@ -12,6 +12,8 @@ public interface A_Bf_noticeBO {
public abstract List<DataMap> select_bf_notice_img_by_gn_no(DataMap paramMap) throws Exception;
public abstract int select_bf_notice_list_count(DataMap paramMap) throws Exception;
public abstract int select_recent_notice_count(DataMap paramMap) throws Exception;
public abstract List<DataMap> select_bf_notice_list(DataMap paramMap) throws Exception;
public abstract DataMap select_bf_notice(DataMap paramMap) throws Exception;

@ -31,7 +31,20 @@ public class A_Bf_noticeBOImpl extends AbstractBOManager implements A_Bf_noticeB
return lm;
}
public int select_recent_notice_count(DataMap paramMap) throws Exception{
int result = 0;
try {
generalDAO.setNamespace(SQLMAP_NAMESPACE);
result = generalDAO.select_item_to_number("select_recent_notice_count", paramMap);
} catch (SQLException e) {
throw e;
}
return result;
}
public int select_bf_notice_list_count(DataMap paramMap) throws Exception{
int result = 0;

@ -396,7 +396,6 @@ public class ApiSMSController extends AbstractControllerManager{
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");
@ -422,7 +421,25 @@ public class ApiSMSController extends AbstractControllerManager{
paramMap.put("check_num", check_num);
paramMap.put("sms_cd_no", SMS_STATUS_READY);
DataMap rm_isbeing = apiSMSBO.select_member_is_being_member_id(paramMap);
DataMap rm = null;
//이메일 또는 전화번호로 회원정보 찾기
if(RenaStringUtil.isNullOrEmpty(phone_num) == false){
// paramMap.put("phone_num", phone_num);
rm = aPIMemberBO.select_member_with_email_phone(paramMap);
}
//소셜회원여부 확인
String social_type = RenaStringUtil.getData(rm, "social_type");
if(RenaStringUtil.isNullOrEmpty(social_type) == false) {
map_json.put("RESULT", "false");
map_json.put("RESULT_CODE", "300");
map_json.put("RESULT_MSG", "해당 이메일은 " + social_type + " 소셜연동으로 가입된 회원입니다. 해당 소셜계정을 확인해 주세요.");
json = RenaStringUtil.getJSONFromMap(map_json);
return json;
}
DataMap rm_isbeing = apiSMSBO.select_member_is_being_member_id(paramMap); //회원가입여부 체크
if(rm_isbeing != null){
ConstantResultCode.putResultCode(map_json, true, ConstantResultCode.RESULT_MEMBER_IS_BEING); // json result code
@ -494,14 +511,16 @@ public class ApiSMSController extends AbstractControllerManager{
}
}else{
map_json.put("RESULT", "false");
map_json.put("MSG", "가입된 전화번호가 아닙니다");
map_json.put("RESULT_CODE", "400");
map_json.put("RESULT_MSG", "가입된 전화번호가 아닙니다");
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
map_json.put("RESULT", "false");
map_json.put("MSG", "시스템 장애가 발생하였습니다");
map_json.put("RESULT_CODE", "500");
map_json.put("RESULT_MSG", "시스템 장애가 발생하였습니다");
}
json = RenaStringUtil.getJSONFromMap(map_json);
}

@ -10,6 +10,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import com.backoffice.admin.bf.bf_notice.A_Bf_noticeBO;
import com.backoffice.admin.bf.bf_score.A_Bf_scoreBO;
import com.backoffice.logic.FoodScoreCalculation;
import com.backoffice.logic.NutrientScoreCalculation;
@ -56,6 +57,7 @@ public class M_IndexController extends AbstractControllerManager{
@Autowired M_Bf_growth_bodyBO bf_growth_bodyBO;
@Autowired M_Bf_daily_nutritionBO bf_daily_nutritionBO;
@Autowired A_Bf_scoreBO scoreBO;
@Autowired A_Bf_noticeBO bf_noticeBO;
// paging info
int ROW_COUNT = 20;
@ -164,6 +166,9 @@ public class M_IndexController extends AbstractControllerManager{
// 아이
DataMap rm_child = init_child(model, request, paramMap);
int recent_notice_cnt = bf_noticeBO.select_recent_notice_count(paramMap);
paramMap.put("recent_notice_cnt", recent_notice_cnt);
if(rm_child != null) {
// 선택아이 성장 정보 조회
DataMap rm_last_h = init_child_info(model, request, paramMap, "Y", "N");

@ -15,7 +15,10 @@ public interface M_LoginBO {
public abstract DataMap select_member_with_pwd(DataMap paramMap) throws Exception;
public abstract DataMap select_member_with_id(DataMap paramMap) throws Exception;
public abstract DataMap select_member(DataMap paramMap) throws Exception;
public abstract int select_member_check_pw(DataMap paramMap) throws Exception;
public abstract int select_member_check_nickname(DataMap paramMap) throws Exception;
int update_member_with_pwd(DataMap paramMap) throws Exception;
int update_member(DataMap paramMap) throws Exception;
int update_member_pw(DataMap paramMap) throws Exception;

@ -84,7 +84,33 @@ public class M_LoginBOImpl extends AbstractBOManager implements M_LoginBO {
return rm;
}
public int select_member_check_pw(DataMap paramMap) throws Exception{
int result = 0;
try {
generalDAO.setNamespace(SQLMAP_NAMESPACE);
result = generalDAO.select_item_to_number("select_member_check_pw", paramMap);
} catch (SQLException e) {
throw e;
}
return result;
}
public int select_member_check_nickname(DataMap paramMap) throws Exception{
int result = 0;
try {
generalDAO.setNamespace(SQLMAP_NAMESPACE);
result = generalDAO.select_item_to_number("select_member_check_nickname", paramMap);
} catch (SQLException e) {
throw e;
}
return result;
}
@Override
public int update_member_with_pwd(DataMap paramMap) throws Exception{
int result = 0;

@ -113,9 +113,23 @@ public class M_LoginController extends AbstractControllerManager{
*/
@RequestMapping(value="view_join_member_01_confirm")
public String view_join_member_01_confirm(@ModelAttribute("model") ModelMap model, HttpServletRequest request){
DataMap paramMap = gmUtil.getDataMapFromRequest(request);
DataMap paramMap = gmUtil.getDataMapFromRequest(request); //페이지의 파라미터 값을 얻어옴.
HttpSession session = request.getSession(false);
HttpSession session = request.getSession(false); //현재 세션값을 얻어옴.
DataMap rm_mem = (DataMap) session.getAttribute(ConstantSystem.SESSION_RM_MEMBER); //SNS 가입정보(이름, 이메일, 닉네임 등) 확인
//소셜정보가 있다면 paramMap에 소셜가입정보 세팅
if(rm_mem != null) {
paramMap.put("sns_id", rm_mem.get("sns_id"));
paramMap.put("userEmail", rm_mem.get("userEmail"));
//소셜정보에 전화번호가 있다면 전화번호값 세팅
if(!rm_mem.get("phone").equals("")) {
paramMap.put("phone", rm_mem.get("phone"));
}
paramMap.put("social_type", rm_mem.get("social_type"));
}
session.setAttribute(M_Util.SESSION_RM_MEMBER, paramMap);
gmUtil.redirectParam(model, paramMap);
@ -476,7 +490,7 @@ public class M_LoginController extends AbstractControllerManager{
}else{
ConstantResultCode.putResultCode(map_json, true, ConstantResultCode.RESULT_MEMBER_IS_NULL); // json result code
gmUtil.redirectParamFlash(ra, DataMap.fromNameValue(new String[]{"phone_num","script_msg"}, new String[]{RenaStringUtil.getData(paramMap, "member_id"),"로그인에 실패했습니다"}));
gmUtil.redirectParamFlash(ra, DataMap.fromNameValue(new String[]{"phone_num","script_msg"}, new String[]{RenaStringUtil.getData(paramMap, "member_id"),"아이디 또는 비밀번호를 확인해 주세요."}));
}
}
}catch(Exception ex1){ redirect_url = gmUtil.redirectError(true, ex1, request, paramMap, ra, ""); ex1.printStackTrace();}
@ -526,7 +540,7 @@ public class M_LoginController extends AbstractControllerManager{
redirect_url = "redirect:" + action_url;
}else{
ConstantResultCode.putResultCode(map_json, true, ConstantResultCode.RESULT_MEMBER_IS_NULL); // json result code
gmUtil.redirectParamFlash(ra, DataMap.fromNameValue(new String[]{"phone_num","script_msg"}, new String[]{RenaStringUtil.getData(paramMap, "member_id"),"로그인에 실패했습니다"}));
gmUtil.redirectParamFlash(ra, DataMap.fromNameValue(new String[]{"phone_num","script_msg"}, new String[]{RenaStringUtil.getData(paramMap, "member_id"),"아이디 또는 비밀번호를 확인해 주세요."}));
}
}
}catch(Exception ex1){ redirect_url = gmUtil.redirectError(true, ex1, request, paramMap, ra, ""); ex1.printStackTrace();}
@ -590,6 +604,34 @@ public class M_LoginController extends AbstractControllerManager{
return redirect_url;
}
/**
*
* @param model
* @param request
* @param response
* @return
*/
@RequestMapping(value="ajax_check_nickname", method=RequestMethod.POST)
@ResponseBody
public HashMap<String, Object> ajax_check_nickname(@ModelAttribute("model") ModelMap model, HttpServletRequest request, HttpServletResponse response) {
DataMap paramMap = gmUtil.getDataMapFromRequest(request);
HashMap<String, Object> rm = new HashMap<String, Object>();
rm.put("RESULT", ConstantResultCode.RESULT_INIT);
try {
int check_cnt = loginBO.select_member_check_nickname(paramMap);
rm.put("RESULT", ConstantResultCode.RESULT_SUCCESS);
rm.put("check_cnt", check_cnt);
} catch (Exception ex1) {
ex1.printStackTrace();
rm.put("RESULT", ConstantResultCode.RESULT_EXCEPTION);
}
return rm;
}
@RequestMapping(value="nhnLogin_callback")
public String nhnLogin_callback(@ModelAttribute("model") ModelMap model, HttpServletRequest request){
return "m/login/nhnLogin_callback";
@ -657,8 +699,8 @@ public class M_LoginController extends AbstractControllerManager{
DataMap map_json = new DataMap();
ConstantResultCode.putResultCode(map_json, false, ConstantResultCode.RESULT_INIT); // json result code
DataMap paramMap = gmUtil.getDataMapFromRequest(request);
String socialType = request.getParameter("socialType");
String userPhone = "";
// String socialType = request.getParameter("socialType");
// String userPhone = "";
try {
paramMap = gmUtil.social_connect(request, paramMap);
@ -671,14 +713,18 @@ public class M_LoginController extends AbstractControllerManager{
//소셜아이디로 회원가입이 안되어 있을경우 회원가입페이지로 이동
if(socialMemberMap == null) {
// userPhone = paramMap.getString("phone"); //소셜회원가입정보 - 전화번호
redirect_url = "/m/login/view_join_member_01";
//소셜연동결과 전화번호값이 없으면 휴대폰 회원인증 1단계 회원가입페이지 이동
/*
if("".equals(userPhone)) {
redirect_url = "/m/login/view_join_member_01";
} else { //전화번호가 있으면 실명인증 없이 2단계 회원가입페이지 이동
redirect_url = "redirect:/m/login/view_join_member_02.do";
}
session.setAttribute(M_Util.SESSION_RM_MEMBER, paramMap); //세션에 소셜에서 받은 회원정보 세팅
*/
session.setAttribute(M_Util.SESSION_RM_MEMBER, paramMap); //세션에 소셜에서 받은 회원정보 세팅
} else {
String member_id = RenaStringUtil.getData(socialMemberMap, "member_id"); //회원아이디
ConstantResultCode.putResultCode(socialMemberMap, true, ConstantResultCode.RESULT_SUCCESS); // json result code - 결과코드 세팅
@ -704,7 +750,7 @@ public class M_LoginController extends AbstractControllerManager{
}
} else {
redirect_url = "redirect:/m/login/view_join_member.do";
redirect_url = "redirect:/m/login/view_join_member_01.do";
}
} catch (final Exception e) {
e.printStackTrace();

@ -439,17 +439,24 @@ public class M_Member_envController extends AbstractControllerManager{
result.put("RESULT", ConstantResultCode.RESULT_NEED_PARAMS);
}else {
HttpSession session = request.getSession(false);
String password = RenaStringUtil.getData(paramMap, "password_1"); //변경될 패스워드
paramMap.put("password", RenaEncription.getInstance().getSHA256(password));
if(loginBO.update_member_pw(paramMap) <= 0) {
result.put("RESULT", ConstantResultCode.RESULT_EXCEPTION);
//이전 암호와 동일한지 비교
int cnt = loginBO.select_member_check_pw(paramMap);
if(cnt > 0) {
result.put("RESULT", ConstantResultCode.RESULT_CUSTOM_MSG);
result.put("MSG", "신규 비밀번호가 이전 비밀번호와 동일합니다.");
} else {
session = request.getSession(false);
gmUtil.setSessionForMobileMember(request, paramMap);
result.put("RESULT", ConstantResultCode.RESULT_SUCCESS);
if(loginBO.update_member_pw(paramMap) <= 0) {
result.put("RESULT", ConstantResultCode.RESULT_EXCEPTION);
} else {
session = request.getSession(false);
gmUtil.setSessionForMobileMember(request, paramMap);
result.put("RESULT", ConstantResultCode.RESULT_SUCCESS);
}
}
}
} catch (Exception ex1) {

@ -30,7 +30,6 @@ public class M_Util {
private static Log log = LogFactory.getLog(LogAdminLog.class);
public static final String SESSION_RM_MEMBER = "rm_member";
public static final String SESSION_MEMBER_ID = "member_id";
public static final String SESSION_MEMBER_PASSWORD_DEC = "password_dec";

@ -33,6 +33,13 @@
</select>
<select id="select_recent_notice_count" resultClass="Integer" parameterClass="dataMap">
SELECT
count(*)
FROM tbl_bf_notice x
WHERE DATE_ADD(x.reg_dt, INTERVAL 7 day) <![CDATA[>]]> now();
</select>
<select id="select_bf_notice_list" resultClass="dataMap" parameterClass="dataMap">
SELECT x.*

@ -54,7 +54,7 @@
LEFT JOIN tbl_code_item_str cis_1 ON cis_1.cd_no = x.tp_cd_no
</select>
<select id="select_bf_notice_list_count" resultClass="Integer" parameterClass="dataMap">
<select id="select_bf_notice_list_count" resultClass="Integer" parameterClass="dataMap">
SELECT COUNT(*)
FROM tbl_bf_notice x
WHERE 1 =1

@ -11,6 +11,28 @@
AND x.email = #email#
</select>
<select id="select_member_check_pw" resultClass="Integer" parameterClass="dataMap">
SELECT
count(*)
FROM tbl_member x
WHERE member_id =
(
select
member_id
from tbl_member_confirm b
where email = #email#
)
AND x.password = #password#
</select>
<select id="select_member_check_nickname" resultClass="Integer" parameterClass="dataMap">
SELECT
count(*)
FROM tbl_member x
WHERE x.nickname = #nickname#
</select>
<select id="select_member_confirm_for_check_social" resultClass="dataMap" parameterClass="dataMap">
SELECT
x.member_id,
@ -218,12 +240,14 @@
member_id,
music_file_path,
music_name,
base_yn,
reg_dt
)
SELECT
#member_id#,
music_file_path,
music_name,
'Y',
now()
FROM
tbl_music_basic;

@ -57,6 +57,7 @@
a.music_file_path,
a.music_name,
a.mute_yn,
a.base_yn,
a.reg_dt
FROM tbl_music a
WHERE a.member_id = #member_id#

@ -30,7 +30,7 @@
<#else>
<p onclick="fncImgDivClick()" class="proimg"><img style="width: 65; height: 64px; object-fit:cover; border-radius:60px;" id="preview-img" src="../img/main/nutrition_cont_img_camera.png" alt="프로필 사진" /></p>
</#if>
<p class="info"><span class="name">사진을 등록해주세요</span></p>
<p class="info"><span class="name">사진변경 원할 시 이미지를 클릭해서 등록해주세요</span></p>
</div>
</div>
<h2 class="p_sub_title">아기 이름<span style="color:#FF9C01">*</span></h2>

@ -39,7 +39,7 @@
<#else>
<div class="item">
<div class="box">
<div><label>카트 담긴 식재료가 없습니다.</label></div>
<div><label>카트 담긴 식재료가 없습니다.</label></div>
</div>
<div></div>
</div>

@ -13,7 +13,7 @@
<!-- header_sub -->
<header class="header_wrapper">
<a href="javascript:back.return_url()" class="side_Lbtn hidden pre_btn">이전으로</a>
<a href="${URL_ROOT}/m/bf_growth/food_balance.do?return_url=index" class="side_Lbtn hidden pre_btn">이전으로</a>
<h1 class="header_title">영양</h1>
<div class="side_Rbtn"></div>
</header>

@ -13,7 +13,7 @@
<!-- header_sub -->
<header class="header_wrapper">
<a href="javascript:back.return_url()" class="side_Lbtn hidden pre_btn">이전으로</a>
<a href="${URL_ROOT}/m/bf_growth/nutrient_balance.do?return_url=index" class="side_Lbtn hidden pre_btn">이전으로</a>
<h1 class="header_title">영양</h1>
<div class="side_Rbtn"></div>
</header>

@ -67,7 +67,8 @@
console.log(result);
var RESULT = result.RESULT;
var RESULT_MSG = result.MSG;
var RESULT_MSG = result.RESULT_MSG;
var RESULT_CODE = result.RESULT_CODE;
var s_no = result.s_no;
if(RESULT == "true") {
@ -81,7 +82,11 @@
Swal.fire({ text: "인증코드가 발송되지 않았습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
}
} else {
location.href='${URL_ROOT}/m/login/view_find_id_no_result.do?email=' + RESULT_MSG;
if(RESULT_CODE == "300") {
Swal.fire({ text: RESULT_MSG, icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
} else {
location.href='${URL_ROOT}/m/login/view_find_id_no_result.do?email=' + RESULT_MSG;
}
}
is_loading = false;
}

@ -7,21 +7,21 @@
<div class="bxslider-wrapper" style="visibility: hidden; opacity: 0;">
<ul class="main_pofile_slider">
<li>
<div class="main_pofile_txt">
<div onclick="fncGoRegisterBaby()" style="cursor:pointer" class="main_pofile_txt">
<h2>아이를 등록하세요</h2>
<p>0세 0개월(남)</p>
</div>
<div class="main_pofile_img">
<p><a href="#"><img src="${URL_STATIC_ROOT}/m/img/main/main_profile_img02.png" alt="프로필 사진" /></a></p>
<p><a href="javascript:fncGoRegisterBaby()"><img src="${URL_STATIC_ROOT}/m/img/main/main_profile_img02.png" alt="프로필 사진" /></a></p>
</div>
</li>
<li>
<div class="main_pofile_txt">
<div onclick="fncGoRegisterBaby()" style="cursor:pointer" class="main_pofile_txt">
<h2>아이를 등록하세요</h2>
<p>0세 0개월(남)</p>
</div>
<div class="main_pofile_img">
<p><a href="#"><img src="${URL_STATIC_ROOT}/m/img/main/main_profile_img02.png" alt="프로필 사진" /></a></p>
<p><a href="javascript:fncGoRegisterBaby()"><img src="${URL_STATIC_ROOT}/m/img/main/main_profile_img02.png" alt="프로필 사진" /></a></p>
</div>
</li>
</ul>
@ -129,4 +129,9 @@
<!-- //main_cont_result -->
</div>
<script>
function fncGoRegisterBaby() {
location.href = "${URL_ROOT}/m/bf_family_baby/view_bf_family_baby.do?return_url=list_bf_family_baby";
}
</script>
<!-- //main_cont -->

@ -40,8 +40,11 @@
<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 hidden">알림센터</a>
<#if model['recent_notice_cnt'] gt 0 >
<a href="${URL_ROOT}/m/bf_notice/list_bf_notice.do" class="side_Rbtn noti_new_btn hidden">알림센터${model['recent_notice_cnt']}</a>
<#else>
<a href="${URL_ROOT}/m/bf_notice/list_bf_notice.do" class="side_Rbtn hidden">알림센터</a>
</#if>
</div>
</header>

@ -15,7 +15,7 @@
<div id="search_id" class="search_id">
<div class="search_phone">
<h3>비밀번호 재설정</h3>
<div class="input_search_phone">
<div style="padding-bottom: 15px" class="input_search_phone">
<input type="password" maxlength="15" id="password_1" name="password_1" value="" class="input_box" placeholder="영문/숫자/특수문자2조합 9~15자 이내로 작성해주세요." />
</div>
<div class="input_search_phone">

@ -22,13 +22,23 @@
<div class="sign_up_chk">
<h5>이름</h5>
<div class="input_name">
<input type="text" id="name" name="name" placeholder="이름을 입력하세요" maxlength="30" class="input_box" onfocus="this.placeholder=''"
onblur="this.placeholder='이름을 입력하세요'" />
<#if Session['rm_member']?exists>
<input type="text" id="name" name="name" value="${Session.rm_member['name']!}" placeholder="이름을 입력하세요" maxlength="30" class="input_box" onfocus="this.placeholder=''"
onblur="this.placeholder='이름을 입력하세요'" />
<#else>
<input type="text" id="name" name="name" value="" placeholder="이름을 입력하세요" maxlength="30" class="input_box" onfocus="this.placeholder=''"
onblur="this.placeholder='이름을 입력하세요'" />
</#if>
</div>
<h5>전화번호</h5>
<div class="input_phone">
<input type="text" maxlength="15" id="phone" name="phone" onkeyup="this.value = phone_mask(this.value)" placeholder="010-xxxx-zzzz" value="" class="input_box" onfocus="this.placeholder=''"
onblur="this.placeholder='전화번호를 입력하세요'" />
<#if Session['rm_member']?exists>
<input type="text" maxlength="15" id="phone" name="phone" value="${Session.rm_member['phone']!}" onkeyup="this.value = phone_mask(this.value)" placeholder="010-xxxx-zzzz" value="" class="input_box" onfocus="this.placeholder=''"
onblur="this.placeholder='전화번호를 입력하세요'" />
<#else>
<input type="text" maxlength="15" id="phone" name="phone" value="" onkeyup="this.value = phone_mask(this.value)" placeholder="010-xxxx-zzzz" value="" class="input_box" onfocus="this.placeholder=''"
onblur="this.placeholder='전화번호를 입력하세요'" />
</#if>
</div>
<div class="input_search_phone_btn">

@ -34,9 +34,10 @@
<p>* 로그인과 비밀번호 분실 시 이용되므로 실제 사용하는 이메일 주소를 정확하게 입력해 주세요.</p>
<h6>닉네임</h6>
<div class="input_phone">
<input type="text" id="nickname" name="nickname" maxlength="25" value="${Session.rm_member['userNm']!}" placeholder="닉네임을 입력해주세요" class="input_box" onfocus="this.placeholder=''"
<input type="text" onkeyup="characterCheck(this)" onkeydown="characterCheck(this)" onfocusout="check_nickname()" id="nickname" name="nickname" maxlength="25" value="${Session.rm_member['userNm']!}" placeholder="닉네임을 입력해주세요" class="input_box" onfocus="this.placeholder=''"
onblur="this.placeholder='닉네임을 입력해주세요'" />
<p>* 닉네임은 커뮤니티 게시글 작성 시 사용됩니다.</p>
<p id="nickname_check_text"></p>
</div>
<h6 id="divPw">비밀번호</h6>
<div class="input_reset_pw">
@ -76,11 +77,15 @@
<script>
var b_check_nickname = false;
$(document).ready(function(){
if($("#sns_id").val() == "") {
// $("#divPassword").show();
$("#divPw").show();
$(".input_reset_pw").show();
} else {
$("#divPw").hide();
$(".input_reset_pw").hide();
}
});
@ -128,10 +133,52 @@
Swal.fire({text:"개인정보 취급방침에 동의하셔야 합니다"}).then((result) => {$('#agree_privacy').focus()})
}else if(agree_other == false){
Swal.fire({text:"이용약관에 동의하셔야 합니다"}).then((result) => {$('#agree_other').focus()})
}else if(b_check_nickname == false) {
Swal.fire({text:"다른 닉네임을 설정해 주세요."}).then((result) => {$('#nickname').focus()})
}else{
theForm.submit();
}
}
function characterCheck(obj){
var regExp = /[ \{\}\[\]\/?.,;:|\)*~`!^\-_+┼<>@\#$%&\'\"\\\(\=]/gi;
// 허용할 특수문자는 여기서 삭제하면 됨, 띄어쓰기도 특수문자 처리됨 참고하셈
if( regExp.test(obj.value) ){
Swal.fire({ text: "특수문자는 입력하실수 없습니다.", icon: 'warning', showConfirmButton: false, timer: 1500 }); // success
obj.value = obj.value.substring( 0 , obj.value.length - 1 ); // 입력한 특수문자 한자리 지움
}
}
/* 닉네임 중복검사 */
function check_nickname() {
if($("#nickname").val() == "") {
b_check_nickname = false;
$("#nickname_check_text").html("");
return;
}
$.ajax({
url:'${URL_ROOT}/m/login/ajax_check_nickname.do',
type:'post',
data:{
"nickname":$("#nickname").val()
},
dataType:'json',
error:function(request,status,error){
},
success:function(result){
if(result.RESULT==0) {
if(result.check_cnt == 0) {
b_check_nickname = true;
$("#nickname_check_text").html("<span style='color:green'>해당 닉네임은 사용 가능합니다.</span>");
} else {
b_check_nickname = false;
$("#nickname_check_text").html("<span style='color:red'>해당 닉네임은 사용 불가 합니다.</span>");
}
}
}
});
}
</script>
<#include "/m/include/index_bottom.ftl">

@ -40,6 +40,9 @@
<input type="password" id="password" name="password" value="" maxlength="20" <#if model['phone_num']?exists>${model['temp_pwd']!}</#if>" class="" placeholder="비밀번호 입력">
</label>
</div>
<p>
<input type="checkbox" id="remember" name="remember"><label for="remember" style="padding-left:5px" class="lang">아이디 저장</label>
</p>
</div>
</form>
<div id="naver_id_login" style="display:none"></div>
@ -172,13 +175,15 @@
if($('#member_id').val() == ""){
alert('이메일을 입력해주세요');
$('#member_id').focus();
}else if($('#password').val() == ""){
} else if($('#password').val() == ""){
alert('비밀번호를 입력해주세요');
$('#password').focus();
}else{
setCookie('member_id', $('#member_id').val(), 365);
sessionStorage.setItem('member_id', $('#member_id').val())
} else {
if($("#remember").is(":checked")) {
setCookie('member_id', $('#member_id').val(), 365);
} else {
setCookie('member_id', "", 365);
}
$('#frmJoin').submit();
}
}
@ -196,10 +201,15 @@
if(sessionStorage.getItem('member_id')){
$('#member_id').val(sessionStorage.getItem('member_id'));
}else if(getCookie('member_id')){
setCookie('member_id', $('#member_id').val(), 365);
$('#member_id').val(getCookie('member_id'));
$("#remember").prop("checked", true);
// setCookie('member_id', $('#member_id').val(), 365);
}
<#if model['script_msg']?has_content>
<#if model['script_msg']?has_content>
setCookie('member_id', "", 365);
$("#remember").prop("checked", false);
Swal.fire({
text: "${model['script_msg']}",
icon: 'warning',

@ -15,7 +15,7 @@
<a href="${URL_ROOT}/m/member_env/setting_nm.do?return_url=setting&view_nm=view_set_account" class="more_item">계정 관리</a>
</div>
<div class="list_item">
<a href="${URL_ROOT}/m/bf_family_baby/list_bf_family_baby.do?return_url=setting" class="more_item">아이 정보 변경</a>
<a href="${URL_ROOT}/m/bf_family_baby/list_bf_family_baby.do?return_url=setting" class="more_item">아이 정보 입력/변경</a>
</div>
</div>

@ -22,7 +22,7 @@
<input type="hidden" name="music_list" value="/bf/upload/${item['music_file_path']!}">
<div>${item['music_name']!}</div>
<div class="order_button">
<button key="${item['idx']!}" onclick="fncRemove(this)" type="button">
<button key="${item['idx']!}" base="${item['base_yn']}" onclick="fncRemove(this)" type="button">
<img style="width:18px;height:18px" src="../img/setting/delete_ico.png"/>
</button>&nbsp;
<#if item['mute_yn'] == 'N'>
@ -143,10 +143,14 @@
}
function fncRemove(e) {
delList += $(e).attr("key") + ",";
$(e).parent().parent().remove();
if($(e).attr("base") == "N") {
delList += $(e).attr("key") + ",";
$(e).parent().parent().remove();
$("#delList").val(delList);
$("#delList").val(delList);
} else {
Swal.fire({text: '기본 음악파일은 삭제가 불가능 합니다.'});
}
}

@ -33,7 +33,7 @@
<div class="l_list">
<div class="cont_account">
<div class="view_account">
<p> 같은 아이 정보를 가지고 이유식당을 사용하시는 계정이 있으신가요? </p>
<p> 같은 아이 정보로 사용하시는 이유식당 계정이 있으신가요? </p>
</div>
</div>
</div>

Loading…
Cancel
Save