Commit 2a4972bf authored by 吴春's avatar 吴春
parents 204f5ec8 bab5738b
...@@ -22,12 +22,23 @@ export function PlanAppointmentConfig(data) { ...@@ -22,12 +22,23 @@ export function PlanAppointmentConfig(data) {
}); });
} }
/**
* 修改学员上课方式
*/
export function SetGuestCheckStyle(data) {
return request({
url: '/ScheduleCourse/SetGuestCheckStyle',
method: 'post',
data
});
}
/** /**
* 获取学员出勤情况 * 获取学员出勤情况
*/ */
export function getStudentAttendanceDayStatistics(data) { export function getStudentAttendanceDayStatistics(data) {
return request({ return request({
url: '/stu/GetStudentAttendanceDayStatistics', url: '/ScheduleCourse/GetAppointCheckPage',
method: 'post', method: 'post',
data data
}); });
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
<q-field filled label="老师" stack-label class="col-6"> <q-field filled label="老师" stack-label class="col-6">
<template v-slot:control> <template v-slot:control>
<div>{{ saveObj.TeacherName }}</div> <div>{{ saveObj.TeacherName }}</div>
<!-- dateObj.date>formattedString -->
<q-btn color="accent" size="xs" label="修改" <q-btn color="accent" size="xs" label="修改"
v-if="auth.IsEdit&&saveObj.ClassType==3&&(saveObj.State==1||saveObj.State==2)" @click="modifyTeacher" v-if="auth.IsEdit&&saveObj.ClassType==3&&(saveObj.State==1||saveObj.State==2)" @click="modifyTeacher"
class="q-ml-md" /> class="q-ml-md" />
...@@ -73,6 +72,8 @@ ...@@ -73,6 +72,8 @@
saveObj.AppointState == 1 && saveObj.AppointState == 1 &&
isShowTag(saveObj.GuestList, saveObj.ScrollMinNum) isShowTag(saveObj.GuestList, saveObj.ScrollMinNum)
" /> " />
<q-btn color="accent" size="xs" label="取消" v-if="auth.IsEdit
" @click="CancelAdminAppointment(saveObj)" class="q-ml-md" :loading="saveLoading" />
</template> </template>
</q-field> </q-field>
<q-field filled label="最小成班人数:" stack-label class="col-6" v-if="saveObj.ClassType == 3"> <q-field filled label="最小成班人数:" stack-label class="col-6" v-if="saveObj.ClassType == 3">
...@@ -138,14 +139,17 @@ ...@@ -138,14 +139,17 @@
<script> <script>
import { import {
CancelAppointment, CancelAppointment,
SetSureAppointment SetSureAppointment,
cancelSureAppointment
} from "../../../api/studyabroad/subscribe.js"; } from "../../../api/studyabroad/subscribe.js";
import ChangeCourse from "./changeCourse"; import ChangeCourse from "./changeCourse";
import MakeUp from "./makeUp.vue" import MakeUp from "./makeUp.vue"
import CancelSub from './deleteStu' import CancelSub from './deleteStu'
import Room from "./changeRoom.vue" import Room from "./changeRoom.vue"
import changeTeacher from "./changeTeacher.vue" import changeTeacher from "./changeTeacher.vue"
import { date } from 'quasar' import {
date
} from 'quasar'
export default { export default {
components: { components: {
ChangeCourse, ChangeCourse,
...@@ -259,6 +263,45 @@ ...@@ -259,6 +263,45 @@
} }
}); });
}, },
//取消预约
CancelAdminAppointment(item) {
let that = this;
var postMsg = {
AppointIds: "",
Date: this.dateObj.date,
ShiftSort: item.ShiftSort,
TeacherId: item.Tid
};
var tempList = [];
if (item.GuestList && item.GuestList.length > 0) {
item.GuestList.forEach(subItem => {
tempList.push(subItem.AppointmentId);
})
}
if (tempList && tempList.length > 0) {
postMsg.AppointIds = tempList.join(",");
}
this.$q
.dialog({
title: "提示信息",
message: "是否要取消本次预约",
cancel: true,
ok: "是",
cancel: "否"
})
.onOk(() => {
cancelSureAppointment(postMsg).then(res => {
if (res.Code == 1) {
that.$q.notify({
message: "操作成功",
position: "top"
});
that.$emit("close");
}
});
})
.onCancel(() => {});
},
//显示调课弹窗 //显示调课弹窗
showChangeCourse() { showChangeCourse() {
this.CourseObj = { this.CourseObj = {
......
...@@ -482,14 +482,6 @@ ...@@ -482,14 +482,6 @@
}, },
//获取学生列表 //获取学生列表
getStu_V2() { getStu_V2() {
// if (!this.stuMsg_v2.StuName) {
// this.$q.notify({
// position: "top",
// message: "请输入学生姓名",
// timeout: 2500
// });
// return;
// }
if (this.editType == 1) { if (this.editType == 1) {
this.stuMsg_v2.NextCourseGradeNo = this.checkChapter.ChapterGradeNo; this.stuMsg_v2.NextCourseGradeNo = this.checkChapter.ChapterGradeNo;
this.stuMsg_v2.CourseGradeId = this.checkChapter.CourseRate; this.stuMsg_v2.CourseGradeId = this.checkChapter.CourseRate;
...@@ -544,6 +536,7 @@ ...@@ -544,6 +536,7 @@
} }
}); });
this.saveMsg.ChapterNo = this.checkChapter.ChapterNo; this.saveMsg.ChapterNo = this.checkChapter.ChapterNo;
// HK 2024-09-06 注释,可以不选老师,不选老师就默认通班的时间段
// this.saveMsg.TeacherId = 0; // this.saveMsg.TeacherId = 0;
// this.teacherTimeList = []; // this.teacherTimeList = [];
//获取学生列表 //获取学生列表
...@@ -677,48 +670,6 @@ ...@@ -677,48 +670,6 @@
}, },
//保存约课 //保存约课
SaveStuAppointment() { SaveStuAppointment() {
// this.$refs.CourseId.validate();
// this.$refs.StuId.validate();
// if (!this.saveMsg.CourseId) {
// this.$q.notify({
// type: 'negative',
// position: "top",
// message: `请选择课程`
// })
// return;
// }
// if(!this.saveMsg.ChapterNo){
// this.$q.notify({
// type: 'negative',
// position: "top",
// message: `请选择章节`
// })
// return;
// }
// if(!this.saveMsg.TeacherId){
// this.$q.notify({
// type: 'negative',
// position: "top",
// message: `请选择老师`
// })
// return;
// }
// if (this.courseCheckList.length === 0) {
// this.$q.notify({
// message: "请选择上课时段",
// position: "top",
// type: "negative"
// });
// return;
// }
// if(this.saveMsg.ChooseStuList.length===0){
// this.$q.notify({
// message: "请添加学员",
// position: "top",
// type: "negative"
// });
// return;
// }
var tipStr = "" var tipStr = ""
if (this.saveMsg.ChooseStuList && this.saveMsg.ChooseStuList.length > 0) { if (this.saveMsg.ChooseStuList && this.saveMsg.ChooseStuList.length > 0) {
this.saveMsg.ChooseStuList.forEach(item => { this.saveMsg.ChooseStuList.forEach(item => {
......
...@@ -44,8 +44,8 @@ ...@@ -44,8 +44,8 @@
</div> </div>
<div class="col-3"> <div class="col-3">
<q-select @input="getClassList" standout="bg-primary text-white" v-model="msg.CourseSubject" <q-select @input="getClassList" standout="bg-primary text-white" v-model="msg.CourseSubject"
:options="CourseSubjectList" option-label="SubjectName" option-value="Id" emit-value map-options label="所属科目" :options="CourseSubjectList" option-label="SubjectName" option-value="Id" emit-value map-options
clearable /> label="所属科目" clearable />
</div> </div>
<div class="col-3"> <div class="col-3">
<q-input @change="getClassList" clearable standout="bg-primary text-white" v-model="msg.TeacherName" <q-input @change="getClassList" clearable standout="bg-primary text-white" v-model="msg.TeacherName"
...@@ -55,6 +55,18 @@ ...@@ -55,6 +55,18 @@
<q-input @change="getClassList" clearable standout="bg-primary text-white" v-model="msg.CourseName" <q-input @change="getClassList" clearable standout="bg-primary text-white" v-model="msg.CourseName"
label="学习课程" @clear="getClassList" maxlength="20" /> label="学习课程" @clear="getClassList" maxlength="20" />
</div> </div>
<div class="col-3">
<q-input v-model="msg.StartTime" mask="date" label="开班时间" standout="bg-primary text-white" clearable
@clear="getClassList" @change="getClassList">
<template v-slot:append>
<q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qCStartTime" transition-show="scale" transition-hide="scale">
<q-date v-model="msg.StartTime" mask="YYYY-MM-DD" @input="() =>changeDate()" />
</q-popup-proxy>
</q-icon>
</template>
</q-input>
</div>
<div class="col-3"> <div class="col-3">
<q-select @input="getClassList" standout="bg-primary text-white" option-value="SId" option-label="SName" <q-select @input="getClassList" standout="bg-primary text-white" option-value="SId" option-label="SName"
v-model="msg.School_Id" :options="schoolList" emit-value map-options label="关联校区" /> v-model="msg.School_Id" :options="schoolList" emit-value map-options label="关联校区" />
...@@ -97,12 +109,14 @@ ...@@ -97,12 +109,14 @@
pageSize: 12, pageSize: 12,
rowsPerPage: 12, rowsPerPage: 12,
ClassName: '', //班级名称 ClassName: '', //班级名称
ClassStatus: 0, //班级状态 ClassStatus: 2, //班级状态
TeacherName: '', //带班老师 TeacherName: '', //带班老师
CourseName: '', //学习课程 CourseName: '', //学习课程
School_Id: -1, //关联校区 School_Id: -1, //关联校区
ClassNo: '', //班号 ClassNo: '', //班号
CourseSubject: "", //所属科目 CourseSubject: "", //所属科目
StartTime: "", //开班开始时间
EndTime: "", //开班结束时间
}, },
//班级状态 //班级状态
classStatusList: [], classStatusList: [],
...@@ -137,6 +151,10 @@ ...@@ -137,6 +151,10 @@
this.getClassList(); this.getClassList();
}, },
methods: { methods: {
changeDate() {
this.$refs.qCStartTime.hide();
this.getClassList();
},
queryCourseSubject() { queryCourseSubject() {
getCourseSubject({}).then(res => { getCourseSubject({}).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
......
...@@ -68,15 +68,8 @@ ...@@ -68,15 +68,8 @@
label="学习课程" @clear="getClassList" maxlength="20" /> label="学习课程" @clear="getClassList" maxlength="20" />
</div> </div>
<div class="col-3"> <div class="col-3">
<!-- <q-field filled dense label="开始时间" standout="bg-primary text-white">
<template v-slot:control>
<el-date-picker type="date" style="width:100%" v-model="msg.StartTime" value-format="yyyy-MM-dd"
placeholder="开班时间" @change="getClassList">
</el-date-picker>
</template>
</q-field> -->
<q-input v-model="msg.StartTime" mask="date" label="开班时间" standout="bg-primary text-white" clearable <q-input v-model="msg.StartTime" mask="date" label="开班时间" standout="bg-primary text-white" clearable
@clear="getClassList"> @clear="getClassList" @change="getClassList">
<template v-slot:append> <template v-slot:append>
<q-icon name="event" class="cursor-pointer"> <q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qCStartTime" transition-show="scale" transition-hide="scale"> <q-popup-proxy ref="qCStartTime" transition-show="scale" transition-hide="scale">
...@@ -129,7 +122,7 @@ ...@@ -129,7 +122,7 @@
pageSize: 12, pageSize: 12,
rowsPerPage: 12, rowsPerPage: 12,
ClassName: '', //班级名称 ClassName: '', //班级名称
ClassStatus: 0, //班级状态 ClassStatus: 2, //班级状态
TeacherName: '', //带班老师 TeacherName: '', //带班老师
CourseName: '', //学习课程 CourseName: '', //学习课程
School_Id: -1, //关联校区 School_Id: -1, //关联校区
...@@ -159,7 +152,7 @@ ...@@ -159,7 +152,7 @@
if (this.$route.query && this.$route.query.ClassName) { if (this.$route.query && this.$route.query.ClassName) {
this.msg.ClassName = decodeURI(this.$route.query.ClassName) this.msg.ClassName = decodeURI(this.$route.query.ClassName)
} }
this.msg.StartTime = this.$commonUtils.getCurrentDate(); //this.msg.StartTime = this.$commonUtils.getCurrentDate();
this.getClassStatus(); this.getClassStatus();
this.getSchool(); this.getSchool();
this.GetTeacherList(); this.GetTeacherList();
......
...@@ -15,34 +15,14 @@ ...@@ -15,34 +15,14 @@
<div class="page-body studentManage"> <div class="page-body studentManage">
<div class="page-search row items-center "> <div class="page-search row items-center ">
<div class="col row wrap q-mr-lg q-col-gutter-md"> <div class="col row wrap q-mr-lg q-col-gutter-md">
<div class="col-3">
<q-select @input="getClass" standout="bg-primary text-white" option-value="SId" option-label="SName"
v-model="msg.School_Id" :options="schoolList" emit-value map-options label="关联校区" />
</div>
<div class="col-3">
<q-select @input="getClass" standout="bg-primary text-white" option-value="CourseId" option-label="CourseName"
v-model="msg.CouseId" :options="CourseList" emit-value map-options label="课程" use-input
@filter="filterCourse">
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
</div>
<div class="col-3">
<q-select @input="refreshPage" standout="bg-primary text-white" option-value="ClassId"
option-label="ClassName" v-model="msg.ClassId" :options="ClassList" emit-value map-options label="班级"
use-input @filter="filterClass" />
</div>
<div class="col-3 Sysuser_Date"> <div class="col-3 Sysuser_Date">
<q-field filled> <q-field filled label="日期" stack-label>
<template v-slot:control> <template v-slot:control>
<el-date-picker v-model="msg.StartDate" type="date" placeholder="开始日期" value-format="yyyy-MM-dd" <div class="self-center full-width no-outline" tabindex="0">{{ daterangeTimes }}</div>
:picker-options="option" :clearable='false' @change="resetSearch"> <q-popup-proxy :offset="[0, 10]" ref="qDateProxy">
</el-date-picker>     <q-date v-model="dateRange" :options="optionsFn" range mask="YYYY/MM/DD" landscape
@range-end="dateRangeHandler"></q-date>
</q-popup-proxy>
</template> </template>
</q-field> </q-field>
</div> </div>
...@@ -64,60 +44,23 @@ ...@@ -64,60 +44,23 @@
<div class="col-2 q-table__title">学员出勤管理</div> <div class="col-2 q-table__title">学员出勤管理</div>
<q-space /> <q-space />
<div class="page-option"> <div class="page-option">
<q-btn color="accent" size="sm" class="q-mr-md" label="导出" @click="getexport()" /> <!-- <q-btn color="accent" size="sm" class="q-mr-md" label="导出" @click="getexport()" /> -->
</div> </div>
</template> </template>
<template v-slot:body-cell-GuestName="props"> <template v-slot:body-cell-GuestName="props">
<q-td :props="props" style="padding-right:0px"> <q-td :props="props" style="padding-right:0px">
<div v-for="(x,index) in props.row.GuestList" :key="index"> {{props.row.GuestName}}
<div class="border-bottom">
{{ x.GuestName }}
</div>
</div>
<div v-if="!props.row.GuestList || props.row.GuestList.length == 0">
<div class="remark-font">暂无</div>
</div>
</q-td> </q-td>
</template> </template>
<template v-slot:body-cell-CurrentDeductionHours="props"> <template v-slot:body-cell-optioned="props">
<q-td :props="props"> <q-td :props="props">
<div v-for="(x,index) in props.row.GuestList" :key="index"> <q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="修改上课方式"
<div class="border-bottom"> @click="EditClassMode(props.row)" />
{{ x.CurrentDeductionHours }}
</div>
</div>
<div v-if="!props.row.GuestList || props.row.GuestList.length == 0">
<div class="remark-font">暂无</div>
</div>
</q-td>
</template>
<template v-slot:body-cell-CheckStatus="props">
<q-td :props="props">
<div v-for="(x,index) in props.row.GuestList" :key="index">
<div class="border-bottom">
<span v-if="x.CheckStatus == 0">正常</span>
<span v-if="x.CheckStatus == 1">缺席</span>
<span v-if="x.CheckStatus == 2">请假</span>
</div>
</div>
<div v-if="!props.row.GuestList || props.row.GuestList.length == 0">
<div class="remark-font">暂无</div>
</div>
</q-td> </q-td>
</template> </template>
<template v-slot:bottom> <template v-slot:bottom>
<!-- <q-pagination class="full-width justify-end" v-model="msg.pageIndex" color="primary" :max="pageCount" <q-pagination class="full-width justify-end" v-model="msg.PageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" /> --> :input="true" @input="changePage" />
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props">
<div v-for="(x,index) in props.row.GuestList" :key="index">
<div class="border-bottom">
<q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
@click="EditCourse(x,props.row)" />
</div>
</div>
</q-td>
</template> </template>
</q-table> </q-table>
</div> </div>
...@@ -135,7 +78,25 @@ ...@@ -135,7 +78,25 @@
<q-card-actions align="right" class="bg-white"> <q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="IsShowDialog=false" /> <q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="IsShowDialog=false" />
<q-btn label="立即提交" color="accent" class="q-px-md" style="font-weight:400 !important" <q-btn label="立即提交" color="accent" class="q-px-md" style="font-weight:400 !important"
@click="saveAttendance" /> @click="saveAttendance"/>
</q-card-actions>
</q-card>
</q-dialog>
<!-- 修改上课方式 -->
<q-dialog v-model="IsShowGuestCheck" persistent transition-show="scale" transition-hide="scale">
<q-card style="width: 400px;max-width:500px;">
<q-card-section>
<div class="text-h6">修改上课方式</div>
</q-card-section>
<q-card-section class="q-pt-none scroll" style="max-height: 70vh">
<q-select standout="bg-primary text-white" option-value="Id" option-label="Name" v-model="ClassModeMsg.AttendanceMethod"
:options="GuestCheckList" emit-value map-options label="上课方式" />
</q-card-section>
<q-separator />
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="IsShowGuestCheck=false" />
<q-btn label="立即提交" color="accent" class="q-px-md" style="font-weight:400 !important"
@click="setGuestCheck" :loading="GuestCheckLoading"/>
</q-card-actions> </q-card-actions>
</q-card> </q-card>
</q-dialog> </q-dialog>
...@@ -155,7 +116,7 @@ ...@@ -155,7 +116,7 @@
getClassDropDownList getClassDropDownList
} from '../../api/school/index'; } from '../../api/school/index';
import { import {
getStudentAttendanceDayStatistics getStudentAttendanceDayStatistics,SetGuestCheckStyle
} from "../../api/stuMan/index" } from "../../api/stuMan/index"
import selectTree from "../../components/common/select-tree"; import selectTree from "../../components/common/select-tree";
import { import {
...@@ -164,6 +125,7 @@ ...@@ -164,6 +125,7 @@
import { import {
EduDownLoad, EduDownLoad,
} from '../../api/common/common'; } from '../../api/common/common';
import { date } from 'quasar'
export default { export default {
meta: { meta: {
title: "学员出勤管理" title: "学员出勤管理"
...@@ -174,11 +136,11 @@ ...@@ -174,11 +136,11 @@
data() { data() {
return { return {
columns: [{ columns: [{
name: "ClassName", name: "GuestName",
required: true, required: true,
label: "班级", label: "学生",
align: "left", align: "left",
field: row => row.ClassName field: row => row.GuestName
}, },
{ {
name: "CourseName", name: "CourseName",
...@@ -195,39 +157,25 @@ ...@@ -195,39 +157,25 @@
field: row => row.TeacherName field: row => row.TeacherName
}, },
{ {
name: "ClassDate", name: "StartTime",
required: true,
label: "上课日期",
align: "left",
field: row => row.ClassDate
},
{
name: "TimeBucket",
required: true, required: true,
label: "上课时间", label: "上课时间",
align: "left", align: "left",
field: row => row.TimeBucket field: row => row.StartTime
}, },
{ {
name: "GuestName", name: "EndTime",
required: true, required: true,
label: "学生", label: "下课时间",
align: "left", align: "left",
field: row => row.GuestName field: row => row.EndTime
}, },
{ {
name: "CurrentDeductionHours", name: "AttendanceMethodName",
required: true, required: true,
label: "课时", label: "上课方式",
align: "left", align: "left",
field: row => row.CurrentDeductionHours field: row => row.AttendanceMethodName
},
{
name: "CheckStatus",
required: true,
label: "状态",
align: "left",
field: row => row.CheckStatus
}, },
{ {
name: "optioned", name: "optioned",
...@@ -252,13 +200,11 @@ ...@@ -252,13 +200,11 @@
} }
], ],
msg: { msg: {
PageIndex:1,
PageSize: 10,
StartDate: '', StartDate: '',
School_Id: '', EndDate: '',
CouseId: 0,
ClassId: 0,
OrderGuestId: '',
GuestName: '', GuestName: '',
CheckStatus: -1,
}, },
IsShowDialog: false, IsShowDialog: false,
//课程分类树形列表 //课程分类树形列表
...@@ -299,6 +245,29 @@ ...@@ -299,6 +245,29 @@
StudyNum: 0, StudyNum: 0,
}, },
iseditjurisdiction: false, iseditjurisdiction: false,
ClassModeMsg: {
ClassCheckId: 0,
AttendanceMethod: null,
},
pageCount: 0,
total:0,
daterangeTimes:'',
IsShowGuestCheck: false,
GuestCheckList: [{
Name: '线下',
Id: 1
}, {
Name: '线上',
Id: 2
}, {
Name: '录播',
Id: 3
}, ],
GuestCheckLoading: false,
dateRange: {
to: '',
from:''
}
}; };
}, },
mounted() { mounted() {
...@@ -315,13 +284,60 @@ ...@@ -315,13 +284,60 @@
let day = d.getDate(); let day = d.getDate();
day = day < 10 ? '0' + day : day; day = day < 10 ? '0' + day : day;
let today = year + '-' + month + '-' + day; let today = year + '-' + month + '-' + day;
this.msg.StartDate = today;
this.msg.StartDate = date.formatDate(date.addToDate(new Date(), { days: -31 }), 'YYYY-MM-DD');
this.msg.EndDate = date.formatDate(date.addToDate(new Date(), { days: 0 }), 'YYYY-MM-DD');;
this.daterangeTimes = `${this.msg.StartDate}/${today}`
this.dateRange.to = date.formatDate(date.addToDate(new Date(), { days: -31 }), 'YYYY/MM/DD');
this.dateRange.from = date.formatDate(date.addToDate(new Date(), { days: 0 }), 'YYYY/MM/DD');
this.getlist(); this.getlist();
this.getSchool() this.getSchool()
this.getClass() this.getClass()
this.getCourseList() this.getCourseList()
}, },
methods: { methods: {
// 修改上课方式
EditClassMode(item) {
this.ClassModeMsg.ClassCheckId = item.ClassCheckId
this.ClassModeMsg.AttendanceMethod = item.AttendanceMethod
this.IsShowGuestCheck = true
},
setGuestCheck() {
if(!this.ClassModeMsg.AttendanceMethod) return this.$q.notify({
type: 'negative',
position: "top",
message: `请选择上课方式!`
})
this.GuestCheckLoading = true;
SetGuestCheckStyle(this.ClassModeMsg)
.then(res => {
this.ClassModeMsg = {
ClassCheckId: 0,
AttendanceMethod: null,
},
this.IsShowGuestCheck = false
this.GuestCheckLoading = false;
this.resetSearch()
})
.catch(() => {
this.GuestCheckLoading = false;
});
},
optionsFn(cd) {
return cd >= date.formatDate(date.addToDate(new Date(), { days: 1 }), 'YYYY-MM-DD')
},
dateRangeHandler(e) {
this.msg.StartDate = `${e.from.year}-${e.from.month>9?e.from.month:'0'+e.from.month}-${e.from.day>9?e.from.day:'0'+e.from.day}`
this.msg.EndDate = `${e.to.year}-${e.to.month>9?e.to.month:'0'+e.to.month}-${e.to.day>9?e.to.day:'0'+e.to.day}`
this.daterangeTimes = `${this.msg.StartDate} / ${this.msg.EndDate} `
this.dateRange.to = `${e.from.year}/${e.from.month}/${e.from.day}`
this.dateRange.from = `${e.to.year}/${e.to.month}/${e.to.day}`
if (this.$refs.qDateProxy) this.$refs.qDateProxy.hide()
this.resetSearch()
},
//获取校区列表 //获取校区列表
getSchool() { getSchool() {
getSchoolDropdown({}).then(res => { getSchoolDropdown({}).then(res => {
...@@ -398,13 +414,20 @@ ...@@ -398,13 +414,20 @@
resetSearch() { resetSearch() {
this.getlist(); this.getlist();
}, },
//翻页
changePage(val) {
this.msg.PageIndex = val;
this.getList();
},
//获取菜单分页列表 //获取菜单分页列表
getlist() { getlist() {
this.loading = true; this.loading = true;
getStudentAttendanceDayStatistics(this.msg) getStudentAttendanceDayStatistics(this.msg)
.then(res => { .then(res => {
this.loading = false; this.loading = false;
this.data = res.Data; this.data = res.Data.PageData;
this.total = res.data.data.count;
this.pageCount = res.Data.pageModel.PageCount;
}) })
.catch(() => { .catch(() => {
this.loading = false; this.loading = false;
......
...@@ -40,13 +40,25 @@ ...@@ -40,13 +40,25 @@
</div> </div>
<div class="col-3"> <div class="col-3">
<q-select @input="getClassList" standout="bg-primary text-white" v-model="msg.CourseSubject" <q-select @input="getClassList" standout="bg-primary text-white" v-model="msg.CourseSubject"
:options="CourseSubjectList" option-label="SubjectName" option-value="Id" emit-value map-options label="所属科目" :options="CourseSubjectList" option-label="SubjectName" option-value="Id" emit-value map-options
clearable /> label="所属科目" clearable />
</div> </div>
<div class="col-3"> <div class="col-3">
<q-input @change="getClassList" clearable standout="bg-primary text-white" v-model="msg.CourseName" <q-input @change="getClassList" clearable standout="bg-primary text-white" v-model="msg.CourseName"
label="学习课程" @clear="getClassList" maxlength="20" /> label="学习课程" @clear="getClassList" maxlength="20" />
</div> </div>
<div class="col-3">
<q-input v-model="msg.StartTime" mask="date" label="开班时间" standout="bg-primary text-white" clearable
@clear="getClassList" @change="getClassList">
<template v-slot:append>
<q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qCStartTime" transition-show="scale" transition-hide="scale">
<q-date v-model="msg.StartTime" mask="YYYY-MM-DD" @input="() =>changeDate()" />
</q-popup-proxy>
</q-icon>
</template>
</q-input>
</div>
<div class="col-3"> <div class="col-3">
<q-select @input="getClassList" standout="bg-primary text-white" option-value="SId" option-label="SName" <q-select @input="getClassList" standout="bg-primary text-white" option-value="SId" option-label="SName"
v-model="msg.School_Id" :options="schoolList" emit-value map-options label="关联校区" /> v-model="msg.School_Id" :options="schoolList" emit-value map-options label="关联校区" />
...@@ -90,12 +102,14 @@ ...@@ -90,12 +102,14 @@
pageSize: 12, pageSize: 12,
rowsPerPage: 12, rowsPerPage: 12,
ClassName: '', //班级名称 ClassName: '', //班级名称
ClassStatus: 0, //班级状态 ClassStatus: 2, //班级状态
TeacherName: '', //带班老师 TeacherName: '', //带班老师
Teacher_Id: 0, Teacher_Id: 0,
CourseName: '', //学习课程 CourseName: '', //学习课程
School_Id: -1, //关联校区 School_Id: -1, //关联校区
CourseSubject: "", //所属科目 CourseSubject: "", //所属科目
StartTime: "", //开班开始时间
EndTime: "", //开班结束时间
}, },
//班级状态 //班级状态
classStatusList: [], classStatusList: [],
...@@ -124,6 +138,10 @@ ...@@ -124,6 +138,10 @@
this.getClassList(); this.getClassList();
}, },
methods: { methods: {
changeDate() {
this.$refs.qCStartTime.hide();
this.getClassList();
},
queryCourseSubject() { queryCourseSubject() {
getCourseSubject({}).then(res => { getCourseSubject({}).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
......
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