public ActionResult Create() { var model = new StudentModel { GendersList = _iAutogearRepo.GenderListItems(), StatesList = _iStudentRepo.GetStateList(), LearningPackages = _iStudentRepo.GetPackages(), DrivingPackages = _iStudentRepo.GetPackages(), InstructorList = new SelectList(_instructorRepo.GetInstructorNames(), "Value", "Text"), Status = true }; return View(model); }
public ActionResult Create(StudentModel model) { var currentUser = Request.GetOwinContext().Authentication.User.Identity.GetUserId(); var packages = _iStudentRepo.GetPackages(); if (ModelState.IsValid) { string[] addressInfo = model.SuburbName.Split(','); var suburb = _iPostalRepo.GetSuburb(addressInfo[0]); model.PostalCode = addressInfo[2]; if (suburb != null) { model.SuburbId = suburb.SuburbId; } _iStudentRepo.SaveStudent(model,currentUser); return RedirectToAction("Index"); //AddErrors(result); } model.GendersList = _iAutogearRepo.GenderListItems(); model.StatesList = _iStudentRepo.GetStateList(); model.LearningPackages = packages; model.DrivingPackages = packages; model.InstructorList = new SelectList(_instructorRepo.GetInstructorNames(), "Value", "Text"); return View(model); }
public void SaveExistingStudent(string currentUser, StudentModel studentModel) { var studentDetails = DataContext.Students.FirstOrDefault(s => s.StudentNumber == studentModel.StudentNumber) ?? new Student(); var addressDetails = DataContext.Addresses.FirstOrDefault(s => s.AddressId == studentDetails.AddressId) ?? new Address(); addressDetails.Address1 = studentModel.Address1; addressDetails.AddressLine2 = studentModel.Address2; addressDetails.Mobile = studentModel.Mobile; addressDetails.PostCode = Convert.ToInt32(studentModel.PostalCode); addressDetails.ModifiedDate = DateTime.Now; addressDetails.ModifiedBy = currentUser; if (Regex.IsMatch(studentModel.PostalCode, @"\d")) { addressDetails.PostCode = Convert.ToInt32(studentModel.PostalCode); // studentAddress. } if (studentModel.SuburbId != 0) addressDetails.SuburbID = studentModel.SuburbId; if (addressDetails.AddressId == 0) { addressDetails.CreatedBy = currentUser; addressDetails.CreatedDate = DateTime.Now; DataContext.Addresses.Add(addressDetails); } DataContext.SaveChanges(); studentDetails.FirstName = studentModel.FirstName; studentDetails.LastName = studentModel.LastName; studentDetails.Email = studentModel.Email; studentDetails.StartDate = studentModel.StartDate; studentDetails.Status = studentModel.Status; studentDetails.Gender = studentModel.Gender; studentDetails.AddressId = addressDetails.AddressId; studentDetails.PickupLocation = studentModel.PickupLocation; if (studentDetails.Id == 0) { DataContext.Students.Add(studentDetails); } DataContext.SaveChanges(); var studentLicenseDetails = DataContext.Student_License.FirstOrDefault(s => s.StudentId == studentDetails.Id) ?? new Student_License(); studentLicenseDetails.LicenseNo = studentModel.LicenseNumber; studentLicenseDetails.License_passed_Date = studentModel.LicensePassedDate; studentLicenseDetails.Class = studentModel.ClassName; if (studentModel.ExpiryDate != null) studentLicenseDetails.ExpiryDate = (DateTime) studentModel.ExpiryDate; studentLicenseDetails.Remarks = studentModel.Remarks; if (studentModel.IsInternationalLicensed) { studentLicenseDetails.IsInternationalLicensed = studentModel.IsInternationalLicensed; studentLicenseDetails.Country = studentModel.Country; studentLicenseDetails.StateId = null; } else { studentLicenseDetails.IsInternationalLicensed = studentModel.IsInternationalLicensed; studentLicenseDetails.Country = null; studentLicenseDetails.StateId = studentModel.StateId; } if (studentLicenseDetails.StudentId == 0) { DataContext.Student_License.Add(studentLicenseDetails); } DataContext.SaveChanges(); var instructor = DataContext.Instructors.SingleOrDefault(s => s.InstructorNumber == studentModel.InstructorNumber); var instructorDetails = DataContext.Instructor_Student.FirstOrDefault(s => s.StudentId == studentModel.StudentId); if (instructorDetails != null) { if (instructor != null) { instructorDetails.InstructorId = instructor.InstructorId; instructorDetails.Remarks = studentModel.InstructorRemarks; } instructorDetails.ModifiedBy = currentUser; instructorDetails.ModifiedDate = DateTime.Now; DataContext.SaveChanges(); } }
public void SaveStudent(StudentModel studentModel,string currentUser) { if (currentUser != null) { //Student Addresses var studentAddress = new Address { Address1 = studentModel.Address1, AddressLine2 = studentModel.Address2, CreatedBy = currentUser, CreatedDate = DateTime.Now, Mobile = studentModel.Mobile, }; if (Regex.IsMatch(studentModel.PostalCode, @"\d")) { studentAddress.PostCode = Convert.ToInt32(studentModel.PostalCode); // studentAddress. } if (studentModel.SuburbId != 0) studentAddress.SuburbID = studentModel.SuburbId; DataContext.Addresses.Add(studentAddress); DataContext.SaveChanges(); // Student Creation // last student var lastStudent = TblStudents.ToList().OrderByDescending(o => o.StudentId).FirstOrDefault(); var studentNumber = "0001"; if (lastStudent != null) { var year = Convert.ToInt32(lastStudent.StudentNumber.Substring(3, 4)); var number = Convert.ToInt32(lastStudent.StudentNumber.Substring(7, 4)); if (DateTime.Now.Year == year) studentNumber = (number + 1).ToString("0000"); } var student = new Student { FirstName = studentModel.FirstName, Email = studentModel.Email, LastName = studentModel.LastName, Gender = studentModel.Gender, Status = studentModel.Status, CreatedBy = currentUser, CreatedDate = DateTime.Now, StartDate = studentModel.StartDate, AddressId = studentAddress.AddressId, StudentNumber = "SID" + DateTime.Now.Year.ToString() + studentNumber, PickupLocation = studentModel.PickupLocation }; DataContext.Students.Add(student); DataContext.SaveChanges(); //License Information var studentLicense = new Student_License { StudentId = student.Id, ExpiryDate = Convert.ToDateTime(studentModel.ExpiryDate), StateId = studentModel.StateId, Class = studentModel.ClassName, LicenseNo = studentModel.LicenseNumber, License_passed_Date =studentModel.LicensePassedDate, Remarks = studentModel.Remarks, //International License details IsInternationalLicensed = studentModel.IsInternationalLicensed, Country = studentModel.Country }; DataContext.Student_License.Add(studentLicense); DataContext.SaveChanges(); if (!string.IsNullOrEmpty(studentModel.InstructorNumber)) { var instructor = DataContext.Instructors.SingleOrDefault( s => (s.InstructorNumber) == studentModel.InstructorNumber); // Booking Information if (instructor != null) { //Save instructor student var instructorStudent = new Instructor_Student { InstructorId = instructor.InstructorId, StudentId = student.Id, CreatedBy = currentUser, CreatedDate = DateTime.Now, Remarks = studentModel.Remarks, }; DataContext.Instructor_Student.Add(instructorStudent); DataContext.SaveChanges(); if (studentModel.BookingStartDate != null) { var studentBooking = new Booking { StudentId = student.Id, PackageId = studentModel.PackageId, CreatedDate = DateTime.Now, BookingDate = DateTime.Now, StartDate = studentModel.BookingStartDate, EndDate = studentModel.BookingEndDate, InstructorId = instructor.InstructorId, StartTime = studentModel.StartTime, EndTime = studentModel.StopTime, Discount = studentModel.PackageDisacount, PickupLocation = studentModel.PickupLocation, DropLocation = studentModel.DropLocation, CreatedBy = currentUser, Type = "Learning" }; DataContext.Bookings.Add(studentBooking); DataContext.SaveChanges(); } if (studentModel.DrivingTestPackageId != null) { // Driving Test Information var studentDrivingBooking = new Booking { StudentId = student.Id, PackageId = studentModel.DrivingTestPackageId, CreatedDate = DateTime.Now, BookingDate = studentModel.DrivingTestDate, InstructorId = instructor.InstructorId, StartTime = studentModel.DrivingTestStartTime, EndTime = studentModel.DrivingTestStopTime, Discount = studentModel.DrivingTestPackageDisacount, PickupLocation = studentModel.DrivingTestPickupLocation, DropLocation = studentModel.DrivingTestDropLocation, CreatedBy = currentUser, Type = "Driving" }; DataContext.Bookings.Add(studentDrivingBooking); DataContext.SaveChanges(); } } } } }
public StudentModel GetStudentById(int studentId) { var student = TblStudents.FirstOrDefault(s => s.StudentId == studentId); var packages = GetPackages(); var studentModel = new StudentModel { StatesList = GetStateList(), LearningPackages = packages, DrivingPackages = packages }; if (student != null) { // student Info studentModel.StudentId = student.StudentId; studentModel.FirstName = student.FirstName; studentModel.LastName = student.LastName; studentModel.Email = student.Email; studentModel.Gender = student.Gender; studentModel.StartDate = student.StartDate; studentModel.Status = student.Status; studentModel.StudentNumber = student.StudentNumber; //Student Address var studentAddress = TblStudentAddresses.FirstOrDefault(s => s.AddressId == student.AddressId); if (studentAddress != null) { studentModel.Address1 = studentAddress.Address1; studentModel.Address2 = studentAddress.Address2; studentModel.Mobile = studentAddress.Mobile; studentModel.PostalCode = studentAddress.PostalCode.ToString(); var subUrb = DataContext.Suburbs.SingleOrDefault(s => s.SuburbId == studentAddress.SuburbId); if (subUrb != null) { studentModel.SuburbName = subUrb.Suburb_Name; studentModel.SuburbId = subUrb.SuburbId; } } //Student License var studentLicense = TblStudentLicenses.FirstOrDefault(s => s.StudentId == student.StudentId); if (studentLicense != null) { studentModel.LicenseNumber = studentLicense.LicenseNumber; studentModel.LicensePassedDate = studentLicense.LicensePassedDate; studentModel.ExpiryDate = studentLicense.ExpiryDate; studentModel.ClassName = studentLicense.ClassName; studentModel.Remarks = studentLicense.Remarks; studentModel.IsInternationalLicensed = studentLicense.IsInternationalLicensed; studentModel.Country = studentLicense.Country; var instructor = DataContext.Instructor_Student.SingleOrDefault(s => s.StudentId == student.StudentId); if (instructor != null) { studentModel.InstructorRemarks = instructor.Remarks; var instructorDetails = DataContext.Instructors.SingleOrDefault(s => s.InstructorId == instructor.InstructorId); if (instructorDetails != null) { studentModel.InstructorNumber = instructorDetails.InstructorNumber; } } } var studentBookings = TblStudentBookings.Where(s => s.StudentId == student.StudentId && s.Type == "Learning").ToList(); if (studentBookings.Count > 0) { var firstBooking = studentBookings[0]; var lastBooking = studentBookings[studentBookings.Count - 1]; studentModel.BookingStartDate = firstBooking.StartDate; studentModel.BookingEndDate = lastBooking.EndDate; studentModel.PickupLocation = firstBooking.PickupLocation; studentModel.StartTime = firstBooking.StartTime; studentModel.StopTime = firstBooking.StopTime; studentModel.DropLocation = firstBooking.DropLocation; studentModel.PackageDisacount = firstBooking.Discount; var package = packages.SingleOrDefault(s => s.Value == firstBooking.PackageId.ToString()); if (package != null) { if (!string.IsNullOrEmpty(package.Value)) studentModel.PackageId = Convert.ToInt32(package.Value); studentModel.PackageDetails = package.Text; } } var studentDrivingTestBooking = TblStudentBookings.FirstOrDefault(s => s.StudentId == student.StudentId && s.Type == "Driving"); if (studentDrivingTestBooking != null) { studentModel.DrivingTestDate = studentDrivingTestBooking.BookingDate; studentModel.DrivingTestPickupLocation = studentDrivingTestBooking.PickupLocation; studentModel.DrivingTestStartTime = studentDrivingTestBooking.StartTime; studentModel.DrivingTestStopTime = studentDrivingTestBooking.StopTime; studentModel.DrivingTestDropLocation = studentDrivingTestBooking.DropLocation; studentModel.DrivingTestPackageDisacount = studentDrivingTestBooking.Discount; var package = packages.SingleOrDefault(s => s.Value == studentDrivingTestBooking.PackageId.ToString()); if (package != null) { if (!string.IsNullOrEmpty(package.Value)) studentModel.DrivingTestPackageId = Convert.ToInt32(package.Value); studentModel.DrivingTestPackageDetails = package.Text; } } } return studentModel; }