public ActionResult Confirmation(int id = 0) { AppraisalViewModel appraisalViewModel = new AppraisalViewModel(); if (id != 0) { appraisalViewModel.Appraisal = _appraisalServiceModel.Get_Appraisal(id); //TODO: Format phone numbers } return View(appraisalViewModel); }
public ActionResult Index(int id = 0) { AppraisalViewModel appraisalViewModel = new AppraisalViewModel(); if (id != 0) { appraisalViewModel.Appraisal = _appraisalServiceModel.Get_Appraisal(id); //var appraisers = _appraisalServiceModel.Get_Appraisers(); //var appraiser = _appraisalServiceModel.Get_Appraiser(3); //TODO: Format phone numbers } return View(appraisalViewModel); }
public ActionResult Index(AppraisalViewModel appraisalViewModel, bool captchaValid) { if (ModelState.IsValid) { /*var appraisalModel = new Models.Appraisal(); appraisalViewModel.Appraisal.ClientPerson = new Models.Person { FirstName = "Ryan", LastName = "Test", CompanyName = "Ryan Company", Email = "*****@*****.**", Phone = "8015556565" }; appraisalViewModel.Appraisal.OccupantPerson = new Models.Person { FirstName = "Sam", LastName = "Occupant" }; appraisalViewModel.Appraisal.PropertyAddress = new Models.Address { Address1 = "123 Somewhere", City = "SLC", PostalCode = "12345", StateCode = "UT" }; appraisalViewModel.Appraisal.AppraiserId = 3; appraisalViewModel.Appraisal.PropertyTypeCode = "SFR"; appraisalViewModel.Appraisal.AppraisalTypeCode = "FULL"; appraisalViewModel.Appraisal.AppraisalPurposeCode = "SC"; appraisalViewModel.Appraisal.Comments = "Web test"; appraisalViewModel.Appraisal.ClientAddress.Address1 = "123 ClientAddress Ave"; appraisalViewModel.Appraisal.ClientAddress.City = "SLC"; appraisalViewModel.Appraisal.ClientAddress.PostalCode = "12345"; appraisalViewModel.Appraisal.ClientAddress.StateCode = "UT";*/ appraisalViewModel.Appraisal.ClientPerson.Phone = AppraiseUtah.Client.Utilities.ScrubData.RemoveNonNumeric(appraisalViewModel.Appraisal.ClientPerson.Phone); appraisalViewModel.Appraisal.OccupantPerson.Phone = AppraiseUtah.Client.Utilities.ScrubData.RemoveNonNumeric(appraisalViewModel.Appraisal.OccupantPerson.Phone); appraisalViewModel.Appraisal.Client2Person.Phone = AppraiseUtah.Client.Utilities.ScrubData.RemoveNonNumeric(appraisalViewModel.Appraisal.Client2Person.Phone); if (Request["AreYouClient"] == "Yes") { ClearOrderClientData(ref appraisalViewModel); } appraisalViewModel.Appraisal.OrderDate = DateTime.UtcNow; var appraisalId = _appraisalServiceModel.Save_Appraisal(appraisalViewModel); appraisalViewModel.Appraisal.Id = appraisalId; // Send the confirmation email MailUtility.SendConfirmationEmail(appraisalViewModel); return RedirectToAction("Confirmation", new { id = appraisalId }); } else { if (!captchaValid) { ViewBag.Captcha = false; } return View(appraisalViewModel); } }
public ActionResult Index(AppraisalViewModel appraisalViewModel) { appraisalViewModel.Appraisal.ClientPerson.Phone = AppraiseUtah.Client.Utilities.ScrubData.RemoveNonNumeric(appraisalViewModel.Appraisal.ClientPerson.Phone); appraisalViewModel.Appraisal.OccupantPerson.Phone = AppraiseUtah.Client.Utilities.ScrubData.RemoveNonNumeric(appraisalViewModel.Appraisal.OccupantPerson.Phone); // Set appraiser id to the proper value from web.config appraisalViewModel.Appraisal.AppraiserId = int.Parse(ConfigurationManager.AppSettings["AppraiserId"].ToString()); var appraisalId = _appraisalServiceModel.Save_Appraisal(appraisalViewModel); appraisalViewModel.Appraisal.Id = appraisalId; // Send the confirmation email MailUtility.SendConfirmationEmail(appraisalViewModel); return RedirectToAction("Confirmation", new { id = appraisalId }); }
private static void SendOrderEmailToAppraiser(AppraisalViewModel appraisal) { MailMessage message = new MailMessage(); var appraiser = GetAppraiserForDisplay.GetAppraiser(appraisal.Appraisal.AppraiserId); if (string.IsNullOrEmpty(appraiser.Email)) { throw new Exception("Appraiser email is null or empty. Cannot complete order"); } message.From = new MailAddress(_orderFromEmailAddress, "AppraiseUtah.com"); message.To.Add(new MailAddress(appraiser.Email)); if (!string.IsNullOrEmpty(_orderCCEmailAddress)) { message.CC.Add(new MailAddress(_orderCCEmailAddress)); } message.IsBodyHtml = true; message.BodyEncoding = Encoding.UTF8; message.Subject = "New appraisal order from AppraisalUtah.com - " + appraisal.Appraisal.PropertyAddress.Address1 + ", " + appraisal.Appraisal.PropertyAddress.City + " (ID: " + appraisal.Appraisal.Id + ")"; message.Body = BuildConfirmationBody(appraisal, false); SmtpClient smtpClient = new SmtpClient(); smtpClient.EnableSsl = true; smtpClient.Send(message); }
private static void SendConfirmationEmailToClient(AppraisalViewModel appraisal) { MailMessage message = new MailMessage(); if (string.IsNullOrEmpty(appraisal.Appraisal.ClientPerson.Email)) { throw new Exception("Client email is null or empty. Cannot complete order"); } message.From = new MailAddress(_orderFromEmailAddress, "AppraiseUtah.com"); message.To.Add(new MailAddress(appraisal.Appraisal.ClientPerson.Email)); message.IsBodyHtml = true; message.BodyEncoding = Encoding.UTF8; message.Subject = "AppraisalUtah.com Order Confirmation - ID: " + appraisal.Appraisal.Id + " **DO NOT REPLY**"; message.Body = BuildConfirmationBody(appraisal, true); SmtpClient smtpClient = new SmtpClient(); smtpClient.EnableSsl = true; smtpClient.Send(message); }
private static bool OccupantDataPresent(AppraisalViewModel appraisal) { // Check to see if Occupant data is present bool occupantData = false; var occupant = appraisal.Appraisal.OccupantPerson; if (occupant != null) { if (!string.IsNullOrEmpty(occupant.FirstName) || !string.IsNullOrEmpty(occupant.LastName) || !string.IsNullOrEmpty(occupant.Phone) || !string.IsNullOrEmpty(occupant.Email)) { occupantData = true; } } return occupantData; }
public static void SendConfirmationEmail(AppraisalViewModel appraisal) { SendConfirmationEmailToClient(appraisal); SendOrderEmailToAppraiser(appraisal); }
public static string BuildConfirmationBody(AppraisalViewModel appraisal, bool clientConfirmation) { var appraiser = GetAppraiserForDisplay.GetAppraiser(appraisal.Appraisal.AppraiserId); // gets the AppraiserModel for the selected appraiser var professionalDesignations = (!string.IsNullOrEmpty(appraiser.ProfessionalDesignations)) ? " " + appraiser.ProfessionalDesignations : ""; var propertyType = DropDownData.GetPropertyTypeList().Where(x => x.PropertyTypeCode == appraisal.Appraisal.PropertyTypeCode).FirstOrDefault(); var appraisalPurpose = DropDownData.GetAppraisalPurposeList().Where(x => x.AppraisalPurposeCode == appraisal.Appraisal.AppraisalPurposeCode).FirstOrDefault(); var propertyAddress = appraisal.Appraisal.PropertyAddress; var property = appraisal.Appraisal; var occupant = appraisal.Appraisal.OccupantPerson; bool legalSalesData = ((property.SalesContractPrice != null) || (!string.IsNullOrEmpty(property.LegalDescription))) ? true : false; var body = new StringBuilder(); body.Append(@"<div style=""font-family:Tahoma, Calibri, Arial, sans-serif;font-size:15px;margin:10px 20px;padding:0"">"); // Header if (clientConfirmation) { body.Append(@"<h2 style=""line-height:1.1;font-size:32px;margin-top:21px;margin-bottom:5px;color:#6abe59;font-weight:normal"">Thank you for your order at <em>AppraiseUtah.com</em></h2>"); body.Append(@"<h4 style=""line-height:1.1;font-size:24px;margin-top:0;margin-bottom:5px;color:#6abe59;font-weight:normal"">Your appraisal order number is: <strong style=""margin:0 5px"">" + appraisal.Appraisal.Id + "</strong></h4>"); body.Append(@"<h4 style=""line-height:1.1;font-size:18px;margin-top:0;margin-bottom:5px;color:#6abe59;font-weight:normal"">Ordered on <strong style=""margin:0 5px"">" + appraisal.Appraisal.OrderDate.ToFormattedLocal() + "</strong></h4>"); //body.Append(@"<h6 style=""lineheight:1.0;font-size:16px;margin-top:0;margin-bottom:10.5px;color:#333;font-weight:normal"">Do not reply to this e-mail</h6>"); } else { body.Append(@"<h2 style=""line-height:1.1;font-size:32px;margin-top:21px;margin-bottom:5px;color:#6abe59;font-weight:normal"">You have received a new Appraisal Order through <em>AppraiseUtah.com</em></h2>"); body.Append(@"<h4 style=""line-height:1.1;font-size:24px;margin-top:0;margin-bottom:10.5px;color:#6abe59;font-weight:normal"">The appraisal order number is: <strong style=""margin:0 5px"">" + appraisal.Appraisal.Id + "</strong></h4>"); } body.Append(@"<fieldset id=""ConfirmationInfo"" style=""border:none;border-bottom:1px dashed #a3a3a3;border-top:1px dashed #a3a3a3;margin-top:15px;min-height:200px;padding:0 10px 20px 0"">"); body.Append(@"<legend style=""display:block;line-height:inherit;color:#333;border:none;font-size:22px;margin-bottom:5px;margin-left:15px;width:auto;padding:0 4px 4px"">Appraisal Order Information</legend>"); // Build the APPRAISER section body.Append(@"<div style=""font-size:13px;overflow:auto;margin:0 0 8px;padding:5px 0"">"); body.Append(@"<div class=""col-xs-2"" style=""color:#19aacf;float:left;font-weight:700;vertical-align:top;width:150px"">Appraiser</div>"); body.Append(@"<div id=""appraiserDisplay"" style=""float:left"">"); body.Append(@"<h4 style=""line-height:1.1;color:inherit;font-size:19px;margin-top:0;margin-bottom:10.5px;font-weight:normal"">" + appraiser.CompanyName + @"<span class=""designation"">" + professionalDesignations + "</span></h4>"); body.Append(@"<div style=""clear:both;font-size:13px;line-height:normal;margin-top:0;overflow:auto"">"); body.Append(@"<address style=""display:block;font-style:normal;width:180px;float:left!important"">"); body.Append(appraiser.Address.Address1).Append("<br />"); if (!string.IsNullOrEmpty(appraiser.Address.Address2)) { body.Append(appraiser.Address.Address2).Append("<br />"); } body.Append(appraiser.Address.City).Append(", "); body.Append(appraiser.Address.StateCode).Append(" "); body.Append(appraiser.Address.PostalCode); body.Append(@"</address>"); body.Append(@"<div class=""contact"" style=""float:left!important"">"); body.Append(buildContactItems(appraiser)); body.Append(@"</div>"); body.Append(@"</div>"); body.Append(@"</div>"); body.Append(@"</div>"); // Build the CLIENT section body.Append(@"<div style=""font-size:13px;overflow:auto;margin:0 0 8px;padding:5px 0"">"); body.Append(@"<div class=""col-xs-2"" style=""color:#19aacf;float:left;font-weight:700;vertical-align:top;width:150px"">"); if (clientConfirmation) { body.Append("Your Info"); } else { body.Append("Client Info"); } body.Append(@"</div>"); body.Append(@"<div style=""float:left"">"); body.Append(@"<div style=""font-size:16px"">"); body.Append(appraisal.Appraisal.ClientPerson.FirstName).Append(" ").Append(appraisal.Appraisal.ClientPerson.LastName); if (!string.IsNullOrEmpty(appraisal.Appraisal.ClientPerson.CompanyName)) { body.Append(@" - <em>" + appraisal.Appraisal.ClientPerson.CompanyName + "</em>"); } body.Append("</div>"); body.Append(@"<address style=""display:block;font-style:normal;width:180px;float:left!important"">"); body.Append(appraisal.Appraisal.ClientAddress.Address1).Append("<br />"); if (!string.IsNullOrEmpty(appraisal.Appraisal.ClientAddress.Address2)) { body.Append(appraisal.Appraisal.ClientAddress.Address2).Append("<br />"); } body.Append(appraisal.Appraisal.ClientAddress.City).Append(", "); body.Append(appraisal.Appraisal.ClientAddress.StateCode).Append(" "); body.Append(appraisal.Appraisal.ClientAddress.PostalCode); body.Append(@"</address>"); body.Append(@"<div style=""float:left"">"); body.Append(@"<abbr title=""phone"" style=""cursor:help;border-bottom:1px dotted #999;margin-right:6px;"">P:</abbr>" + appraisal.Appraisal.ClientPerson.Phone.FormatPhone() + "<br />"); body.Append(@"<a href=""mailto:" + appraisal.Appraisal.ClientPerson.Email + @""" class=""email"" style=""color:#428bca;text-decoration:none"">" + appraisal.Appraisal.ClientPerson.Email + "</a>"); body.Append(@"</div>"); body.Append(@"</div>"); body.Append(@"</div>"); // Build the PROPERTY section body.Append(@"<div style=""font-size:13px;overflow:auto;margin:0 0 8px;padding:5px 0"">"); body.Append(@"<div class=""col-xs-2"" style=""color:#19aacf;float:left;font-weight:700;vertical-align:top;width:150px"">Property Info</div>"); body.Append(@"<div style=""float:left"">"); body.Append(@"<address style=""display:block;font-style:normal;width:180px;float:left!important"">"); body.Append(propertyType.PropertyTypeDescription).Append("<br />"); body.Append(propertyAddress.Address1).Append("<br />"); if (!string.IsNullOrEmpty(propertyAddress.Address2)) { body.Append(propertyAddress.Address2).Append("<br />"); } body.Append(propertyAddress.City).Append(", ").Append(propertyAddress.StateCode).Append(" ").Append(propertyAddress.PostalCode); body.Append("</address>"); body.Append(@"<div style=""float:left"">"); var dataPresent = false; if (OccupantDataPresent(appraisal)) { body.Append(@"<div style=""float:left"">"); body.Append(@"<span style=""color:#707070;font-style:italic;float:left;margin-right:10px;vertical-align:top"">Occupant:</span>"); body.Append(@"</div>"); body.Append(@"<div style=""float:left"">"); if (!string.IsNullOrEmpty(occupant.FirstName) || !string.IsNullOrEmpty(occupant.LastName)) { body.Append(@"<span class=""occupant"">").Append(occupant.FirstName).Append(" ").Append(occupant.LastName).Append("</span>"); dataPresent = true; } if (!string.IsNullOrEmpty(occupant.Phone)) { if (dataPresent) { body.Append(@"<br />"); } body.Append(@"<abbr title=""phone"" style=""cursor:help;border-bottom:1px dotted #999;margin-right:6px;"">P:</abbr>").Append(occupant.Phone.FormatPhone()); dataPresent = true; } if (!string.IsNullOrEmpty(occupant.Email)) { if (dataPresent) { body.Append(@"<br />"); } body.Append(@"<a href=""mailto:").Append(occupant.Email).Append(@""" class=""email"" style=""color:#428bca;text-decoration:none"">").Append(occupant.Email).Append("</a>"); } body.Append(@"</div>"); } body.Append(@"</div>"); body.Append(@"<br style=""clear:both"" />"); if (appraisal.Appraisal.ContactForAccess) { body.Append(@"<div style=""clear:both;margin-top:4px"">Contact owner/occupant for access? <strong style=""margin:0 5px"">Yes</strong></div>"); } if (legalSalesData) { body.Append(@"<div style=""clear:both;margin-top:4px"">"); if (property.SalesContractPrice != null) { body.Append(@"<div class=""price"">"); body.Append(string.Format("{0:C0}", property.SalesContractPrice)); body.Append(@"<span style=""color:#707070;font-style:italic"">- sales/contract price</span>"); body.Append(@"</div>"); } if (!string.IsNullOrEmpty(property.LegalDescription)) { body.Append(@"<div style=""margin-top:4px;"">"); body.Append(@"<strong style=""margin:0 5px 0 0"">Legal description:</strong>"); body.Append(property.LegalDescription); body.Append(@"</div>"); } body.Append(@"</div>"); } body.Append(@"</div>"); body.Append(@"</div>"); // Build the APPRAISAL REPORT section body.Append(@"<div style=""font-size:13px;overflow:auto;margin:0 0 8px;padding:5px 0"">"); body.Append(@"<div style=""color:#19aacf;float:left;font-weight:700;vertical-align:top;width:150px"">Appraisal Report</div>"); body.Append(@"<div style=""float:left"">"); if (appraisal.Appraisal.Client2Person != null && IsPersonDataPresent(appraisal.Appraisal.Client2Person)) { var orderClient = appraisal.Appraisal.Client2Person; var orderClientAddress = appraisal.Appraisal.Client2Address; body.Append(@"<div style=""color: #707070;font-style: italic;float: left;margin-right: 10px;vertical-align: top;"">"); body.Append(@"<span style=""border-bottom: 1px dotted #999;color: #707070;font-style: italic;"">Appraisal Client:</span>"); body.Append(@"</div>"); body.Append(@"<div style=""margin-bottom: 10px; overflow: auto;"">"); body.Append(@"<div>").Append(orderClient.FirstName).Append(" ").Append(orderClient.LastName).Append("</div>"); body.Append(@"<address style=""float: left !important;font-style: normal;line-height: 1.428571429;display: block; width: 160px;"">"); body.Append(orderClientAddress.Address1).Append("<br />"); if (!string.IsNullOrEmpty(orderClientAddress.Address2)) { body.Append(orderClientAddress.Address2).Append("<br />"); } body.Append(orderClientAddress.City).Append(", ").Append(orderClientAddress.StateCode).Append(" ").Append(orderClientAddress.PostalCode); body.Append(@"</address>"); body.Append(@"<div style=""float: left;"">"); body.Append(@"<abbr title=""phone"" style=""border-bottom: 1px dotted #999999;margin-right: 6px;"">P:</abbr>").Append(orderClient.Phone.FormatPhone()).Append("<br />"); if (!string.IsNullOrEmpty(orderClient.Email)) { body.Append(@"<a style=""color: #2a6496;text-decoration: underline;"" href=""mailto:").Append(orderClient.Email).Append(@""" class=""email"">").Append(orderClient.Email).Append("</a>"); } body.Append(@"</div>"); body.Append(@"</div>"); } if (!String.IsNullOrEmpty(appraisal.Appraisal.ReportUsers)) { body.Append(@"<div>"); body.Append(@"<strong>Intended report users:</strong> "); body.Append(appraisal.Appraisal.ReportUsers); body.Append(@"</div>"); } if (!String.IsNullOrEmpty(appraisal.Appraisal.DeliverReportTo)) { body.Append(@"<div>"); body.Append(@"<strong>Report should be delivered to:</strong> "); body.Append(appraisal.Appraisal.DeliverReportTo); body.Append(@"</div>"); } if (appraisalPurpose != null) { body.Append(@"<div>"); body.Append(@"<strong>Appraisal purpose:</strong> "); body.Append(appraisalPurpose.AppraisalPurposeDescription); body.Append(@"</div>"); } if (!string.IsNullOrEmpty(appraisal.Appraisal.Comments)) { body.Append(@"<div style=""margin-top:4px"">"); body.Append(@"<strong style=""margin:0 5px 0 0"">Additional comments:</strong> "); body.Append(appraisal.Appraisal.Comments); body.Append(@"</div>"); } if (string.IsNullOrEmpty(appraisal.Appraisal.Comments) && string.IsNullOrEmpty(appraisal.Appraisal.AppraisalPurposeCode)) { body.Append(@"<span>--</span>"); } body.Append(@"</div>"); body.Append(@"</div>"); body.Append(@"</fieldset>"); // Build disclaimer body.Append(@"<div style=""color:#959595;font-size:13px;font-style:italic;text-align:center;"">"); if (clientConfirmation) { body.Append(BuildUserDisclaimer()); } else { body.Append(BuildAppraiserDisclaimer()); } body.Append(@"</div>"); body.Append(@"</div>"); return body.ToString(); }
private void ClearOrderClientData(ref AppraisalViewModel appraisalViewModel) { appraisalViewModel.Appraisal.Client2Person.PersonId = 0; appraisalViewModel.Appraisal.Client2Person.FirstName = ""; appraisalViewModel.Appraisal.Client2Person.LastName = ""; appraisalViewModel.Appraisal.Client2Person.CompanyName = ""; appraisalViewModel.Appraisal.Client2Person.Phone = ""; appraisalViewModel.Appraisal.Client2Person.Email = ""; appraisalViewModel.Appraisal.Client2Person.PersonType = ""; appraisalViewModel.Appraisal.Client2Address.AddressId = 0; appraisalViewModel.Appraisal.Client2Address.Address1 = ""; appraisalViewModel.Appraisal.Client2Address.Address2 = ""; appraisalViewModel.Appraisal.Client2Address.City = ""; appraisalViewModel.Appraisal.Client2Address.StateCode = ""; appraisalViewModel.Appraisal.Client2Address.PostalCode = ""; appraisalViewModel.Appraisal.Client2Address.AddressType = ""; }
/// <summary> /// Creates an appraisal order through a call to the database (stored proc) /// </summary> /// <param name="appraisalViewModel"></param> /// <returns></returns> public virtual int Save_Appraisal(AppraisalViewModel appraisalViewModel) { SqlParameter newAppraisalIdParam = new SqlParameter("newAppraisalOrderId", SqlDbType.Int); newAppraisalIdParam.Direction = ParameterDirection.Output; var orderResult = _db.Database.ExecuteSqlCommand("exec CreateAppraisalOrder " + "@clientFirstName," + "@clientLastName," + "@clientCompanyName," + "@clientEmail," + "@clientPhone," + "@clientAddress1," + "@clientAddress2," + "@clientCity," + "@clientStateCode," + "@clientPostalCode," + "@occupantFirstName," + "@occupantLastName," + "@occupantCompanyName," + "@occupantEmail," + "@occupantPhone," + "@propertyAddress1," + "@propertyAddress2," + "@propertyCity," + "@propertyStateCode," + "@propertyPostalCode," + "@AppraiserId," + "@SalesContractPrice," + "@PropertyTypeCode," + "@AppraisalTypeCode," + "@AppraisalPurposeCode," + "@orderClientFirstName, " + "@orderClientLastName, " + "@orderClientEmail, " + "@orderClientPhone, " + "@orderClientAddress1, " + "@orderClientAddress2, " + "@orderClientCity, " + "@orderClientStateCode, " + "@orderClientPostalCode, " + "@ReportUsers," + "@DeliverReportTo," + "@ContactForAccess," + "@LegalDescription," + "@Comments," + "@orderDate," + "@newAppraisalOrderId OUTPUT", CreateParameter("clientFirstName", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientPerson.FirstName), CreateParameter("clientLastName", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientPerson.LastName), CreateParameter("clientCompanyName", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientPerson.CompanyName), CreateParameter("clientEmail", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientPerson.Email), CreateParameter("clientPhone", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientPerson.Phone), CreateParameter("clientAddress1", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientAddress.Address1), CreateParameter("clientAddress2", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientAddress.Address2), CreateParameter("clientCity", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientAddress.City), CreateParameter("clientStateCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientAddress.StateCode), CreateParameter("clientPostalCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.ClientAddress.PostalCode), CreateParameter("occupantFirstName", SqlDbType.VarChar, appraisalViewModel.Appraisal.OccupantPerson.FirstName), CreateParameter("occupantLastName", SqlDbType.VarChar, appraisalViewModel.Appraisal.OccupantPerson.LastName), CreateParameter("occupantCompanyName", SqlDbType.VarChar, appraisalViewModel.Appraisal.OccupantPerson.CompanyName), CreateParameter("occupantEmail", SqlDbType.VarChar, appraisalViewModel.Appraisal.OccupantPerson.Email), CreateParameter("occupantPhone", SqlDbType.VarChar, appraisalViewModel.Appraisal.OccupantPerson.Phone), CreateParameter("propertyAddress1", SqlDbType.VarChar, appraisalViewModel.Appraisal.PropertyAddress.Address1), CreateParameter("propertyAddress2", SqlDbType.VarChar, appraisalViewModel.Appraisal.PropertyAddress.Address2), CreateParameter("propertyCity", SqlDbType.VarChar, appraisalViewModel.Appraisal.PropertyAddress.City), CreateParameter("propertyStateCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.PropertyAddress.StateCode), CreateParameter("propertyPostalCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.PropertyAddress.PostalCode), CreateParameter("appraiserId", SqlDbType.Int, appraisalViewModel.Appraisal.AppraiserId), CreateParameter("salesContractPrice", SqlDbType.Decimal, appraisalViewModel.Appraisal.SalesContractPrice), CreateParameter("propertyTypeCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.PropertyTypeCode), CreateParameter("appraisalTypeCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.AppraisalTypeCode), CreateParameter("appraisalPurposeCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.AppraisalPurposeCode), CreateParameter("orderClientFirstName", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Person.FirstName), CreateParameter("orderClientLastName", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Person.LastName), CreateParameter("orderClientEmail", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Person.Email), CreateParameter("orderClientPhone", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Person.Phone), CreateParameter("orderClientAddress1", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Address.Address1), CreateParameter("orderClientAddress2", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Address.Address2), CreateParameter("orderClientCity", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Address.City), CreateParameter("orderClientStateCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Address.StateCode), CreateParameter("orderClientPostalCode", SqlDbType.VarChar, appraisalViewModel.Appraisal.Client2Address.PostalCode), CreateParameter("reportUsers", SqlDbType.VarChar, appraisalViewModel.Appraisal.ReportUsers), CreateParameter("deliverReportTo", SqlDbType.VarChar, appraisalViewModel.Appraisal.DeliverReportTo), CreateParameter("contactForAccess", SqlDbType.Bit, appraisalViewModel.Appraisal.ContactForAccess), CreateParameter("legalDescription", SqlDbType.VarChar, appraisalViewModel.Appraisal.LegalDescription), CreateParameter("comments", SqlDbType.NText, appraisalViewModel.Appraisal.Comments), CreateParameter("orderDate", SqlDbType.DateTime, appraisalViewModel.Appraisal.OrderDate), newAppraisalIdParam ); var appraisalId = (int)newAppraisalIdParam.Value; return appraisalId; }
private static void SendConfirmationEmailToClient(AppraisalViewModel appraisal) { MailMessage message = new MailMessage(); if (string.IsNullOrEmpty(appraisal.Appraisal.ClientPerson.Email)) { throw new Exception("Client email is null or empty. Cannot complete order"); } //message.From = new MailAddress("*****@*****.**", "Web Order"); //message.To.Add(new MailAddress("*****@*****.**")); message.From = new MailAddress("*****@*****.**", "AppraiseUtah.com"); message.To.Add(new MailAddress(appraisal.Appraisal.ClientPerson.Email)); message.CC.Add(new MailAddress("*****@*****.**")); message.IsBodyHtml = true; message.BodyEncoding = Encoding.UTF8; message.Subject = "AppraisalUtah.com Order Confirmation - ID: " + appraisal.Appraisal.Id; message.Body = BuildConfirmationBody(appraisal, true); SmtpClient smtpClient = new SmtpClient(); smtpClient.Send(message); }