58 lines
2.5 KiB
C#
58 lines
2.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Runtime.Serialization;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Orarend
|
|
{
|
|
[DataContract]
|
|
public class Órarend
|
|
{
|
|
/// <summary>
|
|
/// <para>Egy 6x16 2D tömb, az első koordináta a nap indexe, a második az óráé. Az értékek lehetnek null-ok, ha nincs óra az adott időpontban</para>
|
|
/// <para>Egy <see cref="API.Frissítés"/> hívás állítja be az órákat</para>
|
|
/// </summary>
|
|
[DataMember]
|
|
public Óra[][] ÓrákAHét { get; private set; } = new Óra[6][] { new Óra[16], new Óra[16], new Óra[16], new Óra[16], new Óra[16], new Óra[16] };
|
|
/// <summary>
|
|
/// <para>Egy 6x16 2D tömb, az első koordináta a nap indexe, a második az óráé. Az értékek lehetnek null-ok, ha nincs óra az adott időpontban</para>
|
|
/// <para>Egy <see cref="API.Frissítés"/> hívás állítja be az órákat</para>
|
|
/// </summary>
|
|
[DataMember]
|
|
public Óra[][] ÓrákBHét { get; private set; } = new Óra[6][] { new Óra[16], new Óra[16], new Óra[16], new Óra[16], new Óra[16], new Óra[16] }; //Multidimensional arrays are not supported (serialization)
|
|
/// <summary>
|
|
/// <para>Egy <see cref="API.Frissítés"/> hívás állítja be</para>
|
|
/// </summary>
|
|
[DataMember]
|
|
public string Név { get; set; }
|
|
[DataMember]
|
|
public Osztály Osztály { get; set; }
|
|
/// <summary>
|
|
/// Egy 16 elemű tömb az órák kezdő időpontjaival
|
|
/// </summary>
|
|
[DataMember]
|
|
public TimeSpan[] Órakezdetek { get; private set; } = new TimeSpan[16];
|
|
[DataMember]
|
|
public List<string> Csoportok { get; private set; } = new List<string>(); //A private set kell a serialization miatt
|
|
|
|
/// <summary>
|
|
/// Létrehoz egy új órarendet
|
|
/// </summary>
|
|
/// <param name="név">Az órarend neve. Ez jelenik meg a fejlécen</param>
|
|
/// <param name="osztály">Az osztály, amihez tartozik ez az órarend. Lásd <see cref="API.Osztályok"/> </param>
|
|
/// <param name="csoportok">A megjelenítendő csoportok szóközzel elválasztva</param>
|
|
public Órarend(string név, Osztály osztály, string csoportok)
|
|
{
|
|
Név = név;
|
|
Osztály = osztály;
|
|
Csoportok.AddRange(csoportok.Replace("Egész osztály", "").Trim().Split(' '));
|
|
}
|
|
|
|
public override string ToString()
|
|
{
|
|
return Név;
|
|
}
|
|
}
|
|
}
|