회원정보 수정에서 주소 제거

This commit is contained in:
김현욱
2026-01-02 15:53:43 +09:00
parent abf74d996b
commit d9a33f8dc5
7 changed files with 142 additions and 104 deletions

View File

@@ -291,6 +291,11 @@ public interface BOMbrMapper {
*/ */
public Integer selectBOMbrMbtlnbCompare(BOMbrVO mbrVO); public Integer selectBOMbrMbtlnbCompare(BOMbrVO mbrVO);
/**
* 회원 이메일 비교
* @param mbrVO
*/
public Integer selectBOMbrEmailCompare(BOMbrVO mbrVO);
/** /**
* 회원 이메일 수정 * 회원 이메일 수정

View File

@@ -500,6 +500,18 @@ public class BOMbrService {
return changeAt; return changeAt;
} }
/**
* 회원 정보 수정 전 이메일 변경 여부 체크
*
* @param mbrVO
* @return
* @author
*/
public Integer selectBOMbrEmailCompare(BOMbrVO mbrVO) {
Integer changeAt = mapper.selectBOMbrMbtlnbCompare(mbrVO);
return changeAt;
}
/** /**
* 회원 아이디 수정 * 회원 아이디 수정
* *

View File

@@ -62,6 +62,8 @@ import java.util.Map;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;
import static com.wb.domainserver.util.string.StringUtil.isEmpty;
/** /**
* *
* 마이페이지 회원 * 마이페이지 회원
@@ -746,7 +748,10 @@ public class MyMbrController {
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource)); throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
} }
vo.setMbtlnb(vo.getMbtlnb().replace("-","")); if(!isEmpty(vo.getMbtlnb())){
vo.setMbtlnb(vo.getMbtlnb().replace("-",""));
}
//모바일일 시 진행 //모바일일 시 진행
if("mobile".equals(mymbrVO.getUtilDv())){ if("mobile".equals(mymbrVO.getUtilDv())){
if("01".equals(user.getSysDvCd())){ if("01".equals(user.getSysDvCd())){
@@ -762,11 +767,15 @@ public class MyMbrController {
// Map<String, Object> resultMap = responseHandler.handleResponseAsMap( // Map<String, Object> resultMap = responseHandler.handleResponseAsMap(
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrMbtlnbCompare", mymbrVO) // sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrMbtlnbCompare", mymbrVO)
// ); // );
int result = service.selectBOMbrMbtlnbCompare(vo); // int result = service.selectBOMbrMbtlnbCompare(vo);
int result = service.selectBOMbrEmailCompare(vo);
if(result == 0){ if(result == 0){
if(!"Y".equals(mymbrVO.getMbtlnbChngAt())){ if(!"Y".equals(mymbrVO.getEmailChngAt())){
throw new WnbtRestException("휴대폰 인증이 필요합니다."); throw new WnbtRestException("이메일 인증이 필요합니다.");
} }
// if(!"Y".equals(mymbrVO.getMbtlnbChngAt())){
// throw new WnbtRestException("휴대폰 인증이 필요합니다.");
// }
} }
} }
@@ -854,7 +863,7 @@ public class MyMbrController {
bowithdrawalVO.setRegistIp(ip); bowithdrawalVO.setRegistIp(ip);
AnonymousUser user = MemberJwtContextHolder.getMemberInfo(); AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
if (StringUtil.isEmpty(bowithdrawalVO.getSopmalCd())) {//사용자 if (isEmpty(bowithdrawalVO.getSopmalCd())) {//사용자
bowithdrawalVO.setSopmalCd(user.getSopmalCd()); bowithdrawalVO.setSopmalCd(user.getSopmalCd());
} }
bowithdrawalVO.setRegusr(user.getUserInnb()); bowithdrawalVO.setRegusr(user.getUserInnb());

View File

@@ -61,6 +61,9 @@ public class MyMbrVO extends AbstractVO {
/** 휴대폰 번호 변경 여부*/ /** 휴대폰 번호 변경 여부*/
private String mbtlnbChngAt; private String mbtlnbChngAt;
/** 이메일 변경 여부*/
private String emailChngAt;
/** SMS수신여부 */ /** SMS수신여부 */
private String smsRecptnAt; private String smsRecptnAt;
@@ -68,7 +71,7 @@ public class MyMbrVO extends AbstractVO {
private String telnb; private String telnb;
/** 우편번호 */ /** 우편번호 */
@NotBlank(message = "우편번호") // @NotBlank(message = "우편번호")
private String zip; private String zip;
/** 도로명; 지번 */ /** 도로명; 지번 */
@@ -82,7 +85,7 @@ public class MyMbrVO extends AbstractVO {
private String rnmAdres; private String rnmAdres;
/** 상세주소 */ /** 상세주소 */
@NotBlank(message = "상세주소") // @NotBlank(message = "상세주소")
private String dtlAdres; private String dtlAdres;
/** 성별 */ /** 성별 */

View File

@@ -726,6 +726,15 @@
AND MBTLNB = HEX(AES_ENCRYPT(#{mbtlnb}, #{secretKey})) AND MBTLNB = HEX(AES_ENCRYPT(#{mbtlnb}, #{secretKey}))
</select> </select>
<!--회원 핸드폰 번호와 바뀐 핸드폰 번호 비교-->
<select id = "selectBOMbrEmailCompare" parameterType="com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrVO">
SELECT COUNT(1)
FROM GC_MEMBER MBR
WHERE MBR.MBR_INNB = #{mbrInnb}
AND MBR.MBR_DV_CD = #{mbrDvCd}
AND EMAIL = HEX(AES_ENCRYPT(#{email}, #{secretKey}))
</select>
<!-- 회원 정보 수정 --> <!-- 회원 정보 수정 -->
<update id="updateBOMbrInfoUpdt" parameterType="com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrVO"> <update id="updateBOMbrInfoUpdt" parameterType="com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrVO">
UPDATE GC_MEMBER SET UPDATE GC_MEMBER SET

View File

@@ -50,7 +50,7 @@
fn_alert_hide($("#email"), $("#emailAlert")); fn_alert_hide($("#email"), $("#emailAlert"));
fn_alert_hide($("#mbtlCert"), $("#mbtlCertAlert")); fn_alert_hide($("#mbtlCert"), $("#mbtlCertAlert"));
// fn_alert_hide($("#id"), $("#emailAlert")); // fn_alert_hide($("#id"), $("#emailAlert"));
fn_alert_hide($("#dtlAdres"), $("#postcodeAlert")); // fn_alert_hide($("#dtlAdres"), $("#postcodeAlert"));
// fn_alert_hide_selected(); // fn_alert_hide_selected();
//휴대폰번호 포매팅 //휴대폰번호 포매팅
@@ -765,16 +765,16 @@
/* ******************************************************** /* ********************************************************
* 우편번호 찾기 * 우편번호 찾기
******************************************************** */ ******************************************************** */
const fn_set_postcode = function(data) { // const fn_set_postcode = function(data) {
$('#postcode').val(data.postcode); // $('#postcode').val(data.postcode);
if (data.addressType == '02') { // if (data.addressType == '02') {
$('#adresDv').val(data.addressType); // $('#adresDv').val(data.addressType);
$('#address').val(data.jibunAddress); // $('#address').val(data.jibunAddress);
} else if (data.addressType == '01') { // } else if (data.addressType == '01') {
$('#adresDv').val(data.addressType); // $('#adresDv').val(data.addressType);
$('#address').val(data.roadAddress+data.extraAddress); // $('#address').val(data.roadAddress+data.extraAddress);
} // }
} // }
/* ******************************************************** /* ********************************************************
* 외부연동 로그인 ( 네이버, 카카오 ) * 외부연동 로그인 ( 네이버, 카카오 )
@@ -826,18 +826,18 @@
// return; // return;
// } // }
if ($('#postcode').val().trim() == '' || $('#address').val().trim() == '') { // if ($('#postcode').val().trim() == '' || $('#address').val().trim() == '') {
alert('우편번호를 선택해 주세요.'); // alert('우편번호를 선택해 주세요.');
$("#postcodeAlert").show(); // $("#postcodeAlert").show();
document.getElementById('postcodeBtn').scrollIntoView(); // document.getElementById('postcodeBtn').scrollIntoView();
return; // return;
} // }
if ($('#dtlAdres').val().trim() == '') { // if ($('#dtlAdres').val().trim() == '') {
alert('상세주소를 입력해 주세요.'); // alert('상세주소를 입력해 주세요.');
$('#dtlAdres').focus(); // $('#dtlAdres').focus();
return; // return;
} // }
const data = $("#mbrInfoUpdtForm").serialize(); const data = $("#mbrInfoUpdtForm").serialize();
if (confirm('회원 정보를 <spring:message code="confirm.common.update"/>')) { if (confirm('회원 정보를 <spring:message code="confirm.common.update"/>')) {
@@ -1265,34 +1265,34 @@
<p class="signUp__inputBox__alertText" id="brthDeAlert" style="display: none;">생년월을 선택해 주세요.</p> <p class="signUp__inputBox__alertText" id="brthDeAlert" style="display: none;">생년월을 선택해 주세요.</p>
</td> </td>
</tr> </tr>
<tr> <%-- <tr>--%>
<th> <%-- <th>--%>
<span class="editAccount__title">주소<span class="required-asterisk">*</span></span> <%-- <span class="editAccount__title">주소<span class="required-asterisk">*</span></span>--%>
</th> <%-- </th>--%>
<td> <%-- <td>--%>
<div class="inputAddress"> <%-- <div class="inputAddress">--%>
<div class="inputAddress__postalCode"> <%-- <div class="inputAddress__postalCode">--%>
<input type="text" class="input-text" id="postcode" name="zip" title="우편번호" placeholder="우편번호" <%-- <input type="text" class="input-text" id="postcode" name="zip" title="우편번호" placeholder="우편번호"--%>
value="<c:out value="${ resultMap.result.zip }"/>" readonly> <%-- value="<c:out value="${ resultMap.result.zip }"/>" readonly>--%>
<button type="button" id="postcodeBtn" class="btn md theme outline" onclick="fn_select_postcode(fn_set_postcode);"><spring:message code="button.zipcode"/></button> <%-- <button type="button" id="postcodeBtn" class="btn md theme outline" onclick="fn_select_postcode(fn_set_postcode);"><spring:message code="button.zipcode"/></button>--%>
</div> <%-- </div>--%>
<input type="text" class="input-text full" id="address" name="lnbAdres" title="주소" placeholder="주소" <%-- <input type="text" class="input-text full" id="address" name="lnbAdres" title="주소" placeholder="주소"--%>
<c:choose> <%-- <c:choose>--%>
<c:when test="${ resultMap.result.adresDv eq '01'}"> <%-- <c:when test="${ resultMap.result.adresDv eq '01'}">--%>
value="<c:out value="${ resultMap.result.rnmAdres }"/>" <%-- value="<c:out value="${ resultMap.result.rnmAdres }"/>"--%>
</c:when> <%-- </c:when>--%>
<c:when test="${ resultMap.result.adresDv eq '02'}"> <%-- <c:when test="${ resultMap.result.adresDv eq '02'}">--%>
value="<c:out value="${ resultMap.result.lnbAdres }"/>" <%-- value="<c:out value="${ resultMap.result.lnbAdres }"/>"--%>
</c:when> <%-- </c:when>--%>
</c:choose> <%-- </c:choose>--%>
readonly> <%-- readonly>--%>
<input type="text" class="input-text full" id="dtlAdres" name="dtlAdres" title="상세주소" placeholder="나머지 주소를 입력해 주세요." <%-- <input type="text" class="input-text full" id="dtlAdres" name="dtlAdres" title="상세주소" placeholder="나머지 주소를 입력해 주세요."--%>
value="<c:out value="${ resultMap.result.dtlAdres }"/>"> <%-- value="<c:out value="${ resultMap.result.dtlAdres }"/>">--%>
<input type="hidden" id="adresDv" name="adresDv" value="${ resultMap.result.adresDv }"> <%-- <input type="hidden" id="adresDv" name="adresDv" value="${ resultMap.result.adresDv }">--%>
</div> <%-- </div>--%>
<p class="signUp__inputBox__alertText" id="postcodeAlert">주소를 입력해 주세요.</p> <%-- <p class="signUp__inputBox__alertText" id="postcodeAlert">주소를 입력해 주세요.</p>--%>
</td> <%-- </td>--%>
</tr> <%-- </tr>--%>
<tr> <tr>
<th> <th>
<span class="editAccount__title">마케팅 수신동의</span> <span class="editAccount__title">마케팅 수신동의</span>

View File

@@ -48,7 +48,7 @@
fn_alert_hide($("#email"), $("#emailAlert")); fn_alert_hide($("#email"), $("#emailAlert"));
fn_alert_hide($("#mbtlCert"), $("#mbtlCertAlert")); fn_alert_hide($("#mbtlCert"), $("#mbtlCertAlert"));
// fn_alert_hide($("#id"), $("#emailAlert")); // fn_alert_hide($("#id"), $("#emailAlert"));
fn_alert_hide($("#dtlAdres"), $("#postcodeAlert")); // fn_alert_hide($("#dtlAdres"), $("#postcodeAlert"));
// fn_alert_hide_selected(); // fn_alert_hide_selected();
$('button').on('click', function(e) { $('button').on('click', function(e) {
@@ -849,17 +849,17 @@
/* ******************************************************** /* ********************************************************
* 우편번호 찾기 * 우편번호 찾기
******************************************************** */ ******************************************************** */
const fn_set_postcode = function(data) { // const fn_set_postcode = function(data) {
$('#postcode').val(data.postcode); // $('#postcode').val(data.postcode);
if (data.addressType == '02') { // if (data.addressType == '02') {
$('#adresDv').val(data.addressType); // $('#adresDv').val(data.addressType);
$('#address').val(data.jibunAddress); // $('#address').val(data.jibunAddress);
} else if (data.addressType == '01') { // } else if (data.addressType == '01') {
$('#adresDv').val(data.addressType); // $('#adresDv').val(data.addressType);
$('#address').val(data.roadAddress+data.extraAddress); // $('#address').val(data.roadAddress+data.extraAddress);
} // }
closeModal("postModal"); // closeModal("postModal");
} // }
/* ******************************************************** /* ********************************************************
* 외부연동 로그인 ( 네이버, 카카오 ) * 외부연동 로그인 ( 네이버, 카카오 )
@@ -911,18 +911,18 @@
// return; // return;
// } // }
if ($('#postcode').val().trim() == '' || $('#address').val().trim() == '') { // if ($('#postcode').val().trim() == '' || $('#address').val().trim() == '') {
fn_alert_show('우편번호를 선택해 주세요.'); // fn_alert_show('우편번호를 선택해 주세요.');
$("#postcodeAlert").show(); // $("#postcodeAlert").show();
document.getElementById('postcodeBtn').scrollIntoView(); // document.getElementById('postcodeBtn').scrollIntoView();
return; // return;
} // }
if ($('#dtlAdres').val().trim() == '') { // if ($('#dtlAdres').val().trim() == '') {
fn_alert_show('상세주소를 입력해 주세요.'); // fn_alert_show('상세주소를 입력해 주세요.');
$('#dtlAdres').focus(); // $('#dtlAdres').focus();
return; // return;
} // }
const data = $("#mbrInfoUpdtForm").serialize(); const data = $("#mbrInfoUpdtForm").serialize();
if (confirm('회원 정보를 <spring:message code="confirm.common.update"/>')) { if (confirm('회원 정보를 <spring:message code="confirm.common.update"/>')) {
@@ -1312,30 +1312,30 @@
</div> </div>
</div> </div>
</div> </div>
<div class="userForm__inputBox__item"> <%-- <div class="userForm__inputBox__item">--%>
<div class="userForm__inputBox__itemTitle">주소<span class="required-asterisk">*</span></div> <%-- <div class="userForm__inputBox__itemTitle">주소<span class="required-asterisk">*</span></div>--%>
<div class="inputAddress"> <%-- <div class="inputAddress">--%>
<div class="inputAddress__postalCode"> <%-- <div class="inputAddress__postalCode">--%>
<input type="text" class="input-text" id="postcode" name="zip" title="우편번호" placeholder="우편번호" <%-- <input type="text" class="input-text" id="postcode" name="zip" title="우편번호" placeholder="우편번호"--%>
value="<c:out value="${ resultMap.result.zip }"/>" readonly> <%-- value="<c:out value="${ resultMap.result.zip }"/>" readonly>--%>
<button type="button" id="postcodeBtn" class="btn md theme outline" onclick="fn_select_post_mobile(fn_set_postcode, '#postCodeCn', '#modalDiv'); return false;"><spring:message code="button.zipcode"/></button> <%-- <button type="button" id="postcodeBtn" class="btn md theme outline" onclick="fn_select_post_mobile(fn_set_postcode, '#postCodeCn', '#modalDiv'); return false;"><spring:message code="button.zipcode"/></button>--%>
</div> <%-- </div>--%>
<input type="text" class="input-text full" id="address" name="lnbAdres" title="주소" placeholder="주소" <%-- <input type="text" class="input-text full" id="address" name="lnbAdres" title="주소" placeholder="주소"--%>
<c:choose> <%-- <c:choose>--%>
<c:when test="${ resultMap.result.adresDv eq '01'}"> <%-- <c:when test="${ resultMap.result.adresDv eq '01'}">--%>
value="<c:out value="${ resultMap.result.rnmAdres }"/>" <%-- value="<c:out value="${ resultMap.result.rnmAdres }"/>"--%>
</c:when> <%-- </c:when>--%>
<c:when test="${ resultMap.result.adresDv eq '02'}"> <%-- <c:when test="${ resultMap.result.adresDv eq '02'}">--%>
value="<c:out value="${ resultMap.result.lnbAdres }"/>" <%-- value="<c:out value="${ resultMap.result.lnbAdres }"/>"--%>
</c:when> <%-- </c:when>--%>
</c:choose> <%-- </c:choose>--%>
readonly> <%-- readonly>--%>
<input type="text" class="input-text full" id="dtlAdres" name="dtlAdres" title="상세주소" placeholder="나머지 주소를 입력해 주세요." <%-- <input type="text" class="input-text full" id="dtlAdres" name="dtlAdres" title="상세주소" placeholder="나머지 주소를 입력해 주세요."--%>
value="<c:out value="${ resultMap.result.dtlAdres }"/>"> <%-- value="<c:out value="${ resultMap.result.dtlAdres }"/>">--%>
<input type="hidden" id="adresDv" name="adresDv" value="${ resultMap.result.adresDv }"> <%-- <input type="hidden" id="adresDv" name="adresDv" value="${ resultMap.result.adresDv }">--%>
</div> <%-- </div>--%>
<p class="userForm__inputBox__alertText" id="postcodeAlert" style="display: none;">주소를 입력해 주세요.</p> <%-- <p class="userForm__inputBox__alertText" id="postcodeAlert" style="display: none;">주소를 입력해 주세요.</p>--%>
</div> <%-- </div>--%>
<div class="userForm__inputBox__item"> <div class="userForm__inputBox__item">
<div class="userForm__inputBox__itemTitle">마케팅 수신 동의 <div class="userForm__inputBox__itemTitle">마케팅 수신 동의
</div> </div>