index.vue 1.73 KB
<template>
  <div class="app-container">
    <el-tabs v-if="userStore.deptType == 1" v-model="data.currTab" type="border-card">
      <el-tab-pane label="月度" name="month">
        <level-one-month ref="lomRef" />
      </el-tab-pane>
      <el-tab-pane label="年度" name="year">
        <level-one-year ref="loyRef" />
      </el-tab-pane>
    </el-tabs>

    <div v-if="userStore.deptType == 2">
      <el-tabs v-if="userStore.deptType == 2" v-model="data.currTab" type="border-card">
        <el-tab-pane label="月度" name="month">
          <level-two-month ref="ltmRef" />
        </el-tab-pane>
        <el-tab-pane label="年度" name="year">
          <level-two-year ref="ltyRef" />
        </el-tab-pane>
      </el-tabs>
      <!--      <level-two-month ref="ltmRef" />-->
    </div>
  </div>
</template>

<script setup>
import LevelOneMonth from './levelOneMonth'
import LevelOneYear from './levelOneYear'
import LevelTwoYear from './levelTwoYear.vue.vue'
import LevelTwoMonth from './levelTwoMonth'
import { onMounted, reactive, shallowRef, watch } from 'vue'
import useUserStore from '@/store/modules/user'

const userStore = useUserStore()

const data = reactive({
  currTab: ''
})
const lomRef = shallowRef(null)
const loyRef = shallowRef(null)
const ltmRef = shallowRef(null)
const ltyRef = shallowRef(null)


onMounted(() => {
  data.currTab = 'month'
})

watch(() => data.currTab, (val) => {
  switch (val) {
    case 'month':
      if (userStore.deptType == 1) {
        lomRef.value.init()
      } else {
        ltmRef.value.init()
      }
      break
    case 'year':
      if (userStore.deptType == 1) {
        loyRef.value.init()
      } else {
        ltyRef.value.init()
      }
      break
  }
})

</script>

<style scoped>

</style>