50 lines
1.2 KiB
C#
50 lines
1.2 KiB
C#
using Koogle.Domain.Entities;
|
|
using Koogle.Domain.Enums;
|
|
|
|
namespace Koogle.Domain.Entities;
|
|
|
|
/// <summary>
|
|
/// Represents a person associated with a club that can be a member or a guest.
|
|
/// </summary>
|
|
public class Person : BaseEntity
|
|
{
|
|
// Stammdaten
|
|
|
|
/// <summary>
|
|
/// name of the person.
|
|
/// </summary>
|
|
public string Name { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// status of the person indicating if they are a member or a guest of the related club.
|
|
/// </summary>
|
|
public PersonStatus PersonStatus { get; set; }
|
|
|
|
// Zuordnungen
|
|
|
|
/// <summary>
|
|
/// id of the referenced Club.
|
|
/// </summary>
|
|
public Guid ClubId { get; set; }
|
|
|
|
|
|
// Navigation Property für 1:n Beziehung
|
|
|
|
/// <summary>
|
|
/// reference to the associated Expenses.
|
|
/// </summary>
|
|
public ICollection<PersonExpense> Expenses { get; set; } = new List<PersonExpense>();
|
|
|
|
/// <summary>
|
|
/// reference to the associated Persons.
|
|
/// </summary>
|
|
public ICollection<DayPerson> DayPersons { get; set; } = new List<DayPerson>();
|
|
|
|
|
|
/// <summary>
|
|
/// the associated Club.
|
|
/// </summary>
|
|
public Club Club { get; set; } = null!;
|
|
}
|
|
|