default.vue 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. <template>
  2. <v-app>
  3. <div class="container">
  4. <headerLayout />
  5. <div class="content">
  6. <aside>
  7. <h2 class="aside--main--title">{{ useDtStore.menuInfo.pageRtName }}</h2>
  8. <div class="aside--list" v-show="useDtStore.menuInfo.menuId == 'menu01'">
  9. <v-btn
  10. class="custom-btn"
  11. :class="{ actv: useDtStore.menuInfo.menuIndex == '0' }"
  12. @click="subMenuActv(0, '/view/mng', 'menu01', '관리자 관리')"
  13. >-관리자 리스트</v-btn
  14. >
  15. <v-btn
  16. class="custom-btn"
  17. :class="{ actv: useDtStore.menuInfo.menuIndex == '1' }"
  18. @click="subMenuActv(1, '/view/mng/mngListDeleted', 'menu01', '관리자 관리')"
  19. >-삭제 관리자</v-btn
  20. >
  21. </div>
  22. <div class="aside--list" v-show="useDtStore.menuInfo.menuId === 'menu02'">
  23. <v-btn
  24. class="custom-btn"
  25. :class="{ actv: useDtStore.menuInfo.menuIndex == '0' }"
  26. @click="subMenuActv(0, '/view/event/evtList', 'menu02', '이벤트 관리')"
  27. >-전체 이벤트</v-btn
  28. >
  29. <v-btn
  30. class="custom-btn"
  31. :class="{ actv: useDtStore.menuInfo.menuIndex == '1' }"
  32. @click="
  33. subMenuActv(1, '/view/event/evtListPending', 'menu02', '이벤트 관리')
  34. "
  35. >-대기중 이벤트</v-btn
  36. >
  37. <v-btn
  38. class="custom-btn"
  39. :class="{ actv: useDtStore.menuInfo.menuIndex == '2' }"
  40. @click="
  41. subMenuActv(2, '/view/event/evtListOngoing', 'menu02', '이벤트 관리')
  42. "
  43. >-진행중 이벤트</v-btn
  44. >
  45. <v-btn
  46. class="custom-btn"
  47. :class="{ actv: useDtStore.menuInfo.menuIndex == '3' }"
  48. @click="
  49. subMenuActv(3, '/view/event/evtListClosed', 'menu02', '이벤트 관리')
  50. "
  51. >-마감된 이벤트</v-btn
  52. >
  53. <!-- <v-btn
  54. class="custom-btn"
  55. :class="{ actv: subActv == '1' }"
  56. @click="subMenuActv(1, '/view/media/pressKitlist', 'menu02', '이벤트 관리')"
  57. >-보도자료</v-btn
  58. > -->
  59. </div>
  60. <div class="aside--list" v-show="useDtStore.menuInfo.menuId == 'menu03'">
  61. <v-btn
  62. class="custom-btn"
  63. :class="{ actv: useDtStore.menuInfo.menuIndex == '0' }"
  64. @click="subMenuActv(0, '/view/winner', 'menu03', '당첨자 관리', 1)"
  65. >-진행중 이벤트</v-btn
  66. >
  67. <v-btn
  68. class="custom-btn"
  69. :class="{ actv: useDtStore.menuInfo.menuIndex == '1' }"
  70. @click="subMenuActv(1, '/view/winner', 'menu03', '당첨자 관리', 2)"
  71. >-마감된 이벤트</v-btn
  72. >
  73. </div>
  74. </aside>
  75. <NuxtPage class="main" />
  76. </div>
  77. <!-- <footerLayout /> -->
  78. </div>
  79. </v-app>
  80. </template>
  81. <script setup>
  82. import headerLayout from "@/components/common/header";
  83. /************************************************************************
  84. | 전역
  85. ************************************************************************/
  86. const { $dayjs, $log, $eventBus, $toast } = useNuxtApp();
  87. let pageId = "defaultLayout";
  88. const menuActive = ref("");
  89. const router = useRouter();
  90. const subActv = ref("");
  91. /************************************************************************
  92. | 스토어
  93. ************************************************************************/
  94. const useDtStore = useDetailStore();
  95. /************************************************************************
  96. | 함수 : 세팅
  97. ************************************************************************/
  98. const subMenuActv = (__IDX, __URL, __MENU_ID, __PAGE_RT_NAME, __PAGE_STATUS) => {
  99. useDtStore.menuInfo.menuIndex = __IDX;
  100. useDtStore.menuInfo.menuId = __MENU_ID;
  101. useDtStore.menuInfo.pageRtName = __PAGE_RT_NAME;
  102. useDtStore.menuInfo.pageStatus = __PAGE_STATUS;
  103. router.push({
  104. path: __URL,
  105. });
  106. };
  107. /************************************************************************
  108. | 스코핑 : INIT
  109. | *scoped에 유의하여 세팅
  110. ************************************************************************/
  111. onMounted(() => {});
  112. </script>