private void btnCheckBlueEdit_Click(object sender, RoutedEventArgs e) { bool isValid = TeacherAttendance.validateAddRow(this); if (isValid) { BitmapImage b = new BitmapImage(); b.BeginInit(); b.UriSource = new Uri("pack://application:,,,/LIVEX;component/Images/001-checked-1.png"); b.EndInit(); imgCheck.Stretch = Stretch.Uniform; imgCheck.Source = b; TeacherAttendance.EditSelected(this); if (dpFrom.Text == "" || dpUntil.Text == "") { myDataGrid.ItemsSource = TeacherAttendance.initTable(); } else if (dpFrom.Text != "" || dpUntil.Text != "") { myDataGrid.ItemsSource = TeacherAttendance.FilterTable(Convert.ToDateTime(dpFrom.Text), Convert.ToDateTime(dpUntil.Text)); } TeacherAttendance.ResetRowCombos(this); } }
public AsistenciaMaestros() { InitializeComponent(); TeacherAttendance.InitCombos(this); lstTeacherAtt = TeacherAttendance.initTable(); myDataGrid.ItemsSource = lstTeacherAtt; }
public void UpdateTeacherAttendance(TeacherAttendance teacherattendance) { var query = "UPDATE Teacher_Attendance SET Total_Attendance = @total_attendance , Presence = @presence , Absentees = @absentees Where Teacher_Id = @teacher_id "; List <SqlParameter> parameters = new List <SqlParameter> { new SqlParameter() { ParameterName = "@teacher_id", Value = teacherattendance.TeacherId }, new SqlParameter() { ParameterName = "@total_attendance", Value = teacherattendance.TotalAttendance }, new SqlParameter() { ParameterName = "@presence", Value = teacherattendance.Presence }, new SqlParameter() { ParameterName = "@absentees", Value = teacherattendance.Absentees } }; _dbClient.InvokeParameters(query, parameters); }
public void InsertTeacherAttendance(TeacherAttendance teacherattendance) { var query = "INSERT INTO Teacher_Attendance( Teacher_Id , Total_Attendance , Presence , Absentees )" + "VALUES ( @teacher_id , @total_attendance , @presence , @absentees );"; List <SqlParameter> parameters = new List <SqlParameter> { new SqlParameter() { ParameterName = "@teacher_id", Value = teacherattendance.TeacherId }, new SqlParameter() { ParameterName = "@total_attendance", Value = teacherattendance.TotalAttendance }, new SqlParameter() { ParameterName = "@presence", Value = teacherattendance.Presence }, new SqlParameter() { ParameterName = "@absentees", Value = teacherattendance.Absentees } }; _dbClient.InvokeParameters(query, parameters); }
private void viewTeacherAttendanceToolStripMenuItem_Click(object sender, EventArgs e) { MainPanel.Controls.Clear(); if (attendance != null) { attendance.Close(); } attendance = new TeacherAttendance(); FormSetUp(attendance); }
public ActionResult Create([Bind(Include = "AttendanceId,TeacherId,Status")] TeacherAttendance teacherattendance, int?ida, string idt) { ViewBag.UserType = adtype(); if (adtype() == "Admin") { if (ModelState.IsValid) { db.TeacherAttendances.Add(teacherattendance); db.SaveChanges(); if (ida != null) { return(RedirectToAction("Index", new { ida = ida })); } if (idt != null) { return(RedirectToAction("Index", new { idt = idt })); } return(RedirectToAction("Index")); } if (teacherattendance.AttendanceId == 0) { ViewBag.AttendanceStatus = "The Attendance Date field is required"; } if (teacherattendance.TeacherId == "") { ViewBag.UNStatus = "The User Name field is required"; } if (ida != null) { ViewBag.Showa = false; ViewBag.Showt = true; ViewBag.ida = ida; ViewBag.AttendanceId = new SelectList(db.Attendances.Where(a => (a.Lookup.Values == "Both" || a.Lookup.Values == "Teacher") && a.Id == ida), "Id", "Date", ida); ViewBag.Status = new SelectList(db.Lookups.Where(l => l.Category == "ATTENDANCESTATUS"), "Id", "Values", teacherattendance.Status); ViewBag.TeacherId = new SelectList(db.AspNetUsers.Where(a => db.Teachers.Where(t => t.Id == a.Id && db.TeacherAttendances.Where(ta => ta.AttendanceId == ida && ta.TeacherId == t.Id).Count() == 0).Count() > 0), "Id", "UserName", teacherattendance.TeacherId); } if (idt != null) { ViewBag.Showa = true; ViewBag.Showt = false; ViewBag.idt = idt; ViewBag.AttendanceId = new SelectList(db.Attendances.Where(a => (a.Lookup.Values == "Both" || a.Lookup.Values == "Teacher") && db.StudentAttendances.Where(st => st.StudentId == idt && st.AttendanceId == a.Id).Count() == 0), "Id", "Date", teacherattendance.AttendanceId); ViewBag.Status = new SelectList(db.Lookups.Where(l => l.Category == "ATTENDANCESTATUS"), "Id", "Values", teacherattendance.Status); ViewBag.TeacherId = new SelectList(db.AspNetUsers.Where(a => db.Teachers.Where(t => t.Id == idt).Count() > 0), "Id", "UserName", idt); } ViewBag.Showa = true; ViewBag.Showt = true; ViewBag.AttendanceId = new SelectList(db.Attendances.Where(a => a.Lookup.Values == "Both" || a.Lookup.Values == "Teacher"), "Id", "Date", teacherattendance.AttendanceId); ViewBag.Status = new SelectList(db.Lookups.Where(l => l.Category == "ATTENDANCESTATUS"), "Id", "Values", teacherattendance.Status); ViewBag.TeacherId = new SelectList(db.AspNetUsers.Where(a => db.Teachers.Where(t => t.Id == a.Id).Count() > 0), "Id", "UserName", idt); return(View(teacherattendance)); } return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); }
private void dpUntil_SelectedDateChanged(object sender, SelectionChangedEventArgs e) { if (dpUntil.SelectedDate < dpFrom.SelectedDate) { MessageBox.Show("La Fecha de inicio debe ser menor a la fecha final"); } else { if (dpFrom.Text != "" && dpUntil.Text != "") { lstTeacherAtt = TeacherAttendance.FilterTable((DateTime)dpFrom.SelectedDate, (DateTime)dpUntil.SelectedDate); myDataGrid.ItemsSource = lstTeacherAtt; } } }
private void btnUpload_Click(object sender, RoutedEventArgs e) { OpenFileDialog openFile = new OpenFileDialog(); openFile.Title = "Seleccione el archivo"; openFile.Filter = "csv(*.csv)|*.csv"; if (openFile.ShowDialog() == true) { int result = TeacherAttendance.uploadTimerFile(openFile.FileName, openFile.SafeFileName); if (result == 1) { lstTeacherAtt = TeacherAttendance.initTable(); myDataGrid.ItemsSource = lstTeacherAtt; } } }
// GET: /TeacherAttendance/Details/5 public ActionResult Details(int?id) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TeacherAttendance teacherattendance = db.TeacherAttendances.Find(id); if (teacherattendance == null) { return(HttpNotFound()); } return(View(teacherattendance)); }
private void btnDelete_Click(object sender, RoutedEventArgs e) { Button am = (Button)sender; MessageBoxResult result = MessageBox.Show("¿Esta seguro de borrar el registro?", "Delete", MessageBoxButton.YesNo); if (MessageBoxResult.Yes == result) { TeacherAttendance.DeleteRow(this, am.DataContext); if (dpFrom.Text == "" || dpUntil.Text == "") { myDataGrid.ItemsSource = TeacherAttendance.initTable(); } else if (dpFrom.Text != "" || dpUntil.Text != "") { myDataGrid.ItemsSource = TeacherAttendance.FilterTable(Convert.ToDateTime(dpFrom.Text), Convert.ToDateTime(dpUntil.Text)); } } }
public TeacherAttendance GetTeacherAttendance(TeacherAttendance teacherAttendance) { var query = "SELECT * FROM Teacher_Attendance WHERE Teacher_Id ='" + teacherAttendance.TeacherId + "'"; _dbClient.InvokeDataReader(query, data => { if (data != null && data.Rows.Count > 0) { for (int i = 0; i < data.Rows.Count; i++) { teacherAttendance.TeacherId = data.Rows[i].Field <System.Int32>("Teacher_Id"); teacherAttendance.TotalAttendance = data.Rows[i].Field <System.Int32>("Total_Attendance"); teacherAttendance.Presence = data.Rows[i].Field <System.Int32>("Presence"); teacherAttendance.Absentees = data.Rows[i].Field <System.Int32>("Absentees"); } } }); return(teacherAttendance); }
public ActionResult DeleteConfirmed(int id, int?ida, string idt) { ViewBag.UserType = adtype(); if (adtype() == "Admin") { TeacherAttendance teacherattendance = db.TeacherAttendances.Find(id); db.TeacherAttendances.Remove(teacherattendance); db.SaveChanges(); if (ida != null) { return(RedirectToAction("Index", new { ida = ida })); } if (idt != null) { return(RedirectToAction("Index", new { idt = idt })); } return(RedirectToAction("Index")); } return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); }
// GET: /TeacherAttendance/Delete/5 public ActionResult Delete(int?id, int?ida, string idt) { ViewBag.UserType = adtype(); if (adtype() == "Admin") { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TeacherAttendance teacherattendance = db.TeacherAttendances.Find(id); if (teacherattendance == null) { return(HttpNotFound()); } ViewBag.ida = ida; ViewBag.idt = idt; return(View(teacherattendance)); } return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); }
public ActionResult Edit(List <TempTeacherAttendance> teacherAttendanceList) { Session["err"] = "Error, Please Check Input Fields"; Session["msg"] = ""; try { foreach (TempTeacherAttendance t in teacherAttendanceList.ToList()) { TeacherAttendance teacherattendance = db.TeacherAttendances.Find(t.id); teacherattendance.AttendanceTypeID = t.attendancetypeid; db.Entry(teacherattendance).State = EntityState.Modified; db.SaveChanges(); Session["err"] = ""; Session["msg"] = "Modified Successfully"; } } catch { } return(Json(Session["err"], JsonRequestBehavior.AllowGet)); }
// GET: /TeacherAttendance/Edit/5 public ActionResult Edit(int?id, int?ida, string idt) { ViewBag.UserType = adtype(); if (adtype() == "Admin") { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TeacherAttendance teacherattendance = db.TeacherAttendances.Find(id); if (teacherattendance == null) { return(HttpNotFound()); } if (ida != null) { ViewBag.Showa = false; ViewBag.Showt = true; ViewBag.ida = ida; ViewBag.AttendanceId = new SelectList(db.Attendances.Where(a => (a.Lookup.Values == "Both" || a.Lookup.Values == "Teacher") && a.Id == ida), "Id", "Date", ida); ViewBag.Status = new SelectList(db.Lookups.Where(l => l.Category == "ATTENDANCESTATUS"), "Id", "Values", teacherattendance.Status); ViewBag.TeacherId = new SelectList(db.AspNetUsers.Where(a => db.Teachers.Where(t => t.Id == a.Id && db.TeacherAttendances.Where(ta => ta.AttendanceId == ida && ta.TeacherId == t.Id).Count() == 0).Count() > 0), "Id", "UserName", teacherattendance.TeacherId); } if (idt != null) { ViewBag.Showa = true; ViewBag.Showt = false; ViewBag.idt = idt; ViewBag.AttendanceId = new SelectList(db.Attendances.Where(a => (a.Lookup.Values == "Both" || a.Lookup.Values == "Teacher") && db.StudentAttendances.Where(st => st.StudentId == idt && st.AttendanceId == a.Id).Count() == 0), "Id", "Date", teacherattendance.AttendanceId); ViewBag.Status = new SelectList(db.Lookups.Where(l => l.Category == "ATTENDANCESTATUS"), "Id", "Values", teacherattendance.Status); ViewBag.TeacherId = new SelectList(db.AspNetUsers.Where(a => db.Teachers.Where(t => t.Id == idt).Count() > 0), "Id", "UserName", idt); } ViewBag.Showa = true; ViewBag.Showt = true; ViewBag.AttendanceId = new SelectList(db.Attendances.Where(a => a.Lookup.Values == "Both" || a.Lookup.Values == "Teacher"), "Id", "Date", teacherattendance.AttendanceId); ViewBag.Status = new SelectList(db.Lookups.Where(l => l.Category == "ATTENDANCESTATUS"), "Id", "Values", teacherattendance.Status); ViewBag.TeacherId = new SelectList(db.AspNetUsers.Where(a => db.Teachers.Where(t => t.Id == a.Id).Count() > 0), "Id", "UserName", idt); return(View(teacherattendance)); } return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); }
private void btnEdit_Click(object sender, RoutedEventArgs e) { Button am = (Button)sender; TeacherAttendance.EditRow(this, am.DataContext); }
private void cmbUID_SelectionChanged(object sender, SelectionChangedEventArgs e) { TeacherAttendance.refreshCombos(this); }
public TeacherAttendanceUC() { InitializeComponent(); _teacherAttendance = new TeacherAttendance(); _teacherAttendanceService = new TeacherAttendancesService(); }
public ActionResult Index() { ViewBag.Message = Session["msg"]; ViewBag.Error = Session["err"]; Session["err"] = ""; Session["msg"] = ""; int companyacademicyearid = Convert.ToInt16(Session["CompanyAcademicYearID"].ToString()); int roleid = Convert.ToInt16(Session["RoleID"].ToString()); int userid = Convert.ToInt16(Session["UserID"].ToString()); int schoolid = Convert.ToInt16(Session["SchoolID"].ToString()); System.Globalization.DateTimeFormatInfo mfi = new System.Globalization.DateTimeFormatInfo(); DateTime dte = Convert.ToDateTime(DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day); DateTime dteyearstart = Convert.ToDateTime(DateTime.Now.Year + "-01-01"); if (Request.QueryString["date"] != null) { try { dte = Convert.ToDateTime(Request.QueryString["date"]); dte = Convert.ToDateTime(dte.Year + "-" + dte.Month + "-" + dte.Day); } catch { } } List <TeacherAttendanceModel> teacherAttendancemodelList = new List <TeacherAttendanceModel>(); Calendar calendar = db.Calendars.Where(c => c.Date == dte).FirstOrDefault(); if (calendar.IsHoliday) { ViewBag.Error = " Selected date : " + dte.Day + " - " + mfi.GetMonthName(dte.Month).Substring(0, 3) + " - " + dte.Year + " is HOLIDAY : " + calendar.Description; calendar = db.Calendars.Where(c => c.Date <= dte && c.IsHoliday == false).OrderByDescending(c => c.Date).FirstOrDefault(); dte = calendar.Date; dte = Convert.ToDateTime(dte.Year + "-" + dte.Month + "-" + dte.Day); } int workingdays = db.Calendars.Where(c => c.Date <= dte && c.Date >= dteyearstart && c.IsHoliday == false).Count(); foreach (Teacher teacher in db.Teachers.ToList()) { TeacherAttendance isTeacherAdded = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate == calendar.Date).FirstOrDefault(); if (isTeacherAdded == null) { TeacherAttendance teacherAttendancenew = new TeacherAttendance(); teacherAttendancenew.AttendanceTypeID = 2; teacherAttendancenew.AttendanceDate = calendar.Date; teacherAttendancenew.TeacherID = teacher.TeacherID; teacherAttendancenew.UserID = userid; teacherAttendancenew.UpdatedDate = DateTime.Now; db.TeacherAttendances.Add(teacherAttendancenew); db.SaveChanges(); } else { //TeacherAttendance teacherAttendanceexist = db.TeacherAttendances.Find(isTeacherAdded.TeacherAttendanceID); //int attendeddays = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); //double perc = Convert.ToInt16(attendeddays) * 100 / Convert.ToInt16(workingdays); //decimal perc1 = Convert.ToDecimal(string.Format("{0:0.00}", perc)); //teacherAttendanceexist.Percentage = perc1; //db.Entry(teacherAttendanceexist).State = EntityState.Modified; //db.SaveChanges(); } } var teacherAttendance = db.TeacherAttendances.Include(s => s.CurrentTeacher).Include(s => s.CurrentUser).Where(s => s.AttendanceDate == calendar.Date).OrderBy(t => t.CurrentTeacher.Name).ToList(); foreach (TeacherAttendance ta in teacherAttendance) { int presentdays = db.TeacherAttendances.Where(s => s.TeacherID == ta.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); int absentdays = db.TeacherAttendances.Where(s => s.TeacherID == ta.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 2).Count(); int leavedays = db.TeacherAttendances.Where(s => s.TeacherID == ta.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 3).Count(); TeacherAttendanceModel teacherAttendancemodel = new TeacherAttendanceModel(); teacherAttendancemodel.TeacherAttendanceID = ta.TeacherAttendanceID; teacherAttendancemodel.TeacherID = ta.TeacherID; teacherAttendancemodel.TeacherName = ta.CurrentTeacher.Name; teacherAttendancemodel.AttendanceTypeID = ta.AttendanceTypeID; teacherAttendancemodel.BackDay1 = ""; teacherAttendancemodel.BackDay2 = ""; teacherAttendancemodel.BackDay3 = ""; teacherAttendancemodel.BackDay4 = ""; teacherAttendancemodel.BackDay5 = ""; teacherAttendancemodel.BackDay6 = ""; teacherAttendancemodel.Present = presentdays; teacherAttendancemodel.Absent = absentdays; teacherAttendancemodel.Leave = leavedays; teacherAttendancemodelList.Add(teacherAttendancemodel); } ViewBag.SelectedDate = calendar.Date.Day + " " + mfi.GetMonthName(calendar.Date.Month).Substring(0, 3) + " " + calendar.Date.Year; dte = calendar.Date.AddDays(-1); calendar = db.Calendars.Where(c => c.Date <= dte && c.IsHoliday == false).OrderByDescending(c => c.Date).FirstOrDefault(); foreach (Teacher teacher in db.Teachers.ToList()) { TeacherAttendance isTeacherAdded = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate == calendar.Date).FirstOrDefault(); if (isTeacherAdded == null) { TeacherAttendance teacherAttendancenew = new TeacherAttendance(); teacherAttendancenew.AttendanceTypeID = 2; teacherAttendancenew.AttendanceDate = calendar.Date; teacherAttendancenew.TeacherID = teacher.TeacherID; teacherAttendancenew.UserID = userid; teacherAttendancenew.UpdatedDate = DateTime.Now; db.TeacherAttendances.Add(teacherAttendancenew); db.SaveChanges(); } else { //TeacherAttendance teacherAttendanceexist = db.TeacherAttendances.Find(isTeacherAdded.TeacherAttendanceID); //int attendeddays = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); //double perc = Convert.ToInt16(attendeddays) * 100 / Convert.ToInt16(workingdays); //decimal perc1 = Convert.ToDecimal(string.Format("{0:0.00}", perc)); //teacherAttendanceexist.Percentage = perc1; //db.Entry(teacherAttendanceexist).State = EntityState.Modified; //db.SaveChanges(); } } teacherAttendance = db.TeacherAttendances.Include(s => s.CurrentAttendanceType).Include(s => s.CurrentTeacher).Include(s => s.CurrentUser).Where(s => s.AttendanceDate == calendar.Date).OrderBy(t => t.CurrentTeacher.Name).ToList(); foreach (TeacherAttendance ta in teacherAttendance) { TeacherAttendanceModel teacherattendanceid = teacherAttendancemodelList.Find(item => item.TeacherID == ta.TeacherID); teacherattendanceid.BackDay1 = ta.CurrentAttendanceType.Name; } ViewBag.BackDay1 = calendar.Date.Day + " " + mfi.GetMonthName(calendar.Date.Month).Substring(0, 3); dte = calendar.Date.AddDays(-1); calendar = db.Calendars.Where(c => c.Date <= dte && c.IsHoliday == false).OrderByDescending(c => c.Date).FirstOrDefault(); foreach (Teacher teacher in db.Teachers.ToList()) { TeacherAttendance isTeacherAdded = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate == calendar.Date).FirstOrDefault(); if (isTeacherAdded == null) { TeacherAttendance teacherAttendancenew = new TeacherAttendance(); teacherAttendancenew.AttendanceTypeID = 2; teacherAttendancenew.AttendanceDate = calendar.Date; teacherAttendancenew.TeacherID = teacher.TeacherID; teacherAttendancenew.UserID = userid; teacherAttendancenew.UpdatedDate = DateTime.Now; db.TeacherAttendances.Add(teacherAttendancenew); db.SaveChanges(); } else { //TeacherAttendance teacherAttendanceexist = db.TeacherAttendances.Find(isTeacherAdded.TeacherAttendanceID); //int attendeddays = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); //double perc = Convert.ToInt16(attendeddays) * 100 / Convert.ToInt16(workingdays); //decimal perc1 = Convert.ToDecimal(string.Format("{0:0.00}", perc)); //teacherAttendanceexist.Percentage = perc1; //db.Entry(teacherAttendanceexist).State = EntityState.Modified; //db.SaveChanges(); } } teacherAttendance = db.TeacherAttendances.Include(s => s.CurrentAttendanceType).Include(s => s.CurrentTeacher).Include(s => s.CurrentUser).Where(s => s.AttendanceDate == calendar.Date).OrderBy(t => t.CurrentTeacher.Name).ToList(); foreach (TeacherAttendance ta in teacherAttendance) { TeacherAttendanceModel teacherattendanceid = teacherAttendancemodelList.Find(item => item.TeacherID == ta.TeacherID); teacherattendanceid.BackDay2 = ta.CurrentAttendanceType.Name; } ViewBag.BackDay2 = calendar.Date.Day + " " + mfi.GetMonthName(calendar.Date.Month).Substring(0, 3); dte = calendar.Date.AddDays(-1); calendar = db.Calendars.Where(c => c.Date <= dte && c.IsHoliday == false).OrderByDescending(c => c.Date).FirstOrDefault(); foreach (Teacher teacher in db.Teachers.ToList()) { TeacherAttendance isTeacherAdded = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate == calendar.Date).FirstOrDefault(); if (isTeacherAdded == null) { TeacherAttendance teacherAttendancenew = new TeacherAttendance(); teacherAttendancenew.AttendanceTypeID = 2; teacherAttendancenew.AttendanceDate = calendar.Date; teacherAttendancenew.TeacherID = teacher.TeacherID; teacherAttendancenew.UserID = userid; teacherAttendancenew.UpdatedDate = DateTime.Now; db.TeacherAttendances.Add(teacherAttendancenew); db.SaveChanges(); } else { //TeacherAttendance teacherAttendanceexist = db.TeacherAttendances.Find(isTeacherAdded.TeacherAttendanceID); //int attendeddays = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); //double perc = Convert.ToInt16(attendeddays) * 100 / Convert.ToInt16(workingdays); //decimal perc1 = Convert.ToDecimal(string.Format("{0:0.00}", perc)); //teacherAttendanceexist.Percentage = perc1; //db.Entry(teacherAttendanceexist).State = EntityState.Modified; //db.SaveChanges(); } } teacherAttendance = db.TeacherAttendances.Include(s => s.CurrentAttendanceType).Include(s => s.CurrentTeacher).Include(s => s.CurrentUser).Where(s => s.AttendanceDate == calendar.Date).OrderBy(t => t.CurrentTeacher.Name).ToList(); foreach (TeacherAttendance ta in teacherAttendance) { TeacherAttendanceModel teacherattendanceid = teacherAttendancemodelList.Find(item => item.TeacherID == ta.TeacherID); teacherattendanceid.BackDay3 = ta.CurrentAttendanceType.Name; } ViewBag.BackDay3 = calendar.Date.Day + " " + mfi.GetMonthName(calendar.Date.Month).Substring(0, 3); dte = calendar.Date.AddDays(-1); calendar = db.Calendars.Where(c => c.Date <= dte && c.IsHoliday == false).OrderByDescending(c => c.Date).FirstOrDefault(); foreach (Teacher teacher in db.Teachers.ToList()) { TeacherAttendance isTeacherAdded = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate == calendar.Date).FirstOrDefault(); if (isTeacherAdded == null) { TeacherAttendance teacherAttendancenew = new TeacherAttendance(); teacherAttendancenew.AttendanceTypeID = 2; teacherAttendancenew.AttendanceDate = calendar.Date; teacherAttendancenew.TeacherID = teacher.TeacherID; teacherAttendancenew.UserID = userid; teacherAttendancenew.UpdatedDate = DateTime.Now; db.TeacherAttendances.Add(teacherAttendancenew); db.SaveChanges(); } else { //TeacherAttendance teacherAttendanceexist = db.TeacherAttendances.Find(isTeacherAdded.TeacherAttendanceID); //int attendeddays = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); //double perc = Convert.ToInt16(attendeddays) * 100 / Convert.ToInt16(workingdays); //decimal perc1 = Convert.ToDecimal(string.Format("{0:0.00}", perc)); //teacherAttendanceexist.Percentage = perc1; //db.Entry(teacherAttendanceexist).State = EntityState.Modified; //db.SaveChanges(); } } teacherAttendance = db.TeacherAttendances.Include(s => s.CurrentAttendanceType).Include(s => s.CurrentTeacher).Include(s => s.CurrentUser).Where(s => s.AttendanceDate == calendar.Date).OrderBy(t => t.CurrentTeacher.Name).ToList(); foreach (TeacherAttendance ta in teacherAttendance) { TeacherAttendanceModel teacherattendanceid = teacherAttendancemodelList.Find(item => item.TeacherID == ta.TeacherID); teacherattendanceid.BackDay4 = ta.CurrentAttendanceType.Name; } ViewBag.BackDay4 = calendar.Date.Day + " " + mfi.GetMonthName(calendar.Date.Month).Substring(0, 3); dte = calendar.Date.AddDays(-1); calendar = db.Calendars.Where(c => c.Date <= dte && c.IsHoliday == false).OrderByDescending(c => c.Date).FirstOrDefault(); foreach (Teacher teacher in db.Teachers.ToList()) { TeacherAttendance isTeacherAdded = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate == calendar.Date).FirstOrDefault(); if (isTeacherAdded == null) { TeacherAttendance teacherAttendancenew = new TeacherAttendance(); teacherAttendancenew.AttendanceTypeID = 2; teacherAttendancenew.AttendanceDate = calendar.Date; teacherAttendancenew.TeacherID = teacher.TeacherID; teacherAttendancenew.UserID = userid; teacherAttendancenew.UpdatedDate = DateTime.Now; db.TeacherAttendances.Add(teacherAttendancenew); db.SaveChanges(); } else { //TeacherAttendance teacherAttendanceexist = db.TeacherAttendances.Find(isTeacherAdded.TeacherAttendanceID); //int attendeddays = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); //double perc = Convert.ToInt16(attendeddays) * 100 / Convert.ToInt16(workingdays); //decimal perc1 = Convert.ToDecimal(string.Format("{0:0.00}", perc)); //teacherAttendanceexist.Percentage = perc1; //db.Entry(teacherAttendanceexist).State = EntityState.Modified; //db.SaveChanges(); } } teacherAttendance = db.TeacherAttendances.Include(s => s.CurrentAttendanceType).Include(s => s.CurrentTeacher).Include(s => s.CurrentUser).Where(s => s.AttendanceDate == calendar.Date).OrderBy(t => t.CurrentTeacher.Name).ToList(); foreach (TeacherAttendance ta in teacherAttendance) { TeacherAttendanceModel teacherattendanceid = teacherAttendancemodelList.Find(item => item.TeacherID == ta.TeacherID); teacherattendanceid.BackDay5 = ta.CurrentAttendanceType.Name; } ViewBag.BackDay5 = calendar.Date.Day + " " + mfi.GetMonthName(calendar.Date.Month).Substring(0, 3); dte = calendar.Date.AddDays(-1); calendar = db.Calendars.Where(c => c.Date <= dte && c.IsHoliday == false).OrderByDescending(c => c.Date).FirstOrDefault(); foreach (Teacher teacher in db.Teachers.ToList()) { TeacherAttendance isTeacherAdded = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate == calendar.Date).FirstOrDefault(); if (isTeacherAdded == null) { TeacherAttendance teacherAttendancenew = new TeacherAttendance(); teacherAttendancenew.AttendanceTypeID = 2; teacherAttendancenew.AttendanceDate = calendar.Date; teacherAttendancenew.TeacherID = teacher.TeacherID; teacherAttendancenew.UserID = userid; teacherAttendancenew.UpdatedDate = DateTime.Now; db.TeacherAttendances.Add(teacherAttendancenew); db.SaveChanges(); } else { //TeacherAttendance teacherAttendanceexist = db.TeacherAttendances.Find(isTeacherAdded.TeacherAttendanceID); //int attendeddays = db.TeacherAttendances.Where(s => s.TeacherID == teacher.TeacherID && s.AttendanceDate <= calendar.Date && s.AttendanceTypeID == 1).Count(); //double perc = Convert.ToInt16(attendeddays) * 100 / Convert.ToInt16(workingdays); //decimal perc1 = Convert.ToDecimal(string.Format("{0:0.00}", perc)); //teacherAttendanceexist.Percentage = perc1; //db.Entry(teacherAttendanceexist).State = EntityState.Modified; //db.SaveChanges(); } } teacherAttendance = db.TeacherAttendances.Include(s => s.CurrentAttendanceType).Include(s => s.CurrentTeacher).Include(s => s.CurrentUser).Where(s => s.AttendanceDate == calendar.Date).OrderBy(t => t.CurrentTeacher.Name).ToList(); foreach (TeacherAttendance ta in teacherAttendance) { TeacherAttendanceModel teacherattendanceid = teacherAttendancemodelList.Find(item => item.TeacherID == ta.TeacherID); teacherattendanceid.BackDay6 = ta.CurrentAttendanceType.Name; } ViewBag.BackDay6 = calendar.Date.Day + " " + mfi.GetMonthName(calendar.Date.Month).Substring(0, 3); ViewBag.AttendanceTypeID = db.AttendanceTypes.ToList(); return(View(teacherAttendancemodelList)); }