//教职工 到校前 private void ComtemplateNotComeEmploy(string time) { var School_Infos = Db.School_Info.ToList(); //所有教职工到校前 for (int i = 0; i < School_Infos.Count(); i++) { Template_Employment template_Student = new Template_Employment(); var worker = Db.facultystaff_Info.FirstOrDefault(a => a.SchoolCode == School_Infos[i].SchoolCode); if (worker == null) { continue; } template_Student.SchoolName = worker.SchoolName; template_Student.SchoolCode = worker.SchoolCode; template_Student.DepartName = ""; template_Student.DepartCode = ""; template_Student.StaffName = ""; template_Student.StaffCode = ""; // 应道人数 template_Student.ShouldComeSchoolCount = Db.facultystaff_Info.Where(a => a.SchoolCode == School_Infos[i].SchoolCode) .Count(); //实到 template_Student.ActualComeSchoolCount = Db.Health_Info.Where(a => a.CheckType == "到校前" && a.facultystaff_Info != null && a.IsComeSchool == "是" && a.Createdate.Value.ToString("yyyy-MM-dd") == time && a.facultystaff_Info.SchoolCode == School_Infos[i].SchoolCode ).Count(); //到了发热 template_Student.ComeSchoolHotCount = Db.Health_Info.Where(a => a.CheckType == "到校前" && a.facultystaff_Info != null && Convert.ToDouble(a.Temperature) >= 37.2 && a.IsComeSchool == "是" && a.Createdate.Value.ToString("yyyy-MM-dd") == time && a.facultystaff_Info.SchoolCode == School_Infos[i].SchoolCode ).Count(); //未到 template_Student.NotComeSchoolCount = Db.Health_Info.Where(a => a.CheckType == "到校前" && a.facultystaff_Info != null && a.IsComeSchool == "否" && a.Createdate.Value.ToString("yyyy-MM-dd") == time && a.facultystaff_Info.SchoolCode == School_Infos[i].SchoolCode ).Count(); //因为发热没到 template_Student.NotComeSchoolByHotCount = Db.Health_Info.Where(a => a.CheckType == "到校前" && a.facultystaff_Info != null && Convert.ToDouble(a.Temperature) >= 37.2 && a.IsComeSchool == "否" && a.Createdate.Value.ToString("yyyy-MM-dd") == time && a.facultystaff_Info.SchoolCode == School_Infos[i].SchoolCode ).Count(); //其他原因没到 template_Student.NotComeSchoolByOtherCount = Db.Health_Info.Where(a => a.CheckType == "到校前" && a.facultystaff_Info != null && a.IsComeSchool == "否" && a.NotComeSchoolReason == "其他" && a.Createdate.Value.ToString("yyyy-MM-dd") == time && a.facultystaff_Info.SchoolCode == School_Infos[i].SchoolCode ).Count(); //因为在外地没到 template_Student.NotComeSchoolByOutCount = Db.Health_Info.Where(a => a.CheckType == "到校前" && a.facultystaff_Info != null && a.IsTianJin == "否" && a.IsComeSchool == "否" && a.Createdate.Value.ToString("yyyy-MM-dd") == time && a.facultystaff_Info.SchoolCode == School_Infos[i].SchoolCode ).Count(); template_Student.type = "到校前"; template_Student.CreateDate = DateTime.Parse(time); DbSet.Add(template_Student); } }
//每日最终数据 private void ComtemplateDayEmploy() { var station_Infos = Db.Station_Info.ToList(); //所有班级生成早午晚见 for (int i = 0; i < station_Infos.Count(); i++) { Template_Employment template_Student = new Template_Employment(); var allschoolNight = DbSetHealth.Where(a => a.CheckType == "晚" && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode).Count(); //午检查最晚的时间 var maxNoontime = Db.Health_Info.Where(a => a.CheckType == "午" && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && a.facultystaff_Info != null && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode ).Select(w => w.Createdate).Max(); //午检查后的异常人数 var exceptnum = Db.Except_Info_Employ.Where(a => a.CreateDate > maxNoontime && a.facultystaff_Info.StaffCode == station_Infos[i].StaffCode).Count(); var worker = Db.facultystaff_Info.FirstOrDefault(a => a.StaffCode == station_Infos[i].StaffCode); if (worker == null) { continue; } template_Student.SchoolName = worker.SchoolName; template_Student.SchoolCode = worker.SchoolCode; template_Student.DepartName = worker.DepartName; template_Student.DepartCode = worker.DepartCode; template_Student.StaffName = worker.StaffName; template_Student.StaffCode = worker.StaffCode; // 应道人数 template_Student.ShouldComeSchoolCount = Db.facultystaff_Info.Where(a => a.StaffCode == station_Infos[i].StaffCode) .Count(); //实到(午-异常上报) template_Student.ActualComeSchoolCount = Db.Health_Info.Where(a => a.IsComeSchool == "是" && a.CheckType == "午" && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && a.facultystaff_Info != null && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode ).Count() - exceptnum; //到了发热 template_Student.ComeSchoolHotCount = Db.Health_Info.Where(a => a.IsComeSchool == "是" && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && Convert.ToDouble(a.Temperature) >= 37.2 && a.facultystaff_Info != null && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode ).Count() + exceptnum; //未到 template_Student.NotComeSchoolCount = Db.Health_Info.Where(a => a.IsComeSchool == "否" && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && a.facultystaff_Info != null && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode ).Count() + exceptnum; //因为发热没到 template_Student.NotComeSchoolByHotCount = Db.Health_Info.Where(a => Convert.ToDouble(a.Temperature) >= 37.2 && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && a.IsComeSchool == "否" && a.facultystaff_Info != null && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode ).Count(); //其他原因没到 template_Student.NotComeSchoolByOtherCount = Db.Health_Info.Where(a => a.CheckType == "其他" && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && a.IsComeSchool == "否" && a.facultystaff_Info != null && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode ).Count(); //因为在外地没到 template_Student.NotComeSchoolByOutCount = Db.Health_Info.Where(a => a.IsTianJin == "否" && a.Createdate.Value.ToString("yyyy-MM-dd") == DateTime.Now.ToString("yyyy-MM-dd") && a.facultystaff_Info != null && a.IsComeSchool == "否" && a.facultystaff_Info.station_Info.StaffCode == station_Infos[i].StaffCode ).Count(); template_Student.type = "天"; template_Student.CreateDate = DateTime.Now; DbSet.Add(template_Student); } }