поменяла списки
This commit is contained in:
parent
6b7bddc831
commit
b306b67320
@ -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<ReportClientsHearingViewModel> GetClientsHearing(ReportBindingModel model)
|
||||
public List<ReportClientsConsultationViewModel> 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<ReportClientsHearingViewModel>();
|
||||
var list = new List<ReportClientsConsultationViewModel>();
|
||||
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)
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -3,13 +3,13 @@ using LawFirmBusinessLogic.OfficePackages.HelperModels;
|
||||
|
||||
namespace LawFirmBusinessLogic.OfficePackages
|
||||
{
|
||||
public abstract class AbstractSaveToExcelClientsHearing
|
||||
public abstract class AbstractSaveToExcelClientsConsultation
|
||||
{
|
||||
/// <summary>
|
||||
/// Создание отчета
|
||||
/// </summary>
|
||||
/// <param name="info"></param>
|
||||
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-файла
|
||||
/// </summary>
|
||||
/// <param name="info"></param>
|
||||
protected abstract void CreateExcel(ExcelClientsHearingInfo info);
|
||||
protected abstract void CreateExcel(ExcelClientsConsultationInfo info);
|
||||
/// <summary>
|
||||
/// Добавляем новую ячейку в лист
|
||||
/// </summary>
|
||||
@ -79,6 +79,6 @@ namespace LawFirmBusinessLogic.OfficePackages
|
||||
/// Сохранение файла
|
||||
/// </summary>
|
||||
/// <param name="info"></param>
|
||||
protected abstract void SaveExcel(ExcelClientsHearingInfo info);
|
||||
protected abstract void SaveExcel(ExcelClientsConsultationInfo info);
|
||||
}
|
||||
}
|
@ -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-файла
|
||||
/// </summary>
|
||||
/// <param name="info"></param>
|
||||
protected abstract void CreateWord(WordClientsHearingInfo info);
|
||||
protected abstract void CreateWord(WordClientsConsultationInfo info);
|
||||
/// <summary>
|
||||
/// Создание абзаца с текстом
|
||||
/// </summary>
|
||||
@ -57,6 +57,6 @@ namespace LawFirmBusinessLogic.OfficePackages
|
||||
/// Сохранение файла
|
||||
/// </summary>
|
||||
/// <param name="info"></param>
|
||||
protected abstract void SaveWord(WordClientsHearingInfo info);
|
||||
protected abstract void SaveWord(WordClientsConsultationInfo info);
|
||||
}
|
||||
}
|
@ -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<ReportClientsHearingViewModel> ClientsHearing
|
||||
public List<ReportClientsConsultationViewModel> ClientsConsultation
|
||||
{
|
||||
get;
|
||||
set;
|
@ -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<ReportClientsHearingViewModel> ClientsHearing { get; set; } = new();
|
||||
public List<ReportClientsConsultationViewModel> ClientsConsultation { get; set; } = new();
|
||||
}
|
||||
}
|
@ -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)
|
||||
{
|
@ -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)
|
||||
{
|
@ -5,13 +5,13 @@ namespace LawFirmContracts.BusinessLogicContracts
|
||||
{
|
||||
public interface IReportLogic
|
||||
{
|
||||
List<ReportClientsHearingViewModel> GetClientsHearing(ReportBindingModel model);
|
||||
List<ReportClientsConsultationViewModel> GetClientsConsultation(ReportBindingModel model);
|
||||
List<ReportClientsViewModel> GetGetClients(ReportBindingModel model);
|
||||
List<ReportVisitLawyerViewModel> GetVisitLawyer(ReportBindingModel model);
|
||||
List<ReportConsultationHearingViewModel> 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);
|
||||
|
@ -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();
|
||||
}
|
||||
}
|
@ -1,9 +0,0 @@
|
||||
namespace LawFirmContracts.ViewModels
|
||||
{
|
||||
public class ReportClientsHearingViewModel
|
||||
{
|
||||
public string ClientFIO { get; set; } = string.Empty;
|
||||
public DateTime? HearingDate { get; set; }
|
||||
public List<string> Visits { get; set; } = new();
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user