외국인 국적 입력 기능

This commit is contained in:
hylee 2023-08-30 18:29:03 +09:00
parent 8c54e0be60
commit e438f2d8e6
5 changed files with 85 additions and 7 deletions

View File

@ -174,6 +174,8 @@ public class AdjstReqVO extends ComDefaultVO implements Serializable {
private String codeId; private String codeId;
private String loginNextUrl; private String loginNextUrl;
private String countryCode;
public String getSrchYear() { public String getSrchYear() {
@ -895,6 +897,12 @@ public class AdjstReqVO extends ComDefaultVO implements Serializable {
public void setExmpMgrId(String exmpMgrId) { public void setExmpMgrId(String exmpMgrId) {
this.exmpMgrId = exmpMgrId; this.exmpMgrId = exmpMgrId;
} }
public String getCountryCode() {
return countryCode;
}
public void setCountryCode(String countryCode) {
this.countryCode = countryCode;
}
} }

View File

@ -919,6 +919,13 @@ public class AdjstReqServiceImpl extends EgovAbstractServiceImpl implements Adj
if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){ if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){
for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){ for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){
if(StringUtils.isNotEmpty(model.getCountryCode())) {
model.setRpplPost("["+model.getCountryCode() + "] " +model.getRpplPost());
}
System.out.println(" model.getRpplPost() :: "+ model.getRpplPost());
model.setAdrSeq(adjstReqVO.getAdrSeq()); model.setAdrSeq(adjstReqVO.getAdrSeq());
// 관련인 생성 // 관련인 생성
model.setRpplSeq(rpplIdgenService.getNextStringId()); model.setRpplSeq(rpplIdgenService.getNextStringId());
@ -974,6 +981,13 @@ public class AdjstReqServiceImpl extends EgovAbstractServiceImpl implements Adj
int rs = 0; int rs = 0;
if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){ if(CollectionUtils.isNotEmpty(adjstReqVO.getAdjstRpplList())){
for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){ for(AdjstReqVO model : adjstReqVO.getAdjstRpplList()){
if(StringUtils.isNotEmpty(model.getCountryCode())) {
model.setRpplPost("["+model.getCountryCode() + "] " +model.getRpplPost());
}
System.out.println("model.getRpplPost() ::" + model.getRpplPost());
model.setAdrSeq(adjstReqVO.getAdrSeq()); model.setAdrSeq(adjstReqVO.getAdrSeq());
// 최초등록자 // 최초등록자
model.setFrstRegisterId(adjstReqVO.getFrstRegisterId()); model.setFrstRegisterId(adjstReqVO.getFrstRegisterId());

View File

@ -7,6 +7,8 @@ import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Properties; import java.util.Properties;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
@ -373,6 +375,29 @@ public class AdjstReqWebController {
req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ); req.setRpplTy(KccadrConstants.ADR_RPPL_TY_REQ);
list.add(req); list.add(req);
} }
int cnt = 0;
for(AdjstReqVO adj : list) {
if("10".equals(adj.getRpplTy())
&& "02".equals(adj.getRpplUsrDiv())) {
Pattern pattern = Pattern.compile("\\[(.*?)\\]");
Matcher matcher = pattern.matcher(adj.getRpplPost());
if (matcher.find()) {
String extracted = matcher.group(1);
// list.get(cnt).setCountryCode(extracted);
adj.setCountryCode(extracted);
System.out.println(" :: adj.getCountryCode() :: "+adj.getCountryCode());
}
// list.get(cnt).setRpplPost(adj.getRpplPost().replaceAll("\\[.*?\\]", ""));
adj.setRpplPost(adj.getRpplPost().replaceAll("\\[.*?\\]", "").trim());
}
cnt++;
}
model.addAttribute("editInfo", adjstReqService.checkAdjsReqEditStatus(adjstReqVO)); model.addAttribute("editInfo", adjstReqService.checkAdjsReqEditStatus(adjstReqVO));
model.addAttribute("master", adjMsrMaster); model.addAttribute("master", adjMsrMaster);
}else{ }else{

View File

@ -62,6 +62,10 @@ $( document ).ready(function(){
}); });
} }
// fn_countryCodeToggle();
// var rpplUsrDiv = '<c:out value="${list }" />'; // var rpplUsrDiv = '<c:out value="${list }" />';
// var rpplUsrDiv = '<c:out value="${list[1].rpplUsrDiv }" />'; // var rpplUsrDiv = '<c:out value="${list[1].rpplUsrDiv }" />';
// console.log('rpplUsrDiv : ', rpplUsrDiv); // console.log('rpplUsrDiv : ', rpplUsrDiv);
@ -69,6 +73,22 @@ $( document ).ready(function(){
}); });
function fn_countryCodeToggle(){
console.log('rpplUsrDiv :: ',$('[name="rpplUsrDiv"]').length);
if($('[name="rpplUsrDiv"]').length){
var divVal = $('[name="rpplUsrDiv"]').val();
console.log('divVal :: ', divVal);
if(divVal == '01'){
$('#countryCode').hide();
}else{
$('#countryCode').show();
}
}
};
</script> </script>
</head> </head>
<body> <body>
@ -448,6 +468,8 @@ $( document ).ready(function(){
<td> <td>
<label for="rpplPost${status.index}" class="label">우편번호 입력</label> <label for="rpplPost${status.index}" class="label">우편번호 입력</label>
<form:input path="adjstRpplList[${status.index}].rpplPost" id="rpplPost${status.index}" size="20" cssClass="adr_input" value="${list.rpplPost}" readonly="${list.rpplUsrDiv eq '01' || empty list.rpplUsrDiv ? true : ''}" placeholder="우편번호입력"/> <form:input path="adjstRpplList[${status.index}].rpplPost" id="rpplPost${status.index}" size="20" cssClass="adr_input" value="${list.rpplPost}" readonly="${list.rpplUsrDiv eq '01' || empty list.rpplUsrDiv ? true : ''}" placeholder="우편번호입력"/>
<kc:select codeId="ITN018" defaultText="${empty list.countryCode ? '가나' : list.countryCode }" name="countryCode" id="countryCode" css="style='display:${list.rpplUsrDiv eq '01' || empty list.rpplUsrDiv ? 'none' : ''}' " />
<button type="button" class="btnType01 btn_adr_search" onclick="fn_postCode(this);" title="새창팝업 열림" style="display: ${list.rpplUsrDiv ne '02' ? '' : 'none'}">우편번호 검색</button> <button type="button" class="btnType01 btn_adr_search" onclick="fn_postCode(this);" title="새창팝업 열림" style="display: ${list.rpplUsrDiv ne '02' ? '' : 'none'}">우편번호 검색</button>
<div class="detail_address"> <div class="detail_address">
<label for="rpplAddr${status.index}" class="label">주소 입력</label> <label for="rpplAddr${status.index}" class="label">주소 입력</label>

View File

@ -1139,10 +1139,16 @@ var AdjstReq = {
var rpplPhone3 = obj.find("input[name$=rpplPhone3]").val(); var rpplPhone3 = obj.find("input[name$=rpplPhone3]").val();
var rpplEmailYn = obj.find("input[name$=rpplEmailYn]:checked").val(); var rpplEmailYn = obj.find("input[name$=rpplEmailYn]:checked").val();
var rpplSmsYn = obj.find("input[name$=rpplSmsYn]:checked").val(); var rpplSmsYn = obj.find("input[name$=rpplSmsYn]:checked").val();
var rpplRealPost = obj.find("input[name$=rpplRealPost").val(); var rpplRealPost = obj.find("input[name$=rpplRealPost]").val();
var rpplRealAddr = obj.find("input[name$=rpplRealAddr").val(); var rpplRealAddr = obj.find("input[name$=rpplRealAddr]").val();
var rpplRealAddrDtl = obj.find("input[name$=rpplRealAddrDtl").val(); var rpplRealAddrDtl = obj.find("input[name$=rpplRealAddrDtl]").val();
var countryCode = '';
if(rpplUsrDiv == '02')
{
countryCode = obj.find("#countryCode option:selected").text();
}
var rpplPhone = rpplPhone1+rpplPhone2+rpplPhone3; var rpplPhone = rpplPhone1+rpplPhone2+rpplPhone3;
var rpplEmail = rpplEmail1+"@"+rpplEmail2; var rpplEmail = rpplEmail1+"@"+rpplEmail2;
@ -1169,6 +1175,7 @@ var AdjstReq = {
rpplRealAddr : rpplRealAddr, rpplRealAddr : rpplRealAddr,
rpplRealAddrDtl : rpplRealAddrDtl, rpplRealAddrDtl : rpplRealAddrDtl,
rpplPhone : rpplPhone, rpplPhone : rpplPhone,
countryCode : countryCode,
rpplEmail : rpplEmail, rpplEmail : rpplEmail,
rpplTy : rpplTy, rpplTy : rpplTy,
}; };
@ -1496,12 +1503,12 @@ var AdjstReq = {
if (selectedValue === '01') { if (selectedValue === '01') {
// 가장 가까운 주소 입력란을 찾아 readonly 속성을 추가합니다. // 가장 가까운 주소 입력란을 찾아 readonly 속성을 추가합니다.
$(thisObj).closest('tbody').find('.adr_input').attr('readonly', true); $(thisObj).closest('tbody').find('.adr_input').attr('readonly', true);
// $(thisObj).closest('tbody').find('.adr_input').val('');
$(thisObj).closest('tbody').find('.searchResultAddr').attr('readonly', true); $(thisObj).closest('tbody').find('.searchResultAddr').attr('readonly', true);
// $(thisObj).closest('tbody').find('.searchResultAddr').val('');
// 가장 가까운 우편번호 검색 버튼을 찾아 보이게 합니다. // 가장 가까운 우편번호 검색 버튼을 찾아 보이게 합니다.
$(thisObj).closest('tbody').find('.btn_adr_search').show(); $(thisObj).closest('tbody').find('.btn_adr_search').show();
// 국가코드 selectbox
$('#countryCode').hide();
} }
// "02": 외국인일 때 // "02": 외국인일 때
@ -1511,7 +1518,9 @@ var AdjstReq = {
$(thisObj).closest('tbody').find('.searchResultAddr').removeAttr('readonly'); $(thisObj).closest('tbody').find('.searchResultAddr').removeAttr('readonly');
// 가장 가까운 우편번호 검색 버튼을 찾아 숨깁니다. // 가장 가까운 우편번호 검색 버튼을 찾아 숨깁니다.
$(thisObj).closest('tbody').find('.btn_adr_search').hide() $(thisObj).closest('tbody').find('.btn_adr_search').hide();
// 국가코드 selectbox
$('#countryCode').show();
} }
} }
,expDivision : function(stepVal){ ,expDivision : function(stepVal){