import OHeader from '@/components/o-header' import OSticky from '@/components/o-sticky' import request from '@/helpers/request' import { state } from '@/state' import { Button, Cell, CellGroup, Picker, Popup, Tab, Tabs } from 'vant' import { defineComponent, nextTick, onMounted, reactive, ref } from 'vue' import styles from './index.module.less' import iconOrchestra from './images/icon-or.png' import MyClass from './my-class' import OEmpty from '@/components/o-empty' import OFullRefresh from '@/components/o-full-refresh' import OrchestraDeeds from './orchestra-deeds' import MyPhoto from './my-photo' import { useRoute, useRouter } from 'vue-router' export default defineComponent({ name: 'my-orchestra', setup(props, ctx) { const route = useRoute() const router = useRouter() const tabActive = ref<'course' | 'photo' | 'deeds'>((route.query as any)?.tab || 'course') const data = reactive({ orchestraList: [] as any[], loading: true, reshLoading: false }) const modelData = reactive({ orchestra: {} as any, orchestraStatus: false }) /** 学生获取我的乐团 */ const getStudentOrchestras = () => { data.loading = true request .post(`${state.platformApi}/orchestra/studentOrchestra`, { // hideLoading: data.reshLoading }) .then((res: any) => { if (Array.isArray(res?.data)) { data.orchestraList = res.data.map((n: any) => { return { ...n, name: n.name || n.orchestraName || '', id: n.id || n.orchestraId || '' } }) modelData.orchestra = data.orchestraList[0] || {} } }) .finally(() => { setTimeout(() => { data.loading = false }, 300) }) } const getTeacherOrchestras = async () => { data.loading = true request .post(`${state.platformApi}/orchestra/teacherOrchestra`, { // hideLoading: data.reshLoading }) .then((res: any) => { if (Array.isArray(res?.data)) { data.orchestraList = res.data.map((n: any) => { return { ...n, name: n.name || n.orchestraName || '', id: n.id || n.orchestraId || '' } }) modelData.orchestra = data.orchestraList[0] || {} } }) .finally(() => { setTimeout(() => { data.loading = false }, 300) }) } const getData = () => { if (state.platformType === 'STUDENT') { getStudentOrchestras() } else if (state.platformType === 'TEACHER') { getTeacherOrchestras() } } onMounted(() => { document.documentElement.style.setProperty('--footer-height', '0px') getData() }) return () => (