yjryu / KERIS star
kimgkdud898 2023-11-07
231107김하영
@3752114bda407bcb011dcc8519e6e191a053f583
client/resources/css/Main.css
--- client/resources/css/Main.css
+++ client/resources/css/Main.css
@@ -660,7 +660,7 @@
 }
 
 .mat-bos img {
-  width: 50px;
+  width: 50px !important;
   /* transform: translateY(10px);/ */
   z-index: -1;
 }
@@ -739,7 +739,7 @@
 
 .mat-sec2-end p span {
   color: #3f87f7;
-  margin-right: 1rem;
+  margin-left: 0.5rem;
 }
 
 .mat-sec2-end p:nth-child(2) {
@@ -760,11 +760,83 @@
   border-radius: 0.5rem;
   font-family: "Pretendard-Regular";
 }
+
+.join-modal2 {
+  position: fixed;
+  top: 50%;
+  left: 50%;
+  width: 20%;
+  /* height: 10%; */
+  transform: translate(-50%, -50%);
+  background: white;
+  padding: 20px;
+  border: 1px solid #ccc;
+  border-radius: 10px;
+  z-index: 999;
+}
+
+.mat-modal {
+  display: grid;
+  gap: 1rem;
+  grid-template-columns: 80% 1fr;
+}
+
+.join-modal2 h2 {
+  padding: 1rem 0;
+  text-align: center;
+}
+
+.join-text-bt3 {
+  width: 100%;
+  margin: 0 auto;
+  height: 3rem;
+  color: rgb(0, 0, 0);
+  border-radius: 0.5rem;
+
+  background-color: #3f86f700;
+}
+
+.mat-modal-img {
+  display: grid;
+  grid-template-columns: 1fr 1fr 1fr;
+}
+.mat-modal-img button {
+  width: 100%;
+  padding: 0.5rem 0;
+  border-radius: 1rem;
+  color: white;
+  background-color: #3f87f7;
+}
+
 /* ---------------------------------------------------------------------------------------------- */
 
 /* Data css */
+
+/* 231107수정 김하영 */
+#data-app p {
+  padding: 1rem;
+  font-size: 2rem;
+  font-family: "Pretendard-Regular";
+}
+#data-app span {
+  font-weight: 700;
+  font-family: "Pretendard-Regular";
+
+  color: #007aff;
+}
+.data-wrap {
+  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 !important;
+  padding: 3rem 0rem !important;
 }
 .data-box {
   border: 1px solid red;
@@ -779,7 +851,7 @@
 }
 .data-b-b {
   width: 100%;
-  padding: 6rem;
+  padding: 6rem 0;
   font-size: 4rem;
   color: #0e0077;
 
@@ -807,7 +879,7 @@
 
 .data-b-grid {
   width: 100%;
-  padding: 3rem;
+  padding: 3rem 0;
   display: grid;
   grid-template-columns: 1fr 1fr 1fr;
 }
@@ -816,12 +888,20 @@
   width: 100%;
 }
 .da1 {
-  width: 80%;
-  height: 40rem;
+  max-width: 100%;
+  height: auto;
   margin: 0 auto;
-  display: grid;
-  grid-template-columns: 1fr;
-  align-content: start;
+  position: relative;
+  top: 0;
+  left: 0;
+}
+.data-da1-1 {
+  position: absolute;
+  top: 0;
+  left: 0;
+}
+.da1 img {
+  width: 100%;
 }
 .da1 h2 {
   font-family: SBaggroM;
@@ -831,13 +911,72 @@
 .da1 h2 span {
   font-size: 4rem;
 }
-.data-b-1 {
-  /* background-color: #007aff; */
-  background: url(../jpg/data-img.png) no-repeat center center;
-  background-size: cover;
+/* 
+.background-image-2 {
+  max-width: 100%;
+  height: auto;
+  margin: 0 auto;
+  display: grid;
+  grid-template-columns: 1fr;
+  align-content: start;
+  background: url(../jpg/data-imgbak.png) no-repeat center center;
+  background-size: contain;
   position: relative;
   text-align: center;
+} */
+/* .background-image-3 {
+  max-width: 100%;
+  height: auto;
+  margin: 0 auto;
+  display: grid;
+  grid-template-columns: 1fr;
+  align-content: start;
+  cursor: pointer;
+  background: url(../jpg/data-img3.png) no-repeat center center;
+  background-size: contain;
+  position: relative;
+  text-align: center;
+} */
+.background-image-4 {
+  max-width: 100%;
+  height: auto;
+  margin: 0 auto;
+  display: grid;
+  grid-template-columns: 1fr;
+  cursor: pointer;
+  align-content: start;
+  background: url(../jpg/data-img3back.png) no-repeat center center;
+  background-size: contain;
+  position: relative;
+  text-align: center;
+}
+.background-image-5 {
+  max-width: 100%;
+  height: auto;
+  margin: 0 auto;
+  display: grid;
+  grid-template-columns: 1fr;
+  align-content: start;
+  /* background-color: #007aff; */
+  background: url(../jpg/data-img2.png) no-repeat center center;
+  background-size: contain;
+  position: relative;
+  cursor: pointer;
+  text-align: center;
   /* border-radius: 2rem; */
+}
+.background-image-6 {
+  max-width: 100%;
+  height: auto;
+  margin: 0 auto;
+  display: grid;
+  cursor: pointer;
+  grid-template-columns: 1fr;
+  align-content: start;
+  background: url(../jpg/data-imgback.png) no-repeat center center;
+  background-size: contain;
+  position: relative;
+  text-align: center;
 }
 .data-b-1 h2 {
   text-align: left;
@@ -856,26 +995,6 @@
   cursor: pointer;
 }
 
-.data-b-1::after {
-  position: absolute;
-  content: "";
-  width: 90px;
-  height: 90px;
-  right: -90px;
-  top: 40%;
-
-  background-color: #e2ecfc;
-  border-radius: 45px;
-  transform: translateX(-50%);
-  z-index: -1;
-}
-.data-b-2 {
-  background: url(../jpg/data-img3.png) no-repeat center center;
-  background-size: cover;
-  position: relative;
-  text-align: center;
-  cursor: pointer;
-}
 .data-b-2 h2 {
   text-align: center;
   padding: 3rem;
@@ -897,28 +1016,6 @@
 .data-table-tr {
   width: 100%;
   padding: 12rem 3rem;
-}
-.data-b-3 {
-  background: url(../jpg/data-img2.png) no-repeat center center;
-  background-size: cover;
-  position: relative;
-  text-align: center;
-  cursor: pointer;
-
-  /* border: 1px solid red; */
-}
-.data-b-3::after {
-  position: absolute;
-  content: "";
-  width: 90px;
-  height: 90px;
-  left: 0px;
-  top: 40%;
-
-  background-color: #f8e7cd;
-  border-radius: 45px;
-  transform: translateX(-50%);
-  z-index: -1;
 }
 
 .data-b-3 h2 {
@@ -943,7 +1040,7 @@
 }
 .data-table-tr {
   width: 100%;
-  padding: 0rem 3rem 12rem 3rem;
+  padding: 0rem 0rem 12rem 0rem;
 }
 
 .data-table-tr td:nth-child(2) {
@@ -1726,3 +1823,98 @@
   padding: 1rem;
   border-radius: 1rem;
 }
+/* 매칭관리css */
+.matching-wrap-sub {
+  width: 100%;
+  margin: 0 auto;
+}
+.matching-box-button {
+  border: 1px solid red;
+  width: 50%;
+  display: grid;
+  grid-template-columns: 1fr 1fr;
+}
+.matching-box-button input {
+  display: none;
+}
+.matching-box-button label {
+  text-align: center;
+  width: 100%;
+
+  font-size: 2rem;
+}
+.matching-box-button div {
+  width: 100%;
+  padding: 3rem;
+  background-color: #007aff;
+  color: white;
+  border: 1px solid red;
+}
+.inbox {
+  display: grid;
+  border: 1px solid red;
+  grid-template-columns: 1fr;
+}
+.inbox-sub {
+  width: 100%;
+  padding: 6rem 0;
+  display: grid;
+  grid-template-columns: 1fr 1fr 1fr;
+  gap: 3rem;
+}
+.inbox-img {
+  width: 100%;
+  border-radius: 2rem;
+  background-color: #f9f9f9;
+  padding: 3rem 3rem 01rem 3rem;
+  box-shadow: 1px 1px 5px #33333344;
+}
+.inbox-img img {
+  width: 100%;
+
+  border-radius: 2rem;
+}
+.inbox-img div {
+  display: grid;
+  grid-template-columns: 1fr 1fr;
+  gap: 1rem;
+
+  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: 100%;
+
+  border-radius: 2rem;
+}
+.inbox-img-2 {
+  width: 100%;
+  border-radius: 2rem;
+  background-color: #f9f9f9;
+  padding: 3rem 3rem 01rem 3rem;
+  box-shadow: 1px 1px 5px #33333344;
+}
+.inbox-img-2 div {
+  margin: 1rem;
+}
+.inbox-img-2 button {
+  width: 100%;
+  padding: 1rem 2rem;
+  border-radius: 1rem;
+  background-color: #007aff;
+  color: white;
+  font-weight: 700;
+}
client/resources/css/common.css
--- client/resources/css/common.css
+++ client/resources/css/common.css
@@ -265,11 +265,11 @@
   font-family: "Pretendard-Regular";
 }
 
-.insert-table th{
+.insert-table th {
   background-color: transparent;
   color: #007aff;
 }
 
-.insert-table td{
+.insert-table td {
   border-top: 0;
 }
client/resources/jpg/data-img.png (Binary)
--- client/resources/jpg/data-img.png
+++ client/resources/jpg/data-img.png
Binary file is not shown
client/resources/jpg/data-img2.png (Binary)
--- client/resources/jpg/data-img2.png
+++ client/resources/jpg/data-img2.png
Binary file is not shown
 
client/resources/jpg/data-img3back.png (Binary) (added)
+++ client/resources/jpg/data-img3back.png
Binary file is not shown
 
client/resources/jpg/data-imgback.png (Binary) (added)
+++ client/resources/jpg/data-imgback.png
Binary file is not shown
 
client/resources/jpg/data-imgbak.png (Binary) (added)
+++ client/resources/jpg/data-imgbak.png
Binary file is not shown
 
client/resources/jpg/inbox-img.jpg (Binary) (added)
+++ client/resources/jpg/inbox-img.jpg
Binary file is not shown
client/views/layout/Menu.vue
--- client/views/layout/Menu.vue
+++ client/views/layout/Menu.vue
@@ -98,7 +98,7 @@
                     isHovered: false,
                     subMenu: [
                         { text: "내 정보 수정", link: "/Info.page" },
-                        { text: "매칭 관리", link: "" }
+                        { text: "매칭 관리", link: "/MatchingManager.page" }
                     ]
                 }
             ]
client/views/pages/AppRouter.js
--- client/views/pages/AppRouter.js
+++ client/views/pages/AppRouter.js
@@ -16,6 +16,7 @@
 import Wgcommunity from "../pages/user/community/Wgcommunity.vue";
 import NoticeOne from "./user/community/NoticeOne.vue";
 import Info from "../pages/user/mypage/Info.vue";
+import MatchingManager from "../pages/user/mypage/MatchingManager.vue";
 import Infosub from "../pages/user/mypage/Infosub.vue";
 import Guide from "../pages/user/Data/Guide.vue";
 import DataDtali from "./user/Data/DataOne.vue";
@@ -61,28 +62,114 @@
   { path: "/NoticeOne.page", name: "NoticeOne", component: NoticeOne },
   { path: "/Wgcommunity.page", name: "Wgcommunity", component: Wgcommunity },
   { path: "/MatchingOne.page", name: "MatchingOne", component: MatchingOne },
-  { path: "/TechnologyOne.page", name: "TechnologyOne", component: TechnologyOne },
+  {
+    path: "/TechnologyOne.page",
+    name: "TechnologyOne",
+    component: TechnologyOne,
+  },
+  {
+    path: "/MatchingManager.page",
+    name: "MatchingManager",
+    component: MatchingManager,
+  },
   /* 관리자 */
-  { path: "/adm.page", name: "AdminMain", component: AdminMain, meta: { requiresAuth: true } },
+  {
+    path: "/adm.page",
+    name: "AdminMain",
+    component: AdminMain,
+    meta: { requiresAuth: true },
+  },
   { path: "/adm/login.page", name: "AdminLogin", component: AdminLogin },
-  { path: "/adm/userSelectList.page", name: "AdminUserSelectList", component: AdminUserSelectList },
-  { path: "/adm/userSelectOne.page", name: "AdminUserSelectOne", component: AdminUserSelectOne },
-  { path: "/adm/noticeSelectList.page", name: "AdminNoticeSelectList", component: AdminNoticeSelectList },
-  { path: "/adm/noticeSelectOne.page", name: "AdminNoticeSelectOne", component: AdminNoticeSelectOne },
-  { path: "/adm/noticeInsert.page", name: "AdminNoticeInsert", component: AdminNoticeInsert },
-  { path: "/adm/newsSelectList.page", name: "AdminNewsSelectList", component: AdminNewsSelectList },
-  { path: "/adm/newsSelectOne.page", name: "AdminNewsSelectOne", component: AdminNewsSelectOne },
-  { path: "/adm/newsInsert.page", name: "AdminNewsInsert", component: AdminNewsInsert },
-  { path: "/adm/techSelectList.page", name: "AdminTechSelectList", component: AdminTechSelectList },
-  { path: "/adm/techSelectOne.page", name: "AdminTechSelectOne", component: AdminTechSelectOne },
-  { path: "/adm/techInsert.page", name: "AdminTechInsert", component: AdminTechInsert },
-  { path: "/adm/dataSelectList.page", name: "AdminDataSelectList", component: AdminDataSelectList },
-  { path: "/adm/dataSelectOne.page", name: "AdminDataSelectOne", component: AdminDataSelectOne },
-  { path: "/adm/dataInsert.page", name: "AdminDataInsert", component: AdminDataInsert },
-  { path: "/adm/dataUpdate.page", name: "AdminDataUpdate", component: AdminDataUpdate },
-  { path: "/adm/networkingSelectList.page", name: "AdminNetworkingSelectList", component: AdminNetworkingSelectList },
-  { path: "/adm/networkingSelectOne.page", name: "AdminNetworkingSelectOne", component: AdminNetworkingSelectOne },
-  { path: "/adm/networkingUpdate.page", name: "AdminNetworkingUpdate", component: AdminNetworkingUpdate },
+  {
+    path: "/adm/userSelectList.page",
+    name: "AdminUserSelectList",
+    component: AdminUserSelectList,
+  },
+  {
+    path: "/adm/userSelectOne.page",
+    name: "AdminUserSelectOne",
+    component: AdminUserSelectOne,
+  },
+  {
+    path: "/adm/noticeSelectList.page",
+    name: "AdminNoticeSelectList",
+    component: AdminNoticeSelectList,
+  },
+  {
+    path: "/adm/noticeSelectOne.page",
+    name: "AdminNoticeSelectOne",
+    component: AdminNoticeSelectOne,
+  },
+  {
+    path: "/adm/noticeInsert.page",
+    name: "AdminNoticeInsert",
+    component: AdminNoticeInsert,
+  },
+  {
+    path: "/adm/newsSelectList.page",
+    name: "AdminNewsSelectList",
+    component: AdminNewsSelectList,
+  },
+  {
+    path: "/adm/newsSelectOne.page",
+    name: "AdminNewsSelectOne",
+    component: AdminNewsSelectOne,
+  },
+  {
+    path: "/adm/newsInsert.page",
+    name: "AdminNewsInsert",
+    component: AdminNewsInsert,
+  },
+  {
+    path: "/adm/techSelectList.page",
+    name: "AdminTechSelectList",
+    component: AdminTechSelectList,
+  },
+  {
+    path: "/adm/techSelectOne.page",
+    name: "AdminTechSelectOne",
+    component: AdminTechSelectOne,
+  },
+  {
+    path: "/adm/techInsert.page",
+    name: "AdminTechInsert",
+    component: AdminTechInsert,
+  },
+  {
+    path: "/adm/dataSelectList.page",
+    name: "AdminDataSelectList",
+    component: AdminDataSelectList,
+  },
+  {
+    path: "/adm/dataSelectOne.page",
+    name: "AdminDataSelectOne",
+    component: AdminDataSelectOne,
+  },
+  {
+    path: "/adm/dataInsert.page",
+    name: "AdminDataInsert",
+    component: AdminDataInsert,
+  },
+  {
+    path: "/adm/dataUpdate.page",
+    name: "AdminDataUpdate",
+    component: AdminDataUpdate,
+  },
+  {
+    path: "/adm/networkingSelectList.page",
+    name: "AdminNetworkingSelectList",
+    component: AdminNetworkingSelectList,
+  },
+  {
+    path: "/adm/networkingSelectOne.page",
+    name: "AdminNetworkingSelectOne",
+    component: AdminNetworkingSelectOne,
+  },
+  {
+    path: "/adm/networkingUpdate.page",
+    name: "AdminNetworkingUpdate",
+    component: AdminNetworkingUpdate,
+  },
 ];
 
 const AppRouter = createRouter({
client/views/pages/user/Data/Data.vue
--- client/views/pages/user/Data/Data.vue
+++ client/views/pages/user/Data/Data.vue
@@ -24,32 +24,52 @@
                 <div class="w1400">
                     <div class="data-b-grid">
                         <!-- 윗쪽 아이콘 -->
-                        <div class="data-b-1 da1">
-                            <h2>AI 디지털교과서<br><span>정책자료</span></h2>
-                            <div class="data-t">
+                        <div class="data-b-1 da1" @click="updateContent('정책자료')">
+                            <div @click="changeBackground"
+                                :class="{ 'background-image-1': isBackground1, 'background-image-2': isBackground2 }">
+                                <img src="../../../../resources/jpg/data-img.png" alt="">
+                                <div class="data-da1-1">
 
-                                <p>· 개발 지원 정책 문서</p>
-                                <p>· 법·제도 문서 등</p>
+                                    <h2>AI 디지털교과서<br><span>정책자료</span></h2>
+                                    <div class="data-t">
+
+                                        <p>· 개발 지원 정책 문서</p>
+                                        <p>· 법·제도 문서 등</p>
+                                    </div>
+                                </div>
+
                             </div>
+
                         </div>
-                        <div class="data-b-2 da1">
-                            <h2>AI 디지털교과서<br><span>연구자료</span></h2>
-                            <div class="data-t data-t2">
-                                <p>· 서비스 모델, 프로토타입 연구·보고서 등</p>
+                        <div class="data-b-2 da1" @click="updateContent('연구자료')">
+                            <div>
+                                <img @click="changeBackground2"
+                                    :class="{ 'background-image-3': isBackground3, 'background-image-4': isBackground4 }"
+                                    src="../../../../resources/jpg/data-img3.png" alt="">
+                                <div class="data-da1-1">
+
+                                    <h2>AI 디지털교과서<br><span>연구자료</span></h2>
+                                    <div class="data-t data-t2">
+                                        <p>· 서비스 모델, 프로토타입 연구·보고서 등</p>
+                                    </div>
+                                </div>
                             </div>
                         </div>
                         <div class="data-b-3 da1">
-                            <h2>AI 디지털교과서<br><span>가이드라인</span></h2>
-                            <div class="data-t">
+                            <div @click="changeBackground3"
+                                :class="{ 'background-image-5': isBackground5, 'background-image-6': isBackground6 }">
+                                <h2>AI 디지털교과서<br><span>가이드라인</span></h2>
+                                <div class="data-t">
 
-                                <div class="guide-logo-bt">
+                                    <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>
+                                        <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>
+                                    </div>
                                 </div>
                             </div>
                         </div>
@@ -64,16 +84,27 @@
             <div class="data-b">
                 <div class="w1400">
                     <div class="btn-wrap data-btn-wrap">
-                        <select v-model="postListSearch.searchType" name="data-table-sild" id="data-table-sild">
-                            <option :value=null selected>전체</option>
-                            <option value="title">제목</option>
-                            <option value="user">작성자</option>
-                            <option value="조회순">조회순</option>
-                        </select>
-                        <div class="input-group">
-                            <input type="text" class="input" placeholder="검색어를 입력해주세요." v-model="postListSearch.searchText"
-                                @keyup.enter="postSelectList()">
-                            <input class="button--submit" value="검색" type="submit" @click="postSelectList()">
+                        <div class="data-wrap">
+
+
+                            <div id="data-app">
+
+                                <p>자료집> <span>{{ content }}</span></p>
+                            </div>
+                            <div class="data-wrap-search">
+
+                                <select v-model="postListSearch.searchType" name="data-table-sild" id="data-table-sild">
+                                    <option :value=null selected>전체</option>
+                                    <option value="title">제목</option>
+                                    <option value="user">작성자</option>
+                                    <option value="조회순">조회순</option>
+                                </select>
+                                <div class="input-group">
+                                    <input type="text" class="input" placeholder="검색어를 입력해주세요."
+                                        v-model="postListSearch.searchText" @keyup.enter="postSelectList()">
+                                    <input class="button--submit" value="검색" type="submit" @click="postSelectList()">
+                                </div>
+                            </div>
                         </div>
                     </div>
                     <div class="data-table-tr">
@@ -108,6 +139,7 @@
 
 export default {
     data() {
+
         return {
             postListSearch: {
                 currentPage: 1,
@@ -117,10 +149,50 @@
             },
             postList: [],
             postListCount: 0,
-            postIdx: 0
+            postIdx: 0,
+            isBackground1: true,
+            isBackground2: false,
+            isBackground3: false,
+            isBackground4: true,
+            isBackground5: false,
+            isBackground6: true,
+            content: '정책자료'
+
         }
     },
     methods: {
+        updateContent(newContent) {
+            this.content = newContent
+        },
+        //click시 backgroundimg 변경
+        changeBackground() {
+            this.isBackground1 = !this.isBackground1;
+            this.isBackground2 = !this.isBackground2;
+            // 정책자료 클릭시, 연구자료와 가이드라인의 상태를 변경
+            this.isBackground3 = !this.isBackground1;
+            this.isBackground4 = this.isBackground1;
+            this.isBackground5 = !this.isBackground1;
+            this.isBackground6 = this.isBackground1;
+        },
+        changeBackground2() {
+
+            this.isBackground3 = !this.isBackground3;
+            this.isBackground4 = !this.isBackground4;
+            // 연구자료 클릭시, 정책자료와 가이드라인의 상태를 변경
+            this.isBackground1 = !this.isBackground3;
+            this.isBackground2 = this.isBackground3;
+            this.isBackground5 = !this.isBackground3;
+            this.isBackground6 = this.isBackground3;
+        },
+        changeBackground3() {
+            this.isBackground5 = !this.isBackground5;
+            this.isBackground6 = !this.isBackground6;
+            // 가이드라인 클릭시, 정책자료와 연구자료의 상태를 변경
+            this.isBackground1 = !this.isBackground5;
+            this.isBackground2 = this.isBackground5;
+            this.isBackground3 = !this.isBackground5;
+            this.isBackground4 = this.isBackground5;
+        },
         postSelectList: function () {
             const vm = this;
 
client/views/pages/user/Data/Technology.vue
--- client/views/pages/user/Data/Technology.vue
+++ client/views/pages/user/Data/Technology.vue
@@ -170,7 +170,7 @@
     },
     methods: {
         goToPage3() {
-            this.$router.push('/TechnologyDtail.page')
+            this.$router.push('/TechnologyOne.page')
         }
     },
     watch: {
 
client/views/pages/user/mypage/MatchingManager.vue (added)
+++ client/views/pages/user/mypage/MatchingManager.vue
@@ -0,0 +1,103 @@
+<template>
+    <div class="w1400">
+        <section class="main-sec sec1">
+            <!-- <div class="main-content"> -->
+            <div class="flex">
+                <!-- 매칭관리 비주얼 -->
+                <div class="data-b">
+                    <div class="w1400">
+                        <div class="data-b-b">
+                            <!-- 매칭관리 텍스트 -->
+                            <div class="data-text">
+                                <img src="../../../../resources/jpg/data-img-text.png" alt="">
+                                <p>매칭 관리</p>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </section>
+        <section class="matching-wrap-sub">
+            <div class="matching-box-button">
+                <div @click="selectedBox = 'inbox'">
+
+                    <input type="radio" id="inbox" value="inbox" v-model="selectedBox">
+                    <label for="inbox">수신함</label>
+                </div>
+                <div @click="selectedBox = 'outbox'">
+
+                    <input type="radio" id="outbox" value="outbox" v-model="selectedBox">
+                    <label for="outbox">발신함</label>
+                </div>
+            </div>
+
+        </section>
+        <!-- 상세 -->
+        <section>
+            <div v-show="selectedBox === 'inbox'" class="inbox">
+                <section>
+
+                    <h1>PICK</h1>
+                    <div class="inbox-sub">
+                        <div class="inbox-img">
+                            <img src="../../../../resources/jpg/inbox-img.jpg" alt="명함박스">
+                            <div>
+
+                                <button>수락</button>
+                                <button>거부</button>
+                            </div>
+                        </div>
+                        <div class="inbox-img">
+                            <img src="../../../../resources/jpg/inbox-img.jpg" alt="명함박스">
+                            <div>
+
+                                <button>수락</button>
+                                <button>거부</button>
+                            </div>
+                            <div><button>수락된 기업</button></div>
+                        </div>
+
+                    </div>
+                </section>
+                <section>
+
+                    <h1>MACTHING</h1>
+                    <div class="inbox-sub">
+                        <div class="inbox-img-2">
+                            <img src="../../../../resources/jpg/inbox-img.jpg" alt="명함박스">
+                            <div>
+
+                                <button>명함보기</button>
+
+                            </div>
+                        </div>
+                        <div class="inbox-img-2">
+                            <img src="../../../../resources/jpg/inbox-img.jpg" alt="명함박스">
+                            <div>
+
+                                <button>명함보기</button>
+
+                            </div>
+                        </div>
+                    </div>
+                </section>
+            </div>
+
+
+        </section>
+        <section>
+
+            <div v-show="selectedBox === 'outbox'">내용2</div>
+        </section>
+
+    </div>
+</template>
+<script>
+export default {
+    data() {
+        return {
+            selectedBox: 'inbox'
+        }
+    },
+}
+</script>(No newline at end of file)
client/views/pages/user/networking/Matching.vue
--- client/views/pages/user/networking/Matching.vue
+++ client/views/pages/user/networking/Matching.vue
@@ -369,7 +369,7 @@
     },
     methods: {
         goToPage1() {
-            this.$router.push('/MatchingDtail.page')
+            this.$router.push('/MatchingOne.page')
         }
     },
     watch: {
client/views/pages/user/networking/MatchingOne.vue
--- client/views/pages/user/networking/MatchingOne.vue
+++ client/views/pages/user/networking/MatchingOne.vue
@@ -1,74 +1,89 @@
 <template>
-    <div class="mat-main">
-        <section class="main-sec sec1">
-            <!-- <div class="main-content"> -->
-            <div class="flex">
-                <!-- 매칭비주얼 -->
-                <div class="mat-b">
-                    <div class="w1400">
-                        <div class="mat-b-b">
-                            <div class="mat-img">
-                                <img src="../../../../resources/jpg/mat-img.png" alt="">
-                            </div>
-                            <!-- 매칭 텍스트 -->
-                            <div class="mat-text">
-                                <i class="fa-regular fa-handshake fa-lg" style="color: #ffffff;"></i>
-                                <p>기업 홍보관</p>
-                            </div>
-                            <div class="mat-img">
-                                <img src="../../../../resources/jpg/mat-img1.png" alt="">
-                            </div>
-
+    <section class="main-sec sec1">
+        <!-- <div class="main-content"> -->
+        <div class="flex">
+            <!-- 매칭비주얼 -->
+            <div class="matching-box-wrap">
+                <div class="w1400">
+                    <div class="matching-wrap">
+                        <div class="matching-img">
+                            <img src="../../../../resources/jpg/mat-img.png" alt="">
+                        </div>
+                        <!-- 매칭 텍스트 -->
+                        <div class="matching-text">
+                            <i class="fa-regular fa-handshake fa-lg" style="color: #ffffff;"></i>
+                            <p>기업 홍보관</p>
+                        </div>
+                        <div class="matching-img">
+                            <img src="../../../../resources/jpg/mat-img1.png" alt="">
                         </div>
 
                     </div>
+
                 </div>
             </div>
-        </section>
-
-
-        <div class="w1400">
-            <div class="mat-bos">
-                <h1><img src="../../../../resources/jpg/mat-img-d.png" alt="">회사소개</h1>
-
-            </div>
-            <div class="matDtail-sec">
-                <section class="mat-sec1">
-                    <h2>(주)지학사 <span>(1등급)</span></h2>
-                    <div>
-                        <input type="file" id="dtaildown" style="display: none;">
-                        <label for="dtaildown">회사소개서 다운로드</label>
-                        <i class="fa-solid fa-download" style="color: #ffffff;"></i>
-                    </div>
-                </section>
-
-                <!-- /상세내용 -->
-                <section class="mat-sec2">
-                    <div>
-                        <img src="../../../../resources/jpg/matching-img.png" alt="">
-                    </div>
-                    <div>
-                        <p>교과서
-                            지학사는 1956년 창립이후 공교육의 핵심인 교과용 도서 개발을 근간으로 초중고 학생들을 위한 국정,검정,인정 전 과목 교과서를 발행하고 있습니다.
-                        </p>
-                    </div>
-                    <div class="mat-sec2-end">
-                        <p>
-
-                            <i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i>
-                            366666
-                        </p>
-                        <p><span>조회수</span>45454</p>
-
-                    </div>
-                </section>
-
-                <section class="mat-sec2-bt">
-                    <button @click="goToPage2">목록</button>
-                </section>
-            </div>
         </div>
+    </section>
 
+    <div class="w1400">
+        <div class="mat-bos">
+            <h1><img src="../../../../resources/jpg/mat-img-d.png" width="50px" alt="">회사소개</h1>
+
+        </div>
+        <div class="matDtail-sec">
+            <section class="mat-sec1">
+                <h2>(주)지학사 <span>(1등급)</span></h2>
+                <div>
+                    <input type="file" id="dtaildown" style="display: none;">
+                    <label for="dtaildown">회사소개서 다운로드</label>
+                    <i class="fa-solid fa-download" style="color: #ffffff;"></i>
+                </div>
+            </section>
+
+            <!-- /상세내용 -->
+            <section class="mat-sec2">
+                <div>
+                    <img src="../../../../resources/jpg/matching-img.png" alt="">
+                </div>
+                <div>
+                    <p>교과서
+                        지학사는 1956년 창립이후 공교육의 핵심인 교과용 도서 개발을 근간으로 초중고 학생들을 위한 국정,검정,인정 전 과목 교과서를 발행하고 있습니다.
+                    </p>
+                </div>
+                <div class="mat-sec2-end">
+                    <p>
+
+                        <i class="fa-regular fa-heart fa-lg" style="color: #3f87f7;"></i>
+                        <span @click="openModal2">366666개</span>의 기업이 pick했습니다!
+                    </p>
+                    <p><span>조회수</span>45454</p>
+
+                </div>
+            </section>
+
+            <section class="mat-sec2-bt">
+                <button @click="goToPage2">목록</button>
+            </section>
+        </div>
+    </div>
+
+
+    <div v-show="showModal2" class="join-modal2">
+        <div class="mat-modal">
+
+            <h2>우리기업을 PICK한 기업</h2>
+            <button class="join-text-bt3" @click="closeModal2">X</button>
+        </div>
+        <table class="mat-modal-img">
+            <td><img src="../../../../resources/jpg/logo/edutech.png" alt=""></td>
+            <td v-for="item in items" :key="item.id">
+                <!-- <img :src="item.image" alt="" />/ -->
+                {{ item.text }}
+            </td>
+            <td><button :style="{ backgroundColor: buttonColor }" @click="accept">
+                    {{ buttonText }}
+                </button></td>
+        </table>
     </div>
 </template>
 
@@ -76,12 +91,34 @@
 export default {
     data() {
         return {
+            showModal2: false,
+            isAccepted: false,
+            buttonText: '수락',
+            buttonColor: '#3f87f7',
+            items: [
+
+                { id: 2, text: "oo출판사" },
+
+
+            ],
+            imagePath1: require("../../../../resources/jpg/fille.png"),
         }
     },
     methods: {
         goToPage2() {
             this.$router.push('/Matching.page')
-        }
+        },
+        openModal2() {
+            this.showModal2 = true;
+        },
+        closeModal2() {
+            this.showModal2 = false;
+        },
+        accept() {
+            this.isAccepted = !this.isAccepted;
+            this.buttonText = this.isAccepted ? '수락완료' : '수락';
+            this.buttonColor = this.isAccepted ? '#ccc' : '#3f87f7';
+        },
     },
     watch: {
 
@@ -96,6 +133,16 @@
 </script>
 
 <style scoped>
+img {
+    width: 100%;
+}
+
+.fa-lg {
+    font-size: 2rem;
+}
+
+
+
 @media all and (min-width: 1023px) and (max-width: 1268px) {
     .mat-sec1 {
         grid-template-columns: 80% 20%;
Add a comment
List