From bf4bee68b9d6406a9d30d559d9f426055acc1846 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期五, 28 六月 2024 17:30:11 +0800
Subject: [PATCH] 修改

---
 src/views/onlineEducation/courseSupervision/index.vue |    2 
 src/views/onlineEducation/realtimeStatus/index.vue    |  276 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 277 insertions(+), 1 deletions(-)

diff --git a/src/views/onlineEducation/courseSupervision/index.vue b/src/views/onlineEducation/courseSupervision/index.vue
index 35b5794..63d6bc2 100644
--- a/src/views/onlineEducation/courseSupervision/index.vue
+++ b/src/views/onlineEducation/courseSupervision/index.vue
@@ -145,7 +145,7 @@
       this.queryParams = {
         pageIndex: 1,
         pageSize: 10,
-        platform: ''
+        institutionId: ''
       }
       this.getList();
     },
diff --git a/src/views/onlineEducation/realtimeStatus/index.vue b/src/views/onlineEducation/realtimeStatus/index.vue
new file mode 100644
index 0000000..8557bf3
--- /dev/null
+++ b/src/views/onlineEducation/realtimeStatus/index.vue
@@ -0,0 +1,276 @@
+<template>
+  <div class="app-container">
+    <div style="display: flex">
+      <div>
+        <span style="font-size: 14px;margin-right:10px">学员身份证号:</span>
+        <el-input v-model="queryParams.idcard" style="width: 200px" placeholder="请输入学员身份证号" clearable></el-input>
+          <span style="font-size: 14px;margin: 0 20px">平台:</span>
+        <el-select v-model="queryParams.institutionId" placeholder="请选择平台" clearable>
+          <el-option
+            v-for="item in platformList"
+            :key="item.id"
+            :label="item.institutionalName"
+            :value="item.id">
+          </el-option>
+        </el-select>
+        <el-button
+          size="small"
+          type="primary"
+          style="margin-bottom: 10px;margin-left: 20px"
+          @click="handleQuery()"
+        >查询实时进度</el-button>
+        <el-button
+          size="small"
+          type="primary"
+          style="margin-bottom: 10px"
+          @click="resetQuery()"
+        >重置</el-button>
+      </div>
+    </div>
+<!--    查询数据-->
+    <div style="margin: 30px 20%" >
+      <div  style="display: flex;align-items: center;margin-bottom: -15px" >
+        <span style="font-size: 20px;font-weight: 550">姓名:</span>
+        <span style="font-size: 18px;margin-right: 60px">{{dataList[0].name}}</span>
+        <span style="font-size: 20px;font-weight: 550">查询平台:</span>
+        <span style="font-size: 18px">{{dataList[0].institutionalName}}</span>
+      </div>
+      <el-divider></el-divider>
+      <div v-for="(item,index) in dataList" :key="index" v-if="dataList && dataList.length>0">
+        <div v-for="(batch,index) in item.batchList" :key="index">
+          <div  style="display: flex;align-items: center;margin-bottom: -15px" >
+            <span style="font-size: 20px">班级(批次):</span>
+            <span style="font-size: 18px;margin-right: 60px">{{batch.batchName}}</span>
+            <span style="font-size: 20px">创建时间:</span>
+            <span style="font-size: 18px">{{batch.createTime}}</span>
+          </div>
+          <div v-for="(course,index) in batch.courseList" :key="index" style="margin-top: 40px;margin-bottom: 50px">
+            <div style="margin-bottom: -15px;display: flex;justify-content: space-between"  >
+              <div style="display: flex;align-items: center;">
+                <span style="font-size: 20px">课程名称:</span>
+                <span style="font-size: 18px;margin-right: 60px">{{course.courseName}}</span>
+                <span style="font-size: 20px">总学时:</span>
+                <span style="font-size: 18px;margin-right: 60px">{{course.lessonNum}}</span>
+                <span style="font-size: 20px">当前学时:</span>
+                <span style="font-size: 18px;margin-right: 60px">{{course.duration}}</span>
+              </div>
+              <el-progress :percentage="course.durationRate" style="width: 250px" ></el-progress>
+            </div>
+            <div v-for="(chapter,index) in course.chapterList" :key="index" style="margin-top: 50px;margin-left: 40px;">
+              <div style="margin-bottom: -15px;display: flex;justify-content: space-between"  >
+                <div  style="display: flex;align-items: center" >
+                  <span style="font-size: 16px;margin-right: 60px">{{chapter.chapterName}}</span>
+                  <span style="font-size: 16px">总时长:</span>
+                  <span style="font-size: 16px;margin-right: 60px">{{chapter.lessonTocal}}</span>
+                  <span style="font-size: 16px"> 已学时长:</span>
+                  <span style="font-size: 16px">{{chapter.lessonNum}}</span>
+                </div>
+                <span v-if="chapter.lessonTocal == chapter.lessonNum " style="color: #13ce66">[已完成]</span>
+                <span v-else style="color: #1890ff">[学习中]</span>
+              </div>
+            </div>
+          </div>
+        </div>
+        <el-divider></el-divider>
+      </div>
+      <el-empty description="暂无数据" style="margin-top: 10%" v-else></el-empty>
+      <pagination
+        v-show="total>0"
+        :total="total"
+        :page.sync="queryParams.pageIndex"
+        :limit.sync="queryParams.pageSize"
+        @pagination="getList"
+      />
+    </div>
+
+  </div>
+</template>
+
+<script>
+import courseDialog from '@/views/onlineEducation/courseSupervision/components/courseDialog.vue'
+import studentList from '@/views/onlineEducation/count/components/studentList.vue'
+import { delJobRegist } from '@/api/coalMine/jobRegist'
+import { listPlat, listPlatSelect } from '@/api/onlineEducation/plat'
+import { listCourse } from '@/api/onlineEducation/course'
+export default {
+  name: "nPeopleManage",
+  dicts: [],
+  components: { courseDialog,studentList},
+  data() {
+    return {
+      total: 2,
+      platformList: [],
+      dataList: [],
+      queryParams: {
+        pageIndex: 1,
+        pageSize: 10,
+        institutionId: '',
+        idcard: ''
+      },
+    };
+  },
+  created() {
+    this.getPlat();
+    this.getList();
+  },
+  methods: {
+    getList(){
+      this.dataList = [
+        {
+          id: null,
+          idcard: '11111',
+          name: '李四',
+          institutionalName: '链工宝',
+          batchList: [
+            {
+              batchName: 'xxxx',
+              createTime: 'xxxx',
+              courseList: [
+                {
+                  courseName: 'xx',
+                  lessonNum: 100,
+                  duration: 90,
+                  durationRate: 90,
+                  chapterList: [
+                    {
+                      chapterName: '第5章:章节名称',
+                      lessonTocal: 20,
+                      lessonNum: 10
+                    },
+                    {
+                      chapterName: '第1章:章节名称',
+                      lessonTocal: 80,
+                      lessonNum: 80
+                    },
+                  ]
+                },
+                {
+                  courseName: 'xx',
+                  lessonNum: 100,
+                  duration: 90,
+                  durationRate: 90,
+                  chapterList: [
+                    {
+                      chapterName: '第5章:章节名称',
+                      lessonTocal: 20,
+                      lessonNum: 10
+                    },
+                    {
+                      chapterName: '第1章:章节名称',
+                      lessonTocal: 80,
+                      lessonNum: 80
+                    },
+                  ]
+                }
+              ]
+            }
+          ]
+        },
+        {
+          id: null,
+          idcard: '11111',
+          name: '李四',
+          institutionalName: '链工宝',
+          batchList: [
+            {
+              batchName: 'xxxx',
+              createTime: 'xxxx',
+              courseList: [
+                {
+                  courseName: 'xx',
+                  lessonNum: 100,
+                  duration: 90,
+                  durationRate: 90,
+                  chapterList: [
+                    {
+                      chapterName: '第5章:章节名称',
+                      lessonTocal: 20,
+                      lessonNum: 10
+                    },
+                    {
+                      chapterName: '第1章:章节名称',
+                      lessonTocal: 80,
+                      lessonNum: 80
+                    },
+                  ]
+                },
+                {
+                  courseName: 'xx',
+                  lessonNum: 100,
+                  duration: 90,
+                  durationRate: 90,
+                  chapterList: [
+                    {
+                      chapterName: '第5章:章节名称',
+                      lessonTocal: 20,
+                      lessonNum: 10
+                    },
+                    {
+                      chapterName: '第1章:章节名称',
+                      lessonTocal: 80,
+                      lessonNum: 80
+                    },
+                  ]
+                }
+              ]
+            }
+          ]
+        }
+      ]
+      // listCourse( this.queryParams).then((res) => {
+      //   if (res.code == 200) {
+      //     this.expertList = res.rows.map(item => {
+      //       return {
+      //         ...item,
+      //         courseNum: item.outline ? item.outline.length : ''
+      //       }
+      //     })
+      //   }
+      // })
+    },
+    openUrl(url) {
+      window.open(url,'_blank')
+    },
+    getPlat() {
+      listPlatSelect().then((res) => {
+        if (res.code == 200) {
+          this.platformList = res.data
+        }
+      })
+
+    },
+    handleChange(){
+
+    },
+    handleQuery(){
+      this.getList();
+
+    },
+    resetQuery(){
+      this.queryParams = {
+        pageIndex: 1,
+        pageSize: 10,
+        institutionId: '',
+        idcard: ''
+      }
+      this.getList();
+    },
+    handleViewCourse(data){
+      this.$refs.courseDialogRef.openDialog(data);
+    },
+    openStudent(data) {
+      // this.$refs.studentDialog.openDialog(data);
+    },
+    check(val){
+      this.$confirm('此操作将审核该条数据, 是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(async () => {
+      }).catch(() => {
+
+      });
+    }
+  }
+};
+</script>

--
Gitblit v1.9.2