|  | @@ -17,7 +17,7 @@
 | 
	
		
			
				|  |  |      </el-form>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      <!--表格-->
 | 
	
		
			
				|  |  | -    <el-table ref="teacherTable" :data="teacherList" height="35vh" @selection-change="handleSelectionChange">
 | 
	
		
			
				|  |  | +    <el-table ref="teacherTable" :data="list" height="35vh" @selection-change="handleSelectionChange">
 | 
	
		
			
				|  |  |        <el-table-column type="selection" width="55" />
 | 
	
		
			
				|  |  |        <el-table-column prop="user_name" :label="$t('Key191')" width="120" />
 | 
	
		
			
				|  |  |        <el-table-column prop="user_real_name" :label="$t('Key27')" width="120" />
 | 
	
	
		
			
				|  | @@ -31,10 +31,10 @@
 | 
	
		
			
				|  |  |        layout="prev, pager, next, total, sizes, jumper"
 | 
	
		
			
				|  |  |        :total="total_count"
 | 
	
		
			
				|  |  |        :current-page="cur_page"
 | 
	
		
			
				|  |  | -      @prev-click="changePage"
 | 
	
		
			
				|  |  | -      @next-click="changePage"
 | 
	
		
			
				|  |  | -      @current-change="changePage"
 | 
	
		
			
				|  |  | -      @size-change="changePageSize"
 | 
	
		
			
				|  |  | +      @prev-click="changePage($event, getTeacherUserList)"
 | 
	
		
			
				|  |  | +      @next-click="changePage($event, getTeacherUserList)"
 | 
	
		
			
				|  |  | +      @current-change="changePage($event, getTeacherUserList)"
 | 
	
		
			
				|  |  | +      @size-change="changePageSize($event, getTeacherUserList)"
 | 
	
		
			
				|  |  |      />
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      <div slot="footer">
 | 
	
	
		
			
				|  | @@ -52,71 +52,65 @@
 | 
	
		
			
				|  |  |  import { PageQueryOrgTeacherUserList } from '@/api/list';
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  | -  name: 'SelectTeacher',
 | 
	
		
			
				|  |  | -  props: {
 | 
	
		
			
				|  |  | -    dialogVisible: {
 | 
	
		
			
				|  |  | -      default: false,
 | 
	
		
			
				|  |  | -      type: Boolean
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    orgId: {
 | 
	
		
			
				|  |  | -      default: '',
 | 
	
		
			
				|  |  | -      type: String
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | -  },
 | 
	
		
			
				|  |  | -  data() {
 | 
	
		
			
				|  |  | -    return {
 | 
	
		
			
				|  |  | -      cur_page: 1,
 | 
	
		
			
				|  |  | -      total_count: 0,
 | 
	
		
			
				|  |  | -      page_capacity: 10,
 | 
	
		
			
				|  |  | -      teacherList: [],
 | 
	
		
			
				|  |  | -      orgList: [],
 | 
	
		
			
				|  |  | -      searchForm: {
 | 
	
		
			
				|  |  | -        user_name: '',
 | 
	
		
			
				|  |  | -        user_real_name: ''
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -    };
 | 
	
		
			
				|  |  | -  },
 | 
	
		
			
				|  |  | -  created() {
 | 
	
		
			
				|  |  | -    this.getTeacherUserList();
 | 
	
		
			
				|  |  | +  name: 'SelectTeacher'
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +</script>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<script setup>
 | 
	
		
			
				|  |  | +import { ref } from 'vue';
 | 
	
		
			
				|  |  | +import { useList } from '@/utils/list';
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +const props = defineProps({
 | 
	
		
			
				|  |  | +  dialogVisible: {
 | 
	
		
			
				|  |  | +    default: false,
 | 
	
		
			
				|  |  | +    type: Boolean
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  | -  methods: {
 | 
	
		
			
				|  |  | -    getTeacherUserList() {
 | 
	
		
			
				|  |  | -      const data = {
 | 
	
		
			
				|  |  | -        org_id: this.orgId,
 | 
	
		
			
				|  |  | -        user_name: this.searchForm.user_name,
 | 
	
		
			
				|  |  | -        user_real_name: this.searchForm.user_real_name,
 | 
	
		
			
				|  |  | -        page_capacity: this.page_capacity,
 | 
	
		
			
				|  |  | -        cur_page: this.cur_page,
 | 
	
		
			
				|  |  | -        is_valid: true,
 | 
	
		
			
				|  |  | -        is_audited: true
 | 
	
		
			
				|  |  | -      };
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -      PageQueryOrgTeacherUserList(data).then(({ cur_page, total_count, org_teacher_user_list }) => {
 | 
	
		
			
				|  |  | -        this.cur_page = cur_page;
 | 
	
		
			
				|  |  | -        this.total_count = total_count;
 | 
	
		
			
				|  |  | -        this.teacherList = org_teacher_user_list;
 | 
	
		
			
				|  |  | -      });
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    dialogClose() {
 | 
	
		
			
				|  |  | -      this.$emit('dialogClose');
 | 
	
		
			
				|  |  | -      this.$refs.teacherTable.clearSelection();
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    handleSelectionChange(arr) {
 | 
	
		
			
				|  |  | -      this.orgList = arr.map(({ user_id }) => user_id);
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    changePage(newPage) {
 | 
	
		
			
				|  |  | -      this.cur_page = newPage;
 | 
	
		
			
				|  |  | -      this.getTeacherUserList();
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    changePageSize(pageSize) {
 | 
	
		
			
				|  |  | -      this.page_capacity = pageSize;
 | 
	
		
			
				|  |  | -      this.getTeacherUserList();
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    confirmTeacher() {
 | 
	
		
			
				|  |  | -      this.$emit('selectTeaher', this.orgList);
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +  orgId: {
 | 
	
		
			
				|  |  | +    default: '',
 | 
	
		
			
				|  |  | +    type: String
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | +});
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +const emits = defineEmits(['dialogClose', 'selectTeaher']);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +let searchForm = ref({
 | 
	
		
			
				|  |  | +  user_name: '',
 | 
	
		
			
				|  |  | +  user_real_name: ''
 | 
	
		
			
				|  |  | +});
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +let { changePage, changePageSize, cur_page, list, page_capacity, total_count } = useList();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +function getTeacherUserList() {
 | 
	
		
			
				|  |  | +  PageQueryOrgTeacherUserList({
 | 
	
		
			
				|  |  | +    org_id: props.orgId,
 | 
	
		
			
				|  |  | +    user_name: searchForm.value.user_name,
 | 
	
		
			
				|  |  | +    user_real_name: searchForm.value.user_real_name,
 | 
	
		
			
				|  |  | +    page_capacity: page_capacity.value,
 | 
	
		
			
				|  |  | +    cur_page: cur_page.value,
 | 
	
		
			
				|  |  | +    is_valid: true,
 | 
	
		
			
				|  |  | +    is_audited: true
 | 
	
		
			
				|  |  | +  }).then(({ cur_page: cur, total_count: total, org_teacher_user_list }) => {
 | 
	
		
			
				|  |  | +    cur_page.value = cur;
 | 
	
		
			
				|  |  | +    total_count.value = total;
 | 
	
		
			
				|  |  | +    list.value = org_teacher_user_list;
 | 
	
		
			
				|  |  | +  });
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +getTeacherUserList();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +let teacherTable = ref();
 | 
	
		
			
				|  |  | +function dialogClose() {
 | 
	
		
			
				|  |  | +  emits('dialogClose');
 | 
	
		
			
				|  |  | +  teacherTable.value.clearSelection();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +let selectTidList = ref([]); // 选中教师id列表
 | 
	
		
			
				|  |  | +function handleSelectionChange(arr) {
 | 
	
		
			
				|  |  | +  selectTidList.value = arr.map(({ user_id }) => user_id);
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +function confirmTeacher() {
 | 
	
		
			
				|  |  | +  emits('selectTeaher', selectTidList.value);
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  </script>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <style lang="scss">
 |