Ejemplo n.º 1
0
        public async Task <IActionResult> SendMail([FromBody] Mail_Request request)
        {
            try
            {
                JobCardV3 jobCard = _dataRepository.Get(new Guid(request.JobCardID));
                await mailService.SendEmailAsync(request, jobCard);

                return(Ok());
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Ejemplo n.º 2
0
        public async Task SendEmailAsync(Mail_Request mail_Request, JobCardV3 jobCard)
        {
            MailMessage message = new MailMessage();
            SmtpClient  smtp    = new SmtpClient();

            message.From = new MailAddress(_mailSettings.Mail, _mailSettings.DisplayName);

            /*"toEmail": "*****@*****.**",
             * "subject": "astroids",
             * "jobCardID": null,
             * "body": "lekker astroids for light years!!!"
             */
            mail_Request.Body    = "lekker astroids for light years!!!";
            mail_Request.Subject = "astroids";


            /// TO EMAIL
            mail_Request.ToEmail = "*****@*****.**";

            message.To.Add(new MailAddress(mail_Request.ToEmail));
            message.Subject = mail_Request.Subject;

            // Input data from jobcard into html template
            ProcessDataIntoHtml(jobCard);
            // Convert HTML template into PDF
            CreatePDFFromHTMLTemplate();
            // Unprocess the HTML for template ready phase
            UnprocessDataFromHtml(jobCard);

            // attach PDF
            Attachment att = new Attachment("SimpleConversionLocalHtml.pdf");

            message.Attachments.Add(att);

            message.IsBodyHtml         = false;
            message.Body               = mail_Request.Body;
            smtp.Port                  = _mailSettings.Port;
            smtp.Host                  = _mailSettings.Host;
            smtp.EnableSsl             = false;
            smtp.UseDefaultCredentials = false;
            _mailSettings.Mail         = "*****@*****.**";
            _mailSettings.Password     = "******";
            smtp.Credentials           = new NetworkCredential(_mailSettings.Mail, _mailSettings.Password);
            smtp.DeliveryMethod        = SmtpDeliveryMethod.Network;
            //await smtp.SendMailAsync(message);



            // Build a PDF file and save it on disk from a job card
            //Converter.Convert(new Uri("https://www.google.com"), "SimpleConversion.pdf");
            //ceTe.DynamicPDF.HtmlConverter.Converter.Convert(new Uri("https://www.google.com"), "SimpleConversion.pdf");
            //ceTe.DynamicPDF.HtmlConverter.Converter.Convert(new Uri("HTML/index.html"), "SimpleConversionLocalHtml.pdf");

            /*
             * if (mail_Request.Attachments != null)
             * {
             *  foreach (var file in mail_Request.Attachments)
             *  {
             *      if (file.Length > 0)
             *      {
             *          using (var ms = new MemoryStream())
             *          {
             *              file.CopyTo(ms);
             *              var fileBytes = ms.ToArray();
             *              Attachment att = new Attachment(new MemoryStream(fileBytes), file.FileName);
             *              message.Attachments.Add(att);
             *          }
             *      }
             *  }
             * }
             */
        }