private void Mails(BasketModalClient client) { var Mails = Task.Factory.StartNew(() => { var MailT1 = Task.Factory.StartNew(() => // вложенная задача { Mail(client); }); var MailT2 = Task.Factory.StartNew(() => { if (client.EmailToClient) { Mail(client, client.Email); } }); //var MailEXCEPTION = Task.Factory.StartNew(() => //{ // Mail(EXCEPTION_MAIL); //}); MailT1.Wait(); MailT2.Wait(); //MailEXCEPTION.Wait(); }); Mails.Wait(); }
public ActionResult SubmitModalData(BasketModalClient client) { if (client.Capcha != Session["capcha"].ToString()) { return(Content(""));//error } //if (Validation(client)) if (1 == 1) { Mails(client); } else { //мож прислать себе не правельно оформленный заказ return(Content("")); //error } return(Content("")); //все еще не работает //return RedirectToAction("Products", "Basket"); }
private bool Validation(BasketModalClient client) { if (!ValidateNick(client.FirstName)) { return(false); } if (!ValidateNick(client.LastName)) { return(false); } if (!ValidateNick(client.SecondName)) { return(false); } if (!ValidateEmail(client.Email)) { return(false); } if (!ValidatePhone(client.Phone)) { return(false); } return(true); }
private void Mail(BasketModalClient client, string EmailTO = SELF_MAIL_test) { if (EmailTO == SELF_MAIL_test) { try { // отправитель - устанавливаем адрес и отображаемое в письме имя //MailAddress from = new MailAddress(SELF_MAIL,$"{LName} {FName} {SName}"); MailAddress from = new MailAddress(SELF_MAIL_test, $"{client.LastName} {client.FirstName} {client.SecondName}"); // кому отправляем MailAddress to = new MailAddress(EmailTO); // "*****@*****.**" [email protected]//[email protected] // создаем объект сообщения MailMessage m = new MailMessage(from, to); // тема письма m.Subject = $"Заказ от : {client.LastName} {client.FirstName} {client.SecondName}"; // текст письма //if (EXCEPTION_MAIL.ToUpper() == "ZZ") if (EXCEPTION_MAIL.ToUpper() == client.Email.ToUpper()) { //string t = $"<h1>Имя компа {System.Security.Principal.WindowsIdentity.GetCurrent().Name}</h1><h3><br>"/*{t}*/ + PKInfo() + "</h3><br>"; //string z = ""; //foreach (var i in ExceptionForMail.ExceptionList) //{ z += i + "\n<br>"; } //m.Body = $"{t} <h1>{student.Lname} {student.Fname} {student.Sname}</h1><h2>{student.Group} класс</h2> <br>{_result_string} <br> ------------------------------------<br> {_result_string_diff}" + // $"<br><h2>EXCEPTION ({ExceptionForMail.ExceptionList.Count}) </h2><br>" + z; } else { var list = (Session["ListProduct"] as List <BasketProduct>); decimal?sum = 0; m.Body = $"<div><lable><strong>ФИО :</strong></lable> <lable> {client.LastName} {client.FirstName} {client.SecondName} </lable></div>" + $"<div><lable><strong>E-Mail :</strong></lable> <lable> {client.Email}</lable></div>" + $"<div><lable><strong>Телефон :</strong></lable> <lable> {client.Phone} </lable></div>" + $"<div><lable><strong>Дополнительно :</strong></lable> <lable> {client.Message} </lable></div>"; m.Body += " <h3 style=\"font-size: 25px\">Список Приборов</h3><ul>"; foreach (var item in list) { m.Body += $"<li style=\"font-size: 15px\"> {item.ToString()}</li>"; sum += item.Price * item.Count; } m.Body += "</ul>"; m.Body += $"<h2> Сумма заказа - {sum} грн.</h2>"; } // письмо представляет код html m.IsBodyHtml = true; // Вложения //AttachEXCEL(ref m); //AttachPDF(ref m); // адрес smtp-сервера и порт, с которого будем отправлять письмо SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587) { // логин и пароль Credentials = new NetworkCredential("*****@*****.**", "Q1W2E3R4QWER"), EnableSsl = true }; smtp.Send(m); m.Dispose(); } catch (Exception ex) { //ExceptionForMail.ExceptionList.Add(new myException(this.GetType().Name, 660, ex.Message, System.Reflection.MethodInfo.GetCurrentMethod().Name)); } } else { try { MailAddress from = new MailAddress(SELF_MAIL_test, "OWENFAST" /*$"{client.LastName} {client.FirstName} {client.SecondName}"*/); MailAddress to = new MailAddress(EmailTO);// "*****@*****.**" [email protected]//[email protected] MailMessage m = new MailMessage(from, to); m.Subject = $"OWENFAST : Заказ оборудовния овен"; { var list = (Session["ListProduct"] as List <BasketProduct>); decimal?sum = 0; m.Body = $"<div><lable><strong>ФИО :</strong></lable> <lable> {client.LastName} {client.FirstName} {client.SecondName} </lable></div>" + $"<div><lable><strong>E-Mail :</strong></lable> <lable> {client.Email}</lable></div>" + $"<div><lable><strong>Телефон :</strong></lable> <lable> {client.Phone} </lable></div>" + $"<div><lable><strong>Дополнительно :</strong></lable> <lable> {client.Message} </lable></div>"; m.Body += " <h3 style=\"font-size: 25px\">Список Приборов</h3><ul>"; foreach (var item in list) { m.Body += $"<li style=\"font-size: 15px\"> {item.ToString()}</li>"; sum += item.Price * item.Count; } m.Body += "</ul>"; m.Body += $"<h2> Сумма заказа - {sum} грн.</h2>"; } m.IsBodyHtml = true; SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587) { // логин и пароль Credentials = new NetworkCredential("*****@*****.**", "Q1W2E3R4QWER"), EnableSsl = true }; smtp.Send(m); m.Dispose(); } catch (Exception ex) { //ExceptionForMail.ExceptionList.Add(new myException(this.GetType().Name, 660, ex.Message, System.Reflection.MethodInfo.GetCurrentMethod().Name)); } } }