using System; using System.Collections.Generic; using System.Data; using System.Linq; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.Logic.Naplozas; using Kreta.BusinessLogic.Logic.Naplozas.Elokeszites; using Kreta.Enums.ManualEnums; namespace Kreta.Web.Areas.Orarend.Models { //Rögzítés model public class TanoraNaplozasRogzites { public TanoraNaplozasRogzites() { TanoraMuveletek = new TanoraMuveletek(); TanoraAdatokRogzites = new TanoraAdatokRogzites(); MulasztasNaplozasRogzites = new MulasztasNaplozasRogzites(); HaziFeladatNaplozasRogzites = new HaziFeladatNaplozasRogzites(); } public TanoraMuveletek TanoraMuveletek { get; set; } public TanoraAdatokRogzites TanoraAdatokRogzites { get; set; } public MulasztasNaplozasRogzites MulasztasNaplozasRogzites { get; set; } public HaziFeladatNaplozasRogzites HaziFeladatNaplozasRogzites { get; set; } public void ConvertTo(NaplozasCo model, DateTime naplozasDatum) { model.OraAdat.IsSorszamozando = TanoraAdatokRogzites.Sorszamozando; model.OraAdat.Megjegyzes = TanoraAdatokRogzites.Megjegyzes; model.OraAdat.TeremId = TanoraAdatokRogzites.TeremId; // TanoraMuveletek is van model.OraAdat.DigEszkozTipusId = TanoraAdatokRogzites.DigEszkozTipusId; model.OraAdat.DigPlatformTipusId = TanoraAdatokRogzites.DigPlatformTipusId; model.OraAdat.DigTamEszkozTipusIdList = TanoraAdatokRogzites.DigTamEszkozTipus != null ? TanoraAdatokRogzites.DigTamEszkozTipus.Select(x => SDAConvert.ToInt32(x)).ToList() : new List(); var startDate = TanoraMuveletek.CalendarModel.Start; var calendarStart = new DateTime(startDate.Year, startDate.Month, startDate.Day, startDate.Hour, startDate.Minute, 0, DateTimeKind.Utc).ToLocalTime(); var endDdate = TanoraMuveletek.CalendarModel.End; var calendarEnd = new DateTime(endDdate.Year, endDdate.Month, endDdate.Day, endDdate.Hour, endDdate.Minute, 0, DateTimeKind.Utc).ToLocalTime(); DateTime newStartDate, newEndDate; if (TanoraAdatokRogzites.OraKezdete == DateTime.MinValue && TanoraAdatokRogzites.OraVege == DateTime.MinValue) { newStartDate = new DateTime(calendarStart.Year, calendarStart.Month, calendarStart.Day, calendarStart.Hour, calendarStart.Minute, 0, DateTimeKind.Local); newEndDate = new DateTime(calendarEnd.Year, calendarEnd.Month, calendarEnd.Day, calendarEnd.Hour, calendarEnd.Minute, 0, DateTimeKind.Local); } else { var newOrakezdete = TanoraAdatokRogzites.OraKezdete.ToLocalTime(); var newOravege = TanoraAdatokRogzites.OraVege.ToLocalTime(); newStartDate = new DateTime(calendarStart.Year, calendarStart.Month, calendarStart.Day, newOrakezdete.Hour, newOrakezdete.Minute, 0, DateTimeKind.Local); newEndDate = new DateTime(calendarEnd.Year, calendarEnd.Month, calendarEnd.Day, newOravege.Hour, newOravege.Minute, 0, DateTimeKind.Local); } model.OraAdat.OraKezdete = newStartDate; model.OraAdat.OraVege = newEndDate; if (model.OraAdat.OraVege.Day < model.OraAdat.OraKezdete.Day) { model.OraAdat.OraVege = model.OraAdat.OraVege.AddDays(model.OraAdat.OraKezdete.Day - model.OraAdat.OraVege.Day); } if (TanoraMuveletek.CalendarModel.EventId > 0 && TanoraMuveletek.CalendarModel.EventType == EventTypeEnum.LetezoOraSzerkesztese && naplozasDatum != DateTime.MinValue) { model.OraAdat.OraKezdete = naplozasDatum.AddHours(model.OraAdat.OraKezdete.Hour).AddMinutes(model.OraAdat.OraKezdete.Minute); model.OraAdat.OraVege = naplozasDatum.AddHours(model.OraAdat.OraVege.Hour).AddMinutes(model.OraAdat.OraVege.Minute); } model.OraAdat.Oraszam = TanoraAdatokRogzites.Oraszam; model.OraAdat.CsengetesirendId = TanoraAdatokRogzites.CsengetesiRendID; model.OraAdat.CsengetesirendOraId = TanoraAdatokRogzites.CsengetesiRendOraId; if (!model.OraAdat.CsengetesirendOraId.HasValue && TanoraMuveletek.CalendarModel.EventType == EventTypeEnum.UjOraFelvitele && TanoraMuveletek.CalendarModel.OraType == CalendarOraTypeEnum.UresOra) { model.OraAdat.CsengetesirendOraId = TanoraMuveletek.CalendarModel.EventId; } model.OraAdat.OsztalyCsoportId = TanoraMuveletek.OsztalyCsoportId; model.OraAdat.IsTanorankivuli = TanoraMuveletek.IsTanoranKivuli; model.OraAdat.FoglakozasId = TanoraMuveletek.FoglakozasId; model.OraAdat.TantargyId = TanoraMuveletek.TantargyId; if (TanoraMuveletek.HelyettesitoId > 0) { model.OraAdat.TanarId = TanoraMuveletek.HelyettesitoId; model.Helyettesites.TanarId = TanoraMuveletek.TanarId; } else { model.OraAdat.TanarId = TanoraMuveletek.TanarId; } model.OraAdat.Tema = MulasztasNaplozasRogzites.Tema; model.OraAdat.TemaTanmenetId = MulasztasNaplozasRogzites.TemaTanmenetId; model.OraAdat.TanulasiEgysegId = MulasztasNaplozasRogzites.TanulasiEgysegId; model.OraTulajdosag.Bontott = TanoraAdatokRogzites.Bontott; model.OraTulajdosag.NemzetisegiOra = TanoraAdatokRogzites.NemzetisegiOra; model.OraTulajdosag.IsFelnottoktatasiSzerzodes = TanoraAdatokRogzites.IsFelnottoktatasiSzerzodes; model.OraTulajdosag.OnlineOra = TanoraAdatokRogzites.OnlineOra; model.OraTulajdosag.MindennaposTestneveles = TanoraAdatokRogzites.MindennaposTestneveles; model.OraTulajdosag.IPRTanora = TanoraAdatokRogzites.IPRTanora; model.OraTulajdosag.Differencialt = TanoraAdatokRogzites.Differencialt; model.OraTulajdosag.Kooperativ = TanoraAdatokRogzites.Kooperativ; model.OraTulajdosag.Meres = TanoraAdatokRogzites.Meres; model.OraTulajdosag.Drama = TanoraAdatokRogzites.Drama; model.OraTulajdosag.Tiop = TanoraAdatokRogzites.Tiop; model.OraTulajdosag.ParhuzamosOra = TanoraAdatokRogzites.ParhuzamosOra; model.OraTulajdosag.IktTanora = TanoraAdatokRogzites.IKTTanora; model.OraTulajdosag.TAMOP = TanoraAdatokRogzites.TAMOPOra; model.OraTulajdosag.KIPOra = TanoraAdatokRogzites.KIPOra; model.OraTulajdosag.VEKOP73317 = TanoraAdatokRogzites.VEKOP73317; model.OraTulajdosag.KAPOra = TanoraAdatokRogzites.KAPOra; model.OraTulajdosag.NemSzakrendszeru = TanoraAdatokRogzites.NemSzakrendszeruOra; model.OraTulajdosag.Tulora = TanoraAdatokRogzites.Tulora; model.OraTulajdosag.Multikulturalis = TanoraAdatokRogzites.Multikulturalis; model.OraTulajdosag.EFOP32317 = TanoraAdatokRogzites.EFOP32317; model.OraTulajdosag.KomplexOra = TanoraAdatokRogzites.KomplexOra; model.Helyettesites.Id = TanoraMuveletek.HelyettesitesId; model.Helyettesites.Oka = TanoraMuveletek.HelyettesitesOka; model.Helyettesites.Tipus = TanoraMuveletek.HelyettesitesTipusa; // TanoraAdatokRogzites is van model.OraTulajdosag.GINOP623 = TanoraAdatokRogzites.GINOP623; model.OraTulajdosag.EFOP31716EselyteremtesAKoznevelesben = TanoraAdatokRogzites.EFOP31716EselyteremtesAKoznevelesben; model.OraTulajdosag.EFOP33717 = TanoraAdatokRogzites.EFOP33717; model.OraTulajdosag.TIOP11112120120001 = TanoraAdatokRogzites.TIOP11112120120001; model.OraTulajdosag.DFHT = TanoraAdatokRogzites.DFHT; model.OraTulajdosag.Rahangolodas = TanoraAdatokRogzites.Rahangolodas; model.OraTulajdosag.Testmozgas = TanoraAdatokRogzites.Testmozgas; model.OraTulajdosag.Muveszet = TanoraAdatokRogzites.Muveszet; model.OraTulajdosag.Eletgyakorlat = TanoraAdatokRogzites.Eletgyakorlat; model.OraTulajdosag.Logika = TanoraAdatokRogzites.Logika; model.OraTulajdosag.TeOrad = TanoraAdatokRogzites.TeOrad; model.OraTulajdosag.DigitalisAlapProgram = TanoraAdatokRogzites.DigitalisAlapProgram; model.OraTulajdosag.EFOP23517201700038Miapalya = TanoraAdatokRogzites.EFOP23517201700038Miapalya; model.OraTulajdosag.TanevTananyaganakIsmetlese = TanoraAdatokRogzites.TanevTananyaganakIsmetlese; model.OraTulajdosag.TanevTananyaganakKiegeszitese = TanoraAdatokRogzites.TanevTananyaganakKiegeszitese; model.OraTulajdosag.TanulokDigitalisKeszsegfejlesztese = TanoraAdatokRogzites.TanulokDigitalisKeszsegfejlesztese; model.OraTulajdosag.Projektmunka = TanoraAdatokRogzites.Projektmunka; model.OraTulajdosag.TanulokKompenzaciosIraskeszsegFejlesztese = TanoraAdatokRogzites.TanulokKompenzaciosIraskeszsegFejlesztese; model.OraTulajdosag.TanulokKompenzaciosOlvasasiKepessegFejlesztese = TanoraAdatokRogzites.TanulokKompenzaciosOlvasasiKepessegFejlesztese; model.OraTulajdosag.TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese = TanoraAdatokRogzites.TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese; model.OraTulajdosag.TanulokNyelviKepessegenekKompenzaciosFejlesztese = TanoraAdatokRogzites.TanulokNyelviKepessegenekKompenzaciosFejlesztese; model.OraTulajdosag.TanulokOnmegismeresenekSegitese = TanoraAdatokRogzites.TanulokOnmegismeresenekSegitese; model.OraTulajdosag.TanulokOnallosagraNevelese = TanoraAdatokRogzites.TanulokOnallosagraNevelese; model.OraTulajdosag.TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese = TanoraAdatokRogzites.TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese; model.OraTulajdosag.TanulokOrientaciosTamogatasa = TanoraAdatokRogzites.TanulokOrientaciosTamogatasa; model.OraTulajdosag.TanulokSzocialitasanakFejlesztese = TanoraAdatokRogzites.TanulokSzocialitasanakFejlesztese; model.OraTulajdosag.TanulokTovabbhaladasatElokeszitoTevekenysegek = TanoraAdatokRogzites.TanulokTovabbhaladasatElokeszitoTevekenysegek; model.OraTulajdosag.PedagogusAltalJelzettEgyeniEsetkezeles = TanoraAdatokRogzites.PedagogusAltalJelzettEgyeniEsetkezeles; model.OraTulajdosag.ProjektmunkaTamogatasa = TanoraAdatokRogzites.ProjektmunkaTamogatasa; model.OraTulajdosag.DigitalisKeszsegfejlesztes = TanoraAdatokRogzites.DigitalisKeszsegfejlesztes; model.OraTulajdosag.KozossegiMunkaTamogatasa = TanoraAdatokRogzites.KozossegiMunkaTamogatasa; model.OraTulajdosag.TanoraElokeszitesenekTamogatasa = TanoraAdatokRogzites.TanoraElokeszitesenekTamogatasa; model.OraTulajdosag.TanoraLebonyolitasanakTamogatasa = TanoraAdatokRogzites.TanoraLebonyolitasanakTamogatasa; model.OraTulajdosag.NapkozisTevekenysegKeretebenEgyeniFejlesztes = TanoraAdatokRogzites.NapkozisTevekenysegKeretebenEgyeniFejlesztes; model.Hazifeladat.Id = HaziFeladatNaplozasRogzites.Id; model.Hazifeladat.Hatarido = HaziFeladatNaplozasRogzites.Hatarido; model.Hazifeladat.Szoveg = HaziFeladatNaplozasRogzites.HaziFeladat; model.OraAdat.CheckedOpenBoardFileIdList = TanoraAdatokRogzites.CheckedOpenBoardFileIdList; model.Hazifeladat.CsatolmanyId = HaziFeladatNaplozasRogzites.CsatolmanyId; foreach (var item in MulasztasNaplozasRogzites.MulasztasList) { model.MulasztasList.Add(new NaplozasCo.MulasztasModel { MulasztasId = item.MulasztasRowId, TanuloId = item.TanuloId, MulasztasTipus = item.MulasztasTipus, Keses = item.Keses, HazifeladatHiany = item.HazifeladatHiany, FelszerelesHiany = item.FelszerelesHiany, Felmentes = item.Felmentes, TanoraiDicseret = item.TanoraiDicseret, HazifeladatHianyId = item.HazifeladatHianyId, FelszerelesHianyId = item.FelszerelesHianyId, FelmentesId = item.FelmentesId, TanoraiDicseretId = item.TanoraiDicseretId, }); } if (TanoraMuveletek.CalendarModel.OraType == CalendarOraTypeEnum.TanitasiOra || TanoraMuveletek.CalendarModel.OraType == CalendarOraTypeEnum.TanoranKivuliNaplozottFoglalkozas) { model.OraAdat.TanitasiOraId = TanoraMuveletek.CalendarModel.EventId; } else if (TanoraMuveletek.CalendarModel.OraType == CalendarOraTypeEnum.OrarendiOra || TanoraMuveletek.CalendarModel.OraType == CalendarOraTypeEnum.TanoranKivuliFoglalkozas) { model.OraAdat.OrarendiOraId = TanoraMuveletek.CalendarModel.EventId; } } public void ConvertTo(EgyediNaplozasElokeszitesCo model) { model.Start = TanoraAdatokRogzites.OraKezdete; model.End = TanoraAdatokRogzites.OraVege; model.TeremId = TanoraAdatokRogzites.TeremId; // TanoraMuveletek is van model.CsengetesirendId = TanoraAdatokRogzites.CsengetesiRendID; model.CsengetesirendOraId = TanoraAdatokRogzites.CsengetesiRendOraId; model.OsztalyCsoportId = TanoraMuveletek.OsztalyCsoportId; model.FoglakozasId = TanoraMuveletek.FoglakozasId; model.TantargyId = TanoraMuveletek.TantargyId; model.TanarId = TanoraMuveletek.TanarId; model.HelyettesitesId = TanoraMuveletek.HelyettesitesId; model.HelyettesitesOka = TanoraMuveletek.HelyettesitesOka; model.HelyettesitesTipus = TanoraMuveletek.HelyettesitesTipusa; // TanoraAdatokRogzites is van model.HelyettesitesTanarId = TanoraMuveletek.HelyettesitoId; } } }