휴대폰번호 다중번호 인증 체크 로직

This commit is contained in:
hehihoho3@gmail.com 2024-11-18 20:20:36 +09:00
parent 3e2e039c80
commit 4f2a0e28b6
7 changed files with 393 additions and 324 deletions

View File

@ -185,5 +185,8 @@ public interface MjonMsgDataService {
public StatusResponse deleteCertPhoneInfo(MberCertPhoneVO mberCertPhoneVO);
public List<MberCertPhoneVO> selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO);
}

View File

@ -205,7 +205,7 @@ public class MjonMsgDataDAO extends EgovAbstractDAO {
}
public SendLogVO selectSysMsgLogCheck(SendLogVO sendLogVO) throws Exception{
return (SendLogVO) select("mjonMsgDAO.selectSysMsgLogCheck",sendLogVO);
return (SendLogVO) select("mjonMsgDAO.selectSysMsgLogCheck_new",sendLogVO);
}
@SuppressWarnings("unchecked")
@ -384,4 +384,9 @@ public class MjonMsgDataDAO extends EgovAbstractDAO {
update("mjonMsgDataDAO.deleteCertPhoneInfo", mberCertPhoneVO);
}
public List<MberCertPhoneVO> selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO) {
return (List<MberCertPhoneVO>) list("mjonMsgDataDAO.selectMberCertPhoneListVO", mberCertPhoneVO);
}
}

View File

@ -3178,4 +3178,9 @@ public class MjonMsgDataServiceImpl extends EgovAbstractServiceImpl implements M
return new StatusResponse(HttpStatus.OK, "삭제하였습니다.", LocalDateTime.now());
}
@Override
public List<MberCertPhoneVO> selectMberCertPhoneListVO(MberCertPhoneVO mberCertPhoneVO) {
return mjonMsgDataDAO.selectMberCertPhoneListVO(mberCertPhoneVO);
}
}

View File

@ -109,6 +109,7 @@ import itn.let.uat.uap.service.EgovLoginPolicyService;
import itn.let.uat.uap.service.LoginPolicyVO;
import itn.let.uat.uia.service.AuthCertVO;
import itn.let.uat.uia.service.EgovLoginService;
import itn.let.uat.uia.service.MberCertPhoneVO;
import itn.let.uss.umt.service.EgovMberManageService;
import itn.let.uss.umt.service.EgovUserManageService;
import itn.let.uss.umt.service.MberManageConfigVO;
@ -2043,9 +2044,23 @@ public class EgovLoginController {
String message = "로그인 성공했습니다.";
/* 일시 : 2024.11.18
* 내용 : 다중 인증번호 조회
* 작업자 : 이호영
*/
List<MberCertPhoneVO> mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneList(resultVO.getId());
modelAndView.addObject("status", "success");
modelAndView.addObject("msg", message);
modelAndView.addObject("data", resultVO);
modelAndView.addObject("mberCertPhoneList", mberCertPhoneList);
return modelAndView;
@ -3580,6 +3595,11 @@ public class EgovLoginController {
code = randomCode.append(Integer.toString(random.nextInt(10))).toString();
}
contents = contents.replace("%code%", code);
System.out.println("contents : "+ contents);
System.out.println("contents : "+ contents);
System.out.println("contents : "+ contents);
System.out.println("contents : "+ contents);
System.out.println("contents : "+ contents);
mjonMsgVO.setSmsTxt(contents);
mjonMsgVO.setReserveYn("N");
@ -3601,9 +3621,25 @@ public class EgovLoginController {
userManageVO.setEmplyrNm(mjonMsgVO.getSearchNm());
userManageVO.setMoblphonNo(mjonMsgVO.getCallTo());
List<UserManageVO> usedNmList = userManageService.selectUserIdAjax2(userManageVO);
boolean TorF = usedNmList.size() > 0 ? true : false;
MberCertPhoneVO mberCertPhoneVO = new MberCertPhoneVO();
mberCertPhoneVO.setMbtlnum(mjonMsgVO.getCallTo());
mberCertPhoneVO.setMberId(mjonMsgVO.getUserId());
List<MberCertPhoneVO> mberCertPhoneList = mjonMsgDataService.selectMberCertPhoneListVO(mberCertPhoneVO);
boolean TorF = mberCertPhoneList.size() > 0 ? true : false;
if (!TorF) {
@ -3617,6 +3653,7 @@ public class EgovLoginController {
}
List<UserManageVO> usedNmList = userManageService.selectUserIdAjax2(userManageVO);
if(!usedNmList.get(0).getMberSttus().equals("Y")) {
String mberSttus = usedNmList.get(0).getMberSttus();

View File

@ -43,6 +43,7 @@ import itn.let.utl.user.service.MjonNoticeSendUtil;
/**
* 사용자관리에 관한 비지니스 클래스를 정의한다.
*
* @author 공통서비스 개발팀 조재영
* @since 2009.04.10
* @version 1.0
@ -124,6 +125,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 입력한 사용자아이디의 중복여부를 체크하여 사용가능여부를 확인
*
* @param checkId 중복여부 확인대상 아이디
* @return 사용가능여부(아이디 사용회수 int)
* @throws Exception
@ -135,6 +137,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 화면에 조회된 사용자의 정보를 데이터베이스에서 삭제
*
* @param checkedIdForDel 삭제대상 업무사용자아이디
* @throws Exception
*/
@ -163,7 +166,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
}
// 그룹삭제
//기존에는 전부 deleteAuthorGroup 처리했지만, 관리자는 삭제말고 EMPLYR_STTUS_CODE = 'D' update로 수정하면서 if문 추가
// 기존에는 전부 deleteAuthorGroup 처리했지만, 관리자는 삭제말고 EMPLYR_STTUS_CODE = 'D' update로
// 수정하면서 if문 추가
if (!id[0].equals("USR03")) {
authorGroup.setUniqId(id[1]);
try {
@ -189,7 +193,6 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
String pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
userManageVO.setPassword(pass);
// 자동가입 여부 조회 자동가입이 아니면 (P) 세팅
SiteManagerVO tempSiteManagerVO = new SiteManagerVO();
if (!"Y".equals(siteManagerDAO.selectSiteManagerVO(tempSiteManagerVO).getJoinAutoYn())) {
@ -212,6 +215,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 등록된 사용자 검색조건에 맞는 사용자의 정보를 데이터베이스에서 읽어와 화면에 출력
*
* @param uniqId 상세조회대상 업무사용자 아이디
* @return userManageVO 업무사용자 상세정보
* @throws Exception
@ -224,6 +228,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 등록된 특정 사용자의 정보를 데이터베이스에서 읽어와 화면에 출력
*
* @param userSearchVO 검색조건
* @return List<UserManageVO> 업무사용자 목록정보
* @throws Exception
@ -236,6 +241,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 등록된 특정 사용자목록의 전체수를 확인
*
* @param userSearchVO 검색조건
* @return 총사용자갯수(int)
* @throws Exception
@ -247,6 +253,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 화면에 조회된 사용자의 기본정보를 수정하여 항목의 정합성을 체크하고 수정된 데이터를 데이터베이스에 반영
*
* @param userManageVO 업무사용자 수정정보
* @throws Exception
*/
@ -261,6 +268,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 사용자정보 수정시 히스토리 정보를 추가
*
* @param userManageVO 업무사용자 수정정보
* @return result 등록결과
* @throws Exception
@ -272,6 +280,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 업무사용자 암호 수정
*
* @param userManageVO 업무사용자 수정정보(비밀번호)
* @throws Exception
*/
@ -282,6 +291,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* 사용자가 비밀번호를 기억하지 못할 비밀번호를 찾을 있도록
*
* @param passVO 업무사용자 암호 조회조건정보
* @return userManageVO 업무사용자 암호정보
* @throws Exception
@ -331,9 +341,6 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
}
@Override
public void updateUserSttusCode(UserManageVO userManageVO) throws Exception {
userManageDAO.updateUserSttusCode(userManageVO);
@ -406,7 +413,6 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
return userManageDAO.selectUserInfo(mberManageVO);
}
@Override
public void updateUserInfo(MberManageVO mberManageVO) throws Exception {
userManageDAO.updateUserInfo(mberManageVO);
@ -492,7 +498,6 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
return userManageDAO.selectAdminSmsNoticeYn(userManageVO);
}
public void updateUserAdminSmsNoticeYn(UserManageVO userManageVO, String checkedIdForUpt) throws Exception {
if (!"".equals(checkedIdForUpt)) {
String[] uptId = checkedIdForUpt.split(",");
@ -598,17 +603,13 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
userManageDAO.updateUserSmishingYn(userManageVO);
/*
// B선 전송사 이용고객 => 전송사 JJ로 변경안함
MberManageVO mberManageVO = new MberManageVO();
mberManageVO.setMberId(userManageVO.getMberId());
String blineCode = mberManageService.selectBlineCodeByMberId(mberManageVO);
if (blineCode != null && blineCode.equals("N")) {
// 전송사 JJ로 변경
mberManageVO.setHotlineAgentName("첫결제 JJ");
mberManageVO.setHotlineAgentCode("05");
mberManageVO.setAdmUserId("admin");
mjonMsgAgentStsService.updateMberHotlineAgentCodeInfo(mberManageVO);
}
* // B선 전송사 이용고객 => 전송사 JJ로 변경안함 MberManageVO mberManageVO = new
* MberManageVO(); mberManageVO.setMberId(userManageVO.getMberId()); String
* blineCode = mberManageService.selectBlineCodeByMberId(mberManageVO); if
* (blineCode != null && blineCode.equals("N")) { // 전송사 JJ로 변경
* mberManageVO.setHotlineAgentName("첫결제 JJ");
* mberManageVO.setHotlineAgentCode("05"); mberManageVO.setAdmUserId("admin");
* mjonMsgAgentStsService.updateMberHotlineAgentCodeInfo(mberManageVO); }
*/
}
@ -709,7 +710,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
// 이번달에 입력된 후불 결제요청 데이터가 있는지 확인 - 혹시나 중복 입력을 방지하기 위함
int paymentCnt = userManageDAO.selectUserPrePaymentPGdataCount(umVO.getMberId());
if(paymentCnt > 0) continue;
if (paymentCnt > 0)
continue;
// 회원 정보 조회
MberManageVO mberManageVO = mberManageDAO.selectMber(umVO.getMberId()); // 멤버ID에서 유니크ID로 수정 필요
@ -724,15 +726,12 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
mjonPayDAO.updateMemberCash(mjonPayVO);
/*
* JSPark 2023.01.10 => 포인트는 선충전하지 않음
// point 넣기
mjonPayVO = this.setAdvPointVO(umVO);
//POINT 테이블
mjonPayDAO.insertPoint(mjonPayVO);
//회원정보 POINT 업데이트
mjonPayDAO.updateMemberPoint(mjonPayVO);
* JSPark 2023.01.10 => 포인트는 선충전하지 않음 // point 넣기 mjonPayVO =
* this.setAdvPointVO(umVO);
*
* //POINT 테이블 mjonPayDAO.insertPoint(mjonPayVO);
*
* //회원정보 POINT 업데이트 mjonPayDAO.updateMemberPoint(mjonPayVO);
*/
// 지난 사용금액 조회
@ -788,14 +787,13 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
rcptType = "9";
taxVO.setTaxTrgt("C");
/*
if(mberManageVO.getCandidateNo1() != null) {
String candiNo1 = mberManageVO.getCandidateNo1();
String candiNo2 = mberManageVO.getCandidateNo2();
regNo = candiNo1 + candiNo2; //주민등록번호
}
taxVO.setRepName(mberManageVO.getCandidateNm());//후보자 성명
taxVO.setAddr(mberManageVO.getCandidateAddr());//후보자 주소
* if(mberManageVO.getCandidateNo1() != null) { String candiNo1 =
* mberManageVO.getCandidateNo1(); String candiNo2 =
* mberManageVO.getCandidateNo2();
*
* regNo = candiNo1 + candiNo2; //주민등록번호 }
* taxVO.setRepName(mberManageVO.getCandidateNm());//후보자 성명
* taxVO.setAddr(mberManageVO.getCandidateAddr());//후보자 주소
*/
regNo = mberManageVO.getTaxCIhidNum(); // 세금계산서 개인 주민등록번호
taxVO.setRepName(mberManageVO.getTaxCNm()); // 세금계산서 개인 성명
@ -825,9 +823,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
/**
* @param mjonPayVO
* @return
* @throws Exception
* cash table 넣기
* 2022.04.12 JSP => mjonPayVO.getMoid() => userId 사용 제거 (휴대폰결제에서만 사용)
* @throws Exception cash table 넣기 2022.04.12 JSP => mjonPayVO.getMoid() =>
* userId 사용 제거 (휴대폰결제에서만 사용)
*/
private MjonPayVO setAdvCashVO(UserManageVO userManageVO) throws Exception {
@ -847,7 +844,6 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
@Override
public Map<String, Object> selectFaxSendList(FaxGroupDataVO faxGroupDataVO) {
Map<String, Object> resultMap = new HashMap<String, Object>();
// 기본 내림차순 정렬
@ -858,8 +854,7 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
}
if (StringUtils.isEmpty(faxGroupDataVO.getSearchStartDate())
&& StringUtils.isEmpty(faxGroupDataVO.getSearchEndDate())
) {
&& StringUtils.isEmpty(faxGroupDataVO.getSearchEndDate())) {
faxGroupDataVO.setSearchStartDate(DateUtil.getTodayYearAndMonthAndFirstDay());
faxGroupDataVO.setSearchEndDate(DateUtil.getTodayYearAndMonthAndLastDay());
}
@ -891,5 +886,4 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
return resultMap;
}
}

View File

@ -3774,6 +3774,24 @@
AND CERT_USE_YN = 'Y'
</select>
<select id="mjonMsgDataDAO.selectMberCertPhoneListVO" parameterClass="mberCertPhoneVO" resultClass="mberCertPhoneVO">
SELECT
MBTLNUM AS mbtlnum,
'-' AS frstRegistPnttm
FROM
lettngnrlmber
WHERE MBER_ID = #mberId#
UNION ALL
SELECT
MBTLNUM AS mbtlnum,
FRST_REGIST_PNTTM AS frstRegistPnttm
FROM
lettngnrlmber_cert_phone
WHERE MBER_ID = #mberId#
AND MBTLNUM = #mbtlnum#
AND CERT_USE_YN = 'Y'
</select>
<insert id="mjonMsgDataDAO.insertMberCertPhoneInfo" parameterClass="mberCertPhoneVO">

View File

@ -178,6 +178,8 @@ function actionLogin(){
success : function(data) {
//alert(data.status);
//alert(data.data.moblphonNo);
console.log('===========');
console.log(data.mberCertPhoneList);
if (data.status=="success"){
//번호인증팝업 띄우기
@ -190,8 +192,14 @@ function actionLogin(){
$("#input_list_item_5").show();
$("#input_list_item_6").show();
$("#hp_text2").val(data.data.moblphonNo);
// $("#hp_text2").val(data.data.moblphonNo);
var $select = $('#hp_text2');
data.mberCertPhoneList.forEach(function(item) {
$select.append($('<option>', {
value: item.mbtlnum, // option의 value 값
text: item.mbtlnum // option의 화면에 보이는 텍스트
}));
});
}else if (data.status=="fail"){
@ -589,8 +597,7 @@ function fn_click_banner_add_stat(bannerMenuCode){
<label for="list_inputType1" class="label">휴대폰번호</label>
<!-- <input type="text" id="hp_text2" class="list_inputType1" placeholder="가입휴대폰번호" style="width: 250px;" -->
<!-- onfocus="this.placeholder=''" onblur="this.placeholder='가입휴대폰번호'" maxlength="20" readonly> -->
<select id="hp_text2" name="callFromList" class="sel_number list_selType1" style="width:70%;">
<option value="">등록된 발신 번호가 없습니다.</option>
<select id="hp_text2" class="list_selType1" style="width:70%;">
</select>
</div>
<div class="login_del">