diff --git a/src/main/java/kcc/let/uat/uia/service/CertService.java b/src/main/java/kcc/let/uat/uia/service/CertService.java index b46bac16..f84b686f 100644 --- a/src/main/java/kcc/let/uat/uia/service/CertService.java +++ b/src/main/java/kcc/let/uat/uia/service/CertService.java @@ -1,8 +1,10 @@ package kcc.let.uat.uia.service; - public interface CertService { - void insertCert(CertVO certVO) throws Exception; + public CertVO selectCert(CertVO certVO) throws Exception; + public void insertCert(CertVO certVO) throws Exception; + + public void insertCertLog(CertVO certVO) throws Exception; } diff --git a/src/main/java/kcc/let/uat/uia/service/CertVO.java b/src/main/java/kcc/let/uat/uia/service/CertVO.java index 0b2e816f..dda23c5b 100644 --- a/src/main/java/kcc/let/uat/uia/service/CertVO.java +++ b/src/main/java/kcc/let/uat/uia/service/CertVO.java @@ -13,6 +13,8 @@ public class CertVO implements Serializable{ private static final long serialVersionUID = 1L; + private String certId; + private String certLogId; private String name; private String phone; @@ -21,6 +23,10 @@ public class CertVO implements Serializable{ private String receiptID; private String status; - + /** + * H: 휴대폰인증, N:네이버인증, K:카카오인증 + */ + private String certType; + private String certOri; } diff --git a/src/main/java/kcc/let/uat/uia/service/impl/CertDAO.java b/src/main/java/kcc/let/uat/uia/service/impl/CertDAO.java index f8d143fd..b3ef783c 100644 --- a/src/main/java/kcc/let/uat/uia/service/impl/CertDAO.java +++ b/src/main/java/kcc/let/uat/uia/service/impl/CertDAO.java @@ -1,11 +1,24 @@ package kcc.let.uat.uia.service.impl; +import java.util.List; + import org.springframework.stereotype.Repository; import egovframework.rte.psl.dataaccess.EgovAbstractDAO; +import kcc.let.uat.uia.service.CertVO; @Repository("certDAO") public class CertDAO extends EgovAbstractDAO { + public CertVO selectCert(CertVO certVO) throws Exception { + return (CertVO) select("certDAO.selectCert", certVO); + } + public void insertCert(CertVO certVO) throws Exception { + insert("certDAO.insertCert", certVO); + } + + public void insertCertLog(CertVO certVO) throws Exception { + insert("certDAO.insertCertLog", certVO); + } } diff --git a/src/main/java/kcc/let/uat/uia/service/impl/CertServiceImpl.java b/src/main/java/kcc/let/uat/uia/service/impl/CertServiceImpl.java index 7e6436f7..45003efe 100644 --- a/src/main/java/kcc/let/uat/uia/service/impl/CertServiceImpl.java +++ b/src/main/java/kcc/let/uat/uia/service/impl/CertServiceImpl.java @@ -1,5 +1,7 @@ package kcc.let.uat.uia.service.impl; +import java.util.List; + import javax.annotation.Resource; import org.springframework.stereotype.Service; @@ -7,20 +9,37 @@ import org.springframework.stereotype.Service; //import kcc.let.ems.service.SndngMailVO; import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; +import egovframework.rte.fdl.idgnr.EgovIdGnrService; import kcc.let.uat.uia.service.CertService; import kcc.let.uat.uia.service.CertVO; @Service("certService") public class CertServiceImpl extends EgovAbstractServiceImpl implements CertService { + + @Resource(name="certIdgenService") + private EgovIdGnrService certIdgenService; + + @Resource(name="certLogIdgenService") + private EgovIdGnrService certLogIdgenService; @Resource(name="certDAO") private CertDAO certDAO; + + @Override + public CertVO selectCert(CertVO certVO) throws Exception { + return certDAO.selectCert(certVO); + } @Override public void insertCert(CertVO certVO) throws Exception { - // TODO Auto-generated method stub - + certVO.setCertId(certIdgenService.getNextStringId()); + certDAO.insertCert(certVO); } + @Override + public void insertCertLog(CertVO certVO) throws Exception { + certVO.setCertLogId(certLogIdgenService.getNextStringId()); + certDAO.insertCertLog(certVO); + } } \ No newline at end of file diff --git a/src/main/java/kcc/let/uat/uia/web/SocialCertController.java b/src/main/java/kcc/let/uat/uia/web/SocialCertController.java index a73a9aba..41921482 100644 --- a/src/main/java/kcc/let/uat/uia/web/SocialCertController.java +++ b/src/main/java/kcc/let/uat/uia/web/SocialCertController.java @@ -17,7 +17,9 @@ import org.springframework.web.bind.annotation.RequestMapping; import com.barocert.BarocertException; import com.barocert.kakaocert.KakaocertService; import com.barocert.navercert.NavercertService; +import com.fasterxml.jackson.databind.ObjectMapper; +import kcc.let.uat.uia.service.CertService; import kcc.let.uat.uia.service.CertVO; import seed.utils.FairnetUtils; import seed.utils.SeedUtils; @@ -54,6 +56,9 @@ public class SocialCertController { @Autowired private KakaocertService kakaocertService; + + @Autowired + private CertService certService; @Value("#{NAVER_CONFIG.ClientCode}") private String NaverClientCode; @@ -222,23 +227,39 @@ public class SocialCertController { return new ResponseEntity<>(returnData, HttpStatus.OK); } -// System.out.println("getReceiptID()); :: " + result.getReceiptID()); -// System.out.println("getReceiverDay()); :: " + nDecrypt(result.getReceiverDay())); -// System.out.println("getReceiverEmail()); :: " + nDecrypt(result.getReceiverEmail())); -// System.out.println("getReceiverForeign()); :: " + nDecrypt(result.getReceiverForeign())); -// System.out.println("getReceiverGender()); :: " + nDecrypt(result.getReceiverGender())); -// System.out.println("getReceiverHP()); :: " + nDecrypt(result.getReceiverHP())); -// System.out.println("getReceiverName()); :: " + nDecrypt(result.getReceiverName())); -// System.out.println("getReceiverYear()); :: " + nDecrypt(result.getReceiverYear())); -// System.out.println("getSignedData()); :: " + result.getSignedData()); -// System.out.println("getState()); :: " + result.getState()); -// System.out.println("getCi()); :: " + nDecrypt(result.getCi())); - returnData.put("result", "success"); returnData.put("msg", "인증되었습니다."); //세션 등록 - FairnetUtils.certSessionSet(reqeust, nDecrypt(result.getReceiverName()), nDecrypt(result.getReceiverHP())); + FairnetUtils.setCertSession(reqeust, nDecrypt(result.getReceiverName()), nDecrypt(result.getReceiverHP())); + + certVO.setName(nDecrypt(result.getReceiverHP())); + certVO.setPhone(nDecrypt(result.getReceiverName())); + + String ori = "ReceiptID: " + result.getReceiptID() + + ", ReceiverDay: " + nDecrypt(result.getReceiverDay()) + + ", ReceiverEmail: " + nDecrypt(result.getReceiverEmail()) + + ", ReceiverForeign: " + nDecrypt(result.getReceiverForeign()) + + ", ReceiverGender: " + nDecrypt(result.getReceiverGender()) + + ", ReceiverHP: " + nDecrypt(result.getReceiverHP()) + + ", ReceiverName: " + nDecrypt(result.getReceiverName()) + + ", ReceiverYear: " + nDecrypt(result.getReceiverYear()) +// + ", SignedData: " + result.getSignedData() + + ", State: " + result.getState() + + ", Ci: " + nDecrypt(result.getCi()); + + certVO.setCertOri(ori); + + certVO.setCertType("N"); + + try { + //인증 사용자 insert + certService.insertCert(certVO); + //인증 로그 insert + certService.insertCertLog(certVO); + } catch (Exception e) { + System.out.println("인증 정보 등록 실패!!!!!!!!!"); + } return new ResponseEntity<>(returnData, HttpStatus.OK); }else { @@ -277,22 +298,37 @@ public class SocialCertController { return new ResponseEntity<>(returnData, HttpStatus.OK); } -// System.out.println("getReceiptID()); :: " + result.getReceiptID()); -// System.out.println("getState()); :: " +result.getState()); -// System.out.println("getSignedData()); :: " + result.getSignedData()); -// System.out.println("getCi()); :: " + kDecrypt(result.getCi())); -// System.out.println("getReceiverName()); :: " + kDecrypt(result.getReceiverName())); -// System.out.println("getReceiverYear()); :: " + kDecrypt(result.getReceiverYear())); -// System.out.println("getReceiverDay()); :: " + kDecrypt(result.getReceiverDay())); -// System.out.println("getReceiverHP()); :: " + kDecrypt(result.getReceiverHP())); -// System.out.println("getReceiverGender()); :: " + kDecrypt(result.getReceiverGender())); - - returnData.put("result", "success"); returnData.put("msg", "인증되었습니다."); //세션 등록 - FairnetUtils.certSessionSet(reqeust, kDecrypt(result.getReceiverName()), kDecrypt(result.getReceiverHP())); + FairnetUtils.setCertSession(reqeust, kDecrypt(result.getReceiverName()), kDecrypt(result.getReceiverHP())); + + certVO.setName(kDecrypt(result.getReceiverHP())); + certVO.setPhone(kDecrypt(result.getReceiverName())); + + String ori = "ReceiptID: " + result.getReceiptID() + + ", State: " + result.getState() +// + ", SignedData: " + result.getSignedData() + + ", Ci: " + kDecrypt(result.getCi()) + + ", ReceiverName: " + kDecrypt(result.getReceiverName()) + + ", ReceiverYear: " + kDecrypt(result.getReceiverYear()) + + ", ReceiverDay: " + kDecrypt(result.getReceiverDay()) + + ", ReceiverHP: " + kDecrypt(result.getReceiverHP()) + + ", ReceiverGender: " + kDecrypt(result.getReceiverGender()); + + certVO.setCertOri(ori); + + certVO.setCertType("K"); + + try { + //인증 사용자 insert + certService.insertCert(certVO); + //인증 로그 insert + certService.insertCertLog(certVO); + } catch (Exception e) { + System.out.println("인증 정보 등록 실패!!!!!!!!!"); + } return new ResponseEntity<>(returnData, HttpStatus.OK); }else { @@ -355,7 +391,15 @@ public class SocialCertController { @RequestMapping(value = "/web/user/cert/test.do") public String testtestset(Model m) throws Exception { + CertVO certVO = new CertVO(); + certVO.setName("이준호"); + certVO.setPhone("01030266269"); + certVO.setCertOri(""); + certVO.setCertType(""); + certService.insertCert(certVO); + + certService.insertCertLog(certVO); return "redirect:/"; } diff --git a/src/main/java/kcc/web/MainController.java b/src/main/java/kcc/web/MainController.java index af5d4aa7..25e99cbc 100644 --- a/src/main/java/kcc/web/MainController.java +++ b/src/main/java/kcc/web/MainController.java @@ -93,9 +93,11 @@ import kcc.let.sym.prm.service.EgovProgrmManageService; import kcc.let.sym.prm.service.ProgrmManageVO; import kcc.let.sym.site.service.EgovSiteManagerService; import kcc.let.sym.site.service.SiteManagerVO; +import kcc.let.uat.uia.service.CertVO; import seed.com.gtm.board.CaseBoardService; import seed.com.gtm.exam.ExamBoardService; import seed.com.gtm.faqbbs.faqBpardService; +import seed.utils.FairnetUtils; import seed.utils.SeedConstants; /** @@ -266,7 +268,8 @@ public class MainController { model.addAttribute("menuResultList", menuResultList); - + CertVO certVO = FairnetUtils.getCertSession(request); + model.addAttribute("certVO", certVO); return "web/com/webCommonHeader"; } diff --git a/src/main/java/seed/com/user/check/WebUserCheckController.java b/src/main/java/seed/com/user/check/WebUserCheckController.java index a5ee1888..f0a36ff8 100644 --- a/src/main/java/seed/com/user/check/WebUserCheckController.java +++ b/src/main/java/seed/com/user/check/WebUserCheckController.java @@ -11,6 +11,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; @@ -21,12 +22,17 @@ import com.sci.v2.ipin.secu.hmac.SciHmac; import kcc.com.utl.fcc.service.EgovNumberUtil; import kcc.com.utl.fcc.service.EgovStringUtil; +import kcc.let.uat.uia.service.CertService; +import kcc.let.uat.uia.service.CertVO; import seed.utils.FairnetUtils; import seed.utils.SeedUtils; @Controller public class WebUserCheckController { + @Autowired + private CertService certService; + @RequestMapping("/web/user/case/userCheck/setCheckCode/check.do") public String setCheckCodeAndRedirect(ModelMap map, HttpServletRequest req, HttpServletResponse response, HttpSession session, @RequestParam Map paramMap){ @@ -406,18 +412,6 @@ public class WebUserCheckController { hpCellNo = aRetInfo[11]; hpCellCorp = aRetInfo[12]; hpAddVar = aRetInfo[14]; - - - /* String[] valList = hpAddVar.split(","); - String agreeCheck = ""; - String personalCheck = ""; - String mediType = ""; - if(valList.length > 1){ - agreeCheck = valList[0]; - personalCheck = valList[1]; - mediType = valList[2]; - }*/ - //이름은 인코딩되서 날라옴 try { hpName = URLDecoder.decode(hpName, "UTF-8"); @@ -425,27 +419,37 @@ public class WebUserCheckController { e.printStackTrace(); } -// session.setAttribute("hpName", hpName); -// session.setAttribute("hpBirYMD", hpBirYMD); -// session.setAttribute("hpSex", hpSex); -// session.setAttribute("hpFgnGbn", hpFgnGbn); -// session.setAttribute("hpDi", hpDi); -// if("".equals(SeedUtils.setReplaceNull(hpCi1))) { -// hpCi1 = hpDi; -// } -// session.setAttribute("hpCi1", hpCi1); -// session.setAttribute("hpCi2", hpCi2); -// session.setAttribute("hpResult", hpResult); -// session.setAttribute("hpCellNo", hpCellNo); -// session.setAttribute("hpCellCorp", hpCellCorp); -// session.setAttribute("hpAddVar", hpAddVar); - /* session.setAttribute("agreeCheck", agreeCheck); - session.setAttribute("personalCheck", personalCheck); - session.setAttribute("mediType", mediType);*/ + FairnetUtils.setCertSession(req, hpName, hpCellNo); - FairnetUtils.certSessionSet(req, hpName, hpCellNo); + CertVO certVO = new CertVO(); + certVO.setName(hpName); + certVO.setPhone(hpCellNo); + + String ori = "hpName: " + hpName + + ", hpBirYMD: " + hpBirYMD + + ", hpSex: " + hpSex + + ", hpFgnGbn: " + hpFgnGbn + + ", hpDi: " + hpDi + + ", hpCi1: " + hpCi1 + + ", hpCi2: " + hpCi2 + + ", hpResult: " + hpResult + + ", hpCellNo: " + hpCellNo + + ", hpCellCorp: " + hpCellCorp + + ", hpAddVar: " + hpAddVar; + + certVO.setCertOri(ori); + + certVO.setCertType("H"); + + try { + //인증 사용자 insert + certService.insertCert(certVO); + //인증 로그 insert + certService.insertCertLog(certVO); + } catch (Exception e) { + System.out.println("인증 정보 등록 실패!!!!!!!!!"); + } -// return "redirect:" + nextUrl; return "/_extra/user/siren/myPage_hpParamPop"; } } diff --git a/src/main/java/seed/com/user/mypage/WebMyPageController.java b/src/main/java/seed/com/user/mypage/WebMyPageController.java index 60ba15c4..e1fb445e 100644 --- a/src/main/java/seed/com/user/mypage/WebMyPageController.java +++ b/src/main/java/seed/com/user/mypage/WebMyPageController.java @@ -1010,27 +1010,10 @@ private Logger log = Logger.getLogger(this.getClass()); } catch (IOException e) { e.printStackTrace(); } - return new ResponseEntity<>("ci, hpName session set", HttpStatus.OK); + return new ResponseEntity<>("session set", HttpStatus.OK); } - @RequestMapping("/web/user/mypage/case/01/168/devCiMakePopCiCheck.do") - public ResponseEntity devCiMakePopCiCheck(ModelMap map - , HttpSession session - , HttpServletRequest req - ){ - // JSON 데이터 받기 - Map returnMap = new HashMap(); - try { - returnMap.put("certNm",req.getSession().getAttribute("certNm")); - returnMap.put("certHpNo",req.getSession().getAttribute("certHpNo")); - - } catch (Exception e) { - e.printStackTrace(); - } - return new ResponseEntity<>(returnMap, HttpStatus.OK); - } - - @RequestMapping("/web/user/mypage/case/01/168/devCiRemove.do") + @RequestMapping("/web/user/mypage/case/01/168/myCheckRemove.do") public String devCiMakePopCiRemove(ModelMap map , HttpSession session , HttpServletRequest req diff --git a/src/main/java/seed/utils/FairnetUtils.java b/src/main/java/seed/utils/FairnetUtils.java index 4e47e93e..56b8270e 100644 --- a/src/main/java/seed/utils/FairnetUtils.java +++ b/src/main/java/seed/utils/FairnetUtils.java @@ -15,6 +15,8 @@ import org.springframework.ui.ModelMap; import com.fasterxml.jackson.databind.ObjectMapper; import com.ibm.icu.text.SimpleDateFormat; +import kcc.let.uat.uia.service.CertVO; + public class FairnetUtils { public static boolean hasAuth( @@ -185,7 +187,7 @@ public class FairnetUtils { } /** - * @methodName : certSessionSet + * @methodName : setCertSession * @author : JunHo Lee * @date : 2024.11.27 * @description : @@ -193,7 +195,7 @@ public class FairnetUtils { * @param certNm - 이름 * @param certNo - 휴대폰 번호 */ - public static void certSessionSet( + public static void setCertSession( HttpServletRequest reqeust , String certNm , String certHpNo @@ -204,6 +206,20 @@ public class FairnetUtils { session.setMaxInactiveInterval(60*60*2); } + + public static CertVO getCertSession( + HttpServletRequest reqeust + ) { + HttpSession session = reqeust.getSession(); + session.getAttribute("certNm"); + session.getAttribute("certHpNo"); + + CertVO certVO = new CertVO(); + certVO.setName(SeedUtils.setReplaceNull(session.getAttribute("certNm"))); + certVO.setPhone(SeedUtils.setReplaceNull(session.getAttribute("certHpNo"))); + + return certVO; + } } \ No newline at end of file diff --git a/src/main/resources/egovframework/sqlmap/let/uat/uia/Cert_SQL_Oracle.xml b/src/main/resources/egovframework/sqlmap/let/uat/uia/Cert_SQL_Oracle.xml index 9c1f91bc..392e98c3 100644 --- a/src/main/resources/egovframework/sqlmap/let/uat/uia/Cert_SQL_Oracle.xml +++ b/src/main/resources/egovframework/sqlmap/let/uat/uia/Cert_SQL_Oracle.xml @@ -4,5 +4,73 @@ + + + + + + + + INSERT INTO UNP_CERT ( + CERT_ID, + CERT_NAME, + CERT_PHONE, + FRST_REGIST_PNTTM + ) + SELECT + #certId#, + #name#, + #phone#, + SYSDATE + FROM + DUAL + WHERE + NOT EXISTS ( + SELECT + CERT_ID + FROM + UNP_CERT + WHERE + CERT_NAME = #name# + AND CERT_PHONE = #phone# + ) + + + + + + INSERT INTO UNP_CERT_LOG ( + CERT_ID, + CERT_LOG_ID, + CERT_NAME, + CERT_PHONE, + CERT_TYPE, + CERT_ORI, + FRST_REGIST_PNTTM + ) + SELECT + CERT_ID, + #certLogId#, + CERT_NAME, + CERT_PHONE, + #certType#, + #certOri#, + SYSDATE + FROM + UNP_CERT + WHERE + CERT_NAME = #name# + AND CERT_PHONE = #phone# + diff --git a/src/main/webapp/WEB-INF/jsp/uat/uia/KCertStep2.jsp b/src/main/webapp/WEB-INF/jsp/uat/uia/KCertStep2.jsp index 39ad48f8..45eada0a 100644 --- a/src/main/webapp/WEB-INF/jsp/uat/uia/KCertStep2.jsp +++ b/src/main/webapp/WEB-INF/jsp/uat/uia/KCertStep2.jsp @@ -19,6 +19,7 @@ success: function(response) { alert(response.msg); if(response.result == 'success'){ + opener.location.href = '/'; window.close(); }else if(response.result == 'requestFail'){ window.close(); diff --git a/src/main/webapp/WEB-INF/jsp/uat/uia/NCertStep2.jsp b/src/main/webapp/WEB-INF/jsp/uat/uia/NCertStep2.jsp index 7f189786..79e70067 100644 --- a/src/main/webapp/WEB-INF/jsp/uat/uia/NCertStep2.jsp +++ b/src/main/webapp/WEB-INF/jsp/uat/uia/NCertStep2.jsp @@ -19,6 +19,7 @@ success: function(response) { alert(response.msg); if(response.result == 'success'){ + opener.location.href = '/'; window.close(); }else if(response.result == 'requestFail'){ window.close(); diff --git a/src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp b/src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp index a1d16552..f28d927e 100644 --- a/src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp @@ -46,20 +46,6 @@ } } - function ciCheck(){ - $.ajax({ - url: '/web/user/mypage/case/01/168/devCiMakePopCiCheck.do', - type: 'POST', - contentType: 'application/json', - success: function(response) { - alert("이름 :: " + response.certNm); - alert("휴대폰번호 :: " + response.certHpNo); - }, - error: function(error) { - alert("error"); - } - }); - } function searchTotalHeader(){ $('#searchFormHeader #totalSearchKeyword').val($('#searchTextHeader').val()); $('#searchFormHeader').attr("action","/web/usr/search/totalSearch.do") @@ -92,9 +78,15 @@
- - - + + +

+ +
+ + + +
diff --git a/src/main/webapp/WEB-INF/jsp/web/xxx/devCiMakePop.jsp b/src/main/webapp/WEB-INF/jsp/web/xxx/devCiMakePop.jsp index b9f23a21..a3829b48 100644 --- a/src/main/webapp/WEB-INF/jsp/web/xxx/devCiMakePop.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/xxx/devCiMakePop.jsp @@ -20,6 +20,7 @@ data: JSON.stringify(jsonData), success: function(response) { alert(response); + opener.location.href = '/'; window.close(); }, error: function(error) {