Commit 38eb4cb5 authored by zhengke's avatar zhengke

修改

parent 76ee6bb5
...@@ -118,6 +118,7 @@ ...@@ -118,6 +118,7 @@
margin: 20px; margin: 20px;
padding-left: 20px; padding-left: 20px;
font-size: 12px; font-size: 12px;
color:#000;
} }
.lessStuInnerList { .lessStuInnerList {
...@@ -157,21 +158,28 @@ ...@@ -157,21 +158,28 @@
.classQue .commonLessName { .classQue .commonLessName {
color: #fff; color: #fff;
} }
.el-select-dropdown,.el-picker-panel{
z-index:9999!important;
}
.lesson_Form .el-calendar__header{
display:none;
}
</style> </style>
<template> <template>
<div v-if="!isShowSign"> <div v-if="!isShowSign">
<div class="lesson_Form"> <div class="lesson_Form">
<div class="calenderHeader"> <div class="calenderHeader">
<div> <div>
<el-radio-group v-model="checkedDays" size="mini"> <el-radio-group v-model="checkedType" size="mini">
<!-- <el-radio-button label="日"></el-radio-button> --> <!-- <el-radio-button label="日"></el-radio-button>
<el-radio-button label="月"></el-radio-button> <el-radio-button label="月"></el-radio-button>
<!-- <el-radio-button style="margin-left:20px;border-left:1px solid #DCDFE6;" label="今天"></el-radio-button> --> <el-radio-button style="margin-left:20px;border-left:1px solid #DCDFE6;" label="今天"></el-radio-button> -->
<el-radio-button :label="1">列表模式</el-radio-button>
<el-radio-button :label="2">日历模式</el-radio-button>
</el-radio-group> </el-radio-group>
</div> </div>
<div> <div>
<q-btn color="accent q-px-md" class="q-mr-md" icon="add" size="12px" label="新增日程" @click="addNew()"> <q-btn color="accent" size="sm" class="q-mr-md" icon="add" label="新增日程" @click="addNew()">
<q-popup-proxy> <q-popup-proxy>
<q-banner v-if="isShowMenu"> <q-banner v-if="isShowMenu">
<div class="calenderDialog"> <div class="calenderDialog">
...@@ -222,93 +230,183 @@ ...@@ -222,93 +230,183 @@
</q-btn> </q-btn>
</div> </div>
</div> </div>
<el-calendar v-model="value" id="calendar"> <div style="text-align:right;margin:12px 20px 8px 0">
<!-- 这里使用的是 2.5 slot 语法,对于新项目请使用 2.6 slot 语法--> <el-date-picker
<template slot="dateCell" slot-scope="{date, data}"> v-model="comMsg.QMonth"
<!--自定义内容--> type="month"
<div class="calendar-day">{{ data.day.split('-').slice(2).join('-') }}</div> size="small"
<div v-for="item in calendarData" @click="getClicked(item)">  value-format="yyyy-MM"
<div v-if="item.ClassDateStr==data.day"> @change="getClassPlan()"
<div class="calendarTop"> placeholder="选择月">
<div>{{item.RoomName}}</div> </el-date-picker>
<div> </div>
<i class="iconfont icon-edit Lessicon_Edit" @click.stop="getInfo(item)">
<q-popup-proxy> <template v-if="checkedType===1">
<q-banner v-if="isShowEdit"> <q-table style="margin:20px;" :pagination="msg" no-data-label="暂无相关数据" flat class="sticky-column-table"
<div class="calenderDialog"> separator="none" :data="calendarData" :columns="columns" row-key="name">
<div style="margin:10px 0 15px 0;">{{item.ClassDateStr}}课程安排</div> <template v-slot:body-cell-TimeList="props">
<q-select filled stack-label option-value="TId" option-label="TeacherName" <q-td auto-width :props="props">
v-model="addMsg.TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师" <div v-for="(item,index) in props.row.TimeList">
:dense="false" class="col-6 q-pb-lg" emit-value map-options /> {{index+1}}节课 {{item.StartTime}}-{{item.EndTime}}
<q-input filled v-model="addMsg.ClassDate" class="col-6 q-pb-lg" mask="date" label="上课时间"> </div>
<template v-slot:append> </q-td>
<q-icon name="event" class="cursor-pointer"> </template>
<q-popup-proxy ref="qDateProxy3" transition-show="scale" transition-hide="scale"> <template v-slot:body-cell-optioned="props">
<q-date v-model="addMsg.ClassDate" @input=' () => $refs.qDateProxy3[0].hide()' /> <q-td :props="props" style="width:15%;">
</q-popup-proxy> <q-btn flat size="xs" icon="edit" color="accent" style="font-weight:400" label="编辑"
</q-icon> @click="getInfo(props.row)">
</template> <q-popup-proxy>
</q-input> <q-banner v-if="isShowEdit">
<q-toggle size="md" label="更多设置" left-label color="primary" :false-value="0" :true-value="1" <div class="calenderDialog">
v-model="isSetMoreTwo" /> <div style="margin:10px 0 15px 0;">{{props.row.ClassDateStr}}课程安排</div>
<template v-if="isSetMoreTwo==1"> <q-select filled stack-label option-value="TId" option-label="TeacherName"
<q-select filled stack-label option-value="RoomId" option-label="RoomName" v-model="addMsg.TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师"
v-model="addMsg.ClassRoomId" ref="ClassRoomId" :options="ClassRoomList" label="关联教室" :dense="false" class="col-6 q-pb-lg" emit-value map-options />
<q-input filled v-model="addMsg.ClassDate" class="col-6 q-pb-lg" mask="date" label="上课时间">
<template v-slot:append>
<q-icon name="event" class="cursor-pointer">
<q-popup-proxy ref="qDateProxy3" transition-show="scale" transition-hide="scale">
<q-date v-model="addMsg.ClassDate" @input=' () => $refs.qDateProxy3[0].hide()' />
</q-popup-proxy>
</q-icon>
</template>
</q-input>
<q-toggle size="md" label="更多设置" left-label color="primary" :false-value="0" :true-value="1"
v-model="isSetMoreTwo" />
<template v-if="isSetMoreTwo==1">
<q-select filled stack-label option-value="RoomId" option-label="RoomName"
v-model="addMsg.ClassRoomId" ref="ClassRoomId" :options="ClassRoomList" label="关联教室"
:dense="false" class="col-6 q-pb-lg" emit-value map-options />
<div style="display:flex;justify-content:flex-end;margin-bottom:20px;">
<q-btn @click="addStep()" size="10px" round color="primary"
icon="iconfont icon-img_haha" />
</div>
<div class="row wrap" style="position:relative;"
v-for="(subItem,subIndex) in addMsg.PlanTimeList">
<div class="col-6">
<q-input filled stack-label maxlength="20" :dense="false" v-model="subItem.StartTime"
ref="StartTime" class="col-6 q-pr-lg q-pb-lg" label=""
:rules="[val => !!val || '请填写开始时间']" />
</div>
<div class="col-6">
<q-input filled stack-label maxlength="20" :dense="false" v-model="subItem.EndTime"
ref="EndTime" class="col-6 q-pr-lg q-pb-lg" label=""
:rules="[val => !!val || '请填写开始时间']" />
</div>
<div class="delBtnStyle">
<i @click="delStep(subIndex)" class="iconfont icon-guanbi"></i>
</div>
</div>
</template>
<q-card-actions align="right" class="bg-white">
<q-btn label="取消" flat color="grey-10" @click="isShowEdit=false"
style="font-weight:400 !important" />
<q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important"
@click="saveSteps" />
</q-card-actions>
</div>
</q-banner>
</q-popup-proxy>
</q-btn>
<q-btn flat size="xs" icon="iconfont icon-View" color="accent" style="font-weight:400" label="查看"
@click.stop="getClicked(props.row)"></q-btn>
<q-btn flat size="xs" icon="edit" color="negative" style="font-weight:400" label="删除"
@click.stop="delInfo(props.row)"></q-btn>
</q-td>
</template>
<template v-slot:bottom>
</template>
</q-table>
</template>
<template v-else>
<el-calendar v-model="value" id="calendar">
<!-- 这里使用的是 2.5 slot 语法,对于新项目请使用 2.6 slot 语法-->
<template slot="dateCell" slot-scope="{date, data}">
<!--自定义内容-->
<div class="calendar-day">{{ data.day.split('-').slice(2).join('-') }}</div>
<div v-for="item in calendarData" @click="getClicked(item)">
<div v-if="item.ClassDateStr==data.day">
<div class="calendarTop">
<div>{{item.RoomName}}</div>
<div>
<i class="iconfont icon-edit Lessicon_Edit" @click.stop="getInfo(item)">
<q-popup-proxy>
<q-banner v-if="isShowEdit">
<div class="calenderDialog">
<div style="margin:10px 0 15px 0;">{{item.ClassDateStr}}课程安排</div>
<q-select filled stack-label option-value="TId" option-label="TeacherName"
v-model="addMsg.TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师"
:dense="false" class="col-6 q-pb-lg" emit-value map-options /> :dense="false" class="col-6 q-pb-lg" emit-value map-options />
<div style="display:flex;justify-content:flex-end;margin-bottom:20px;"> <q-input filled v-model="addMsg.ClassDate" class="col-6 q-pb-lg" mask="date" label="上课时间">
<q-btn @click="addStep()" size="10px" round color="primary" <template v-slot:append>
icon="iconfont icon-img_haha" /> <q-icon name="event" class="cursor-pointer">
</div> <q-popup-proxy ref="qDateProxy3" transition-show="scale" transition-hide="scale">
<div class="row wrap" style="position:relative;" <q-date v-model="addMsg.ClassDate" @input=' () => $refs.qDateProxy3[0].hide()' />
v-for="(subItem,subIndex) in addMsg.PlanTimeList"> </q-popup-proxy>
<div class="col-6"> </q-icon>
<q-input filled stack-label maxlength="20" :dense="false" v-model="subItem.StartTime" </template>
ref="StartTime" class="col-6 q-pr-lg q-pb-lg" label="" </q-input>
:rules="[val => !!val || '请填写开始时间']" /> <q-toggle size="md" label="更多设置" left-label color="primary" :false-value="0" :true-value="1"
</div> v-model="isSetMoreTwo" />
<div class="col-6"> <template v-if="isSetMoreTwo==1">
<q-input filled stack-label maxlength="20" :dense="false" v-model="subItem.EndTime" <q-select filled stack-label option-value="RoomId" option-label="RoomName"
ref="EndTime" class="col-6 q-pr-lg q-pb-lg" label="" v-model="addMsg.ClassRoomId" ref="ClassRoomId" :options="ClassRoomList" label="关联教室"
:rules="[val => !!val || '请填写开始时间']" /> :dense="false" class="col-6 q-pb-lg" emit-value map-options />
<div style="display:flex;justify-content:flex-end;margin-bottom:20px;">
<q-btn @click="addStep()" size="10px" round color="primary"
icon="iconfont icon-img_haha" />
</div> </div>
<div class="delBtnStyle"> <div class="row wrap" style="position:relative;"
<i @click="delStep(subIndex)" class="iconfont icon-guanbi"></i> v-for="(subItem,subIndex) in addMsg.PlanTimeList">
<div class="col-6">
<q-input filled stack-label maxlength="20" :dense="false" v-model="subItem.StartTime"
ref="StartTime" class="col-6 q-pr-lg q-pb-lg" label=""
:rules="[val => !!val || '请填写开始时间']" />
</div>
<div class="col-6">
<q-input filled stack-label maxlength="20" :dense="false" v-model="subItem.EndTime"
ref="EndTime" class="col-6 q-pr-lg q-pb-lg" label=""
:rules="[val => !!val || '请填写开始时间']" />
</div>
<div class="delBtnStyle">
<i @click="delStep(subIndex)" class="iconfont icon-guanbi"></i>
</div>
</div> </div>
</div> </template>
</template> <q-card-actions align="right" class="bg-white">
<q-card-actions align="right" class="bg-white"> <q-btn label="取消" flat color="grey-10" @click="isShowEdit=false"
<q-btn label="取消" flat color="grey-10" @click="isShowEdit=false" style="font-weight:400 !important" />
style="font-weight:400 !important" /> <q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important"
<q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important" @click="saveSteps" />
@click="saveSteps" /> </q-card-actions>
</q-card-actions> </div>
</div> </q-banner>
</q-banner> </q-popup-proxy>
</q-popup-proxy> </i>
</i> <i class="iconfont icon-guanbi Less_Close" style="margin-left:5px;" @click.stop="delInfo(item)"></i>
<i class="iconfont icon-guanbi Less_Close" style="margin-left:5px;" @click.stop="delInfo(item)"></i> </div>
</div> </div>
</div> <div class="calendarInner">
<div class="calendarInner"> <div v-for="(subItem,subIndex) in item.TimeList">
<div v-for="(subItem,subIndex) in item.TimeList"> {{subIndex+1}}节课 {{subItem.StartTime}}-{{subItem.EndTime}}
{{subIndex+1}}节课 {{subItem.StartTime}}-{{subItem.EndTime}} </div>
</div> </div>
</div> <div class="caldendarTeacher">
<div class="caldendarTeacher"> <div style="margin-right:5px;">{{item.TeacherName}}</div>
<div style="margin-right:5px;">{{item.TeacherName}}</div> <div>
<div> <q-avatar size="sm" v-if="item.UserIcon">
<q-avatar size="sm" v-if="item.UserIcon"> <img :src="item.UserIcon" />
<img :src="item.UserIcon" /> </q-avatar>
</q-avatar> <q-avatar size="sm" color="teal-10" text-color="white" v-if="!item.UserIcon">
<q-avatar size="sm" color="teal-10" text-color="white" v-if="!item.UserIcon"> {{GetFirst(item.TeacherName)}}</q-avatar>
{{GetFirst(item.TeacherName)}}</q-avatar> </div>
</div> </div>
</div> </div>
<div v-else></div>
</div> </div>
<div v-else></div> </template>
</div> </el-calendar>
</template> </template>
</el-calendar>
</div> </div>
</div> </div>
<div v-else> <div v-else>
...@@ -316,7 +414,7 @@ ...@@ -316,7 +414,7 @@
<div class="Show_SignBack"> <div class="Show_SignBack">
<span @click="isShowSign=false" style="cursor:pointer;"><i class="iconfont icon-zuo1"></i>返回</span> <span @click="isShowSign=false" style="cursor:pointer;"><i class="iconfont icon-zuo1"></i>返回</span>
</div> </div>
<div class="StudentInfo_List"> <div class="StudentInfo_List" style="color:#000;">
<div> <div>
<div>授课老师</div> <div>授课老师</div>
<div>{{dayObj.TeacherName}}</div> <div>{{dayObj.TeacherName}}</div>
...@@ -335,8 +433,37 @@ ...@@ -335,8 +433,37 @@
</div> </div>
</div> </div>
<div class="lessStudentList"> <div class="lessStudentList">
<div class="lessStuTitle">学生签到情况</div> <div class="lessStuTitle">
<div class="lessStuInnerList"> 学生签到情况
</div>
<q-table :pagination="msg" no-data-label="暂无相关数据" flat
class="sticky-column-table" separator="none" hide-bottom :data="dayObj.GuestList" :columns="columns2">
<template v-slot:body-cell-GuestName="props">
<q-td auto-width :props="props" style="width:25%;">
<div style="display:flex;align-items:center;">
<q-avatar size="sm" style="margin:0 5px 5px 0" v-if="props.row.UserIcon">
<img :src="props.row.UserIcon" />
</q-avatar>
<q-avatar size="sm" color="teal-10" style="margin:5px 0 5px 0" text-color="white" v-if="!props.row.UserIcon">
{{props.row.GuestName[0]}}</q-avatar><span style="margin-left:5px;">{{props.row.GuestName}}</span>
</div>
</q-td>
</template>
<template v-slot:body-cell-IsCheck="props">
<q-td auto-width :props="props">
<el-select v-model="props.row.IsCheck" style="width:80px;" size="small" placeholder="小时">
<el-option label="出勤" :value="0"></el-option>
<el-option label="缺勤" :value="1"></el-option>
</el-select>
</q-td>
</template>
<template v-slot:body-cell-optioned="props">
<q-td :props="props" style="width:15%;">
<el-input v-model="props.row.StudyNum" size="small" @keyup.native="checkInteger(props.row,'StudyNum')"></el-input>
</q-td>
</template>
</q-table>
<div class="lessStuInnerList" style="display:none;">
<div class="lessList" v-for="(item,index) in dayObj.GuestList" :key="index" :class="{'classQue':isShowSignBtn&&item.IsCheck==0,'classChu':isShowSignBtn&& <div class="lessList" v-for="(item,index) in dayObj.GuestList" :key="index" :class="{'classQue':isShowSignBtn&&item.IsCheck==0,'classChu':isShowSignBtn&&
item.IsCheck==1}" @click="changeStatus(item)"> item.IsCheck==1}" @click="changeStatus(item)">
<q-avatar size="md" style="margin:12px 0 5px 0" v-if="item.UserIcon"> <q-avatar size="md" style="margin:12px 0 5px 0" v-if="item.UserIcon">
...@@ -357,7 +484,7 @@ ...@@ -357,7 +484,7 @@
</div> </div>
</div> </div>
<!--&&isSigned--> <!--&&isSigned-->
<q-card-actions align="right" class="bg-white" v-if="isShowSignBtn" style="margin-right:45px;"> <q-card-actions align="right" class="bg-white" v-if="isShowSignBtn" style="margin:20px 10px 100px 0;">
<q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="isShowSign=false" /> <q-btn label="取消" flat color="grey-10" style="font-weight:400 !important" @click="isShowSign=false" />
<q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important" @click="saveSign()" /> <q-btn label="确认" color="accent q-px-md" style="font-weight:400 !important" @click="saveSign()" />
</q-card-actions> </q-card-actions>
...@@ -392,6 +519,7 @@ ...@@ -392,6 +519,7 @@
calendarData: [], calendarData: [],
value: new Date(), value: new Date(),
checkedDays: '月', checkedDays: '月',
checkedType: 1,
TeacherList: [], //老师下拉数据 TeacherList: [], //老师下拉数据
addMsg: { addMsg: {
ClassPlanId: 0, ClassPlanId: 0,
...@@ -425,7 +553,76 @@ ...@@ -425,7 +553,76 @@
dayObj: {}, dayObj: {},
isShowSignBtn: false, //是否显示签到提交按钮 isShowSignBtn: false, //是否显示签到提交按钮
comChecked: {}, //点击选中复制 comChecked: {}, //点击选中复制
isSigned: true isSigned: true,
columns:[{
name: 'RoomName',
label: '校区名称',
field: 'RoomName',
align: 'left',
},{
name: 'ClassDateStr',
label: '上课日期',
field: 'ClassDateStr',
align: 'left'
},
{
name: 'TeacherName',
label: '老师',
field: 'TeacherName',
align: 'left'
},
{
name: 'TimeList',
label: '上课时间',
field: 'TimeList',
align: 'left'
},
{
name: 'optioned',
label: '操作',
field: 'QuestionId',
align: 'center'
}
],
msg:{
rowsPerPage: 100
},
comMsg:{
ClassId: 0,
QMonth: ''
},
columns2: [{
name: 'GuestName',
label: '学生姓名',
field: 'GuestName',
align: 'left'
},
{
name: 'SexStr',
label: '性别',
field: 'SexStr',
align: 'left',
},
{
name: 'Mobile',
label: '电话',
field: 'Mobile',
align: 'left'
},
{
name: 'IsCheck',
label: '是否出勤',
field: 'IsCheck',
align: 'left'
},
{
name: 'optioned',
label: '学习时间',
field: 'QuestionId',
align: 'center'
}
],
} }
}, },
created() { created() {
...@@ -435,27 +632,35 @@ ...@@ -435,27 +632,35 @@
} }
}, },
mounted() { mounted() {
this.initData(); //this.initData();
var d = new Date();
this.comMsg.QMonth = d.getFullYear() + '-' + (d.getMonth() + 1);
this.GetTeacherList();
this.getClassRoomList();
this.addMsg.TeacherId = this.setingObj.Teacher_Id;
this.addMsg.ClassDate = this.setingObj.OpenTime;
this.getClassPlan();
}, },
methods: { methods: {
initData() { initData() {
this.$nextTick(() => { this.$nextTick(() => {
// 点击上个月 // 点击上个月
let prevBtn1 = document.querySelector('.el-calendar__button-group .el-button-group>button:nth-child(1)'); let prevBtn1 = document.querySelector('.el-button-group>button:nth-child(1)');
prevBtn1.addEventListener('click', () => { prevBtn1.addEventListener('click', () => {
var d = new Date(this.value); var d = new Date(this.value);
var datetime = d.getFullYear() + '-' + (d.getMonth() + 1); var datetime = d.getFullYear() + '-' + (d.getMonth() + 1);
this.getClassPlan(datetime); this.getClassPlan(datetime);
}) })
// 点击今天 // 点击今天
let prevBtn2 = document.querySelector('.el-calendar__button-group .el-button-group>button:nth-child(2)'); let prevBtn2 = document.querySelector('.el-button-group>button:nth-child(2)');
prevBtn2.addEventListener('click', () => { prevBtn2.addEventListener('click', () => {
var d = new Date(this.value); var d = new Date(this.value);
var datetime = d.getFullYear() + '-' + (d.getMonth() + 1); var datetime = d.getFullYear() + '-' + (d.getMonth() + 1);
this.getClassPlan(datetime); this.getClassPlan(datetime);
}) })
// 点击下个月 // 点击下个月
let prevBtn3 = document.querySelector('.el-calendar__button-group .el-button-group>button:nth-child(3)'); let prevBtn3 = document.querySelector('.el-button-group>button:nth-child(3)');
prevBtn3.addEventListener('click', () => { prevBtn3.addEventListener('click', () => {
var d = new Date(this.value); var d = new Date(this.value);
var datetime = d.getFullYear() + '-' + (d.getMonth() + 1); var datetime = d.getFullYear() + '-' + (d.getMonth() + 1);
...@@ -479,14 +684,13 @@ ...@@ -479,14 +684,13 @@
} }
}, },
//获取班级上课计划列表 //获取班级上课计划列表
getClassPlan(datetime) { getClassPlan() {
var msg = { this.comMsg.ClassId = this.setingObj.ClassId;
ClassId: this.setingObj.ClassId, quertClassPlan(this.comMsg).then(res => {
QMonth: datetime
};
quertClassPlan(msg).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
this.calendarData = res.Data; this.calendarData = res.Data;
this.value = this.comMsg.QMonth;
this.$forceUpdate();
} }
}) })
}, },
...@@ -509,6 +713,19 @@ ...@@ -509,6 +713,19 @@
//点击新增 //点击新增
addNew() { addNew() {
this.isShowMenu = true; this.isShowMenu = true;
var d = new Date();
var seperator1 = "-";
var year = d.getFullYear();
var month = d.getMonth() + 1;
var strDate = d.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
var currentdate = year + seperator1 + month + seperator1 + strDate;
this.addMsg.ClassDate = currentdate;
this.addMsg.ClassPlanId = 0; this.addMsg.ClassPlanId = 0;
this.addMsg.PlanTimeList = [{ this.addMsg.PlanTimeList = [{
ClassTimeId: 0, ClassTimeId: 0,
...@@ -537,7 +754,7 @@ ...@@ -537,7 +754,7 @@
this.isShowEdit = false; this.isShowEdit = false;
var d = new Date(this.value); var d = new Date(this.value);
var datetime = d.getFullYear() + '-' + (d.getMonth() + 1); var datetime = d.getFullYear() + '-' + (d.getMonth() + 1);
this.getClassPlan(datetime); this.getClassPlan();
} }
}) })
}, },
...@@ -555,7 +772,7 @@ ...@@ -555,7 +772,7 @@
//日历点击删除 //日历点击删除
delInfo(item) { delInfo(item) {
this.$q.dialog({ this.$q.dialog({
title: "删除课程", title: "确定删除课程",
message: '', message: '',
cancel: { cancel: {
label: "取消", label: "取消",
...@@ -641,7 +858,8 @@ ...@@ -641,7 +858,8 @@
School_Id: this.setingObj.School_Id, School_Id: this.setingObj.School_Id,
TeacherId: this.comChecked.TeacherId, TeacherId: this.comChecked.TeacherId,
OrderGuestId: x.Id, OrderGuestId: x.Id,
CheckStatus: x.IsCheck CheckStatus: x.IsCheck,
StudyNum:x.StudyNum
} }
signMsg.push(obj); signMsg.push(obj);
}) })
...@@ -655,7 +873,6 @@ ...@@ -655,7 +873,6 @@
watch: { watch: {
setingObj: function (val, oldval) { setingObj: function (val, oldval) {
this.addMsg.ClassId = val.ClassId; this.addMsg.ClassId = val.ClassId;
this.initData();
} }
} }
} }
......
...@@ -79,15 +79,46 @@ ...@@ -79,15 +79,46 @@
<template> <template>
<div class="page-body"> <div class="page-body">
<div class="page-content recordForm"> <div class="page-content recordForm">
<div class="row wrap" style="display:flex;justify-content:flex-end"> <div class="row wrap" style="display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;">
<div class="col-3">
<el-radio-group v-model="checkType" size="mini">
<el-radio-button :label="1">列表模式</el-radio-button>
<el-radio-button :label="2">时间轴模式</el-radio-button>
</el-radio-group>
</div>
<div class="col-3"> <div class="col-3">
<q-select filled stack-label option-value="TId" @input="changeRecord()" option-label="TeacherName" <q-select filled stack-label option-value="TId" @input="changeRecord()" option-label="TeacherName"
v-model="TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师" :dense="false" v-model="TeacherId" ref="Teacher_Id" :options="TeacherList" label="关联教师" :dense="false"
class="col-6 q-pr-lg q-pb-lg" emit-value map-options /> class="col-6" emit-value map-options />
</div> </div>
</div> </div>
<div> <div>
<div class="col-10" style="margin:20px 0 60px 0;display:flex;" <template v-if="checkType==1">
<q-table :pagination="msg" no-data-label="暂无相关数据" flat
class="sticky-column-table" separator="none" :data="dataList.resultList" :columns="columns">
<template v-slot:body-cell-YearStr="props">
<q-td auto-width :props="props" style="width:25%">
{{props.row.YearStr}}-{{props.row.MonthStr}}-{{props.row.DayStr}}
</q-td>
</template>
<template v-slot:body-cell-CheckNum="props">
<q-td auto-width :props="props" style="width:25%">
<span style="color:green;">{{props.row.CheckNum}}</span>
</q-td>
</template>
<template v-slot:body-cell-NoCheckNum="props">
<q-td auto-width :props="props" style="width:25%">
<span style="color:red;">{{props.row.NoCheckNum}}</span>
</q-td>
</template>
<template v-slot:bottom>
<q-pagination class="full-width justify-end" v-model="msg.PageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
</template>
</q-table>
</template>
<template v-else>
<div class="col-10" style="margin-bottom:20px;display:flex;"
v-if="dataList.resultList&&dataList.resultList.length>0"> v-if="dataList.resultList&&dataList.resultList.length>0">
<div class="col-4" id="timeleft"> <div class="col-4" id="timeleft">
<div v-for="item in dataList.resultList"> <div v-for="item in dataList.resultList">
...@@ -109,6 +140,10 @@ ...@@ -109,6 +140,10 @@
</div> </div>
</div> </div>
</div> </div>
<q-pagination class="full-width justify-end" style="margin-bottom:80px;padding-right:43px;" v-model="msg.PageIndex" color="primary" :max="pageCount"
:input="true" @input="changePage" />
</template>
</div> </div>
</div> </div>
</div> </div>
...@@ -135,13 +170,41 @@ ...@@ -135,13 +170,41 @@
msg: { msg: {
TeacherId: 0, TeacherId: 0,
PageIndex: 1, PageIndex: 1,
PageSize: 12, PageSize: 10,
rowsPerPage: 10,
School_Id: 0, School_Id: 0,
ClassId: 0 ClassId: 0
}, },
TeacherId:0, TeacherId:0,
dataList: {}, dataList: {},
TeacherList: [], //关联老师下拉 TeacherList: [], //关联老师下拉
pageCount:0,
columns: [{
name: 'TeacherName',
label: '教师',
field: 'TeacherName',
align: 'left'
},
{
name: 'YearStr',
label: '日期',
field: 'YearStr',
align: 'left',
},
{
name: 'CheckNum',
label: '签到数',
field: 'CheckNum',
align: 'left'
},
{
name: 'NoCheckNum',
label: '缺勤数',
field: 'NoCheckNum',
align: 'left'
}
],
checkType:1, //默认列表模式
} }
}, },
created() { created() {
...@@ -160,6 +223,7 @@ ...@@ -160,6 +223,7 @@
GetClassPlanLogPageList(this.msg).then(res => { GetClassPlanLogPageList(this.msg).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
this.dataList = res.Data.PageData; this.dataList = res.Data.PageData;
this.pageCount = res.Data.PageCount;
} }
}) })
}, },
...@@ -170,9 +234,14 @@ ...@@ -170,9 +234,14 @@
GetClassPlanLogPageList(this.msg).then(res => { GetClassPlanLogPageList(this.msg).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
this.dataList = res.Data.PageData; this.dataList = res.Data.PageData;
this.pageCount = res.Data.PageCount;
} }
}) })
},
//翻页
changePage(val) {
this.msg.pageIndex = val;
this.getRecord()
}, },
//获取教师下拉 //获取教师下拉
GetTeacherList() { GetTeacherList() {
......
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