using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Text; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.BusinessLogic.Helpers.SystemSettings; using Kreta.BusinessLogic.Interfaces; using Kreta.BusinessLogic.Logic; using Kreta.BusinessLogic.Logic.Naplozas; using Kreta.BusinessLogic.Utils; using Kreta.Client.CoreApi; using Kreta.Core; using Kreta.Core.ConnectionType; using Kreta.Core.Enum; using Kreta.Core.Exceptions; using Kreta.Core.Validation.Exceptions; using Kreta.DataAccess.Interfaces; using Kreta.DataAccessManual; using Kreta.DataAccessManual.Interfaces; using Kreta.DataAccessManual.ParameterClasses; using Kreta.DataAccessManual.Util; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Resources; using Newtonsoft.Json; using OfficeOpenXml; using SDA.DataProvider; namespace Kreta.BusinessLogic.Helpers { public class TanoraHelper : LogicBase { public TanoraHelper(IConnectionType connectionType) : base(connectionType) { } public DataSet GetTantargyMegtartottTanorai(int tantargyId) { return Dal.CustomConnection.Run(ConnectionType, (h) => h.TanitasiOra(GridParameters).GetTantargyMegtartottTanorai(tantargyId, TanevId) ); } public TanoraCO GetTanoraByOrarendiId(int oraId, DateTime oraDatum, bool isTanora, bool isTanuloOrGondviselo) { return Dal.CustomConnection.Run(ConnectionType, (h) => { return GetTantargyMegtartottTanoraiData(h, oraId, oraDatum, isTanora, isTanuloOrGondviselo); }); } public int GetOraEvesSorszamaSP(int tantargyId, int osztalyCsoportId, DateTime datum, int oraTulajdonosId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { return GetOraEvesSorszama(h, tantargyId, osztalyCsoportId, datum, oraTulajdonosId); }); } private int GetOraEvesSorszama(IDalHandler h, int tantargyId, int osztalyCsoportId, DateTime datum, int oraTulajdonosId) { var dataset = h.OrarendiOra().GetElozoOraAdatai(tantargyId, osztalyCsoportId, oraTulajdonosId, datum, IntezmenyId, TanevId); if (dataset.Tables[0].Rows.Count < 1) { return 0; } return dataset.Tables[0].Rows[0].Field("EvesSorszam"); } public string GetTemaEvesOraSorszamhoz(int tantargyId, int osztalyCsoportId, int tanarId, int sorszam) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var tanmenetDal = h.Tanmenet(); return tanmenetDal.GetTemaEvesOraSorszamhoz(tantargyId, osztalyCsoportId, tanarId, sorszam); }); } public (int? orarendiOraId, int? hetirend) GetOrarendIdAndHetirend(int tanitasiOraId) { return Dal.CustomConnection.Run(ConnectionType, h => { var tanitasiOraDal = h.TanitasiOra(); var tanitasiOra = tanitasiOraDal.Get(tanitasiOraId); if (tanitasiOra.OrarendiOraGroupId.IsEntityId()) { var orarendiOraId = tanitasiOraDal.GetOrarendiOraByTanoraGroupId(tanitasiOra.OrarendiOraGroupId ?? 0, tanitasiOra.Datum); if (orarendiOraId.IsEntityId()) { var oOrarendiOra = h.OrarendiOra().Get(orarendiOraId); return (oOrarendiOra.ID, oOrarendiOra.Hetirend); } } return ((int?)null, (int?)null); }); } public TanoraCO GetTanorakAdatok(int tanitasiOraId) { return Dal.CustomConnection.Run(ConnectionType, h => { ITanitasiOraDal tanitasiOraDal = h.TanitasiOra(); IOrarendiOraDal orarendiOraDal = h.OrarendiOra(); ITanitasiOra tanitasiOra = tanitasiOraDal.Get(tanitasiOraId); if (tanitasiOra.Torolt) { throw new BlException(ErrorResource.ATanitasiOratIdokozbenToroltekKerjukFrissitsen); } var tanoraCo = new TanoraCO { Datum = tanitasiOra.Datum, TeremNev = tanitasiOra.Terem.Nev, HetNapja = tanitasiOra.HetNapja, HetNapjaNev = tanitasiOra.HetNapja.GetDisplayName(TanevId), ID = tanitasiOra.ID, Oraszam = tanitasiOra.Oraszam ?? 0, OsztalyCsoportNev = tanitasiOra.OsztalyCsoport.Nev, TanarNev = tanitasiOra.OraTulajdonos?.NyomtatasiNev, TantargyNev = tanitasiOra.Tantargy.Nev, Tema = tanitasiOra.Tema, Megtartott = tanitasiOra.Megtartott, OraKezd = tanitasiOra.OraKezdete, OraVeg = tanitasiOra.OraVege, Terem = tanitasiOra.TeremId, OsztCsop = tanitasiOra.OsztalyCsoportId, Targy = tanitasiOra.TantargyId, AdminAltalKiirt = tanitasiOra.AdminAltalKiirt, CsengetesiRendOraId = tanitasiOra.CsengetesirendOraId, Sorszamozando = tanitasiOra.Sorszamozando, HaziFeladat = tanitasiOra.HaziFeladat, Megjegyzes = tanitasiOra.Megjegyzes, Tanar = tanitasiOra.TanarId, HelyettesitesOka = tanitasiOra.HelyettesitesOka, CsengetesiRendID = tanitasiOra.CsengetesirendId, DigEszkozTipusId = tanitasiOra.DigEszkozTipusId, DigPlatformTipusId = tanitasiOra.DigPlatformTipusId, DigTamEszkozTipusIdList = tanitasiOra.TanitasiOraDigTamEszkoz.Where(x => !x.Torolt).Select(x => x.DigTamEszkozTipusId).ToList(), HelyettesitesTipus = tanitasiOra.HelyettesitesTipusa, BejegyIdo = tanitasiOra.BejegyzesIdeje }; if (tanitasiOra.TanulasiEgysegId.IsEntityId()) { tanoraCo.TanulasiEgysegId = tanitasiOra.TanulasiEgysegId; } if (!tanitasiOra.Oraszam.HasValue) { tanoraCo.OraIdopont = $"{tanoraCo.OraKezd.ToShortTimeString()} - {tanoraCo.OraVeg.ToShortTimeString()}"; } if (tanitasiOra.FoglalkozasId.IsEntityId()) { tanoraCo.Fogl = tanitasiOra.FoglalkozasId; IFoglalkozas foglalkozas = GetFoglalkozas(h.Foglalkozas(), tanitasiOra.FoglalkozasId); tanoraCo.FoglalkozasNev = foglalkozas != null ? tanitasiOra.Foglalkozas.Nev : string.Empty; } if (tanitasiOra.OrarendiOraGroupId.IsEntityId()) { int orarendiOraId = tanitasiOraDal.GetOrarendiOraByTanoraGroupId(tanitasiOra.OrarendiOraGroupId ?? 0, tanitasiOra.Datum); if (orarendiOraId.IsEntityId()) { IOrarendiOra oOrarendiOra = orarendiOraDal.Get(orarendiOraId); tanoraCo.OrarendiOra = oOrarendiOra.ID; tanoraCo.Hetirend = oOrarendiOra.Hetirend; var helyettesites = oOrarendiOra.HelyettesTanarok.SingleOrDefault(x => !x.Torolt && tanitasiOra.Datum == x.HelyettesitesNapja); if (helyettesites != null) { tanoraCo.HelyettesitesElrendelesenekIdopontja = h.HelyettesitesDAL().GetHelyettesitesElrendelese(helyettesites.ID); } } tanoraCo.OrarendiOraGroupId = tanitasiOra.OrarendiOraGroupId.Value; } tanoraCo.EvesOraSorszam = GetOraEvesSorszamaSP(tanitasiOra.TantargyId, tanitasiOra.OsztalyCsoportId, tanitasiOra.OraKezdete, tanitasiOra.TanarId); tanoraCo.LegutobbiModositasIdopontja = tanitasiOraDal.GetTanitasiOraLegutobbiModositasa(tanitasiOraId); return tanoraCo; }); } /// INFO @DevKornel: Mobil használja public NaplozasResultCo TanoraNaplozas(TanoraCO tanoraCo, List mulasztasCo, IFileServiceHelper fileServiceHelper, ICoreApiClient coreApiClient) { var naplozasResult = new NaplozasResultCo(); ITanitasiOra tanitasiOra = null; Dal.CustomConnection.Run(ConnectionType, (h) => { tanitasiOra = SaveorUpdatTanoraBasedOnCo(h, tanoraCo, FelhasznaloId); naplozasResult.TanitasiOraId = tanitasiOra.ID; if (mulasztasCo != null && mulasztasCo.Count > 0) { var parhuzamosOraKezeles = new SystemSettingsHelper(new DalHandlerConnectionType(ConnectionType, h)).GetSystemSettingValue(RendszerBeallitasTipusEnum.A_foglalkozasok_mulasztasi_adatai_megadasanal_a_parhuzamos_orakkal_valo_utkozes_vizsgalata); var osztalycsoportTanuloi = new OsztalyCsoportHelper(new DalHandlerConnectionType(ConnectionType, h)).GetOsztalyCsoportTanuloi(tanoraCo.OsztCsop.Value, tanoraCo.Datum); var tiltoList = new List(); var mulasztasDal = h.MulasztasDal(); if (parhuzamosOraKezeles) { tiltoList = mulasztasDal.GetParhuzamosOraNaplozottMulasztasTanuloId(tanoraCo.OraKezd, tanoraCo.OraVeg, tanoraCo.ID ?? -1).Tables[0].AsEnumerable() .Select(r => r.Field("TanuloId")) .ToList(); } var igazolasDal = h.IgazolasDal(); var igazolasokAzAdottNapra = igazolasDal.GetIgazolasokByDate(tanoraCo.OraKezd, TanevId, IntezmenyId).Tables[0].AsEnumerable() .Select(dataRow => new { TanuloId = dataRow.Field("TanuloId"), Tipus = dataRow.Field("Tipus") }).ToList(); var mulasztasList = new List(); mulasztasCo = mulasztasCo.Where(co => osztalycsoportTanuloi.ContainsKey(co.TanuloId.Value)).ToList(); foreach (var co in mulasztasCo) { var mulasztas = new MulasztasBulkUpdateModel(co); var igazolas = igazolasokAzAdottNapra.Find(a => a.TanuloId == mulasztas.OraTanuloId); if (igazolas != null && (mulasztas.Tipus == (int)MulasztasTipusEnum.hianyzas || mulasztas.Tipus == (int)MulasztasTipusEnum.keses)) { mulasztas.Igazolt = "T"; mulasztas.IgazolasTipusa = igazolas.Tipus; } else { if (mulasztas.Tipus == (int)MulasztasTipusEnum.szabadsag) { mulasztas.Igazolt = "T"; mulasztas.IgazolasTipusa = (int)IgazolasTipusEnum.szabadsag; } else if (mulasztas.Tipus == (int)MulasztasTipusEnum.tappenz) { mulasztas.Igazolt = "T"; mulasztas.IgazolasTipusa = (int)IgazolasTipusEnum.Tappenz; } else if (mulasztas.Tipus == (int)MulasztasTipusEnum.betegszabadsag) { mulasztas.Igazolt = "T"; mulasztas.IgazolasTipusa = (int)IgazolasTipusEnum.betegszabadsag; } else { var mulEntity = co.ID.IsEntityId() ? mulasztasDal.Get(co.ID.Value) : null; if (mulEntity != null && mulEntity.Igazolt != null) { mulasztas.Igazolt = mulEntity.Igazolt.Value.ToSDABoolean(); mulasztas.IgazolasTipusa = mulEntity.IgazolasTipusa; } else { mulasztas.Igazolt = null; mulasztas.IgazolasTipusa = null; } } } mulasztas.TanitasiOrakId = tanitasiOra.ID; if (tiltoList.Contains(mulasztas.OraTanuloId.Value)) { if (mulasztas.Tipus == (int)MulasztasTipusEnum.hianyzas || mulasztas.Tipus == (int)MulasztasTipusEnum.keses) { mulasztas.Tipus = (int)MulasztasTipusEnum.ures; mulasztas.KesesPercben = null; } } if (co.ID.HasValue) { if (mulasztas.Tipus == (int)MulasztasTipusEnum.jelenlet) { mulasztas.Op = MulasztasBulkUpdateModel.DbMuvelet.Delete; } else { mulasztas.Op = MulasztasBulkUpdateModel.DbMuvelet.Update; } mulasztasList.Add(mulasztas); } else if (mulasztas.Tipus != (int)MulasztasTipusEnum.jelenlet) { mulasztas.Op = MulasztasBulkUpdateModel.DbMuvelet.Insert; mulasztasList.Add(mulasztas); } var helper = new FeljegyzesHelper(new DalHandlerConnectionType(ConnectionType, h)); helper.SaveAutomatikusFeljegyzesek(h, co, tanoraCo.Targy.Value, tanitasiOra); } mulasztasDal.BulkSaveMulastas(JsonConvert.SerializeObject(mulasztasList), FelhasznaloId, DateTime.Now, IntezmenyId, TanevId); } }); Dal.CustomConnection.Run(ConnectionType, (h) => { if (!string.IsNullOrWhiteSpace(tanoraCo.HaziFeladat) || tanoraCo.HaziFeladatId.HasValue) { try { naplozasResult.HazifeladatId = SaveNaplozasHaziFeladat(h, tanoraCo, tanitasiOra, fileServiceHelper, coreApiClient); } catch (ValidationException e) { naplozasResult.DKTHiba = true; } } if (tanoraCo.CheckedOpenBoardFileIdList != null && !(tanoraCo.MobilNaplozott ?? false)) { h.OraFile().UpdateLathatoFileok(IntezmenyId, TanevId, tanoraCo.ID, tanoraCo.OrarendiOra, tanoraCo.Datum.Date, tanoraCo.CheckedOpenBoardFileIdList); } }); return naplozasResult; } public DataSet GetDiakTanorai(int felhasznaloId) { return Dal.CustomConnection.Run(ConnectionType, (h) => h.TanitasiOra(GridParameters).getTanuloTanorai(felhasznaloId) ); } public List GetTanulasiEgysegek() { var ds = Dal.CustomConnection.Run(ConnectionType, (h) => h.TanitasiOra().GetTanulasiEgysegDataSet(TanevId) ); var result = new List(); foreach (DataRow dataRow in ds.Tables[0].Rows) { var item = new TanulasiEgysegCo(dataRow); result.Add(item); } return result; } public DataSet GetTanorak(TanoraKeresoCO keresoProfil) { var dataSet = Dal.CustomConnection.Run(ConnectionType, (h) => h.TanitasiOra(GridParameters).GetTanorakDataSet(ConvertCOToPCO(keresoProfil), TanevId, IntezmenyId) ); dataSet.Tables[0].Columns.Add("OraSorszTxt"); foreach (DataRow row in dataSet.Tables[0].Rows) { int oraSorszam = SDAConvert.ToInt32(row["OraSorsz"]); row["OraSorszTxt"] = oraSorszam < 0 ? OrarendResource.ElmaradtOra : oraSorszam == 0 ? "-" : oraSorszam.ToString(); if (oraSorszam < 0) { row["Tema"] = OrarendResource.ElmaradtOra; } } return dataSet; } public DataSet GetTanorak(TanorakSearchCO co) { return Dal.CustomConnection.Run(ConnectionType, (h) => h.TanitasiOra(GridParameters).GetTanorakForTanarHaladasiNaplo(ConvertTanorakSearchCOToTanoraKeresesePCO(co), TanevId, IntezmenyId) ); } public void SaveAdminNemMegtartottOra(int orarendiOraId, DateTime kezdDatum, DateTime zaroDatum, string megjegyzes = null) { try { Dal.CustomConnection.Run(ConnectionType, (h) => { var tanitasiOradal = h.TanitasiOra(); var orarendiOradal = h.OrarendiOra(); var oTanitasiOra = tanitasiOradal.Get(); var oOra = orarendiOradal.Get(orarendiOraId); oTanitasiOra.HetNapja = oOra.HetNapja; if (oOra.CsengetesirendId.HasValue) { oTanitasiOra.Oraszam = oOra.Oraszam.Value; oTanitasiOra.CsengetesirendId = oOra.CsengetesirendId; } oTanitasiOra.FoglalkozasId = oOra.FoglalkozasId; oTanitasiOra.CsengetesirendOraId = oOra.CsengetesirendOraId; //oTanitasiOra.OrarendiOraId = oOra.ID; //--> K.Hunor: Elmaradt oranal NULL-t kell menteni, maskepp nem lehet torolni majd az orarendi orat oTanitasiOra.OrarendiOraGroupId = oOra.OrarendiOraGroupId; oTanitasiOra.OsztalyCsoportId = oOra.OsztalyCsoportId; oTanitasiOra.TantargyId = oOra.TantargyId; oTanitasiOra.BejegyzesIdeje = DateTime.Now; oTanitasiOra.Datum = Convert.ToDateTime(kezdDatum.ToShortDateString()); oTanitasiOra.OraKezdete = kezdDatum; oTanitasiOra.OraVege = zaroDatum; var naptariNapDal = h.NaptariNap(); var naptariNapId = naptariNapDal.GetNaptariNapId(new DateTime(oTanitasiOra.Datum.Year, oTanitasiOra.Datum.Month, oTanitasiOra.Datum.Day)); if (naptariNapId.HasValue) { oTanitasiOra.NaptariNapId = naptariNapId.Value; var nap = naptariNapDal.Get(naptariNapId.Value); oTanitasiOra.HetSorszama = nap.HetSorszama; } var dal = h.Felhasznalo(); int adminUserId = dal.GetFelhasznaloIdByUserName("admin", IntezmenyId, TanevId); oTanitasiOra.NapSorszama = oTanitasiOra.Datum.DayOfYear; oTanitasiOra.OraTulajdonosId = adminUserId; oTanitasiOra.IKTTanora = oOra.IKTTanora; oTanitasiOra.NemSzakrendszeruOra = oOra.NemSzakrendszeruOra; oTanitasiOra.TAMOPOra = oOra.TAMOPOra; oTanitasiOra.KIPOra = oOra.KIPOra; oTanitasiOra.VEKOP73317 = oOra.VEKOP73317; oTanitasiOra.KAPOra = oOra.KAPOra; oTanitasiOra.Tulora = oOra.Tulora; oTanitasiOra.Bontott = oOra.Bontott; oTanitasiOra.ParhuzamosOra = oOra.ParhuzamosOra; oTanitasiOra.TIOP12 = oOra.TIOP12; oTanitasiOra.IPRTanora = oOra.IPRTanora; oTanitasiOra.Kooperativ = oOra.Kooperativ; oTanitasiOra.MindennaposTestneveles = oOra.MindennaposTestneveles; oTanitasiOra.Meres = oOra.Meres; oTanitasiOra.NemzetisegiOra = oOra.NemzetisegiOra; oTanitasiOra.IsFelnottoktatasiSzerzodes = oOra.IsFelnottoktatasiSzerzodes; oTanitasiOra.Differencialt = oOra.Differencialt; oTanitasiOra.Drama = oOra.Drama; oTanitasiOra.TeremId = oOra.Terem.ID; oTanitasiOra.Sorszamozando = false; oTanitasiOra.Megtartott = false; oTanitasiOra.Megjegyzes = megjegyzes ?? string.Empty; oTanitasiOra.Tema = string.Empty; oTanitasiOra.HaziFeladat = null; oTanitasiOra.AdminAltalKiirt = true; oTanitasiOra.TanarId = oOra.TanarId; oTanitasiOra.EFOP23517 = oOra.EFOP23517; tanitasiOradal.Insert(oTanitasiOra); SendOrarendValtozasNotification(h, orarendiOraId, kezdDatum); }); } catch (UniqueKeyViolationException) { throw new BlException(OrarendResource.ATanitasioraMarRogzitesreKerult + " " + OrarendResource.KerjukFrissitseAzOldalt); } } private void SendOrarendValtozasNotification(IDalHandler h, int orarendiOraId, DateTime datum) { var orarendiOraHelper = new OrarendiOraHelper(new DalHandlerConnectionType(ConnectionType, h)); orarendiOraHelper.OrarendValtozasCacheMentes(orarendiOraId, datum); } public void NaplozasTorlese(int tanitasiOraId, bool isElmaradtOraFigyeles = false) { Dal.CustomConnection.Run(ConnectionType, h => { if (isElmaradtOraFigyeles && IsElmaradtOraAndPedagogusHasNemkotottMunkaido(h, tanitasiOraId)) { var tanarNev = GetOratTartoPedagogus(h, tanitasiOraId); throw new BlException(string.Format(OrarendResource.OraNemAllithatoVisszaMertAzAlkalmazottnakRogzitettTevekenysegeVan, tanarNev)); } var dal = h.TanitasiOra(); new DktFeladatHelper(new DalHandlerConnectionType(ConnectionType, h)).DeleteDktFeladatTanitasiOra(tanitasiOraId); dal.Delete(tanitasiOraId); new TanoraHelper(new DalHandlerConnectionType(ConnectionType, h)).UpdateTanitasiOraEvesSorszamTanitasiOra(tanitasiOraId); }); } public IDictionary GetTemaIdAndNameForNaplozasDDL(int targyID = -1, int osztcsopID = -1, int tanarID = -1, int? szervezetTipusId = null) //Nem CreateDropDownContent, mert itt nem Value szerinti rendezés kell { var ds = Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.Tanmenet(GridParameters); return dal.GetTemakByTargyEsOsztCsop(targyID, osztcsopID, tanarID); }); IDictionary result = new Dictionary(); if (ds.Tables.Count < 1) return result; var dt = ds.Tables[0]; /* Ez a Whitespace-es megoldás tudatosan lett belerakva, * mert a másik oldalon mikor a táblába íródik az érték * akkor trimelve van a szöveg. #OM-534 */ string ws = " "; foreach (var item in dt.AsEnumerable().OrderBy(r => r.Field("Sorsz"))) { string temaText = item.Field("Tema").ReplaceMultipleSpacesAndTrim(); string temaId = item.Field("ID").ToString(); if (!result.ContainsKey(temaText)) { result.Add(szervezetTipusId.HasValue ? temaId : temaText, temaText); } else { result.Add(szervezetTipusId.HasValue ? temaId : temaText + ws, temaText); ws += " "; } } return result; } public bool TanitasiOraTeremUtkozesEllenorzes(int tanitasiOraID, int orarendiOraID, int teremID, int hetNapja, int hetirend, DateTime oraKezdete, DateTime oraVege) { return Dal.CustomConnection.Run(ConnectionType, (h) => h.TanitasiOra().TanitasiOraTeremUtkozesEllenorzes(IntezmenyId, tanitasiOraID, orarendiOraID, teremID, hetNapja, hetirend, oraKezdete, oraVege) ); } public int GetTanitasiOraFoglalkozasa(int oraID) { return Dal.CustomConnection.Run(ConnectionType, h => { return h.TanitasiOra().Get(oraID).FoglalkozasId; }); } public int GetTanitasiCsengetesiRendOraIdja(int oraID) { return Dal.CustomConnection.Run(ConnectionType, h => { var dal = h.TanitasiOra(); var ora = dal.Get(oraID); if (ora.CsengetesirendOraId.HasValue) return ora.CsengetesirendOraId.Value; return -1; }); } public IDictionary GetMegtartottOraByDatumAndOsztalyFonok(DateTime datum, int ofoId) { return Dal.CustomConnection.Run(ConnectionType, (h) => LogicUtil.CreateDropdownContent(h.TanitasiOra().GetMegtartottOraByDatumAndOsztalyFonok(datum, ofoId), "ID", "Nev", null) ); } public string GetOsztalyEsTanarOrai(int tanarId, int osztalycsoportId, DateTime oraKezdete, DateTime oraVege, int? modositottTanitasiOraId, int? modositottOrarendiOraId) { StringBuilder errorMsg = new StringBuilder(); return Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.OrarendiOra(); var ds = dal.GetOsztalyEsTanarOraiUtkozes(IntezmenyId, TanevId, tanarId, osztalycsoportId, oraKezdete, oraVege); if (ds.Tables[0].Rows.Count > 0) { foreach (DataRow row in ds.Tables[0].Rows) { ITanitasiOra tanora = h.TanitasiOra().Get(); IOrarendiOra orarendiora = h.OrarendiOra().Get(); var orarendiOraId = row.Field("OrarendiOraId"); var tanitasiOraId = row.Field("TanitasiOraId"); var rowOsztalyCsoportId = row.Field("OsztalyCsoportId"); var nemkotottMunkaido = row.Field("NemKotottMunkaido"); var nemkotottMunkaidoMsg = string.Empty; if (nemkotottMunkaido.HasValue && nemkotottMunkaido.Value > 0) { nemkotottMunkaidoMsg = OrarendResource.TanoraFelvitelUtkozesNemKotottMunkaido; } var tanitasiOraMsg = string.Empty; if (tanitasiOraId.HasValue && tanitasiOraId.Value > 0 && tanitasiOraId.Value != modositottTanitasiOraId) { tanora = h.TanitasiOra().Get(tanitasiOraId.Value); if (tanora.Megtartott) { StringBuilder tanarString = new StringBuilder(); if (!string.IsNullOrWhiteSpace(tanarString.ToString())) { tanarString.Append(" ,").Append(tanora.Tanar.NyomtatasiNev); } else { tanarString.Append(tanora.Tanar.NyomtatasiNev); } tanitasiOraMsg = string.Format(OrarendResource.TanoraFelvitelUtkozesTanitasiOra, tanora.OsztalyCsoport.Nev, tanora.Tantargy.Nev, tanarString); } } var orarendiOraMsg = string.Empty; if (orarendiOraId.HasValue && orarendiOraId.Value > 0 && orarendiOraId.Value != modositottOrarendiOraId && !tanitasiOraId.HasValue) { orarendiora = h.OrarendiOra().Get(orarendiOraId.Value); if (!IsOrarendiOraHasElmaradtOra(oraKezdete.Date, orarendiora.OrarendiOraGroupId.Value)) { if (orarendiora.CsengetesirendId.HasValue) { //Órarendi óra orarendiOraMsg = string.Format(OrarendResource.TanoraFelvitelUtkozesOrarendiOra, orarendiora.OsztalyCsoport.Nev, orarendiora.Tantargy.Nev, orarendiora.Tanar.NyomtatasiNev); } else { //Napirendi óra orarendiOraMsg = string.Format(OrarendResource.TanoraFelvitelUtkozesNapirendiOra, orarendiora.OsztalyCsoport.Nev, orarendiora.Tantargy.Nev, orarendiora.Tanar.NyomtatasiNev); } } } if (!string.IsNullOrWhiteSpace(orarendiOraMsg) || !string.IsNullOrWhiteSpace(tanitasiOraMsg) || !string.IsNullOrWhiteSpace(nemkotottMunkaidoMsg)) { errorMsg.Append($"
{orarendiOraMsg}{tanitasiOraMsg}{nemkotottMunkaidoMsg}"); } } } return errorMsg.ToString(); }); } public byte[] GetHelyettesitettTanorakExcelExport(TanoraKeresoCO searchModel) { DataSet dataSet = Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); return dal.GetHelyettesitettTanorakForExport(TanevId, IntezmenyAzonosito, ConvertCOToPCO(searchModel)); }); return GetTanorakExcelExport(TanorakExportTipusEnum.Helyettesitett, dataSet.Tables[0], 13, OrarendResource.HelyettesitettTanorak, new Dictionary { { 11, 35.14 } }); } public byte[] GetElmaradtTanorakExcelExport(TanoraKeresoCO searchModel) { DataSet dataSet = Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); return dal.GetElmaradtTanorakForExport(TanevId, IntezmenyAzonosito, ConvertCOToPCO(searchModel)); }); return GetTanorakExcelExport(TanorakExportTipusEnum.Elmaradt, dataSet.Tables[0], 13, OrarendResource.ElmaradtTanorak); } public byte[] GetMegtartottTanorakExcelExport(TanoraKeresoCO searchModel) { DataSet dataSet = Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); return dal.GetMegtartottTanorakForExport(TanevId, IntezmenyAzonosito, ConvertCOToPCO(searchModel)); }); return GetTanorakExcelExport(TanorakExportTipusEnum.Megtartott, dataSet.Tables[0], 13, OrarendResource.MegtartottTanorak); } public DataSet GetMegtartottTanorakExport(TanoraKeresoCO searchModel, bool isShowId = false) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var dataSet = h.TanitasiOra().GetMegtartottTanorakForExport(TanevId, IntezmenyAzonosito, ConvertCOToPCO(searchModel), isShowId); TanoraAdatokSorrendezeseExcelbe(dataSet.Tables[0], 13, TanorakExportTipusEnum.Megtartott); return dataSet; }); } /// INFO @DevKornel: Mobil használja public DataSet GetTanuloFeljegyzesek(int tanoraId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(GridParameters); return dal.GetTanuloFeljegyzesek(tanoraId); }); } /// INFO @DevKornel: Mobil használja public DataSet GetTanuloMulasztasok(int tanoraId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(GridParameters); return dal.GetTanuloMulasztasok(tanoraId); }); } public bool IsValidTanoraId(int tanoraId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { try { var tanora = h.TanitasiOra().Get(tanoraId); if (tanora.Torolt) return false; } catch { return false; } return true; }); } private bool IsOrarendiOraHasElmaradtOra(DateTime date, int orarendiOraGroupId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { return h.OrarendiOra().IsOrarendiOraHasElmaradtOra(date, orarendiOraGroupId); }); } private TanoraCO GetTantargyMegtartottTanoraiData(IDalHandler h, int oraId, DateTime oraDatum, bool isTanora, bool isTanuloOrGondviselo) { var newOra = new TanoraCO(); var orarendiOraDal = h.OrarendiOra(); var tanmenetDal = h.Tanmenet(); var tanitasiOraDal = h.TanitasiOra(); var foglalkozasDal = h.Foglalkozas(); var ocsHelper = new OsztalyCsoportHelper(new DalHandlerConnectionType(ConnectionType, h)); IOrarendiOra oOrarendiOra = orarendiOraDal.Get(); ITanitasiOra oTanitasiOra = tanitasiOraDal.Get(); var dktFeladatHelper = new DktFeladatHelper(new DalHandlerConnectionType(ConnectionType, h)); if (!isTanora) { oOrarendiOra = orarendiOraDal.Get(oraId); #region Órarendi órából jövő adatok newOra.OrarendiOra = oOrarendiOra.ID; newOra.OrarendiOraGroupId = oOrarendiOra.OrarendiOraGroupId ?? 0; newOra.HetNapja = oOrarendiOra.HetNapja; newOra.HetNapjaNev = oOrarendiOra.HetNapja.GetDisplayName(TanevId); newOra.Hetirend = oOrarendiOra.Hetirend; newOra.HetirendNev = oOrarendiOra.Hetirend.GetDisplayName(TanevId); newOra.IktTanora = oOrarendiOra.IKTTanora; newOra.NemSzakrendszeru = oOrarendiOra.NemSzakrendszeruOra; if (oOrarendiOra.Oraszam.HasValue) { newOra.Oraszam = oOrarendiOra.Oraszam.Value; } newOra.CsengetesiRendID = oOrarendiOra.CsengetesirendId; newOra.Sorszamozando = oOrarendiOra.Sorszamozando; newOra.TAMOP = oOrarendiOra.TAMOPOra; newOra.KIPOra = oOrarendiOra.KIPOra; newOra.VEKOP73317 = oOrarendiOra.VEKOP73317; newOra.KAPOra = oOrarendiOra.KAPOra; newOra.Tulora = oOrarendiOra.Tulora; newOra.Bontott = oOrarendiOra.Bontott; newOra.NemzetisegiOra = oOrarendiOra.NemzetisegiOra; newOra.IsFelnottoktatasiSzerzodes = oOrarendiOra.IsFelnottoktatasiSzerzodes; newOra.MindennaposTestneveles = oOrarendiOra.MindennaposTestneveles; newOra.IPRTanora = oOrarendiOra.IPRTanora; newOra.Differencialt = oOrarendiOra.Differencialt; newOra.Kooperativ = oOrarendiOra.Kooperativ; newOra.Meres = oOrarendiOra.Meres; newOra.Drama = oOrarendiOra.Drama; newOra.Tiop = oOrarendiOra.TIOP12; newOra.ParhuzamosOra = oOrarendiOra.ParhuzamosOra; newOra.Multikulturalis = oOrarendiOra.MultikulturalisOra; newOra.EFOP32317 = oOrarendiOra.EFOP32317; newOra.KomplexOra = oOrarendiOra.KomplexOra; newOra.GINOP623 = oOrarendiOra.GINOP623; newOra.EFOP31716EselyteremtesAKoznevelesben = oOrarendiOra.EFOP31716; newOra.EFOP33717 = oOrarendiOra.EFOP33717; newOra.TIOP11112120120001 = oOrarendiOra.TIOP1111212012001; newOra.DFHT = oOrarendiOra.IsDfhtOra; newOra.Rahangolodas = oOrarendiOra.IsRahangolodas; newOra.Testmozgas = oOrarendiOra.IsTestmozgasAlapuAlprogram; newOra.Muveszet = oOrarendiOra.IsMuveszetAlapuAlprogram; newOra.Eletgyakorlat = oOrarendiOra.IsEletgyakorlatAlapuAlprogram; newOra.Logika = oOrarendiOra.IsLogikaAlapuAlprogram; newOra.TeOrad = oOrarendiOra.IsTeorad; newOra.DigitalisAlapProgram = oOrarendiOra.IsDigitalisAlapuAlprogram; newOra.EFOP23517201700038Miapalya = oOrarendiOra.EFOP23517; GetOrarendiOraOrTanitasiOraTulajdonsag(newOra, isTanora); newOra.Terem = oOrarendiOra.Terem != null ? (int?)oOrarendiOra.TeremId : null; newOra.TeremNev = oOrarendiOra.Terem?.Nev; newOra.Fogl = oOrarendiOra.FoglalkozasId; if (oOrarendiOra.FoglalkozasId != -1) { var foglalkozas = GetFoglalkozas(foglalkozasDal, oOrarendiOra.FoglalkozasId); //csak addig kell, amíg a foglalkozások kivezetése zajlik if (foglalkozas != null) { newOra.FoglalkozasNev = foglalkozas.FoglalkozasTipusa.GetDisplayName(TanevId); } } newOra.OsztalyfonokiOra = oOrarendiOra.Tantargy.TargyKategoria == (int)TargyKategoriaTipusEnum.osztalyfonoki_elet_es_palyatervezes; var tanoraId = tanitasiOraDal.GetTanoraByOrarendiOraGroupId(oOrarendiOra.OrarendiOraGroupId ?? 0, oraDatum); if (tanoraId > 0) { oTanitasiOra = tanitasiOraDal.Get(tanoraId); newOra.Megtartott = oTanitasiOra.Megtartott; } newOra.IsTanoranKivuli = !oOrarendiOra.CsengetesirendId.HasValue; if (!oOrarendiOra.CsengetesirendId.HasValue) { newOra.OraKezd = new DateTime(oraDatum.Year, oraDatum.Month, oraDatum.Day, oOrarendiOra.OraKezdete.Value.Hour, oOrarendiOra.OraKezdete.Value.Minute, 0, 0); newOra.OraVeg = new DateTime(oraDatum.Year, oraDatum.Month, oraDatum.Day, oOrarendiOra.OraVege.Value.Hour, oOrarendiOra.OraVege.Value.Minute, 0, 0); } else { var kezdetOraPerc = oOrarendiOra.OraKezdete; var vegeOraPerc = oOrarendiOra.OraVege; newOra.OraKezd = new DateTime(oraDatum.Year, oraDatum.Month, oraDatum.Day, kezdetOraPerc.Value.Hour, kezdetOraPerc.Value.Minute, 0, 0); newOra.OraVeg = new DateTime(oraDatum.Year, oraDatum.Month, oraDatum.Day, vegeOraPerc.Value.Hour, vegeOraPerc.Value.Minute, 0, 0); } var hetSzam = 0; var hetHelper = new NaptariHetHelper(new DalHandlerConnectionType(ConnectionType, h)); hetSzam = hetHelper.GetNaptariHetSorszamByDate(oraDatum); var helyettesites = oOrarendiOra.HelyettesTanarok.SingleOrDefault(x => !x.Torolt && x.HetSorszama == hetSzam && oraDatum.Date == x.HelyettesitesNapja.Date); if (helyettesites != null) { newOra.Helyettesito = helyettesites.HelyettesTanarokId; if (newOra.Helyettesito.HasValue) { newOra.HelyettesitesTipus = helyettesites.HelyettesitesTipus; newOra.HelyettesitesOka = helyettesites.HelyettesitesOka; newOra.HelyettesitesId = helyettesites.ID; newOra.HelyettesIsTulora = helyettesites.IsTulora; } } newOra.EvesOraSorszam = GetOraEvesSorszama(h, oOrarendiOra.TantargyId, oOrarendiOra.OsztalyCsoportId, newOra.OraKezd, oOrarendiOra.TanarId); if (newOra.HelyettesitesTipus == (int)HelyettesitesTipusEnum.nem_szakszeru_helyettesites_felugyelet_ || newOra.HelyettesitesTipus == (int)HelyettesitesTipusEnum.osszevont_felugyelet) { if (new SystemSettingsHelper(new DalHandlerConnectionType(ConnectionType, h)).GetSystemSettingValue(RendszerBeallitasTipusEnum.Helyettesites_eseten_felugyelet_alapertelmezetten_sorszamozando)) { newOra.EvesOraSorszam += 1; newOra.Sorszamozando = true; } else { newOra.Sorszamozando = false; } } else { newOra.EvesOraSorszam += 1; } newOra.TemaTanmenetId = GetTemaId(h, newOra.EvesOraSorszam.Value, (int)newOra.Fogl); string elozoOraTema = null; newOra.Tema = tanmenetDal.GetTemaEvesOraSorszamhoz(oOrarendiOra.TantargyId, oOrarendiOra.OsztalyCsoportId, oOrarendiOra.TanarId, newOra.EvesOraSorszam.Value, elozoOraTema); Enum.TryParse(ocsHelper.GetOsztalyCsoportFeladatKategoria(oOrarendiOra.OsztalyCsoportId).ToString(), out OktNevelesiKategoriaEnum kategoria); var hazi = dktFeladatHelper.GetOrarendiOraHaziFeladatDetail(oOrarendiOra.ID, oraDatum, isTanuloOrGondviselo, null, kategoria); if (hazi.Id.HasValue) { newOra.HaziFeladatId = hazi.Id; newOra.HaziFeladat = hazi.Szoveg; newOra.HaziHatarideje = hazi.Hatarido; if (hazi.Csatolmanyok.Count == 1) newOra.HaziFeladatCsatolmanyId = hazi.Csatolmanyok.First().Key; } #endregion Órarendi órából jövő adatok } else { oTanitasiOra = tanitasiOraDal.Get(oraId); if (oTanitasiOra.Torolt) { throw new BlException(ErrorResource.ATanitasiOratIdokozbenToroltekKerjukFrissitsen, BlExceptionType.ModelValidacio); } if (oTanitasiOra.OrarendiOraGroupId > 0) { int ooId = tanitasiOraDal.GetOrarendiOraByTanoraGroupId(oTanitasiOra.OrarendiOraGroupId.Value, oTanitasiOra.Datum); if (ooId > 0) { oOrarendiOra = orarendiOraDal.Get(ooId); newOra.OrarendiOra = oOrarendiOra.ID; newOra.Hetirend = oOrarendiOra.Hetirend; newOra.HetirendNev = oOrarendiOra.Hetirend.GetDisplayName(TanevId); } } newOra.OrarendiOraGroupId = oTanitasiOra.OrarendiOraGroupId ?? 0; newOra.IktTanora = oTanitasiOra.IKTTanora; newOra.NemSzakrendszeru = oTanitasiOra.NemSzakrendszeruOra; newOra.TAMOP = oTanitasiOra.TAMOPOra; newOra.KIPOra = oTanitasiOra.KIPOra; newOra.VEKOP73317 = oTanitasiOra.VEKOP73317; newOra.KAPOra = oTanitasiOra.KAPOra; newOra.Tulora = oTanitasiOra.Tulora; newOra.Bontott = oTanitasiOra.Bontott; newOra.ParhuzamosOra = oTanitasiOra.ParhuzamosOra; newOra.Tiop = oTanitasiOra.TIOP12; newOra.IPRTanora = oTanitasiOra.IPRTanora; newOra.Kooperativ = oTanitasiOra.Kooperativ; newOra.MindennaposTestneveles = oTanitasiOra.MindennaposTestneveles; newOra.Meres = oTanitasiOra.Meres; newOra.NemzetisegiOra = oTanitasiOra.NemzetisegiOra; newOra.IsFelnottoktatasiSzerzodes = oTanitasiOra.IsFelnottoktatasiSzerzodes; newOra.Differencialt = oTanitasiOra.Differencialt; newOra.Drama = oTanitasiOra.Drama; newOra.Multikulturalis = oTanitasiOra.MultikulturalisOra; newOra.EFOP32317 = oTanitasiOra.EFOP32317; newOra.KomplexOra = oTanitasiOra.KomplexOra; newOra.GINOP623 = oTanitasiOra.GINOP623; newOra.EFOP31716EselyteremtesAKoznevelesben = oTanitasiOra.EFOP31716; newOra.EFOP33717 = oTanitasiOra.EFOP33717; newOra.TIOP11112120120001 = oTanitasiOra.TIOP1111212012001; newOra.DFHT = oTanitasiOra.IsDfhtOra; newOra.Rahangolodas = oTanitasiOra.IsRahangolodas; newOra.Testmozgas = oTanitasiOra.IsTestmozgasAlapuAlprogram; newOra.Muveszet = oTanitasiOra.IsMuveszetAlapuAlprogram; newOra.Eletgyakorlat = oTanitasiOra.IsEletgyakorlatAlapuAlprogram; newOra.Logika = oTanitasiOra.IsLogikaAlapuAlprogram; newOra.TeOrad = oTanitasiOra.IsTeorad; newOra.DigitalisAlapProgram = oTanitasiOra.IsDigitalisAlapuAlprogram; newOra.EFOP23517201700038Miapalya = oTanitasiOra.EFOP23517; newOra.ID = oTanitasiOra.ID; newOra.OsztalyfonokiOra = oTanitasiOra.Osztalyfonoki; GetOrarendiOraOrTanitasiOraTulajdonsag(newOra, isTanora); newOra.IsTanoranKivuli = !oTanitasiOra.CsengetesirendId.HasValue; newOra.HetNapja = oTanitasiOra.HetNapja; newOra.HetNapjaNev = oTanitasiOra.HetNapja.GetDisplayName(TanevId); if (oTanitasiOra.Oraszam.HasValue) newOra.Oraszam = oTanitasiOra.Oraszam.Value; else if (oOrarendiOra.Oraszam.HasValue) newOra.Oraszam = oOrarendiOra.Oraszam.Value; newOra.CsengetesiRendID = oTanitasiOra.CsengetesirendId; newOra.Sorszamozando = oTanitasiOra.Sorszamozando; newOra.Terem = oTanitasiOra.Terem != null ? (int?)oTanitasiOra.TeremId : null; newOra.TeremNev = oTanitasiOra.Terem?.Nev; newOra.EvesOraSorszam = GetOraEvesSorszamaSP(oTanitasiOra.TantargyId, oTanitasiOra.OsztalyCsoportId, oraDatum, oTanitasiOra.TanarId); newOra.Fogl = oTanitasiOra.FoglalkozasId; if (oTanitasiOra.FoglalkozasId != -1) { var foglalkozas = GetFoglalkozas(foglalkozasDal, oTanitasiOra.FoglalkozasId); newOra.FoglalkozasNev = foglalkozas == null ? "" : foglalkozas.FoglalkozasTipusa.GetDisplayName(TanevId); } newOra.TemaTanmenetId = GetTemaId(h, (int)newOra.EvesOraSorszam, (int)newOra.Fogl); newOra.Tema = oTanitasiOra.Tema; if (oTanitasiOra.TanulasiEgysegId.IsEntityId()) { newOra.TanulasiEgysegId = oTanitasiOra.TanulasiEgysegId; } newOra.Megjegyzes = oTanitasiOra.Megjegyzes; newOra.Megtartott = oTanitasiOra.Megtartott; newOra.AdminAltalKiirt = oTanitasiOra.AdminAltalKiirt; newOra.OraKezd = oTanitasiOra.OraKezdete; newOra.OraVeg = oTanitasiOra.OraVege; Enum.TryParse(ocsHelper.GetOsztalyCsoportFeladatKategoria(oTanitasiOra.OsztalyCsoportId).ToString(), out OktNevelesiKategoriaEnum kategoria); var hazi = new TanarHaziFeladatDetailCO(); hazi = dktFeladatHelper.GetTanitasiOraHaziFeladatDetail(oTanitasiOra.ID, kategoria, isTanuloOrGondviselo); if (hazi.Id.HasValue) { var csatolmanyok = new DktFileHelper(new DalHandlerConnectionType(ConnectionType, h)).GetCsatolmanyokForHaziFeladat(hazi.Id.Value); newOra.HaziFeladatId = hazi.Id; newOra.HaziFeladat = hazi.Szoveg; newOra.HaziHatarideje = hazi.Hatarido; if (csatolmanyok.Count == 1) newOra.HaziFeladatCsatolmanyId = hazi.Csatolmanyok.First().Key; } newOra.Helyettesito = oTanitasiOra.HelyettesitoTanarId > 0 ? (int?)oTanitasiOra.HelyettesitoTanarId : null; newOra.HelyettesitesitoTanarNeve = oTanitasiOra.HelyettesitoTanarId > 0 ? oTanitasiOra.HelyettesitoTanar.NyomtatasiNev : string.Empty; newOra.BejegyIdo = oTanitasiOra.BejegyzesIdeje; if (newOra.Helyettesito.HasValue) { newOra.HelyettesitesTipus = oTanitasiOra.HelyettesitesTipusa; newOra.HelyettesitesOka = oTanitasiOra.HelyettesitesOka; } newOra.LegutobbiModositasIdopontja = h.TanitasiOra().GetTanitasiOraLegutobbiModositasa(oraId); foreach (var item in oTanitasiOra.Oralatogatasok) { newOra.OraLatogatok.Add(new OraLatogatok { Id = item.ErtekeloId.ToString(), Name = item.Ertekelo.NyomtatasiNev, Datum = item.Datum, ErtekelesSzoveg = item.Megjegyzes }); } } var osztalycsoport = oTanitasiOra.ID > 0 ? oTanitasiOra.OsztalyCsoport : oOrarendiOra.OsztalyCsoport; if (osztalycsoport != null) { newOra.OsztalyCsoportNev = osztalycsoport.Nev; newOra.OsztCsop = osztalycsoport.ID; } var targy = oTanitasiOra.ID > 0 ? oTanitasiOra.Tantargy : oOrarendiOra.Tantargy; if (targy != null) { newOra.Targy = targy.ID; newOra.TantargyNev = targy.Nev; } var tanar = oTanitasiOra.ID > 0 ? (isTanuloOrGondviselo && oTanitasiOra.HelyettesitoTanar != null ? oTanitasiOra.HelyettesitoTanar : oTanitasiOra.Tanar) : oOrarendiOra.Tanar; if (tanar != null) { newOra.Tanar = tanar.ID; newOra.TanarNev = tanar.NyomtatasiNev; } newOra.Tulaj = oTanitasiOra.OraTulajdonosId; newOra.Datum = oraDatum; newOra.DigEszkozTipusId = oTanitasiOra.DigEszkozTipusId; newOra.DigPlatformTipusId = oTanitasiOra.DigPlatformTipusId; newOra.DigTamEszkozTipusIdList = oTanitasiOra.TanitasiOraDigTamEszkoz.Where(x => !x.Torolt).Select(x => x.DigTamEszkozTipusId).ToList(); return newOra; } /// INFO @DevKornel: Mobil használja public void GetOrarendiOraOrTanitasiOraTulajdonsag(TanoraCO newOra, bool isTanora) { var ds = new DataSet(); if (newOra.OrarendiOra.HasValue && isTanora == false) { ds = GetOrarendiOraTulajdonsag(newOra.OrarendiOra.Value); } if (newOra.ID.HasValue && isTanora == true) { ds = GetTanitasiOraTulajdonsag(newOra.ID.Value); } //if (newOra.OrarendiOra.HasValue && newOra.ID.HasValue && !HasTanitasiOraTulajdonsag(newOra.ID.Value)) //{ // ds = GetOrarendiOraTulajdonsag(newOra.OrarendiOra.Value); //} if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { foreach (DataRow row in ds.Tables[0].Rows) { var oraTulajdonsagId = SDAConvert.ToInt32(row["OraTulajdonsagId"]); var oraTulajdonsagTipusEnum = (OraTulajdonsagTipusEnum)oraTulajdonsagId; var ertek = SDAConvert.ToBooleanFromTF(row["Ertek"]); switch (oraTulajdonsagTipusEnum) { case OraTulajdonsagTipusEnum.online_ora: newOra.OnlineOra = ertek; break; case OraTulajdonsagTipusEnum._2019_2020_as_tanev_tananyaganak_ismetlese: newOra.TanevTananyaganakIsmetlese = ertek; break; case OraTulajdonsagTipusEnum._2019_2020_as_tanev_tananyaganak_kiegeszitese: newOra.TanevTananyaganakKiegeszitese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_digitalis_keszsegfejlesztese: newOra.TanulokDigitalisKeszsegfejlesztese = ertek; break; case OraTulajdonsagTipusEnum.projektmunka: newOra.Projektmunka = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_kompenzacios_iraskeszseg_fejlesztese: newOra.TanulokKompenzaciosIraskeszsegFejlesztese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_kompenzacios_olvasasi_kepesseg_fejlesztese: newOra.TanulokKompenzaciosOlvasasiKepessegFejlesztese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_matematikai_gondolkodasi_kepessegenek_kompenzacios_fejlesztese: newOra.TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_nyelvi_kepessegenek_kompenzacios_fejlesztese: newOra.TanulokNyelviKepessegenekKompenzaciosFejlesztese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_onmegismeresenek_segitese: newOra.TanulokOnmegismeresenekSegitese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_onallosagra_nevelese: newOra.TanulokOnallosagraNevelese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_tanulasszervezesi_kompenzacios_technikajanak_erositese: newOra.TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_orientacios_tamogatasa: newOra.TanulokOrientaciosTamogatasa = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_szocialitasanak_fejlesztese: newOra.TanulokSzocialitasanakFejlesztese = ertek; break; case OraTulajdonsagTipusEnum.a_tanulok_tovabbhaladasat_elokeszito_tevekenysegek: newOra.TanulokTovabbhaladasatElokeszitoTevekenysegek = ertek; break; case OraTulajdonsagTipusEnum.pedagogus_altal_jelzett_egyeni_esetkezeles: newOra.PedagogusAltalJelzettEgyeniEsetkezeles = ertek; break; case OraTulajdonsagTipusEnum.projektmunka_tamogatasa: newOra.ProjektmunkaTamogatasa = ertek; break; case OraTulajdonsagTipusEnum.digitalis_keszsegfejlesztes: newOra.DigitalisKeszsegfejlesztes = ertek; break; case OraTulajdonsagTipusEnum.kozossegi_munka_tamogatasa: newOra.KozossegiMunkaTamogatasa = ertek; break; case OraTulajdonsagTipusEnum.tanora_elokeszitesenek_tamogatasa: newOra.TanoraElokeszitesenekTamogatasa = ertek; break; case OraTulajdonsagTipusEnum.tanora_lebonyolitasanak_tamogatasa: newOra.TanoraLebonyolitasanakTamogatasa = ertek; break; case OraTulajdonsagTipusEnum.napkozis_tevekenyseg_kereteben_egyeni_fejlesztes: newOra.NapkozisTevekenysegKeretebenEgyeniFejlesztes = ertek; break; case OraTulajdonsagTipusEnum.egybefuggo_szakmai_gyakorlat: newOra.IsEgybefuggoGyakorlat = ertek; break; default: break; } } } } private IFoglalkozas GetFoglalkozas(IFoglalkozasDal foglalkozasDal, int foglalkozasId) { try { return foglalkozasDal.Get(foglalkozasId); } catch { return null; } } private int? GetTemaId(IDalHandler handler, int evesOraSorszam, int fogl) { var dal = handler.Tanmenet(); return dal.GetTanmenetIdBySorszamEsFoglalkozas(evesOraSorszam, fogl); } private HaladasiNaploTanoraKeresesePCO ConvertTanorakSearchCOToTanoraKeresesePCO(TanorakSearchCO co) { var pco = new HaladasiNaploTanoraKeresesePCO() { Tol = co.IdoszakKezdete, Ig = co.IdoszakVege, Tanar = FelhasznaloId, OsztalyCsoportId = co.OsztalyCsoportId, Helyetesitett = co.Helyetesitett, TantargyId = co.TantargyId, TanarId = co.TanarId, OraKezdete = co.OraKezdete, }; return pco; } private TanoraKeresesePCO ConvertCOToPCO(TanoraKeresoCO keresoProfil) { DateTime? Datum = keresoProfil.Datum == DateTime.MinValue ? null : (DateTime?)keresoProfil.Datum; TanoraKeresesePCO pco = new TanoraKeresesePCO() { Tol = keresoProfil.Tol ?? Datum, Ig = keresoProfil.Ig ?? Datum, OsztCsop = keresoProfil.OsztCsop, KellKapcsolodoCsoportok = keresoProfil.KellKapcsolodoCsoportok, CsopTip = keresoProfil.CsopTip, Fogl = keresoProfil.Fogl, Targy = keresoProfil.Targy, Tanar = keresoProfil.Tanar, Terem = keresoProfil.Terem, FeladatEllatasiHely = keresoProfil.FeladatEllatasiHely, FeladatKategoria = keresoProfil.FeladatKategoria, Elmaradt = keresoProfil.Elmaradt, Sorszamozando = keresoProfil.Sorszamozando, ParhuzamosOra = keresoProfil.ParhuzamosOra, Tulora = keresoProfil.Tulora, TAMOPOra = keresoProfil.TAMOP, KIPOra = keresoProfil.KIPOra, VEKOP73317 = keresoProfil.VEKOP73317, KAPOra = keresoProfil.KAPOra, NemSzakrendszeruOra = keresoProfil.NemSzakrendszeruOra, IKTTanora = keresoProfil.IKTTanora, NemzetisegiOra = keresoProfil.NemzetisegiOra, IsFelnottoktatasiSzerzodes = keresoProfil.IsFelnottoktatasiSzerzodes, OnlineOra = keresoProfil.OnlineOra, MindennaposTestneveles = keresoProfil.MindennaposTestneveles, IPRTanora = keresoProfil.IPRTanora, Differencialt = keresoProfil.Differencialt, Kooperativ = keresoProfil.Kooperativ, Meres = keresoProfil.Meres, Drama = keresoProfil.Drama, Tiop = keresoProfil.Tiop, Bontott = keresoProfil.Bontott, Helyettesitett = keresoProfil.Helyettesitett, EFOP32317 = keresoProfil.EFOP32317, GINOP623 = keresoProfil.GINOP623, MultikulturalisOra = keresoProfil.MultikulturalisOra, KomplexOra = keresoProfil.KomplexOra, EFOP31716EselyteremtesAKoznevelesben = keresoProfil.EFOP31716EselyteremtesAKoznevelesben, EFOP33717 = keresoProfil.EFOP33717, TIOP11112120120001 = keresoProfil.TIOP11112120120001, DFHTOra = keresoProfil.DFHTOra, Rahangolodas = keresoProfil.Rahangolodas, TestmozgasAlapuAlprogram = keresoProfil.TestmozgasAlapuAlprogram, MuveszetAlapuAlprogram = keresoProfil.MuveszetAlapuAlprogram, EletgyakorlatAlapuAlprogram = keresoProfil.EletgyakorlatAlapuAlprogram, LogikaAlapuAlprogram = keresoProfil.LogikaAlapuAlprogram, TeOrad = keresoProfil.TeOrad, DigitalisAlapuAlprogram = keresoProfil.DigitalisAlapuAlprogram, HFRogzitve = keresoProfil.HFRogzitve, EFOP23517201700038Miapalya = keresoProfil.EFOP23517201700038Miapalya, TanevTananyaganakIsmetlese = keresoProfil.TanevTananyaganakIsmetlese, TanevTananyaganakKiegeszitese = keresoProfil.TanevTananyaganakKiegeszitese, TanulokDigitalisKeszsegfejlesztese = keresoProfil.TanulokDigitalisKeszsegfejlesztese, Projektmunka = keresoProfil.Projektmunka, TanulokKompenzaciosIraskeszsegFejlesztese = keresoProfil.TanulokKompenzaciosIraskeszsegFejlesztese, TanulokKompenzaciosOlvasasiKepessegFejlesztese = keresoProfil.TanulokKompenzaciosOlvasasiKepessegFejlesztese, TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese = keresoProfil.TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese, TanulokNyelviKepessegenekKompenzaciosFejlesztese = keresoProfil.TanulokNyelviKepessegenekKompenzaciosFejlesztese, TanulokOnmegismeresenekSegitese = keresoProfil.TanulokOnmegismeresenekSegitese, TanulokOnallosagraNevelese = keresoProfil.TanulokOnallosagraNevelese, TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese = keresoProfil.TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese, TanulokOrientaciosTamogatasa = keresoProfil.TanulokOrientaciosTamogatasa, TanulokSzocialitasanakFejlesztese = keresoProfil.TanulokSzocialitasanakFejlesztese, TanulokTovabbhaladasatElokeszitoTevekenysegek = keresoProfil.TanulokTovabbhaladasatElokeszitoTevekenysegek, PedagogusAltalJelzettEgyeniEsetkezeles = keresoProfil.PedagogusAltalJelzettEgyeniEsetkezeles, ProjektmunkaTamogatasa = keresoProfil.ProjektmunkaTamogatasa, DigitalisKeszsegfejlesztes = keresoProfil.DigitalisKeszsegfejlesztes, KozossegiMunkaTamogatasa = keresoProfil.KozossegiMunkaTamogatasa, TanoraElokeszitesenekTamogatasa = keresoProfil.TanoraElokeszitesenekTamogatasa, TanoraLebonyolitasanakTamogatasa = keresoProfil.TanoraLebonyolitasanakTamogatasa, NapkozisTevekenysegKeretebenEgyeniFejlesztes = keresoProfil.NapkozisTevekenysegKeretebenEgyeniFejlesztes, DigEszkozTipusId = keresoProfil.DigEszkozTipusId, DigPlatformTipusId = keresoProfil.DigPlatformTipusId, DigTamEszkozTipus = keresoProfil.DigTamEszkozTipus }; return pco; } /// INFO @DevKornel: Mobil használja private ITanitasiOra SaveorUpdatTanoraBasedOnCo(IDalHandler h, TanoraCO co, int oraTulajdonosId) { try { var tanitasiOraDal = h.TanitasiOra(); var oraSorszamozasValtozas = false; var oTanitasiOra = co.ID.HasValue ? tanitasiOraDal.Get(co.ID.Value) : tanitasiOraDal.Get(); var orarendiOraDal = h.OrarendiOra(); if (co.ID.HasValue) { if (!oTanitasiOra.CsengetesirendId.HasValue) { oTanitasiOra.OraKezdete = co.OraKezd; oTanitasiOra.OraVege = co.OraVeg; } } else { var naptariNapdal = h.NaptariNap(); if (co.OrarendiOra.HasValue) { var oOra = orarendiOraDal.Get(co.OrarendiOra.Value); oTanitasiOra.HetNapja = oOra.HetNapja; //oTanitasiOra.Oraszam = oOra.Oraszam; oTanitasiOra.FoglalkozasId = oOra.FoglalkozasId; oTanitasiOra.CsengetesirendOraId = oOra.CsengetesirendOraId; oTanitasiOra.OrarendiOraGroupId = co.OrarendiOraGroupId; oTanitasiOra.EgyediNap = oOra.EgyediNap; } else { if (co.HetNapja.HasValue) { oTanitasiOra.HetNapja = co.HetNapja.Value; } if (co.Fogl.HasValue) { oTanitasiOra.FoglalkozasId = co.Fogl.Value; } if (co.CsengetesiRendOraId.HasValue) { oTanitasiOra.CsengetesirendOraId = co.CsengetesiRendOraId.Value; } if (co.OrarendiOraGroupId != 0) { oTanitasiOra.OrarendiOraGroupId = co.OrarendiOraGroupId; } oTanitasiOra.EgyediNap = naptariNapdal.GetIsEgyediNapByDateAndOsztalyCsoportId(co.Datum, TanevId, co.OsztCsop.Value); } oTanitasiOra.OsztalyCsoportId = (int)co.OsztCsop; oTanitasiOra.TantargyId = (int)co.Targy; oTanitasiOra.BejegyzesIdeje = co.BejegyIdo == default ? DateTime.Now : co.BejegyIdo; oTanitasiOra.TanarId = co.Tanar.Value; oTanitasiOra.Datum = Convert.ToDateTime(co.OraKezd.ToShortDateString()); oTanitasiOra.OraKezdete = co.OraKezd; oTanitasiOra.OraVege = co.OraVeg; var tt = h.Tantargy().GetTantargy(co.Targy.Value); if (tt.TargyKategoria == (int)TargyKategoriaTipusEnum.osztalyfonoki_elet_es_palyatervezes) { oTanitasiOra.Osztalyfonoki = true; } //Nem egyértelmű mezők var naptariNapID = naptariNapdal.GetNaptariNapId(new DateTime(oTanitasiOra.Datum.Year, oTanitasiOra.Datum.Month, oTanitasiOra.Datum.Day)); var nap = naptariNapID.HasValue ? naptariNapdal.Get(naptariNapID.Value) : naptariNapdal.Get(); if (naptariNapID.HasValue) { oTanitasiOra.NaptariNapId = nap.ID; } oTanitasiOra.HetSorszama = nap.HetSorszama; oTanitasiOra.NapSorszama = co.OraKezd.DayOfWeek == DayOfWeek.Sunday ? 7 : (int)co.OraKezd.DayOfWeek; //nap.HetNapja volt eddig, most a megbeszéltek alapján 1-től számozódva, hogy hányadik nap a héten... oTanitasiOra.OraTulajdonosId = oraTulajdonosId; // tulaj aki lenaplózta } oTanitasiOra.IKTTanora = co.IktTanora; oTanitasiOra.NemSzakrendszeruOra = co.NemSzakrendszeru; oTanitasiOra.TAMOPOra = co.TAMOP; oTanitasiOra.KIPOra = co.KIPOra; oTanitasiOra.VEKOP73317 = co.VEKOP73317; oTanitasiOra.KAPOra = co.KAPOra; oTanitasiOra.Tulora = co.Tulora; oTanitasiOra.Bontott = co.Bontott; oTanitasiOra.ParhuzamosOra = co.ParhuzamosOra; oTanitasiOra.TIOP12 = co.Tiop; oTanitasiOra.IPRTanora = co.IPRTanora; oTanitasiOra.Kooperativ = co.Kooperativ; oTanitasiOra.MindennaposTestneveles = co.MindennaposTestneveles; oTanitasiOra.Meres = co.Meres; oTanitasiOra.NemzetisegiOra = co.NemzetisegiOra; oTanitasiOra.IsFelnottoktatasiSzerzodes = co.IsFelnottoktatasiSzerzodes; oTanitasiOra.Differencialt = co.Differencialt; oTanitasiOra.Drama = co.Drama; oTanitasiOra.MultikulturalisOra = co.Multikulturalis; oTanitasiOra.EFOP32317 = co.EFOP32317; oTanitasiOra.KomplexOra = co.KomplexOra; oTanitasiOra.GINOP623 = co.GINOP623; oTanitasiOra.EFOP31716 = co.EFOP31716EselyteremtesAKoznevelesben; oTanitasiOra.EFOP33717 = co.EFOP33717; oTanitasiOra.TIOP1111212012001 = co.TIOP11112120120001; oTanitasiOra.IsDfhtOra = co.DFHT; oTanitasiOra.IsRahangolodas = co.Rahangolodas; oTanitasiOra.IsTestmozgasAlapuAlprogram = co.Testmozgas; oTanitasiOra.IsMuveszetAlapuAlprogram = co.Muveszet; oTanitasiOra.IsEletgyakorlatAlapuAlprogram = co.Eletgyakorlat; oTanitasiOra.IsLogikaAlapuAlprogram = co.Logika; oTanitasiOra.IsTeorad = co.TeOrad; oTanitasiOra.IsDigitalisAlapuAlprogram = co.DigitalisAlapProgram; oTanitasiOra.AdminAltalKiirt = co.AdminAltalKiirt; oTanitasiOra.EFOP23517 = co.EFOP23517201700038Miapalya; oTanitasiOra.DigEszkozTipusId = co.DigEszkozTipusId; oTanitasiOra.DigPlatformTipusId = co.DigPlatformTipusId; if (!co.IsTanoranKivuli) { oTanitasiOra.Oraszam = co.Oraszam; oTanitasiOra.CsengetesirendId = co.CsengetesiRendID; } oTanitasiOra.TeremId = (int)co.Terem; var originalSorszamozando = oTanitasiOra.Sorszamozando; oTanitasiOra.Sorszamozando = co.Sorszamozando; if (co.Megtartott.HasValue) { oTanitasiOra.Megtartott = co.Megtartott.Value; } else { oTanitasiOra.Megtartott = true; } if (co.MobilNaplozott.HasValue) { oTanitasiOra.MobilNaplozott = co.MobilNaplozott.Value; } else { oTanitasiOra.MobilNaplozott = false; } oTanitasiOra.Megjegyzes = co.Megjegyzes; oTanitasiOra.Tema = co.Tema; if (co.TanulasiEgysegId.HasValue) { oTanitasiOra.TanulasiEgysegId = co.TanulasiEgysegId.Value; } if (string.IsNullOrWhiteSpace(co.Tema) && co.TemaTanmenetId.IsEntityId()) { var tm = h.Tanmenet().Get(co.TemaTanmenetId.Value); oTanitasiOra.TanmenetId = tm.ID; oTanitasiOra.Tema = tm.Tema; } if (co.Helyettesito.HasValue) { oTanitasiOra.HelyettesitesOka = co.HelyettesitesOka; oTanitasiOra.HelyettesitesTipusa = co.HelyettesitesTipus.Value; oTanitasiOra.HelyettesitoTanarId = co.Helyettesito.Value; } oTanitasiOra.IntezmenyId = IntezmenyId; if (!co.ID.IsEntityId()) { tanitasiOraDal.Insert(oTanitasiOra); oraSorszamozasValtozas = true; } else { if (originalSorszamozando != oTanitasiOra.Sorszamozando) { oraSorszamozasValtozas = true; } tanitasiOraDal.FullUpdate(oTanitasiOra); } co.ID = oTanitasiOra.ID; SaveOrUpdateOraTulajdonsag(tanitasiOraDal, orarendiOraDal, co); SaveTanitasiOraDigTamEszkozList(tanitasiOraDal, co); new DktFeladatHelper(new DalHandlerConnectionType(ConnectionType, h)).UpdateDktFeladatTanitasiOra(co.ID.Value); if (oraSorszamozasValtozas) { tanitasiOraDal.UpdateTanitasiOraEvesSorszamTanitasiOra(IntezmenyId, TanevId, oTanitasiOra.ID); } return oTanitasiOra; } catch (UniqueKeyViolationException ex) { throw new BlException(co.MobilNaplozott.Value ? OrarendResource.ATanitasioraMarRogzitesreKerult : OrarendResource.ATanitasioraMarRogzitesreKerult + " " + OrarendResource.KerjukFrissitseAzOldalt, ex); } } /// INFO @DevKornel: Mobil használja private int SaveNaplozasHaziFeladat(IDalHandler h, TanoraCO tanoraCo, ITanitasiOra tanitasiOra, IFileServiceHelper fileServiceHelper, ICoreApiClient coreApiClient) { var helper = new DktFeladatHelper(new DalHandlerConnectionType(ConnectionType, h)); if (tanoraCo.HaziFeladatId.HasValue && string.IsNullOrWhiteSpace(tanoraCo.HaziFeladat) && !tanoraCo.HaziHatarideje.HasValue) { helper.DeleteHazi(tanoraCo.HaziFeladatId.Value, coreApiClient); return 0; } if (tanoraCo.Megtartott.HasValue && tanoraCo.Megtartott.Value && tanoraCo.HaziHatarideje.HasValue && IsHFValtozott()) { var hazi = new TanarHaziFeladatCO { Id = tanoraCo.HaziFeladatId, OsztalyCsoportId = tanitasiOra.OsztalyCsoportId, TantargyId = tanitasiOra.TantargyId, RogzitoId = tanitasiOra.OraTulajdonosId, IsTanarRogzitette = true, TanitasiOraId = tanitasiOra.ID, FeladasDatuma = tanitasiOra.Datum, Hatarido = tanoraCo.HaziHatarideje.Value, Szoveg = CommonUtils.CreateLinksInText(tanoraCo.HaziFeladat), IntezmenyId = IntezmenyId, IntezmenyAzonosito = IntezmenyAzonosito, CsatolmanyId = tanoraCo.HaziFeladatCsatolmanyId, TanevId = TanevId }; hazi.HelyettesitoId = tanitasiOra.HelyettesitoTanarId != 0 ? tanitasiOra.HelyettesitoTanarId : (int?)null; hazi.Oraszam = tanitasiOra.CsengetesirendId.HasValue ? tanitasiOra.Oraszam : (int?)null; hazi.Idopont = tanitasiOra.OraKezdete; return helper.SaveOrUpdateTanarHaziFeladat(hazi, tanoraCo.Tanar.Value, fileServiceHelper, coreApiClient); } return tanoraCo.HaziFeladatId ?? 0; bool IsHFValtozott() { var feladatkategoria = (OktNevelesiKategoriaEnum)tanitasiOra.OsztalyCsoport.FeladatKategoriaId; var eredetiHazi = helper.GetTanitasiOraHaziFeladatDetail(tanoraCo.ID, feladatkategoria, isTanuloOrGondviselo: false); return (eredetiHazi.Hatarido != tanoraCo.HaziHatarideje.Value || eredetiHazi.Szoveg != tanoraCo.HaziFeladat); } } /// INFO @DevKornel: Mobil használja public DataSet GetOrarendiOraTulajdonsag(int orarendiOraId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.OrarendiOra(); return dal.GetOrarendiOraTulajdonsag(orarendiOraId, TanevId); }); } /// INFO @DevKornel: Mobil használja public DataSet GetTanitasiOraTulajdonsag(int tanitasiOraId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); return dal.GetTanitasiOraTulajdonsag(tanitasiOraId, TanevId); }); } public bool HasTanitasiOraTulajdonsag(int tanitasiOraId) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); return dal.HasTanitasiOraTulajdonsag(tanitasiOraId, IntezmenyId, TanevId); }); } private void SaveTanitasiOraDigTamEszkozList(ITanitasiOraDal tanitasiOraDal, TanoraCO co) { if (co.ID.IsEntityId() && co.DigTamEszkozTipusIdList != null) { tanitasiOraDal.SaveTanitasiOraDigTamEszkozList(co.DigTamEszkozTipusIdList, co.ID.Value, IntezmenyId, TanevId, FelhasznaloId); } } private void SaveOrUpdateOraTulajdonsag(ITanitasiOraDal tanitasiOraDal, IOrarendiOraDal orarendiOraDal, TanoraCO co) { var oraTulajdonsagok = GetOraTulajdonsagok(co); if (co.ID.IsEntityId()) { tanitasiOraDal.SaveOrUpdateTanitasiOraTulajdonsag(oraTulajdonsagok, co.ID.Value, IntezmenyId, TanevId); } else { if (co.OrarendiOra.IsEntityId()) { orarendiOraDal.SaveOrUpdateOrarendiOraTulajdonsag(oraTulajdonsagok, co.OrarendiOra.Value, IntezmenyId, TanevId); } } } private Dictionary GetOraTulajdonsagok(TanoraCO co) { var oraTulajdonsagok = new Dictionary(); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.online_ora, co.OnlineOra); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum._2019_2020_as_tanev_tananyaganak_ismetlese, co.TanevTananyaganakIsmetlese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum._2019_2020_as_tanev_tananyaganak_kiegeszitese, co.TanevTananyaganakKiegeszitese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_digitalis_keszsegfejlesztese, co.TanulokDigitalisKeszsegfejlesztese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.projektmunka, co.Projektmunka); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_kompenzacios_iraskeszseg_fejlesztese, co.TanulokKompenzaciosIraskeszsegFejlesztese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_kompenzacios_olvasasi_kepesseg_fejlesztese, co.TanulokKompenzaciosOlvasasiKepessegFejlesztese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_matematikai_gondolkodasi_kepessegenek_kompenzacios_fejlesztese, co.TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_nyelvi_kepessegenek_kompenzacios_fejlesztese, co.TanulokNyelviKepessegenekKompenzaciosFejlesztese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_onmegismeresenek_segitese, co.TanulokOnmegismeresenekSegitese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_onallosagra_nevelese, co.TanulokOnallosagraNevelese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_tanulasszervezesi_kompenzacios_technikajanak_erositese, co.TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_orientacios_tamogatasa, co.TanulokOrientaciosTamogatasa); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_szocialitasanak_fejlesztese, co.TanulokSzocialitasanakFejlesztese); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.a_tanulok_tovabbhaladasat_elokeszito_tevekenysegek, co.TanulokTovabbhaladasatElokeszitoTevekenysegek); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.pedagogus_altal_jelzett_egyeni_esetkezeles, co.PedagogusAltalJelzettEgyeniEsetkezeles); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.projektmunka_tamogatasa, co.ProjektmunkaTamogatasa); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.digitalis_keszsegfejlesztes, co.DigitalisKeszsegfejlesztes); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.kozossegi_munka_tamogatasa, co.KozossegiMunkaTamogatasa); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.tanora_elokeszitesenek_tamogatasa, co.TanoraElokeszitesenekTamogatasa); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.tanora_lebonyolitasanak_tamogatasa, co.TanoraLebonyolitasanakTamogatasa); oraTulajdonsagok.Add((int)OraTulajdonsagTipusEnum.napkozis_tevekenyseg_kereteben_egyeni_fejlesztes, co.NapkozisTevekenysegKeretebenEgyeniFejlesztes); return oraTulajdonsagok; } public static void TanoraAdatokSorrendezeseExcelbe(DataTable tabla, int kezdoOszlopSorszam, TanorakExportTipusEnum? exportTipus = null) { tabla.Columns.Remove("TulOra"); tabla.Columns.Remove("TulOra_BOOL"); tabla.Columns["TulOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["TulOra_BNAME"].ColumnName = OrarendResource.Tulora; tabla.Columns.Remove("IktOra"); tabla.Columns.Remove("IktOra_BOOL"); tabla.Columns["IktOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["IktOra_BNAME"].ColumnName = OrarendResource.IktTanora; tabla.Columns.Remove("IprOra"); tabla.Columns.Remove("IprOra_BOOL"); tabla.Columns["IprOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["IprOra_BNAME"].ColumnName = OrarendResource.IprTanora; tabla.Columns.Remove("MeresOra"); tabla.Columns.Remove("MeresOra_BOOL"); tabla.Columns["MeresOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["MeresOra_BNAME"].ColumnName = OrarendResource.Meres; tabla.Columns.Remove("Bontott"); tabla.Columns.Remove("Bontott_BOOL"); tabla.Columns["Bontott_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["Bontott_BNAME"].ColumnName = OrarendResource.Bontott; tabla.Columns.Remove("NemzetisegiOra"); tabla.Columns.Remove("NemzetisegiOra_BOOL"); tabla.Columns["NemzetisegiOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["NemzetisegiOra_BNAME"].ColumnName = OrarendResource.NemzetisegiTanora; tabla.Columns.Remove("DifferencialtOra"); tabla.Columns.Remove("DifferencialtOra_BOOL"); tabla.Columns["DifferencialtOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["DifferencialtOra_BNAME"].ColumnName = OrarendResource.Differencialt; tabla.Columns.Remove("DramaOra"); tabla.Columns.Remove("DramaOra_BOOL"); tabla.Columns["DramaOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["DramaOra_BNAME"].ColumnName = OrarendResource.Drama; tabla.Columns.Remove("ParhuzamosOra"); tabla.Columns.Remove("ParhuzamosOra_BOOL"); tabla.Columns["ParhuzamosOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["ParhuzamosOra_BNAME"].ColumnName = OrarendResource.ParhuzamosOra; tabla.Columns.Remove("TestnevelesOra"); tabla.Columns.Remove("TestnevelesOra_BOOL"); tabla.Columns["TestnevelesOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["TestnevelesOra_BNAME"].ColumnName = OrarendResource.MindennaposTestneveles; tabla.Columns.Remove("KooperativOra"); tabla.Columns.Remove("KooperativOra_BOOL"); tabla.Columns["KooperativOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["KooperativOra_BNAME"].ColumnName = OrarendResource.Kooperativ; tabla.Columns.Remove("Multikulturalis"); tabla.Columns.Remove("Multikulturalis_BOOL"); tabla.Columns["Multikulturalis_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["Multikulturalis_BNAME"].ColumnName = OrarendResource.Multikulturalis; tabla.Columns.Remove("NemszakrendszeruOra"); tabla.Columns.Remove("NemszakrendszeruOra_BOOL"); tabla.Columns["NemszakrendszeruOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["NemszakrendszeruOra_BNAME"].ColumnName = OrarendResource.NemSzakrendszeruOra; tabla.Columns.Remove("IsFelnottoktatasiSzerzodes"); tabla.Columns.Remove("IsFelnottoktatasiSzerzodes_BOOL"); tabla.Columns["IsFelnottoktatasiSzerzodes_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["IsFelnottoktatasiSzerzodes_BNAME"].ColumnName = TantargyResource.MegbizasiSzerzodesselEllatottOra; // EFOP-3.1.11-19 PROJEKT var i = ((int)OraTulajdonsagTipusEnum._2019_2020_as_tanev_tananyaganak_ismetlese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanevTananyaganakIsmetlese; i = ((int)OraTulajdonsagTipusEnum._2019_2020_as_tanev_tananyaganak_kiegeszitese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanevTananyaganakKiegeszitese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_digitalis_keszsegfejlesztese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokDigitalisKeszsegfejlesztese; i = ((int)OraTulajdonsagTipusEnum.projektmunka).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.Projektmunka; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_kompenzacios_iraskeszseg_fejlesztese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokKompenzaciosIraskeszsegFejlesztese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_kompenzacios_olvasasi_kepesseg_fejlesztese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokKompenzaciosOlvasasiKepessegFejlesztese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_matematikai_gondolkodasi_kepessegenek_kompenzacios_fejlesztese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokMatematikaiGondolkodasiKepessegenekKompenzaciosFejlesztese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_nyelvi_kepessegenek_kompenzacios_fejlesztese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokNyelviKepessegenekKompenzaciosFejlesztese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_onmegismeresenek_segitese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokOnmegismeresenekSegitese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_onallosagra_nevelese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokOnallosagraNevelese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_tanulasszervezesi_kompenzacios_technikajanak_erositese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokTanulasszervezesiKompenzaciosTechnikajanakErositese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_orientacios_tamogatasa).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokOrientaciosTamogatasa; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_szocialitasanak_fejlesztese).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokSzocialitasanakFejlesztese; i = ((int)OraTulajdonsagTipusEnum.a_tanulok_tovabbhaladasat_elokeszito_tevekenysegek).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanulokTovabbhaladasatElokeszitoTevekenysegek; i = ((int)OraTulajdonsagTipusEnum.pedagogus_altal_jelzett_egyeni_esetkezeles).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.PedagogusAltalJelzettEgyeniEsetkezeles; i = ((int)OraTulajdonsagTipusEnum.projektmunka_tamogatasa).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.ProjektmunkaTamogatasa; i = ((int)OraTulajdonsagTipusEnum.digitalis_keszsegfejlesztes).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.DigitalisKeszsegfejlesztes; i = ((int)OraTulajdonsagTipusEnum.kozossegi_munka_tamogatasa).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.KozossegiMunkaTamogatasa; i = ((int)OraTulajdonsagTipusEnum.tanora_elokeszitesenek_tamogatasa).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanoraElokeszitesenekTamogatasa; i = ((int)OraTulajdonsagTipusEnum.tanora_lebonyolitasanak_tamogatasa).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.TanoraLebonyolitasanakTamogatasa; i = ((int)OraTulajdonsagTipusEnum.napkozis_tevekenyseg_kereteben_egyeni_fejlesztes).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.NapkozisTevekenysegKeretebenEgyeniFejlesztes; //----------------------- tabla.Columns.Remove("KAPOra"); tabla.Columns.Remove("KAPOra_BOOL"); tabla.Columns["KAPOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["KAPOra_BNAME"].ColumnName = OrarendResource.KAPOra; tabla.Columns.Remove("DFHTora"); tabla.Columns.Remove("DFHTora_BOOL"); tabla.Columns["DFHTora_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["DFHTora_BNAME"].ColumnName = OrarendResource.DFHT; tabla.Columns.Remove("Rahangolodas"); tabla.Columns.Remove("Rahangolodas_BOOL"); tabla.Columns["Rahangolodas_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["Rahangolodas_BNAME"].ColumnName = OrarendResource.Rahangolodas; tabla.Columns.Remove("TestmozgasAlapuAlprogram"); tabla.Columns.Remove("TestmozgasAlapuAlprogram_BOOL"); tabla.Columns["TestmozgasAlapuAlprogram_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["TestmozgasAlapuAlprogram_BNAME"].ColumnName = OrarendResource.Testmozgas; tabla.Columns.Remove("MuveszetAlapuAlprogram"); tabla.Columns.Remove("MuveszetAlapuAlprogram_BOOL"); tabla.Columns["MuveszetAlapuAlprogram_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["MuveszetAlapuAlprogram_BNAME"].ColumnName = OrarendResource.Muveszet; tabla.Columns.Remove("KIPOra"); tabla.Columns.Remove("KIPOra_BOOL"); tabla.Columns["KIPOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["KIPOra_BNAME"].ColumnName = OrarendResource.KIPOra; tabla.Columns.Remove("DFHTKIPora"); tabla.Columns.Remove("DFHTKIPora_BOOL"); tabla.Columns.Remove("DFHTKIPora_BNAME"); //tabla.Columns["DFHTKIPora_BNAME"].SetOrdinal(kezdoOszlopSorszam++); //tabla.Columns["DFHTKIPora_BNAME"].ColumnName = OrarendResource.TIOP11112120120001; tabla.Columns.Remove("Komplexora"); tabla.Columns.Remove("Komplexora_BOOL"); tabla.Columns["Komplexora_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["Komplexora_BNAME"].ColumnName = OrarendResource.KomplexOra; tabla.Columns.Remove("EletGyakorlatAlapuAlprogram"); tabla.Columns.Remove("EletGyakorlatAlapuAlprogram_BOOL"); tabla.Columns["EletGyakorlatAlapuAlprogram_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["EletGyakorlatAlapuAlprogram_BNAME"].ColumnName = OrarendResource.Eletgyakorlat; tabla.Columns.Remove("LogikaiAlapuAlprogram"); tabla.Columns.Remove("LogikaiAlapuAlprogram_BOOL"); tabla.Columns["LogikaiAlapuAlprogram_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["LogikaiAlapuAlprogram_BNAME"].ColumnName = OrarendResource.Logika; tabla.Columns.Remove("TEorad"); tabla.Columns.Remove("TEorad_BOOL"); tabla.Columns["TEorad_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["TEorad_BNAME"].ColumnName = OrarendResource.TeOrad; tabla.Columns.Remove("DigitalisAlapuAlprogram"); tabla.Columns.Remove("DigitalisAlapuAlprogram_BOOL"); tabla.Columns["DigitalisAlapuAlprogram_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["DigitalisAlapuAlprogram_BNAME"].ColumnName = OrarendResource.DigitalisAlapProgram; tabla.Columns.Remove("TamopOra"); tabla.Columns.Remove("TamopOra_BOOL"); tabla.Columns["TamopOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["TamopOra_BNAME"].ColumnName = OrarendResource.TamopOra; tabla.Columns.Remove("TiopOra"); tabla.Columns.Remove("TiopOra_BOOL"); tabla.Columns["TiopOra_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["TiopOra_BNAME"].ColumnName = OrarendResource.Tiop12; tabla.Columns.Remove("EFOP32317"); tabla.Columns.Remove("EFOP32317_BOOL"); tabla.Columns["EFOP32317_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["EFOP32317_BNAME"].ColumnName = OrarendResource.EFOP32317DigitalisKornyezetAKozenevelesben; tabla.Columns.Remove("EFOP33717"); tabla.Columns.Remove("EFOP33717_BOOL"); tabla.Columns["EFOP33717_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["EFOP33717_BNAME"].ColumnName = OrarendResource.EFOP33717; tabla.Columns.Remove("VEKOP73317"); tabla.Columns.Remove("VEKOP73317_BOOL"); tabla.Columns["VEKOP73317_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["VEKOP73317_BNAME"].ColumnName = OrarendResource.VEKOP73317; tabla.Columns.Remove("TIOP1111212012001"); tabla.Columns.Remove("TIOP1111212012001_BOOL"); tabla.Columns["TIOP1111212012001_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["TIOP1111212012001_BNAME"].ColumnName = OrarendResource.TIOP11112120120001; tabla.Columns.Remove("EFOP31716"); tabla.Columns.Remove("EFOP31716_BOOL"); tabla.Columns["EFOP31716_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["EFOP31716_BNAME"].ColumnName = OrarendResource.EFOP31716EselyteremtesAKoznevelesben; tabla.Columns.Remove("GINOP623"); tabla.Columns.Remove("GINOP623_BOOL"); tabla.Columns["GINOP623_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["GINOP623_BNAME"].ColumnName = OrarendResource.GINOP623; tabla.Columns.Remove("EFOP23517"); tabla.Columns.Remove("EFOP23517_BOOL"); tabla.Columns["EFOP23517_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["EFOP23517_BNAME"].ColumnName = OrarendResource.EFOP23517201700038Miapalya; tabla.Columns.Remove("Helyettesitett"); tabla.Columns.Remove("Helyettesitett_BOOL"); tabla.Columns["Helyettesitett_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns["Helyettesitett_BNAME"].ColumnName = OrarendResource.HelyettesitettSearchModel; i = ((int)OraTulajdonsagTipusEnum.online_ora).ToString(); tabla.Columns.Remove(i); tabla.Columns.Remove(i + "_BOOL"); tabla.Columns[i + "_BNAME"].SetOrdinal(kezdoOszlopSorszam++); tabla.Columns[i + "_BNAME"].ColumnName = OrarendResource.OnlineOra; if (exportTipus == TanorakExportTipusEnum.Elmaradt) { tabla.Columns.Remove("DigEszkozTipus"); tabla.Columns.Remove("DigPlatformTipus"); tabla.Columns.Remove("DigTamEszkozTipus"); } else { tabla.Columns["DigEszkozTipus"].ColumnName = OrarendResource.DigPlatformTipusKeresoPanel; tabla.Columns["DigPlatformTipus"].ColumnName = OrarendResource.DigEszkozTipusKeresoPanel; tabla.Columns["DigTamEszkozTipus"].ColumnName = OrarendResource.DigTamEszkozTipusKeresoPanel; } } private byte[] GetTanorakExcelExport(TanorakExportTipusEnum exportTipus, DataTable dataTable, int kezdoOszlopSorszam, string sheetName, Dictionary columnWidths = null) { TanoraAdatokSorrendezeseExcelbe(dataTable, kezdoOszlopSorszam, exportTipus); ExportLogic.TryCreateHeaderIfNotExist(dataTable); using (var stream = new MemoryStream()) { using (var excel = new ExcelPackage(stream)) { var workSheet = excel.Workbook.Worksheets.Add(sheetName); workSheet.Cells[1, 1].LoadFromDataTable(dataTable, true); ExportLogic.SetHeaderStyles(workSheet.Cells[1, 1, 1, dataTable.Columns.Count]); workSheet.Column(1).Style.Numberformat.Format = SDAFormat.ShortDateAndTime; workSheet.Cells.AutoFitColumns(); if (columnWidths != null) { foreach (var key in columnWidths.Keys) { workSheet.Column(key).Width = columnWidths[key]; } } workSheet.View.FreezePanes(2, 1); excel.Save(); } stream.Position = 0; return stream.ToArray(); } } public List GetTanitasiOraCoList(TanoraKeresoCO searchCo = null) { var ds = GetTanorak(searchCo); var result = new List(); foreach (DataRow dataRow in ds.Tables[0].Rows) { var item = new TanoraItemCo(dataRow); result.Add(item); } return result; } public List GetTanorakGridForNaplozasCoList(TanorakSearchCO searchCo) { var ds = Dal.CustomConnection.Run(ConnectionType, h => h.TanitasiOra().GetTanorakGridForNaplozasDataSet(searchCo.OsztalyCsoportId.Value, searchCo.TantargyId.Value, TanevId)); var result = new List(); foreach (var dataRow in ds.Tables[0].AsEnumerable()) { result.Add(new TanorakItemCo(dataRow)); } return FilterTanorakItemCoList(result, searchCo); } private List FilterTanorakItemCoList(List coList, TanorakSearchCO searchCo) { if (searchCo == null) { return coList; } IEnumerable result = coList; if (searchCo.OraKezdete.HasValue && !string.IsNullOrWhiteSpace(searchCo.OraKezdete.Value.ToString())) { result = result.Where(x => x.OraKezdete < searchCo.OraKezdete.Value); } if (searchCo.OsztalyCsoportId.HasValue) { result = result.Where(x => x.OsztCsop == searchCo.OsztalyCsoportId.Value); } if (searchCo.TanarId.HasValue) { result = result.Where(x => x.Tanar == searchCo.TanarId.Value); } if (searchCo.TantargyId.HasValue) { result = result.Where(x => x.Targy == searchCo.TantargyId.Value); } if (searchCo.Helyetesitett.HasValue) { if (searchCo.Helyetesitett.Value > 0) { result = result.Where(x => x.HTanar != null); } else { result = result.Where(x => x.HTanar == null); } } return result.ToList(); } /// INFO @DevKornel: Mobil használja public DataSet GetDigitalisInformaciokByTanoraIds(IEnumerable tanitasiOraIdList) { return Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); return dal.GetDigitalisInformaciokByTanoraIds(tanitasiOraIdList, TanevId); }); } private string GetOratTartoPedagogus(IDalHandler h, int tanitasiOraId) { var tanitasiOraDal = h.TanitasiOra(); var tanitasiOra = tanitasiOraDal.Get(tanitasiOraId); return tanitasiOra.HelyettesitoTanar != null ? tanitasiOra.HelyettesitoTanar.NyomtatasiNev : tanitasiOra.Tanar.NyomtatasiNev; } private bool IsElmaradtOraAndPedagogusHasNemkotottMunkaido(IDalHandler h, int tanitasioraId) { var systemSettingsHelper = new SystemSettingsHelper(new DalHandlerConnectionType(ConnectionType, h)); var tevekenysegutkozesSystemSetting = systemSettingsHelper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Napirend_felvitelel_utkozes_figyeles); if (tevekenysegutkozesSystemSetting != (int)TevekenysegUtkozesEnum.UtkozesNemLehetseges) { return false; } var dal = h.NemKotottMunkaido(); var result = dal.IsElmaradtOraAndPedagogusHasNemkotottMunkaido(tanitasioraId); return result; } public void UpdateTanitasiOraEvesSorszamTeljesTanev() { Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); h.TanitasiOra().UpdateTanitasiOraEvesSorszamTeljesTanev(IntezmenyId, TanevId); }); } public void UpdateTanitasiOraEvesSorszamTanitasiOra(int tanitasiOraId) { Dal.CustomConnection.Run(ConnectionType, (h) => { var dal = h.TanitasiOra(); h.TanitasiOra().UpdateTanitasiOraEvesSorszamTanitasiOra(IntezmenyId, TanevId, tanitasiOraId); }); } /// INFO: Mobil használja public bool IsFelhasznaloNaplozta(int tanitasiOraId) => Dal.CustomConnection.Run(ConnectionType, h => { var tanitasiOra = h.TanitasiOra().Get(tanitasiOraId); return tanitasiOra.TanarId == FelhasznaloId || tanitasiOra.HelyettesitoTanarId == FelhasznaloId; }); /// INFO: Mobil használja public IOrarendiOra GetOrarendiOraIdForTanitasiOra(ITanitasiOra tanitasiOra) { return Dal.CustomConnection.Run(ConnectionType, h => { if (tanitasiOra.OrarendiOraGroupId.IsEntityId()) { return h.OrarendiOra().Get(h.TanitasiOra().GetOrarendiOraByTanoraGroupId(tanitasiOra.OrarendiOraGroupId.Value, tanitasiOra.Datum)); } return null; }); } } }