public async Task <JsonResult> Create([Bind(Include = "Id,Nomination_Type,Nominator_Employee_Number,Nominator_Employee_Full_Name,Nomination_Reason,Nominee_Employee_Number,Nominee_Emp_or_Team_Name,Submission_Date")] EOM_Nomination eOM_Nominations) { Dictionary <string, string> dict = new Dictionary <string, string>(); eOM_Nominations.Submission_Date = DateTime.Now; if (ModelState.IsValid && EntryInModel(eOM_Nominations)) { db.EOM_Nomination.Add(eOM_Nominations); await db.SaveChangesAsync(); // Send Email to nominator and Josh handleNotification(eOM_Nominations); // Send success message dict.Add("Message", "Success"); return(Json(dict, JsonRequestBehavior.AllowGet)); } dict.Add("Message", "Failure"); return(Json(dict, JsonRequestBehavior.AllowGet)); }
private void handleNotification(EOM_Nomination eom, string statMsg = null) { // Get nominator var nominator = db.UltiPro.AsEnumerable().Select(user => user).Where(user => user.employee_number == eom.Nominator_Employee_Number); UltiPro u = nominator.ToList()[0]; Mail m = new Mail(); string nominationType; // nominator email address string nominatorEmail = String.Format("{0}.{1}@lowndes-law.com", u.first_name, u.last_name); string eeucid = String.Format("{0}@lowndes-law.com", u.eecudfield01); // Email for single nomination if (statMsg == null) { // Send email to nomination submitter string messageToNominator = String.Format("Thank you for your nomination of {0}. This email is just a confirmation that your nomination was recorded successfully", eom.Nominee_Emp_or_Team_Name); m.SendMessage(nominatorEmail, eeucid, "Thank you for your Applause, Applause Nomination", messageToNominator); // Build msg for bccRecipients statMsg = String.Format("Nominated By: {0}\nNomination Reason: {1}\nNominee ID: {2}\nNominee Name: {3}\n", eom.Nominator_Employee_Full_Name, eom.Nomination_Reason, eom.Nominator_Employee_Number, eom.Nominee_Emp_or_Team_Name); nominationType = "New Applause, Applause Nomination"; } // Email for group nomination else { string messageToNominator = String.Format("Thank you for your teamwork award nomination. This email is a confirmation that your nomination was recorded successfully"); m.SendMessage(nominatorEmail, eeucid, "Thank you for your Teamwork Award Nomination", messageToNominator); nominationType = "New Teamwork Award Nomination"; } string[] bccRecipients = new string[] { "*****@*****.**", "*****@*****.**" }; string mainRecipient = "*****@*****.**"; m.SendMessage(mainRecipient, bccRecipients, eeucid, nominationType, statMsg); }
public bool EntryInModel(EOM_Nomination nominee) { string empID = nominee.Nominee_Employee_Number; string teamName = nominee.Nominee_Emp_or_Team_Name; // If empID supplied, assume that submission is a user if (empID != null && teamName != null) { var usr = db.UltiPro.AsEnumerable().Select(user => user).Where(user => user.employee_number == empID); return((usr.Count() == 1) ? true : false); } // If empID is null and teamName supplied, assume submission is a team else if (empID == null && teamName != null) { var teamm = db.UltiPro.AsEnumerable().Select(team => team).Where(user => user.org_level_1 == teamName || user.org_level_2 == teamName || user.org_level_3 == teamName); return((teamm.Any()) ? true : false); } else { return(false); } }