Files
LehrerApp/LehrerApp.Core/Models/Student.cs
T

43 lines
1.3 KiB
C#

namespace LehrerApp.Core.Models;
public class Student
{
public Guid Id { get; set; } = Guid.NewGuid();
public string FirstName { get; set; } = "";
public string LastName { get; set; } = "";
public string FullName => $"{LastName}, {FirstName}";
public DateOnly? DateOfBirth { get; set; }
public Gender? Gender { get; set; }
public List<Contact> Contacts { get; set; } = [];
public string? Notes { get; set; }
public bool IsActive { get; set; } = true;
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
}
public class Contact
{
public Guid Id { get; set; } = Guid.NewGuid();
public string Name { get; set; } = "";
public string Relation { get; set; } = "";
public string? Phone { get; set; }
public string? Email { get; set; }
public string? Street { get; set; }
public string? PostalCode { get; set; }
public string? City { get; set; }
public DateOnly? InvalidSince { get; set; }
public ContactInvalidReason? InvalidReason { get; set; }
public string? InvalidReasonDetails { get; set; }
}
public enum ContactInvalidReason
{
Moved,
NewPhoneNumber,
LostCustody,
NewEmailAddress,
NoLongerResponsible,
Other,
}
public enum Gender { M, W, D }