using VeterinaryBusinessLogic.OfficePackage.HelperEnums; using VeterinaryBusinessLogic.OfficePackage.HelperModels; namespace VeterinaryBusinessLogic.OfficePackage { public abstract class AbstractSaveToWordOwner { public void CreateDoc(WordInfoOwner info) { CreateWord(info); CreateParagraph(new WordParagraph { Texts = new List<(string, WordTextProperties)> { (info.Title, new WordTextProperties { Bold = true, Size = "24", }) }, TextProperties = new WordTextProperties { Size = "24", JustificationType = WordJustificationType.Center } }); foreach (var rec in info.PetServices) { CreateParagraph(new WordParagraph { Texts = new List<(string, WordTextProperties)> { (rec.PetName, new WordTextProperties { Size = "24", Bold=true})}, TextProperties = new WordTextProperties { Size = "24", JustificationType = WordJustificationType.Both } }); foreach (var animal in rec.Services) { CreateParagraph(new WordParagraph { Texts = new List<(string, WordTextProperties)> { (animal.ServiceName, new WordTextProperties { Size = "20", Bold=false})}, TextProperties = new WordTextProperties { Size = "24", JustificationType = WordJustificationType.Both } }); } } SaveWord(info); } protected abstract void CreateWord(WordInfoOwner info); protected abstract void CreateParagraph(WordParagraph paragraph); protected abstract void SaveWord(WordInfoOwner info); } }