From 72538da688bb78057218856d241d6b291915d711 Mon Sep 17 00:00:00 2001 From: subsub Date: Tue, 19 Nov 2024 11:49:43 +0900 Subject: [PATCH 01/39] =?UTF-8?q?2024/11/19=20=EB=A7=88=EC=9D=B4=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=20=EB=8C=80=EC=8B=9C=EB=B3=B4=EB=93=9C=20?= =?UTF-8?q?=EB=B3=B4=EC=95=88=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/publish/css/button.css | 2 + src/main/webapp/publish/css/content.css | 10 + src/main/webapp/publish/css/mem.css | 22 + .../webapp/publish/mypage_index_2024.html | 1061 +++++++++++++++++ 4 files changed, 1095 insertions(+) create mode 100644 src/main/webapp/publish/mypage_index_2024.html diff --git a/src/main/webapp/publish/css/button.css b/src/main/webapp/publish/css/button.css index 14945cda..cc100ba9 100644 --- a/src/main/webapp/publish/css/button.css +++ b/src/main/webapp/publish/css/button.css @@ -18,6 +18,8 @@ input[type="text"].inputLight:-ms-input-placeholder {color: #a6a6a6 !important;} input[type="password"] {padding: 0 10px; border-radius: 3px;font-size: 16px;} input[type="password"].inputLight::placeholder {color: #a6a6a6 !important;} input[type="password"].inputLight:-ms-input-placeholder {color: #a6a6a6 !important;} + +input.input_text{border:1px solid #d5d5d5;} /* 비밀번호 css 변경 */ input[type="checkbox"] {width: 16px; height: 16px; border: 1px solid #d6d8da;} diff --git a/src/main/webapp/publish/css/content.css b/src/main/webapp/publish/css/content.css index a4478bb4..df423b8e 100644 --- a/src/main/webapp/publish/css/content.css +++ b/src/main/webapp/publish/css/content.css @@ -24,7 +24,17 @@ .tRight {text-align: right !important;} .tLeft {text-align: left !important;} +.btn_text{padding:0 7px;} + +.btn_28{height:28px;} +.btn_30{height:30px;} +.btn_32{height:32px;} +.btn_34{height:34px;} +.btn_36{height:36px;} +.btn_38{height:38px;} + .btn_blue.fill{background:#002c9a;color:#fff;} +.btn_lightgray.fill{background:#a5a5a5;color:#fff;} .btn_gray.fill{background:#6a6c72;color:#fff;} .btn_yellow.fill{background:#fbc72b;color:#222;} diff --git a/src/main/webapp/publish/css/mem.css b/src/main/webapp/publish/css/mem.css index 1fe272c8..c2dc4c70 100644 --- a/src/main/webapp/publish/css/mem.css +++ b/src/main/webapp/publish/css/mem.css @@ -568,6 +568,28 @@ input[type="password"].list_inputType1 {padding: 0px;background-color: transpare .mypage_content .tType1 tbody tr td .upload_area .tb_wrap .file_info span {display:inline-block;width:1px;height:16px;margin:11px 18px 0;vertical-align:top;background:#666;} .mypage_content .tType1 tbody tr td .certify_in_body .noti {position:absolute;right:0;top:50%;font-size:16px;font-weight:300;letter-spacing:-0.025em;color:#a6a6a6;transform:translateY(-50%);} +/* 보안로그인 */ +.security_login{display: block !important;width:100%;background:#f2f2f2;border-radius:5px;padding:30px;margin:0 0 30px 0;box-sizing:border-box;} +.security_login *{box-sizing:border-box;} +.security_login .box{width:100%;background:#fff;border-radius:5px;margin:0 0 30px 0;} +.security_login .info{display:flex;font-size:15px;color:#444;padding:15px 20px;flex-direction:column;gap:6px;} +.security_login .security_set{display:flex;height:80px;justify-content:space-between;align-items:center;padding:15px 30px;} +.security_login .input_text{width:98%;} +.security_login .dashboard_title{padding: 0;} +.security_login .btn_plus{position:absolute;right:0;} +.security_login .set_area{display:flex;align-items:center;} +.security_login .lately_date{font-size:15px;color:#666;} +.security_login .tab_depth1{margin:0 0 0 15px;text-align:center;} +.security_login .tab_depth1 a{display:inline-flex;justify-content:center;align-items:center;} +.security_login .tab_depth1 a:last-child{border-right:0;} +.security_login .tab_depth1 a.on:last-child{border-right:1px solid;border-radius: 0 5px 5px 0 !important;} + +.security_login .title_area{position:relative;display:flex;margin:30px 0 15px 0;align-items:center;} +.security_login .qmMark{width:20px;height:20px;margin:-4px 0 0 8px;font-size:14px;font-weight:bold;font-family:'GmarketSansBold';background:#d7d7d9;border-radius:5px;color:#666;text-align:center;line-height:22px;cursor:pointer;} +.security_login .title_area .hover_cont{display:none;display: none; position:absolute;width:320px;padding:15px;font-size:15px;line-height:1.2;z-index:80;background:#fff;border-radius:5px;overflow:hidden;box-shadow:0 0 8px rgba(0,0,0,0.5);} +.security_login .title_area .qmMark:hover+.hover_cont{display:block;} +/* //보안로그인 */ + /* 서류 인증 */ .certify_in>div .certify_in_body.certify_num input[type="text"] {width: 150px; padding: 0 20px;} .certify_in>div .certify_in_body.certify_num input[type="text"]:nth-child(2) {padding: 0;} diff --git a/src/main/webapp/publish/mypage_index_2024.html b/src/main/webapp/publish/mypage_index_2024.html new file mode 100644 index 00000000..16cb1b18 --- /dev/null +++ b/src/main/webapp/publish/mypage_index_2024.html @@ -0,0 +1,1061 @@ + + + + + + + 문자온 + + + + + + + + + + + + + + + + + + + +
+ + +
본문 바로가기
+
+
+

QUICK
MENU

+

QUICK

+ +
+
+ +
+
+
+
    +
  • +
  • +
  • +
  • +
  • +
  • +
+
+
+

마이페이지

+
+
+
+
+

+ 홍길동회원님 반갑습니다 +

+ +
+
+
나의
단가
+
+
    +
  • + 문자 +
  • +
  • + 단문 + + 18 + 원 +
  • +
  • + 장문 + + 50 + 원 +
  • +
  • + 그림 + + 90 + 원 + (2장 : 110원 / 3장 : 130원) +
  • +
+
    +
  • + 카톡 +
  • +
  • + 알림톡 + + 6.9 + 원 +
  • +
  • + 팩스 +
  • +
  • + 팩스 + + 58 + 원 +
  • +
+
+
+
+ + + + + +
+

이용내역

+

(단위 : 건, 원)

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
구분, 충전금액, 사용금액, 잔액 등 정보를 제공하는 표
구분충전금액사용금액잔액
캐시100,000,000,000100,000,000,000100,000,000,000
포인트100,000,000,000100,000,000,000100,000,000,000
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
구분, 문자, 알림톡, 친구톡, 팩스, 계 등 정보를 제공하는 표
구분문자알림톡친구톡팩스
발송건(매)수100,000,000,000100,000,000,000100,000,000,000100,000,000,000100,000,000,000
사용금액100,000,000,000100,000,000,000100,000,000,000100,000,000,000100,000,000,000
예약건(매)수100,000,000,000100,000,000,000100,000,000,000100,000,000,000100,000,000,000
사용금액100,000,000,000100,000,000,000100,000,000,000100,000,000,000100,000,000,000
+
+
+

알림톡 아이콘 이미지세부내역 +

+
+
+
기간선택 +
~
+ *조회기간의 사용내역만 보여집니다. +
+
+
+
+
+
    +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
+
+
+
+

10

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
날짜 +
+
문자유형 +
+
내용 +
+
충전사용잔액
충전금포인트충전금포인트충전금포인트
+

2021-06-10

+
+

알림톡 텍스트

+
+

(광고) 하이~ 무료 거부 0801000008 대리운전

+
+
알림톡 + 도착 +
+
+
+
+

강조표기 보조문구 미리보기

+

타이틀 미리보기

+

내용미리보기

+

부가정보내용

+

채널 추가 안내 메시지 미리보기

+
+
+
+

0

+
+

0

+
+

0

+
+

50

+
+

0

+
+

350

+
+

2021-06-10

+
+

알림톡

+
+

(광고) 하이~ 무료 거부 0801000008 대리운전

+
+
    +
  • 보낸 이미지1
  • +
+

(광고) 하이~ 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다! (광고) 하이~ + 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다!

+
+
+

0

+
+

0

+
+

0

+
+

50

+
+

0

+
+

350

+
+

2021-06-10

+
+

친구톡

+
+

(광고) 하이~ 무료 거부 0801000008 대리운전

+
+
    +
  • 보낸 이미지1
  • +
+

(광고) 하이~ 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다! (광고) 하이~ + 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다!

+
+
+

0

+
+

0

+
+

0

+
+

50

+
+

0

+
+

350

+
+

2021-06-10

+
+

광고

+
+

(광고) 하이~ 무료 거부 0801000008 대리운전

+
+
    +
  • 보낸 이미지1
  • +
+

(광고) 하이~ 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다! (광고) 하이~ + 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다!

+
+
+

0

+
+

0

+
+

0

+
+

50

+
+

0

+
+

350

+
+

2021-06-10

+
+

선거

+
+

(광고) 하이~ 무료 거부 0801000008 대리운전

+
+
    +
  • 보낸 이미지1
  • +
  • 보낸 이미지2
  • +
  • 보낸 이미지3
  • +
+

(광고) 하이~ 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다! (광고) 하이~ + 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다!

+
+
+

0

+
+

0

+
+

0

+
+

50

+
+

0

+
+

350

+
+

2021-06-10

+
+

일반

+
+

(광고) 하이~ 무료 거부 0801000008 대리운전

+
+

(광고) 하이~ 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다! (광고) 하이~ + 무료 거부 08010000008 빨리빨리대리전★☎ 1588-8282 시원한 맥주한잔 후엔 10% 적립! 불러주시면 빨리 달려갑니다!

+
+
+

0

+
+

0

+
+

0

+
+

50

+
+

0

+
+

350

+
+

2021-06-10

+
+

가입축하포인트

+
+

문자포인트 적립

+
+

0

+
+

500

+
+

0

+
+

500

+
+

0

+
+

500

+
+
+
    +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
+
+
+
+

대표 발신번호 관리

+
+

· 등록된 번호 수 1/10개

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
등록일자, 발신번호, 발신번호 명, 상태 정보를 제공하는 표
등록일자발신번호발신번호명상태
2022-05-20 17:05010-5705-8729 +

정수빈

+
인증완료
+
+
+
+
+

최근 발송내역 - 문자

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
등록일자, 발신번호, 발신번호 명, 상태 정보를 제공하는 표
메시지 형태발송일시내용발송건수결과발신번호
단문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
+

성공

+
010-1234-5678
장문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다. 아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
+

성공

+
010-1234-5678
단문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
+

실패

+
010-1234-5678
+
+
+
+

최근 발송내역 - 알림톡

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
등록일자, 발신번호, 발신번호 명, 상태 정보를 제공하는 표
메시지 형태발송일시내용발송건수결과대체문자 건수
단문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
+

성공

+
0
장문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다. 아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
+

성공

+
0
단문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
+

실패

+
1
+
+
+
+

최근 발송내역 - 팩스

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
등록일자, 발신번호, 발신번호 명, 상태 정보를 제공하는 표
메시지 형태발송일시내용발송건수발송매수결과
단문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
0 +

성공

+
장문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다. 아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
0 +

성공

+
단문2021-05-04 18:00:09 +

아름다운 봄이 가득한 5월입니다.

+
+

1,000

+
0 +

실패

+
+
+
+
+
+
+
+
+ + + + \ No newline at end of file From f24aebf79f10ce6dfe90faac3bcb8d20a0d72da4 Mon Sep 17 00:00:00 2001 From: subsub Date: Tue, 19 Nov 2024 12:01:25 +0900 Subject: [PATCH 02/39] =?UTF-8?q?2024/11/19=20=EB=B3=B4=EC=95=88=EB=A1=9C?= =?UTF-8?q?=EA=B7=B8=EC=9D=B8=20=EC=A3=BC=EC=84=9D=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/publish/mypage_index_2024.html | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/webapp/publish/mypage_index_2024.html b/src/main/webapp/publish/mypage_index_2024.html index 16cb1b18..4885cd40 100644 --- a/src/main/webapp/publish/mypage_index_2024.html +++ b/src/main/webapp/publish/mypage_index_2024.html @@ -22,6 +22,8 @@
+ +
+ +
+ +
@@ -171,7 +210,7 @@

홍길동회원님 반갑습니다

- +
나의
단가
@@ -302,7 +341,7 @@

인증에 사용할 휴대폰번호를 추가로 등록하여 관리할 수 있습니다.
(등록 및 삭제 시 휴대폰 본인인증 필요)

- +
From 0b22c3160b9f75c4ecd8d1e2047727a4a72c86e1 Mon Sep 17 00:00:00 2001 From: kmg Date: Tue, 19 Nov 2024 17:39:16 +0900 Subject: [PATCH 07/39] =?UTF-8?q?2024/11/19=20=ED=8C=9D=EC=97=85=EC=88=98?= =?UTF-8?q?=EC=A0=95=201=EC=B0=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../webapp/WEB-INF/jsp/web/main/mainPage.jsp | 34 ++++++++++++++++++- src/main/webapp/publish/css/popupLayer.css | 1 + 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp b/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp index 5e01be31..3f38cc74 100644 --- a/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp @@ -1225,7 +1225,7 @@ function fn_click_banner_add_stat(bannerMenuCode){
- + + + + +
diff --git a/src/main/webapp/publish/css/popupLayer.css b/src/main/webapp/publish/css/popupLayer.css index 3fa3cc1f..d99c22d8 100644 --- a/src/main/webapp/publish/css/popupLayer.css +++ b/src/main/webapp/publish/css/popupLayer.css @@ -58,6 +58,7 @@ .layer_popup_wrap02 .layer_popup:first-child{margin-left: 0;} .layer_popup_wrap02 .layer_popup:last-child{margin-right: 0;} .layer_popup_wrap02 .popup_inner{position: relative; display: flex; width: 100%; height: 100%; vertical-align: middle; justify-content: center; align-items: center;} +.layer_popup_wrap .popup_range {display:flex; flex-direction:column;} /* layer_tType1 */ .popTable_wrap {border: 1px solid #ccc; border-radius: 5px;} From 06fec12b4594cb1d989eb0609517aa17c5561fb0 Mon Sep 17 00:00:00 2001 From: Eunjipark Date: Tue, 19 Nov 2024 17:57:55 +0900 Subject: [PATCH 08/39] =?UTF-8?q?2024/11/19=20=ED=8C=9D=EC=97=85=EC=88=98?= =?UTF-8?q?=EC=A0=95=202=EC=B0=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../webapp/WEB-INF/jsp/web/main/mainPage.jsp | 14 +++++++------- .../publish/images/main/popup04_241119.jpg | Bin 0 -> 56864 bytes .../publish/images/main/popup06_241119.jpg | Bin 0 -> 61900 bytes 3 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 src/main/webapp/publish/images/main/popup04_241119.jpg create mode 100644 src/main/webapp/publish/images/main/popup06_241119.jpg diff --git a/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp b/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp index 3f38cc74..7e8c1f21 100644 --- a/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/main/mainPage.jsp @@ -1241,12 +1241,12 @@ function fn_click_banner_add_stat(bannerMenuCode){ - - - - - - - - - - - - -

이용내역

diff --git a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp index 5ad88a44..b718be59 100644 --- a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp @@ -3,6 +3,7 @@ <%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%> +
@@ -425,6 +590,7 @@ function deleteRow(p_ip){

최근 변경일시 : 2024-11-01 12:49

+ ON OFF
@@ -433,23 +599,23 @@ function deleteRow(p_ip){ -
-
-

보안로그인

-
- 현재 접속중인 IP : 000.000.000.00 [허용 IP] -
-
+ + + + + + + -
-

최근 변경일시 : 2024-11-01 12:49

+ + -
- ON - OFF -
-
-
+ + + + + + @@ -463,13 +629,13 @@ function deleteRow(p_ip){
-
+
- + - + @@ -544,7 +710,7 @@ function deleteRow(p_ip){
-

로그인 내역 로그인 내역은 최대 90일까지만 보관됩니다.

+

로그인 내역 로그인 내역은 최대 3개월까지만 보관됩니다.

From b7411be08ad3a886c617dd8b2ec8ae366740682d Mon Sep 17 00:00:00 2001 From: subsub Date: Thu, 21 Nov 2024 16:42:56 +0900 Subject: [PATCH 24/39] =?UTF-8?q?2024/11/21=20=EB=B3=B4=EC=95=88=EB=A1=9C?= =?UTF-8?q?=EA=B7=B8=EC=9D=B8=20on/off=20=EC=88=98=EC=A0=95,=20=EB=A1=9C?= =?UTF-8?q?=EA=B7=B8=EC=9D=B8=20=EC=A0=95=EB=B3=B4=EC=B0=BD=20=EB=B3=B4?= =?UTF-8?q?=EC=95=88=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/publish/css/common.css | 8 ++ src/main/webapp/publish/images/icon_lock.png | Bin 0 -> 2036 bytes src/main/webapp/publish/js/content.js | 2 +- .../webapp/publish/mypage_index_2024.html | 104 ++++++++++++++---- 4 files changed, 90 insertions(+), 24 deletions(-) create mode 100644 src/main/webapp/publish/images/icon_lock.png diff --git a/src/main/webapp/publish/css/common.css b/src/main/webapp/publish/css/common.css index cb9d574c..c983fc56 100644 --- a/src/main/webapp/publish/css/common.css +++ b/src/main/webapp/publish/css/common.css @@ -151,6 +151,14 @@ caption, .label {position: absolute;width: 1px;height: 1px;margin: -1px;border: .login2 .check_money, .login2 .point, .login2 .event {white-space:nowrap;} + +/* 보안로그인 */ +.security_box{display:inline-flex;height:36px;font-weight:500;background:#fff;padding:0 11px;margin:0 0 0 10px;vertical-align:middle;border-radius:5px;align-items:center;} +.login2 .login_info .security_box i.icon_lock{display:inline-block;width:20px;height:18px;background:url(/publish/images/icon_lock.png) no-repeat center center;background-size:auto 100%;vertical-align:top;} +.security_box .state{font-size:13px;font-weight:600;padding:5px 10px;margin:0 0 0 5px;border-radius:5px;} +.security_box .state.on{border:1px solid #18bb59;background:#e7f8ee;color:#18bb59;} +.security_box .state.off{border:1px solid #e62c2c;background:#fce9e9;color:#e62c2c;} + /* //header */ diff --git a/src/main/webapp/publish/images/icon_lock.png b/src/main/webapp/publish/images/icon_lock.png new file mode 100644 index 0000000000000000000000000000000000000000..83d9630e9c33fe7baf64adb6d1f835ea5aa6bb18 GIT binary patch literal 2036 zcmbVN3v3f*94{#B!DEu~7#p(N5n)p5QSlheZ-PUdq z2@nX&Bxrb4&CpClNHD`fBno5*dn8i+e06KsQZMar7f~EXvS&F*mOlVvH1*r zh+0O|S8cg|TBjRuqQGHyS=Mhob*O6Ooaf@MA74CwPSMY!>Nig;o}BuMz3^m0YFfjZ zGr}bMz%6$MZ5h0&thskvLj1X%eRc=F>W!53i5XK$@)NT!CanGD($T|vuKwP&9NcW( zYQE8P_U*de-OE04m8EwU=Ed#)qa~x+Ltypl7fSu1*Plr_yrU(w zL`qF+U6`@yLi+KvM)%Q+$CtP7zkT#zD6@O`ofCN<9k_5T?MBbIj^>i|!()ES9C2&> z?ISBjR(&wo(~&*%&#n&>_kP+`u-C9A7|8tR*66-1*oNV+#l6?i+c7k`w_#&RI<{-! zNsIFoomI0V_%&FRsBf!pPdXiH$he$Wl}bvs!2b408(-d2IxjfltNgqxp6fHuH13?U z_=j=}amg+@L1E+Mzm6=-D(G48=GA@MKMuY>W$&;nwI%V*YXTQi97E@CUpe~Vg3F77 z>}O+Vk6rTJ5^3!IP)=!9{peBGs#~XQTetK}itO3>H$CR;k1P5%sGeWk&ko!gIM%%K z=7L?{o?D-1Irr1A^8#zThA!Qnc4OqeBXVmO@Ui)7z$erbAnNhat EU%3v)yZ`_I literal 0 HcmV?d00001 diff --git a/src/main/webapp/publish/js/content.js b/src/main/webapp/publish/js/content.js index 7cd4c197..62871e5b 100644 --- a/src/main/webapp/publish/js/content.js +++ b/src/main/webapp/publish/js/content.js @@ -70,7 +70,7 @@ $(document).ready(function () { }); /* 문자샘플 탭 선택 시 활성화 */ - $(".tab_depth1 a").click(function () { + $(".tab_depth1:not(.security_tab) a").click(function () { var tabText = $(this).text(); var tabPosi = $(this).position().left; tabPosi -= 1; diff --git a/src/main/webapp/publish/mypage_index_2024.html b/src/main/webapp/publish/mypage_index_2024.html index fffc111a..3736f21e 100644 --- a/src/main/webapp/publish/mypage_index_2024.html +++ b/src/main/webapp/publish/mypage_index_2024.html @@ -24,11 +24,26 @@ $(function () { // on/off 시 confirm 창 노출 - $('.security_set .tab_depth1 a').click(function () { - if ($(this).text().trim() == "ON") { - confirm("보안로그인 설정 후 로그인 시, 등록한 휴대폰번호로 추가 인증이 진행됩니다"); - } else { - confirm("가입자 휴대폰번호로 본인인증 후 해제가 가능하며, 보안로그인 설정을 해제함으로써 발생하는 손해에 대하여 회사는 책임지지 않습니다."); + $('.security_tab a').click(function (e) { + console.log($(this).hasClass("on")) + if ($(this).hasClass("on") == false) { + if ($(this).text().trim() == "ON") { + if (!confirm("보안로그인 설정 후 로그인 시, 등록한 휴대폰번호로 추가 인증이 진행됩니다")) { + $(this).removeClass("on"); + $(this).siblings("a").addClass("on"); + } else { + $(this).addClass("on"); + $(this).siblings("a").removeClass("on"); + } + } else { + if (!confirm("가입자 휴대폰번호로 본인인증 후 해제가 가능하며, 보안로그인 설정을 해제함으로써 발생하는 손해에 대하여 회사는 책임지지 않습니다.")) { + $(this).removeClass("on"); + $(this).siblings("a").addClass("on"); + } else { + $(this).addClass("on"); + $(this).siblings("a").removeClass("on"); + } + } } }); @@ -198,15 +213,52 @@
- - + @@ -308,17 +360,23 @@ + - + - + - +
010-0000-0000 메모 내용 2024-11-04 11:54
010-0000-0000메모내용 2024-11-04 11:54
@@ -376,7 +434,7 @@

로그인 내역 로그인 내역은 최대 90일까지만 보관됩니다.

-
+
From 4675554266504f133120628edf73968904cc6354 Mon Sep 17 00:00:00 2001 From: Eunjipark Date: Thu, 21 Nov 2024 17:14:26 +0900 Subject: [PATCH 25/39] =?UTF-8?q?2024/11/21=20=EB=B6=88=EB=B2=95=EC=8A=A4?= =?UTF-8?q?=ED=8C=B8=EB=B0=A9=EC=A7=80=EC=A0=95=EC=B1=85=20=EC=88=98?= =?UTF-8?q?=EC=A0=952?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/publish/service3_spam_2024.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/webapp/publish/service3_spam_2024.html b/src/main/webapp/publish/service3_spam_2024.html index 5d09e217..d669274a 100644 --- a/src/main/webapp/publish/service3_spam_2024.html +++ b/src/main/webapp/publish/service3_spam_2024.html @@ -235,7 +235,7 @@ KISA 불법 스팸방지를 위한 정보통신망법 안내서
- 주식회사 아이티앤(이하 "회사”라 한다)은 편리한 서비스 이용과 스팸, 불법스팸으로 인한 폐해를 방지하기 위해 스팸방지정책을 수립하여 운영하고 있습니다. 회사가 제공하는 인터넷 + 주식회사 아이티앤(이하 “회사”라 한다)은 편리한 서비스 이용과 스팸, 불법스팸으로 인한 폐해를 방지하기 위해 스팸방지정책을 수립하여 운영하고 있습니다. 회사가 제공하는 인터넷 서비스 문자온(www.munjaon.co.kr, 이하 “서비스”)을 이용함에 있어, 아래와 같이 불법스팸(문자, 팩스, 음성, 메일)을 발송한 이용자에 대해서는 이용정지 및 해지, 형사고발 등의 조치를 취하겠습니다.
From 265e29a513a2bcfcfcb8822de490deaeb88f7dd4 Mon Sep 17 00:00:00 2001 From: subsub Date: Thu, 21 Nov 2024 17:47:39 +0900 Subject: [PATCH 26/39] =?UTF-8?q?2024/11/21=20css=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/publish/css/content.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/webapp/publish/css/content.css b/src/main/webapp/publish/css/content.css index 77a9b6b3..87ee1125 100644 --- a/src/main/webapp/publish/css/content.css +++ b/src/main/webapp/publish/css/content.css @@ -1750,7 +1750,7 @@ button.check_validity:hover {border: 1px solid #a3a3a3;box-shadow: 0px 0px 5px .fax_content .file_add.upload_table_wrap .file_upload_table tbody tr td p{display: inline-block; max-width: 83%; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; font-size: 15px; font-weight:400; color: #444; vertical-align: sub;} .fax_content .file_add.upload_table_wrap .file_upload_table tbody tr td .btn_file_del{width: 24px; height: 24px;} .fax_content .file_add.upload_table_wrap .file_upload_table tbody tr td img{margin-right: 0;} -.fax_content .file_right{display: inline-block; width: 150px; margin: 0 0 0 8px;} +.fax_content .file_right{display: inline-block; width: 149px; margin: 0 0 0 8px;} .fax_content .file_right button{width: 100%; max-width: 100%; margin: 0 0 4px 0;} .fax_content .file_right p{width: 100%; text-align: right; margin: 20px 0 0 0;} .fax_content .receipt_num_input{width: calc(100% - 300px); max-width: 340px;} From 2f58db34b1643925ec75d25266f282866ef88eaa Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Thu, 21 Nov 2024 17:51:37 +0900 Subject: [PATCH 27/39] =?UTF-8?q?=EB=B3=B4=EC=95=88=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=EC=A7=84=ED=96=89=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cert/ip/service/CertLoginLogService.java | 14 +++ .../cert/ip/service/MberCertLoginLogVO.java | 68 ++++++++++++ .../cert/ip/service/impl/CertLoginLogDAO.java | 41 +++++++ .../service/impl/CertLoginLogServiceImpl.java | 78 ++++++++++++++ .../cert/ip/web/CertLoginLogController.java | 102 ++++++++++++++++++ .../let/uat/uia/web/EgovLoginController.java | 13 +++ .../spring/com/context-idgen.xml | 19 ++++ .../mysql/sql-map-config-mysql-cert.xml | 5 +- .../let/cert/MjonCertLoginLog_SQL_mysql.xml | 45 ++++++++ .../WEB-INF/jsp/web/user/mberSecureLogin.jsp | 6 +- 10 files changed, 385 insertions(+), 6 deletions(-) create mode 100644 src/main/java/itn/let/cert/ip/service/CertLoginLogService.java create mode 100644 src/main/java/itn/let/cert/ip/service/MberCertLoginLogVO.java create mode 100644 src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java create mode 100644 src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java create mode 100644 src/main/java/itn/let/cert/ip/web/CertLoginLogController.java create mode 100644 src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml diff --git a/src/main/java/itn/let/cert/ip/service/CertLoginLogService.java b/src/main/java/itn/let/cert/ip/service/CertLoginLogService.java new file mode 100644 index 00000000..3af77334 --- /dev/null +++ b/src/main/java/itn/let/cert/ip/service/CertLoginLogService.java @@ -0,0 +1,14 @@ +package itn.let.cert.ip.service; + +import javax.servlet.http.HttpServletRequest; + +import egovframework.rte.fdl.cmmn.exception.FdlException; + +public interface CertLoginLogService { + + + public void insertCertLoginLog(MberCertLoginLogVO mberCertLoginLogVO, HttpServletRequest request) throws FdlException; + + + +} diff --git a/src/main/java/itn/let/cert/ip/service/MberCertLoginLogVO.java b/src/main/java/itn/let/cert/ip/service/MberCertLoginLogVO.java new file mode 100644 index 00000000..b261e90f --- /dev/null +++ b/src/main/java/itn/let/cert/ip/service/MberCertLoginLogVO.java @@ -0,0 +1,68 @@ +package itn.let.cert.ip.service; + +import itn.let.uss.umt.service.UserDefaultVO; +/** + * + * @author : 이호영 + * @fileName : MberCertLoginLogVO.java + * @date : 2024.11.21 + * @description : 로그인 이력관리 92동안만 관리하고 삭제 + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- * + * 2024.11.21 이호영 최초 생성 + * + * + * + */ +public class MberCertLoginLogVO extends UserDefaultVO{ + + + /** + * @description : + */ + private static final long serialVersionUID = 1L; + + + private String certLoginId; + private String loginId; + private String loginIp; + private String loginDevice; + private String loginDt; + + + public String getCertLoginId() { + return certLoginId; + } + public void setCertLoginId(String certLoginId) { + this.certLoginId = certLoginId; + } + public String getLoginId() { + return loginId; + } + public void setLoginId(String loginId) { + this.loginId = loginId; + } + public String getLoginIp() { + return loginIp; + } + public void setLoginIp(String loginIp) { + this.loginIp = loginIp; + } + public String getLoginDevice() { + return loginDevice; + } + public void setLoginDevice(String loginDevice) { + this.loginDevice = loginDevice; + } + public String getLoginDt() { + return loginDt; + } + public void setLoginDt(String loginDt) { + this.loginDt = loginDt; + } + + + + +} diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java new file mode 100644 index 00000000..5f81c14a --- /dev/null +++ b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java @@ -0,0 +1,41 @@ +package itn.let.cert.ip.service.impl; + +import org.springframework.stereotype.Repository; + +import egovframework.rte.psl.dataaccess.EgovAbstractDAO; +import itn.let.cert.ip.service.MberCertLoginLogVO; + +@Repository("CertLoginLogDAO") +public class CertLoginLogDAO extends EgovAbstractDAO { + + +/* + public List selectMberCertIpList(MberCertIpVO mberCertIpVO) { + return (List) list("MberCertIpVO.selectMberCertIpList", mberCertIpVO); + } + + public void insertCertIp(MberCertIpVO mberCertIpVO) { + insert("MberCertIpVO.insertCertIp", mberCertIpVO); + } + + public void deleteCertIp(MberCertIpVO mberCertIpVO) { + insert("MberCertIpVO.deleteCertIp", mberCertIpVO); + } + + public MberCertIpVO findByMberCertIpList(MberCertIpVO mberCertIpVO) { + return (MberCertIpVO) select("MberCertIpVO.findByMberCertIpList", mberCertIpVO); + } +*/ + public void insertCertLoginLog(MberCertLoginLogVO mberCertLoginLogVO) { + insert("MberCertLoginLogVO.insertCertLoginLog", mberCertLoginLogVO); + } + + public int checkLoginIpExists(MberCertLoginLogVO mberCertLoginLogVO) { + return (int) select("MberCertLoginLogVO.checkLoginIpExists", mberCertLoginLogVO); + } + + public void updateCertLoginLog(MberCertLoginLogVO mberCertLoginLogVO) { + insert("MberCertLoginLogVO.updateCertLoginLog", mberCertLoginLogVO); + } + +} diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java new file mode 100644 index 00000000..bd256583 --- /dev/null +++ b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java @@ -0,0 +1,78 @@ +package itn.let.cert.ip.service.impl; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; + +import org.springframework.stereotype.Service; + +import egovframework.rte.fdl.cmmn.EgovAbstractServiceImpl; +import egovframework.rte.fdl.cmmn.exception.FdlException; +import egovframework.rte.fdl.idgnr.EgovIdGnrService; +import itn.let.cert.ip.service.CertLoginLogService; +import itn.let.cert.ip.service.MberCertLoginLogVO; + +@Service("CertLoginLogService") +public class CertLoginLogServiceImpl extends EgovAbstractServiceImpl implements CertLoginLogService { + + @Resource(name = "CertLoginLogDAO") + private CertLoginLogDAO certLoginLogDAO; + + @Resource(name = "egovMjonCertLoginLogIdGnrService") + private EgovIdGnrService certLoginLogIdGnrService; +/* + @Override + public StatusResponse selectMberCertIpList(MberCertIpVO mberCertPhoneVO) { + List mberCertIpListVO = certLoginLogDAO.selectMberCertIpList(mberCertPhoneVO); + return new StatusResponse(HttpStatus.OK, mberCertIpListVO, LocalDateTime.now()); + } + + + @Override + public StatusResponse insertCertIp(MberCertIpVO mberCertIpVO) { + MberCertIpVO mberCertIpListVO = certLoginLogDAO.findByMberCertIpList(mberCertIpVO); + if(mberCertIpListVO != null) { + return new StatusResponse(HttpStatus.CONFLICT, "중복 IP입니다.", LocalDateTime.now()); + } + certLoginLogDAO.insertCertIp(mberCertIpVO); + return new StatusResponse(HttpStatus.OK, "등록 하였습니다.", LocalDateTime.now()); + } + + + @Override + public StatusResponse deleteCertIp(MberCertIpVO mberCertIpVO) { + certLoginLogDAO.deleteCertIp(mberCertIpVO); + return new StatusResponse(HttpStatus.OK, "삭제 하였습니다.", LocalDateTime.now()); + } +*/ + + @Override + public void insertCertLoginLog(MberCertLoginLogVO mberCertLoginLogVO, HttpServletRequest request) throws FdlException { + + + int count = certLoginLogDAO.checkLoginIpExists(mberCertLoginLogVO); + + if (count > 0) { + // 이미 존재하면 UPDATE + certLoginLogDAO.updateCertLoginLog(mberCertLoginLogVO); + } else { + + mberCertLoginLogVO.setCertLoginId(certLoginLogIdGnrService.getNextStringId()); + mberCertLoginLogVO.setLoginDevice(getDevice(request)); + certLoginLogDAO.insertCertLoginLog(mberCertLoginLogVO); + + } + } + + private String getDevice(HttpServletRequest request) { + String userAgent = request.getHeader("User-Agent").toLowerCase(); + + if (userAgent.contains("mobile") || userAgent.contains("android") || userAgent.contains("iphone")) { + return "M"; + } else if (userAgent.contains("tablet") || userAgent.contains("ipad")) { + return "T"; + } else { + return "D"; + } + } + +} diff --git a/src/main/java/itn/let/cert/ip/web/CertLoginLogController.java b/src/main/java/itn/let/cert/ip/web/CertLoginLogController.java new file mode 100644 index 00000000..0118a704 --- /dev/null +++ b/src/main/java/itn/let/cert/ip/web/CertLoginLogController.java @@ -0,0 +1,102 @@ +package itn.let.cert.ip.web; + +import java.time.LocalDateTime; + +import javax.annotation.Resource; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.ModelAndView; + +import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; +import itn.com.cmm.LoginVO; +import itn.com.utl.fcc.service.EgovStringUtil; +import itn.let.cert.ip.service.CertLoginLogService; +import itn.let.cert.ip.service.MberCertIpVO; +import itn.let.mail.service.StatusResponse; + +/** + * + * @author : 이호영 + * @fileName : CertIpController.java + * @date : 2024.11.19 + * @description : 허용 IP 관련 컨트롤러 + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- * + * 2024.11.19 이호영 최초 생성 + * + * + * + */ +@Controller +public class CertLoginLogController { + + + /* CertLoginLogService */ + @Resource(name = "CertLoginLogService") + private CertLoginLogService certLoginLogService; + + /* + @RequestMapping(value = {"/cert/ip/selectMberCertIpList.do"}) + public ResponseEntity selectMberCertIpList(MberCertIpVO mberCertPhoneVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertPhoneVO.setMberId(userId); + return ResponseEntity.ok().body(certLoginLogService.selectMberCertIpList(mberCertPhoneVO)); + } + + + @RequestMapping(value = {"/cert/ip/insertCertIp.do"}) + public ResponseEntity insertCertIp(MberCertIpVO mberCertIpVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertIpVO.setFrstRegisterId(userId); + mberCertIpVO.setMberId(userId); + + + return ResponseEntity.ok().body(certLoginLogService.insertCertIp(mberCertIpVO)); + } + + @RequestMapping(value = {"/cert/ip/deleteCertIp.do"}) + public ResponseEntity deleteCertIp(MberCertIpVO mberCertIpVO) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertIpVO.setLastUpdusrId(userId); + mberCertIpVO.setMberId(userId); + + + return ResponseEntity.ok().body(certLoginLogService.deleteCertIp(mberCertIpVO)); + } + */ +} \ No newline at end of file diff --git a/src/main/java/itn/let/uat/uia/web/EgovLoginController.java b/src/main/java/itn/let/uat/uia/web/EgovLoginController.java index e5eda7b6..f22c7e3c 100644 --- a/src/main/java/itn/let/uat/uia/web/EgovLoginController.java +++ b/src/main/java/itn/let/uat/uia/web/EgovLoginController.java @@ -83,6 +83,8 @@ import itn.com.cmm.util.StringUtil; import itn.com.cmm.util.WebUtil; import itn.com.uss.olh.hpc.service.HackIpService; import itn.com.uss.olh.hpc.service.HackIpVO; +import itn.let.cert.ip.service.CertLoginLogService; +import itn.let.cert.ip.service.MberCertLoginLogVO; import itn.let.cert.phone.service.CertPhoneService; import itn.let.cert.phone.service.MberCertPhoneVO; import itn.let.cop.bbs.service.BoardVO; @@ -242,6 +244,9 @@ public class EgovLoginController { @Resource(name = "CertPhoneService") private CertPhoneService certPhoneService; + @Resource(name = "CertLoginLogService") + private CertLoginLogService certLoginLogService; + private static final Logger logger = LoggerFactory.getLogger(MjonMsgDataController.class); /* 문자온 사용자 로그인 시작 */ @@ -1111,6 +1116,7 @@ public class EgovLoginController { // 공인 IP 구하기 String userIp = EgovClntInfo.getClntIP(request); + System.out.println("userIp :: "+userIp); // java.util.Scanner s = new java.util.Scanner(new // java.net.URL("https://api.ipify.org").openStream(), // "UTF-8").useDelimiter("\\A"); @@ -2664,7 +2670,14 @@ public class EgovLoginController { loginVO.getIp(); loginVO.setMessage("로그인 성공되었습니다."); loginVO.setLoginYn("Y"); + loginService.insertActionLoginLog(loginVO); + // 인증 로그인 이력을 위한 insert + + MberCertLoginLogVO mberCertLoginLogVO = new MberCertLoginLogVO(); + mberCertLoginLogVO.setLoginId(loginVO.getId()); + mberCertLoginLogVO.setLoginIp(loginVO.getIp()); + certLoginLogService.insertCertLoginLog(mberCertLoginLogVO, request); } // 등급제 Start diff --git a/src/main/resources/egovframework/spring/com/context-idgen.xml b/src/main/resources/egovframework/spring/com/context-idgen.xml index 4b5c4923..727e2847 100644 --- a/src/main/resources/egovframework/spring/com/context-idgen.xml +++ b/src/main/resources/egovframework/spring/com/context-idgen.xml @@ -2849,5 +2849,24 @@ + + + + + + + + + + + + + + + + diff --git a/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml b/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml index 081c2f5f..98a25d13 100644 --- a/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml +++ b/src/main/resources/egovframework/sqlmap/config/mysql/sql-map-config-mysql-cert.xml @@ -3,6 +3,7 @@ - - + + + diff --git a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml new file mode 100644 index 00000000..55517b16 --- /dev/null +++ b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml @@ -0,0 +1,45 @@ + + + + + + + + + + INSERT INTO LETTNGNRLMBER_CERT_LOGIN_LOG_IP + ( + CERT_LOGIN_ID, + LOGIN_ID, + LOGIN_IP, + LOGIN_DEVICE, + LOGIN_DT + ) + VALUES + ( + #certLoginId#, + #loginId#, + #loginIp#, + #loginDevice#, + NOW() + ) + + + + + UPDATE LETTNGNRLMBER_CERT_LOGIN_LOG_IP + SET LOGIN_DT = NOW() + WHERE LOGIN_IP = #loginIp# + AND LOGIN_ID = #loginId# + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp index b718be59..d4879c9a 100644 --- a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp @@ -20,10 +20,8 @@ $(document).ready(function(){ // on/off 시 confirm 창 노출 $('.security_set .tab_depth1 a').click(function () { if ($(this).text().trim() == "ON") { - if(!confirm("보안로그인 설정 후 로그인 시, 등록한 휴대폰번호로 추가 인증이 진행됩니다")){ - console.log('???'); - return false; - } + confirm("보안로그인 설정 후 로그인 시, 등록한 휴대폰번호로 추가 인증이 진행됩니다"); + } else { confirm("가입자 휴대폰번호로 본인인증 후 해제가 가능하며, 보안로그인 설정을 해제함으로써 발생하는 손해에 대하여 회사는 책임지지 않습니다."); openKMCISWindow(); From 9b3a4a3362605a97652e05a777cfb358f142496b Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Thu, 21 Nov 2024 20:11:38 +0900 Subject: [PATCH 28/39] =?UTF-8?q?=EB=B3=B4=EC=95=88=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=EC=A7=84=ED=96=89=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../let/cert/ip/service/CertIpService.java | 7 ++ .../cert/ip/service/CertLoginLogService.java | 5 ++ .../let/cert/ip/service/impl/CertIpDAO.java | 8 ++ .../ip/service/impl/CertIpServiceImpl.java | 25 +++++- .../cert/ip/service/impl/CertLoginLogDAO.java | 6 ++ .../service/impl/CertLoginLogServiceImpl.java | 9 +++ .../let/uat/uia/web/EgovMypageController.java | 71 ++++++++++++++++- .../sqlmap/let/cert/MjonCertIp_SQL_mysql.xml | 29 +++++++ .../let/cert/MjonCertLoginLog_SQL_mysql.xml | 30 +++++++ .../WEB-INF/jsp/web/user/mberSecureLogin.jsp | 79 ++++++------------- 10 files changed, 211 insertions(+), 58 deletions(-) diff --git a/src/main/java/itn/let/cert/ip/service/CertIpService.java b/src/main/java/itn/let/cert/ip/service/CertIpService.java index b4b58285..49fd964c 100644 --- a/src/main/java/itn/let/cert/ip/service/CertIpService.java +++ b/src/main/java/itn/let/cert/ip/service/CertIpService.java @@ -1,5 +1,7 @@ package itn.let.cert.ip.service; +import java.util.List; + import itn.let.mail.service.StatusResponse; public interface CertIpService { @@ -22,6 +24,11 @@ public interface CertIpService { public StatusResponse deleteCertIp(MberCertIpVO mberCertIpVO); + public Boolean checkCertIp(MberCertIpVO mberCertIpVO); + + public Boolean checkRegCertIp(MberCertIpVO mberCertIpVO); + + } diff --git a/src/main/java/itn/let/cert/ip/service/CertLoginLogService.java b/src/main/java/itn/let/cert/ip/service/CertLoginLogService.java index 3af77334..c0bb6484 100644 --- a/src/main/java/itn/let/cert/ip/service/CertLoginLogService.java +++ b/src/main/java/itn/let/cert/ip/service/CertLoginLogService.java @@ -1,5 +1,7 @@ package itn.let.cert.ip.service; +import java.util.List; + import javax.servlet.http.HttpServletRequest; import egovframework.rte.fdl.cmmn.exception.FdlException; @@ -9,6 +11,9 @@ public interface CertLoginLogService { public void insertCertLoginLog(MberCertLoginLogVO mberCertLoginLogVO, HttpServletRequest request) throws FdlException; + public List findAllCertLoginLogVO(MberCertLoginLogVO mberCertLoginLogVO); + + } diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java b/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java index e1e2278c..f76ba664 100644 --- a/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java +++ b/src/main/java/itn/let/cert/ip/service/impl/CertIpDAO.java @@ -27,5 +27,13 @@ public class CertIpDAO extends EgovAbstractDAO { public MberCertIpVO findByMberCertIpList(MberCertIpVO mberCertIpVO) { return (MberCertIpVO) select("MberCertIpVO.findByMberCertIpList", mberCertIpVO); } + + public List checkCertIp(MberCertIpVO mberCertIpVO) { + return (List) list("MberCertIpVO.checkCertIp", mberCertIpVO); + } + + public List checkRegCertIp(MberCertIpVO mberCertIpVO) { + return (List) list("MberCertIpVO.checkRegCertIp", mberCertIpVO); + } } diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java b/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java index 023efcc4..31e4e6e6 100644 --- a/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java +++ b/src/main/java/itn/let/cert/ip/service/impl/CertIpServiceImpl.java @@ -21,8 +21,8 @@ public class CertIpServiceImpl extends EgovAbstractServiceImpl implements CertIp @Override - public StatusResponse selectMberCertIpList(MberCertIpVO mberCertPhoneVO) { - List mberCertIpListVO = certIpDAO.selectMberCertIpList(mberCertPhoneVO); + public StatusResponse selectMberCertIpList(MberCertIpVO mberCertIpVO) { + List mberCertIpListVO = certIpDAO.selectMberCertIpList(mberCertIpVO); return new StatusResponse(HttpStatus.OK, mberCertIpListVO, LocalDateTime.now()); } @@ -43,5 +43,26 @@ public class CertIpServiceImpl extends EgovAbstractServiceImpl implements CertIp certIpDAO.deleteCertIp(mberCertIpVO); return new StatusResponse(HttpStatus.OK, "삭제 하였습니다.", LocalDateTime.now()); } + + + @Override + public Boolean checkCertIp(MberCertIpVO mberCertIpVO) { + List mberCertIpListVO = certIpDAO.checkCertIp(mberCertIpVO); + if(mberCertIpListVO.size()>0) { + return true; + }else { + return false; + } + } + + @Override + public Boolean checkRegCertIp(MberCertIpVO mberCertIpVO) { + List mberCertIpListVO = certIpDAO.checkRegCertIp(mberCertIpVO); + if(mberCertIpListVO.size()>0) { + return true; + }else { + return false; + } + } } diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java index 5f81c14a..8bc7b868 100644 --- a/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java +++ b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogDAO.java @@ -1,5 +1,7 @@ package itn.let.cert.ip.service.impl; +import java.util.List; + import org.springframework.stereotype.Repository; import egovframework.rte.psl.dataaccess.EgovAbstractDAO; @@ -37,5 +39,9 @@ public class CertLoginLogDAO extends EgovAbstractDAO { public void updateCertLoginLog(MberCertLoginLogVO mberCertLoginLogVO) { insert("MberCertLoginLogVO.updateCertLoginLog", mberCertLoginLogVO); } + + public List findAllCertLoginLogVO(MberCertLoginLogVO mberCertLoginLogVO) { + return (List) list("MberCertLoginLogVO.findAllCertLoginLogVO", mberCertLoginLogVO); + } } diff --git a/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java index bd256583..d052ce9b 100644 --- a/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java +++ b/src/main/java/itn/let/cert/ip/service/impl/CertLoginLogServiceImpl.java @@ -1,5 +1,7 @@ package itn.let.cert.ip.service.impl; +import java.util.List; + import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -75,4 +77,11 @@ public class CertLoginLogServiceImpl extends EgovAbstractServiceImpl implements } } + @Override + public List findAllCertLoginLogVO(MberCertLoginLogVO mberCertLoginLogVO) { + // TODO Auto-generated method stub + return certLoginLogDAO.findAllCertLoginLogVO(mberCertLoginLogVO); + + } + } diff --git a/src/main/java/itn/let/uat/uia/web/EgovMypageController.java b/src/main/java/itn/let/uat/uia/web/EgovMypageController.java index 89320850..5e707225 100644 --- a/src/main/java/itn/let/uat/uia/web/EgovMypageController.java +++ b/src/main/java/itn/let/uat/uia/web/EgovMypageController.java @@ -41,6 +41,10 @@ import itn.com.cmm.util.MJUtil; import itn.com.cmm.util.RedirectUrlMaker; import itn.com.cmm.util.StringUtil; import itn.com.utl.fcc.service.EgovStringUtil; +import itn.let.cert.ip.service.CertIpService; +import itn.let.cert.ip.service.CertLoginLogService; +import itn.let.cert.ip.service.MberCertIpVO; +import itn.let.cert.ip.service.MberCertLoginLogVO; import itn.let.fax.user.service.FaxGroupDataVO; import itn.let.fax.user.service.FaxService; import itn.let.kakao.user.sent.service.KakaoSentService; @@ -70,6 +74,7 @@ import itn.let.uss.umt.service.EgovMberManageService; import itn.let.uss.umt.service.EgovUserManageService; import itn.let.uss.umt.service.MberManageVO; import itn.let.uss.umt.service.UserManageVO; +import itn.let.utl.sim.service.EgovClntInfo; import itn.let.utl.user.service.MjonNoticeSendUtil; /** @@ -164,6 +169,14 @@ public class EgovMypageController { /** 등급제 관리 서비스 */ @Resource(name = "mberGrdService") MberGrdService mberGrdService; + +// /* CertLoginLogService */ + @Resource(name = "CertLoginLogService") + private CertLoginLogService certLoginLogService; + +// /* CertLoginLogService */ + @Resource(name = "CertIpService") + private CertIpService certIpService; /** * 마이페이지 비밀번호 변경 탭 @@ -2927,13 +2940,58 @@ public class EgovMypageController { * 회원탈퇴 본인인증 화면 */ @RequestMapping(value="/web/user/mberSecureLogin.do") - public String secureLogin(@ModelAttribute MberManageVO mberManageVO + public String secureLogin(@ModelAttribute("mberCertLoginLogVO") MberCertLoginLogVO mberCertLoginLogVO , ModelMap model, HttpServletRequest request, RedirectAttributes redirectAttributes) throws Exception { LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; if(loginVO == null) { return "redirect:/web/user/login/login.do"; } + + //로그인 권한정보 불러오기 + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + + mberCertLoginLogVO.setLoginId(userId); + /** pageing */ + PaginationInfo paginationInfo = new PaginationInfo(); + paginationInfo.setCurrentPageNo(mberCertLoginLogVO.getPageIndex()); + paginationInfo.setRecordCountPerPage(mberCertLoginLogVO.getPageUnit()); + paginationInfo.setPageSize(mberCertLoginLogVO.getPageSize()); + + mberCertLoginLogVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); + mberCertLoginLogVO.setLastIndex(paginationInfo.getLastRecordIndex()); + mberCertLoginLogVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); + if("".equals(mberCertLoginLogVO.getSearchSortCnd())){ //최초조회시 최신것 조회List + mberCertLoginLogVO.setSearchSortCnd("LOGIN_DT"); + mberCertLoginLogVO.setSearchSortOrd("asc"); + } + + + //전체 발송 리스트 불러오기 + List resultList = certLoginLogService.findAllCertLoginLogVO(mberCertLoginLogVO); + model.addAttribute("resultList", resultList); + model.addAttribute("resultListCnt", resultList.size()); + + + paginationInfo.setTotalRecordCount( resultList.size()> 0 ? resultList.get(0).getTotCnt() : 0); + model.addAttribute("paginationInfo", paginationInfo); + + + + + // 접속 IP + String cennectIP = EgovClntInfo.getClntIP(request); + model.addAttribute("cennectIP", cennectIP); + + // 접속 IP가 등록되어있는지 확인 + MberCertIpVO mberCertIpVO = new MberCertIpVO(); + mberCertIpVO.setCertIp(cennectIP); + mberCertIpVO.setMberId(userId); + model.addAttribute("chkcertRegIP", certIpService.checkRegCertIp(mberCertIpVO)); + + + { @@ -2954,6 +3012,8 @@ public class EgovMypageController { AuthCertVO certVO = kmcCertCheck.authCertCheckNine(serverNm + "/web/user/selectSecurityAuthn.do", loginVO.getId()); model.addAttribute("certVO", certVO); } + + model.addAttribute("pageTab", "mberSecureLogin"); return "web/user/mberSecureLogin"; @@ -3773,12 +3833,17 @@ public class EgovMypageController { certVO.setCertNation(kmcVO.getNation()); certVO.setCertName(kmcVO.getName()); certVO.setCertResult(kmcVO.getResult()); - certVO.setCertType("KMC_회원정보 변경"); + certVO.setCertType("dddddddddddddddddddddd"); certVO.setCertIpaddr(kmcVO.getIp()); certVO.setBirthDay(kmcVO.getBirthDay()); certVO.setSexdstnCode(kmcVO.getGender()); - model.addAttribute("kmcVO", kmcVO); + + //디비 테이블에 저장하기 + mberManageService.insertCertInfoLog(certVO); + + + return "web/user/securityAuthnPage"; } diff --git a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml index cb7b6da6..09b820a2 100644 --- a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertIp_SQL_mysql.xml @@ -86,4 +86,33 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml index 55517b16..afc29c29 100644 --- a/src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/cert/MjonCertLoginLog_SQL_mysql.xml @@ -8,6 +8,36 @@ + + + + + + +
@@ -579,8 +588,10 @@ function callTo() {

보안로그인

- 현재 접속중인 IP : 000.000.000.00 - + 현재 접속중인 IP : [허용 IP] + + +
@@ -726,62 +737,19 @@ function callTo() {
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + +
2024-11-20 13:57:12119.193.215.98PC
2024-11-20 13:57:12119.193.215.98모바일
2024-11-20 13:57:12119.193.215.98PC
2024-11-20 13:57:12119.193.215.98모바일
2024-11-20 13:57:12119.193.215.98PC
2024-11-20 13:57:12119.193.215.98모바일
2024-11-20 13:57:12119.193.215.98PC
2024-11-20 13:57:12119.193.215.98모바일
2024-11-20 13:57:12119.193.215.98PC
2024-11-20 13:57:12119.193.215.98모바일
-
    + - +
pagination + --> + +
    + +
+
From 3dceedeabc414f774a2ddfa743a9d89de720001d Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Thu, 21 Nov 2024 20:29:12 +0900 Subject: [PATCH 29/39] =?UTF-8?q?=ED=97=88=EC=9A=A9IP=EB=93=B1=EB=A1=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../itn/let/cert/ip/web/CertIpController.java | 25 +++++++++++++++++++ .../WEB-INF/jsp/web/user/mberSecureLogin.jsp | 21 +++++++++++++++- 2 files changed, 45 insertions(+), 1 deletion(-) diff --git a/src/main/java/itn/let/cert/ip/web/CertIpController.java b/src/main/java/itn/let/cert/ip/web/CertIpController.java index 8dfb6947..425106eb 100644 --- a/src/main/java/itn/let/cert/ip/web/CertIpController.java +++ b/src/main/java/itn/let/cert/ip/web/CertIpController.java @@ -3,6 +3,7 @@ package itn.let.cert.ip.web; import java.time.LocalDateTime; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; import org.springframework.http.HttpStatus; @@ -17,6 +18,7 @@ import itn.com.utl.fcc.service.EgovStringUtil; import itn.let.cert.ip.service.CertIpService; import itn.let.cert.ip.service.MberCertIpVO; import itn.let.mail.service.StatusResponse; +import itn.let.utl.sim.service.EgovClntInfo; /** * @@ -79,6 +81,29 @@ public class CertIpController { return ResponseEntity.ok().body(certIpService.insertCertIp(mberCertIpVO)); } + + @RequestMapping(value = {"/cert/ip/insertCennetCertIp.do"}) + public ResponseEntity insertCennetCertIp(MberCertIpVO mberCertIpVO,HttpServletRequest request) throws Exception { + + ModelAndView modelAndView = new ModelAndView(); + modelAndView.setViewName("jsonView"); + + //로그인 권한정보 불러오기 + LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null; + String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); + + if(userId == null) { + if(StringUtils.isEmpty(userId)) return ResponseEntity.ok().body(new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용해 주세요", LocalDateTime.now())); + } + mberCertIpVO.setFrstRegisterId(userId); + mberCertIpVO.setMberId(userId); + + mberCertIpVO.setCertIp(EgovClntInfo.getClntIP(request)); + mberCertIpVO.setCertMemo("허용 IP 등록"); + + return ResponseEntity.ok().body(certIpService.insertCertIp(mberCertIpVO)); + } + @RequestMapping(value = {"/cert/ip/deleteCertIp.do"}) public ResponseEntity deleteCertIp(MberCertIpVO mberCertIpVO) throws Exception { diff --git a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp index 67b26981..3b58cfe0 100644 --- a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp @@ -13,7 +13,26 @@ $(document).ready(function(){ // 허용 IP 등록 $(".btn_allow_ip_add").click(function () { if (confirm("현재 접속중인 IP를 접속 허용 IP로 등록하시겠습니까?")) { - alert("접속 허용 IP 등록이 완료되었습니다."); + + $.ajax({ + type: "POST", + url: "/cert/ip/insertCennetCertIp.do", + data: null, + dataType:'json', + async: false, + success: function (returnData) { + if(returnData.status == 'OK'){ + alert("접속 허용 IP 등록이 완료되었습니다."); + location.reload(); + } + else + { + alert("오류가 발생하였습니다."); + } + }, + error: function (e) { alert("오류가 발생하였습니다."); console.log("ERROR : ", e); } + }); + } else {} }); From 2ef22663d8a9b189905d1a6da8cfdd739a0426a4 Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Thu, 21 Nov 2024 20:54:38 +0900 Subject: [PATCH 30/39] =?UTF-8?q?=EB=B3=B4=EC=95=88=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20=ED=86=A0=EA=B8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../let/uat/uia/web/EgovMypageController.java | 4 +- .../WEB-INF/jsp/web/user/mberSecureLogin.jsp | 40 ++++++++++++++----- 2 files changed, 33 insertions(+), 11 deletions(-) diff --git a/src/main/java/itn/let/uat/uia/web/EgovMypageController.java b/src/main/java/itn/let/uat/uia/web/EgovMypageController.java index 5e707225..7733e9f8 100644 --- a/src/main/java/itn/let/uat/uia/web/EgovMypageController.java +++ b/src/main/java/itn/let/uat/uia/web/EgovMypageController.java @@ -2952,7 +2952,6 @@ public class EgovMypageController { String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId()); - mberCertLoginLogVO.setLoginId(userId); /** pageing */ PaginationInfo paginationInfo = new PaginationInfo(); paginationInfo.setCurrentPageNo(mberCertLoginLogVO.getPageIndex()); @@ -2967,7 +2966,8 @@ public class EgovMypageController { mberCertLoginLogVO.setSearchSortOrd("asc"); } - + + mberCertLoginLogVO.setLoginId(userId); //전체 발송 리스트 불러오기 List resultList = certLoginLogService.findAllCertLoginLogVO(mberCertLoginLogVO); model.addAttribute("resultList", resultList); diff --git a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp index 3b58cfe0..f97d3832 100644 --- a/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/user/mberSecureLogin.jsp @@ -37,14 +37,37 @@ $(document).ready(function(){ }); // on/off 시 confirm 창 노출 - $('.security_set .tab_depth1 a').click(function () { - if ($(this).text().trim() == "ON") { - confirm("보안로그인 설정 후 로그인 시, 등록한 휴대폰번호로 추가 인증이 진행됩니다"); - - } else { - confirm("가입자 휴대폰번호로 본인인증 후 해제가 가능하며, 보안로그인 설정을 해제함으로써 발생하는 손해에 대하여 회사는 책임지지 않습니다."); - openKMCISWindow(); + $('.security_tab a').click(function (e) { + + + console.log($(this).hasClass("on")) + if ($(this).hasClass("on") == false) { + if ($(this).text().trim() == "ON") { + if (!confirm("보안로그인 설정 후 로그인 시, 등록한 휴대폰번호로 추가 인증이 진행됩니다")) { + $(this).removeClass("on"); + $(this).siblings("a").addClass("on"); + } else { + $(this).addClass("on"); + $(this).siblings("a").removeClass("on"); + } + } else { + if (!confirm("가입자 휴대폰번호로 본인인증 후 해제가 가능하며, 보안로그인 설정을 해제함으로써 발생하는 손해에 대하여 회사는 책임지지 않습니다.")) { + $(this).removeClass("on"); + $(this).siblings("a").addClass("on"); + } else { + $(this).addClass("on"); + $(this).siblings("a").removeClass("on"); + openKMCISWindow(); + } + } } + + + + + + + }); // 인증번호 발송 버튼 @@ -617,8 +640,7 @@ function linkPage(pageNo){

최근 변경일시 : 2024-11-01 12:49

-
- + From 7a38574459f5349bd058006ace4ee18780696196 Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Thu, 21 Nov 2024 20:57:16 +0900 Subject: [PATCH 31/39] =?UTF-8?q?=EB=B3=B4=EC=95=88=EB=A1=9C=EA=B7=B8?= =?UTF-8?q?=EC=9D=B8=20top?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp | 5 +++++ src/main/webapp/publish/mypage_index_2024.html | 1 + 2 files changed, 6 insertions(+) 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 7ec061a8..e7bab983 100644 --- a/src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/com/webCommonHeader.jsp @@ -1645,6 +1645,11 @@ function actionLogin() {
+
+

보안로그인

+ ON + +