이호영 이호영 2024-11-22
보안로그인 최근변경 날짜 추가
@fd471b0e55284bbadfbe33528912031325953669
src/main/java/itn/let/uat/uia/service/impl/EgovMberManageServiceImpl.java
--- src/main/java/itn/let/uat/uia/service/impl/EgovMberManageServiceImpl.java
+++ src/main/java/itn/let/uat/uia/service/impl/EgovMberManageServiceImpl.java
@@ -14,6 +14,7 @@
 import itn.com.uss.olh.hpc.service.HackIpService;
 import itn.com.uss.olh.hpc.service.HackIpVO;
 import itn.com.utl.fcc.service.EgovStringUtil;
+import itn.let.mjo.cert.service.CertVO;
 import itn.let.mjo.msgsent.service.MjonMsgSentVO;
 import itn.let.mjo.pay.service.KmcVO;
 import itn.let.sec.rgm.service.AuthorGroup;
@@ -614,5 +615,10 @@
 	public void updateSecureLoginFlag(MberManageVO mberManageVO) throws Exception {
 		mberManageDAO.updateSecureLoginFlag(mberManageVO);
 	}
+
+	@Override
+	public String findTopByregDateFromCertLog(AuthCertVO authCertVO) {
+		return mberManageDAO.findTopByregDateFromCertLog(authCertVO);
+	}
 	
 }
(No newline at end of file)
src/main/java/itn/let/uat/uia/service/impl/MberManageDAO.java
--- src/main/java/itn/let/uat/uia/service/impl/MberManageDAO.java
+++ src/main/java/itn/let/uat/uia/service/impl/MberManageDAO.java
@@ -5,6 +5,7 @@
 import org.springframework.stereotype.Repository;
 
 import itn.com.cmm.service.impl.EgovComAbstractDAO;
+import itn.let.mjo.cert.service.CertVO;
 import itn.let.mjo.msgsent.service.MjonMsgSentVO;
 import itn.let.uat.uia.service.AuthCertVO;
 import itn.let.uss.umt.service.MberManageConfigVO;
@@ -340,5 +341,9 @@
 	public void updateSecureLoginFlag(MberManageVO mberManageVO) throws Exception {
 		update("mberManageDAO.updateSecureLoginFlag",mberManageVO);
 	}
+
+	public String findTopByregDateFromCertLog(AuthCertVO authCertVO) {
+		return (String)select("mberManageDAO.findTopByregDateFromCertLog", authCertVO);
+	}
 	
 }
(No newline at end of file)
src/main/java/itn/let/uat/uia/web/EgovMypageController.java
--- src/main/java/itn/let/uat/uia/web/EgovMypageController.java
+++ src/main/java/itn/let/uat/uia/web/EgovMypageController.java
@@ -3026,8 +3026,19 @@
 		
 		model.addAttribute("mberManageVO", userManageService.selectUserInfo(mberManageVO));
 		
+		// 탭 하이라이트
 		model.addAttribute("pageTab", "mberSecureLogin");
 		
+
+		//디비 테이블에 저장하기
+		AuthCertVO authCertVO = new AuthCertVO();
+		authCertVO.setMberId(userId);
+		authCertVO.setCertType("secureLoginOFF");
+		String certLogRegDate = mberManageService.findTopByregDateFromCertLog(authCertVO);
+		
+
+		// 탭 하이라이트
+		model.addAttribute("certLogRegDate", certLogRegDate);
 		
 
 		return "web/user/mberSecureLogin";
src/main/java/itn/let/uss/umt/service/EgovMberManageService.java
--- src/main/java/itn/let/uss/umt/service/EgovMberManageService.java
+++ src/main/java/itn/let/uss/umt/service/EgovMberManageService.java
@@ -2,6 +2,7 @@
 
 import java.util.List;
 
+import itn.let.mjo.cert.service.CertVO;
 import itn.let.mjo.msgsent.service.MjonMsgSentVO;
 import itn.let.mjo.pay.service.KmcVO;
 import itn.let.uat.uia.service.AuthCertVO;
@@ -248,4 +249,6 @@
 	
 	public void updateSecureLoginFlag(MberManageVO mberManageVO) throws Exception;
 
+	public String findTopByregDateFromCertLog(AuthCertVO authCertVO);
+
 }
(No newline at end of file)
src/main/resources/egovframework/sqlmap/let/uss/umt/EgovMberManage_SQL_Mysql.xml
--- src/main/resources/egovframework/sqlmap/let/uss/umt/EgovMberManage_SQL_Mysql.xml
+++ src/main/resources/egovframework/sqlmap/let/uss/umt/EgovMberManage_SQL_Mysql.xml
@@ -1101,6 +1101,23 @@
 			SELECT LAST_INSERT_ID()
 		</selectKey>	
 	</insert>
+	
+	
+	
+	<select id="mberManageDAO.findTopByregDateFromCertLog" parameterClass="authCertVO" resultClass="String">
+	
+		SELECT
+			REGDATE
+		FROM
+			mj_cert_log
+		WHERE
+			MBER_ID = #mberId#
+			and CERT_TYPE = #certType#
+		ORDER by
+			REGDATE desc
+		limit 1
+	</select>
+	
     
     <update id="mberManageDAO.updateCertInfoLogMberId" >
         UPDATE MJ_CERT_LOG
src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp
--- src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp
+++ src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp
@@ -148,11 +148,16 @@
 	
 	var secuLoginFlag = '${mberManageVO.secuLoginFlag}';
     
-    if (secuLoginFlag === 'Y') {
-        $('#secuLoginFlag').attr('class', 'state on').text('ON');
-    } else if (secuLoginFlag === 'N') {
-        $('#secuLoginFlag').attr('class', 'state off').text('OFF');
-    }
+	const $securityBox = $('.security_box');
+
+	// secuLoginFlag 값에 따라 클래스 및 내용 변경
+	$securityBox
+		.removeClass('green_box red_box')
+		.addClass(secuLoginFlag === 'Y' ? 'green_box' : 'red_box')
+		.find('.state')
+		.text(secuLoginFlag === 'Y' ? 'ON' : 'OFF')
+		.removeClass('on off')
+		.addClass(secuLoginFlag === 'Y' ? 'on' : 'off');
 });	
 
 //등급제 시행 ON/OFF 체크(비로그인)
@@ -1691,11 +1696,24 @@
 		                        </div>
 		                        <button type="button" class="btnType btnType3" onclick="location.href='/web/user/mberInfoIndex.do'">마이페이지</button>
 		                        <button type="button" class="btnType btnType2" onclick="location.href='/web/uat/uia/actionLogout.do'">로그아웃</button>
-								<div class="security_box">
-									<a href="<c:out value="/web/user/mberSecureLogin.do"/>"><p class="title"><i class="icon_lock"></i>보안로그인</p></a>
-									<a href="#" id="secuLoginFlag" class="state">    </a>
+		                        
+<!-- 								<div class="security_box"> -->
+<%-- 									<a href="<c:out value="/web/user/mberSecureLogin.do"/>"><p class="title"><i class="icon_lock"></i>보안로그인</p></a> --%>
+<!-- 									<a href="#" id="secuLoginFlag" class="state">    </a> -->
 									<!-- <a href="#" class="state off">OFF</a> -->
+<!-- 								</div> -->
+								
+								
+								<div class="security_box">
+									<a href="<c:out value="/web/user/mberSecureLogin.do"/>" class="title">보안로그인</a><!-- 보안로그인 클릭시 보안로그인 홈페이지로 -->
+									<a href="#" id="secuLoginFlag" class="state"></a><!-- ON/OFF 클릭시 이벤트 발생 -->
 								</div>
+<!-- 								<div class="security_box green_box"> -->
+<!-- 									<a href="#" class="title">보안로그인</a> -->
+<!-- 									<a href="#" class="state on">ON</a> -->
+<!-- 								</div> -->
+								
+								
 		                    </div>
 		                    <div class="login_pay">
 			                    <div class="check_money">
src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp
--- src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp
+++ src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp
@@ -70,6 +70,7 @@
 			} else {
 				$(this).find("a.on").removeClass("on").siblings("a").addClass("on");
 				$(this).removeClass("off").addClass("on");
+				callTo()
 			}
 		}
 		
@@ -275,6 +276,8 @@
 		$('#secuOnBtn').click();
 		
 	}
+	// 새로고침 시 값을 초기화
+	history.replaceState({}, null, location.pathname);
 	
 });
 
@@ -689,7 +692,9 @@
 								</div>
 
 								<div class="set_area">
-									<p class="lately_date">최근 변경일시 : <span>2024-11-01 12:49</span></p>
+								<c:if test="${not empty certLogRegDate }">
+									<p class="lately_date">최근 변경일시 : <span><c:out value="${certLogRegDate }"/></span></p>
+								</c:if>
 
     								<input type="hidden" id="secuLoginFlag" value="${secuLoginFlag}" />
 									<div class="tab_depth1 security_tab">
Add a comment
List