|
@@ -147,6 +147,7 @@ export default {
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ settingHours: {},
|
|
|
onlineTime: 20,
|
|
|
offlineTime: 10,
|
|
|
videoTime: 5,
|
|
@@ -259,20 +260,53 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
+ getLimitMinutes(item) {
|
|
|
+ return this.settingHours.limitMinutes === -1 ? (item.limitTime * this.settingHours.lessonMinutes) : this.settingHours.limitMinutes
|
|
|
+ },
|
|
|
exportTeacherData() {
|
|
|
- // 所有老师统计
|
|
|
- this.teacherData.forEach(item => {
|
|
|
- item.submitTime = item.currency.submitTime
|
|
|
- let school = this.schoolList.find(school => school.schoolId == item.school)
|
|
|
- if (school) item.schoolName = school.schoolName
|
|
|
+ console.log(this.teacherData)
|
|
|
+ // return
|
|
|
+ let header = ['学校', '姓名', '总学时', '线上研修学时', '未修满能力点', '已修满的能力点数量', '认证材料学时', '校本研修学时', '课堂实录学时', '认证材料需提交数', '认证材料未提交数', '未提交认证材料能力点', '作业未提交数', '课堂实录是否提交']
|
|
|
+ let keys = ['schoolName', 'name', 'totalTime', 'online', 'unFinishArr', 'finishArr', 'ability', 'offline', 'video', 'abilityCount', 'noAbilityCount', 'noAbilityNoArr', 'noHwCount', 'isSubmitVideo']
|
|
|
+ let datas = this.teacherData.map(i => {
|
|
|
+ let teacherAilities = i.currency?.teacherAilities || []
|
|
|
+ return {
|
|
|
+ schoolName:i.schoolName,
|
|
|
+ name: i.name,
|
|
|
+ totalTime: i.totalTime,
|
|
|
+ online: i.onlineTime,
|
|
|
+ unFinishArr: teacherAilities.filter(j => j.videoTime < this.getLimitMinutes(j)).map(k => k.no).join(','),
|
|
|
+ finishArr: teacherAilities.filter(j => j.videoTime >= this.getLimitMinutes(j)).length,
|
|
|
+ ability: i.submitTime,
|
|
|
+ offline: i.offlineTime,
|
|
|
+ video: i.classTime,
|
|
|
+ abilityCount: teacherAilities.length,
|
|
|
+ noAbilityCount: teacherAilities.filter(i => i.zpscore === -1).length,
|
|
|
+ noAbilityNoArr: teacherAilities.filter(j => j.zpscore === -1).map(k => k.no).join(','),
|
|
|
+ noHwCount: i.offlineCountNo,
|
|
|
+ isSubmitVideo: i.teacherClasseCount ? '已提交' : '未提交'
|
|
|
+ }
|
|
|
})
|
|
|
const teacherParams = {
|
|
|
- title: ['姓名', '学校', '线上研修学时', '校本研修学时', '认证材料学时', '课堂实录学时', '总学时'],
|
|
|
- key: ['name', 'schoolName', 'onlineTime', 'offlineTime', 'submitTime', 'classTime', 'totalTime'],
|
|
|
- data: this.teacherData,
|
|
|
+ title: header,
|
|
|
+ key: keys,
|
|
|
+ data: datas,
|
|
|
autoWidth: true,
|
|
|
- filename: '老师数据统计'
|
|
|
+ filename: '研修情况统计表'
|
|
|
}
|
|
|
+ // 所有老师统计
|
|
|
+ // this.teacherData.forEach(item => {
|
|
|
+ // item.submitTime = item.currency.submitTime
|
|
|
+ // let school = this.schoolList.find(school => school.schoolId == item.school)
|
|
|
+ // if (school) item.schoolName = school.schoolName
|
|
|
+ // })
|
|
|
+ // const teacherParams = {
|
|
|
+ // title: ['姓名', '学校', '线上研修学时', '校本研修学时', '认证材料学时', '课堂实录学时', '总学时'],
|
|
|
+ // key: ['name', 'schoolName', 'onlineTime', 'offlineTime', 'submitTime', 'classTime', 'totalTime'],
|
|
|
+ // data: this.teacherData,
|
|
|
+ // autoWidth: true,
|
|
|
+ // filename: '老师数据统计'
|
|
|
+ // }
|
|
|
excel.export_array_to_excel(teacherParams)
|
|
|
},
|
|
|
exportSchoolData() {
|
|
@@ -333,9 +367,10 @@ export default {
|
|
|
areaId: sessionStorage.getItem('areaId'),
|
|
|
standard: sessionStorage.getItem('standard')
|
|
|
}
|
|
|
- this.$api.ability.getAreaData(params).then(
|
|
|
+ this.$api.ability.getAreaDataSimple(params).then(
|
|
|
res => {
|
|
|
if (!res.error) {
|
|
|
+ this.settingHours = res.setting || {}
|
|
|
//设置的学时
|
|
|
this.onlineTime = res.setting.onlineTime || this.onlineTime
|
|
|
this.offlineTime = res.setting.offlineTime || this.offlineTime
|