public ActionResult NewEmployeeLookup(string workerId, string hireType) { ViewBag.WorkerIDHelp = PowerShell.GetHTMLString("NewHires", "WorkerIDHelp", null); ViewBag.HireTypeGuidelines = PowerShell.GetHTMLString("NewHires", "HireTypeGuidelines", null); if (String.IsNullOrWhiteSpace(workerId)) { ModelState.AddModelError("WorkerID", "Worker ID Required"); return(View(NewHire.EmployeeHireTypes())); } NewHire employee = NewHire.EmployeeLookup(workerId, hireType, db); if (employee == null) { ModelState.AddModelError("WorkerID", "Workday Lookup Error"); return(View(NewHire.EmployeeHireTypes())); } if (employee.EmailAddress == null) { employee.SetEmailAddress(); } ViewBag.Countries = db.Countries.Select(x => x.Name).Distinct(); ViewBag.Offices = Office.GetOfficeNames(employee.Country, db); ViewBag.O365Profiles = O365Profile.GetSelectList(); ViewBag.O365ProfileDetails = PowerShell.GetHTMLString("NewHires", "O365ProfileDetails", null); return(View("NewEmployee", employee)); }
public ActionResult NewContingent(NewHire contingent) { contingent.ValidateContingent(ModelState, User); if (db.NewHires.Any(x => x.FirstName == contingent.FirstName && x.LastName == contingent.LastName)) { ModelState.AddModelError("Request", String.Format("{0} Already Requested", contingent.HireType)); } if (ModelState.IsValid) { contingent.SetEmailAddress(); NewHireNotice newHireNotice = new NewHireNotice(contingent, "New"); if (TryValidateModel(newHireNotice) == true) { Mailer mailer = new Mailer(MessageTemplate.NewHireContingent, true); mailer.SetFromAddress(contingent.RequestersEmail); mailer.AddRecipient(contingent.ManagersEmail); mailer.SendMessage("NewHireNotice", newHireNotice, newHireNotice.Subject); db.NewHires.Add(contingent); db.SaveChanges(); return(RedirectToAction("Index")); } ModelState.AddModelError("MailNotice", "Mail Notice Error"); } ViewBag.Countries = db.Countries.Select(x => x.Name).Distinct(); ViewBag.Offices = Office.GetOfficeNames(contingent.Country, db); ViewBag.O365Profiles = O365Profile.GetSelectList(); ViewBag.O365ProfileDetails = PowerShell.GetHTMLString("NewHires", "O365ProfileDetails", null); return(View(contingent)); }