하관우 하관우 03-24
2025-03-24 하관우 메뉴 클릭스 조히수 증가가
@4a81122d7ccc843ffb6284f14252e3e956361c9d
client/resources/api/main.js
--- client/resources/api/main.js
+++ client/resources/api/main.js
@@ -8,4 +8,9 @@
 // 통합 검색
 export const findAllDatas = (searchReqDTO) => {
   return apiClient.get(`/main/findAllDatas.json`, { params: searchReqDTO });
-}
(파일 끝에 줄바꿈 문자 없음)
+}
+
+// HEADER에 있는 메뉴 클릭스 조회수 증가
+export const updateStatsByMenuId = (menuId) => {
+  return apiClient.put(`/stats/${menuId}/updateStatsByMenuId.json`);
+}
client/views/layout/Header.vue
--- client/views/layout/Header.vue
+++ client/views/layout/Header.vue
@@ -8,13 +8,19 @@
             <div class="nav-wrap">
                 <nav>
                     <ul>
-                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'">기록물</li>
-                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'">언론에서 바라본 구미시</li>
-                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'">회원관리</li>
-                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'">카테고리 관리</li>
+                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'"
+                            @click="updateMenuStats('MENU_00000001')">기록물</li>
+                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'"
+                            @click="updateMenuStats('MENU_00000004')">언론에서 바라본 구미시</li>
+                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'"
+                            @click="updateMenuStats('MENU_00000007')">회원관리</li>
+                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_ADMIN'"
+                            @click="updateMenuStats('MENU_00000008')">카테고리 관리</li>
 
-                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_USER'">기록물</li>
-                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_USER'">언론에서 바라본 구미시</li>
+                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_USER'"
+                            @click="updateMenuStats('MENU_00000001')">기록물</li>
+                        <li v-if="$store.state.roles[0]?.authority === 'ROLE_USER'"
+                            @click="updateMenuStats('MENU_00000004')">언론에서 바라본 구미시</li>
                     </ul>
                 </nav>
             </div>
@@ -37,6 +43,7 @@
 </template>
 <script>
 import { logOutProc } from "../../resources/api/user"
+import { updateStatsByMenuId } from "../../resources/api/main"
 export default {
     data() {
         return {
@@ -45,6 +52,16 @@
         };
     },
     methods: {
+        async updateMenuStats(menuId) {
+            try {
+                const response = await updateStatsByMenuId(menuId);
+                if (response.status === 200) {
+                    console.log(`메뉴 ID ${menuId} 통계 업데이트 성공`);
+                }
+            } catch (error) {
+                console.error(`메뉴 ID ${menuId} 통계 업데이트 중 오류:`, error);
+            }
+        },
         logout() {
             // 백엔드 로그아웃 API 호출
             logOutProc()
Add a comment
List