yjryu / KERIS star
류윤주 류윤주 2023-11-08
231108 류윤주 사용자단 기술문서 커밋
@bbe4a1ecf22d53faf24e82f3c2e629fc64718838
client/resources/css/Main.css
--- client/resources/css/Main.css
+++ client/resources/css/Main.css
@@ -97,11 +97,11 @@
   grid-template-columns: 1fr 1fr 1fr;
 }
 
-.main-puzzle-container > div:nth-child(4) {
+.main-puzzle-container>div:nth-child(4) {
   position: relative;
 }
 
-.main-puzzle-container > div:nth-child(4)::after {
+.main-puzzle-container>div:nth-child(4)::after {
   position: absolute;
   content: "";
   width: 90px;
@@ -347,6 +347,7 @@
   height: 10rem;
   background-size: contain;
 }
+
 .main-history-box-2 p:nth-child(2) {
   width: 10rem;
   margin: 0 auto;
@@ -430,21 +431,25 @@
   background-size: 50%;
   background-position: center;
 }
+
 .lo2 {
   background: url(../jpg/logo/keris.gif) no-repeat;
   background-size: 50%;
   background-position: center;
 }
+
 .lo3 {
   background: url(../jpg/logo/kefa.png) no-repeat;
   background-size: 50%;
   background-position: center;
 }
+
 .lo4 {
   background: url(../jpg/logo/ko-go.jpg) no-repeat;
   background-size: 50%;
   background-position: center;
 }
+
 .lo5 {
   background: url(../jpg/logo/edutech.png) no-repeat;
   background-size: 50%;
@@ -502,7 +507,7 @@
   background-color: #e2e2e2;
 }
 
-.matching-box-grid > h3 {
+.matching-box-grid>h3 {
   font-size: 2.6rem;
   padding: 3rem;
   font-family: SBaggroM;
@@ -654,6 +659,7 @@
 .matchingbox-2 p {
   width: 25%;
 }
+
 .mat-bos {
   padding: 6rem 6rem 1rem 6rem;
   width: 100%;
@@ -800,6 +806,7 @@
   display: grid;
   grid-template-columns: 1fr 1fr 1fr;
 }
+
 .mat-modal-img button {
   width: 100%;
   padding: 0.5rem 0;
@@ -818,30 +825,36 @@
   font-size: 2rem;
   font-family: "Pretendard-Regular";
 }
+
 #data-app span {
   font-weight: 700;
   font-family: "Pretendard-Regular";
 
   color: #007aff;
 }
+
 .data-bos {
   width: 100%;
   display: grid;
   grid-template-columns: 70% 1fr;
 }
+
 .data-wrap-search {
   width: 100%;
   float: right;
   display: grid;
   grid-template-columns: 30% 1fr;
 }
+
 .data-btn-wrap {
   padding: 3rem 0rem !important;
 }
+
 .data-box {
   border: 1px solid red;
   padding: 3rem;
 }
+
 .data-main {
   width: 100%;
 }
@@ -849,6 +862,7 @@
 .data-b {
   width: 100%;
 }
+
 .data-b-b {
   width: 100%;
   padding: 6rem 0;
@@ -857,12 +871,15 @@
 
   font-family: SBaggroM;
 }
+
 .data-text img {
   width: 80px;
 }
+
 .data-text p {
   position: relative;
 }
+
 .data-text p::before {
   content: "";
   position: absolute;
@@ -887,6 +904,7 @@
 .data-table {
   width: 100%;
 }
+
 .da1 {
   max-width: 100%;
   height: auto;
@@ -895,22 +913,27 @@
   top: 0;
   left: 0;
 }
+
 .data-da1-1 {
   position: absolute;
   top: 0;
   left: 0;
 }
+
 .da1 img {
   width: 100%;
 }
+
 .da1 h2 {
   font-family: SBaggroM;
   font-weight: 500;
   font-size: 2rem;
 }
+
 .da1 h2 span {
   font-size: 4rem;
 }
+
 /* 
 .background-image-2 {
   max-width: 100%;
@@ -950,6 +973,7 @@
   position: relative;
   text-align: center;
 }
+
 .background-image-5 {
   max-width: 100%;
   height: auto;
@@ -965,6 +989,7 @@
   text-align: center;
   /* border-radius: 2rem; */
 }
+
 .background-image-6 {
   max-width: 100%;
   height: auto;
@@ -978,11 +1003,13 @@
   position: relative;
   text-align: center;
 }
+
 .data-b-1 h2 {
   text-align: left;
   padding: 3rem;
   color: #014099;
 }
+
 .data-b-1 p {
   font-size: 2rem;
   padding: 3rem;
@@ -1000,6 +1027,7 @@
   padding: 3rem;
   color: #0e5e2e;
 }
+
 .data-b-2 p {
   font-size: 2rem;
   padding: 3rem;
@@ -1009,10 +1037,12 @@
   text-align: center;
   color: #1a8445;
 }
+
 .data-b-2 p span {
   font-size: 3.5rem;
   color: #0e5e2e;
 }
+
 .data-table-tr {
   width: 100%;
   padding: 12rem 3rem;
@@ -1034,10 +1064,12 @@
   text-align: right;
   color: #e07e27;
 }
+
 .data-b-3 p span {
   font-size: 3.5rem;
   color: #c26400;
 }
+
 .data-table-tr {
   width: 100%;
   padding: 0rem 0rem 12rem 0rem;
@@ -1052,6 +1084,7 @@
   border-color: #3898ec;
   outline: none;
 }
+
 .data-t p {
   width: 80%;
   padding: 0rem 0rem 1rem 3rem !important;
@@ -1077,6 +1110,7 @@
 .guide-logo-bt a {
   color: #e07e27;
 }
+
 /* --------------------------------------------------------------------------------------------------------- */
 
 /* News css */
@@ -1197,6 +1231,7 @@
 .news-box-end p:nth-child(2) {
   text-align: right;
 }
+
 /* ---------------------------------------------------------------- */
 /* Notice css */
 .noti-bos {
@@ -1228,6 +1263,7 @@
   border-bottom: 1px solid #cccccc;
   text-align: center;
 }
+
 /* ----------------------------------------------------------------------- */
 /* Guide css */
 .guide-bos {
@@ -1257,12 +1293,13 @@
 .guide-sec {
   padding: 3rem;
 }
+
 /* ------------------------------------------------------------------------------ */
 /* Technology css */
 
 .tech-logo {
-  padding: 6rem 2rem 2rem 2rem;
-  width: 85%;
+  padding: 6rem 0;
+  width: 100%;
 }
 
 .tech-logo h1 {
@@ -1270,7 +1307,6 @@
   font-family: SBaggroM;
   font-weight: 500;
   color: #0e0077;
-  /* position: relative; */
 }
 
 .tech-logo img {
@@ -1278,197 +1314,70 @@
 }
 
 .tech-bos {
-  width: 90%;
-  margin: 0 auto;
-  /* place-items: center; */
-
+  width: 100%;
   display: grid;
   grid-template-columns: 1fr 1fr 1fr;
-  gap: 4rem;
-  padding: 6rem 3rem 6rem 3rem;
+  gap: 5rem;
+  padding: 6rem 0;
   text-align: center;
-  /* border: 1px solid red; */
 }
 
 .tech-box-sec {
-  padding: 2rem;
-  /* border-radius: 2rem; */
+  padding: 3rem;
   background-color: #f9f9f9;
   box-shadow: 2px 2px 5px rgba(191, 191, 191, 0.447);
-  /* border: 1px solid rgb(191, 191, 191); */
 }
 
 .tech-box-sec-h3 {
-  padding: 1rem;
-  font-size: 1.7rem;
+  margin-bottom: 1.5rem;
+
+}
+
+.tech-box-sec-h3 h3{
+  flex: 0 0 60%;
+  font-size: 2.5rem;
   font-family: "Pretendard-Regular";
+  text-align: left;
+  color: #007aff;
 }
 
-.tech-box-sec div img {
-  /* border: 1px solid blue; */
+ul.tech-bos li div img {
   box-shadow: 3px 3px 6px rgba(191, 191, 191, 0.447);
-  width: 85%;
+  width: 100%;
   height: 15rem;
-  margin: 0 auto;
+  margin-bottom: 1.5rem;
   background-size: cover;
-  border-radius: 1.5rem;
+  border-radius: 1rem;
 }
 
-.tech-box-sec div p {
-  width: 85%;
-  padding: 1rem;
+ul.tech-bos li div p:nth-of-type(1) {
+  width: 100%;
+  padding: 1rem 0;
   margin: 0 auto;
   font-size: 1.5rem;
   font-family: "Pretendard-Regular";
+  text-align: left;
+}
+
+p.date{
+  color: #aaa;
+  font-size: 1.3rem;
+  text-align: left;
+  font-family: "Pretendard-Regular";
+  padding: 1rem 0;
 }
 
 .tech-box-sec div button {
-  width: 85%;
-  border-radius: 2rem;
+  width: 100%;
+  border-radius: 1rem;
   padding: 2rem;
   font-size: 1.5rem;
   color: white;
   font-family: "Pretendard-Regular";
-
   background-color: #3f87f7;
 }
 
-.tech-logo {
-  padding: 6rem 2rem 2rem 2rem;
-  width: 85%;
-}
 
-.tech-logo h1 {
-  font-size: 4rem;
-  font-family: SBaggroM;
-  font-weight: 500;
-  color: #0e0077;
-  /* position: relative; */
-}
-
-.tech-logo img {
-  width: 10rem;
-}
-
-.tech-sec {
-  width: 100%;
-  padding: 2rem;
-}
-
-.tech-sec1 {
-  display: grid;
-  grid-template-columns: 85% 15%;
-  padding: 2rem 3rem 1rem 3rem;
-  background-color: #f4f4f4;
-  border-top: 1px solid rgb(199, 199, 199);
-}
-
-.tech-sec1 h2 {
-  font-size: 2rem;
-  color: #3f87f7;
-}
-
-.tech-sec1 div {
-  padding: 1rem;
-  border-radius: 0.5rem;
-  margin-top: 3rem;
-  /* text-align: right; */
-  text-align: center;
-  background-color: #3f87f7;
-}
-
-.tech-sec1 div label {
-  color: white;
-  font-size: 1.5rem;
-  margin-right: 1rem;
-}
-
-.tech-sec1 div i {
-  font-size: 1.5rem;
-}
-
-.tech-sec2 {
-  border-top: 1px solid rgb(199, 199, 199);
-  border-bottom: 1px solid rgb(199, 199, 199);
-}
-
-.tech-sec2 section {
-  display: grid;
-  grid-template-columns: 50% 1fr;
-}
-
-.tech-sec2 section div:nth-child(1) {
-  /* background-color: gainsboro; */
-  padding: 6rem;
-  /* border: 1px solid red; */
-
-  /* justify-content: space-between; */
-  text-align: right;
-}
-
-.tech-sec2 section div:nth-child(2) {
-  /* border: 1px solid red; */
-  padding: 6rem;
-  display: grid;
-  grid-template-columns: 1fr;
-}
-
-.tech-sec2 section div:nth-child(2) p {
-  border-top: 1px solid gainsboro;
-  padding: 4rem;
-}
-
-.tech-sec2 section div:nth-child(2) span {
-  color: #3f87f7;
-  font-size: 2rem;
-  font-weight: 700;
-}
-
-.tech-sec2 section img {
-  padding: 5rem;
-  margin: 0 auto;
-  box-shadow: 1px 1px 5px 5px #b2b2b236;
-  background-color: rgb(190, 190, 190);
-  /* border: 1px solid red; */
-  width: 50%;
-}
-
-.tech-sec2 div {
-  padding: 2rem 0;
-}
-
-.tech-sec2 p {
-  font-size: 1.7rem;
-}
-
-.tech-sec2-end p {
-  text-align: right;
-  font-size: 1.5rem;
-}
-
-.tech-sec2-end p span {
-  color: #3f87f7;
-  margin-right: 1rem;
-}
-
-.tech-sec2-end p:nth-child(2) {
-  text-align: right;
-}
-
-.tech-sec2-bt {
-  text-align: right;
-  width: 100%;
-  padding: 2rem 0 6rem 0;
-}
-
-.tech-sec2-bt button {
-  width: 15%;
-  padding: 1rem;
-  background-color: #3f87f7;
-  color: white;
-  border-radius: 0.5rem;
-  font-family: "Pretendard-Regular";
-}
 /* --------------------------------------------------------------------------- */
 /* lnfo css */
 .info-box-button {
@@ -1700,6 +1609,7 @@
   gap: 0;
   grid-template-columns: 1fr 1fr 1fr;
 }
+
 .intro-img img {
   width: 100%;
 }
@@ -1711,45 +1621,55 @@
 .intro-img img:nth-child(3) {
   transform: translateY(-9.7rem);
 }
+
 /* wg커뮤니티 전문가 협의체 페이지*/
 
 .wg-logo {
   width: 100%;
   padding: 6rem 2rem 2rem 2rem;
 }
+
 .wg-logo h1 {
   font-size: 4rem;
   font-family: SBaggroM;
   font-weight: 500;
   color: #0e0077;
 }
+
 .wg-logo img {
   width: 10rem;
 }
+
 .wg-wrap {
   width: 100%;
   padding: 2rem 2rem 12rem 0;
 }
+
 .wg-wrap h1 {
   font-size: 1.7rem;
   margin-bottom: 2rem;
   color: #333;
 }
+
 .wg-wrap-search {
   width: 100%;
   padding: 3rem 0;
 }
+
 .wg-wrap-search p {
   font-size: 1.5rem;
 }
+
 .wg-table {
   width: 100%;
 }
+
 .wg-table tr th {
   background-color: #007aff;
   color: white;
   padding: 1rem;
 }
+
 .wg-search-bos {
   width: 100%;
   padding: 2rem 6rem;
@@ -1760,11 +1680,13 @@
   background-color: #f9f9f9;
   /* grid-template-columns: 3fr 10%; */
 }
+
 .wg-search-grid {
   width: 100%;
   display: grid;
   flex-wrap: nowrap;
 }
+
 .wg-grid-1 {
   padding: 1rem;
   display: grid;
@@ -1777,15 +1699,18 @@
   width: 100%;
   padding: 0.9rem;
 }
+
 #groupSelect2 {
   width: 100%;
 }
+
 .wg-grid-2 {
   padding: 1rem;
   display: grid;
   gap: 1;
   grid-template-columns: 40% 1fr 15%;
 }
+
 .wg-grid-2 div:nth-child(1) {
   display: grid;
   grid-template-columns: 20% 1fr;
@@ -1796,10 +1721,12 @@
   margin-top: 1rem;
   font-size: 1.5rem;
 }
+
 .wg-grid-2 div:nth-child(2) {
   display: grid;
   grid-template-columns: 20% 30% 3% 30%;
 }
+
 .wg-title2 label {
   padding: 0.5rem;
   margin-top: 1rem;
@@ -1807,6 +1734,7 @@
   margin-right: 1.5rem;
   font-size: 1.5rem;
 }
+
 .wg-title2 p {
   padding: 0.5rem;
   margin-top: 0.5rem;
@@ -1814,6 +1742,7 @@
   margin-right: 1.5rem;
   font-size: 1.5rem;
 }
+
 .wg-search-bos button {
   background-color: #007aff;
   color: white;
@@ -1823,11 +1752,13 @@
   padding: 1rem;
   border-radius: 1rem;
 }
+
 /* 매칭관리css */
 .matching-wrap-sub {
   width: 100%;
   margin: 0 auto;
 }
+
 .matching-box-button {
   width: 100%;
   display: grid;
@@ -1835,15 +1766,18 @@
   gap: 2rem;
   background-color: #c5c5c5;
 }
+
 .matching-box-button input {
   display: none;
 }
+
 .matching-box-button label {
   text-align: center;
   width: 100%;
   cursor: pointer;
   font-size: 2rem;
 }
+
 .matching-box-button div {
   width: 100%;
   padding: 1rem;
@@ -1852,11 +1786,13 @@
   /* background-color: #007aff; */
   color: rgb(255, 255, 255);
 }
+
 .inbox {
   display: grid;
 
   grid-template-columns: 1fr;
 }
+
 .inbox-sub {
   padding: 6rem 0;
   display: grid;
@@ -1866,6 +1802,7 @@
   grid-template-columns: 1fr 1fr 1fr;
   gap: 3rem;
 }
+
 .inbox-img {
   width: 100%;
   text-align: center;
@@ -1874,12 +1811,14 @@
   padding: 3rem 3rem 1rem 3rem;
   box-shadow: 1px 1px 5px #33333344;
 }
+
 .inbox-img img {
   width: 90mm;
   height: 50mm;
 
   border-radius: 2rem;
 }
+
 .inbox-img div {
   display: grid;
   grid-template-columns: 1fr 1fr;
@@ -1887,26 +1826,31 @@
 
   margin: 1rem;
 }
+
 .inbox-img button {
   padding: 1rem 2rem;
   border-radius: 1rem;
 }
+
 .inbox-img button:nth-child(1) {
   background-color: #007aff;
   color: white;
   font-weight: 700;
 }
+
 .inbox-img button:nth-child(2) {
   background-color: rgb(126, 126, 126) 8b8;
   color: rgb(49, 49, 49);
   font-weight: 700;
 }
+
 .inbox-img-2 img {
   width: 90mm;
   height: 50mm;
 
   border-radius: 2rem;
 }
+
 .inbox-img-2 {
   width: 100%;
   display: grid;
@@ -1916,9 +1860,11 @@
   padding: 3rem 3rem 1rem 3rem;
   box-shadow: 1px 1px 5px #33333344;
 }
+
 .inbox-img-2 div {
   margin: 1rem;
 }
+
 .inbox-img-2 button {
   width: 100%;
   padding: 1rem 2rem;
@@ -1927,10 +1873,12 @@
   color: white;
   font-weight: 700;
 }
+
 .matching-sec h1 {
   font-size: 2rem;
   padding: 2rem 0 1rem 0;
 }
+
 .matching-section-box {
   padding: 6rem 0;
-}
+}
(No newline at end of file)
client/resources/css/common.css
--- client/resources/css/common.css
+++ client/resources/css/common.css
@@ -66,6 +66,35 @@
   box-shadow: 2px 2px 2px #33333300 !important;
 }
 
+/* 게시판 상세보기 */
+.insert-table td {
+  text-align: left;
+  padding: 1.5rem;
+}
+.title-zone {
+  background-color: #eee;
+  border-bottom: 1px solid #007aff;
+  border-top: 1px solid #007aff;
+}
+
+.post-title {
+  font-size: 2.3rem;
+  font-weight: 700;
+  color: #007aff;
+  text-align: left;
+  margin-bottom: 10px;
+}
+
+.writer,
+.view {
+  color: #007aff;
+  padding: 10px;
+}
+
+.viewer {
+  min-height: 388px;
+}
+
 /* 버튼 */
 button {
   cursor: pointer;
@@ -114,6 +143,13 @@
   border-radius: 5px;
 }
 
+.gray-btn{
+  padding: 8px 15px;
+  background-color: #eee;
+  color: #333;
+  border-radius: 5px;
+}
+
 .button--submit {
   min-height: 4rem;
   padding: 0.5em 1em;
@@ -139,8 +175,8 @@
 
 /* 페이지별 로고 공통 */
 .page-logo {
-  padding: 6rem 2rem 2rem 2rem;
-  width: 85%;
+  padding: 6rem 0;
+  width: 100%;
 }
 
 .page-logo h1 {
client/views/layout/AdminMenu.vue
--- client/views/layout/AdminMenu.vue
+++ client/views/layout/AdminMenu.vue
@@ -24,7 +24,7 @@
   data() {
     return {
       menuList: [
-        //{ path: "/adm.page", pathName: "대시보드", icon: '<i class="fa-solid fa-house"></i>', isActive: true },
+        { path: "/adm.page", pathName: "대시보드", icon: '<i class="fa-solid fa-house"></i>', isActive: true },
         { path: "/adm/noticeSelectList.page", pathName: "커뮤니티", subMenu: [{ path: "/adm/noticeSelectList.page", pathName: "공지사항" }, { path: "/adm/newsSelectList.page", pathName: "홍보/뉴스" }], icon: '<i class="fa-regular fa-newspaper"></i>', icon2: "<i class='fa-solid fa-angle-right'></i>", isOpen: false, isActive: false },
         { path: "/adm/techSelectList.page", pathName: "자료실", subMenu: [{ path: "/adm/techSelectList.page", pathName: "기술문서" }, { path: "/adm/dataSelectList.page", pathName: "자료집" }], icon: '<i class="fa-regular fa-folder-open"></i>', icon2: "<i class='fa-solid fa-angle-right'></i>", isOpen: false, isActive: false },
         //{ path: "/adm/statistics.page", pathName: "통계서비스", icon: '<i class="fa-solid fa-chart-line"></i>', isActive: false },
client/views/pages/admin/databook/DataSelectOne.vue
--- client/views/pages/admin/databook/DataSelectOne.vue
+++ client/views/pages/admin/databook/DataSelectOne.vue
@@ -214,10 +214,7 @@
     border-bottom: 2px solid #007aff;
 }
 
-.insert-table td {
-    text-align: left;
-    padding: 1.5rem;
-}
+
 
 textarea {
     width: 100%;
@@ -229,27 +226,5 @@
     margin-right: 5px;
 }
 
-.title-zone {
-    background-color: #eee;
-    border-bottom: 1px solid #007aff;
-}
-
-.post-title {
-    font-size: 2.3rem;
-    font-weight: 700;
-    color: #007aff;
-    text-align: left;
-    margin-bottom: 10px;
-}
-
-.writer,
-.view {
-    color: #007aff;
-    padding: 10px;
-}
-
-.viewer {
-    min-height: 388px;
-}
 
 </style>
(No newline at end of file)
client/views/pages/admin/main/Amain.vue
--- client/views/pages/admin/main/Amain.vue
+++ client/views/pages/admin/main/Amain.vue
@@ -1,11 +1,10 @@
 <template>
     <div class="admin-wrap">
         <div class="content-box">
-            <div class="title-wrap">
-                <h2 class="main-title">대시보드</h2>
-            </div>
             <div class="content-wrap">
-
+                <div class="content">
+                    <div class="content-title">오늘의 통계</div>
+                </div>
             </div>
         </div>
     </div>
@@ -40,4 +39,17 @@
     height: 100%;
     font-size: 1.3rem;
 }
+
+.content{
+    padding: 20px 35px;
+    background-color: rgb(198, 238, 255);
+}
+
+.content-title{
+    padding-bottom: 10px;
+    border-bottom: 1px solid #417dff;
+    color: #417dff;
+    font-size: 2rem;
+    font-family: 'Pretendard-Regular';
+}
 </style>
client/views/pages/admin/user/UserSelectList.vue
--- client/views/pages/admin/user/UserSelectList.vue
+++ client/views/pages/admin/user/UserSelectList.vue
@@ -31,8 +31,7 @@
                                     <td>{{ user.user_id }}</td>
                                     <td>{{ user.user_nm }}</td>
                                     <td>{{ user.user_eml }}</td>
-                                    <td><button class="red-btn"
-                                            v-if="user.create_account_approval === 'N'"
+                                    <td><button class="red-btn" v-if="user.create_account_approval === 'N'"
                                             @click="confirmCheck(user.user_id)">승인</button>
                                         <span v-else class="approve">승인 완료</span>
                                     </td>
@@ -81,7 +80,7 @@
                                 </tr>
                             </thead>
                             <tbody>
-                                <tr v-for="(mngr, index) in mngrList" :key="index">
+                                <tr v-for="(mngr, index) in mngrList" :key="index" @click="adminSelectOnePage(mngr)">
                                     <td>{{ mngrIdx - index }}</td>
                                     <td>{{ mngr.mngr_id }}</td>
                                     <td>{{ mngr.mngr_nm }}</td>
@@ -451,6 +450,11 @@
         userSelectOnePage: function (user) {
             this.$router.push({ path: '/adm/userSelectOne.page', query: { 'user_id': user.user_id } });
         },
+
+        //상세조회 페이지로 이동
+        adminSelectOnePage: function (admin) {
+            this.$router.push({ path: '/adm/userSelectOne.page', query: { 'mngr_id': admin.mngr_id } });
+        },
     },
     watch: {
         "modalType": function (newValue, oldValue) {
client/views/pages/admin/user/UserSelectOne.vue
--- client/views/pages/admin/user/UserSelectOne.vue
+++ client/views/pages/admin/user/UserSelectOne.vue
@@ -8,34 +8,68 @@
                 </div>
             </div>
             <div class="content-wrap">
-                <div class="user grid">
+                <div class="user grid" v-show="user.user_id != null">
                     <div>
-                        <p><i class="fa-solid fa-user-group"></i> 아이디</p>
+                        <p class="label-title"><i class="fa-solid fa-user-group"></i> 아이디</p>
                         <input type="text" v-model="user.user_id" disabled />
                     </div>
                     <div>
-                        <p><i class="fa-solid fa-check-double"></i>회원구분</p>
+                        <p class="label-title"><i class="fa-solid fa-user-group"></i> 비밀번호</p>
+                        <button class="gray-btn">비밀번호 변경</button>
+                    </div>
+                    <div>
+                        <p class="label-title"><i class="fa-solid fa-check-double"></i> 회원구분</p>
                         <input type="text" v-model="user.user_auth" disabled />
                     </div>
                     <div>
-                        <p><i class="fa-solid fa-heart"></i>이름</p>
+                        <p class="label-title"><i class="fa-solid fa-heart"></i> 이름</p>
                         <input type="text" v-model="user.user_nm" disabled />
                     </div>
                     <div>
-                        <p><i class="fa-solid fa-envelope"></i>이메일</p>
+                        <p class="label-title"><i class="fa-solid fa-envelope"></i> 이메일</p>
                         <input type="text" v-model="user.user_eml" disabled />
                     </div>
                     <div>
-                        <p><i class="fa-solid fa-envelope"></i>가입 날짜</p>
+                        <p class="label-title"><i class="fa-solid fa-envelope"></i> 가입 날짜</p>
                         <input type="text" v-model="user.user_reg_dt" disabled />
                     </div>
                     <div>
-                        <p><i class="fa-solid fa-envelope"></i>승인 날짜</p>
+                        <p class="label-title"><i class="fa-solid fa-envelope"></i> 승인 날짜</p>
                         <input type="text" v-model="user.approval_dt" disabled />
                     </div>
                 </div>
-                <div class="company"></div>
-                <div class="admin"></div>
+                <!-- <div class="company" v-show="company.company_id"></div> -->
+                <div class="admin grid" v-show="admin.mngr_id != null">
+                    <div>
+                        <p class="label-title"><i class="fa-solid fa-user-group"></i> 아이디</p>
+                        <input type="text" v-model="admin.mngr_id" disabled />
+                    </div>
+                    <div>
+                        <p class="label-title"><i class="fa-solid fa-user-group"></i> 비밀번호</p>
+                        <button class="gray-btn">비밀번호 변경</button>
+                    </div>
+                    <div>
+                        <p class="label-title"><i class="fa-solid fa-heart"></i> 이름</p>
+                        <input type="text" v-model="admin.mngr_nm" disabled />
+                    </div>
+                    <div>
+                        <p class="label-title"><i class="fa-solid fa-envelope"></i> 이메일</p>
+                        <input type="text" v-model="admin.mngr_eml" disabled />
+                    </div>
+                    <div>
+                        <p class="label-title"><i class="fa-solid fa-envelope"></i> 등록자</p>
+                        <input type="text" v-model="admin.rgtr_id" disabled />
+                    </div>
+                    <div>
+                        <p class="label-title"><i class="fa-solid fa-envelope"></i> 가입 날짜</p>
+                        <input type="text" v-model="admin.reg_dt" disabled />
+                    </div>
+                </div>
+                <div class="btn-wrap">
+                    <button class="red-btn" @click="postDelete()">삭제</button>
+                    <button class="dark-gray-btn" @click="postSelectListPage()">목록</button>
+                    <button class="blue-btn" @click="postUpdatePage()">수정</button>
+                </div>
             </div>
         </div>
 
@@ -61,6 +95,15 @@
                 user_pw: null,
                 user_reg_dt: null,
             },
+            admin: {
+                mdfcn_dt: null,
+                mdfr_id: null,
+                mngr_eml: null,
+                mngr_id: null,
+                mngr_nm: null,
+                reg_dt: null,
+                rgtr_id: null,
+            },
             route: useRoute(),
         };
     },
@@ -82,19 +125,47 @@
                 alert("사용자 상세보기 오류, 관리자에게 문의하세요.");
             })
         },
+        adminSelectOne: function () {
+            const vm = this;
+            axios({
+                url: '/managerSelectOne.json',
+                method: 'post',
+                headers: {
+                    'Content-Type': "application/json; charset=UTF-8",
+                },
+                data: { 'mngr_id': vm.route.query.mngr_id }
+            }).then(function (response) {
+                console.log("response-", response.data);
+                vm.admin = response.data
+            }).catch(function (error) {
+                console.log("error - ", error)
+                alert("관리자 상세보기 오류, 관리자에게 문의하세요.");
+            })
+        },
     },
     watch: {},
     computed: {},
     components: {},
     mounted() {
-        this.userSelectOne();
+        if (this.route.query.user_id) {
+            this.userSelectOne();
+        } else if (this.route.query.mngr_id) {
+            this.adminSelectOne();
+        }
     },
 };
 </script>
 <style scoped>
-.grid{
+.grid {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 30px;
 }
+
+.label-title {
+    font-size: 1.5rem;
+    font-weight: 500;
+    padding: 10px 0;
+    color: #417dff;
+}
 </style>
client/views/pages/user/Data/DataOne.vue
--- client/views/pages/user/Data/DataOne.vue
+++ client/views/pages/user/Data/DataOne.vue
@@ -1,6 +1,6 @@
 <template>
     <div class="w1400">
-        <section class="main-sec sec1">
+        <div class="main-sec sec1">
             <!-- <div class="main-content"> -->
             <div class="flex">
                 <!-- 자료집 비주얼 -->
@@ -16,44 +16,46 @@
                     </div>
                 </div>
             </div>
-        </section>
-
-        <div class="Data-dtail">
-            <section>
-
-                <h1>{{ post.post_title }}</h1>
-                <p>조회수 {{ post.view_cnt }} </p>
-                <p>작성일 {{ yyyymmdd(post.reg_dt) }}</p>
-            </section>
-
-            <section class="dtail-ing">
-
-                <div id="viewer" ref="viewer" class="viewer"></div>
-                <div>
-                    <i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i>
+        </div>
+        <div class="data-dtail">
+            <table class="insert-table">
+                <tbody>
+                    <tr>
+                        <td class="title-zone" colspan="2">
+                            <p class="flex"><span class="post-title">{{ post.post_title }}</span><span
+                                    class="category-zone">카테고리란</span></p>
+                            <p class="flex-end"><span class="writer">작성자</span><span>{{ post.rgtr_id }}</span><span
+                                    class="view">조회수</span><span>{{ post.view_cnt }}</span></p>
+                        </td>
+                    </tr>
+                    <tr>
+                        <td colspan="2" style="border-bottom: 1px solid #007aff;">
+                            <div id="viewer" ref="viewer" class="viewer"></div>
+                        </td>
+                    </tr>
+                    <tr>
+                        <th style="width: 10%;">첨부파일명</th>
+                        <td>
+                            <div v-if="fileList.length == 0">
+                                <label>첨부된 파일이 없습니다.</label>
+                            </div>
+                            <ul v-else v-for="(item, idx) in fileList" :key="idx">
+                                <li @click="downloadFile(item)">{{ item.real_file_nm }}</li>
+                            </ul>
+                        </td>
+                    </tr>
+                </tbody>
+            </table>
+            <div>
+                <div class="dtail-navigation">
+                    <button>다음글</button>
+                    <button>이전글</button>
                 </div>
-            </section>
-
-            <section class="dtail-button">
-
-                <div v-if="fileList.length == 0">
-                    <label>첨부된 파일이 없습니다.</label>
+                <div class="dtail-navigation-in">
+                    <button @click="goBack">목록</button>
                 </div>
-                <div v-else v-for="(item, idx) in fileList" :key="idx">
-                    <div @click="downloadFile(item)">{{ item.real_file_nm }}</div>
-                </div>
-            </section>
+            </div>
 
-
-            <section class="dtail-navigation">
-                <button>다음글</button>
-                <button>이전글</button>
-            </section>
-
-            <section class="dtail-navigation-in">
-                <button @click="goBack">목록</button>
-            </section>
-            <!-- <hr> -->
         </div>
     </div>
 </template>
@@ -195,7 +197,7 @@
                 alert('에러발생');
             });
         },
-        
+
         //날짜 시,분,초 자르기
         yyyymmdd: function (date) {
             return COMMON_UTIL.yyyymmdd(date);
@@ -203,146 +205,3 @@
     }
 }
 </script>
-
-<style scoped>
-section {
-    border-bottom: 1px solid #007aff;
-}
-
-.Data-dtail {
-    width: 100%;
-
-    padding: 0rem 3rem 12rem;
-}
-
-.sec1 {
-    border: 0px;
-}
-
-.Data-dtail section h1 {
-    color: #007aff;
-}
-
-.Data-dtail section:nth-child(1) {
-    /* border: 1px solid red; */
-    background-color: rgb(236, 236, 236);
-    border-top: 1px solid #007aff;
-
-}
-
-.Data-dtail section:nth-child(1) {
-    display: grid;
-    grid-template-columns: 73% 10% 14%;
-}
-
-.Data-dtail section:nth-child(3) {
-    padding: 3rem;
-    font-size: 1.7rem;
-}
-
-.Data-dtail h1 {
-    padding: 3rem;
-}
-
-.Data-dtail p {
-    font-size: 1.5rem;
-    padding: 4rem 0rem 0rem 3rem;
-    /* border: 1px solid red; */
-}
-
-.dtail-ing {
-    padding: 3rem;
-    height: 40rem;
-    display: grid;
-    grid-template-columns: 1fr;
-    align-content: space-between;
-}
-
-.dtail-ing div {
-    font-size: 1.7rem;
-}
-
-.dtail-button {
-    padding: 3rem;
-}
-
-hr {
-    border: 0.5px solid #007aff;
-}
-
-.data-file-bt {
-    cursor: pointer;
-}
-
-.dtail-navigation {
-    /* border: 1px solid red; */
-    /* padding: 3r/em; */
-    display: grid;
-    grid-template-columns: 1fr;
-}
-
-.dtail-navigation button {
-    padding: 2rem 3rem;
-    text-align: left;
-    font-family: "Pretendard-Regular";
-    color: #007aff;
-    font-size: 1.5rem;
-    font-weight: 600;
-
-}
-
-.dtail-navigation button:nth-child(1) {
-    border-bottom: 0.5px solid #787878;
-
-}
-
-.dtail-navigation-in {
-    border: 0px;
-    padding: 3rem 0;
-    text-align: right;
-
-}
-
-.dtail-navigation-in button {
-    padding: 1.5rem 5rem;
-    background-color: #007aff;
-    color: white;
-    font-family: "Pretendard-Regular";
-    border-radius: 1.5rem;
-
-}
-
-@media all and (max-width: 479px) {
-    .Data-dtail section:nth-child(1) {
-        grid-template-columns: 1fr;
-        padding: 2rem;
-    }
-
-    .Data-dtail h1 {
-        padding: 0.5rem;
-    }
-
-    .Data-dtail p {
-        padding: 1rem;
-    }
-}
-
-@media all and (min-width: 480px) and (max-width: 767px) {
-    .Data-dtail section:nth-child(1) {
-        grid-template-columns: 1fr;
-        padding: 2rem;
-    }
-
-    .Data-dtail h1 {
-        padding: 0.5rem;
-    }
-
-    .Data-dtail p {
-        padding: 1rem;
-    }
-}
-
-@media all and (min-width: 767px) and (max-width: 1023px) {}
-
-@media all and (min-width: 1023px) and (max-width: 1268px) {}
-</style>
(No newline at end of file)
client/views/pages/user/Data/Guide.vue
--- client/views/pages/user/Data/Guide.vue
+++ client/views/pages/user/Data/Guide.vue
@@ -3,18 +3,15 @@
         <div class="w1400">
             <div class="guide-bos">
                 <section class="guide-logo page-logo">
-
                     <h1>AI 디지털교과서 개발 가이드라인</h1>
                     <div class="guide-logo-bt">
-
                         <a style="font-size: 15px;" class="down-btn-1"
                             href="https://webst.edunet.net/AIDT/AI 디지털교과서 개발 가이드라인.pdf" target='_blank' download>
                             <i class="fa-solid fa-circle-down guide_i"
-                                style="font-size: 20px; margin-right: 10px;"></i>가이드라인
-                            다운받기</a>
+                                style="font-size: 20px; margin-right: 10px;"></i>가이드라인 다운받기</a>
                     </div>
                 </section>
-                <hr>
+
                 <section class="guide-sec">
                     <img src="../../../../resources/jpg/guide-line.png" alt="">
                 </section>
client/views/pages/user/Data/Technology.vue
--- client/views/pages/user/Data/Technology.vue
+++ client/views/pages/user/Data/Technology.vue
@@ -1,167 +1,69 @@
 <template>
     <div class="w1400">
         <div class="tech">
-            <section class="tech-logo">
+            <div class="page-logo flex-start">
                 <img src="../../../../resources/jpg/tech-logo.png" alt="">
-
                 <h1>기술문서</h1>
-            </section>
-
-            <div class="tech-bos">
-
-                <section class="tech-box-sec">
+            </div>
+            <ul class="tech-bos">
+                <li class="tech-box-sec">
                     <div class="tech-box-sec-h3">
-
-                        <h3>기술문서</h3>
-
+                        <div class="flex">
+                            <h3>기술문서</h3>
+                            <p>조회수</p>
+                        </div>
                     </div>
                     <div>
                         <img src="../../../../resources/jpg/data-img3.png" alt="">
                     </div>
                     <div>
                         <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
+                        <p class="date">23.10.26</p>
                     </div>
                     <div>
                         <button @click="goToPage3">바로가기</button>
                     </div>
-
-                </section>
-                <section class="tech-box-sec">
+                </li>
+                <li class="tech-box-sec">
                     <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
+                        <div class="flex">
+                            <h3>기술문서</h3>
+                            <p>조회수</p>
+                        </div>
                     </div>
                     <div>
                         <img src="../../../../resources/jpg/data-img3.png" alt="">
                     </div>
                     <div>
                         <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
+                        <p class="date">23.10.26</p>
                     </div>
                     <div>
-                        <button>바로가기</button>
+                        <button @click="goToPage3">바로가기</button>
                     </div>
-
-                </section>
-                <section class="tech-box-sec">
+                </li>
+                <li class="tech-box-sec">
                     <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
+                        <div class="flex">
+                            <h3>기술문서</h3>
+                            <p>조회수</p>
+                        </div>
                     </div>
                     <div>
                         <img src="../../../../resources/jpg/data-img3.png" alt="">
                     </div>
                     <div>
                         <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
+                        <p class="date">23.10.26</p>
                     </div>
                     <div>
-                        <button>바로가기</button>
+                        <button @click="goToPage3">바로가기</button>
                     </div>
-
-                </section>
-                <section class="tech-box-sec">
-                    <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
-                    </div>
-                    <div>
-                        <img src="../../../../resources/jpg/data-img3.png" alt="">
-                    </div>
-                    <div>
-                        <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
-                    </div>
-                    <div>
-                        <button>바로가기</button>
-                    </div>
-
-                </section>
-                <section class="tech-box-sec">
-                    <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
-                    </div>
-                    <div>
-                        <img src="../../../../resources/jpg/data-img3.png" alt="">
-                    </div>
-                    <div>
-                        <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
-                    </div>
-                    <div>
-                        <button>바로가기</button>
-                    </div>
-
-                </section>
-                <section class="tech-box-sec">
-                    <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
-                    </div>
-                    <div>
-                        <img src="../../../../resources/jpg/data-img3.png" alt="">
-                    </div>
-                    <div>
-                        <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
-                    </div>
-                    <div>
-                        <button>바로가기</button>
-                    </div>
-
-                </section>
-                <section class="tech-box-sec">
-                    <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
-                    </div>
-                    <div>
-                        <img src="../../../../resources/jpg/data-img3.png" alt="">
-                    </div>
-                    <div>
-                        <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
-                    </div>
-                    <div>
-                        <button>바로가기</button>
-                    </div>
-
-                </section>
-                <section class="tech-box-sec">
-                    <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
-                    </div>
-                    <div>
-                        <img src="../../../../resources/jpg/data-img3.png" alt="">
-                    </div>
-                    <div>
-                        <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
-                    </div>
-                    <div>
-                        <button>바로가기</button>
-                    </div>
-
-                </section>
-                <section class="tech-box-sec">
-                    <div class="tech-box-sec-h3">
-                        <h3>기술문서</h3>
-                    </div>
-                    <div>
-                        <img src="../../../../resources/jpg/data-img3.png" alt="">
-                    </div>
-                    <div>
-                        <p>기술문서1의 설명</p>
-                        <p>23.10.26</p>
-                    </div>
-                    <div>
-                        <button>바로가기</button>
-                    </div>
-
-                </section>
-
-
-            </div>
+                </li>
+            </ul>
         </div>
     </div>
 </template>
-
 <script>
 export default {
     data() {
client/views/pages/user/community/NoticeOne.vue
--- client/views/pages/user/community/NoticeOne.vue
+++ client/views/pages/user/community/NoticeOne.vue
@@ -135,7 +135,7 @@
 
 .dtail-ing {
     padding: 3rem;
-    height: 40rem;
+    min-height: 40rem;
     display: grid;
     grid-template-columns: 1fr;
     align-content: space-between;
client/views/pages/user/join/Join.vue
--- client/views/pages/user/join/Join.vue
+++ client/views/pages/user/join/Join.vue
@@ -20,113 +20,12 @@
 
                 </label>
                 <div class="join-text">
-                    <p>※올바른 가입방법을 선택하세요.</p>
+                    <p>※회원가입 유형을 선택해주세요.</p>
                 </div>
             </div>
-
         </section>
-
         <!-- <div v-if="selectedMembership === 'company'"> -->
         <div v-show="selectedMembership === 'company'">
-            <div class="login-info2">
-                <div>
-                    <h3>회사소개</h3>
-                    <hr>
-                </div>
-                <div class="login-info-grid">
-                    <div class="login-info-grid-1">
-                        <section class="join-sec0">
-                            <div class="uploaded-box">
-
-                                <div class="uploaded-box-radius">
-                                    <p>LOGO</p>
-                                    <!-- <img v-if="logo_img" :src="logo_img" alt="Selected Image"> -->
-                                    <img v-if="logoPreview" :src="logoPreview" />
-                                </div>
-                                <div class="btn-upload-join" @click="openFileInput">
-                                    우리회사 로고 업로드하기
-                                </div>
-                                <input type="file" accept="image/*" name="logoImg" id="logoImg" ref="logoImg"
-                                    @change="logoUpload" style="display: none;" />
-
-                            </div>
-                        </section>
-                    </div>
-                    <div class="login-info-grid-2">
-                        <section class="join-sec1 joinsub0">
-                            <div class="join-sec-sub ">
-                                <span>사업자등록번호</span>
-                            </div>
-                            <div>
-                                <input type="text" v-model="combinedUserId" class="id-input" placeholder="사업자등록번호를 입력하세요."
-                                    @click="openModal">
-                            </div>
-                            <div>
-                                <button @click="openModal2">중복확인</button>
-                            </div>
-                            <!-- <div v-if="this.companyIdCheck_boolean" style="color:chartreuse"></div>
-                            <div v-else style="color:red">사업자등록번호: 이미 등록되어있는 사업자등록번호 입니다.</div> -->
-                        </section>
-                        <section class="join-sec1 joinsub0-1">
-                            <div class="join-sec-sub ">
-                                <span>회사명</span>
-                            </div>
-                            <div>
-                                <input type="text" v-model="company['company_nm']" placeholder="회사명을 입력해주세요.">
-                            </div>
-                        </section>
-                        <section class="join-sec2 joinsub">
-
-                            <div class="join-sec-sub">
-                                <span>우리회사 키워드</span>
-                            </div>
-
-
-                            <div>
-                                <div class="set_option_detail__VNyv5">
-                                    <div class="tag_area__TjdG">
-                                        <div class="tag_textarea__iAnXk">
-                                            <div class="tag_input_wrap__I9iiA">
-                                                <input id="tag-input" class="tag_input__NCQc1" type="text"
-                                                    autocomplete="off" placeholder="태그 입력 (최대 30개)" role="combobox"
-                                                    aria-autocomplete="both" v-model="tagInput" @keyup.enter="addTag">
-                                                <div class="tag" v-for="(tag, index) in tags" :key="index">#{{ tag
-                                                }}<button @click="removeTag(index)">x</button>
-                                                </div>
-                                            </div>
-                                            <div class="tag_list">
-                                            </div>
-                                        </div>
-                                    </div>
-                                </div>
-                            </div>
-                        </section>
-                    </div>
-                </div>
-
-                <div class="login-info-grid-3">
-
-                    <section class="join-sec3  j-s-3">
-                        <div class="join-sec-sub">
-                            <span>회사소개글</span>
-                        </div>
-                        <div class="join-sub-input">
-                            <!-- <input type="text" v-model="company['company_info']"> -->
-                            <textarea name="smart" id="smart" v-model="company['company_info']"></textarea>
-                        </div>
-                    </section>
-
-                    <section class="join-sec4 ">
-                        <div class="join-sec-sub join-sec-1">
-                            <span>회사소개서 첨부파일</span>
-                        </div>
-                        <div class="join-sub-input">
-                            <input type="file" name="companyProfile" id="companyProfile" ref="companyProfile"
-                                @change="companyProfileUpload" />
-                        </div>
-                    </section>
-                </div>
-            </div>
             <div class="login-info">
                 <div>
                     <h3>회원정보</h3>
@@ -143,7 +42,7 @@
                         <input type="text" v-model="combinedUserId" class="id-input" placeholder="아이디를 입력하세요.">
                     </div>
                     <div>
-                        <button>중복확인</button>
+                        <button class="blue-bnt">중복확인</button>
                     </div>
                 </section>
                 <section class="join-sec3 joinsub">
@@ -209,21 +108,109 @@
                         </div>
                     </div>
                 </section>
+            </div>
+            <div class="login-info2">
                 <div>
+                    <h3>회사소개</h3>
+                    <hr>
+                </div>
+                <div class="login-info-grid">
+                    <div class="login-info-grid-1">
+                        <section class="join-sec0">
+                            <div class="uploaded-box">
 
-                    <section class="join-email-bt">
-                        <input type="checkbox">
-                        <span>E-mail 구독서비스를 신청하시겠습니까?</span>
+                                <div class="uploaded-box-radius">
+                                    <p>LOGO</p>
+                                    <!-- <img v-if="logo_img" :src="logo_img" alt="Selected Image"> -->
+                                    <img v-if="logoPreview" :src="logoPreview" />
+                                </div>
+                                <div class="btn-upload-join" @click="openFileInput">
+                                    우리회사 로고 업로드하기
+                                </div>
+                                <input type="file" accept="image/*" name="logoImg" id="logoImg" ref="logoImg"
+                                    @change="logoUpload" style="display: none;" />
+                            </div>
+                        </section>
+                    </div>
+                    <div class="login-info-grid-2">
+                        <section class="join-sec1 joinsub0">
+                            <div class="join-sec-sub ">
+                                <span>사업자등록번호</span>
+                            </div>
+                            <div>
+                                <input type="text" v-model="combinedUserId" class="id-input" placeholder="사업자등록번호를 입력하세요.">
+                                <p v-show="businessNumber == true" style="color:red">사업자등록번호를 다시 한번 확인해주세요.</p>
+                            </div>
+                            <div>
+                                <button @click="businessNumCheck" class="blue-btn">중복확인</button>
+                            </div>
+                            <!-- <div v-if="this.companyIdCheck_boolean" style="color:chartreuse"></div>
+                            <div v-else style="color:red">사업자등록번호: 이미 등록되어있는 사업자등록번호 입니다.</div> -->
+                        </section>
+                        <section class="join-sec1 joinsub0-1">
+                            <div class="join-sec-sub ">
+                                <span>회사명</span>
+                            </div>
+                            <div>
+                                <input type="text" v-model="company['company_nm']" placeholder="회사명을 입력해주세요.">
+                            </div>
+                        </section>
+                        <section class="join-sec2 joinsub">
+                            <div class="join-sec-sub">
+                                <span>우리회사 키워드</span>
+                            </div>
+                            <div>
+                                <div class="set_option_detail__VNyv5">
+                                    <div class="tag_area__TjdG">
+                                        <div class="tag_textarea__iAnXk">
+                                            <div class="tag_input_wrap__I9iiA">
+                                                <input id="tag-input" class="tag_input__NCQc1" type="text"
+                                                    autocomplete="off" placeholder="태그 입력 (최대 30개)" role="combobox"
+                                                    aria-autocomplete="both" v-model="tagInput" @keyup.enter="addTag">
+                                                <div class="tag" v-for="(tag, index) in tags" :key="index">#{{ tag
+                                                }}<button @click="removeTag(index)">x</button>
+                                                </div>
+                                            </div>
+                                            <div class="tag_list">
+                                            </div>
+                                        </div>
+                                    </div>
+                                </div>
+                            </div>
+                        </section>
+                    </div>
+                </div>
+                <div class="login-info-grid-3">
+                    <section class="join-sec3  j-s-3">
+                        <div class="join-sec-sub">
+                            <span>회사소개글</span>
+                        </div>
+                        <div class="join-sub-input">
+                            <!-- <input type="text" v-model="company['company_info']"> -->
+                            <textarea name="smart" id="smart" v-model="company['company_info']"></textarea>
+                        </div>
                     </section>
-
-                    <section class="join-end-bt">
-                        <button>이전</button>
-
-                        <button v-if="selectedMembership === 'company'" @click="commonFileInsert">회원가입</button>
-                        <button v-else @click="userInsert">회원가입</button>
+                    <section class="join-sec4 ">
+                        <div class="join-sec-sub join-sec-1">
+                            <span>회사소개서 첨부파일</span>
+                        </div>
+                        <div class="join-sub-input">
+                            <input type="file" name="companyProfile" id="companyProfile" ref="companyProfile"
+                                @change="companyProfileUpload" />
+                        </div>
                     </section>
                 </div>
-
+            </div>
+            <div>
+                <section class="join-email-bt">
+                    <input type="checkbox">
+                    <span>E-mail 구독서비스를 신청하시겠습니까?</span>
+                </section>
+                <section class="join-end-bt">
+                    <button>이전</button>
+                    <button v-if="selectedMembership === 'company'" @click="commonFileInsert">회원가입</button>
+                    <button v-else @click="userInsert">회원가입</button>
+                </section>
             </div>
         </div>
         <!-- <div v-if="selectedMembership === 'two'"> -->
@@ -309,7 +296,6 @@
                     </div>
                 </section>
                 <div>
-
                     <section class="join-email-bt">
                         <input type="checkbox">
                         <span>E-mail 구독서비스를 신청하시겠습니까?</span>
@@ -317,7 +303,6 @@
 
                     <section class="join-end-bt">
                         <button>이전</button>
-
                         <button v-if="selectedMembership === 'company'" @click="commonFileInsert">회원가입</button>
                         <button v-else @click="userInsert">회원가입</button>
                     </section>
@@ -351,7 +336,6 @@
                     회원가입 승인 전까지 특정 서비스는 이용하실 수 없으며,
                     승인 이후 모든 서비스를 이용하실 수 있습니다.
                     또한, 해당 기업은 같은 기업명으로 중복 계정 생성이 불가합니다.
-
                 </p>
             </div>
             <div>
@@ -365,20 +349,16 @@
             <h2>사업자 등록번호 조회</h2>
             <button class="join-text-bt" @click="closeModal"><i class="fa-solid fa-xmark"></i></button>
         </div>
-
         <div>
-
             <input type="text" placeholder="사업자 등록번호를 입력하세요.">
             <button class="join-text-bt2">조회</button>
         </div>
         <div>
             <p>등록번호 여기에 넣어주세요!</p>
         </div>
-
     </div>
     <div v-show="showModal2" class="join-modal2">
         <div>
-
             <h2>이미 가입된 사업자 등록번호 입니다.</h2>
             <button class="join-text-bt3" @click="closeModal2">닫기</button>
         </div>
@@ -387,6 +367,7 @@
 
 <script>
 import axios from 'axios';
+import COMMON_UTIL from '../../../../resources/js/commonUtil.js';
 
 export default {
     data() {
@@ -431,7 +412,8 @@
             showModal: false,
             showModal2: false,
             tagInput: '#',
-            tags: []
+            tags: [],
+            businessNumber: false,
         }
     },
     methods: {
@@ -444,7 +426,6 @@
         removeTag(index) {
             this.tags.splice(index, 1);
         },
-
 
         // 사업자등록번호 모달
         openModal() {
@@ -664,27 +645,35 @@
         //     }
         // },
 
+        // 사업자번호 중복 검사
+        businessNumCheck: function () {
+
+        },
         //유효성 검사
         joinInsertCheck: function () {
-            if (COMMON_UTIL.isEmpty(this.post["main_number"]) == true) {
-                alert("구간을 선택해주세요");
-                // this.$refs["main_number"].focus();
-                return true;
-            }
-            if (COMMON_UTIL.isEmpty(this.post["sub_number"]) == true) {
-                alert("구간번호를 입력해주세요");
-                // this.$refs["sub_number"].focus();
-                return true;
-            }
-            if (COMMON_UTIL.isEmpty(this.post["season"]) == true) {
-                alert("계절을 선택해주세요");
-                // this.$refs["season"].focus();
-                return true;
-            }
+            // if (COMMON_UTIL.isEmpty(this.post["main_number"]) == true) {
+            //     alert("구간을 선택해주세요");
+            //     // this.$refs["main_number"].focus();
+            //     return true;
+            // }
+            // if (COMMON_UTIL.isEmpty(this.post["sub_number"]) == true) {
+            //     alert("구간번호를 입력해주세요");
+            //     // this.$refs["sub_number"].focus();
+            //     return true;
+            // }
+            // if (COMMON_UTIL.isEmpty(this.post["season"]) == true) {
+            //     alert("계절을 선택해주세요");
+            //     // this.$refs["season"].focus();
+            //     return true;
+            // }
             // if(COMMON_UTIL.isEmpty(this.post["main_number"])==true){
             //     alert("항공뷰 ID를 입력해주세요");
             //     this.$refs["main_number"].focus();
             // }
+            if (COMMON_UTIL.businessNumber(this.combinedUserId) == true) {
+                this.businessNumber = true;
+                return true;
+            }
         },
 
         initEditor: function (initData) {
@@ -1264,16 +1253,12 @@
     padding: 1rem 0;
     font-size: 1.5rem;
     font-family: "Pretendard-Regular";
-
 }
 
 .login-info-grid {
     display: grid;
     grid-template-columns: 180px 1fr;
-
 }
-
-
 
 .join-sec0 {
     display: grid;
@@ -1312,7 +1297,6 @@
     left: 0;
 
 }
-
 
 .uploaded-box-radius img {
     width: 100%;
@@ -1595,12 +1579,10 @@
     .join-sec5-1 {
         width: 100%;
         grid-template-columns: 1fr;
-
     }
 
     .join-sec6 {
         grid-template-columns: 1fr;
-
     }
 
     /* 공통요소 */
Add a comment
List