CourseWork_SchoolStudyAgain/SchoolAgainStudy/SchoolAgainStudyBusinessLogic/OfficePackage/AbstractSaveToWordTeacher.cs
2023-04-07 14:25:31 +04:00

77 lines
2.6 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using SchoolAgainStudyBusinessLogic.OfficePackage.HelperEnums;
using SchoolAgainStudyBusinessLogic.OfficePackage.HelperModels;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SchoolAgainStudyBusinessLogic.OfficePackage
{
public abstract class AbstractSaveToWordTeacher
{
public void CreateDoc(WordInfoTeacher 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 material in info.DiyMaterials)
{
CreateParagraph(new WordParagraph
{
Texts = new List<(string, WordTextProperties)> { (material.Title, new WordTextProperties { Size = "24", Bold=true,})},
TextProperties = new WordTextProperties
{
Size = "24",
JustificationType = WordJustificationType.Both
}
});
foreach (var diy in material.Diys)
{
CreateParagraph(new WordParagraph
{
Texts = new List<(string, WordTextProperties)> { (diy, new WordTextProperties { Size = "20", Bold=false,})},
TextProperties = new WordTextProperties
{
Size = "24",
JustificationType = WordJustificationType.Both
}
});
}
}
SaveWord(info);
}
/// <summary>
/// Создание doc-файла
/// </summary>
/// <param name="info"></param>
protected abstract void CreateWord(WordInfoTeacher info);
/// <summary>
/// Создание абзаца с текстом
/// </summary>
/// <param name="paragraph"></param>
/// <returns></returns>
protected abstract void CreateParagraph(WordParagraph paragraph);
/// <summary>
/// Сохранение файла
/// </summary>
/// <param name="info"></param>
protected abstract void SaveWord(WordInfoTeacher info);
}
}