using SchoolDataModels; using System.ComponentModel; using System.Text; using SchoolDataModels.Models; namespace SchoolContracts.ViewModels { public class DisciplineViewModel : IDisciplineModel { public int Id { get; set; } public int ImplementerId { get; set; } public string Name { get; set; } = string.Empty; public double Price { get; set; } [DisplayName("Логин ученика")] public string ExecutorLogin { get; set; } = string.Empty; [DisplayName("Дата получения")] public DateOnly DateOfReceipt { get; set; } = DateOnly.FromDateTime(DateTime.Now); [DisplayName("Дата прохождения")] public DateOnly DateOfPassage { get; set; } = DateOnly.FromDateTime(DateTime.Now); public Dictionary StudentsModel { get; set; } = new(); public List RequirementViewModels { get; set; } = new(); public List StudentViewModels { get; set; } = new(); public override string ToString() { var result = new StringBuilder( $"Занятие {Name}, созданная {DateOfReceipt}, " + $"дата обучения {DateOfPassage}, включает в себя группу учеников:"); for (int i = 0; i < StudentViewModels.Count; i++) { var discipline = StudentViewModels[i]; result.Append($"\n\t{i + 1}. {discipline.Name} на " + $"{StudentsModel[discipline.Id].DateOfStudent.ToShortDateString()}"); } return result.ToString(); } } }