From 7ae4464b3647a33ab447d6ec4cc7eaf8280b10d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D0=B0=D0=BB=D0=B8=D0=BD=D0=B0=20=D0=A4=D0=B5=D0=B4?= =?UTF-8?q?=D0=BE=D1=80=D0=B5=D0=BD=D0=BA=D0=BE?= Date: Wed, 29 May 2024 13:44:09 +0400 Subject: [PATCH] =?UTF-8?q?=D0=BC=D0=B0=D1=82=D1=8C=20=D0=BD=D0=B0=D0=BA?= =?UTF-8?q?=D1=80=D1=8B=D0=B2=D0=B0=D0=B9=20=D0=BF=D0=BE=D0=BB=D1=8F=D0=BD?= =?UTF-8?q?=D1=83=20=D0=BF=D0=BE=D1=87=D1=82=D0=B0=20=D1=80=D0=B0=D0=B1?= =?UTF-8?q?=D0=BE=D1=82=D0=B0=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 ++ .../BusinessLogics/ReportLogic.cs | 6 +-- .../MailWorker/MailKitWorker.cs | 3 +- .../ReportClientCaseHearingModel.cs | 1 + .../Controllers/ReportExecutorController.cs | 37 +++++++------------ 5 files changed, 23 insertions(+), 27 deletions(-) diff --git a/.gitignore b/.gitignore index ca1c7a3..63a806f 100644 --- a/.gitignore +++ b/.gitignore @@ -398,3 +398,6 @@ FodyWeavers.xsd # JetBrains Rider *.sln.iml +/LawFim/LawFirmRestApi/file.pdf +/LawFim/LawFirmRestApi/pdf.file +/LawFim/LawFirmRestApi/string diff --git a/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs b/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs index 8ec9b54..d1bd6a1 100644 --- a/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs +++ b/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs @@ -259,8 +259,8 @@ namespace LawFirmBusinessLogic.BusinessLogics public List GetCaseHearing(ReportClientCaseHearingBindingModel model) { var list = new List(); - var clients = _clientStorage.GetFilteredList(new ClientSearchModel { ExecutorId = model.ExecutorId }); - var cases = _caseStorage.GetFilteredList(new CaseSearchModel { ExecutorId = model.ExecutorId, DateFrom = model.DateFrom }); + var clients = _clientStorage.GetFilteredList(new ClientSearchModel { Id = model.ClientId }); + var cases = _caseStorage.GetFilteredList(new CaseSearchModel { ExecutorId = model.ExecutorId }); var hearings = _hearingStorage.GetFilteredList(new HearingSearchModel { DateFrom = model.DateFrom, DateTo = model.DateTo }); var visits = _visitStorage.GetFilteredList(new VisitSearchModel { ExecutorId = model.ExecutorId }); foreach (ClientViewModel client in clients) @@ -365,7 +365,7 @@ namespace LawFirmBusinessLogic.BusinessLogics _saveToPdfClientCaseHearing.CreateDoc(new PDFClientCaseHearingInfo { FileName = model.FileName, - Title = "Отчёт по клиентам по делам и консультациям", + Title = "Отчёт по делам и слушаниям по выбранным клиентам", DateFrom = model.DateFrom, DateTo = model.DateTo, ClientCaseHearing = GetCaseHearing(model) diff --git a/LawFim/LawFirmBusinessLogic/MailWorker/MailKitWorker.cs b/LawFim/LawFirmBusinessLogic/MailWorker/MailKitWorker.cs index 54b6ebf..f490960 100644 --- a/LawFim/LawFirmBusinessLogic/MailWorker/MailKitWorker.cs +++ b/LawFim/LawFirmBusinessLogic/MailWorker/MailKitWorker.cs @@ -25,7 +25,8 @@ namespace LawFirmBusinessLogic.MailWorker objMailMessage.Body = info.Text; objMailMessage.SubjectEncoding = Encoding.UTF8; objMailMessage.BodyEncoding = Encoding.UTF8; - Attachment attachment = new Attachment("D:\\Уник\\2 курс 4 семестр\\РПП\\курсач\\LawFirm\\LawFim\\LawFirmRestApi\\file4.pdf", new ContentType(MediaTypeNames.Application.Pdf)); + //Attachment attachment = new Attachment("D:\\Уник\\2 курс 4 семестр\\РПП\\курсач\\LawFirm\\LawFim\\LawFirmRestApi\\file4.pdf", new ContentType(MediaTypeNames.Application.Pdf)); + Attachment attachment = new Attachment("E:\\reports\\pdf\\file.pdf", new ContentType(MediaTypeNames.Application.Pdf)); objMailMessage.Attachments.Add(attachment); objSmtpClient.UseDefaultCredentials = false; diff --git a/LawFim/LawFirmContracts/BindingModels/ReportClientCaseHearingModel.cs b/LawFim/LawFirmContracts/BindingModels/ReportClientCaseHearingModel.cs index 9dcbd5f..22ea1b5 100644 --- a/LawFim/LawFirmContracts/BindingModels/ReportClientCaseHearingModel.cs +++ b/LawFim/LawFirmContracts/BindingModels/ReportClientCaseHearingModel.cs @@ -6,6 +6,7 @@ public DateTime DateFrom { get; set; } = DateTime.Now; public DateTime DateTo { get; set; } = DateTime.Now; public int? ExecutorId { get; set; } + public int? ClientId { get; set; } public string? Email { get; set; } } } diff --git a/LawFim/LawFirmRestApi/Controllers/ReportExecutorController.cs b/LawFim/LawFirmRestApi/Controllers/ReportExecutorController.cs index d00736b..1c338cd 100644 --- a/LawFim/LawFirmRestApi/Controllers/ReportExecutorController.cs +++ b/LawFim/LawFirmRestApi/Controllers/ReportExecutorController.cs @@ -67,39 +67,30 @@ namespace LawFirmRestApi.Controllers throw; } } - //[HttpPost] - //public void MailSend(MailSendInfoBindingModel report) - //{ - // try - // { - // _mailWorker.MailSendAsync(new MailSendInfoBindingModel - // { - // MailAddress = report.MailAddress, - // Subject = report.Subject, - // Text = report.Text - // }); - // } - // catch (Exception ex) - // { - // _logger.LogError(ex, "Ошибка отправки письма"); - // throw; - // } - //} [HttpPost] - public void SendClientReportToEmail(ReportClientCaseHearingBindingModel model) + public void MailSend(ReportClientCaseHearingBindingModel report) { try { - _reportLogic.SaveClientCaseHearingToPdfFile(model); + _reportLogic.SaveClientCaseHearingToPdfFile(new ReportClientCaseHearingBindingModel + { + DateFrom = report.DateFrom, + DateTo = report.DateTo, + FileName = report.FileName, + ExecutorId = report.ExecutorId, + ClientId = report.ClientId, + Email = report.Email, + }); _mailWorker.MailSendAsync(new MailSendInfoBindingModel { - MailAddress = model.Email!, - Subject = "Отчет по визитам", - Text = "Лови" + MailAddress = report.Email!, + Subject = "Отчет по выбранным клиентам с расшифровкой по слушаниям и делам", + Text = "Ваш отчет!" }); } catch (Exception ex) { + _logger.LogError(ex, "Ошибка отправки письма"); throw; } }