diff --git a/pom.xml b/pom.xml index f61edf18..1e1a6072 100644 --- a/pom.xml +++ b/pom.xml @@ -538,6 +538,13 @@ JSON-java 1 + + + kr.co.linkhub + barocert-sdk + 1.5.0 + + diff --git a/src/main/java/kcc/let/uat/uia/web/SocialCertController.java b/src/main/java/kcc/let/uat/uia/web/SocialCertController.java new file mode 100644 index 00000000..0039287a --- /dev/null +++ b/src/main/java/kcc/let/uat/uia/web/SocialCertController.java @@ -0,0 +1,188 @@ +package kcc.let.uat.uia.web; + +import org.apache.poi.poifs.crypt.Decryptor; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.RequestMapping; + +import com.barocert.BarocertException; +import com.barocert.kakaocert.KakaocertService; +import com.barocert.navercert.NavercertService; + +/** +* @packageName : kcc.let.uat.uia.web +* @fileName : SocialCertController.java +* @author : JunHo Lee +* @date : 2024.11.21 +* @description : 소셜 로그인(네이버, 카카오) +* =========================================================== +* DATE AUTHOR NOTE +* ----------------------------------------------------------- +* 2024.11.21 JunHo Lee 최초 생성 +*/ +@Controller +public class SocialCertController { + + @Autowired + private NavercertService navercertService; + + @Autowired + private KakaocertService kakaocertService; + + @Value("#{NAVER_CONFIG.ClientCode}") + private String NaverClientCode; + + @Value("#{KAKAO_CONFIG.ClientCode}") + private String KakaoClientCode; + + /** + * 본인인증 요청 + * + * @param clientCode + * 이용기관코드 + * @param identity + * 본인인증 요청정보 + * @return ResponseVerify + * 본인인증 요청 응답정보 + * @throws BarocertException + */ + @RequestMapping(value = "/web/user/cert/nCert.do") + public String requestIdentity(Model m) throws BarocertException { + + // 본인인증 요청 정보 객체 + com.barocert.navercert.identity.Identity identity = new com.barocert.navercert.identity.Identity(); + + // 수신자 휴대폰번호 - 11자 (하이픈 제외) + identity.setReceiverHP(navercertService.encrypt("01030266269")); + // 수신자 성명 - 80자 + identity.setReceiverName(navercertService.encrypt("이준호")); + // 수신자 생년월일 - 8자 (yyyyMMdd) + identity.setReceiverBirthday(navercertService.encrypt("19890202")); + + // 고객센터 연락처 - 최대 12자 + identity.setCallCenterNum("1600-9854"); + // 인증요청 만료시간 - 최대 1,000(초)까지 입력 가능 + identity.setExpireIn(1000); + + // AppToApp 인증요청 여부 + // true - AppToApp 인증방식, false - 푸시(Push) 인증방식 + identity.setAppUseYN(false); + + try { + com.barocert.navercert.identity.IdentityReceipt request = navercertService.requestIdentity(NaverClientCode, identity); + +// Boolean test = navercertService.isUseStaticIP(); + + System.out.println("ReceiptID :: " + request.getReceiptID()); + System.out.println("Scheme :: " + request.getScheme()); + System.out.println("MarketUrl :: " + request.getMarketUrl()); + + + + /** + * 본인인증 서명검증 + * 인증되었을경우 State : 1 + * 인증안되었을경우 State : 0 + */ +// if(status.getState() == 0) { +// +// }else if(status.getState() == 1) { +// +// } + + + //서명이 되지 않았을경우 + com.barocert.navercert.identity.IdentityStatus status = navercertService.getIdentityStatus(NaverClientCode, request.getReceiptID()); + + //서명이 되었을경우 + com.barocert.navercert.identity.IdentityStatus status2 = navercertService.getIdentityStatus(NaverClientCode, request.getReceiptID()); + + com.barocert.navercert.identity.IdentityResult result = navercertService.verifyIdentity(NaverClientCode, request.getReceiptID()); + + System.out.println("Ci :: " + result.getCi()); + System.out.println("ReceiptID :: " + result.getReceiptID()); + System.out.println("ReceiverDay :: " + result.getReceiverDay()); + System.out.println("ReceiverEmail :: " + result.getReceiverEmail()); + System.out.println("ReceiverForeign :: " + result.getReceiverForeign()); + System.out.println("ReceiverGender :: " + result.getReceiverGender()); + System.out.println("ReceiverHP :: " + result.getReceiverHP()); + System.out.println("ReceiverName :: " + result.getReceiverName()); + System.out.println("ReceiverYear :: " + result.getReceiverYear()); + System.out.println("SignedData :: " + result.getSignedData()); + System.out.println("State :: " + result.getState()); + + + m.addAttribute("result", result); + } catch (BarocertException ne) { + m.addAttribute("Exception", ne); + return "exception"; + } + + return "uat/uia/NCert"; + } + +// @RequestMapping(value = "navercert/requestIdentity", method = RequestMethod.GET) + @RequestMapping(value = "/web/user/cert/kCert.do") + public String requestIdentity_k(Model m) throws BarocertException { + + // 본인인증 요청 정보 객체 + com.barocert.kakaocert.identity.Identity identity = new com.barocert.kakaocert.identity.Identity(); + + // 수신자 휴대폰번호 - 11자 (하이픈 제외) + identity.setReceiverHP(kakaocertService.encrypt("01012341234")); + // 수신자 성명 - 80자 + identity.setReceiverName(kakaocertService.encrypt("홍길동")); + // 수신자 생년월일 - 8자 (yyyyMMdd) + identity.setReceiverBirthday(kakaocertService.encrypt("19700101")); + + // 인증요청 메시지 제목 - 최대 40자 + identity.setReqTitle("본인인증 요청 메시지 제목"); + // 커스텀 메시지 - 최대 500자 + identity.setExtraMessage(kakaocertService.encrypt("본인인증 커스텀 메시지")); + // 인증요청 만료시간 - 최대 1,000(초)까지 입력 가능 + identity.setExpireIn(1000); + // 서명 원문 - 최대 40자 까지 입력가능 + identity.setToken(kakaocertService.encrypt("본인인증 요청 원문")); + + // AppToApp 인증요청 여부 + // true - AppToApp 인증방식, false - Talk Message 인증방식 + identity.setAppUseYN(false); + + + try { + com.barocert.kakaocert.identity.IdentityReceipt result = kakaocertService.requestIdentity(KakaoClientCode, identity); + m.addAttribute("result", result); + } catch (BarocertException ke) { + m.addAttribute("Exception", ke); + return "exception"; + } + + return "uat/uia/KCert"; + } + + + + private String decryptNaver() { + + //복호화 키 + String secretKey = "LqZ8a…"; + // 초기화 벡터 (고정값) + String iv = "6C2Syq8t…"; + // 암호문 + String cipherText = "6MXhzI8yDVdCDktJ/Qdz9S…"; + + try { + // 복호화 +// Decryptor decryptor = new Decryptor(); +// String decryptedCI = decryptor.decrypt(secretKey, iv, cipherText); +// System.out.println(decryptedCI); + } catch (Exception e) { + e.printStackTrace(); + } + return ""; + } +} + + diff --git a/src/main/java/seed/common/web/CommonController.java b/src/main/java/seed/common/web/CommonController.java index c93dfacf..1ef85255 100644 --- a/src/main/java/seed/common/web/CommonController.java +++ b/src/main/java/seed/common/web/CommonController.java @@ -21,6 +21,7 @@ import java.util.List; import java.util.Map; import java.util.regex.Pattern; +import javax.annotation.Resource; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -45,12 +46,9 @@ import org.springframework.web.servlet.ModelAndView; import com.google.gson.Gson; -import seed.manager.site.service.ManagerSiteManagerService; -import seed.manager.site.service.ManagerSiteMenuManagerService; -import seed.manager.site.service.ManagerSiteMenuService; -import seed.manager.site.service.ManagerSiteService; -import seed.manager.smartmenu.service.ManagerSmartMenuManagerService; -import seed.manager.smartmenu.service.ManagerSmartMenuSetService; +import kcc.com.cmm.service.EgovFileMngService; +import kcc.com.cmm.service.EgovFileMngUtil; +import kcc.com.cmm.service.FileVO; import seed.common.service.CommonErrorLogsService; import seed.common.service.CommonFileDownLoadService; import seed.common.service.CommonFileService; @@ -77,11 +75,17 @@ import seed.manager.popup.service.ManagerPopupSetService; import seed.manager.quick.service.ManagerQuickDataService; import seed.manager.quick.service.ManagerQuickManagerService; import seed.manager.quick.service.ManagerQuickSetService; +import seed.manager.site.service.ManagerSiteManagerService; +import seed.manager.site.service.ManagerSiteMenuManagerService; +import seed.manager.site.service.ManagerSiteMenuService; +import seed.manager.site.service.ManagerSiteService; +import seed.manager.smartmenu.service.ManagerSmartMenuManagerService; +import seed.manager.smartmenu.service.ManagerSmartMenuSetService; import seed.manager.survey.service.ManagerSurveyManagerService; import seed.manager.survey.service.ManagerSurveySetService; -import seed.manager.visual.service.ManagerVisualRelationDataService; import seed.manager.visual.service.ManagerVisualDataService; import seed.manager.visual.service.ManagerVisualManagerService; +import seed.manager.visual.service.ManagerVisualRelationDataService; import seed.manager.visual.service.ManagerVisualRelationIconService; import seed.manager.visual.service.ManagerVisualRelationSetService; import seed.manager.visual.service.ManagerVisualSetService; @@ -259,9 +263,18 @@ public class CommonController { @Autowired private ServletContext servletContext; - @Value("#{config['root.path']}") + @Resource(name = "EgovFileMngService") + private EgovFileMngService fileMngService; + + @Resource(name = "EgovFileMngUtil") + private EgovFileMngUtil fileUtil; + +// @Value("#{config['root.path']}") +// private String rootPath; + @Value("#{globalSettings['root.path']}") private String rootPath; + @Value("#{config['message.file.size']}") private String messageFileSize; @@ -3827,7 +3840,8 @@ public class CommonController { @RequestMapping(value="/common/proc/{siteIdx}/editor/editorFileReg.do", method=RequestMethod.POST) public ModelAndView setEditorFileReg(HttpSession session, Map map, MultipartFile up_file, - @PathVariable(value="siteIdx") String siteIdx){ + @PathVariable(value="siteIdx") String siteIdx + , final MultipartHttpServletRequest multiRequest) throws Exception{ SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyyMMddHHmmss"); @@ -3847,32 +3861,45 @@ public class CommonController { try{ //오늘날짜로 폴더 생성(MD5로 폴더 변환하여 생성) - SeedUtils.setSeedMkDirs(rootPath + "/" + siteIdx + "/upload/editor"); - - String reFileName = "editorImg_" + sdfFormat.format(new Date()) + "_" + SeedUtils.getSeedMD5Code(String.valueOf(SeedUtils.getRandom(999,1))); - - File makeFile = new File(rootPath + "/" + siteIdx + "/upload/editor/" + - reFileName + up_file.getOriginalFilename().substring(up_file.getOriginalFilename().lastIndexOf("."))); - up_file.transferTo(makeFile); +// SeedUtils.setSeedMkDirs(rootPath + "/" + siteIdx + "/upload/editor"); +// +// String reFileName = "editorImg_" + sdfFormat.format(new Date()) + "_" + SeedUtils.getSeedMD5Code(String.valueOf(SeedUtils.getRandom(999,1))); +// +// File makeFile = new File(rootPath + "/" + siteIdx + "/upload/editor/" + +// reFileName + up_file.getOriginalFilename().substring(up_file.getOriginalFilename().lastIndexOf("."))); +// up_file.transferTo(makeFile); //FTP 전송 - SeedFtpType seedFtpType = new SeedFtpType(); - //WEB 서버의 경로 - seedFtpType.setDestFilePath(siteIdx + "/upload/editor"); - //WAS 서버의 경로 - seedFtpType.setSrcFilePath(rootPath + "/" + siteIdx + "/upload/editor"); - //WAS 파일명 - seedFtpType.setFileName(reFileName + up_file.getOriginalFilename().substring(up_file.getOriginalFilename().lastIndexOf("."))); - //파일 전송 타입 regFile=WEB 서버에 파일전송, delFile=WEB 서버에 파일삭제 - seedFtpType.setFtpType("regFile"); - seedFtpType.setSeedFtp(); +// SeedFtpType seedFtpType = new SeedFtpType(); +// //WEB 서버의 경로 +// seedFtpType.setDestFilePath(siteIdx + "/upload/editor"); +// //WAS 서버의 경로 +// seedFtpType.setSrcFilePath(rootPath + "/" + siteIdx + "/upload/editor"); +// //WAS 파일명 +// seedFtpType.setFileName(reFileName + up_file.getOriginalFilename().substring(up_file.getOriginalFilename().lastIndexOf("."))); +// //파일 전송 타입 regFile=WEB 서버에 파일전송, delFile=WEB 서버에 파일삭제 +// seedFtpType.setFtpType("regFile"); +// seedFtpType.setSeedFtp(); map.put("success", "1"); - map.put("url", "/site/"+siteIdx+"/upload/editor/"+reFileName + up_file.getOriginalFilename().substring(up_file.getOriginalFilename().lastIndexOf("."))); + +// + + String atchFileId = ""; + String isThumbFile = ""; + final Map files = multiRequest.getFileMap(); + if (!files.isEmpty()) { + + List result = fileUtil.parseFileInf(files, "EDT_", 0, atchFileId, "", isThumbFile); + + atchFileId = fileMngService.insertFileInfs(result); + map.put("url", "/uss/ion/pwm/getImage.do"+"?atchFileId="+atchFileId+"&fileSn="); + } + map.put("alt", up_file.getOriginalFilename().toString()); map.put("title", up_file.getOriginalFilename().toString().substring(0, up_file.getOriginalFilename().toString().lastIndexOf("."))); - }catch(IOException e){ + }catch(Exception e){ log.error("CHECK ERROR:",e); } diff --git a/src/main/webapp/META-INF/context.xml b/src/main/webapp/META-INF/context.xml index b107e4cb..7c880530 100644 --- a/src/main/webapp/META-INF/context.xml +++ b/src/main/webapp/META-INF/context.xml @@ -32,4 +32,6 @@ url="jdbc:oracle:thin:@192.168.0.60:1523/XE" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" /> + + diff --git a/src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-servlet.xml b/src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-servlet.xml index f5f07e91..5d94c62f 100644 --- a/src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-servlet.xml +++ b/src/main/webapp/WEB-INF/config/egovframework/springmvc/egov-com-servlet.xml @@ -4,10 +4,13 @@ xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop" - xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd - http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd - http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd - http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd"> + xmlns:util="http://www.springframework.org/schema/util" + xsi:schemaLocation=" + http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd + http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd + http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd + http://www.springframework.org/schema/aop https://www.springframework.org/schema/aop/spring-aop.xsd + http://www.springframework.org/schema/util https://www.springframework.org/schema/util/spring-util.xsd"> @@ -105,4 +108,40 @@ + + + + + + + KOFAIR_BC + r5fQ5qFzWzolkxMBpXyOXwy1L17RJN01tjotQ7Kzhuk= + 024110000010 + true + true + + + + + + + + + + + KOFAIR_BC + r5fQ5qFzWzolkxMBpXyOXwy1L17RJN01tjotQ7Kzhuk= + 024110000009 + true + true + + + + + + + + + + \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/uat/uia/KCert.jsp b/src/main/webapp/WEB-INF/jsp/uat/uia/KCert.jsp new file mode 100644 index 00000000..04a2f03a --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/uat/uia/KCert.jsp @@ -0,0 +1,9 @@ +<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + +kakaoCert \ No newline at end of file diff --git a/src/main/webapp/WEB-INF/jsp/uat/uia/NCert.jsp b/src/main/webapp/WEB-INF/jsp/uat/uia/NCert.jsp new file mode 100644 index 00000000..cc7be38f --- /dev/null +++ b/src/main/webapp/WEB-INF/jsp/uat/uia/NCert.jsp @@ -0,0 +1,20 @@ +<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> +<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> +<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> +<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%> +<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%> +<%@ taglib prefix="kc" uri="/WEB-INF/tlds/kcc_tld.tld"%> + +
+

Response

+
+
+ ${requestScope['javax.servlet.forward.request_uri']} +
    +
  • 접수아이디 (ReceiptID) : ${result.receiptID}
  • +
  • 앱스킴 (Scheme) : ${result.scheme}
  • +
  • 앱다운로드URL (MarketURL) : ${result.marketUrl}
  • +
+
+
\ No newline at end of file diff --git a/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_popup.html b/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_popup.html index 643271ff..8c34dc8a 100644 --- a/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_popup.html +++ b/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_popup.html @@ -24,7 +24,7 @@ -
+

네이버 간편인증

diff --git a/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_process_popup.html b/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_process_popup.html index 83ac9e5d..20f13144 100644 --- a/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_process_popup.html +++ b/src/main/webapp/kofair_case_seed/usr/identification/popup/idf_process_popup.html @@ -24,7 +24,7 @@ -
+

네이버 간편인증

diff --git a/src/main/webapp/kofair_case_seed/usr/layout/_header.html b/src/main/webapp/kofair_case_seed/usr/layout/_header.html index 9fe3e1e9..5d5bd54c 100644 --- a/src/main/webapp/kofair_case_seed/usr/layout/_header.html +++ b/src/main/webapp/kofair_case_seed/usr/layout/_header.html @@ -12,7 +12,13 @@
+ + +

홍길동님

+ + +
diff --git a/src/main/webapp/kofair_case_seed/usr/style/common.css b/src/main/webapp/kofair_case_seed/usr/style/common.css index 15003be7..fe45ed93 100644 --- a/src/main/webapp/kofair_case_seed/usr/style/common.css +++ b/src/main/webapp/kofair_case_seed/usr/style/common.css @@ -31,7 +31,7 @@ .btn.darkblue_border{background:#fff;border:1px solid #2435ac;color:#2435ac;} .btn.gray_border{border:1px solid #d8d8d8;} .btn.gray_border:hover{background:#f8f9fa;border:1px solid #b5b5b5;} -.btn.darkgray_border{border:1px solid #888888;color:#666;} +.btn.darkgray_border{border:1px solid #888888;background:#fff;color:#666;} .btn.gray_fill{background:#8a8a8a;color:#fff;} .btn.skyblue_fill{background:#e3edfe;border:1px solid #c4d9fd;color:#6b75c9;} .btn.darkblue_fill{background:#2e40ba;color:#fff;} @@ -149,14 +149,14 @@ input:disabled, input:read-only{background:#f8f9fa;border:1px solid #d8d8d8;} /* ==================== 테블릿 ==================== */ @media screen and (max-width: 1199px){ - /* 버튼 */ - .btn{border-radius:10px;} - .btn:hover{box-shadow:none;} + /* 버튼 */ + :not(".window_popup.idf") .btn{border-radius:10px;} + :not(".window_popup.idf") .btn:hover{box-shadow:none;} - .btn_35{height:70px;font-size:3.2rem;padding:0 50px;} - .btn_40{height:80px;font-size:3.4rem;padding:0 38px;} - .btn_45{height:90px;font-size:3.4rem;padding:0 36px;} - .btn_50{height:100px;font-size:4rem;} + :not(".window_popup.idf") .btn_35{height:70px;font-size:3.2rem;padding:0 50px;} + :not(".window_popup.idf") .btn_40{height:80px;font-size:3.4rem;padding:0 38px;} + :not(".window_popup.idf") .btn_45{height:90px;font-size:3.4rem;padding:0 36px;} + :not(".window_popup.idf") .btn_50{height:100px;font-size:4rem;} /* 노출/숨김 */ @@ -164,8 +164,8 @@ input:disabled, input:read-only{background:#f8f9fa;border:1px solid #d8d8d8;} /* input, select, textarea */ .input_box{gap:30px;} - .input_text, .input_calendar .duet-date__input{height:80px;font-size:3.4rem;border-radius:10px;padding:0 20px;} - .input_text::placeholder, .input_calendar .duet-date__input::placeholder{font-size:3.4rem;} + :not(".window_popup.idf") .input_text, .input_calendar .duet-date__input{height:80px;font-size:3.4rem;border-radius:10px;padding:0 20px;} + :not(".window_popup.idf") .input_text::placeholder, .input_calendar .duet-date__input::placeholder{font-size:3.4rem;} .select{min-width:120px;height:80px;font-size:3.4rem;border-radius:10px;background:#fff url(/kofair_case_seed/usr/images/component/icon_select_m.png) no-repeat calc(100% - 16px) calc(50% + 1px);} .radio{width:30px;height:30px;margin:0 21px 0 0;} .radio+label{font-size:3.4rem;} diff --git a/src/main/webapp/kofair_case_seed/usr/style/layout.css b/src/main/webapp/kofair_case_seed/usr/style/layout.css index af881f32..ef4c894d 100644 --- a/src/main/webapp/kofair_case_seed/usr/style/layout.css +++ b/src/main/webapp/kofair_case_seed/usr/style/layout.css @@ -25,6 +25,7 @@ html{font-size:62.5%;} .header .util_btn_area .only_icon i{margin:-2px 0 0 1px;} .header .util_btn_area .btn{margin:0 5px;} .header .util_btn_area .only_icon{margin:0 2.5px;} +.header .util_btn_area .user_name{display:inline-block;font-size:1.6rem;margin:0 10px;} .header .nav{position:relative;border-top:1px solid #d8d8d8;border-bottom:1px solid #d8d8d8;background:#fff;z-index:2;} .header .nav .menu_ul{display:inline-flex;width:calc(100% - 43px);} diff --git a/src/main/webapp/kofair_case_seed/usr/style/popup.css b/src/main/webapp/kofair_case_seed/usr/style/popup.css index 1f873c51..862d467f 100644 --- a/src/main/webapp/kofair_case_seed/usr/style/popup.css +++ b/src/main/webapp/kofair_case_seed/usr/style/popup.css @@ -46,6 +46,7 @@ .type_popup .box.white_fill>dd:last-child{margin:0;} /* 간편인증 팝업 */ +.window_popup{min-width:280px;margin:0 auto;} .idf.window_popup .title_area{display:flex;width:100%;height:50px;font-size:1.9rem;font-weight:bold;color:#fff;padding:0 20px;background:#2870ed;align-items:center;} .idf.window_popup .cont_area{padding:30px;} .idf.window_popup .agree_box_area{display:flex;margin:17px 0 0 0;flex-direction:column;gap:11px;} @@ -54,10 +55,15 @@ .idf.window_popup input[type="checkbox"]{width:18px;height:18px;} .idf.window_popup input[type="checkbox"]+label{font-size:1.7rem;} .idf.window_popup .btn_wrap button{width:100px;} -.idf.window_popup .title.gMarket_bold{font-size:2.8rem;} +.idf.window_popup .title.gMarket_bold{font-size:2.8rem;;} .idf.window_popup .lock{width:28px;height:35px;background:url(/kofair_case_seed/usr/images/component/icon_lock.png) no-repeat center;margin:0 9px 0 0;vertical-align:sub;} /* ==================== 모바일 ==================== */ @media screen and (max-width: 767px){ .popup_wrap{min-width:90%; width:90% !important;left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;} + + .idf.window_popup input[type="checkbox"]+label{font-size:1.5rem;} + .idf.window_popup .darkgray_border{font-size:1.5rem;padding:0 10px;} + .idf.window_popup colgroup{display:none;} + .idf.window_popup .table_type_rows table tbody th{width:100%;align-items:center;} } \ No newline at end of file diff --git a/src/main/webapp/kofair_case_seed/usr/style/style.css b/src/main/webapp/kofair_case_seed/usr/style/style.css index 3a2c9bc8..0e46ed15 100644 --- a/src/main/webapp/kofair_case_seed/usr/style/style.css +++ b/src/main/webapp/kofair_case_seed/usr/style/style.css @@ -348,26 +348,26 @@ .mobile_view_table table thead th,.mobile_view_table table tbody td{height:100px;border-bottom:2px solid #d8d8d8;border-right:2px solid #d8d8d8;} .mobile_view_table table tbody td{white-space:wrap;overflow:visible;text-overflow:unset;} - .table_type_rows table{font-size:3.4rem;margin:20px 0 0 0;border-top:4px solid #2e40ba;} - .table_type_rows colgroup{display:none;} - .table_type_rows table tr{display:flex;flex-wrap:wrap;} - .table_type_rows table tbody th,.table_type_rows table tbody td{display:flex;width:100%;min-height:116px;height:auto;padding:15px 20px;align-items:center;} - .table_type_rows table tbody td.td_substance{height:auto;padding:15px;} - .table_type_rows table tbody th{padding:15px 45px;} + :not(".window_popup.idf") .table_type_rows table{font-size:3.4rem;margin:20px 0 0 0;border-top:4px solid #2e40ba;} + :not(".window_popup.idf") .table_type_rows colgroup{display:none;} + :not(".window_popup.idf") .table_type_rows table tr{display:flex;flex-wrap:wrap;} + :not(".window_popup.idf") .table_type_rows table tbody th,.table_type_rows table tbody td{display:flex;width:100%;min-height:116px;height:auto;padding:15px 20px;align-items:center;} + :not(".window_popup.idf") .table_type_rows table tbody td.td_substance{height:auto;padding:15px;} + :not(".window_popup.idf") .table_type_rows table tbody th{padding:15px 45px;} - .table_type_rows table .select{font-size:3.2rem;padding:0 28px;background-position:calc(100% - 28px);} + :not(".window_popup.idf") .table_type_rows table .select{font-size:3.2rem;padding:0 28px;background-position:calc(100% - 28px);} - .table_type_rows table .phone_wrap{width:100%;} - .table_type_rows table .phone_wrap *,.table_type_rows table .phone_wrap .input_text{width:calc((100% / 3) - 20px);} + :not(".window_popup.idf") .table_type_rows table .phone_wrap{width:100%;} + :not(".window_popup.idf") .table_type_rows table .phone_wrap *,.table_type_rows table .phone_wrap .input_text{width:calc((100% / 3) - 20px);} - .table_type_rows table .email_wrap{display:flex;flex-wrap:wrap;align-items:center;gap:20px;} - .table_type_rows table .email_wrap .input_email:first-child{width:calc(100% - 80px);} - .table_type_rows table .email_wrap .input_email:nth-child(2){width:55%;} - .table_type_rows table .email_wrap .email_select{width:calc(45% - 20px);} + :not(".window_popup.idf") .table_type_rows table .email_wrap{display:flex;flex-wrap:wrap;align-items:center;gap:20px;} + :not(".window_popup.idf") .table_type_rows table .email_wrap .input_email:first-child{width:calc(100% - 80px);} + :not(".window_popup.idf") .table_type_rows table .email_wrap .input_email:nth-child(2){width:55%;} + :not(".window_popup.idf") .table_type_rows table .email_wrap .email_select{width:calc(45% - 20px);} - .table_type_rows table+.cf_text{margin:30px 0 0 0;} + :not(".window_popup.idf") .table_type_rows table+.cf_text{margin:30px 0 0 0;} - .scroll_table{overflow:auto;} + :not(".window_popup.idf") .scroll_table{overflow:auto;} /* view */