2023-03-12 12:32:26 +01:00
|
|
|
|
using System;
|
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
|
using System.Linq;
|
|
|
|
|
|
using System.Text;
|
|
|
|
|
|
using System.Threading.Tasks;
|
2023-05-07 17:39:24 +02:00
|
|
|
|
using TimetableDesigner.Customs;
|
2023-03-12 12:32:26 +01:00
|
|
|
|
|
|
|
|
|
|
namespace TimetableDesigner.Core
|
|
|
|
|
|
{
|
2023-05-07 17:39:24 +02:00
|
|
|
|
[Serializable]
|
|
|
|
|
|
public class Teacher : IUnit
|
2023-03-12 12:32:26 +01:00
|
|
|
|
{
|
2023-05-07 17:39:24 +02:00
|
|
|
|
#region FIELDS
|
|
|
|
|
|
|
|
|
|
|
|
private string _name;
|
|
|
|
|
|
private string _shortName;
|
|
|
|
|
|
private string _description;
|
|
|
|
|
|
private JsonSerializableDictionary<TimetableDay, TimetableSpanCollection> _availabilityHours;
|
|
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2023-03-12 12:32:26 +01:00
|
|
|
|
#region PROPERTIES
|
|
|
|
|
|
|
2023-05-07 17:39:24 +02:00
|
|
|
|
public string Name
|
|
|
|
|
|
{
|
|
|
|
|
|
get => _name;
|
|
|
|
|
|
set => _name = value;
|
|
|
|
|
|
}
|
|
|
|
|
|
public string ShortName
|
|
|
|
|
|
{
|
|
|
|
|
|
get => _shortName;
|
|
|
|
|
|
set => _shortName = value;
|
|
|
|
|
|
}
|
|
|
|
|
|
public string Description
|
|
|
|
|
|
{
|
|
|
|
|
|
get => _description;
|
|
|
|
|
|
set => _description = value;
|
|
|
|
|
|
}
|
|
|
|
|
|
public IDictionary<TimetableDay, TimetableSpanCollection> AvailabilityHours => _availabilityHours;
|
2023-03-12 17:52:17 +01:00
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#region CONSTRUCTORS
|
|
|
|
|
|
|
|
|
|
|
|
public Teacher()
|
|
|
|
|
|
{
|
2023-05-07 17:39:24 +02:00
|
|
|
|
_name = string.Empty;
|
|
|
|
|
|
_shortName = string.Empty;
|
|
|
|
|
|
_description = string.Empty;
|
|
|
|
|
|
_availabilityHours = new JsonSerializableDictionary<TimetableDay, TimetableSpanCollection>();
|
2023-03-12 17:52:17 +01:00
|
|
|
|
}
|
2023-03-12 12:32:26 +01:00
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|