public ActionResult Index(NewAdminViewModel nvm) { AttendanceManagementDBEntities1 db = new AttendanceManagementDBEntities1(); db.CreateAdmin(nvm.AdminUserName); return(View()); }
public ActionResult GetAttendance(string departmentID, int Semester, string section, string slot, DateTime date) { AttendanceViewModel attendanceViewModel = new AttendanceViewModel(); AttendanceManagementDBEntities1 db = new AttendanceManagementDBEntities1(); var customer = db.AspNetUsers.FirstOrDefault(u => u.Email == User.Identity.Name); var teacher = db.Teachers.FirstOrDefault(u => u.REFID == customer.Id); var students = db.Students.Where(s => s.Department_DID == (departmentID)).Where(s => s.Sem == (Semester)).Where(s => s.Section == (section)).ToList(); //var subject = db.Subjects.FirstOrDefault(u => u.Department_DID == teacher.Department_DID); string usn = students[0].USN; var tts = db.Teacher_Teaches_Student.Where(u => u.Teacher_TID == teacher.TID).FirstOrDefault(u => u.Student_USN == usn); string dt = date.ToShortDateString(); var attendances = db.Attendances.Where(s => s.Teacher_TID == teacher.TID).Where(s => s.Subject_SubCode == tts.Subject_SubCode).Where(s => s.Date == dt).Where(s => s.Slot == slot).ToList(); attendanceViewModel.Attds = attendances; attendanceViewModel.Date = dt; attendanceViewModel.Slot = slot; attendanceViewModel.TeacherId = teacher.TID; attendanceViewModel.SubjectCode = tts.Subject_SubCode; attendanceViewModel.Students = students; return(View(attendanceViewModel)); }
public ActionResult Index(TeacherTeachesStudentModel classViewModel) { ttsmodel.Sub_Code = classViewModel.Sub_Code; ttsmodel.Department_DID = classViewModel.Department_DID; ttsmodel.Sem = classViewModel.Sem; ttsmodel.Section = classViewModel.Section; AttendanceManagementDBEntities1 db = new AttendanceManagementDBEntities1(); var customer = db.AspNetUsers.FirstOrDefault(u => u.Email == User.Identity.Name); var teacher = db.Teachers.FirstOrDefault(u => u.REFID == customer.Id); classViewModel.Students = db.Students.Where(u => u.Section == classViewModel.Section).Where(u => u.Sem == classViewModel.Sem).Where(u => u.Department_DID == classViewModel.Department_DID).ToList(); for (int i = 0; i < classViewModel.Students.Count; i++) { Student_Studies_Subject student_studies_subject = new Student_Studies_Subject(); Teacher_Teaches_Student teacherTeachesStudent = new Teacher_Teaches_Student(); teacherTeachesStudent.Teacher_TID = teacher.TID; teacherTeachesStudent.Subject_SubCode = classViewModel.Sub_Code; teacherTeachesStudent.Student_USN = classViewModel.Students[i].USN; student_studies_subject.SubCode = classViewModel.Sub_Code; student_studies_subject.USN = classViewModel.Students[i].USN; db.Teacher_Teaches_Student.Add(teacherTeachesStudent); db.Student_Studies_Subject.Add(student_studies_subject); db.SaveChanges(); } return(RedirectToAction("Index", "TeachersPortal")); }
public ActionResult GetAttendance(string departmentID, int Semester, string section, string slot, DateTime date) { AttendanceViewModel attendanceViewModel = new AttendanceViewModel(); AttendanceManagementDBEntities1 db = new AttendanceManagementDBEntities1(); var customer = db.AspNetUsers.FirstOrDefault(u => u.Email == User.Identity.Name); var teacher = db.Teachers.FirstOrDefault(u => u.REFID == customer.Id); var students = db.Students.Where(s => s.Department_DID == (departmentID)).Where(s => s.Sem == (Semester)).Where(s => s.Section == (section)).ToList(); //var subject = db.Subjects.FirstOrDefault(u => u.Department_DID == teacher.Department_DID); if (students.Count == 0) { return(RedirectToAction("Index", "TeachersPortal")); } string usn = students[0].USN; var tts = db.Teacher_Teaches_Student.Where(u => u.Teacher_TID == teacher.TID).FirstOrDefault(u => u.Student_USN == usn); string dt = date.ToShortDateString(); var attendances = db.Attendances.Where(s => s.Teacher_TID == teacher.TID).Where(s => s.Subject_SubCode == tts.Subject_SubCode).Where(s => s.Date == dt).Where(s => s.Slot == slot).ToList(); for (int i = 0; i < attendances.Count; i++) { var studentusn = attendances[i].Student_USN; int totalClasses = db.Attendances.Where(s => s.Teacher_TID == teacher.TID).Where(s => s.Subject_SubCode == tts.Subject_SubCode).Where(s => s.Student_USN == studentusn).ToList().Count; int presentClasses = db.Attendances.Where(s => s.Teacher_TID == teacher.TID).Where(s => s.Subject_SubCode == tts.Subject_SubCode).Where(s => s.Student_USN == studentusn).Where(s => s.IsPresent == 1).ToList().Count; double percentage = ((presentClasses * 1.0) / totalClasses) * 100.0; attendanceViewModel.presentClasses.Add(presentClasses); attendanceViewModel.totalClass = totalClasses; attendanceViewModel.percentageOfAttendance.Add(percentage); } attendanceViewModel.Attds = attendances; attendanceViewModel.Date = dt; attendanceViewModel.Slot = slot; attendanceViewModel.TeacherId = teacher.TID; attendanceViewModel.SubjectCode = tts.Subject_SubCode; attendanceViewModel.Students = students; return(View(attendanceViewModel)); }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } // This doesn't count login failures towards account lockout // To enable password failures to trigger account lockout, change to shouldLockout: true var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout : false); AttendanceManagementDBEntities1 db = new AttendanceManagementDBEntities1(); var user = db.AspNetUsers.FirstOrDefault(u => u.Email == model.Email); switch (result) { case SignInStatus.Success: if (user.IsAdmin == 1) { return(RedirectToAction("Index", "AdminPortal")); } else { return(RedirectToAction("Index", "teachersPortal")); } case SignInStatus.LockedOut: return(View("Lockout")); case SignInStatus.RequiresVerification: return(RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe })); case SignInStatus.Failure: default: ModelState.AddModelError("", "Invalid login attempt."); return(View(model)); } }
public async Task <ActionResult> Register(RegisterViewModel model) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = model.Email, Email = model.Email }; var result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { await SignInManager.SignInAsync(user, isPersistent : false, rememberBrowser : false); // For more information on how to enable account confirmation and password reset please visit https://go.microsoft.com/fwlink/?LinkID=320771 // Send an email with this link // string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); // var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); // await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking <a href=\"" + callbackUrl + "\">here</a>"); AttendanceManagementDBEntities1 db = new AttendanceManagementDBEntities1(); var customer = db.AspNetUsers.FirstOrDefault(u => u.Email == model.Email); Teacher teacher = new Teacher(); teacher.TID = model.TID; teacher.Name = model.Name; teacher.Department_DID = model.DID; teacher.REFID = customer.Id; db.Teachers.Add(teacher); db.SaveChanges(); return(RedirectToAction("Index", "TeachersPortal")); } AddErrors(result); } // If we got this far, something failed, redisplay form return(View(model)); }