コード例 #1
0
 private void buttonToPdf_Click(object sender, RoutedEventArgs e)
 {
     if (datePickerFrom.SelectedDate >= datePickerTo.SelectedDate)
     {
         MessageBox.Show("Дата начала должна быть меньше даты окончания", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
         return;
     }
     try
     {
         logic.SaveCosmeticsToPdfFile(new ReportBindingModelEmployee
         {
             FileName   = "D:\\Otchet.pdf",
             DateFrom   = datePickerFrom.SelectedDate,
             DateTo     = datePickerTo.SelectedDate,
             EmployeeId = id
         });
         MailLogic.MailSendAsync(new MailSendInfo
         {
             MailAddress = _employeeStorage.GetElement(new EmployeeBindingModel {
                 Id = id
             })?.EMail,
             Subject = $"Отчет",
             Text    = "Отчет по косметике за период c " + datePickerFrom.SelectedDate.Value.ToShortDateString() +
                       " по " + datePickerTo.SelectedDate.Value.ToShortDateString(),
             File = "D:\\Otchet.pdf"
         });
         MessageBox.Show("Сообщение отправлено", "Успех", MessageBoxButton.OK, MessageBoxImage.Information);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
コード例 #2
0
        private void buttonToPdf_Click(object sender, RoutedEventArgs e)
        {
            if (datePickerFrom.SelectedDate >= datePickerTo.SelectedDate)
            {
                MessageBox.Show("Дата начала должна быть меньше даты окончания", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }
            if (string.IsNullOrEmpty(TextBoxEmail.Text))
            {
                MessageBox.Show("Заполните адрес электронной почты", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }
            MailMessage msg    = new MailMessage();
            SmtpClient  client = new SmtpClient();

            try
            {
                msg.Subject = "Отчет по косметике";
                msg.Body    = "Отчет по косметике за период c " + datePickerFrom.SelectedDate.Value.ToShortDateString() +
                              " по " + datePickerTo.SelectedDate.Value.ToShortDateString();
                msg.From = new MailAddress("*****@*****.**");
                msg.To.Add(TextBoxEmail.Text);
                msg.IsBodyHtml = true;
                logic.SaveCosmeticsToPdfFile(new ReportBindingModel
                {
                    FileName = "D:\\Otchet.pdf",
                    DateFrom = datePickerFrom.SelectedDate,
                    DateTo   = datePickerTo.SelectedDate
                });
                string             file        = "D:\\Otchet.pdf";
                Attachment         attach      = new Attachment(file, MediaTypeNames.Application.Octet);
                ContentDisposition disposition = attach.ContentDisposition;
                disposition.CreationDate     = System.IO.File.GetCreationTime(file);
                disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
                disposition.ReadDate         = System.IO.File.GetLastAccessTime(file);
                msg.Attachments.Add(attach);
                client.Host = "smtp.gmail.com";
                NetworkCredential basicauthenticationinfo = new NetworkCredential("*****@*****.**", "пароль");
                client.Port                  = int.Parse("587");
                client.EnableSsl             = true;
                client.UseDefaultCredentials = false;
                client.Credentials           = basicauthenticationinfo;
                client.DeliveryMethod        = SmtpDeliveryMethod.Network;
                client.Send(msg);
                MessageBox.Show("Сообщение отправлено", "Успех", MessageBoxButton.OK, MessageBoxImage.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }