Вывод отчета по документам в Excel
This commit is contained in:
parent
4a1835cd89
commit
5426d94f47
@ -29,14 +29,14 @@ namespace LawFirmView
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var dict = _logic.GetProductComponent();
|
var dict = _logic.GetDocumentBlanks();
|
||||||
if (dict != null)
|
if (dict != null)
|
||||||
{
|
{
|
||||||
dataGridView.Rows.Clear();
|
dataGridView.Rows.Clear();
|
||||||
foreach (var elem in dict)
|
foreach (var elem in dict)
|
||||||
{
|
{
|
||||||
dataGridView.Rows.Add(new object[] { elem.BlankName, "", "" });
|
dataGridView.Rows.Add(new object[] { elem.DocumentName, "", "" });
|
||||||
foreach (var listElem in elem.Documents)
|
foreach (var listElem in elem.Blanks)
|
||||||
{
|
{
|
||||||
dataGridView.Rows.Add(new object[] { "", listElem.Item1, listElem.Item2 });
|
dataGridView.Rows.Add(new object[] { "", listElem.Item1, listElem.Item2 });
|
||||||
}
|
}
|
||||||
|
@ -31,25 +31,25 @@ namespace LawFirmBusinessLogic.BusinessLogics
|
|||||||
_saveToPdf = saveToPdf;
|
_saveToPdf = saveToPdf;
|
||||||
}
|
}
|
||||||
/// Получение списка компонент с указанием, в каких изделиях используются
|
/// Получение списка компонент с указанием, в каких изделиях используются
|
||||||
public List<ReportDocumentBlankViewModel> GetProductComponent()
|
public List<ReportDocumentBlankViewModel> GetDocumentBlanks()
|
||||||
{
|
{
|
||||||
var blanks = _blankStorage.GetFullList();
|
var blanks = _blankStorage.GetFullList();
|
||||||
var documents = _documentStorage.GetFullList();
|
var documents = _documentStorage.GetFullList();
|
||||||
var list = new List<ReportDocumentBlankViewModel>();
|
var list = new List<ReportDocumentBlankViewModel>();
|
||||||
foreach (var blank in blanks)
|
foreach (var doc in documents)
|
||||||
{
|
{
|
||||||
var record = new ReportDocumentBlankViewModel
|
var record = new ReportDocumentBlankViewModel
|
||||||
{
|
{
|
||||||
BlankName = blank.BlankName,
|
DocumentName = doc.DocumentName,
|
||||||
Documents = new List<(string Document, int Count)>(),
|
Blanks = new List<(string Blank, int Count)>(),
|
||||||
TotalCount = 0
|
TotalCount = 0
|
||||||
};
|
};
|
||||||
foreach (var document in documents)
|
foreach (var blank in blanks)
|
||||||
{
|
{
|
||||||
if (document.DocumentBlanks.ContainsKey(blank.Id))
|
if (doc.DocumentBlanks.ContainsKey(blank.Id))
|
||||||
{
|
{
|
||||||
record.Documents.Add((document.DocumentName, document.DocumentBlanks[blank.Id].Item2));
|
record.Blanks.Add(new (blank.BlankName, doc.DocumentBlanks[blank.Id].Item2));
|
||||||
record.TotalCount += document.DocumentBlanks[blank.Id].Item2;
|
record.TotalCount += doc.DocumentBlanks[blank.Id].Item2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
list.Add(record);
|
list.Add(record);
|
||||||
@ -89,8 +89,8 @@ namespace LawFirmBusinessLogic.BusinessLogics
|
|||||||
_saveToExcel.CreateReport(new ExcelInfo
|
_saveToExcel.CreateReport(new ExcelInfo
|
||||||
{
|
{
|
||||||
FileName = model.FileName,
|
FileName = model.FileName,
|
||||||
Title = "Список бланков",
|
Title = "Список документов",
|
||||||
DocumentBlanks = GetProductComponent()
|
DocumentBlanks = GetDocumentBlanks()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
/// Сохранение заказов в файл-Pdf
|
/// Сохранение заказов в файл-Pdf
|
||||||
|
@ -33,17 +33,17 @@ namespace LawFirmBusinessLogic.OfficePackage
|
|||||||
{
|
{
|
||||||
ColumnName = "A",
|
ColumnName = "A",
|
||||||
RowIndex = rowIndex,
|
RowIndex = rowIndex,
|
||||||
Text = pc.BlankName,
|
Text = pc.DocumentName,
|
||||||
StyleInfo = ExcelStyleInfoType.Text
|
StyleInfo = ExcelStyleInfoType.Text
|
||||||
});
|
});
|
||||||
rowIndex++;
|
rowIndex++;
|
||||||
foreach (var (Document, Count) in pc.Documents)
|
foreach (var (Blank, Count) in pc.Blanks)
|
||||||
{
|
{
|
||||||
InsertCellInWorksheet(new ExcelCellParameters
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
{
|
{
|
||||||
ColumnName = "B",
|
ColumnName = "B",
|
||||||
RowIndex = rowIndex,
|
RowIndex = rowIndex,
|
||||||
Text = Document,
|
Text = Blank,
|
||||||
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
StyleInfo = ExcelStyleInfoType.TextWithBorder
|
||||||
});
|
});
|
||||||
InsertCellInWorksheet(new ExcelCellParameters
|
InsertCellInWorksheet(new ExcelCellParameters
|
||||||
|
@ -11,7 +11,7 @@ namespace LawFirmContracts.BusinessLogicContracts
|
|||||||
public interface IReportLogic
|
public interface IReportLogic
|
||||||
{
|
{
|
||||||
/// Получение списка компонент с указанием, в каких изделиях используются
|
/// Получение списка компонент с указанием, в каких изделиях используются
|
||||||
List<ReportDocumentBlankViewModel> GetProductComponent();
|
List<ReportDocumentBlankViewModel> GetDocumentBlanks();
|
||||||
/// Получение списка заказов за определенный период
|
/// Получение списка заказов за определенный период
|
||||||
List<ReportOrdersViewModel> GetOrders(ReportBindingModel model);
|
List<ReportOrdersViewModel> GetOrders(ReportBindingModel model);
|
||||||
/// Сохранение компонент в файл-Word
|
/// Сохранение компонент в файл-Word
|
||||||
|
@ -8,9 +8,9 @@ namespace LawFirmContracts.ViewModels
|
|||||||
{
|
{
|
||||||
public class ReportDocumentBlankViewModel
|
public class ReportDocumentBlankViewModel
|
||||||
{
|
{
|
||||||
public string BlankName { get; set; } = string.Empty;
|
public string DocumentName { get; set; } = string.Empty;
|
||||||
public int TotalCount { get; set; }
|
public int TotalCount { get; set; }
|
||||||
public List<(string Document, int Count)> Documents { get; set; } = new();
|
public List<(string Blank, int Count)> Blanks { get; set; } = new();
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user