feat(homepage): 개인정보처리방침·이용약관·사이트맵 페이지 추가
- Privacy.jsx: 개인정보처리방침 (수집항목/목적/보유기간/권리/책임자) - Terms.jsx: 이용약관 (10개 조항, 지오정보기술 정보 포함) - Sitemap.jsx: 전체 메뉴 그리드 안내 (9개 섹션) - App.jsx: /privacy, /terms, /sitemap 라우트 등록 - Common.css: prose/policy 스타일 추가 URL: https://zioinfo.co.kr/privacy https://zioinfo.co.kr/terms https://zioinfo.co.kr/sitemap Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
012b963a13
commit
f24a5818dd
@ -16,6 +16,9 @@ const NotFound = lazy(() => import('./pages/NotFound'));
|
||||
|
||||
// Member Auth
|
||||
const MemberLogin = lazy(() => import('./pages/MemberLogin'));
|
||||
const Privacy = lazy(() => import('./pages/Privacy'));
|
||||
const Terms = lazy(() => import('./pages/Terms'));
|
||||
const Sitemap = lazy(() => import('./pages/Sitemap'));
|
||||
|
||||
// Admin
|
||||
const AdminLogin = lazy(() => import('./pages/admin/AdminLogin'));
|
||||
@ -84,6 +87,9 @@ export default function App() {
|
||||
<Route path="/news/*" element={<NewsPage />} />
|
||||
<Route path="/login" element={<MemberLogin />} />
|
||||
<Route path="/register" element={<MemberLogin />} />
|
||||
<Route path="/privacy" element={<Privacy />} />
|
||||
<Route path="/terms" element={<Terms />} />
|
||||
<Route path="/sitemap" element={<Sitemap />} />
|
||||
<Route path="*" element={<NotFound />} />
|
||||
</Routes>
|
||||
</PublicLayout>
|
||||
|
||||
@ -5,3 +5,15 @@
|
||||
}
|
||||
.page-hero-title { font-size: 40px; font-weight: 900; margin: 8px 0 12px; }
|
||||
.page-hero p { color: rgba(255,255,255,.75); font-size: 16px; }
|
||||
|
||||
/* ── 정책/약관 페이지 ─────────────────────────────────────── */
|
||||
.prose { color: var(--gray-700); line-height: 1.8; font-size: 15px; }
|
||||
.prose h2 { font-size: 18px; font-weight: 700; color: var(--gray-900); margin: 32px 0 12px; border-left: 4px solid var(--accent); padding-left: 12px; }
|
||||
.prose p { margin-bottom: 14px; }
|
||||
.prose ul { margin: 0 0 14px 20px; }
|
||||
.prose ul li { margin-bottom: 6px; }
|
||||
.prose a { color: var(--accent); }
|
||||
.policy-table { width: 100%; border-collapse: collapse; margin: 14px 0; font-size: 14px; }
|
||||
.policy-table th, .policy-table td { padding: 10px 14px; border: 1px solid var(--gray-200); }
|
||||
.policy-table th { background: var(--gray-50); font-weight: 600; color: var(--gray-700); text-align: left; }
|
||||
.policy-footer { margin-top: 40px; padding: 20px; background: var(--gray-50); border-radius: 10px; font-size: 13px; color: var(--gray-500); line-height: 1.8; }
|
||||
|
||||
91
workspace/zioinfo-web/frontend/src/pages/Privacy.jsx
Normal file
91
workspace/zioinfo-web/frontend/src/pages/Privacy.jsx
Normal file
@ -0,0 +1,91 @@
|
||||
import React from 'react';
|
||||
import { Link } from 'react-router-dom';
|
||||
import './Common.css';
|
||||
|
||||
export default function Privacy() {
|
||||
return (
|
||||
<main id="main-content" className="inner-page">
|
||||
<section className="section">
|
||||
<div className="container" style={{ maxWidth: '800px' }}>
|
||||
<div className="section-header">
|
||||
<span className="section-label">Privacy Policy</span>
|
||||
<h1 className="section-title">개인정보처리방침</h1>
|
||||
<p className="section-desc" style={{ fontSize: '13px', color: 'var(--gray-500)' }}>
|
||||
시행일자: 2026년 01월 01일 | 최종 수정: 2026년 05월 31일
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="prose">
|
||||
<p>(주)지오정보기술(이하 "회사")은 이용자의 개인정보를 중요시하며,
|
||||
「개인정보 보호법」 및 관련 법령을 준수합니다.</p>
|
||||
|
||||
<h2>제1조 (개인정보의 수집 항목 및 목적)</h2>
|
||||
<table className="policy-table">
|
||||
<thead>
|
||||
<tr><th>구분</th><th>수집 항목</th><th>수집 목적</th></tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr><td>회원가입</td><td>이름, 이메일, 비밀번호, 연락처, 소속</td><td>회원 식별, 서비스 제공</td></tr>
|
||||
<tr><td>문의 접수</td><td>이름, 이메일, 연락처, 문의 내용</td><td>문의 처리, 답변 발송</td></tr>
|
||||
<tr><td>채용 지원</td><td>이름, 이메일, 연락처, 이력서</td><td>채용 심사, 합격자 통보</td></tr>
|
||||
<tr><td>서비스 이용</td><td>접속 IP, 쿠키, 방문 이력</td><td>서비스 개선, 보안</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2>제2조 (개인정보의 보유 및 이용 기간)</h2>
|
||||
<ul>
|
||||
<li>회원 정보: 회원 탈퇴 시 즉시 파기</li>
|
||||
<li>문의/상담 이력: 처리 완료 후 3년</li>
|
||||
<li>채용 서류: 채용 완료 후 6개월 (불합격자 즉시 파기 원칙)</li>
|
||||
<li>법령에 의한 보존이 필요한 경우 해당 기간</li>
|
||||
</ul>
|
||||
|
||||
<h2>제3조 (개인정보의 제3자 제공)</h2>
|
||||
<p>회사는 이용자의 개인정보를 원칙적으로 외부에 제공하지 않습니다.
|
||||
단, 이용자의 동의가 있거나 법령에 의한 경우에는 예외로 합니다.</p>
|
||||
|
||||
<h2>제4조 (개인정보 처리의 위탁)</h2>
|
||||
<p>현재 개인정보 처리를 위탁하는 업무는 없습니다. 추후 위탁 발생 시 사전 고지합니다.</p>
|
||||
|
||||
<h2>제5조 (이용자의 권리)</h2>
|
||||
<ul>
|
||||
<li>개인정보 열람, 정정, 삭제, 처리정지 요청 가능</li>
|
||||
<li>요청 방법: 이메일(info@zioinfo.co.kr) 또는 전화(031-483-1766)</li>
|
||||
<li>처리 기간: 요청 후 10일 이내</li>
|
||||
</ul>
|
||||
|
||||
<h2>제6조 (개인정보의 파기)</h2>
|
||||
<p>보유 기간 만료 시 지체 없이 파기합니다.
|
||||
전자 파일은 복구 불가능한 방법으로 삭제하며, 서면은 분쇄 또는 소각합니다.</p>
|
||||
|
||||
<h2>제7조 (쿠키 사용)</h2>
|
||||
<p>홈페이지 이용 편의를 위해 쿠키를 사용합니다.
|
||||
브라우저 설정에서 쿠키 허용 여부를 조정할 수 있습니다.</p>
|
||||
|
||||
<h2>제8조 (개인정보 보호책임자)</h2>
|
||||
<table className="policy-table">
|
||||
<tbody>
|
||||
<tr><td>성명</td><td>홍영택</td></tr>
|
||||
<tr><td>직책</td><td>대표이사</td></tr>
|
||||
<tr><td>연락처</td><td>031-483-1766</td></tr>
|
||||
<tr><td>이메일</td><td>info@zioinfo.co.kr</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2>제9조 (개인정보 침해 신고)</h2>
|
||||
<ul>
|
||||
<li>개인정보보호위원회 개인정보 침해 신고센터: (국번없이) 182</li>
|
||||
<li>대검찰청 사이버수사과: (국번없이) 1301</li>
|
||||
<li>경찰청 사이버안전국: (국번없이) 182</li>
|
||||
</ul>
|
||||
|
||||
<p className="policy-footer">
|
||||
본 방침은 2026년 01월 01일부터 시행됩니다.<br/>
|
||||
변경 시 홈페이지를 통해 공지합니다.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
}
|
||||
140
workspace/zioinfo-web/frontend/src/pages/Sitemap.jsx
Normal file
140
workspace/zioinfo-web/frontend/src/pages/Sitemap.jsx
Normal file
@ -0,0 +1,140 @@
|
||||
import React from 'react';
|
||||
import { Link } from 'react-router-dom';
|
||||
import './Common.css';
|
||||
|
||||
const MAP = [
|
||||
{
|
||||
title: '홈', icon: '🏠',
|
||||
links: [{ label: '메인 홈페이지', path: '/' }],
|
||||
},
|
||||
{
|
||||
title: '회사소개', icon: '🏢',
|
||||
links: [
|
||||
{ label: 'CEO 인사말', path: '/company/greeting' },
|
||||
{ label: '연혁', path: '/company/history' },
|
||||
{ label: '조직도', path: '/company/organization' },
|
||||
{ label: 'CI 소개', path: '/company/ci' },
|
||||
{ label: '오시는 길', path: '/company/location' },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '솔루션', icon: '🛡️',
|
||||
links: [
|
||||
{ label: 'GUARDiA ITSM', path: '/solution/guardia', badge: 'NEW' },
|
||||
{ label: 'ERP 솔루션', path: '/solution/erp' },
|
||||
{ label: 'CRM 솔루션', path: '/solution/crm' },
|
||||
{ label: 'BI 솔루션', path: '/solution/bi' },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '사업실적', icon: '📊',
|
||||
links: [
|
||||
{ label: '구축 레퍼런스', path: '/business/reference' },
|
||||
{ label: '파트너', path: '/business/partner' },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '고객지원', icon: '💬',
|
||||
links: [
|
||||
{ label: '공지사항', path: '/support/notice' },
|
||||
{ label: 'FAQ', path: '/support/faq' },
|
||||
{ label: '카탈로그', path: '/support/catalog' },
|
||||
{ label: '문의하기', path: '/support/contact' },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '채용', icon: '👥',
|
||||
links: [
|
||||
{ label: '채용공고', path: '/recruit/jobs' },
|
||||
{ label: '복리후생', path: '/recruit/welfare' },
|
||||
{ label: '지원하기', path: '/recruit/apply' },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '뉴스', icon: '📰',
|
||||
links: [
|
||||
{ label: '뉴스룸', path: '/news/newsroom' },
|
||||
{ label: '기술 블로그', path: '/news/blog' },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '회원', icon: '🔑',
|
||||
links: [
|
||||
{ label: '로그인 / 회원가입', path: '/login' },
|
||||
],
|
||||
},
|
||||
{
|
||||
title: '정책', icon: '📋',
|
||||
links: [
|
||||
{ label: '개인정보처리방침', path: '/privacy' },
|
||||
{ label: '이용약관', path: '/terms' },
|
||||
{ label: '사이트맵', path: '/sitemap' },
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
export default function Sitemap() {
|
||||
return (
|
||||
<main id="main-content" className="inner-page">
|
||||
<section className="section">
|
||||
<div className="container" style={{ maxWidth: '960px' }}>
|
||||
<div className="section-header">
|
||||
<span className="section-label">Sitemap</span>
|
||||
<h1 className="section-title">사이트맵</h1>
|
||||
<p className="section-desc">(주)지오정보기술 홈페이지 전체 메뉴 안내</p>
|
||||
</div>
|
||||
|
||||
<div style={{
|
||||
display: 'grid',
|
||||
gridTemplateColumns: 'repeat(auto-fill, minmax(220px, 1fr))',
|
||||
gap: '24px',
|
||||
marginTop: '40px',
|
||||
}}>
|
||||
{MAP.map((section, i) => (
|
||||
<div key={i} style={{
|
||||
background: '#fff',
|
||||
borderRadius: '12px',
|
||||
padding: '24px',
|
||||
boxShadow: '0 2px 12px rgba(0,0,0,.06)',
|
||||
border: '1px solid var(--gray-200)',
|
||||
}}>
|
||||
<h2 style={{
|
||||
fontSize: '16px', fontWeight: '700', color: 'var(--gray-900)',
|
||||
marginBottom: '16px', display: 'flex', alignItems: 'center', gap: '8px',
|
||||
}}>
|
||||
<span>{section.icon}</span> {section.title}
|
||||
</h2>
|
||||
<ul style={{ listStyle: 'none', display: 'flex', flexDirection: 'column', gap: '10px' }}>
|
||||
{section.links.map((link, j) => (
|
||||
<li key={j}>
|
||||
<Link to={link.path} style={{
|
||||
color: 'var(--primary)',
|
||||
textDecoration: 'none',
|
||||
fontSize: '14px',
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
gap: '6px',
|
||||
}}>
|
||||
<span style={{ color: 'var(--gray-400)', fontSize: '12px' }}>›</span>
|
||||
{link.label}
|
||||
{link.badge && (
|
||||
<span style={{
|
||||
fontSize: '10px', padding: '1px 6px',
|
||||
background: 'var(--accent)', color: '#fff',
|
||||
borderRadius: '8px', fontWeight: '700',
|
||||
}}>
|
||||
{link.badge}
|
||||
</span>
|
||||
)}
|
||||
</Link>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
}
|
||||
91
workspace/zioinfo-web/frontend/src/pages/Terms.jsx
Normal file
91
workspace/zioinfo-web/frontend/src/pages/Terms.jsx
Normal file
@ -0,0 +1,91 @@
|
||||
import React from 'react';
|
||||
import './Common.css';
|
||||
|
||||
export default function Terms() {
|
||||
return (
|
||||
<main id="main-content" className="inner-page">
|
||||
<section className="section">
|
||||
<div className="container" style={{ maxWidth: '800px' }}>
|
||||
<div className="section-header">
|
||||
<span className="section-label">Terms of Service</span>
|
||||
<h1 className="section-title">이용약관</h1>
|
||||
<p className="section-desc" style={{ fontSize: '13px', color: 'var(--gray-500)' }}>
|
||||
시행일자: 2026년 01월 01일
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div className="prose">
|
||||
<h2>제1조 (목적)</h2>
|
||||
<p>본 약관은 (주)지오정보기술(이하 "회사")이 운영하는 홈페이지 및 GUARDiA ITSM 서비스(이하 "서비스")를
|
||||
이용함에 있어 회사와 이용자 간의 권리·의무 및 책임사항을 규정함을 목적으로 합니다.</p>
|
||||
|
||||
<h2>제2조 (정의)</h2>
|
||||
<ul>
|
||||
<li>"서비스"란 회사가 제공하는 홈페이지, GUARDiA ITSM, 관련 모바일 애플리케이션을 말합니다.</li>
|
||||
<li>"이용자"란 본 약관에 동의하고 서비스를 이용하는 자를 말합니다.</li>
|
||||
<li>"회원"이란 서비스에 가입하여 이용자 ID를 발급받은 자를 말합니다.</li>
|
||||
</ul>
|
||||
|
||||
<h2>제3조 (약관의 효력 및 변경)</h2>
|
||||
<ul>
|
||||
<li>본 약관은 서비스 화면에 게시함으로써 효력을 발생합니다.</li>
|
||||
<li>회사는 관련 법령에 위반되지 않는 범위 내에서 약관을 변경할 수 있습니다.</li>
|
||||
<li>변경 시 시행 7일 전 홈페이지를 통해 공지합니다.</li>
|
||||
</ul>
|
||||
|
||||
<h2>제4조 (서비스 이용)</h2>
|
||||
<ul>
|
||||
<li>서비스는 연중 24시간 제공함을 원칙으로 합니다.</li>
|
||||
<li>시스템 점검, 장애, 기타 사유로 서비스가 중단될 수 있습니다.</li>
|
||||
<li>회사는 서비스 중단으로 인한 손해에 대해 귀책 사유가 없는 한 책임을 지지 않습니다.</li>
|
||||
</ul>
|
||||
|
||||
<h2>제5조 (회원 의무)</h2>
|
||||
<ul>
|
||||
<li>이용자는 허위 정보를 등록해서는 안 됩니다.</li>
|
||||
<li>타인의 정보를 도용하거나 부정 이용해서는 안 됩니다.</li>
|
||||
<li>서비스를 이용하여 타인의 명예를 훼손하거나 불법 행위를 해서는 안 됩니다.</li>
|
||||
<li>회사의 지적재산권을 무단으로 복제·배포해서는 안 됩니다.</li>
|
||||
</ul>
|
||||
|
||||
<h2>제6조 (개인정보 보호)</h2>
|
||||
<p>회사는 관련 법령에 따라 이용자의 개인정보를 보호합니다.
|
||||
자세한 내용은 <a href="/privacy">개인정보처리방침</a>을 참조하십시오.</p>
|
||||
|
||||
<h2>제7조 (면책조항)</h2>
|
||||
<ul>
|
||||
<li>회사는 천재지변, 불가항력적 사유로 인한 서비스 장애에 대해 책임을 지지 않습니다.</li>
|
||||
<li>이용자의 귀책 사유로 발생한 손해에 대해서는 책임을 지지 않습니다.</li>
|
||||
<li>서비스를 통해 연결된 외부 사이트의 내용에 대해 책임을 지지 않습니다.</li>
|
||||
</ul>
|
||||
|
||||
<h2>제8조 (지적재산권)</h2>
|
||||
<p>서비스 내 콘텐츠의 저작권은 회사에 귀속됩니다.
|
||||
이용자는 서비스를 이용하여 얻은 정보를 회사의 사전 동의 없이 복제·배포할 수 없습니다.</p>
|
||||
|
||||
<h2>제9조 (분쟁 해결)</h2>
|
||||
<ul>
|
||||
<li>서비스 이용과 관련한 분쟁은 상호 협의로 해결합니다.</li>
|
||||
<li>협의가 이루어지지 않는 경우 회사 소재지 관할 법원에서 해결합니다.</li>
|
||||
</ul>
|
||||
|
||||
<h2>제10조 (연락처)</h2>
|
||||
<table className="policy-table">
|
||||
<tbody>
|
||||
<tr><td>회사명</td><td>(주)지오정보기술</td></tr>
|
||||
<tr><td>대표이사</td><td>홍영택</td></tr>
|
||||
<tr><td>주소</td><td>경기도 안산시 단원구 광덕4로 220 오피스브이 578호</td></tr>
|
||||
<tr><td>전화</td><td>031-483-1766</td></tr>
|
||||
<tr><td>이메일</td><td>info@zioinfo.co.kr</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<p className="policy-footer">
|
||||
본 약관은 2026년 01월 01일부터 시행됩니다.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
);
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user