|
|
|
@ -43,23 +43,24 @@ public class Ghre_TeacherChangeServices : BaseServices<Ghre_TeacherChange, Ghre_ |
|
|
|
|
|
|
|
|
|
var data = result.result.DT_TableDataT1; |
|
|
|
|
|
|
|
|
|
var schoolIds = data.Where(x => x.SchoolId != null).Select(x => x.SchoolId.Value).Distinct().ToList(); |
|
|
|
|
var deptIDs = data.Where(x => x.DeptID != null).Select(x => x.DeptID).Distinct().ToList(); |
|
|
|
|
var teacherIds = data.Where(x => x.TeacherId != null).Select(x => x.TeacherId).Distinct().ToList(); |
|
|
|
|
var teachers = await Db.Queryable<Ghre_Teacher>().Where(x => teacherIds.Contains(x.Id)).Select(x => new { x.Id, x.SchoolId, x.DeptID, x.TeacherType, TeacherName = x.TeacherName + " (" + x.TeacherNo + ")" }).ToListAsync(); |
|
|
|
|
var schoolIds = teachers.Where(x => x.SchoolId != null).Select(x => x.SchoolId.Value).Distinct().ToList(); |
|
|
|
|
var deptIDs = teachers.Where(x => x.DeptID != null).Select(x => x.DeptID).Distinct().ToList(); |
|
|
|
|
|
|
|
|
|
var depts = await Db.Queryable<Ghro_Dept>().Where(x => deptIDs.Contains(x.DeptID)).Select(x => new { x.DeptID, x.DeptName }).ToListAsync(); |
|
|
|
|
var schools = await Db.Queryable<Ghre_School>().Where(x => schoolIds.Contains(x.Id)).Select(x => new { x.Id, x.SchoolName }).ToListAsync(); |
|
|
|
|
var teachers = await Db.Queryable<Ghre_Teacher>().Where(x => teacherIds.Contains(x.Id)).Select(x => new { x.Id, TeacherName = x.TeacherName + " (" + x.TeacherNo + ")" }).ToListAsync(); |
|
|
|
|
|
|
|
|
|
data.ForEach(async x => |
|
|
|
|
{ |
|
|
|
|
var teacher = teachers.FirstOrDefault(o => o.Id == x.TeacherId); |
|
|
|
|
x.TeacherTypeLabel = await GetParaLabel("TrainingTeacherType", x.TeacherType); |
|
|
|
|
x.TeacherLevelLabel = await GetParaLabel("TrainingTeacherLevel", x.TeacherLevel); |
|
|
|
|
x.OriginTeacherLevelLabel = await GetParaLabel("TrainingTeacherLevel", x.OriginTeacherLevel); |
|
|
|
|
x.ChangeTypeLabel = await GetParaLabel("TrainingTeacherChangeType", x.ChangeType); |
|
|
|
|
x.OriginChangeTypeLabel = await GetParaLabel("TrainingTeacherChangeType", x.OriginChangeType); |
|
|
|
|
x.DeptOrSchoolName = x.TeacherType == "Out" ? schools.FirstOrDefault(o => o.Id == x.SchoolId)?.SchoolName : depts.FirstOrDefault(o => o.DeptID == x.DeptID)?.DeptName; |
|
|
|
|
x.TeacherName = teachers.FirstOrDefault(o => o.Id == x.TeacherId)?.TeacherName; |
|
|
|
|
x.DeptOrSchoolName = x.TeacherType == "Out" ? schools.FirstOrDefault(o => o.Id == teacher?.SchoolId)?.SchoolName : depts.FirstOrDefault(o => o.DeptID == teacher?.DeptID)?.DeptName; |
|
|
|
|
x.TeacherName = teacher?.TeacherName; |
|
|
|
|
x.OriginChangeDate1 = DateTimeHelper.ConvertToDayString(x.OriginChangeDate); |
|
|
|
|
x.ChangeDate1 = DateTimeHelper.ConvertToDayString(x.ChangeDate); |
|
|
|
|
}); |
|
|
|
|