public async Task <StudentAttendance> AddStudentAttendance(StudentAttendance s) { context.AttendanceList.Add(s); await context.SaveChangesAsync(); return(s); }
public async Task <IActionResult> ConfirmAttendance(List <StdntAttndncVm> lst) { var test = _context.StudentAttendance.AsNoTracking(). Where(s => DateTime.Compare(s.Date, DateTime.Now.Date) == 0 && s.Student.SectionId == lst[0].SecId && s.SubjectId == lst[0].sbjctidVM && s.Student.ClassId == lst[0].clsidVM).FirstOrDefault(); if (test != null) { return(RedirectToAction("Error")); } for (int i = 0; i < lst.Count; i++) { StudentAttendance s = new StudentAttendance() { StudentId = lst[i].stdntidVM, SubjectId = lst[i].sbjctidVM, Remark = lst[i].Remark, Status = lst[i].Status, Date = DateTime.Now, }; await _context.StudentAttendance.AddAsync(s); await _context.SaveChangesAsync(); } return(RedirectToAction("TakeAttendance")); }
public List <StudentAttendance> getAttendanceByDate(DateTime dt) { List <StudentAttendance> list = new List <StudentAttendance>(); try { using (MySqlConnection con = new MySqlConnection(ConnectionString.con_string)) { using (MySqlCommand cmd = new MySqlCommand()) { cmd.CommandText = "SELECT std_id FROM sms_student_attendence where attendence_date=@attendence_date"; cmd.Connection = con; cmd.Parameters.Add("@attendence_date", MySqlDbType.Date).Value = dt; cmd.Parameters.Add("@session_id", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = MainWindow.m_SessionID; //cmd.CommandType = System.Data.CommandType.StoredProcedure; con.Open(); MySqlDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { StudentAttendance att = new StudentAttendance() { std_id = Convert.ToString(reader["std_id"].ToString()), }; list.Add(att); } } } } catch (Exception ex) { throw ex; } return(list); }
public void FillAbsentAttendance(int RollCallID) { RollCallBusiness RollBO = new RollCallBusiness(this.RollSystemDB); var rollCall = RollBO.GetRollCallByID(RollCallID); //Tim nhung study session trong qua khu, chua co log var PassStudySessions = rollCall.StudySessions.Where(ses => ses.SessionDate < DateTime.Today && !rollCall.AttendanceLogs.Any(log => log.LogDate == ses.SessionDate)).ToList(); //Bat dau ghi log absent toan bo foreach (var PassStudySession in PassStudySessions) { AttendanceLog Log = new AttendanceLog() { RollCallID = RollCallID, LogDate = PassStudySession.GetOriginalDate(), TypeID = 1 }; foreach (var Student in rollCall.Students) { StudentAttendance Attendance = new StudentAttendance() { StudentID = Student.StudentID, IsPresent = false }; Log.StudentAttendances.Add(Attendance); } Insert(Log); } }
private int UpdateStudentAttendance() { int Returnvalue = 0; string X = ""; foreach (GridViewRow row in gridview_StudentAttedanceList.Rows) { CheckBox chk = (CheckBox)row.FindControl("chk_Attendance"); Label lbl_StudentID = (Label)row.FindControl("lbl_StudentID"); X = X + lbl_StudentID.Text + ','; } X = X.Remove(X.Length - 1); StudentAttendance TheAttns = new StudentAttendance(); TheAttns.AttenID = Convert.ToInt32(hiddenatten.Value); TheAttns.StudentIDS = X; TheAttns.SubjectID = int.Parse(DropDown_subjectClas.SelectedValue); TheAttns.SectionID = int.Parse(DropDown_Section.SelectedValue); TheAttns.ClassStartTime = txt_ClassStarttime.Text; TheAttns.ClassCloseTime = txt_ClassCloseTime.Text; TheAttns.Date = txt_ClassDate.Text; TheAttns.StaffID = int.Parse(txt_Faculty.Text); TheAttns.Comment = txt_Comment.Text; Returnvalue = StudentAttendanceManagement.GetInstance.UpdateStudentAttns(TheAttns); return(Returnvalue); }
private void PopulateFormField(StudentAttendance TheAttn, int AttID) { txt_Faculty.Text = TheAttn.StaffID.ToString(); hiddenatten.Value = TheAttn.AttenID.ToString(); BinDropdnSubject(); DropDown_subjectClas.SelectedValue = TheAttn.SubjectID.ToString(); txt_ClassStarttime.Text = TheAttn.ClassStartTime; txt_ClassCloseTime.Text = TheAttn.ClassCloseTime; txt_ClassDate.Text = TheAttn.Date; txt_Comment.Text = TheAttn.Comment; BindAttendanceList(); btn_Go.Enabled = false; foreach (GridViewRow row in gridview_StudentAttedanceList.Rows) { CheckBox chk = (CheckBox)row.FindControl("chk_Attendance"); Label lbl_StudentID = (Label)row.FindControl("lbl_StudentID"); List <StudentAttendance> TheAttnce = new List <StudentAttendance>(); TheAttnce = (from xyz in StudentAttendanceManagement.GetInstance.GetAttnsList() where (TheAttn.AttenID.Equals(AttID) && TheAttn.StudentIDS.Contains(lbl_StudentID.Text)) select xyz).ToList(); if (TheAttnce.Count == 0) { chk.Checked = false; } else { chk.Checked = true; } } }
public async Task <HttpResponseMessage> GetStudentAttendance(int BatcheID, int StudentID) { try { ReportAttendanceDAL dal = new ReportAttendanceDAL(); StudentAttendance data = await dal.GetStudentAttendance(BatcheID, StudentID); if (data != null) { return(Request.CreateResponse <StudentAttendance>(HttpStatusCode.OK, data)); } else { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, Constants.ErrorNotFound)); } } catch (DbEntityValidationException ex) { var controllerName = ControllerContext.RouteData.Values["controller"].ToString(); var actionName = ControllerContext.RouteData.Values["action"].ToString(); Logger log = new Logger(); log.ErrorLog(ex, controllerName, actionName); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, Constants.ErrorSysError)); } }
public ActionResult Student() { String rollNo = AccountManager.getId(); List <Teacher_Course_Allocation> detailList; DataManager dm = new DataManager(); List <SubjectClassDetail> list = new List <SubjectClassDetail>(); List <Class> classes = db.Classes.Where(o => o.Students.Any(s => s.rollNo == rollNo)).ToList <Class>(); foreach (Class obj in classes) { String className = obj.name; detailList = db.Teacher_Course_Allocation.Where(o => o.classID == obj.classID).ToList <Teacher_Course_Allocation>(); foreach (Teacher_Course_Allocation detail in detailList) { SubjectClassDetail data = new SubjectClassDetail(); data.className = className; data.teacherName = detail.Teacher.name; data.courseName = detail.Subject.name; data.isTheory = detail.Class.isTheory; StudentAttendance stdAttendance = dm.getAttendance(detail.classID, detail.courseCode, detail.teacherID, rollNo); data.presentPercentage = stdAttendance.presentPercentage; data.abscentPercentage = stdAttendance.abscentPercentage; data.totalAttendace = stdAttendance.totalAttendace; list.Add(data); } } return(View(list)); }
public void InsertStudentAttendance(StudentAttendance studentattendance) { var query = "INSERT INTO Student_Attendance( Student_Id , Total_Attendance , Presence , Absentees )" + "VALUES ( @student_id , @total_attendance , @presence , @absentees );"; List <SqlParameter> parameters = new List <SqlParameter> { new SqlParameter() { ParameterName = "@student_id", Value = studentattendance.StudentId }, new SqlParameter() { ParameterName = "@total_attendance", Value = studentattendance.TotalAttendance }, new SqlParameter() { ParameterName = "@presence", Value = studentattendance.Presence }, new SqlParameter() { ParameterName = "@absentees", Value = studentattendance.Absentees }, }; _dbClient.InvokeParameters(query, parameters); }
public async Task <ActionResult> GiveAttendance() { string UserID = UserHelperInfo.GetUserId(); var Student = await _studentService.GetStudentByUserIdAsync(UserID); if (Student != null) { var todayAttendance = await _studentAttendanceService.GetToday(Student.ID); if (todayAttendance == null) { StudentAttendance model = new StudentAttendance() { Agent = UserInfo.Agent(), IP = UserInfo.IP(), Latitude = "N/A", Longitude = "N/A", StudentId = Student.ID }; return(View("ClockIn", model)); } else { return(View("ClockOut", todayAttendance)); } } else { return(new HttpNotFoundResult("Student Not Found In Database")); } }
public int InsertStudentAttns(StudentAttendance theAttns) { int ReturnValueAttns = 0; using (SqlCommand InsertCommand = new SqlCommand()) { InsertCommand.CommandType = CommandType.StoredProcedure; InsertCommand.Parameters.Add(GetParameter("@ReturnValue", SqlDbType.Int, ReturnValueAttns)).Direction = ParameterDirection.Output; InsertCommand.Parameters.Add(GetParameter("@StudentIDS", SqlDbType.VarChar, theAttns.StudentIDS)); InsertCommand.Parameters.Add(GetParameter("@SectionID", SqlDbType.Int, theAttns.SectionID)); InsertCommand.Parameters.Add(GetParameter("@SubjectID", SqlDbType.Int, theAttns.SubjectID)); InsertCommand.Parameters.Add(GetParameter("@StaffID", SqlDbType.Int, theAttns.StaffID)); InsertCommand.Parameters.Add(GetParameter("@ClassCloseTime", SqlDbType.VarChar, theAttns.ClassCloseTime)); InsertCommand.Parameters.Add(GetParameter("@ClassStartTime", SqlDbType.VarChar, theAttns.ClassStartTime)); InsertCommand.Parameters.Add(GetParameter("@Comment", SqlDbType.VarChar, theAttns.Comment)); InsertCommand.Parameters.Add(GetParameter("@Date", SqlDbType.VarChar, theAttns.Date)); InsertCommand.Parameters.Add(GetParameter("@SessionID", SqlDbType.Int, theAttns.SessionID)); InsertCommand.Parameters.Add(GetParameter("@OfficeID", SqlDbType.Int, 44)); InsertCommand.Parameters.Add(GetParameter("@CompanyID", SqlDbType.Int, 8)); InsertCommand.Parameters.Add(GetParameter("@AddedBy", SqlDbType.Int, 1)); InsertCommand.CommandText = "pICAS_Student_Attendance_Insert"; ExecuteStoredProcedure(InsertCommand); ReturnValueAttns = int.Parse(InsertCommand.Parameters[0].Value.ToString()); } return(ReturnValueAttns); }
protected void Calendar1_SelectionChanged(object sender, EventArgs e) { StudentAttendance stdattend = new StudentAttendance(); GridViewAttendance.DataSource = stdattend.GetAttendance(CalendarAttendanceDate.SelectedDate.Date.ToString("yyyy-MM-dd"), Session["UserID"].ToString()); GridViewAttendance.DataBind(); }
public void UpdateStudentAttendance(StudentAttendance studentattendance) { var query = "UPDATE Student_Attendance SET Student_Id = @student_id , Total_Attendance = @total_attendance , Presence = @presence , Absentees = @absentees , Where Id = @id;"; List <SqlParameter> parameters = new List <SqlParameter> { new SqlParameter() { ParameterName = "@student_id", Value = studentattendance.StudentId }, new SqlParameter() { ParameterName = "@total_attendance", Value = studentattendance.TotalAttendance }, new SqlParameter() { ParameterName = "@presence", Value = studentattendance.Presence }, new SqlParameter() { ParameterName = "@absentees", Value = studentattendance.Absentees }, }; _dbClient.InvokeParameters(query, parameters); }
public static List <StudentAttendance> GetAttnsList() { try { DataTable AttnAllTable = StudentAttendanceDataAccess.GetInstance.GetAttnsList(); List <StudentAttendance> AttnList = new List <StudentAttendance>(); foreach (DataRow dr in AttnAllTable.Rows) { StudentAttendance ObjAllAttns = new StudentAttendance(); ObjAllAttns.AttenID = int.Parse(dr["AttenID"].ToString()); ObjAllAttns.SubjectID = int.Parse(dr["SubjectID"].ToString()); ObjAllAttns.SubjectName = dr["SubjectName"].ToString(); ObjAllAttns.StudentIDS = (dr["StudentIDS"].ToString()); ObjAllAttns.StaffID = int.Parse(dr["StaffID"].ToString()); ObjAllAttns.EmployeeName = dr["EmployeeName"].ToString(); ObjAllAttns.Date = dr["Date"].ToString(); ObjAllAttns.ClassStartTime = dr["ClassStartTime"].ToString(); ObjAllAttns.ClassCloseTime = dr["ClassCloseTime"].ToString(); ObjAllAttns.Comment = dr["Comment"].ToString(); AttnList.Add(ObjAllAttns); } return(AttnList); } catch (Exception ex) { throw (new Exception(MethodBase.GetCurrentMethod().DeclaringType.ToString() + "." + (new System.Diagnostics.StackFrame()).GetMethod().Name, ex)); } }
private void PublishStudentAttedance() { if (timeTable.SubjectDay == (int)DateTime.Now.DayOfWeek) { List <StudentAttendance> studentAttendances = new List <StudentAttendance>(); foreach (DataGridViewRow row in dgvStudentAttendance.Rows) { StudentAttendance studentAttendance = new StudentAttendance(); studentAttendance.StudentAttendanceID = Convert.ToInt32(row.Cells["StudentAttendanceID"].Value); studentAttendance.StudentID = row.Cells["StudentID"].Value.ToString(); studentAttendance.IntakeID = row.Cells["IntakeID"].Value.ToString(); studentAttendance.SubjectID = Convert.ToInt32(row.Cells["SubjectID"].Value); studentAttendance.LecturerID = row.Cells["LecturerID"].Value.ToString(); studentAttendance.PresenceStatusID = Convert.ToInt32(row.Cells["PresenceStatus"].Value); studentAttendance.DayOfWeek = row.Cells["DayOfWeek"].Value == null?Convert.ToInt32(DateTime.Now.DayOfWeek) : Convert.ToInt32(row.Cells["DayOfWeek"].Value); studentAttendance.WeekOfYear = row.Cells["WeekOfYear"].Value == null ? ((DateTime.Now.DayOfYear + 3) / 7) : Convert.ToInt32(row.Cells["WeekOfYear"].Value); studentAttendance.Date = DateTime.Today; studentAttendances.Add(studentAttendance); } _studentAttendanceService.PublishNewStudentAttendance(studentAttendances); MMessageBox.ShowMessage("Attendance Published Successfully", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MMessageBox.ShowMessage("You can only publish attendance of today", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
public ActionResult MarkAttendance4(string id) { bool j = true; foreach (StudentAttendance i in db.StudentAttendances) { if (i.StudentID == Convert.ToInt32(id) && i.ClassAttendance.AttendanceDate.Date == DateTime.Now.Date) { j = false; } } if (j == false) { TempData["msg"] = "<script>alert('You have already taken Student Attendance for today.');</script>"; } else { StudentAttendance u = new StudentAttendance(); ClassAttendance v = new ClassAttendance(); u.StudentID = Convert.ToInt32(id); u.AttendanceStatus = "Leave"; v.AttendanceDate = DateTime.Now.Date; db.StudentAttendances.Add(u); db.ClassAttendances.Add(v); db.SaveChanges(); } return(RedirectToAction("TakeAttendance", "Teacher")); }
public ActionResult MarkAttendance1(string id) { bool j = true; foreach (StudentAttendance i in db.StudentAttendances) { if (i.StudentID == Convert.ToInt32(id) && i.ClassAttendance.AttendanceDate.Date == DateTime.Now.Date) { j = false; } } if (j == false) { ModelState.AddModelError("", "unable to save changes"); } else { StudentAttendance u = new StudentAttendance(); ClassAttendance v = new ClassAttendance(); u.StudentID = Convert.ToInt32(id); u.AttendanceStatus = "Absent"; v.AttendanceDate = DateTime.Now.Date; db.StudentAttendances.Add(u); db.ClassAttendances.Add(v); db.SaveChanges(); } return(RedirectToAction("TakeAttendance", "Teacher")); }
public async Task <IHttpActionResult> PutStudentAttendance(int id, StudentAttendance studentAttendance) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != studentAttendance.id) { return(BadRequest()); } db.Entry(studentAttendance).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!StudentAttendanceExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public ActionResult DeleteConfirmed(int id) { StudentAttendance studentAttendance = db.StudentAttendance.Find(id); db.StudentAttendance.Remove(studentAttendance); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Delete(int id = 0) { StudentAttendance user = db.GetById(id); if (user == null) { return HttpNotFound(); } return View(user); }
public ActionResult Edit([Bind(Include = "Id,ClassID,PersonID,Date,IsPresent,Deleted")] StudentAttendance StudentAttendance) { if (ModelState.IsValid) { db.Update(StudentAttendance); return RedirectToAction("Index"); } return View(StudentAttendance); }
public ActionResult EditAttendance(StudentAttendance s) { StudentAttendance sa = db.StudentAttendances.Where(saa => saa.StudentAttendenceId == s.StudentAttendenceId).FirstOrDefault(); sa.Status = s.Status; db.Entry(sa).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("ShowAttendances")); }
public static bool Delete(StudentAttendance studAttendance) { using (_d = new DataRepository <StudentAttendance>()) { _d.Delete(studAttendance); _d.SaveChanges(); } return(true); }
public ActionResult Details(int id = 0) { StudentAttendance StudentAttendance = db.GetById(id); if (StudentAttendance == null) { return HttpNotFound(); } return View(StudentAttendance); }
public StudentAttendance Update(StudentAttendance studentAttendance) { CheckDateAndSubjectUniqueness(studentAttendance); var studentToDb = new EntitiesDb.StudentAttendance().MapFromEntity(studentAttendance); var studentFromDb = dataContext.Update(studentToDb).Entity; dataContext.SaveChanges(); return(studentFromDb.MapToEntity()); }
public void RegisterStudentToSession(int sessionId, int studentId) { var newAttendance = new StudentAttendance() { RegistrationTime = DateTime.Now, SessionId = sessionId, StudentId = studentId }; _unitOfWork.StudentAttendances.Insert(newAttendance); _unitOfWork.Commit(); }
private void CheckDateAndSubjectUniqueness(StudentAttendance studentAttendance) { if (dataContext.StudentAttendances.Any(s => s.Id != studentAttendance.Id && s.StudentId == studentAttendance.StudentId && s.Date == studentAttendance.Date && s.SubjectId == studentAttendance.SubjectId)) { throw new System.Exception("Student attendance for this subject and day already exist!"); } }
public StudentAttendance GetStudentAttendance(int id) { StudentAttendance s = context.AttendanceList.Find(id); if (s != null) { return(s); } return(null); }
public int insertStudentAttendance(StudentAttendance sa) { int i = 0; try { using (MySqlConnection con = new MySqlConnection(ConnectionString.con_string)) { con.Open(); using (MySqlCommand cmd = new MySqlCommand()) { cmd.CommandText = "Delete from sms_student_attendence where std_id=@std_id && attendence_date= @dt && session_id=@session_id"; cmd.Connection = con; cmd.Parameters.Add("@dt", MySqlDbType.Date).Value = sa.attendence_date; cmd.Parameters.Add("@std_id", MySqlDbType.Int32).Value = sa.std_id; cmd.Parameters.Add("@session_id", MySqlDbType.Int32).Value = MainWindow.m_SessionID; cmd.ExecuteNonQuery(); } using (MySqlCommand cmd = new MySqlCommand()) { cmd.CommandText = "INSERT INTO sms_student_attendence(total_presents,total_abs,total_days,att_percentage,std_id,section_id,attendence_date,class_id,roll_no,attendence,std_name,created_by,date_time,session_id)Values(@total_presents,@total_abs,@total_days,@att_percentage,@std_id,@section_id,@attendence_date,@class_id,@roll_no,@attendence,@std_name,@created_by,@date_time,@session_id)"; cmd.Connection = con; //cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add("@session_id", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = MainWindow.m_SessionID; cmd.Parameters.Add("@class_id", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = sa.class_id; cmd.Parameters.Add("@section_id", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = sa.section_id; cmd.Parameters.Add("@std_id", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = sa.std_id; cmd.Parameters.Add("@std_name", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = sa.std_name; cmd.Parameters.Add("@roll_no", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = sa.roll_no; cmd.Parameters.Add("@attendence_date", MySql.Data.MySqlClient.MySqlDbType.DateTime).Value = sa.attendence_date; cmd.Parameters.Add("@attendence", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = sa.attendence; cmd.Parameters.Add("@att_percentage", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = "0"; cmd.Parameters.Add("@total_days", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = 0; cmd.Parameters.Add("@total_abs", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = 0; cmd.Parameters.Add("@total_presents", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = 0; cmd.Parameters.Add("@created_by", MySql.Data.MySqlClient.MySqlDbType.VarChar).Value = sa.created_by; cmd.Parameters.Add("@date_time", MySql.Data.MySqlClient.MySqlDbType.DateTime).Value = sa.date_time; i = Convert.ToInt32(cmd.ExecuteNonQuery()); con.Close(); } } }catch (Exception ex) { throw ex; } return(i); }
public async Task <IHttpActionResult> GetStudentAttendance(int id) { StudentAttendance studentAttendance = await db.AttendanceList.FindAsync(id); if (studentAttendance == null) { return(NotFound()); } return(Ok(studentAttendance)); }
public bool AddAttendance(StudentAttendance sa) { SqlParameter[] sp = new SqlParameter[7]; sp[0] = new SqlParameter("@Student_ID",sa.Student_ID); sp[1] = new SqlParameter("@Course_ID",sa.Course_ID); sp[2] = new SqlParameter("@Subject_ID",sa.Subject_ID); sp[3] = new SqlParameter("@Lecture_Date",sa.Lecture_Date); sp[4] = new SqlParameter("@Session_ID",sa.Session_ID); sp[5] = new SqlParameter("@Faculty_ID",sa.Faculty_ID); sp[6] = new SqlParameter("@Attendance",sa.Attendance); return datalayer.Execute_NonQuery("sp_AddAttendance", CommandType.StoredProcedure, sp); }
protected void btnSaveAttendance_Click(object sender,EventArgs e) { StudentAttendance st = new StudentAttendance(); st.Course_ID = Convert.ToInt32(ddCourse.SelectedValue); st.Lecture_Date = Convert.ToDateTime(txtAttendanceDate.Text); st.Subject_ID = Convert.ToInt32(ddSubject.SelectedValue); st.Session_ID = Convert.ToInt32(ddSession.SelectedValue); if (rpt_Students.Items.Count > 0) { foreach (RepeaterItem i in rpt_Students.Items) { Label lblID = (Label)i.FindControl("lblStud_ID"); st.Student_ID = Convert.ToInt32(lblID.Text); CheckBox cbAtt = (CheckBox) i.FindControl("cbAttendance"); st.Attendance = cbAtt.Checked; st.AddAttendance(st); } } }
private StudentAttendance GetStudentAttendance(int student_id, string date) { var school_id = SessionHandler.GetSchoolID(); var std = new StudentDetails().FindSingle(student_id, school_id); string startDate = "", endDate = ""; date.makeDateString(ref startDate, ref endDate); int daysInMonth = date.GetDaysInMonth(); var stdAtnd = _ad.GetAll(school_id, std.class_id, student_id, startDate, endDate); StudentAttendance _sd = new StudentAttendance(); _sd.student_id = std.user_id; _sd.student_name = std.first_name + " " + std.last_name; for (int i = 0; i < daysInMonth; i++) { var reqDate = ""; var dayName = ""; startDate.getDayAndDate(ref dayName, ref reqDate, i); PresentStatus _ps = new PresentStatus(); _ps.status = -1; _ps.date = reqDate; _ps.dayName = dayName; foreach (var attnd in stdAtnd) { if (attnd.date.ComapareDate(reqDate)) { _ps.status = attnd.status; break; } } _sd.AttendanceDays.Add(_ps); } return _sd; }
public ActionResult ViewClass(int class_id = 0, string date = "") { ClassDetails _cd = new ClassDetails(); int school_id = SessionHandler.GetSchoolID(); ViewBag.classes = _cd.GetAll(school_id); ViewBag.Days = 0; ViewBag.class_id = class_id; ViewBag.date = date; if (class_id != 0 && date != "") { string startDate = ""; string endDate = ""; date.makeDateString(ref startDate, ref endDate); int daysInMonth = date.GetDaysInMonth(); var result = _ad.GetAll(school_id, class_id, startDate, endDate).ToList(); var _sd = new StudentDetails(); var stds = _sd.GetAll(school_id, class_id); ViewBag.Days = daysInMonth; List<StudentAttendance> attendance = new List<StudentAttendance>(); foreach (var std in stds) { StudentAttendance stdAttnd = new StudentAttendance() { student_name = std.first_name + " " + std.last_name, student_id = std.user_id }; for (int x = 1; x <= daysInMonth; x++) { PresentStatus _ps = new PresentStatus() { dayOfMonth = x, status = -1 }; foreach (var atnd in result) { int dayInAtnd = atnd.date.GetDayOfMonth(); if (atnd.student_id == std.user_id && x == dayInAtnd) { _ps.status = atnd.status; break; } } stdAttnd.AttendanceDays.Add(_ps); } attendance.Add(stdAttnd); } return View(attendance); } return View(); }