Изменена логика получения списка Word

This commit is contained in:
prodigygirl 2023-03-26 09:42:14 +04:00
parent ca519fe8c8
commit fe89fc9399
5 changed files with 78 additions and 28 deletions

View File

@ -9,13 +9,35 @@ namespace FurnitureAssemblyBusinessLogic.OfficePackage
{
public void CreateTableDoc(WordInfo wordInfo) {
CreateWord(wordInfo);
CreateParagraph(new WordParagraph
{
Texts = new List<(string, WordTextProperties)> { (wordInfo.Title, new WordTextProperties { Bold = true, Size = "24", }) },
TextProperties = new WordTextProperties
{
Size = "24",
JustificationType = WordJustificationType.Center
}
});
WordTable wordTable = new();
if (wordInfo is WordInfoShops infoShops)
{
wordTable = CreateTableDocShops(infoShops);
}
CreateTable(wordTable);
SaveWord(wordInfo);
}
private WordTable CreateTableDocShops(WordInfoShops wordInfo)
{
var list = new List<string>();
foreach (var shop in wordInfo.Shops) {
foreach (var shop in wordInfo.Shops)
{
list.Add(shop.ShopName);
list.Add(shop.Address);
list.Add(shop.DateOpening.ToString());
}
//list.AddRange(wordInfo.Shops.Select(x => (x.ShopName, new WordTextProperties { Bold = true, Size = "24" })));
var wordTable = new WordTable
{
Headers = new List<string> {
@ -24,11 +46,9 @@ namespace FurnitureAssemblyBusinessLogic.OfficePackage
"Дата открытия"},
Texts = list
};
CreateTable(wordTable);
SaveWord(wordInfo);
return wordTable;
}
public void CreateDoc(WordInfo info)
{
CreateWord(info);
@ -41,11 +61,14 @@ namespace FurnitureAssemblyBusinessLogic.OfficePackage
JustificationType = WordJustificationType.Center
}
});
foreach (var furniture in info.Furnitures)
if (info is WordInfoFurnitures infoFurnitures) {
foreach (var furniture in infoFurnitures.Furnitures)
{
CreateParagraph(new WordParagraph
{
Texts = new List<(string, WordTextProperties)> { (furniture.FurnitureName, new WordTextProperties { Size = "24", Bold=true}), (" - " + furniture.Price.ToString(), new WordTextProperties { Size = "24", }) },
Texts = new List<(string, WordTextProperties)> { (furniture.FurnitureName,
new WordTextProperties { Size = "24", Bold=true}), (" - " + furniture.Price.ToString(),
new WordTextProperties { Size = "24", }) },
TextProperties = new WordTextProperties
{
Size = "24",
@ -54,6 +77,7 @@ namespace FurnitureAssemblyBusinessLogic.OfficePackage
});
}
}
SaveWord(info);
}
/// <summary>

View File

@ -6,7 +6,5 @@ namespace FurnitureAssemblyBusinessLogic.OfficePackage.HelperModels
{
public string FileName { get; set; } = string.Empty;
public string Title { get; set; } = string.Empty;
public List<FurnitureViewModel> Furnitures { get; set; } = new();
public List<ShopViewModel> Shops { get; set; } = new();
}
}

View File

@ -0,0 +1,14 @@
using FurnitureAssemblyContracts.ViewModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FurnitureAssemblyBusinessLogic.OfficePackage.HelperModels
{
public class WordInfoFurnitures : WordInfo
{
public List<FurnitureViewModel> Furnitures { get; set; } = new();
}
}

View File

@ -0,0 +1,14 @@
using FurnitureAssemblyContracts.ViewModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FurnitureAssemblyBusinessLogic.OfficePackage.HelperModels
{
public class WordInfoShops : WordInfo
{
public List<ShopViewModel> Shops { get; set; } = new();
}
}