<!-- 活动解析 -->
<template>
  <div>
    <!-- table 表格 -->
    <el-row :gutter="20" class="main-items">
      <el-col class="aside" :span="4" :offset="1" style="padding: 0 !important;">
        <div
          class="table-aside"
          v-for="(v, k) in ItemList"
          :key="k"
          :class="{active:k == modelindex}"
          @click="selectTitle(k)"
        >{{v.text}}</div>
      </el-col>
      <!--数据监控-->
      <el-col :span="18" class="main" v-if="modelindex == 0">
        <el-row :gutter="20" class="main-header">
          <el-col :span="2">
            <div class="main-header-item">在线：{{monitorTeacherList.onlineCount}}人</div>
          </el-col>
          <el-col :span="2">
            <div class="main-header-item">离线：{{monitorTeacherList.offlineCount}}人</div>
          </el-col>
          <el-col :span="4">
            <div class="main-header-item">
              <span>未分配批改作业：{{monitorTeacherList.unCorrectCount}}份</span>
              <a href class="main-header-link">去分配</a>
            </div>
          </el-col>
          <el-col :span="8" :offset="0">
            <el-input placeholder="请输入老师名字" v-model="filters.inputValue" class="input-with-select">
              <el-select
                v-model="filters.OptionsValue"
                @change="InfoWatch"
                slot="prepend"
                placeholder="选年级"
                minlength="20"
              >
                <el-option
                  v-for="(item, k) in options"
                  :key="k"
                  :label="item.label"
                  :value="item.label"
                ></el-option>
              </el-select>
              <el-select
                v-model="filters.gradesValue"
                @change="InfoWatch"
                slot="prepend"
                placeholder="选科目"
                minlength="20"
              >
                <el-option
                  v-for="(item, k) in grades"
                  :key="k"
                  :label="item.label"
                  :value="item.label"
                ></el-option>
              </el-select>
              <el-button  @click="InfoWatch" slot="append" icon="el-icon-search"></el-button>
            </el-input>
          </el-col>
            <div class="block">
              <el-date-picker v-model="filters.MaxtimeValue"  value-format="yyyy-MM-dd HH:mm:ss"  type="date" placeholder="选择日期"></el-date-picker>
            </div>
        </el-row>

        <el-row :gutter="20" class="main-header">
          <el-col :span="24">
            <div class="table">
              <div class="table-head">
                <div>头像</div>
                <div>姓名</div>
                <div>等待作业数</div>
                <div>作业最长等待时长</div>
                <div>累计批改时间</div>
                <div>响应速度</div>
                <div>状态</div>
              </div>
              <div class="tr" v-for="(v, k) of monitorTeacherList.list"
                             :key='k'>
                <div class="tr-first">
                  <div>
                    <i :class="[isDown?'el-icon-caret-bottom':'el-icon-caret-top']" @click="dropDown(k)"></i>
                    <img :src="BASE_URL + v.imgUrl" alt="" class="table-img">
                  </div>
                  <div>{{v.name}}</div>
                  <div>{{v.waitCount}}份</div>
                  <div class="tr-active">{{v.maxWaitTime}}</div>
                  <div>{{v.totalCorrectTime}}</div>
                  <div>{{v.respSpeed}}/份</div>
                  <div>{{v.status}}</div>
                </div>
                <div class="tr-second" v-if="isDownindex === k">
                      <div>1</div>
                      <div>
                        <span class="tr-second-check" @click="isShow(2)">查看</span>
                        <span>赵同学</span>
                      </div>
                      <div>等待 8:16</div>
                      <div>数学</div>
                      <div>二年级</div>
                      <div>未批改</div>
                      <div>
                        <el-button type="success" plain>去批改</el-button>
                        <el-button type="success">去分配</el-button>
                      </div>
                </div>
              </div>
            </div>
          </el-col>
        </el-row>

      </el-col>
      <!--当天-->
      <el-col :span="18" class="main" v-if="modelindex == 1">
        <el-row :gutter="20" class="main-header">
          <el-col :span="5">
            <div class="main-header-item" @click="isShow(1)">今日报错总次数:：6人</div>
          </el-col>
          <el-col :span="10" :offset="5">
              <el-input placeholder="请输入老师名字" v-model="filters1.inputValue" class="input-with-select">
              <el-select
                v-model="filters1.OptionsValue"
                @change="InfoWatch"
                slot="prepend"
                placeholder="选年级"
                minlength="20"
              >
                <el-option
                  v-for="(item, k) in options"
                  :key="k"
                  :label="item.label"
                  :value="item.label"
                ></el-option>
              </el-select>
              <el-select
                v-model="filters1.gradesValue"
                @change="InfoWatch"
                slot="prepend"
                placeholder="选科目"
                minlength="20"
              >
                <el-option
                  v-for="(item, k) in grades"
                  :key="k"
                  :label="item.label"
                  :value="item.label"
                ></el-option>
              </el-select>
              <el-button  @click="InfoWatch" slot="append" icon="el-icon-search"></el-button>
            </el-input>
          </el-col>
          <el-col :span="4">
            <i class="el-icon-d-arrow-left"></i>
            <span class="today-time">2019-02-04</span>
            <i class="el-icon-d-arrow-right"></i>
          </el-col>
        </el-row>
        <el-table :data="dataList" highlight-current-row size="mini" stripe>
          <el-table-column label="头像" header-align="center">
            <template scope="scope">
              <img :src="scope.row.img" alt class="table-img">
            </template>
          </el-table-column>
          <el-table-column prop="names" label="姓名" header-align="center"></el-table-column>
          <el-table-column prop="number" label="被报错" header-align="center"></el-table-column>
          <el-table-column prop="time" label="科目" header-align="center"></el-table-column>
          <el-table-column prop="allTime" label="批改总份数" header-align="center"></el-table-column>
          <el-table-column prop="rate" label="批改总张数" header-align="center"></el-table-column>
          <el-table-column prop="status" label="平均批改时间" header-align="center"></el-table-column>
          <el-table-column prop="status" label="出勤" header-align="center"></el-table-column>
        </el-table>
      </el-col>
      <!--当月-->
      <el-col :span="18" class="main" v-if="modelindex == 2">
        <el-row :gutter="20" class="main-header">
          <el-col :span="5">
            <div class="main-header-item" @click="isShow(1)">当月报错总次数：6人</div>
          </el-col>
          <el-col :span="10" :offset="5">
            <el-input placeholder="请输入老师名字" v-model="filters2.inputValue" class="input-with-select">
              <el-select
                v-model="filters2.OptionsValue"
                @change="InfoWatch"
                slot="prepend"
                placeholder="选年级"
                minlength="20"
              >
                <el-option
                  v-for="(item, k) in options"
                  :key="k"
                  :label="item.label"
                  :value="item.label"
                ></el-option>
              </el-select>
              <el-select
                v-model="filters2.gradesValue"
                @change="InfoWatch"
                slot="prepend"
                placeholder="选科目"
                minlength="20"
              >
                <el-option
                  v-for="(item, k) in grades"
                  :key="k"
                  :label="item.label"
                  :value="item.label"
                ></el-option>
              </el-select>
              <el-button  @click="InfoWatch" slot="append" icon="el-icon-search"></el-button>
            </el-input>
          </el-col>
          <el-col :span="4">
            <i class="el-icon-d-arrow-left"></i>
            <span class="today-time">2019-02-04</span>
            <i class="el-icon-d-arrow-right"></i>
          </el-col>
        </el-row>
        <el-table :data="dataList" highlight-current-row size="mini" stripe>
          <el-table-column label="头像" header-align="center">
            <template scope="scope">
              <img :src="scope.row.img" alt class="table-img">
            </template>
          </el-table-column>
          <el-table-column prop="names" label="姓名" header-align="center"></el-table-column>
          <el-table-column prop="number" label="被报错" header-align="center"></el-table-column>
          <el-table-column prop="time" label="科目" header-align="center"></el-table-column>
          <el-table-column prop="allTime" label="批改总份数" header-align="center"></el-table-column>
          <el-table-column prop="rate" label="批改总张数" header-align="center"></el-table-column>
          <el-table-column prop="status" label="正确率" header-align="center"></el-table-column>
          <el-table-column prop="status" label="满意度" header-align="center"></el-table-column>
          <el-table-column prop="status" label="平均批改时间" header-align="center"></el-table-column>
          <el-table-column prop="status" label="出勤率" header-align="center"></el-table-column>
        </el-table>
        <div slot="footer">
          <!-- 分页显示 -->
          <el-pagination
            style="text-align:left;float:left;"
            background
            @size-change="handleSizeChange"
            @current-change="pageChange"
            :current-page.sync="currentPage"
            :page-sizes="[10, 20, 30, 40]"
            layout="total, prev, pager, next, jumper"
            :total="filters.count"
          ></el-pagination>
          <div style="float:right;margin-left:15px;">
            <el-button @click="myVisible = false" size="small">取 消</el-button>
            <el-button type="primary" size="small" @click="submit">确定</el-button>
          </div>
          <div style="clear:both;"></div>
        </div>
      </el-col>
      <!-- 分页显示 -->
    </el-row>

    <!--可分配老师-->
    <div class="showModel" @click="allShowModel(1)" v-if="hiddenModel"></div>
    <div class="model" v-if="hiddenModel">
      <div class="model-text">
        <div class="model-text-head">
          <div>可分配老师</div>
          <div>二年级数学</div>
        </div>
        <div class="model-items">
          <div class="model-items-left">
            <div class="model-items-left-top">
              <div>
                <img src="../../assets/img/user.jpg" alt class="model-items-left-top-img">
                <div style="display: inline-block">
                  <div style="font-size: 24px">李大柱</div>
                  <div class="model-items-left-top-number">等待学生：0</div>
                </div>
              </div>
              <div>
                <el-button type="success">分配</el-button>
              </div>
            </div>
          </div>
          <div class="model-items-left">
            <div class="model-items-left-top">
              <div>
                <img src="../../assets/img/user.jpg" alt class="model-items-left-top-img">
                <div style="display: inline-block">
                  <div style="font-size: 24px">李大柱</div>
                  <div class="model-items-left-top-number">等待学生：0</div>
                </div>
              </div>
              <div>
                <el-button type="success">分配</el-button>
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
    <!--所有未批改作业-->
    <div class="showModel" @click="allShowModel(2)" v-if="isPigai"></div>
    <div class="model" v-if="isPigai">
      <div class="model-text">
        <div class="model-text-head">
          <div>所有未批改作业</div>
        </div>
        <el-table :data="tableData" style="width: 100%">
          <el-table-column prop="date" label="日期" width="180"></el-table-column>
          <el-table-column prop="name" label="姓名" width="180"></el-table-column>
          <el-table-column prop="address" label="地址"></el-table-column>
        </el-table>
      </div>
    </div>
  </div>
</template>
<script>
  import { mapGetters, mapActions } from "vuex";
  export default {
    components: { },
    name: "actvResolveLabel",
    props: {},
    data() {
      return {
        // BASE_URL:'https://img.sharingschool.com',
          BASE_URL:'https://xt.sharingschool.com/upload/',
          isDownindex:0,
        modelindex: 0,
        hiddenModel:false,
        isPigai:false,
        isDown:false,
            options: [
        {
          value: "0",
          label: "一年级"
        },
        {
          value: "1",
          label: "二年级"
        },
        {
          value: "2",
          label: "三年级"
        },
        {
          value: "3",
          label: "四年级"
        },
        {
          value: "4",
          label: "五年级"
        },
        {
          value: "5",
          label: "六年级"
        }
      ],
      grades: [
        {
          value: "0",
          label: "语文"
        },
        {
          value: "1",
          label: "数学"
        },
        {
          value: "2",
          label: "英语"
        }
      ],
        ItemList: [
          {
            text:'数据监控'
          },
          {
            text:'当天'
          },
          {
            text:'当月'
          },
        ],
        dataList:[
          {
            img:'../../assets/img/user.jpg',
            names:'阿三',
            number:'3',
            time:'14:22',
            allTime:'14:22',
            rate:'222',
            status:'22'
          },
          {
            img:'../../assets/img/user.jpg',
            names:'阿三',
            number:'3',
            time:'14:22',
            allTime:'14:22',
            rate:'222',
            status:'22'
          }
        ],
          filters: { //超级管理员的当天数据
        actvNm: "",
        actvCrtUserId: "",
        actvType: "",
        actvSmallType: "",
        // 排序
        MaxtimeValue:"",
        OptionsValue: "",
        gradesValue: "",
        inputValue: "",
        pageNo: 1,
        pageSize: 10,
        count: 0,
        orderField: "",
        orderAD: ""
      },
       filters1: { //超级管理员的当天数据
        actvNm: "",
        actvCrtUserId: "",
        actvType: "",
        actvSmallType: "",
        // 排序
        MaxtimeValue:"",
        OptionsValue: "",
        gradesValue: "",
        inputValue: "",
        pageNo: 1,
        pageSize: 10,
        count: 0,
        orderField: "",
        orderAD: ""
      },
       filters2: { //超级管理员的当月数据
        actvNm: "",
        actvCrtUserId: "",
        actvType: "",
        actvSmallType: "",
        // 排序
        MaxtimeValue:"",
        OptionsValue: "",
        gradesValue: "",
        inputValue: "",
        pageNo: 1,
        pageSize: 10,
        count: 0,
        orderField: "",
        orderAD: ""
      }
    };
  },
  watch: {},
  computed: {
    ...mapGetters(["getUser","monitorTeacherList"])
  },
  methods: {
    ...mapActions(["setUser"]),

    // 点击下拉
    dropDown(k){
      this.isDown = !this.isDown;
      this.isDownindex = k
      // this.TeacherHomeworkList()
    },
    // // 分页
    // pageChange(val) {
    //   this.filters.pageNo = val;
    //   this.itemListReshow();
    // },
    // changeDateSlot(dateSlot) {
    //   if (dateSlot) {
    //     this.filters.startDate = dateSlot[0];
    //     this.filters.endDate = dateSlot[1];
    //   } else {
    //     this.filters.startDate = null;
    //     this.filters.endDate = null;
    //   }
    // },
    // 获取校区管理员监控数据
    async InfoWatch() {
      this.$store.dispatch("InfoWatch", {
        grade: this.filters.gradesValue,
        subject: this.filters.OptionsValue,
        teacherName: this.filters.inputValue,
        maxCreateTime: this.filters.MaxtimeValue,
        pageNo: this.filters.pageNo,
        pageSize: this.filters.pageSize
      });
    },
      // 获取校区管理员当天数据
    async InfoWatchDay() {
      this.$store.dispatch("InfoWatchDay", {
        grade: this.filters1.gradesValue,
        subject: this.filters1.OptionsValue,
        teacherName: this.filters1.inputValue,
        maxCreateTime: this.filters1.MaxtimeValue,
        pageNo: this.filters1.pageNo,
        pageSize: this.filters1.pageSize
      });
    },
      // 获取校区管理员当月数据
    async InfoWatchMoth() {
      this.$store.dispatch("InfoWatchMoth", {
        grade: this.filters2.gradesValue,
        subject: this.filters2.OptionsValue,
        teacherName: this.filters2.inputValue,
        maxCreateTime: this.filters2.MaxtimeValue,
        pageNo: this.filters2.pageNo,
        pageSize: this.filters2.pageSize
      });
    },
      // 查看老师批改作业列表
    async TeacherHomeworkList() {
      this.$store.dispatch("TeacherHomeworkList", {
        grade: this.filters.gradesValue,
        subject: this.filters.OptionsValue,
        teacherName: this.filters.inputValue,
        maxCreateTime: this.filters.MaxtimeValue,
        pageNo: this.filters.pageNo,
        pageSize: this.filters.pageSize
      });
    },
    selectTitle(k) {
      console.log(k);
      this.modelindex = k;
      if (k === 0){
        this.InfoWatch()
      }
       if (k === 1){
        this.InfoWatchDay()
      }
       if (k === 2){
        this.InfoWatchMoth()
      }
    },
    isShow(str) {
      let _this = this;
      console.log(str);
      if (str == 1) {
        _this.hiddenModel = true;
      } else if (str == 2) {
        _this.isPigai = true;
      }
    },
    //关闭弹框
    allShowModel(str) {
      let _this = this;
      if (str == 1) {
        _this.hiddenModel = false;
      } else if (str == 2) {
        _this.isPigai = false;
      }
    },
    //  输入框按键方法
    keyCodeMethod(e) {
      if (e.keyCode === 13) return this.itemListReshow();
    },
    expandChange(row, expandRows) {
      for (let item of expandRows) {
        if (row === item) {
          this.expandRowKeys = [row.nodId];
        }
      }
    },
    // 分页
    pageChange(val) {
      this.filters.pageNo = val;
      this.itemListReshow();
    },
    changeDateSlot(dateSlot) {
      if (dateSlot) {
        this.filters.startDate = dateSlot[0];
        this.filters.endDate = dateSlot[1];
      } else {
        this.filters.startDate = null;
        this.filters.endDate = null;
      }
    },
    actvTypeChange(typeList) {
      switch (typeList.length) {
        case 1:
          this.filters.actvType = typeList[0];
          this.filters.actvSmallType = null;
          break;
        case 2:
          this.filters.actvType = null;
          this.filters.actvSmallType = typeList[1];
          break;
        default:
          this.filters.actvType = null;
          this.filters.actvSmallType = null;
          break;
      }
    },
    handleSizeChange(val) {
      this.filters.pageSize = val;
      this.itemListReshow();
    },
    // 排序
    sortChange(sort) {
      this.filters.orderField = sort.prop;
      this.filters.orderAD = sort.order != null ? sort.order : "";
      this.itemListReshow();
    },
    clearSearch() {
      this.filters.actvNm = null;
      this.filters.actvCrtUserId = null;
      this.filters.actvType = null;
      this.filters.actvSmallType = null;
      this.filtersActvType = [];
      this.createDateSlot = null;
    }
    // 获取创建人列表
    // async getUserNameList() {
    //   let {
    //     userNameList = []
    //   } = await this.$dao.actv.marketActDao.getUserNameList();
    //   this.userNameList = userNameList || [];
    //   let { list = [] } = await this.$dao.bsnsActvTypeAllList();
    //   this.actvTypeList = list || [];
    // }
  },
  mounted() {
    // this.getsetDictByType2();
    // this.getUserNameList();
    // this.itemListReshow();
  }
};
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
  .aside{
    background-color: #fff;
    margin-top: 16px;
    padding: 0;
    min-height: 880px;
  }
  .main{
    background-color: #fff;
    margin: 16px;
    padding: 0 !important;
    min-height: 980px;
  }
  .table-aside{
    color: #666666;
    font-size: 18px;
    text-align: center;
    line-height: 60px;
  }
  el-table{
    color: #999999;
    font-size: 18px;
  }
  .main-items{
    color: #393939;
    text-align: center;
    line-height: 80px;
  }
  .main-header-item{
    font-size: 16px;
  }
  .main-header-link{
    color: #52CC60;
    font-size: 18px;
    margin-left: 10px;
    text-decoration:underline
  }
  .el-select{
    width: 100px;
    margin: 0 5px;
  }
  .input-with-select .el-input-group__prepend {
    background-color: #fff;
  }
  .active{
    background-color: #52CC60;
    color: #fff;
  }
  .el-input__inner{
    height: 32px;
  }

  .table-img{
    width:36px;
    height:36px;
    border-radius:6px;
    margin-left: 14px;
  }
  .table{
    width: 94.5%;
    border-top:1px solid #E5E5E5;
    margin: 0 43px;
  }
  .table-head{
    color: #999999;
    font-size: 18px;
    text-align: center;
    display: flex;
    justify-content: space-around;
  }
  .table-head>div{
    width: 13.528%;
  }
  .tr{
    width: 100%;
    color: #393939;
    font-size: 20px;
    text-align: center;
  }
  .tr-first{
    display: flex;
    justify-content: space-around;
  }
  .tr-first>div{
    width: 13.528%;
  }
  .tr-second{
    background-color: #FBFBFB;
    margin: 0 115px;
    display: flex;
    justify-content: space-around;
    color: #393939;
    font-size: 20px;
  }
  .tr-second-check{
    color: #3AB548;
    font-size: 17px;
    text-decoration: underline;
  }
  .tr-active{
    color: #3AB548;
  }
  .showModel{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: #000000;
    opacity: 0.2;
    overflow: hidden;
    z-index: 1000;
    color: #fff;

  }
  .model{
    z-index: 10000;
    width:50%;
    height:auto;
    position: fixed;
    top: 30%;
    left: 25%;
    margin:auto;
    background: #fff;
    border-radius:30px;
    text-align: center;
  }
  .model-text{
    background:rgba(255,255,255,1);
    border-radius:10px;
  }
  .model-text-head{
    padding: 40px 50px;
    display: flex;
    color: #393939;
    font-size: 24px;
    justify-content: space-between;
  }
  .model-items-left{
    width: 45%;
    color: #393939;
    font-size: 24px;
  }
  .model-items-left-top{
    display: flex;;
    justify-content: space-between;

  }
  .model-items{
    padding: 0 50px 10px 50px;
    display: flex;;
    justify-content: space-between;
  }
  .model-items-left-top-img{
    width:68px;
    height:68px;
    border-radius:8px;
    position: relative;
    bottom: 25px;
  }
  .model-items-left-top-number{
    color: #7E7E7E;
    font-size: 18px;
    margin-left: 10px;
  }
  .today-time{
    color: #7E7E7E;
    font-size: 18px;
    margin: 0 20px;
  }

</style>
