yjryu / KERIS star
류윤주 류윤주 2023-11-29
231129 류윤주 접근제한 추가 커밋
@9f6eb2a911e82ca05399af06e8799b905fe8a20b
client/resources/css/Main.css
--- client/resources/css/Main.css
+++ client/resources/css/Main.css
@@ -2997,3 +2997,8 @@
 .tech-txt-wrap p {
   width: 300px;
 }
+.modal-text{
+  text-align: center;
+  font-size: 1.6rem;
+  line-height: 180%;
+}
(No newline at end of file)
client/resources/css/common.css
--- client/resources/css/common.css
+++ client/resources/css/common.css
@@ -399,7 +399,7 @@
 .modal-end {
   width: 100%;
   display: flex;
-  justify-content: flex-end;
+  justify-content: space-between;
   padding: 15px 0;
 }
 
client/views/layout/Menu.vue
--- client/views/layout/Menu.vue
+++ client/views/layout/Menu.vue
@@ -133,7 +133,7 @@
             // 해당 서브 메뉴 항목이 로그인 상태에 따라 렌더링되어야 하는지 확인하는 로직
             if (subMenuItem.text === "매칭 관리") {
                 // '매칭 관리' 항목은 'company'로 로그인한 경우에만 표시
-                return this.store.state.loginUser.user_auth === 'company';
+                return this.store.state.loginUser && this.store.state.loginUser.user_auth === 'company';
             }
             // 다른 서브 메뉴 항목은 항상 표시
             return true;
client/views/pages/App.vue
--- client/views/pages/App.vue
+++ client/views/pages/App.vue
@@ -16,19 +16,19 @@
       </div>
       <Footer></Footer>
    </div>
-   <!-- <div v-show="isModalOpen" class="modal-wrapper">
+   <div v-if="isModalOpen" class="modal-wrapper">
       <div class="modal-container">
-         <p>
-            해당글은 정회원에게 공개된 게시물 입니다.
-            (준회원은 가입 승인 이후 열람 가능하며,
+         <p class="modal-text">
+            해당글은 정회원에게 공개된 게시물 입니다.<br />
+            (준회원은 가입 승인 이후 열람 가능하며,<br />
             비회원은 회원가입이 필요합니다.)
          </p>
          <div class="modal-end">
-            <button class="dark-gray-btn mgl5" @click="closeModal()">닫기</button>
-            <button class="blue-btn" @click="loginMove">로그인</button>
+            <button class="dark-gray-btn" @click="closeModal()" style="width:100%">닫기</button>
+            <button class="blue-btn" @click="loginMove" style="width:100%">로그인</button>
          </div>
       </div>
-   </div> -->
+   </div>
 </template>
 
 <script>
@@ -212,7 +212,7 @@
             });
          } else {
             //로그인 사용자 조회 후, callback을 통해 로그인 사용자 정보 받기
-            this.loginUserSelectOne(function (store) {
+            this.loginUserSelectOne((store) => {
                //로그인 유무(로그인 정보가 있으면 True, 없으면 False)
                let isLogin = (store.loginUser != null && store.loginUser['user_id'] != null);
                const authenticationState = store.loginUser;
@@ -238,8 +238,8 @@
                   // 로그인 상태가 아니면 권한이 없는게 있어 넣어줘야함
                   if (!authorization.includes(nonMember)) {
                      if (nonMember == '비회원') {
-                       alert(' 해당글은 정회원에게 공개된 게시물 입니다. (준회원은 가입 승인 이후 열람 가능하며, 비회원은 회원가입이 필요합니다.)')
-                     }  next();
+                         this.isModalOpen = true;
+                     } next(false);
                   }
                   next();
                }
client/views/pages/user/mypage/Info.vue
--- client/views/pages/user/mypage/Info.vue
+++ client/views/pages/user/mypage/Info.vue
@@ -130,9 +130,9 @@
                         </div>
                     </section>
                     <section class="info-sec-bt">
-                        <router-link to="/infosub.page">
-                            <button class="blue-btn">수정하기</button>
-                        </router-link>
+                        <!-- <router-link to="/infosub.page"> -->
+                            <button class="blue-btn"  @click="infoUpdate">수정하기</button>
+                        <!-- </router-link> -->
                     </section>
 
                 </div>
@@ -254,6 +254,15 @@
             });
         },
 
+        infoUpdate: function () {
+            const isUserLogin = this.store.state.loginUser;
+            if (isUserLogin.create_account_approval === 'N') {
+                alert("승인 대기 중입니다. 이후 내정보 수정이 가능합니다.")
+            } else{
+                this.$router.push('/Infosub.page');
+            }
+        },
+
         companySelectOne: function () {
             const vm = this;
             axios({
client/views/pages/user/networking/Matching.vue
--- client/views/pages/user/networking/Matching.vue
+++ client/views/pages/user/networking/Matching.vue
@@ -150,10 +150,12 @@
 
         pickModal: function (item) {
             const isUserLogin = this.store.state.loginUser;
-            if (isUserLogin.user_auth === 'common') {
-                alert("일반 회원은 해당 기능을 이용하실 수 없습니다.")
+            if (isUserLogin === null) {
+                alert("비회원은 해당 기능을 이용하실 수 없습니다.")
             } else if (isUserLogin.create_account_approval === 'N' && isUserLogin.user_auth === 'company') {
                 alert("가입 승인 중 입니다. 해당 기능을 이용하실 수 없습니다.")
+            } else if (isUserLogin.user_auth === 'common') {
+                alert("일반 회원은 해당 기능을 이용하실 수 없습니다.")
             } else if (isUserLogin.create_account_approval === 'Y' && isUserLogin.user_auth === 'company') {
                 if (this.userCompanyId != item.company_id) {
                     if (confirm(item.company_nm + "에게 PICK 신청을 하시겠습니까?")) {
Add a comment
List