马宇豪
2025-03-07 db905ecd14f63dba9337b4f4715584ef2d7e8c7e
src/views/onlineEducation/count/components/studentList.vue
@@ -8,30 +8,40 @@
    :before-close="handleClose"
  >
    <el-table
      height="250"
      :data="learningTable"
      style="width: 100%;">
      <el-table-column
        prop="name"
        label="姓名"
        align="center"
      >
      </el-table-column>
      <el-table-column
        label="身份证号"
        prop="idcard"
        width="160" :show-overflow-tooltip="true">
        align="center"
        width="180" :show-overflow-tooltip="true">
      </el-table-column>
      <el-table-column
        prop="lessonTocal"
        label="总学时"
        align="center"
      >
        <template #default="scope">
          {{type == 'batch' ? scope.row.batchLessonNum : scope.row.courseLessonNum}}
        </template>
      </el-table-column>
      <el-table-column
        prop="lessonNum"
        label="已学学时"
        align="center"
      ></el-table-column>
      <el-table-column
        prop="finishStatus"
        label="是否已结束培训"
        width="175"
        align="center"
      >
        <template #default="scope">
          {{scope.row.finishStatus == 0 ? '未结束' : '已结束'}}
@@ -49,6 +59,17 @@
          >查看学时报告</el-button>
        </template>
      </el-table-column>
      <el-table-column label="未达标短信提醒" align="center" class-name="small-padding fixed-width">
        <template #default="scope">
          <el-button
            v-if="scope.row.finishStatus == 0"
            size="mini"
            type="text"
            style="color: #1890ff"
            @click="sendMessage(scope.row)"
          >短信提醒</el-button>
        </template>
      </el-table-column>
    </el-table>
<!--    <pagination-->
<!--      v-show="total>0"-->
@@ -63,7 +84,7 @@
<script >
import lessonReport from '@/views/onlineEducation/studentSupervision/compontents/lessonReport.vue'
import { studentDetail } from '@/api/onlineEducation/student'
import { sendMessage, studentCourseDetail, studentDetail } from '@/api/onlineEducation/student'
import { listCourse } from '@/api/onlineEducation/course'
export default {
  name: 'addUser',
@@ -76,9 +97,11 @@
      dialogStatus: '',
      dataForm: {},
      uuid: '',
      total: 2,
      total: 0,
      type: '',
      queryParams: {
        pageIndex: 1,
        pageSize: 10
      },
      learningTable: [
        {
@@ -107,14 +130,27 @@
  methods: {
    getList() {
      this.loading = true;
      studentDetail( this.uuid).then((res) => {
        if (res.code == 200) {
          this.learningTable = res.data
          this.loading = false;
        }
      })
      if(this.type === 'course'){
        studentCourseDetail( this.uuid).then((res) => {
          if (res.code == 200) {
            this.learningTable = res.data
            this.loading = false;
            // this.total = res.data.total
          }
        })
      }else {
        studentDetail( this.uuid).then((res) => {
          if (res.code == 200) {
            this.learningTable = res.data
            this.loading = false;
            // this.total = res.data.total
          }
        })
      }
    },
    openDialog (data) {
    openDialog (data,type) {
      this.type = type;
      this.uuid = data.uuid;
      this.getList();
      this.dialogVisible = true;
@@ -126,6 +162,30 @@
    },
    viewLessonReport(data){
      this.$refs.lessonRef.openDialog(data)
    },
    sendMessage(row){
      this.$confirm('此操作将向该学员发送短信, 是否继续?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(async () => {
        sendMessage(row.idcard).then((res) => {
          if (res.code == 200) {
            this.$message({
              message: '发送成功',
              type: 'success'
            })
            this.handleClose()
          }else {
            this.$message({
              message: res.msg,
              type: 'warning'
            })
          }
        })
      }).catch(() => {
      });
    }
  }
}