private static Mail PrzygotujMaila(Zadanie szablon) { var wydrukWorker = new DrukarkaPdfHtml(); var tresc = szablon.Description; if (string.IsNullOrWhiteSpace(tresc)) { var streamReader = new StreamReader(wydrukWorker.Drukuj(szablon, ReportResultFormat.HTML)); tresc = streamReader.ReadToEnd(); } return(new Mail { EmailTo = szablon.Kontakt.EMAIL, Temat = szablon.Features.GetString("PowiadomieniaTemat"), Tresc = tresc, Stream = wydrukWorker.Drukuj(szablon, ReportResultFormat.PDF) }); }
public void Wyslij(Zadanie szablon) { var adres = szablon.Kontakt.EMAIL; var temat = szablon.Features.GetString("PowiadomieniaTemat"); var body = szablon.Description; var drukarka = new DrukarkaPdfHtml(); if (string.IsNullOrWhiteSpace(body)) { var wydrukHtml = drukarka.Drukuj(szablon, ReportResultFormat.HTML); body = wydrukHtml.ToString(); } var wydruk = drukarka.Drukuj(szablon, ReportResultFormat.PDF); var mail = new Soneta.Core.EnovaMail(szablon.Session); mail.AddTo(adres); mail.AddSubject(temat); mail.AddBody(body); if (wydruk != null) { mail.AddAttachment("Raport", wydruk); } var wywolanie = szablon.WyliczWywolanie(); if (mail.SendMail()) { using (ITransaction trans = szablon.Session.Logout(true)) { szablon.Features["PowiadomieniaOstatnieWywolanie"] = DateTime.Now.ToString(); szablon.Features["PowiadomieniaKolejneWywolanie"] = wywolanie.ToString(); trans.CommitUI(); } } }