|  | @@ -1,65 +1,106 @@
 | 
	
		
			
				|  |  |  <template>
 | 
	
		
			
				|  |  |    <div>
 | 
	
		
			
				|  |  | -  <el-table
 | 
	
		
			
				|  |  | -    style="width: 100%"
 | 
	
		
			
				|  |  | -    max-height="300px"
 | 
	
		
			
				|  |  | -    @selection-change="handleSelectionChange"
 | 
	
		
			
				|  |  | -    :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
 | 
	
		
			
				|  |  | -    :data="list"
 | 
	
		
			
				|  |  | -  >
 | 
	
		
			
				|  |  | -    <el-table-column type="selection"
 | 
	
		
			
				|  |  | -      width="50">
 | 
	
		
			
				|  |  | -    </el-table-column>
 | 
	
		
			
				|  |  | -      <el-table-column prop="id" width="100" align="center" label="乐团编号">
 | 
	
		
			
				|  |  | -        <template slot-scope="scope">
 | 
	
		
			
				|  |  | -          <copy-text>{{ scope.row.id }}</copy-text>
 | 
	
		
			
				|  |  | -        </template>
 | 
	
		
			
				|  |  | +    <el-form ref="search" :model="search" inline @submit.stop.native="submit" @reset.stop.native="reset">
 | 
	
		
			
				|  |  | +      <el-form-item prop="keyword">
 | 
	
		
			
				|  |  | +        <el-input v-model.trim="search.keyword" clearable placeholder="学生姓名(手机、编号)"/>
 | 
	
		
			
				|  |  | +      </el-form-item>
 | 
	
		
			
				|  |  | +      <el-form-item>
 | 
	
		
			
				|  |  | +        <el-button type="primary" native-type="submit">搜索</el-button>
 | 
	
		
			
				|  |  | +        <el-button type="danger" native-type="reset">重置</el-button>
 | 
	
		
			
				|  |  | +      </el-form-item>
 | 
	
		
			
				|  |  | +    </el-form>
 | 
	
		
			
				|  |  | +    <el-table
 | 
	
		
			
				|  |  | +      style="width: 100%"
 | 
	
		
			
				|  |  | +      max-height="300px"
 | 
	
		
			
				|  |  | +      @selection-change="handleSelectionChange"
 | 
	
		
			
				|  |  | +      :header-cell-style="{ background: '#EDEEF0', color: '#444' }"
 | 
	
		
			
				|  |  | +      :data="filterlist"
 | 
	
		
			
				|  |  | +    >
 | 
	
		
			
				|  |  | +      <el-table-column type="selection"
 | 
	
		
			
				|  |  | +        width="50">
 | 
	
		
			
				|  |  |        </el-table-column>
 | 
	
		
			
				|  |  | -      <el-table-column prop="name" align="center" label="学员姓名">
 | 
	
		
			
				|  |  | -        <template slot-scope="scope">
 | 
	
		
			
				|  |  | -          <copy-text>{{ scope.row.name }}</copy-text>
 | 
	
		
			
				|  |  | -        </template>
 | 
	
		
			
				|  |  | -      </el-table-column>
 | 
	
		
			
				|  |  | -      <el-table-column prop="parentsName" align="center" label="家长姓名">
 | 
	
		
			
				|  |  | -        <template slot-scope="scope">
 | 
	
		
			
				|  |  | -          <copy-text>{{ scope.row.parentsName }}</copy-text>
 | 
	
		
			
				|  |  | -        </template>
 | 
	
		
			
				|  |  | -      </el-table-column>
 | 
	
		
			
				|  |  | -      <el-table-column prop="parentsPhone" align="center" label="家长电话">
 | 
	
		
			
				|  |  | -        <template slot-scope="scope">
 | 
	
		
			
				|  |  | -          <copy-text>{{ scope.row.parentsPhone }}</copy-text>
 | 
	
		
			
				|  |  | -        </template>
 | 
	
		
			
				|  |  | -      </el-table-column>
 | 
	
		
			
				|  |  | -      <el-table-column prop="subjectName" align="center" label="声部">
 | 
	
		
			
				|  |  | -        <template slot-scope="scope">
 | 
	
		
			
				|  |  | -          <copy-text>{{ scope.row.subjectName }}</copy-text>
 | 
	
		
			
				|  |  | -        </template>
 | 
	
		
			
				|  |  | -      </el-table-column>
 | 
	
		
			
				|  |  | -  </el-table>
 | 
	
		
			
				|  |  | +        <el-table-column prop="id" width="100" align="center" label="乐团编号">
 | 
	
		
			
				|  |  | +          <template slot-scope="scope">
 | 
	
		
			
				|  |  | +            <copy-text>{{ scope.row.id }}</copy-text>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column prop="name" align="center" label="学员姓名">
 | 
	
		
			
				|  |  | +          <template slot-scope="scope">
 | 
	
		
			
				|  |  | +            <copy-text>{{ scope.row.name }}</copy-text>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column prop="parentsName" align="center" label="家长姓名">
 | 
	
		
			
				|  |  | +          <template slot-scope="scope">
 | 
	
		
			
				|  |  | +            <copy-text>{{ scope.row.parentsName }}</copy-text>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column prop="parentsPhone" align="center" label="家长电话">
 | 
	
		
			
				|  |  | +          <template slot-scope="scope">
 | 
	
		
			
				|  |  | +            <copy-text>{{ scope.row.parentsPhone }}</copy-text>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +        <el-table-column prop="subjectName" align="center" label="声部">
 | 
	
		
			
				|  |  | +          <template slot-scope="scope">
 | 
	
		
			
				|  |  | +            <copy-text>{{ scope.row.subjectName }}</copy-text>
 | 
	
		
			
				|  |  | +          </template>
 | 
	
		
			
				|  |  | +        </el-table-column>
 | 
	
		
			
				|  |  | +    </el-table>
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  |  import { getMusicGroupStu } from '@/views/resetTeaming/api'
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  | -  props: ['id', 'active'],
 | 
	
		
			
				|  |  | +  props: ['id', 'active', 'name'],
 | 
	
		
			
				|  |  |    data() {
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  |        list: [],
 | 
	
		
			
				|  |  | +      filterlist: [],
 | 
	
		
			
				|  |  |        passed: [],
 | 
	
		
			
				|  |  | +      search: {
 | 
	
		
			
				|  |  | +        keyword: '',
 | 
	
		
			
				|  |  | +        hastimer: ''
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    watch: {
 | 
	
		
			
				|  |  |      active: {
 | 
	
		
			
				|  |  |        immediate: true,
 | 
	
		
			
				|  |  |        handler() {
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | +        if (this.active.includes(this.id) && !this.list.length) {
 | 
	
		
			
				|  |  | +          this.FetchDetail()
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  | -  // mounted() {
 | 
	
		
			
				|  |  | -  //   this.FetchDetail()
 | 
	
		
			
				|  |  | -  // },
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  | +    filter() {
 | 
	
		
			
				|  |  | +      const { keyword, hastimer } = this.search
 | 
	
		
			
				|  |  | +      this.filterlist = this.list.filter(item => {
 | 
	
		
			
				|  |  | +        const user = !keyword || (
 | 
	
		
			
				|  |  | +          ('' + item.userId).indexOf(keyword) > -1 ||
 | 
	
		
			
				|  |  | +          ('' + item.parentsName).indexOf(keyword) > -1 ||
 | 
	
		
			
				|  |  | +          ('' + item.parentsPhone).indexOf(keyword) > -1 ||
 | 
	
		
			
				|  |  | +          ('' + item.name).indexOf(keyword) > -1
 | 
	
		
			
				|  |  | +        )
 | 
	
		
			
				|  |  | +        return user
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    submit(evt) {
 | 
	
		
			
				|  |  | +      evt.stopPropagation()
 | 
	
		
			
				|  |  | +      evt.stopImmediatePropagation()
 | 
	
		
			
				|  |  | +      evt.preventDefault()
 | 
	
		
			
				|  |  | +      this.filter()
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    reset(evt) {
 | 
	
		
			
				|  |  | +      evt.stopPropagation()
 | 
	
		
			
				|  |  | +      evt.stopImmediatePropagation()
 | 
	
		
			
				|  |  | +      evt.preventDefault()
 | 
	
		
			
				|  |  | +      this.search = {
 | 
	
		
			
				|  |  | +        keyword: '',
 | 
	
		
			
				|  |  | +        hastimer: ''
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      this.filter()
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  |      handleSelectionChange(arr) {
 | 
	
		
			
				|  |  |        const passed = [];
 | 
	
		
			
				|  |  |        for (let i in arr) {
 | 
	
	
		
			
				|  | @@ -74,6 +115,7 @@ export default {
 | 
	
		
			
				|  |  |            musicGroupId: this.id,
 | 
	
		
			
				|  |  |          })
 | 
	
		
			
				|  |  |          this.list = res.data
 | 
	
		
			
				|  |  | +        this.filterlist = res.data
 | 
	
		
			
				|  |  |        } catch (error) {}
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    }
 |