From b306b67320f2a26cced9617c3cd9070d9d611624 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: Tue, 28 May 2024 03:11:22 +0400 Subject: [PATCH] =?UTF-8?q?=D0=BF=D0=BE=D0=BC=D0=B5=D0=BD=D1=8F=D0=BB?= =?UTF-8?q?=D0=B0=20=D1=81=D0=BF=D0=B8=D1=81=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusinessLogics/ReportLogic.cs | 48 +++++++++---------- ...AbstractSaveToExcelClientsConsultation.cs} | 10 ++-- ... AbstractSaveToWordClientsConsultation.cs} | 14 +++--- ...nfo.cs => ExcelClientsConsultationInfo.cs} | 4 +- ...Info.cs => WordClientsConsultationInfo.cs} | 4 +- ...g.cs => SaveToExcelClientsConsultation.cs} | 6 +-- ...ng.cs => SaveToWordClientsConsultation.cs} | 6 +-- .../BusinessLogicContracts/IReportLogic.cs | 6 +-- .../ReportClientsConsultationViewModel.cs | 10 ++++ .../ReportClientsHearingViewModel.cs | 9 ---- 10 files changed, 59 insertions(+), 58 deletions(-) rename LawFim/LawFirmBusinessLogic/OfficePackages/{AbstractSaveToExcelClientsHearing.cs => AbstractSaveToExcelClientsConsultation.cs} (85%) rename LawFim/LawFirmBusinessLogic/OfficePackages/{AbstractSaveToWordClientsHearing.cs => AbstractSaveToWordClientsConsultation.cs} (76%) rename LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/{ExcelClientsHearingInfo.cs => ExcelClientsConsultationInfo.cs} (68%) rename LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/{WordClientsHearingInfo.cs => WordClientsConsultationInfo.cs} (61%) rename LawFim/LawFirmBusinessLogic/OfficePackages/Implements/{SaveToExcelClientsHearing.cs => SaveToExcelClientsConsultation.cs} (97%) rename LawFim/LawFirmBusinessLogic/OfficePackages/Implements/{SaveToWordClientsHearing.cs => SaveToWordClientsConsultation.cs} (93%) create mode 100644 LawFim/LawFirmContracts/ViewModels/ReportClientsConsultationViewModel.cs delete mode 100644 LawFim/LawFirmContracts/ViewModels/ReportClientsHearingViewModel.cs diff --git a/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs b/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs index 24e46a9..93d5dac 100644 --- a/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs +++ b/LawFim/LawFirmBusinessLogic/BusinessLogics/ReportLogic.cs @@ -17,8 +17,8 @@ namespace LawFirmBusinessLogic.BusinessLogics private readonly ILawyerStorage _lawyerStorage; private readonly IConsultationStorage _consultationStorage; - private readonly AbstractSaveToExcelClientsHearing _saveToExcelClientsHearing; - private readonly AbstractSaveToWordClientsHearing _saveToWordClientsHearing; + private readonly AbstractSaveToExcelClientsConsultation _saveToExcelClientsConsultation; + private readonly AbstractSaveToWordClientsConsultation _saveToWordClientsConsultation; private readonly AbstractSaveToPdfClients _saveToPdfClients; private readonly AbstractSaveToExcelVisitsLawyer _saveToExcelVisitLawyer; @@ -29,8 +29,8 @@ namespace LawFirmBusinessLogic.BusinessLogics IVisitStorage visitStorage, ICaseStorage caseStorage, ILawyerStorage lawyerStorage, IConsultationStorage consultationStorage, - AbstractSaveToExcelClientsHearing saveToExcelClientsHearing, - AbstractSaveToWordClientsHearing saveToWordClientsHearing, + AbstractSaveToExcelClientsConsultation saveToExcelClientsConsultation, + AbstractSaveToWordClientsConsultation saveToWordClientsConsultation, AbstractSaveToPdfClients saveToPdfClients, AbstractSaveToExcelVisitsLawyer saveToExcelVisitLawyer, @@ -44,36 +44,36 @@ namespace LawFirmBusinessLogic.BusinessLogics _caseStorage = caseStorage; _lawyerStorage = lawyerStorage; _consultationStorage = consultationStorage; - _saveToExcelClientsHearing = saveToExcelClientsHearing; - _saveToWordClientsHearing = saveToWordClientsHearing; + _saveToExcelClientsConsultation = saveToExcelClientsConsultation; + _saveToWordClientsConsultation = saveToWordClientsConsultation; _saveToPdfClients = saveToPdfClients; _saveToExcelVisitLawyer = saveToExcelVisitLawyer; _saveToWordVisitLawyer = saveToWordVisitLawyer; _saveToPdfConsultationHearing = saveToPdfConsultationHearing; } - public List GetClientsHearing(ReportBindingModel model) + public List GetClientsConsultation(ReportBindingModel model) { - var clients = _clientStorage.GetFilteredList(new ClientSearchModel { Id = model.ClientId, ExecutorId = model.ExecutorId }); - var hearings = _hearingStorage.GetFullList(); - var visits = _visitStorage.GetFilteredList(new VisitSearchModel { ExecutorId = model.ExecutorId }); + var clients = _clientStorage.GetFilteredList(new ClientSearchModel { Id = model.ClientId }); + var cases = _caseStorage.GetFullList(); + var consultations = _consultationStorage.GetFullList(); - var list = new List(); + var list = new List(); foreach (var client in clients) { - var record = new ReportClientsHearingViewModel + var record = new ReportClientsConsultationViewModel { ClientFIO = client.FIO, }; - foreach (var vis in visits) + foreach (var cas in cases) { - if (vis.VisitClients.ContainsKey(client.Id)) + if (cas.CaseClients.ContainsKey(client.Id)) { - foreach (var hear in hearings) + foreach (var cons in consultations) { - if (vis.HearingId.Equals(hear.Id)) + if (cons.CaseId.Equals(cas.Id)) { - record.Visits.Add(vis.VisitDate.ToString()); - record.HearingDate = hear.HearingDate; + record.ConsultationDate = cons.ConsultationDate; + record.ConsultationCost = cons.Cost; } } } @@ -207,23 +207,23 @@ namespace LawFirmBusinessLogic.BusinessLogics return list; } - public void SaveClientsHearingToExcelFile(ReportBindingModel model) + public void SaveClientsConsultationToExcelFile(ReportBindingModel model) { - _saveToExcelClientsHearing.CreateReport(new ExcelClientsHearingInfo + _saveToExcelClientsConsultation.CreateReport(new ExcelClientsConsultationInfo { FileName = model.FileName, Title = "Слушания по клиентам", - ClientsHearing = GetClientsHearing(model) + ClientsConsultation = GetClientsConsultation(model) }); } - public void SaveClientsHearingToWordFile(ReportBindingModel model) + public void SaveClientsConsultationToWordFile(ReportBindingModel model) { - _saveToWordClientsHearing.CreateDoc(new WordClientsHearingInfo + _saveToWordClientsConsultation.CreateDoc(new WordClientsConsultationInfo { FileName = model.FileName, Title = "Слушания по клиентам", - ClientsHearing = GetClientsHearing(model) + ClientsConsultation = GetClientsConsultation(model) }); } diff --git a/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToExcelClientsHearing.cs b/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToExcelClientsConsultation.cs similarity index 85% rename from LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToExcelClientsHearing.cs rename to LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToExcelClientsConsultation.cs index e4c53ab..6126c8b 100644 --- a/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToExcelClientsHearing.cs +++ b/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToExcelClientsConsultation.cs @@ -3,13 +3,13 @@ using LawFirmBusinessLogic.OfficePackages.HelperModels; namespace LawFirmBusinessLogic.OfficePackages { - public abstract class AbstractSaveToExcelClientsHearing + public abstract class AbstractSaveToExcelClientsConsultation { /// /// Создание отчета /// /// - public void CreateReport(ExcelClientsHearingInfo info) + public void CreateReport(ExcelClientsConsultationInfo info) { CreateExcel(info); InsertCellInWorksheet(new ExcelCellParameters @@ -25,7 +25,7 @@ namespace LawFirmBusinessLogic.OfficePackages CellToName = "C1" }); uint rowIndex = 2; - foreach (var ch in info.ClientsHearing) + foreach (var ch in info.ClientsConsultation) { InsertCellInWorksheet(new ExcelCellParameters { @@ -63,7 +63,7 @@ namespace LawFirmBusinessLogic.OfficePackages /// Создание excel-файла /// /// - protected abstract void CreateExcel(ExcelClientsHearingInfo info); + protected abstract void CreateExcel(ExcelClientsConsultationInfo info); /// /// Добавляем новую ячейку в лист /// @@ -79,6 +79,6 @@ namespace LawFirmBusinessLogic.OfficePackages /// Сохранение файла /// /// - protected abstract void SaveExcel(ExcelClientsHearingInfo info); + protected abstract void SaveExcel(ExcelClientsConsultationInfo info); } } diff --git a/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToWordClientsHearing.cs b/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToWordClientsConsultation.cs similarity index 76% rename from LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToWordClientsHearing.cs rename to LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToWordClientsConsultation.cs index 268b5e8..d9852f1 100644 --- a/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToWordClientsHearing.cs +++ b/LawFim/LawFirmBusinessLogic/OfficePackages/AbstractSaveToWordClientsConsultation.cs @@ -3,9 +3,9 @@ using LawFirmBusinessLogic.OfficePackages.HelperModels; namespace LawFirmBusinessLogic.OfficePackages { - public abstract class AbstractSaveToWordClientsHearing + public abstract class AbstractSaveToWordClientsConsultation { - public void CreateDoc(WordClientsHearingInfo info) + public void CreateDoc(WordClientsConsultationInfo info) { CreateWord(info); CreateParagraph(new WordParagraph @@ -19,16 +19,16 @@ namespace LawFirmBusinessLogic.OfficePackages JustificationType = WordJustificationType.Center } }); - foreach (var clientsHearing in info.ClientsHearing) + foreach (var clientsConsultation in info.ClientsConsultation) { - foreach (var hearing in clientsHearing.Hearings) + foreach (var hearing in clientsConsultation.Hearings) { CreateParagraph(new WordParagraph { Texts = new List<(string, WordTextProperties)> { - (clientsHearing.ClientFIO, new WordTextProperties + (clientsConsultation.ClientFIO, new WordTextProperties { Size = "24", Bold=true}), (" " + hearing.Court, new WordTextProperties { Size = "24"}), (" " + hearing.HearingDate.ToString(), new WordTextProperties { Size = "24"}) }, @@ -46,7 +46,7 @@ namespace LawFirmBusinessLogic.OfficePackages /// Создание doc-файла /// /// - protected abstract void CreateWord(WordClientsHearingInfo info); + protected abstract void CreateWord(WordClientsConsultationInfo info); /// /// Создание абзаца с текстом /// @@ -57,6 +57,6 @@ namespace LawFirmBusinessLogic.OfficePackages /// Сохранение файла /// /// - protected abstract void SaveWord(WordClientsHearingInfo info); + protected abstract void SaveWord(WordClientsConsultationInfo info); } } diff --git a/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/ExcelClientsHearingInfo.cs b/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/ExcelClientsConsultationInfo.cs similarity index 68% rename from LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/ExcelClientsHearingInfo.cs rename to LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/ExcelClientsConsultationInfo.cs index 80cc165..4e6db7c 100644 --- a/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/ExcelClientsHearingInfo.cs +++ b/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/ExcelClientsConsultationInfo.cs @@ -2,11 +2,11 @@ namespace LawFirmBusinessLogic.OfficePackages.HelperModels { - public class ExcelClientsHearingInfo + public class ExcelClientsConsultationInfo { public string FileName { get; set; } = string.Empty; public string Title { get; set; } = string.Empty; - public List ClientsHearing + public List ClientsConsultation { get; set; diff --git a/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/WordClientsHearingInfo.cs b/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/WordClientsConsultationInfo.cs similarity index 61% rename from LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/WordClientsHearingInfo.cs rename to LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/WordClientsConsultationInfo.cs index 89e9b36..d642388 100644 --- a/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/WordClientsHearingInfo.cs +++ b/LawFim/LawFirmBusinessLogic/OfficePackages/HelperModels/WordClientsConsultationInfo.cs @@ -2,10 +2,10 @@ namespace LawFirmBusinessLogic.OfficePackages.HelperModels { - public class WordClientsHearingInfo + public class WordClientsConsultationInfo { public string FileName { get; set; } = string.Empty; public string Title { get; set; } = string.Empty; - public List ClientsHearing { get; set; } = new(); + public List ClientsConsultation { get; set; } = new(); } } diff --git a/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToExcelClientsHearing.cs b/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToExcelClientsConsultation.cs similarity index 97% rename from LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToExcelClientsHearing.cs rename to LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToExcelClientsConsultation.cs index 256611f..d678cc2 100644 --- a/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToExcelClientsHearing.cs +++ b/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToExcelClientsConsultation.cs @@ -8,7 +8,7 @@ using LawFirmBusinessLogic.OfficePackages.HelperModels; namespace LawFirmBusinessLogic.OfficePackages.Implements { - public class SaveToExcelClientsHearing : AbstractSaveToExcelClientsHearing + public class SaveToExcelClientsConsultation : AbstractSaveToExcelClientsConsultation { private SpreadsheetDocument? _spreadsheetDocument; private SharedStringTablePart? _shareStringPart; @@ -205,7 +205,7 @@ namespace LawFirmBusinessLogic.OfficePackages.Implements _ => 0U, }; } - protected override void CreateExcel(ExcelClientsHearingInfo info) + protected override void CreateExcel(ExcelClientsConsultationInfo info) { _spreadsheetDocument = SpreadsheetDocument.Create(info.FileName, SpreadsheetDocumentType.Workbook); @@ -337,7 +337,7 @@ namespace LawFirmBusinessLogic.OfficePackages.Implements }; mergeCells.Append(mergeCell); } - protected override void SaveExcel(ExcelClientsHearingInfo info) + protected override void SaveExcel(ExcelClientsConsultationInfo info) { if (_spreadsheetDocument == null) { diff --git a/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToWordClientsHearing.cs b/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToWordClientsConsultation.cs similarity index 93% rename from LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToWordClientsHearing.cs rename to LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToWordClientsConsultation.cs index 0356d2a..614288d 100644 --- a/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToWordClientsHearing.cs +++ b/LawFim/LawFirmBusinessLogic/OfficePackages/Implements/SaveToWordClientsConsultation.cs @@ -6,7 +6,7 @@ using LawFirmBusinessLogic.OfficePackages.HelperModels; namespace LawFirmBusinessLogic.OfficePackages.Implements { - public class SaveToWordClientsHearing : AbstractSaveToWordClientsHearing + public class SaveToWordClientsConsultation : AbstractSaveToWordClientsConsultation { private WordprocessingDocument? _wordDocument; private Body? _docBody; @@ -74,7 +74,7 @@ namespace LawFirmBusinessLogic.OfficePackages.Implements properties.AppendChild(paragraphMarkRunProperties); return properties; } - protected override void CreateWord(WordClientsHearingInfo info) + protected override void CreateWord(WordClientsConsultationInfo info) { _wordDocument = WordprocessingDocument.Create(info.FileName, WordprocessingDocumentType.Document); @@ -111,7 +111,7 @@ namespace LawFirmBusinessLogic.OfficePackages.Implements } _docBody.AppendChild(docParagraph); } - protected override void SaveWord(WordClientsHearingInfo info) + protected override void SaveWord(WordClientsConsultationInfo info) { if (_docBody == null || _wordDocument == null) { diff --git a/LawFim/LawFirmContracts/BusinessLogicContracts/IReportLogic.cs b/LawFim/LawFirmContracts/BusinessLogicContracts/IReportLogic.cs index e7a7b8c..4f3b7af 100644 --- a/LawFim/LawFirmContracts/BusinessLogicContracts/IReportLogic.cs +++ b/LawFim/LawFirmContracts/BusinessLogicContracts/IReportLogic.cs @@ -5,13 +5,13 @@ namespace LawFirmContracts.BusinessLogicContracts { public interface IReportLogic { - List GetClientsHearing(ReportBindingModel model); + List GetClientsConsultation(ReportBindingModel model); List GetGetClients(ReportBindingModel model); List GetVisitLawyer(ReportBindingModel model); List GetConsultationHearing(ReportBindingModel model); - void SaveClientsHearingToWordFile(ReportBindingModel model); - void SaveClientsHearingToExcelFile(ReportBindingModel model); + void SaveClientsConsultationToWordFile(ReportBindingModel model); + void SaveClientsConsultationToExcelFile(ReportBindingModel model); void SaveVisitLawyerToWordFile(ReportBindingModel model); void SaveVisitLawyerToExcelFile(ReportBindingModel model); void SaveConsultationHearingToPdfFile(ReportBindingModel model); diff --git a/LawFim/LawFirmContracts/ViewModels/ReportClientsConsultationViewModel.cs b/LawFim/LawFirmContracts/ViewModels/ReportClientsConsultationViewModel.cs new file mode 100644 index 0000000..06b6c93 --- /dev/null +++ b/LawFim/LawFirmContracts/ViewModels/ReportClientsConsultationViewModel.cs @@ -0,0 +1,10 @@ +namespace LawFirmContracts.ViewModels +{ + public class ReportClientsConsultationViewModel + { + public string ClientFIO { get; set; } = string.Empty; + public double? ConsultationCost { get; set; } + public DateTime? ConsultationDate { get; set; } + // public List<(DateTime ConsultationDate, string Cost)> Consultations { get; set; } = new(); + } +} diff --git a/LawFim/LawFirmContracts/ViewModels/ReportClientsHearingViewModel.cs b/LawFim/LawFirmContracts/ViewModels/ReportClientsHearingViewModel.cs deleted file mode 100644 index 6d0c5b7..0000000 --- a/LawFim/LawFirmContracts/ViewModels/ReportClientsHearingViewModel.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace LawFirmContracts.ViewModels -{ - public class ReportClientsHearingViewModel - { - public string ClientFIO { get; set; } = string.Empty; - public DateTime? HearingDate { get; set; } - public List Visits { get; set; } = new(); - } -}