|
@@ -1,82 +1,210 @@
|
|
|
-import { defineComponent } from 'vue';
|
|
|
+import { defineComponent, onMounted, reactive, ref } from 'vue';
|
|
|
import styles from './index.module.less';
|
|
|
-import { Cell, CellGroup, Col, Row } from 'vant';
|
|
|
+import { Cell, CellGroup, Col, Picker, Popup, Row, Tab, Tabs } from 'vant';
|
|
|
import MSticky from '@/components/m-sticky';
|
|
|
import icon1 from './images/icon1.png';
|
|
|
import icon2 from './images/icon2.png';
|
|
|
import icon3 from './images/icon3.png';
|
|
|
import icon4 from './images/icon4.png';
|
|
|
import iconTimer from './images/icon-timer.png';
|
|
|
+import request from '@/helpers/request';
|
|
|
+import { useRoute } from 'vue-router';
|
|
|
|
|
|
export default defineComponent({
|
|
|
name: 'tenant-apply-data',
|
|
|
setup() {
|
|
|
+ const route = useRoute();
|
|
|
+ const tabName = ref('all');
|
|
|
+ const forms = reactive({
|
|
|
+ id: route.query.id,
|
|
|
+ classStatus: false,
|
|
|
+ classList: [] as any,
|
|
|
+ classStatus1: false,
|
|
|
+ classList1: [] as any
|
|
|
+ });
|
|
|
+
|
|
|
+ const getSchoolList = async () => {
|
|
|
+ try {
|
|
|
+ const { data } = await request.get('/edu-app/open/school/list', {
|
|
|
+ params: {
|
|
|
+ tenantId: forms.id
|
|
|
+ }
|
|
|
+ });
|
|
|
+ const temp = [
|
|
|
+ {
|
|
|
+ value: '',
|
|
|
+ text: '全部学校'
|
|
|
+ }
|
|
|
+ ];
|
|
|
+ if (Array.isArray(data)) {
|
|
|
+ data.forEach((item: any) => {
|
|
|
+ temp.push({
|
|
|
+ value: item.id,
|
|
|
+ text: item.name
|
|
|
+ });
|
|
|
+ });
|
|
|
+ forms.classList = temp;
|
|
|
+ forms.classList1 = temp;
|
|
|
+ }
|
|
|
+ } catch {
|
|
|
+ //
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
+ const getStat = async () => {
|
|
|
+ try {
|
|
|
+ // open/school/registerStat
|
|
|
+ } catch {
|
|
|
+ //
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
+ onMounted(async () => {
|
|
|
+ await getSchoolList();
|
|
|
+ });
|
|
|
return () => (
|
|
|
<div class={styles.tenantApplyData}>
|
|
|
- <MSticky>
|
|
|
- <Cell
|
|
|
- class={styles.searchSchool}
|
|
|
- title={'全部学校'}
|
|
|
- isLink
|
|
|
- arrowDirection="down"></Cell>
|
|
|
- </MSticky>
|
|
|
+ <Tabs v-model:active={tabName.value}>
|
|
|
+ <Tab title="数据总览" name={'all'}>
|
|
|
+ <Cell
|
|
|
+ class={styles.searchSchool}
|
|
|
+ title={'全部学校'}
|
|
|
+ isLink
|
|
|
+ arrowDirection="down"
|
|
|
+ onClick={() => (forms.classStatus = true)}></Cell>
|
|
|
|
|
|
- <div class={styles.statisticsGroup}>
|
|
|
- <Row gutter={12}>
|
|
|
- <Col span={12}>
|
|
|
- <div class={[styles.item, styles.item1]}>
|
|
|
- <p class={styles.price}>1,200,000.00</p>
|
|
|
- <p class={styles.text}>
|
|
|
- <img src={icon1} class={styles.icon} />
|
|
|
- 缴费总金额
|
|
|
- </p>
|
|
|
- </div>
|
|
|
- </Col>
|
|
|
- <Col span={12}>
|
|
|
- <div class={[styles.item, styles.item2]}>
|
|
|
- <p class={styles.price}>1,200,000.00</p>
|
|
|
- <p class={styles.text}>
|
|
|
- <img src={icon2} class={styles.icon} />
|
|
|
- 缴费总人数
|
|
|
- </p>
|
|
|
- </div>
|
|
|
- </Col>
|
|
|
- <Col span={12}>
|
|
|
- <div class={[styles.item, styles.item3]}>
|
|
|
- <p class={styles.price}>1,200,000.00</p>
|
|
|
- <p class={styles.text}>
|
|
|
- <img src={icon3} class={styles.icon} />
|
|
|
- 乐器购买人数
|
|
|
- </p>
|
|
|
- </div>
|
|
|
- </Col>
|
|
|
- <Col span={12}>
|
|
|
- <div class={[styles.item, styles.item4]}>
|
|
|
- <p class={styles.price}>1,200,000.00</p>
|
|
|
- <p class={styles.text}>
|
|
|
- <img src={icon4} class={styles.icon} />
|
|
|
- 学练工具购买人数
|
|
|
- </p>
|
|
|
- </div>
|
|
|
- </Col>
|
|
|
- </Row>
|
|
|
- </div>
|
|
|
-
|
|
|
- <div class={styles.buyList}>
|
|
|
- <CellGroup class={styles.buyItem}>
|
|
|
- <Cell>
|
|
|
- {{
|
|
|
- title: () => (
|
|
|
- <div>
|
|
|
- <img src={iconTimer} class={styles.iconTimer} />
|
|
|
- 2023/03/29 12:20:34
|
|
|
+ <div class={styles.statisticsGroup}>
|
|
|
+ <Row gutter={12}>
|
|
|
+ <Col span={12}>
|
|
|
+ <div class={[styles.item, styles.item1]}>
|
|
|
+ <p class={styles.price}>1,200,000.00</p>
|
|
|
+ <p class={styles.text}>
|
|
|
+ <img src={icon4} class={styles.icon} />
|
|
|
+ 缴费总金额
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </Col>
|
|
|
+ <Col span={12}>
|
|
|
+ <div class={[styles.item, styles.item1]}>
|
|
|
+ <p class={styles.price}>1,200,000.00</p>
|
|
|
+ <p class={styles.text}>
|
|
|
+ <img src={icon1} class={styles.icon} />
|
|
|
+ 缴费总人数
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </Col>
|
|
|
+ <Col span={12}>
|
|
|
+ <div class={[styles.item, styles.item3]}>
|
|
|
+ <p class={styles.price}>1,200,000.00</p>
|
|
|
+ <p class={styles.text}>
|
|
|
+ <img src={icon4} class={styles.icon} />
|
|
|
+ 乐器缴费金额
|
|
|
+ </p>
|
|
|
</div>
|
|
|
- ),
|
|
|
- value: () => <span>¥ 310.00</span>
|
|
|
- }}
|
|
|
- </Cell>
|
|
|
- </CellGroup>
|
|
|
- </div>
|
|
|
+ </Col>
|
|
|
+ <Col span={12}>
|
|
|
+ <div class={[styles.item, styles.item3]}>
|
|
|
+ <p class={styles.price}>1,200,000.00</p>
|
|
|
+ <p class={styles.text}>
|
|
|
+ <img src={icon2} class={styles.icon} />
|
|
|
+ 乐器购买人数
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </Col>
|
|
|
+ <Col span={12}>
|
|
|
+ <div class={[styles.item, styles.item4]}>
|
|
|
+ <p class={styles.price}>1,200,000.00</p>
|
|
|
+ <p class={styles.text}>
|
|
|
+ <img src={icon4} class={styles.icon} />
|
|
|
+ 学练工具缴费金额
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </Col>
|
|
|
+ <Col span={12}>
|
|
|
+ <div class={[styles.item, styles.item4]}>
|
|
|
+ <p class={styles.price}>1,200,000.00</p>
|
|
|
+ <p class={styles.text}>
|
|
|
+ <img src={icon3} class={styles.icon} />
|
|
|
+ 学练工具购买人数
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </Col>
|
|
|
+ </Row>
|
|
|
+ </div>
|
|
|
+ </Tab>
|
|
|
+ <Tab title="购买详情" name={'detail'}>
|
|
|
+ <Cell
|
|
|
+ class={styles.searchSchool}
|
|
|
+ title={'全部学校'}
|
|
|
+ isLink
|
|
|
+ arrowDirection="down"
|
|
|
+ onClick={() => (forms.classStatus1 = true)}></Cell>
|
|
|
+ <div class={styles.buyList}>
|
|
|
+ <CellGroup class={styles.buyItem}>
|
|
|
+ <Cell>
|
|
|
+ {{
|
|
|
+ title: () => (
|
|
|
+ <div class={styles.buyHeader}>
|
|
|
+ <span class={styles.buyTimer}>
|
|
|
+ <img src={iconTimer} class={styles.iconTimer} />
|
|
|
+ 2023/03/29 12:20:34
|
|
|
+ </span>
|
|
|
+ <span class={styles.buyPrice}>
|
|
|
+ <i>¥</i> 310.00
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ )
|
|
|
+ }}
|
|
|
+ </Cell>
|
|
|
+ <Cell>
|
|
|
+ {{
|
|
|
+ title: () => (
|
|
|
+ <div class={styles.contact}>
|
|
|
+ <span class={styles.b}>张丹丹</span>
|
|
|
+ <span class={styles.b}>武昌区武珞路第二小学</span>
|
|
|
+ </div>
|
|
|
+ ),
|
|
|
+ label: () => (
|
|
|
+ <div class={styles.buyContent}>
|
|
|
+ <span>购买内容</span>竖笛、乐器AI学练工具
|
|
|
+ </div>
|
|
|
+ )
|
|
|
+ }}
|
|
|
+ </Cell>
|
|
|
+ </CellGroup>
|
|
|
+ </div>
|
|
|
+ </Tab>
|
|
|
+ </Tabs>
|
|
|
+
|
|
|
+ <Popup
|
|
|
+ v-model:show={forms.classStatus}
|
|
|
+ position="bottom"
|
|
|
+ round
|
|
|
+ class={'popupBottomSearch'}>
|
|
|
+ <Picker
|
|
|
+ showToolbar
|
|
|
+ columns={forms.classList}
|
|
|
+ onCancel={() => (forms.classStatus = false)}
|
|
|
+ onConfirm={(val: any) => {
|
|
|
+ // const selectedOption = val.selectedOptions[0];
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ </Popup>
|
|
|
+
|
|
|
+ <Popup
|
|
|
+ v-model:show={forms.classStatus1}
|
|
|
+ position="bottom"
|
|
|
+ round
|
|
|
+ class={'popupBottomSearch'}>
|
|
|
+ <Picker
|
|
|
+ showToolbar
|
|
|
+ columns={forms.classList1}
|
|
|
+ onCancel={() => (forms.classStatus1 = false)}
|
|
|
+ onConfirm={(val: any) => {
|
|
|
+ // const selectedOption = val.selectedOptions[0];
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ </Popup>
|
|
|
</div>
|
|
|
);
|
|
|
}
|