42 lines
1.7 KiB
C#
42 lines
1.7 KiB
C#
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<int, StudentByDisciplineModel> StudentsModel { get; set; } = new();
|
|
public List<RequirementViewModel> RequirementViewModels { get; set; } = new();
|
|
|
|
public List<StudentViewModel> 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();
|
|
}
|
|
}
|
|
}
|