index11.vue 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <template>
  2. <div class="m-container">
  3. <h2>
  4. <div class="squrt"></div>
  5. 系统日志
  6. </h2>
  7. <div class="m-core">
  8. <location-hash v-model="activeIndex" @change="handleClick">
  9. <el-tabs
  10. type="border-card"
  11. v-model.trim="activeIndex"
  12. @tab-click="handleClick"
  13. >
  14. <el-tab-pane
  15. label="系统通知" lazy
  16. v-if="permissionList.journalItem"
  17. name="0"
  18. >
  19. <item v-if="activeIndex == 0" />
  20. </el-tab-pane>
  21. <el-tab-pane
  22. label="学员申诉" lazy
  23. v-if="permissionList.studentComplain"
  24. name="1"
  25. >
  26. <studentComplain v-if="activeIndex == 1" />
  27. </el-tab-pane>
  28. <el-tab-pane
  29. label="退团退课" lazy
  30. v-if="permissionList.musicGroupCourse"
  31. name="2"
  32. >
  33. <musicGroup v-if="activeIndex == 2" />
  34. </el-tab-pane>
  35. <el-tab-pane
  36. label="请假处理" lazy
  37. v-if="permissionList.leaveOperation"
  38. name="3"
  39. >
  40. <leaveOperation v-if="activeIndex == 3" />
  41. </el-tab-pane>
  42. <el-tab-pane
  43. label="VIP申请审核" lazy
  44. v-if="permissionList.vipApply"
  45. name="4"
  46. >
  47. <vipApply v-if="activeIndex == 4" />
  48. </el-tab-pane>
  49. </el-tabs>
  50. </location-hash>
  51. </div>
  52. </div>
  53. </template>
  54. <script>
  55. import item from "./journalItem";
  56. import studentComplain from "./studentComplain";
  57. import musicGroup from "./musicGroup";
  58. import leaveOperation from "./leaveOperation";
  59. import vipApply from "./vipApply";
  60. import { permission } from "@/utils/directivePage";
  61. export default {
  62. components: {
  63. item,
  64. studentComplain,
  65. musicGroup,
  66. leaveOperation,
  67. vipApply
  68. },
  69. name: "journal",
  70. data() {
  71. const query = this.$route.query
  72. return {
  73. activeIndex: query.opt || "0",
  74. permissionList: {
  75. journalItem: permission("/journalItem"),
  76. studentComplain: permission("/studentComplain"),
  77. musicGroupCourse: permission("/musicGroupCourse"),
  78. leaveOperation: permission("/leaveOperation"),
  79. vipApply: permission("/vipApply")
  80. }
  81. };
  82. },
  83. methods: {
  84. handleClick(val) {
  85. this.activeIndex = val.name;
  86. }
  87. }
  88. };
  89. </script>
  90. <style lang="scss" scoped></style>