ZhangXianQiang
2024-07-04 fe55031f7f22ebb222d55bcc0b70ecf995869d12
feat:主页数据
2个文件已修改
1个文件已添加
92 ■■■■■ 已修改文件
src/api/modules/home.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/modules/meet.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/home/components/info-data/index.vue 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/modules/home.js
New file
@@ -0,0 +1,6 @@
import service from "@/api";
export const getHomeData = () => {
  return service.get('/api/student/home');
}
src/api/modules/meet.js
@@ -4,3 +4,7 @@
export const getMeetList = (getData = {meetName: '', status: ''}) => {
  return service.get('/api/student/meet/page', {params: getData});
};
export const classMeet = () => {
}
src/views/home/components/info-data/index.vue
@@ -8,37 +8,28 @@
    <el-row class="mb-5" :gutter="20">
      <el-col :span="6">
      <el-col :span="8">
        <div class="data-item flex flex-col items-center">
          <div class="data-num">
            <span class="text-num">123</span>
            <span class="text-num">{{ planeInfo.studyTime }}</span>
            <span>小时</span>
          </div>
          <div class="data-label">已学小时</div>
        </div>
      </el-col>
      <el-col :span="6">
      <el-col :span="8">
        <div class="data-item flex flex-col items-center">
          <div class="data-num">
            <span class="text-num">123</span>
            <span class="text-num">{{ planeInfo.meetCount }}</span>
            <span>节</span>
          </div>
          <div class="data-label">本周课程</div>
          <div class="data-label">已学课程</div>
        </div>
      </el-col>
      <el-col :span="6">
      <el-col :span="8">
        <div class="data-item flex flex-col items-center">
          <div class="data-num">
            <span class="text-num">123</span>
            <span>节</span>
          </div>
          <div class="data-label">本周已学课程</div>
        </div>
      </el-col>
      <el-col :span="6">
        <div class="data-item flex flex-col items-center">
          <div class="data-num">
            <span class="text-num">123</span>
            <span class="text-num">{{ planeInfo.scoreAverage }}</span>
            <span>分</span>
          </div>
          <div class="data-label">考试平均分</div>
@@ -48,9 +39,9 @@
    <el-row class="mb-5" :gutter="40">
      <el-col :span="12">
        <div class="title text-lg font-bold">我的课表</div>
        <div class="title text-lg font-bold">本周课程</div>
        <div class="table-container">
          <el-table :data="classList" height="500">
          <el-table :data="planeInfo.meetList" height="500" empty-text="暂无数据">
            <el-table-column prop="date" label="课程时间"/>
            <el-table-column prop="name" label="课程名称" />
          </el-table>
@@ -60,9 +51,9 @@
      <el-col :span="12">
        <div class="title text-lg font-bold">我的考试</div>
        <div class="table-container">
          <el-table :data="classList" height="500">
            <el-table-column prop="date" label="课程时间"/>
            <el-table-column prop="name" label="课程名称" />
          <el-table :data="planeInfo.examList" height="500" empty-text="暂无数据">
            <el-table-column prop="startTime" label="课程时间" />
            <el-table-column prop="examName" label="课程名称" />
          </el-table>
        </div>
      </el-col>
@@ -72,37 +63,26 @@
<script setup>
import {ref} from 'vue';
import { getHomeData } from '@/api/modules/home.js';
 const classList = ref([
  {
    date: '2021-08-01',
    name: '语文'
  },
  {
    date: '2021-08-01',
    name: '语文'
  },
  {
    date: '2021-08-01',
    name: '语文'
  },
  {
    date: '2021-08-01',
    name: '语文'
  },
  {
    date: '2021-08-01',
    name: '语文'
  },
  {
    date: '2021-08-01',
    name: '语文'
  },
  {
    date: '2021-08-01',
    name: '语文'
  },
 ])
const planeInfo = ref({
  meetList: [],
  examList: [],
  lastTime: 0,
  scoreAverage: 0,
  studyTime: 0,
  meetCount: 0
})
const getData = () => {
  getHomeData().then(res => {
    planeInfo.value = res.data.data;
  }).catch(error => {
    console.error(error);
  });
};
getData();
</script>