Commit 754ce335 authored by 罗超's avatar 罗超

1

parent 820790b2
...@@ -2,84 +2,164 @@ ...@@ -2,84 +2,164 @@
<div class="page-body MainPlan xg"> <div class="page-body MainPlan xg">
<div class="col row wrap q-col-gutter-md"> <div class="col row wrap q-col-gutter-md">
<div class="col-2 flex"> <div class="col-2 flex">
<el-select v-model="msg.TeacherId" style="width:100%;" placeholder="教师" size="small" @change="getPlanList()"> <el-select
<el-option v-for="item in TeacherList" :key="item.TeacherName" :label="item.TeacherName" :value="item.TId"> v-model="msg.TeacherId"
style="width: 100%"
placeholder="教师"
size="small"
@change="getPlanList()"
>
<el-option
v-for="item in TeacherList"
:key="item.TeacherName"
:label="item.TeacherName"
:value="item.TId"
>
</el-option> </el-option>
<div slot="prefix" class="full-height flex items-center" style="color:#000;padding-right:10px"> <div
slot="prefix"
class="full-height flex items-center"
style="color: #000; padding-right: 10px"
>
教师: 教师:
</div> </div>
</el-select> </el-select>
</div> </div>
<div class="col-2"> <div class="col-2">
<el-select v-model="msg.ClassRoomId" style="width:100%;" placeholder="教室" size="small" @change="getTypeWay()"> <el-select
<el-option v-for="item in ClassRoomList" :key="item.RoomName" :label="item.RoomName" :value="item.RoomId"> v-model="msg.ClassRoomId"
style="width: 100%"
placeholder="教室"
size="small"
@change="getTypeWay()"
>
<el-option
v-for="item in ClassRoomList"
:key="item.RoomName"
:label="item.RoomName"
:value="item.RoomId"
>
</el-option> </el-option>
<div slot="prefix" class="full-height flex items-center" style="color:#000;padding-right:10px"> <div
slot="prefix"
class="full-height flex items-center"
style="color: #000; padding-right: 10px"
>
教室: 教室:
</div> </div>
</el-select> </el-select>
</div> </div>
<div class="col-2" style="width:13%"> <div class="col-2" style="width: 13%">
<el-date-picker v-model="msg.StartTime" type="date" value-format="yyyy-MM-dd" placeholder="开始日期" size="small" <el-date-picker
style="width:100%;" @change="getTypeWay()" :picker-options="picker" :clearable="false"> v-model="msg.StartTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="开始日期"
size="small"
style="width: 100%"
@change="getTypeWay()"
:picker-options="picker"
:clearable="false"
>
</el-date-picker> </el-date-picker>
</div> </div>
<div class="col-2" style="width:13%"> <div class="col-2" style="width: 13%">
<el-date-picker v-model="msg.EndTime" type="date" value-format="yyyy-MM-dd" placeholder="结束日期" size="small" <el-date-picker
style="width:100%;" @change="getTypeWay()" clear-icon="iconfont icon-guanbi" :picker-options="pickerEnd"> v-model="msg.EndTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="结束日期"
size="small"
style="width: 100%"
@change="getTypeWay()"
clear-icon="iconfont icon-guanbi"
:picker-options="pickerEnd"
>
</el-date-picker> </el-date-picker>
</div> </div>
<div class="col-1" style="width:10%"> <div class="col-1" style="width: 10%">
<el-select v-model="msg.ClassType" style="width:100%;" placeholder="类型" size="small" @change="getTypeWay()"> <el-select
<el-option :key="0" label="全部" :value="0"> v-model="msg.ClassType"
</el-option> style="width: 100%"
<el-option :key="1" label="正常" :value="1"> placeholder="类型"
</el-option> size="small"
<el-option :key="2" label="试听课" :value="2"> @change="getTypeWay()"
</el-option> >
<div slot="prefix" class="full-height flex items-center" style="color:#000;padding-right:10px"> <el-option :key="0" label="全部" :value="0"> </el-option>
<el-option :key="1" label="正常" :value="1"> </el-option>
<el-option :key="2" label="试听课" :value="2"> </el-option>
<div
slot="prefix"
class="full-height flex items-center"
style="color: #000; padding-right: 10px"
>
状态: 状态:
</div> </div>
</el-select> </el-select>
</div> </div>
<div class="col-3" style="width:30%"> <div class="col-3" style="width: 30%">
<q-btn color="accent" size="sm" class="q-mr-md" style="margin-top:2px;" @click="exchangeType" <q-btn
:label="typeName" /> color="accent"
<q-btn color="accent" size="sm" class="q-mr-md" label="下载计划" @click="downLoadPlan()" /> size="sm"
<q-btn color="negative" size="sm" label="调课申请" @click="openForm"></q-btn> class="q-mr-md"
style="margin-top: 2px"
@click="exchangeType"
:label="typeName"
/>
<q-btn
color="accent"
size="sm"
class="q-mr-md"
label="下载计划"
@click="downLoadPlan()"
/>
<q-btn
color="negative"
size="sm"
label="调课申请"
@click="openForm"
></q-btn>
</div> </div>
</div> </div>
<classmateForm :dataList="dataList" v-if="commonType==1"></classmateForm> <classmateForm :dataList="dataList" v-if="commonType == 1"></classmateForm>
<change-class-form v-if="persistent" @close="closeSaveForm" @success="refreshPage"></change-class-form> <change-class-form
<teachTable v-if="commonType==2" :tableData="tableData" :PageCount="PageCount" :setMsg="tabMsg" :showCZ="false" v-if="persistent"
@getChange="getChange"></teachTable> @close="closeSaveForm"
@success="refreshPage"
></change-class-form>
<teachTable
v-if="commonType == 2"
:tableData="tableData"
:PageCount="PageCount"
:setMsg="tabMsg"
:showCZ="false"
@getChange="getChange"
></teachTable>
</div> </div>
</template> </template>
<script> <script>
import { import {
getTeacherDropDownList, getTeacherDropDownList,
queryClassRoomList queryClassRoomList,
} from '../../api/school/index' } from "../../api/school/index";
import { import {
GetClassPlanStatistical, GetClassPlanStatistical,
GetClassPlanStatisticalPage GetClassPlanStatisticalPage,
} from '../../api/teacher/index'; } from "../../api/teacher/index";
import { import { EduDownLoad } from "../../api/common/common";
EduDownLoad, import classmateForm from "../../components/course/classmate-form";
} from '../../api/common/common'; import teachTable from "../teacher/components/teachTable";
import classmateForm from '../../components/course/classmate-form'; import changeClassForm from "../../components/teacher/changeClassForm.vue";
import teachTable from '../teacher/components/teachTable';
import changeClassForm from '../../components/teacher/changeClassForm.vue'
export default { export default {
meta: { meta: {
title: "教师课表" title: "教师课表",
}, },
components: { components: {
classmateForm, classmateForm,
teachTable, teachTable,
changeClassForm changeClassForm,
}, },
data() { data() {
return { return {
...@@ -87,29 +167,29 @@ ...@@ -87,29 +167,29 @@
TeacherList: [], //教师团队 TeacherList: [], //教师团队
ClassRoomList: [], // ClassRoomList: [], //
StartTime: "", StartTime: "",
EndTime: '', EndTime: "",
TeacherId: 0, TeacherId: 0,
ClassRoomId: 0, ClassRoomId: 0,
dataList: {}, dataList: {},
activeNames: [1], activeNames: [1],
msg: { msg: {
StartTime: "", StartTime: "",
EndTime: '', EndTime: "",
TeacherId: 0, TeacherId: 0,
ClassRoomId: 0, ClassRoomId: 0,
ClassType: 0, ClassType: 0,
}, },
commonType: 1, //1日历模式 2列表模式 commonType: 1, //1日历模式 2列表模式
typeName: '列表模式', typeName: "列表模式",
tabMsg: { tabMsg: {
PageIndex: 1, PageIndex: 1,
PageSize: 12, PageSize: 12,
rowsPerPage: 12, rowsPerPage: 12,
StartTime: '', StartTime: "",
EndTime: '', EndTime: "",
TeacherId: 0, TeacherId: 0,
ClassRoomId: 0, ClassRoomId: 0,
ClassType: 0 ClassType: 0,
}, },
tableData: [], //表格数据 tableData: [], //表格数据
PageCount: 0, PageCount: 0,
...@@ -121,18 +201,18 @@ ...@@ -121,18 +201,18 @@
// }else{ // }else{
// return time.getTime() < Date.now() - 8.64e7 // return time.getTime() < Date.now() - 8.64e7
// } // }
} },
}, },
pickerEnd: { pickerEnd: {
disabledDate: (time) => { disabledDate: (time) => {
let startTime = this.msg.StartTime let startTime = this.msg.StartTime;
if (startTime) { if (startTime) {
return time.getTime() <= new Date(startTime).getTime() - 8.64e7 return time.getTime() <= new Date(startTime).getTime() - 8.64e7;
} else { } else {
return time.getTime() < Date.now() - 8.64e7 return time.getTime() < Date.now() - 8.64e7;
}
}
} }
},
},
}; };
}, },
created() { created() {
...@@ -140,10 +220,16 @@ ...@@ -140,10 +220,16 @@
this.msg.ClassType = this.$route.query.ClassType; this.msg.ClassType = this.$route.query.ClassType;
} }
let date = new Date(); let date = new Date();
let today = date.getFullYear() + '-' + (date.getMonth() < 9 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + let today =
'-' + (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) date.getFullYear() +
this.msg.StartTime = today "-" +
this.tabMsg.StartTime = today (date.getMonth() < 9
? "0" + (date.getMonth() + 1)
: date.getMonth() + 1) +
"-" +
(date.getDate() < 10 ? "0" + date.getDate() : date.getDate());
this.msg.StartTime = today;
this.tabMsg.StartTime = today;
this.getClassRoomList(); this.getClassRoomList();
}, },
mounted() { mounted() {
...@@ -151,62 +237,63 @@ ...@@ -151,62 +237,63 @@
this.getPlanList(); this.getPlanList();
}, },
methods: { methods: {
downLoadPlan() { //导出 downLoadPlan() {
//导出
var newMsg = JSON.parse(JSON.stringify(this.msg)); var newMsg = JSON.parse(JSON.stringify(this.msg));
EduDownLoad("/Class/DownLoadClassPlan", newMsg, "老师上课计划.xls") EduDownLoad("/Class/DownLoadClassPlan", newMsg, "老师上课计划.xls");
}, },
refreshPage() { refreshPage() {
this.getPlanList(); this.getPlanList();
}, },
openForm() { openForm() {
this.persistent = true this.persistent = true;
}, },
closeSaveForm() { closeSaveForm() {
this.persistent = false this.persistent = false;
}, },
// 获取校区教室导航列表 // 获取校区教室导航列表
getPlanList() { getPlanList() {
GetClassPlanStatistical(this.msg).then(res => { GetClassPlanStatistical(this.msg).then((res) => {
if (res.Code == 1) { if (res.Code == 1) {
this.dataList = res.Data; this.dataList = res.Data;
} }
}) });
}, },
//获取教师下拉 //获取教师下拉
GetTeacherList() { GetTeacherList() {
getTeacherDropDownList({}).then(res => { getTeacherDropDownList({}).then((res) => {
if (res.Code == 1) { if (res.Code == 1) {
this.TeacherList = res.Data; this.TeacherList = res.Data;
var obj = { var obj = {
TeacherName: '请选择', TeacherName: "请选择",
TId: 0 TId: 0,
} };
this.TeacherList.unshift(obj); this.TeacherList.unshift(obj);
} }
}) });
}, },
//获取教室下拉 //获取教室下拉
getClassRoomList() { getClassRoomList() {
queryClassRoomList({}).then(res => { queryClassRoomList({}).then((res) => {
if (res.Code == 1) { if (res.Code == 1) {
this.ClassRoomList = res.Data; this.ClassRoomList = res.Data;
var obj = { var obj = {
RoomName: '请选择', RoomName: "请选择",
RoomId: 0 RoomId: 0,
} };
this.ClassRoomList.unshift(obj); this.ClassRoomList.unshift(obj);
} }
}) });
}, },
exchangeType() { exchangeType() {
if (this.commonType == 1) { if (this.commonType == 1) {
this.commonType = 2 this.commonType = 2;
this.typeName = '日历模式' this.typeName = "日历模式";
this.getTableList() this.getTableList();
} else { } else {
this.commonType = 1; this.commonType = 1;
this.typeName = '列表模式' this.typeName = "列表模式";
this.getPlanList() this.getPlanList();
} }
}, },
getTableList() { getTableList() {
...@@ -214,31 +301,29 @@ ...@@ -214,31 +301,29 @@
this.tabMsg.EndTime = this.msg.EndTime; this.tabMsg.EndTime = this.msg.EndTime;
this.tabMsg.ClassRoomId = this.msg.ClassRoomId; this.tabMsg.ClassRoomId = this.msg.ClassRoomId;
this.tabMsg.ClassType = this.msg.ClassType; this.tabMsg.ClassType = this.msg.ClassType;
GetClassPlanStatisticalPage(this.tabMsg).then(res => { GetClassPlanStatisticalPage(this.tabMsg).then((res) => {
if (res.Code == 1) { if (res.Code == 1) {
this.tableData = res.Data.PageData; this.tableData = res.Data.PageData;
this.PageCount = res.Data.PageCount; this.PageCount = res.Data.PageCount;
} }
}) });
}, },
getChange(val) { getChange(val) {
this.tabMsg.PageIndex = val; this.tabMsg.PageIndex = val;
this.getTableList() this.getTableList();
}, },
getTypeWay() { getTypeWay() {
if (this.commonType == 2) { if (this.commonType == 2) {
this.getTableList() this.getTableList();
} else { } else {
this.getPlanList() this.getPlanList();
}
}
} }
}; },
},
};
</script> </script>
<style lang="scss"> <style lang="scss">
.xg .el-input--prefix .el-input__inner { .xg .el-input--prefix .el-input__inner {
padding-left: 50px; padding-left: 50px;
} }
</style> </style>
<template> <template>
<div style="padding:20px 0"> <div style="padding: 20px 0">
<div class="page-content"> <div class="page-content">
<q-table :pagination="setMsg" no-data-label="暂无相关数据" flat class="sticky-column-table sticky-right-column-table" <q-table
separator="none" :data="tableData" :columns="showCZ?columns:columns2" row-key="name"> :pagination="setMsg"
no-data-label="暂无相关数据"
flat
class="sticky-column-table sticky-right-column-table"
separator="none"
:data="tableData"
:columns="showCZ ? columns : columns2"
row-key="name"
>
<template v-slot:body-cell-GuestList="props"> <template v-slot:body-cell-GuestList="props">
<q-td auto-width :props="props"> <q-td auto-width :props="props">
<span v-for="(item,index) in props.row.GuestList" style="margin-right:5px;"> <span
{{item.GuestName}} v-for="(item, index) in props.row.GuestList"
style="margin-right: 5px"
>
{{ item.GuestName }}
</span> </span>
</q-td> </q-td>
</template> </template>
<template v-slot:body-cell-StartTime="props"> <template v-slot:body-cell-StartTime="props">
<q-td auto-width :props="props"> <q-td auto-width :props="props">
{{props.row.StartTime}}-{{props.row.EndTime}} {{ props.row.StartTime }}-{{ props.row.EndTime }}
</q-td> </q-td>
</template> </template>
<template v-slot:body-cell-TotalPlanNum="props"> <template v-slot:body-cell-TotalPlanNum="props">
<q-td> <q-td> {{ props.row.Ranks }}/{{ props.row.TotalPlanNum }} </q-td>
{{props.row.Ranks}}/{{props.row.TotalPlanNum}}
</q-td>
</template> </template>
<template v-slot:body-cell-optioned="props"> <template v-slot:body-cell-optioned="props">
<q-td> <q-td>
<q-btn flat size="xs" icon="iconfont icon-view" v-if="props.row.ClassType==1" color="accent" <q-btn
style="font-weight:400" label="课程回顾" @click="goCourseRecord(props.row)" /> flat
size="xs"
icon="iconfont icon-view"
v-if="props.row.ClassType == 1"
color="accent"
style="font-weight: 400"
label="课程回顾"
@click="goCourseRecord(props.row)"
/>
<q-btn
flat
size="xs"
icon="iconfont icon-view"
v-if="props.row.ClassType == 1"
color="accent"
style="font-weight: 400"
label="课程反馈"
@click="goFeedBack(props.row)"
/>
</q-td> </q-td>
</template> </template>
<template v-slot:bottom> <template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="PageIndex" color="primary" :max="PageCount" <q-pagination
:input="true" @input="changePage" /> class="full-width justify-end"
v-model="PageIndex"
color="primary"
:max="PageCount"
:input="true"
@input="changePage"
/>
</template> </template>
</q-table> </q-table>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
props: { props: {
setMsg: { setMsg: {
type: Object, type: Object,
default: null default: null,
}, },
tableData: { tableData: {
type: Array, type: Array,
default: null default: null,
}, },
PageCount: { PageCount: {
type: Number, type: Number,
default: null default: null,
}, },
showCZ:{//是否显示操作栏 showCZ: {
Type:Boolean, //是否显示操作栏
default:true Type: Boolean,
} default: true,
}, },
meta: {
title: "我的课表"
}, },
components: { meta: {
title: "我的课表",
}, },
components: {},
data() { data() {
return { return {
columns: [{ columns: [
name: 'ClassDate', {
label: '日期', name: "ClassDate",
field: 'ClassDate', label: "日期",
align: 'left' field: "ClassDate",
}, { align: "left",
name: 'StartTime',
label: '上课时间',
field: 'StartTime',
align: 'left'
}, {
name: 'ClassName',
label: '班级',
field: 'ClassName',
align: 'left'
}, },
{ {
name: 'CourseName', name: "StartTime",
label: '课程名称', label: "上课时间",
field: 'CourseName', field: "StartTime",
align: 'left', align: "left",
}, },
{ {
name: 'GuestList', name: "ClassName",
label: '学员名称', label: "班级",
field: 'GuestList', field: "ClassName",
align: 'left' align: "left",
}, },
{ {
name: 'TeacherName', name: "CourseName",
label: '教师', label: "课程名称",
field: 'TeacherName', field: "CourseName",
align: 'left' align: "left",
}, },
{ {
name: 'TotalPlanNum', name: "GuestList",
label: '课程进度', label: "学员名称",
field: 'TotalPlanNum', field: "GuestList",
align: 'left' align: "left",
}, },
{ {
name: 'optioned', name: "TeacherName",
label: '操作', label: "教师",
field: 'Id' field: "TeacherName",
} align: "left",
},
{
name: "TotalPlanNum",
label: "课程进度",
field: "TotalPlanNum",
align: "left",
},
{
name: "optioned",
label: "操作",
field: "Id",
},
], ],
columns2: [{ columns2: [
name: 'ClassDate', {
label: '日期', name: "ClassDate",
field: 'ClassDate', label: "日期",
align: 'left' field: "ClassDate",
}, { align: "left",
name: 'StartTime',
label: '上课时间',
field: 'StartTime',
align: 'left'
}, {
name: 'ClassName',
label: '班级',
field: 'ClassName',
align: 'left'
}, },
{ {
name: 'CourseName', name: "StartTime",
label: '课程名称', label: "上课时间",
field: 'CourseName', field: "StartTime",
align: 'left', align: "left",
}, },
{ {
name: 'GuestList', name: "ClassName",
label: '学员名称', label: "班级",
field: 'GuestList', field: "ClassName",
align: 'left' align: "left",
}, },
{ {
name: 'TeacherName', name: "CourseName",
label: '教师', label: "课程名称",
field: 'TeacherName', field: "CourseName",
align: 'left' align: "left",
}, },
{ {
name: 'TotalPlanNum', name: "GuestList",
label: '课程进度', label: "学员名称",
field: 'TotalPlanNum', field: "GuestList",
align: 'left' align: "left",
},
{
name: "TeacherName",
label: "教师",
field: "TeacherName",
align: "left",
},
{
name: "TotalPlanNum",
label: "课程进度",
field: "TotalPlanNum",
align: "left",
}, },
], ],
tabMsg: { tabMsg: {
PageIndex: 1, PageIndex: 1,
PageSize: 15, PageSize: 15,
rowsPerPage: 15, rowsPerPage: 15,
StartTime: '', StartTime: "",
EndTime: '', EndTime: "",
TeacherId: 0, TeacherId: 0,
ClassRoomId: 0, ClassRoomId: 0,
ClassType: 0 ClassType: 0,
},
PageIndex: 1
}
},
created() {
}, },
mounted() { PageIndex: 1,
};
}, },
created() {},
mounted() {},
methods: { methods: {
//翻页 //翻页
changePage(val) { changePage(val) {
this.PageIndex = val; this.PageIndex = val;
this.$emit('getChange', this.PageIndex); this.$emit("getChange", this.PageIndex);
}, },
//跳转到课程回顾 //跳转到课程回顾
goCourseRecord(item) { goCourseRecord(item) {
this.OpenNewUrl("../../classroom/courseInfo", { this.OpenNewUrl("../../classroom/courseInfo", {
id: item.Id id: item.Id,
});
},
//跳转到课程反馈
goFeedBack(item) {
this.OpenNewUrl("/teacher/feedBackList", {
id: item.Id,
}); });
} },
} },
} };
</script> </script>
<style lang="sass"> <style lang="sass">
@import url('~assets/css/table.sass') @import url('~assets/css/table.sass')
</style> </style>
<template> <template>
<div class="page-body MainPlan"> <div class="page-body MainPlan xg">
<div class="col row wrap q-col-gutter-md"> <div class="col row wrap q-col-gutter-md">
<div class="col-2"> <div class="col-2">
<el-select v-model="msg.ClassRoomId" style="width:100%;" placeholder="教室" size="small" @change="getTypeWay()"> <el-select
<el-option v-for="item in ClassRoomList" :key="item.RoomName" :label="item.RoomName" :value="item.RoomId"> v-model="msg.ClassRoomId"
style="width: 100%"
placeholder="教室"
size="small"
@change="getTypeWay()"
>
<el-option
v-for="item in ClassRoomList"
:key="item.RoomName"
:label="item.RoomName"
:value="item.RoomId"
>
</el-option> </el-option>
<div
slot="prefix"
class="full-height flex items-center"
style="color: #000; padding-right: 10px"
>
教室:
</div>
</el-select> </el-select>
</div> </div>
<div class="col-2"> <div class="col-2">
<el-date-picker v-model="msg.StartTime" type="date" value-format="yyyy-MM-dd" placeholder="开始日期" size="small" <el-date-picker
style="width:100%;" @change="getTypeWay()" clear-icon="iconfont icon-guanbi"> v-model="msg.StartTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="开始日期"
size="small"
style="width: 100%"
@change="getTypeWay()"
clear-icon="iconfont icon-guanbi"
>
</el-date-picker> </el-date-picker>
</div> </div>
<div class="col-2"> <div class="col-2">
<el-date-picker v-model="msg.EndTime" type="date" value-format="yyyy-MM-dd" placeholder="结束日期" size="small" <el-date-picker
style="width:100%;" @change="getTypeWay()" clear-icon="iconfont icon-guanbi"> v-model="msg.EndTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="结束日期"
size="small"
style="width: 100%"
@change="getTypeWay()"
clear-icon="iconfont icon-guanbi"
>
</el-date-picker> </el-date-picker>
</div> </div>
<div class="col-2"> <div class="col-2">
<el-select v-model="msg.ClassType" style="width:100%;" placeholder="类型" size="small" @change="getTypeWay()"> <el-select
<el-option :key="0" label="全部" :value="0"> v-model="msg.ClassType"
</el-option> style="width: 100%"
<el-option :key="1" label="正常" :value="1"> placeholder="类型"
</el-option> size="small"
<el-option :key="2" label="试听课" :value="2"> @change="getTypeWay()"
</el-option> >
<el-option :key="0" label="全部" :value="0"> </el-option>
<el-option :key="1" label="正常" :value="1"> </el-option>
<el-option :key="2" label="试听课" :value="2"> </el-option>
<div
slot="prefix"
class="full-height flex items-center"
style="color: #000; padding-right: 10px"
>
状态:
</div>
</el-select>
</div>
<div class="col-2">
<el-select
v-model="msg.FeedBackStatus"
style="width: 100%"
placeholder="反馈"
size="small"
@change="getTypeWay()"
>
<el-option :key="-1" label="不限" :value="-1"> </el-option>
<el-option :key="0" label="未反馈" :value="0"> </el-option>
<el-option :key="1" label="部分" :value="1"> </el-option>
<el-option :key="2" label="已反馈" :value="2"> </el-option>
<div
slot="prefix"
class="full-height flex items-center"
style="color: #000; padding-right: 10px"
>
反馈:
</div>
</el-select> </el-select>
</div> </div>
<div class="col-4"> <div class="col-2">
<q-btn color="accent" size="sm" class="q-mr-md" style="margin-top:2px;" @click="exchangeType" :label="typeName" /> <q-btn
<q-btn color="negative" size="sm" label="调课申请" @click="openForm"></q-btn> color="accent"
size="sm"
class="q-mr-md"
style="margin-top: 2px"
@click="exchangeType"
:label="typeName"
/>
<q-btn
color="negative"
size="sm"
label="调课申请"
@click="openForm"
></q-btn>
</div> </div>
</div> </div>
<classmateForm :dataList="dataList" v-if="commonType==1"></classmateForm> <classmateForm :dataList="dataList" v-if="commonType == 1"></classmateForm>
<change-class-form v-if="persistent" @close="closeSaveForm" @success="refreshPage"></change-class-form> <change-class-form
<teachTable v-if="commonType==2" :tableData="tableData" :PageCount="PageCount" :setMsg="tabMsg" @getChange="getChange"></teachTable> v-if="persistent"
@close="closeSaveForm"
@success="refreshPage"
></change-class-form>
<teachTable
v-if="commonType == 2"
:tableData="tableData"
:PageCount="PageCount"
:setMsg="tabMsg"
@getChange="getChange"
></teachTable>
</div> </div>
</template> </template>
<script> <script>
import { import {
getTeacherDropDownList, getTeacherDropDownList,
queryClassRoomList queryClassRoomList,
} from '../../api/school/index' } from "../../api/school/index";
import { import {
GetClassPlanStatistical, GetClassPlanStatistical,
GetClassPlanStatisticalPage GetClassPlanStatisticalPage,
} from '../../api/teacher/index'; } from "../../api/teacher/index";
import classmateForm from '../teacher/components/classmate-form'; import classmateForm from "../teacher/components/classmate-form";
import teachTable from '../teacher/components/teachTable'; import teachTable from "../teacher/components/teachTable";
import changeClassForm from '../../components/teacher/changeClassForm.vue' import changeClassForm from "../../components/teacher/changeClassForm.vue";
export default { export default {
meta: { meta: {
title: "我的课表" title: "我的课表",
}, },
components: { components: {
classmateForm, classmateForm,
teachTable, teachTable,
changeClassForm changeClassForm,
}, },
data() { data() {
return { return {
persistent:false, persistent: false,
TeacherList: [], //教师团队 TeacherList: [], //教师团队
ClassRoomList: [], // ClassRoomList: [], //
StartTime: "", StartTime: "",
EndTime: '', EndTime: "",
TeacherId: 0, TeacherId: 0,
ClassRoomId: 0, ClassRoomId: 0,
dataList: {}, dataList: {},
activeNames: [1], activeNames: [1],
msg: { msg: {
StartTime: "", StartTime: "",
EndTime: '', EndTime: "",
TeacherId: 0, TeacherId: 0,
ClassRoomId: 0, ClassRoomId: 0,
ClassType: 0, ClassType: 0,
FeedBackStatus: 0, //反馈状态 0-未反馈,1-部分,2-已反馈
}, },
commonType:1, //1日历模式 2列表模式 commonType: 1, //1日历模式 2列表模式
typeName:'列表模式', typeName: "列表模式",
tabMsg:{ tabMsg: {
PageIndex:1, PageIndex: 1,
PageSize:12, PageSize: 12,
rowsPerPage: 12, rowsPerPage: 12,
StartTime:'', StartTime: "",
EndTime:'', EndTime: "",
TeacherId:0, TeacherId: 0,
ClassRoomId:0, ClassRoomId: 0,
ClassType:0 ClassType: 0,
}, },
tableData:[], //表格数据 tableData: [], //表格数据
PageCount:0 PageCount: 0,
}; };
}, },
created() { created() {
...@@ -107,73 +195,77 @@ ...@@ -107,73 +195,77 @@
this.getPlanList(); this.getPlanList();
}, },
methods: { methods: {
refreshPage(){ refreshPage() {
this.getPlanList(); this.getPlanList();
}, },
openForm() { openForm() {
this.persistent = true this.persistent = true;
}, },
closeSaveForm() { closeSaveForm() {
this.persistent = false this.persistent = false;
}, },
// 获取校区教室导航列表 // 获取校区教室导航列表
getPlanList() { getPlanList() {
GetClassPlanStatistical(this.msg).then(res => { GetClassPlanStatistical(this.msg)
.then((res) => {
if (res.Code == 1) { if (res.Code == 1) {
this.dataList = res.Data; this.dataList = res.Data;
} }
}).catch(() => {
}) })
.catch(() => {});
}, },
//获取教室下拉 //获取教室下拉
getClassRoomList() { getClassRoomList() {
queryClassRoomList({}).then(res => { queryClassRoomList({}).then((res) => {
if (res.Code == 1) { if (res.Code == 1) {
this.ClassRoomList = res.Data; this.ClassRoomList = res.Data;
var obj = { var obj = {
RoomName: '请选择', RoomName: "请选择",
RoomId: 0 RoomId: 0,
} };
this.ClassRoomList.unshift(obj); this.ClassRoomList.unshift(obj);
} }
}) });
}, },
exchangeType(){ exchangeType() {
if(this.commonType==1){ if (this.commonType == 1) {
this.commonType=2 this.commonType = 2;
this.typeName='日历模式' this.typeName = "日历模式";
this.getTableList() this.getTableList();
}else{ } else {
this.commonType=1; this.commonType = 1;
this.typeName='列表模式' this.typeName = "列表模式";
this.getPlanList() this.getPlanList();
} }
}, },
getTableList(){ getTableList() {
this.tabMsg.StartTime = this.msg.StartTime; this.tabMsg.StartTime = this.msg.StartTime;
this.tabMsg.EndTime = this.msg.EndTime; this.tabMsg.EndTime = this.msg.EndTime;
this.tabMsg.ClassRoomId = this.msg.ClassRoomId; this.tabMsg.ClassRoomId = this.msg.ClassRoomId;
this.tabMsg.ClassType = this.msg.ClassType; this.tabMsg.ClassType = this.msg.ClassType;
GetClassPlanStatisticalPage(this.tabMsg).then(res => { GetClassPlanStatisticalPage(this.tabMsg).then((res) => {
if (res.Code == 1) { if (res.Code == 1) {
this.tableData = res.Data.PageData; this.tableData = res.Data.PageData;
this.PageCount = res.Data.PageCount; this.PageCount = res.Data.PageCount;
} }
}) });
}, },
getChange(val) { getChange(val) {
this.tabMsg.PageIndex = val; this.tabMsg.PageIndex = val;
this.getTableList() this.getTableList();
}, },
getTypeWay(){ getTypeWay() {
if(this.commonType==2){ if (this.commonType == 2) {
this.getTableList() this.getTableList();
}else{ } else {
this.getPlanList() this.getPlanList();
}
}
} }
}; },
},
};
</script> </script>
<style lang="scss">
.xg .el-input--prefix .el-input__inner {
padding-left: 50px;
}
</style>
...@@ -1047,6 +1047,11 @@ const routes = [{ ...@@ -1047,6 +1047,11 @@ const routes = [{
component: () => component: () =>
import("pages/classroom/courseInfo") import("pages/classroom/courseInfo")
}, },
{
path: "/teacher/feedBackList", //教室本次上课反馈
component: () =>
import("pages/teacher/feedBackList")
},
{ {
path: "/teacher/myClass", //我的班级 path: "/teacher/myClass", //我的班级
component: () => component: () =>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment