<template>
  <div class="subPage">
    <div class="list flex-h">
      <div class="flex-item">
        <div style="text-align:right;margin: 20px 0 0;border:none;">
          <el-button
            size="mini"
            type="warning"
            @click="reback">返回</el-button>
        </div>
        <div v-if="(courses.list||[]).length>0">
          <el-table
              :data="courses.list"
              stripe
              style="width: 100%">
              <el-table-column
                prop="CaseName"
                label="所在案场">
              </el-table-column>
              <el-table-column
                prop="LocationName"
                label="课程分类">
              </el-table-column>
              <el-table-column
                prop="CourseName"
                label="课程名称">
              </el-table-column>
              <el-table-column
                prop="DetailName"
                label="课时名称">
              </el-table-column>
              <el-table-column
                prop="StartDate"
                label="课程开始时间">
                <template slot-scope="scope">
                  <span>{{toolClass.dateFormat(scope.row.StartDate)}}</span>
                </template>
              </el-table-column>
              <el-table-column
                prop="EndDate"
                label="课程结束时间">
                <template slot-scope="scope">
                  <span>{{toolClass.dateFormat(scope.row.EndDate)}}</span>
                </template>
              </el-table-column>
              <el-table-column
                label="操作">
                <template slot-scope="scope">
                  <el-button
                    size="mini"
                    type="success"
                    v-if="scope.row.VerifyStatus!=='used'"
                    @click="check(scope.row)">核销</el-button>
                  <span>已完成</span>
                </template>
              </el-table-column>
            </el-table>
        </div>
        <span class="noData" v-else>今日暂无可核销的课程</span>
      </div>
    </div>
  </div>
</template>

<script>
import { createNamespacedHelpers } from 'vuex'

const { mapState: mapVerifState, mapActions: mapVerifActions } = createNamespacedHelpers('verification')

export default {
  name: '',
  data () {
    return {
      code: '',
    }
  },
  mounted () {
    const { code } = this.$route.query
    this.code = code
    this.$nextTick(function () {
      this.getList()
    })
  },
  computed: {
    ...mapVerifState({
      courses: x => x.courseVerifs
    })
  },
  methods: {
    ...mapVerifActions([
      'GetCourseVerList',
      'CourseVerifs',
    ]),
    check (item) { // 核销
      this.$confirm('确认核销此课程?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      })
        .then(() => {
          this.CourseVerifs({id: item.CustomerDetailId, callback: this.afterCheck})
        })
    },
    getList () {
      this.GetCourseVerList({id: this.code})
    },
    afterCheck () {
      this.$message({
        type: 'success',
        message: '操作成功!'
      })
      this.getList()
    },
    reback () { // 返回
      this.$router.push({name: 'qrcodeVerification'})
    },
  }
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style lang="scss" scoped>
.subPage {
  .list {
    > div {
      margin: 0 20px;
      > div {
        width: 100%;
        position: relative;
        overflow: hidden;
        box-sizing: border-box;
        border: 1px solid #eee;
        border-bottom: none;
        margin-top: 20px;
      }
    }
  }
  .noData{
    width: 100%;
    display: block;
    line-height: 40px;
    font-size: 30px;
    color: #ccc;
    text-align: center;
    margin: 40px auto 0;
  }
}
</style>
