kreta/KretaWeb/Areas/Orarend/Models/CalendarModel.cs
2024-03-13 00:33:46 +01:00

89 lines
2.5 KiB
C#

using System;
using Kreta.BusinessLogic.Logic.Naplozas;
using Kreta.Enums.ManualEnums;
namespace Kreta.Web.Areas.Orarend.Models
{
public class CalendarModel
{
DateTime starttime;
DateTime endtime;
public int EventId { get; set; }
public EventTypeEnum EventType { get; set; }
public bool IsDateAlreadyChangedToUtc { get; set; }
public DateTime Start
{
get
{
return starttime;
}
set
{
if (IsDateAlreadyChangedToUtc)
{
starttime = value.ToLocalTime();
}
else
{
starttime = value;
}
}
}
public DateTime End
{
get
{
return endtime;
}
set
{
if (IsDateAlreadyChangedToUtc)
{
endtime = value.ToLocalTime();
}
else
{
endtime = value;
}
}
}
public bool AllDay { get; set; }
public string EventColor { get; set; }
public CalendarOraTypeEnum OraType { get; set; }
public int? HelyettesitesId { get; set; }
public int? HelyettesitoId { get; set; }
public int? Hanyadikora { get; set; }
public bool UseFoglakozas { get; set; }
public bool isHelyettesites { get; set; }
public bool IsOraOsszevonas { get; set; }
public string Tema { get; set; }
bool IsFromSzervezet { get; set; }
public void ConvertTo(NaplozasElokeszitesCo co)
{
//Mindenhol UTC date-et küldünk ezért kell local date-é alakítani minden esetben
co.Start = Start.ToLocalTime();
co.End = End.ToLocalTime();
if (OraType == CalendarOraTypeEnum.TanitasiOra || OraType == CalendarOraTypeEnum.TanoranKivuliNaplozottFoglalkozas)
{
co.TanitasiOraId = EventId;
}
if (OraType == CalendarOraTypeEnum.OrarendiOra || OraType == CalendarOraTypeEnum.TanoranKivuliFoglalkozas)
{
co.OrarendiOraId = EventId;
}
}
}
public enum EventTypeEnum
{
UjOraFelvitele = 0,
LetezoOraSzerkesztese = 1,
EgeszNaposEsemeny = 2,
UjEgyediOraFelvitel = 4,
TanarHelyetesites = 5
}
}