using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Net; using System.Net.Http; using System.Text; using System.Web.Mvc; using Kreta.BusinessLogic.Caching; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.Exceptions; using Kreta.BusinessLogic.HelperClasses; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Helpers.SystemSettings; using Kreta.BusinessLogic.Utils; using Kreta.Core; using Kreta.Core.FeatureToggle; using Kreta.Core.Logic; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Enums.ManualEnums.SystemSettings; using Kreta.Framework; using Kreta.Framework.Entities; using Kreta.Framework.Util; using Kreta.Resources; using Kreta.Web.Areas.OsztalyCsoport.Logic; using Kreta.Web.Areas.Tanulo.Models; using Kreta.Web.Helpers; using Kreta.Web.Helpers.Error; using Kreta.Web.Helpers.Grid; using Kreta.Web.Helpers.TabStrip; using Kreta.Web.Models; using Kreta.Web.Security; using Newtonsoft.Json; namespace Kreta.Web.Areas.Tanulo.Helper { public abstract class TanuloLogic { public static List GetNewTabs(TanuloModel model) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Model = model, PartialViewName = "Edit_Alapadat_Tab", IsActive = true }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.Elerhetosegek, Model = model, PartialViewName = "New_Elerhetoseg_Tab" }, new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.Gondviselo, Model = model, PartialViewName = "New_Gondviselo_Tab" }, new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Igazolvanyok, Model = model, PartialViewName = "Edit_Igazolvanyok_Tab" }, new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.Jogviszony, Model = model, PartialViewName = "New_Jogviszony_Tab" }, new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Tanugy, Model = model, PartialViewName = "Edit_TanugyiAdatok_Tab" }, }; if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "12", ItemName = TanuloResource.BelepesiAdatok, Model = model, PartialViewName = "Edit_Belepesi_Adatok_Tab" }); } var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.Szocialis, Model = model, PartialViewName = "Edit_SzocialisAdatok_Tab" }); //list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNI, Model = model, PartialViewName = "Edit_SNI_Tab" }); //list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.BTM, Model = model, PartialViewName = "Edit_BTM_Tab" }); list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.SNIBTM, Model = model, PartialViewName = "Edit_SNI_BTM_Tab" }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Vallas, Model = model, PartialViewName = "Edit_Vallas_Tab" }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "11", ItemName = TanuloResource.Sport, Model = model, PartialViewName = "Edit_Sport_Tab" }); } if (ClaimData.IsAdministrator && ClaimData.IsSzakkepzoIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "12", ItemName = TanuloResource.SzirBeallitasok, Model = model, PartialViewName = "Edit_SzirBeallitasok_Tab" }); } return list; } public static List GetNemList(bool justData = false) { var list = new List(); var dictionary = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.Nem, ClaimData.SelectedTanevID.Value, !justData); foreach (var item in dictionary) { if (justData) { if (item.Key != ((int)Enums.NemEnum.NA).ToString()) { var sli = new SelectListItem() { Text = item.Value, Value = item.Key }; list.Add(sli); } } else { var sli = new SelectListItem() { Text = item.Value, Value = item.Key }; list.Add(sli); } } return list; } public static void TanuloCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, TanuloModel model, FelhasznaloiNevGeneralasModjaEnum felhasznaloiNevGeneralasModja, OktNevelesiKategoriaEnum oktNevelesiKategoria, TanuloAdatCO regiTanuloiAdatokCo = null) { if (model.TanuloAlapAdatModel != null) { if ((model.TanuloAlapAdatModel.CsaladiNev.Length + model.TanuloAlapAdatModel.UtoNev.Length) > Core.Constants.General.CsaladiEsUtonevEgyuttMaxLength) { modelState.AddModelError("TanuloAlapAdatModel.CsaladiNev", TanuloResource.ACsaladiEsUtonevEgyuttNemLehetHosszabb61Karakternel); } if ((model.TanuloAlapAdatModel.SzuletesiCsaladiNev.Length + model.TanuloAlapAdatModel.SzuletesiUtoNev.Length) > Core.Constants.General.SzuletesiCsaladiEsUtonevEgyuttMaxLength) { modelState.AddModelError("TanuloAlapAdatModel.SzuletesiCsaladiNev", TanuloResource.ASzuletesiCsaladiEsUtonevEgyuttNemLehetHosszabb64Karakternel); } if ((model.TanuloAlapAdatModel.AnyjaCsaladiNev.Length + model.TanuloAlapAdatModel.AnyjaUtoNev.Length) > Core.Constants.General.AnyaCsaladiEsUtonevEgyuttMaxLength) { modelState.AddModelError("TanuloAlapAdatModel.AnyjaCsaladiNev", TanuloResource.AzAnyaCsaladiEsUtoneveEgyuttNemLehetHosszabb64Karakternel); } if (model.TanuloAlapAdatModel.SzuletesiIdo.HasValue && model.TanuloAlapAdatModel.SzuletesiIdo.Value > DateTime.Now) { modelState.AddModelError("TanuloAlapAdatModel.SzuletesiIdo", TanuloResource.SzuletesiIdoNemLehetNagyobbAMaiNapnal); } if (model.TanuloAlapAdatModel.SzuletesiIdo.HasValue && Kreta.Web.Classes.Utils.GetTanuloEletkor(model) < 2) { modelState.AddModelError("TanuloAlapAdatModel.SzuletesiIdo", TanuloResource.TanuloEletkoraNemLehetKevesebbMint2Ev); } if (ClaimData.IsActivTanev) { if (!ClaimData.IsOsztalyfonok && felhasznaloiNevGeneralasModja == FelhasznaloiNevGeneralasModjaEnum.Egyeni && string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.BejelentkezesiNev)) { modelState.AddModelError("TanuloAlapAdatModel.BejelentkezesiNev", TanuloResource.FelhasznalonevKitolteseKotelezobelepesiAdatokFul); } else if (!ClaimData.IsOsztalyfonok && !string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.BejelentkezesiNev) && model.TanuloAlapAdatModel.BejelentkezesiNev.Trim().Length == 0) { modelState.AddModelError("TanuloAlapAdatModel.BejelentkezesiNev", TanuloResource.FelhasznalonevKitolteseKotelezobelepesiAdatokFul); } } if (model.TanuloAlapAdatModel.Allampolgarsag == model.TanuloAlapAdatModel.Allampolgarsag2) { modelState.AddModelError("TanuloAlapAdatModel.Allampolgarsag2", ErrorResource.MegegyezoAllapolgarsag); } if (ClaimData.IsSzakkepzoIntezmeny && !string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.OktatasiAzonosito) && !model.TanuloAlapAdatModel.IsOktatasiAzonositoNelkul && !BusinessLogic.Extensions.FelhasznaloExtensions.IsValidOktatasiAzonosito(model.TanuloAlapAdatModel.OktatasiAzonosito)) { modelState.AddModelError("TanuloAlapAdatModel.OktatasiAzonosito", ErrorResource.AMegadottOktatasiAzonositoHibas); } if (model.TanuloIgazolvanyModel != null) { if (model.TanuloIgazolvanyModel.DiakigazolvanyKelte.HasValue && model.TanuloAlapAdatModel.SzuletesiIdo.HasValue && (model.TanuloIgazolvanyModel.DiakigazolvanyKelte.Value < model.TanuloAlapAdatModel.SzuletesiIdo.Value || model.TanuloIgazolvanyModel.DiakigazolvanyKelte.Value > DateTime.Now)) { modelState.AddModelError("TanuloIgazolvanyModel.DiakigazolvanyKelte", TanuloResource.ADiakigazolvanyKeltenekASzuletesiIdoEsAzAktualisDatumKozeKellEsnie); } } Check4TFelhOktAzonValidation(modelState, model, felhasznaloiNevGeneralasModja); } if (model.TanuloTanugyModel != null) { if (model.TanuloAlapAdatModel != null) { if (model.TanuloAlapAdatModel.SzuletesiIdo.HasValue && model.TanuloAlapAdatModel.SzuletesiIdo.Value < DateTime.Now.AddYears(-100)) { modelState.AddModelError("TanuloAlapAdatModel.SzuletesiIdo", TanuloResource.ASzuletesiIdoNemLehetSzazEvnelRegebbi); } if (model.TanuloTanugyModel.TankotelezettsegVege.HasValue && model.TanuloAlapAdatModel.SzuletesiIdo.HasValue && (model.TanuloTanugyModel.TankotelezettsegVege.Value < model.TanuloAlapAdatModel.SzuletesiIdo.Value.AddYears(6) || model.TanuloTanugyModel.TankotelezettsegVege.Value > model.TanuloAlapAdatModel.SzuletesiIdo.Value.AddYears(25))) { modelState.AddModelError("TanuloTanugyModel.TankotelezettsegVege", TanuloResource.ATankotelezettsegVegenekASzuletesiIdoEvEsASzuletesiIdoEvKozeKellEsnie); } } if (model.TanuloTanugyModel.Magantanulo && !model.TanuloTanugyModel.MagantanulosagKezdete.HasValue) { var errorMsg = ClaimData.IsSelectedTanev20_21OrLater ? TanuloResource.EgyeniMunkarendKezdetenekMegadasaKotelezotanugyiAdatokFul : ErrorResource.MagantanulosagKezdetenekMegadasaKotelezotanugyiAdatokFul; modelState.AddModelError("TanuloTanugyModel.MagantanulosagKezdete", errorMsg); } if (model.TanuloTanugyModel.MagantanulosagKezdete.HasValue && model.TanuloTanugyModel.MagantanulosagVege.HasValue && model.TanuloTanugyModel.MagantanulosagKezdete.Value > model.TanuloTanugyModel.MagantanulosagVege.Value) { modelState.AddModelError("TanuloTanugyModel.MagantanulosagKezdete", TanuloResource.EgyeniMunkarendKezdeteNemLehetKesobbMintAVege); } if (!string.IsNullOrWhiteSpace(model.TanuloTanugyModel.DualisKepzohelyNeve) && string.IsNullOrWhiteSpace(model.TanuloTanugyModel.DualisKepzohelyAdoszama)) { modelState.AddModelError($"{nameof(TanuloTanugyModel)}.{nameof(TanuloTanugyModel.DualisKepzohelyAdoszama)}", ErrorResource.DualisAdoszamKotelezoHaDualisKepzohelyMegVanAdva); } if (model.TanuloTanugyModel.AgazatiAlapvizsgaEredmenyeSzazalek.HasValue && (model.TanuloTanugyModel.AgazatiAlapvizsgaEredmenyeSzazalek.Value < 0 || model.TanuloTanugyModel.AgazatiAlapvizsgaEredmenyeSzazalek.Value > 100)) { modelState.AddModelError($"{nameof(TanuloTanugyModel)}.{nameof(TanuloTanugyModel.AgazatiAlapvizsgaEredmenyeSzazalek)}", ErrorResource.AgazatiAlapvizsgaSzazalekCsak0Es100); } if (ClaimData.IsSelectedTanev21_22OrLater) { if ((model.TanuloTanugyModel.EgyuttmukodesiMegallapodasos ? 1 : 0) + (model.TanuloTanugyModel.Tanuloszerzodeses ? 1 : 0) + (model.TanuloTanugyModel.IsSzakkepzesiMunkaszerzodessel ? 1 : 0) > 1) { if (model.TanuloTanugyModel.EgyuttmukodesiMegallapodasos) { modelState.AddModelError("TanuloTanugyModel.EgyuttmukodesiMegallapodasos", ErrorResource.TanuloTanugyesSzerzodesKozulCsakEgyValaszthato); } if (model.TanuloTanugyModel.Tanuloszerzodeses) { modelState.AddModelError("TanuloTanugyModel.Tanuloszerzodeses", ErrorResource.TanuloTanugyesSzerzodesKozulCsakEgyValaszthato); } if (model.TanuloTanugyModel.IsSzakkepzesiMunkaszerzodessel) { modelState.AddModelError("TanuloTanugyModel.IsSzakkepzesiMunkaszerzodessel", ErrorResource.TanuloTanugyesSzerzodesKozulCsakEgyValaszthato); } } if (model.TanuloId.IsEntityId() && (oktNevelesiKategoria == OktNevelesiKategoriaEnum.NevelesOktatas)) { var (szervezetUtkozesTanuloNevek, szakmaUtkozesTanuloNevek, szakmairanyUtkozesTanuloNevek) = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()) .GetTanuloSzervezetSzakmaUtkozes( new List { model.TanuloId.Value }, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, model.TanuloTanugyModel.TanuloSzervezetId, model.TanuloTanugyModel.SzakmaTipusId, model.TanuloTanugyModel.SzakmairanyTipusId, regiTanuloiAdatokCo); if (szervezetUtkozesTanuloNevek.Count > 0) { modelState.AddModelError("TanuloTanugyModel_TanuloSzervezetId", DualisResource.DualiskepzesNemModosithatoRendelkezikAktivKapcsolattal); } if (szakmaUtkozesTanuloNevek.Count > 0) { modelState.AddModelError("TanuloTanugyModel_SzakmaTipusId", DualisResource.SzakmaTipusNemModosithatoRendelkezikAktivKapcsolattal); } if (szakmairanyUtkozesTanuloNevek.Count > 0) { modelState.AddModelError("TanuloTanugyModel_SzakmairanyTipusId", DualisResource.SzakmairanyTipusNemModosithatoRendelkezikAktivKapcsolattal); } } if ((model.TanuloTanugyModel.IsNKTSzakkepzeses || model.TanuloTanugyModel.IsSzakkepzeses) && model.TanuloId.HasValue && model.TanuloTanugyModel.HasAktivOsztalybaSorolas) { var isUjSzktBlokk = model.TanuloTanugyModel.AgazatUjSzktTipusId != (int)AgazatUjSzktTipusEnum.na || model.TanuloTanugyModel.SzakmaTipusId != (int)SzakmaTipusEnum.na || model.TanuloTanugyModel.SzakmairanyTipusId != (int)SzakmairanyTipusEnum.na ? 1 : 0; var isNktBlokk = model.TanuloTanugyModel.TanulmanyiTeruletNktTipusId != (int)TanulmanyiTeruletNktTipusEnum.na || model.TanuloTanugyModel.SzakkepesitesNktTipusId != (int)SzakkepesitesNktTipusEnum.na || model.TanuloTanugyModel.SzakiranyNktTipusId != (int)SzakiranyNktTipusEnum.na ? 1 : 0; var isRegiSzktBlokk = model.TanuloTanugyModel.SzakmacsoportId != (int)SzakmacsoportTipusEnum.Na || model.TanuloTanugyModel.AgazatId != (int)AgazatTipusEnum.Na || model.TanuloTanugyModel.SzakkepesitesId != (int)SzakkepesitesTipusEnum.Na || model.TanuloTanugyModel.ReszSzakkepesitesId != (int)ReszszakkepesitesTipusEnum.Na ? 1 : 0; var isUjSzktReszszakmakBlokk = model.TanuloTanugyModel.AgazatReszSzakmaTipusId != (int)AgazatReszSzakmaTipusEnum.na || model.TanuloTanugyModel.ReszSzakmaTipusId != (int)ReszSzakmaTipusEnum.na || model.TanuloTanugyModel.SzakmaReszSzakmaTipusId != (int)SzakmaReszSzakmaTipusEnum.na ? 1 : 0; if ((isUjSzktBlokk + isNktBlokk + isRegiSzktBlokk + isUjSzktReszszakmakBlokk) > 1) { if (!model.TanuloTanugyModel.IsUjSzktBlokkAlkalmaz && !model.TanuloTanugyModel.IsNktBlokkAlkalmaz && !model.TanuloTanugyModel.IsRegiSzktBlokkAlkalmaz && !model.TanuloTanugyModel.IsUjSzktReszSzakmakBlokkAlkalmaz) { if (isUjSzktBlokk == 1) { modelState.AddModelError($"{nameof(TanuloTanugyModel)}.{nameof(TanuloTanugyModel.IsUjSzktBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett); } else if (isNktBlokk == 1) { modelState.AddModelError($"{nameof(TanuloTanugyModel)}.{nameof(TanuloTanugyModel.IsNktBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett); } else if (isRegiSzktBlokk == 1) { modelState.AddModelError($"{nameof(TanuloTanugyModel)}.{nameof(TanuloTanugyModel.IsRegiSzktBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett); } else if (isUjSzktReszszakmakBlokk == 1) { modelState.AddModelError($"{nameof(TanuloTanugyModel)}.{nameof(TanuloTanugyModel.IsUjSzktReszSzakmakBlokkAlkalmaz)}", ErrorResource.JegyzekAdatok1BlokkEngedelyezett); } } else if (model.TanuloTanugyModel.IsUjSzktBlokkAlkalmaz) { SetNktBlokkNa(model.TanuloTanugyModel); SetRegiSzktBlokkNa(model.TanuloTanugyModel); SetUjSzktReszszakmakBlokkNa(model.TanuloTanugyModel); } else if (model.TanuloTanugyModel.IsNktBlokkAlkalmaz) { SetUjSzktBlokkNa(model.TanuloTanugyModel); SetRegiSzktBlokkNa(model.TanuloTanugyModel); SetUjSzktReszszakmakBlokkNa(model.TanuloTanugyModel); } else if (model.TanuloTanugyModel.IsRegiSzktBlokkAlkalmaz) { SetNktBlokkNa(model.TanuloTanugyModel); SetUjSzktBlokkNa(model.TanuloTanugyModel); SetUjSzktReszszakmakBlokkNa(model.TanuloTanugyModel); } else if (model.TanuloTanugyModel.IsUjSzktReszSzakmakBlokkAlkalmaz) { SetNktBlokkNa(model.TanuloTanugyModel); SetRegiSzktBlokkNa(model.TanuloTanugyModel); SetUjSzktBlokkNa(model.TanuloTanugyModel); } } } } } if (model.TanuloGondviseloModel != null) { if (!string.IsNullOrWhiteSpace(model.TanuloGondviseloModel.GondviseloBejelentkezesiNev) && model.TanuloGondviseloModel.GondviseloBejelentkezesiNev.Trim().Length == 0) { modelState.AddModelError("TanuloGondviseloModel.GondviseloBejelentkezesiNev", TanuloResource.GondviseloFelhasznalonevNemLehetUresSzoveg); } if (!string.IsNullOrWhiteSpace(model.TanuloGondviseloModel.GondviseloBejelentkezesiNev)) { if (new FelhasznaloBelepesHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsUserNameExistsInTanev(model.TanuloGondviseloModel.GondviseloBejelentkezesiNev)) { modelState.AddModelError("TanuloGondviseloModel.GondviseloBejelentkezesiNevMarLetezik", CommonResource.AMegadottGondviseloFelhasznalonevMarLetezik); } } if (!string.IsNullOrWhiteSpace(model.TanuloGondviseloModel.GondviseloBejelentkezesiNev) && !string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.BejelentkezesiNev) && model.TanuloGondviseloModel.GondviseloBejelentkezesiNev.ToUpper() == model.TanuloAlapAdatModel.BejelentkezesiNev.ToUpper()) { modelState.AddModelError("TanuloGondviseloModel.GondviseloBejelentkezesiNev", CommonResource.AGondviseloFelhasznaloneveMegegyzikATanuloFelhasznalonevevel); modelState.AddModelError("TanuloAlapAdatModel.BejelentkezesiNev", CommonResource.ATanuloFelhasznaloneveMegegyzikAGondviseloFelhasznalonevevel); } } if (model.TanuloAlapAdatModel.SzuletesiIdo.HasValue && model.TanuloAlapAdatModel.SzuletesiIdo.Value < DateTime.Now) { if (!model.TanuloId.HasValue) { if (Kreta.Web.Classes.Utils.GetTanuloEletkor(model) < 18 && string.IsNullOrWhiteSpace(model.TanuloGondviseloModel.GondviseloNeve)) { modelState.AddModelError("TanuloGondviseloModel.GondviseloNev", TanuloResource.GondviseloNevNemLehetUresSzoveg); } if (Kreta.Web.Classes.Utils.GetTanuloEletkor(model) < 18 && !model.TanuloGondviseloModel.RokonsagiFok.HasValue) { modelState.AddModelError("TanuloGondviseloModel.RokonsagiFok", ErrorResource.GondviseloRokonsagiFokaKotelezogondviseloAdataiFul); } } } /*Új tanuló felvitel esetében a Gondviselő validáció*/ if (model.GondviseloCimElerhetosegModel != null) { if (!model.GondviseloCimElerhetosegModel.TanulovalEgyezik_Gondviselo && !model.TanuloId.HasValue) { if (!model.GondviseloCimElerhetosegModel.Orszag_Gondviselo.HasValue) { modelState.AddModelError("GondviseloCimElerhetosegModel_Orszag", TanuloResource.OrszagMegadasaKotelezo); } if (string.IsNullOrWhiteSpace(model.GondviseloCimElerhetosegModel.Iranyitoszam_Gondviselo_Str)) { if (model.GondviseloCimElerhetosegModel.Orszag_Gondviselo == (int)OrszagTipusEnum.Magyarorszag) { modelState.AddModelError("GondviseloCimElerhetosegModel_GondviseloIranyitoszam", TanuloResource.IranyitoszamKitolteseKotelezoGondviseloFul); } else { modelState.AddModelError("GondviseloCimElerhetosegModel_GondviseloIranyitoszam_Str", TanuloResource.IranyitoszamKitolteseKotelezoGondviseloFul); } } if (string.IsNullOrWhiteSpace(model.GondviseloCimElerhetosegModel.HelysegNev_Gondviselo_Str)) { if (model.GondviseloCimElerhetosegModel.Orszag_Gondviselo == (int)OrszagTipusEnum.Magyarorszag) { modelState.AddModelError("GondviseloCimElerhetosegModel_GondviseloHelysegNev", TanuloResource.HelysegNevKitolteseKotelezoGondviseloFul); } else { modelState.AddModelError("GondviseloCimElerhetosegModel_GondviseloHelysegNev_Str", TanuloResource.HelysegNevKitolteseKotelezoGondviseloFul); } } if (string.IsNullOrWhiteSpace(model.GondviseloCimElerhetosegModel.KozteruletNev_Gondviselo)) { modelState.AddModelError("GondviseloCimElerhetosegModel.GondviseloKozteruletNev", TanuloResource.KozteruletNevenekKitolteseKotelezoGondviseloFul); } if (string.IsNullOrWhiteSpace(model.GondviseloCimElerhetosegModel.KozteruletTipus_Gondviselo_Str)) { if (model.GondviseloCimElerhetosegModel.Orszag_Gondviselo == (int)OrszagTipusEnum.Magyarorszag) { modelState.AddModelError("GondviseloCimElerhetosegModel_KozteruletTipus_Gondviselo", TanuloResource.KozteruletJellegenekKitolteseKotelezoGondviseloFul); } else { modelState.AddModelError("GondviseloCimElerhetosegModel_KozteruletTipus_Gondviselo_Str", TanuloResource.HelysegNevKitolteseKotelezoGondviseloFul); } } if (string.IsNullOrWhiteSpace(model.GondviseloCimElerhetosegModel.Hazszam_Gondviselo)) { modelState.AddModelError("GondviseloCimElerhetosegModel.GondviseloHazszam", TanuloResource.HazszamKitolteseKotelezoGondviseloFul); } if (Kreta.Web.Classes.Utils.GetTanuloEletkor(model) > 18 && string.IsNullOrWhiteSpace(model.TanuloGondviseloModel.GondviseloNeve)) { modelState.AddModelError("TanuloGondviseloModel.GondviseloNev", TanuloResource.GondviseloNevNemLehetUresSzoveg); } if (Kreta.Web.Classes.Utils.GetTanuloEletkor(model) < 18 && !model.TanuloGondviseloModel.RokonsagiFok.HasValue) { modelState.AddModelError("TanuloGondviseloModel.RokonsagiFok", ErrorResource.GondviseloRokonsagiFokaKotelezogondviseloAdataiFul); } } Kreta.Web.Classes.Utils.TelefonSzamValidation(modelState, model.GondviseloCimElerhetosegModel.Telefon_Gondviselo, model.GondviseloCimElerhetosegModel.TelefonTipus_Gondviselo, TelefonszamTulajdonosEnum.Gondviselo); } if (model.TanuloIgazolvanyModel != null) { var diakigazolvanySzam = model.TanuloIgazolvanyModel.DiakigazolvanySzam?.Replace("_", "") ?? string.Empty; var adoazonositoJel = model.TanuloIgazolvanyModel.AdoazonositoJel?.Replace("_", "") ?? string.Empty; //var bankszamlaszam = model.TanuloIgazolvanyModel.Bankszamlaszam?.Replace("_", "") ?? string.Empty; if (diakigazolvanySzam.Length > 0 && diakigazolvanySzam.Length < 10) { modelState.AddModelError("TanuloIgazolvanyModel.DiakigazolvanySzam", TanuloResource.DiakigazolvanyszamHosszaNemMegfelelo); } Kreta.Web.Classes.Utils.TajSzamValidation(modelState, "TanuloIgazolvanyModel.TajSzam", model.TanuloIgazolvanyModel.TajSzam); if (adoazonositoJel.Length > 0 && adoazonositoJel.Length < 10) { modelState.AddModelError("TanuloIgazolvanyModel.AdoazonositoJel", TanuloResource.AdoazonositoJelHosszaNemMegfelelo); } //if (bankszamlaszam.Length > 0 && bankszamlaszam.Length < 26) // modelState.AddModelError("TanuloIgazolvanyModel.Bankszamlaszam", TanuloResource.BankszamlaszamHosszaNemMegfelelo); if (ClaimData.IsSzakkepzoIntezmeny && !string.IsNullOrWhiteSpace(adoazonositoJel) && !model.TanuloIgazolvanyModel.IsAdoazonositoJelNelkul && !BusinessLogic.Extensions.FelhasznaloExtensions.IsValidAdoazonositoJel(adoazonositoJel, model.TanuloAlapAdatModel.SzuletesiIdo.Value)) { modelState.AddModelError("TanuloIgazolvanyModel.AdoazonositoJel", ErrorResource.AMegadottAdoazonositoJelHibas); } } if (model.CimElerhetosegModel != null) { Kreta.Web.Classes.Utils.TelefonSzamValidation(modelState, model.CimElerhetosegModel.Telefon, model.CimElerhetosegModel.TelefonTipus, TelefonszamTulajdonosEnum.Tanulo); } if (model.TanuloId.HasValue) { var helper = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()); if (helper.HasDuplicatedGondviselo(model.TanuloId.Value)) { modelState.AddModelError("NevRokonsagFoka", TanuloResource.DuplikaltGondviseloNevEsRokonsagiFokAlapjanGondviseloFul); } } if (model.TanuloIgazolvanyModel != null && !string.IsNullOrWhiteSpace(model.TanuloIgazolvanyModel.DiakigazolvanySzam)) { string eredetDiakigazolvanySzam; var tanulokADiakigazolvanyszammal = new List(); //Ha aktív tanévben módosítunk if (ClaimData.IsActivTanev) { eredetDiakigazolvanySzam = string.Empty; if (model.TanuloId.IsEntityId()) { eredetDiakigazolvanySzam = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetDiakigazolvanyszamByTanulo(model.TanuloId.Value); } if (eredetDiakigazolvanySzam != model.TanuloIgazolvanyModel.DiakigazolvanySzam) { tanulokADiakigazolvanyszammal = new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanulokByDiakigazolvanyszam(model.TanuloIgazolvanyModel.DiakigazolvanySzam); if (tanulokADiakigazolvanyszammal.Count > 0) { modelState.AddModelError("TanuloIgazolvanyModel.DiakigazolvanySzam", string.Format(TanuloResource.RendelkezikDiakAMegadottDiakigazolvanyszammal, string.Join(", ", tanulokADiakigazolvanyszammal))); } } } // Ha következő tanévben if (ClaimData.KovTanevID.HasValue && ClaimData.SelectedTanevID == ClaimData.KovTanevID) { eredetDiakigazolvanySzam = string.Empty; if (model.TanuloId.IsEntityId()) { eredetDiakigazolvanySzam = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType()).GetDiakigazolvanyszamByTanulo(model.TanuloId.Value); } if (eredetDiakigazolvanySzam != model.TanuloIgazolvanyModel.DiakigazolvanySzam) { tanulokADiakigazolvanyszammal = new TanuloHelper(ConnectionTypeExtensions.GetNextSessionConnectionType()).GetTanulokByDiakigazolvanyszam(model.TanuloIgazolvanyModel.DiakigazolvanySzam); if (tanulokADiakigazolvanyszammal.Count > 0) { modelState.AddModelError("TanuloIgazolvanyModel.DiakigazolvanySzam", string.Format(TanuloResource.KovetkezoTanevbenMarRendelkezikDiakAMegadottDiakigazolvanyszammal, string.Join(", ", tanulokADiakigazolvanyszammal))); } } } } if (model.TanuloSzocialisModel != null) { if (model.TanuloSzocialisModel.HatranyosHelyzet == null) { modelState.AddModelError("TanuloSzocialisModel.HatranyosHelyzet", TanuloResource.AHatranyosHelyzetErtekeErvenytelen); } } if (model.TanuloJuttatasModel != null) { if (model.TanuloJuttatasModel.Bankszamlaszam != null && !BankszamlaLogic.IsBankAccountNumberValid(model.TanuloJuttatasModel.Bankszamlaszam.Trim())) { modelState.AddModelError("TanuloJuttatasModel.Bankszamlaszam", string.Format(TanuloResource.NemMegfeleloBankszamlaszam, model.TanuloJuttatasModel.Bankszamlaszam)); } if (!model.TanuloJuttatasModel.IsAtlagNelkuli && !model.TanuloJuttatasModel.SzamitottAtlag.HasValue && ( (model.TanuloJuttatasModel.IsBeszamitasosTanulo && !model.TanuloJuttatasModel.IsBeszamitasosFixSzazalek && !model.TanuloJuttatasModel.KeziAtlag.HasValue) || (model.TanuloJuttatasModel.IsSikeresAgazatiVizsga && model.TanuloJuttatasModel.IsAtlagSzakkepzesi && !model.TanuloJuttatasModel.KeziAtlag.HasValue) || (model.TanuloJuttatasModel.IsAtlagFuggoSzazalek && !model.TanuloJuttatasModel.KeziAtlag.HasValue) )) { if (model.TanuloJuttatasModel.IsAtlagFuggoSzazalek) { if (!model.TanuloJuttatasModel.IsBeszamitasosTanulo) { modelState.AddModelError("TanuloJuttatasModel_KeziAtlag", TanuloResource.TanuloSzakkepzesiJuttatasokBeallitasErvenyesAtlagNelkulNemMentheto); } } if (model.TanuloJuttatasModel.IsBeszamitasosTanulo && !model.TanuloJuttatasModel.IsBeszamitasosFixSzazalek) { modelState.AddModelError("TanuloJuttatasModel_KeziAtlag_Beszamitas", TanuloResource.TanuloSzakkepzesiJuttatasokBeallitasErvenyesAtlagNelkulNemMentheto); } if (model.TanuloJuttatasModel.IsSikeresAgazatiVizsga && model.TanuloJuttatasModel.IsAtlagSzakkepzesi) { modelState.AddModelError("TanuloJuttatasModel_KeziAtlag_Alapvizsga", TanuloResource.TanuloSzakkepzesiJuttatasokBeallitasErvenyesAtlagNelkulNemMentheto); } } } } private static void SetUjSzktBlokkNa(TanuloTanugyModel tanuloTanugyModel) { tanuloTanugyModel.AgazatUjSzktTipusId = (int)AgazatUjSzktTipusEnum.na; tanuloTanugyModel.SzakmaTipusId = (int)SzakmaTipusEnum.na; tanuloTanugyModel.SzakmairanyTipusId = (int)SzakmairanyTipusEnum.na; } private static void SetNktBlokkNa(TanuloTanugyModel tanuloTanugyModel) { tanuloTanugyModel.TanulmanyiTeruletNktTipusId = (int)TanulmanyiTeruletNktTipusEnum.na; tanuloTanugyModel.SzakkepesitesNktTipusId = (int)SzakkepesitesNktTipusEnum.na; tanuloTanugyModel.SzakiranyNktTipusId = (int)SzakiranyNktTipusEnum.na; } private static void SetRegiSzktBlokkNa(TanuloTanugyModel tanuloTanugyModel) { tanuloTanugyModel.SzakmacsoportId = (int)SzakmacsoportTipusEnum.Na; tanuloTanugyModel.AgazatId = (int)AgazatTipusEnum.Na; tanuloTanugyModel.SzakkepesitesId = (int)SzakkepesitesTipusEnum.Na; tanuloTanugyModel.ReszSzakkepesitesId = (int)ReszszakkepesitesTipusEnum.Na; } private static void SetUjSzktReszszakmakBlokkNa(TanuloTanugyModel tanuloTanugyModel) { tanuloTanugyModel.SzakmaReszSzakmaTipusId = (int)SzakmaReszSzakmaTipusEnum.na; tanuloTanugyModel.ReszSzakmaTipusId = (int)ReszSzakmaTipusEnum.na; tanuloTanugyModel.AgazatReszSzakmaTipusId = (int)AgazatReszSzakmaTipusEnum.na; } private static void Check4TFelhOktAzonValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, TanuloModel model, FelhasznaloiNevGeneralasModjaEnum felhasznaloiNevGeneralasModja) { var tanevMegnevezes = GetTanevMegnevezesForBelepesCheck(); var felhasznaloHelper = new FelhasznaloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); model.TanuloAlapAdatModel.BejelentkezesiNev = tanuloHelper.SetBelepesiNev(felhasznaloiNevGeneralasModja, model.TanuloAlapAdatModel.BejelentkezesiNev, model.TanuloAlapAdatModel.OktatasiAzonosito); if (!string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.OktatasiAzonosito) || !string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.BejelentkezesiNev) || felhasznaloiNevGeneralasModja == FelhasznaloiNevGeneralasModjaEnum.Oktatasi_azonosito_alapjan) { var anotherYearId = Kreta.Web.Classes.Utils.GetAnotherYearId(); var tanevIds = new List { ClaimData.SelectedTanevID.Value }; if (anotherYearId.HasValue) { tanevIds.Add(anotherYearId.Value); } var list = felhasznaloHelper.Check4TFelhOktAzonValidation(tanevIds, (int)Validation4TEnum.Tanulo, "F", model.TanuloAlapAdatModel.SzuletesiNevElotag, model.TanuloAlapAdatModel.SzuletesiCsaladiNev, model.TanuloAlapAdatModel.SzuletesiUtoNev, "F", model.TanuloAlapAdatModel.AnyjaNeveElotag, model.TanuloAlapAdatModel.AnyjaCsaladiNev, model.TanuloAlapAdatModel.AnyjaUtoNev, model.TanuloAlapAdatModel.SzuletesiHely, model.TanuloAlapAdatModel.SzuletesiIdo, model.TanuloAlapAdatModel.OktatasiAzonosito, model.TanuloAlapAdatModel.BejelentkezesiNev); var selectedTanevUtkozes = list.Where(x => (!model.TanuloId.HasValue || (x.ID != model.TanuloId && x.ElozoTanevRekordId != model.TanuloId) || x.GondviseloId.HasValue) && x.TanevId == ClaimData.SelectedTanevID.Value).ToList(); var anotherTanevUtkozes = list.Where(x => (!model.TanuloId.HasValue || (x.ID != model.TanuloId && x.ElozoTanevRekordId != model.TanuloId) || x.GondviseloId.HasValue) && anotherYearId.HasValue && x.TanevId == anotherYearId.Value).ToList(); var followUpolnivalo = list.Find(x => (!model.TanuloId.HasValue || x.ID != model.TanuloId) && x.TanevId != ClaimData.SelectedTanevID.Value && x.ValidationType == (int)Validation4TEnum.Tanulo && SDAConvert.ToString(x.OktatasiAzonosito) == SDAConvert.ToString(model.TanuloAlapAdatModel.OktatasiAzonosito) && ((x.SzuletesiNevSorrend == "F" && model.TanuloAlapAdatModel.SzuletesiCsaladiNev == x.SzuletesiCsaladiNev && model.TanuloAlapAdatModel.SzuletesiUtoNev == x.SzuletesiUtonev) || (model.TanuloAlapAdatModel.SzuletesiCsaladiNev == x.SzuletesiUtonev && model.TanuloAlapAdatModel.SzuletesiUtoNev == x.SzuletesiCsaladiNev)) && (SDAConvert.ToString(model.TanuloAlapAdatModel.SzuletesiNevElotag) == x.SzuletesiNevElotag) && ((x.AnyjaNevSorrend == "F" && model.TanuloAlapAdatModel.AnyjaCsaladiNev == x.AnyjaCsaladiNev && model.TanuloAlapAdatModel.AnyjaUtoNev == x.AnyjaUtonev) || (model.TanuloAlapAdatModel.AnyjaCsaladiNev == x.AnyjaUtonev && model.TanuloAlapAdatModel.AnyjaUtoNev == x.AnyjaCsaladiNev)) && (SDAConvert.ToString(model.TanuloAlapAdatModel.AnyjaNeveElotag) == x.AnyjaElotag) && x.SzuletesiHely == SDAConvert.ToString(model.TanuloAlapAdatModel.SzuletesiHely) && x.SzuletesiIdo == model.TanuloAlapAdatModel.SzuletesiIdo ); if (followUpolnivalo != null) { model.FollowUpolniId = followUpolnivalo.ID; } if (!string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.OktatasiAzonosito) && selectedTanevUtkozes.Any(x => x.OktatasiAzonosito == model.TanuloAlapAdatModel.OktatasiAzonosito && !x.GondviseloId.HasValue && x.ValidationType == (int)Validation4TEnum.Tanulo)) { modelState.AddModelError("TanuloAlapAdatModel.OktatasiAzonosito", string.Format(ErrorResource.OktatasiAzonositoFoglaltAltal, string.Join(", ", selectedTanevUtkozes .Where(x => x.OktatasiAzonosito == SDAConvert.ToString(model.TanuloAlapAdatModel.OktatasiAzonosito) && !x.GondviseloId.HasValue && x.ValidationType == (int)Validation4TEnum.Tanulo) .Select(x => x.NyomtatasiNev)), string.Empty)); } else if (!string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.OktatasiAzonosito) && followUpolnivalo == null && anotherTanevUtkozes.Any(x => x.OktatasiAzonosito == SDAConvert.ToString(model.TanuloAlapAdatModel.OktatasiAzonosito) && !x.GondviseloId.HasValue && x.ValidationType == (int)Validation4TEnum.Tanulo)) { modelState.AddModelError("TanuloAlapAdatModel.OktatasiAzonosito", string.Format(ErrorResource.OktatasiAzonositoFoglaltAltal, string.Join(", ", anotherTanevUtkozes .Where(x => x.OktatasiAzonosito == SDAConvert.ToString(model.TanuloAlapAdatModel.OktatasiAzonosito) && !x.GondviseloId.HasValue && x.ValidationType == (int)Validation4TEnum.Tanulo) .Select(x => x.NyomtatasiNev)), tanevMegnevezes)); } var errorKey = "TanuloAlapAdatModel." + (!string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.BejelentkezesiNev) ? "BejelentkezesiNev" : "OktatasiAzonosito"); var bejelentkezesiNev = !string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.BejelentkezesiNev) ? model.TanuloAlapAdatModel.BejelentkezesiNev : model.TanuloAlapAdatModel.OktatasiAzonosito; var selectedTanevUtkozesForBejelentkezesiNev = selectedTanevUtkozes.Where(x => x.BejelentkezesiNev?.ToComparableString() == bejelentkezesiNev?.ToComparableString()); var anotherTanevUtkozesForBejelentkezesiNev = anotherYearId.HasValue ? anotherTanevUtkozes.Where(x => x.BejelentkezesiNev?.ToComparableString() == bejelentkezesiNev?.ToComparableString() && followUpolnivalo == null) : new List(); FelhasznalonevValidacio(modelState, errorKey, selectedTanevUtkozesForBejelentkezesiNev, anotherTanevUtkozesForBejelentkezesiNev, tanevMegnevezes); if (list.Any(x => (!model.TanuloId.HasValue || x.ID != model.TanuloId) && x.TanevId == ClaimData.SelectedTanevID.Value && x.ValidationType == (int)Validation4TEnum.Tanulo && ((x.SzuletesiNevSorrend == "F" && model.TanuloAlapAdatModel.SzuletesiCsaladiNev == x.SzuletesiCsaladiNev && model.TanuloAlapAdatModel.SzuletesiUtoNev == x.SzuletesiUtonev) || (model.TanuloAlapAdatModel.SzuletesiCsaladiNev == x.SzuletesiUtonev && model.TanuloAlapAdatModel.SzuletesiUtoNev == x.SzuletesiCsaladiNev)) && SDAConvert.ToString(model.TanuloAlapAdatModel.SzuletesiNevElotag) == x.SzuletesiNevElotag && ((x.AnyjaNevSorrend == "F" && model.TanuloAlapAdatModel.AnyjaCsaladiNev == x.AnyjaCsaladiNev && model.TanuloAlapAdatModel.AnyjaUtoNev == x.AnyjaUtonev) || (model.TanuloAlapAdatModel.AnyjaCsaladiNev == x.AnyjaUtonev && model.TanuloAlapAdatModel.AnyjaUtoNev == x.AnyjaCsaladiNev)) && SDAConvert.ToString(model.TanuloAlapAdatModel.AnyjaNeveElotag) == x.AnyjaElotag && x.SzuletesiHely == SDAConvert.ToString(model.TanuloAlapAdatModel.SzuletesiHely) && x.SzuletesiIdo == model.TanuloAlapAdatModel.SzuletesiIdo && SDAConvert.ToString(model.TanuloAlapAdatModel.OktatasiAzonosito) == x.OktatasiAzonosito)) { throw new Check4TValidacioExistsException(string.Empty); } } } private static string GetTanevMegnevezesForBelepesCheck() => ClaimData.IsKovTanev ? ErrorResource.AzAktualisTaneven : ErrorResource.AKovetkezoTaneven; public static void TanuloTobbesModCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, TanuloTobbesModModel model) { if (model.TanuloTobbesAlapAdatModel != null) { if (model.TanuloTobbesAlapAdatModel.Allampolgarsag.HasValue && model.TanuloTobbesAlapAdatModel.Allampolgarsag2.HasValue && model.TanuloTobbesAlapAdatModel.Allampolgarsag == model.TanuloTobbesAlapAdatModel.Allampolgarsag2) { modelState.AddModelError("TanuloAlapAdatModel.Allampolgarsag2", ErrorResource.MegegyezoAllapolgarsag); } } if (model.TanuloTobbesTanugyModel != null) { if (model.TanuloTobbesTanugyModel.MagantanulosagKezdete.HasValue && model.TanuloTobbesTanugyModel.MagantanulosagKezdete.Value > DateTime.Now) { var errorMsg = ClaimData.IsSelectedTanev20_21OrLater ? TanuloResource.AzEgyeniMunkarendKezdeteNemLehetNagyobbMintAzAktualisDatum : TanuloResource.AMagantanulosagKezdeteNemLehetNagyobbMintAzAktualisDatum; modelState.AddModelError("TanuloTobbesTanugyModel.MagantanulosagKezdete", TanuloResource.AMagantanulosagKezdeteNemLehetNagyobbMintAzAktualisDatum); } if (model.TanuloTobbesTanugyModel.MagantanulosagKezdete.HasValue && model.TanuloTobbesTanugyModel.MagantanulosagVege.HasValue && model.TanuloTobbesTanugyModel.MagantanulosagKezdete.Value > model.TanuloTobbesTanugyModel.MagantanulosagVege.Value) { modelState.AddModelError("TanuloTobbesTanugyModel.MagantanulosagKezdete", TanuloResource.EgyeniMunkarendKezdeteNemLehetKesobbMintAVege); } if (new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled)) { if (model.TanuloTobbesTanugyModel.SzakmaTipusId.HasValue || model.TanuloTobbesTanugyModel.SzakmairanyTipusId.HasValue || model.TanuloTobbesTanugyModel.TanuloSzervezetId.HasValue) { var (szakmaUtkozesTanuloNevek, szakmairanyUtkozesTanuloNevek, szervezetUtkozesTanuloNevek) = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()) .GetTanuloSzervezetSzakmaUtkozes( model.TobbesModIdList.Select(x => x.TanuloId).ToList(), ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, model.TanuloTobbesTanugyModel.TanuloSzervezetId, model.TanuloTobbesTanugyModel.SzakmaTipusId, model.TanuloTobbesTanugyModel.SzakmairanyTipusId); if (szakmaUtkozesTanuloNevek.Count > 0) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.SzakmaTipusId)}", string.Format(DualisResource.SzakmaUtkozesTanuloNevek0, string.Join(",", szakmaUtkozesTanuloNevek))); } if (szakmairanyUtkozesTanuloNevek.Count > 0) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.SzakmairanyTipusId)}", string.Format(DualisResource.SzakmairanyUtkozesTanuloNevek0, string.Join(",", szakmairanyUtkozesTanuloNevek))); } if (szervezetUtkozesTanuloNevek.Count > 0) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.TanuloSzervezetId)}", string.Format(DualisResource.SzervezetUtkozesTanuloNevek0, string.Join(",", szervezetUtkozesTanuloNevek))); } } } if (ClaimData.IsSelectedTanev21_22OrLater) { if ((model.TanuloTobbesTanugyModel.EgyuttmukodesiMegallapodasos.HasValue && model.TanuloTobbesTanugyModel.EgyuttmukodesiMegallapodasos > 0 ? 1 : 0) + (model.TanuloTobbesTanugyModel.Tanuloszerzodeses.HasValue && model.TanuloTobbesTanugyModel.Tanuloszerzodeses > 0 ? 1 : 0) + (model.TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel.HasValue && model.TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel > 0 ? 1 : 0) > 1) { if (model.TanuloTobbesTanugyModel.EgyuttmukodesiMegallapodasos.HasValue && model.TanuloTobbesTanugyModel.EgyuttmukodesiMegallapodasos > 0) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.EgyuttmukodesiMegallapodasos)}", ErrorResource.TanuloTanugyesSzerzodesKozulCsakEgyValaszthato); } if (model.TanuloTobbesTanugyModel.Tanuloszerzodeses.HasValue && model.TanuloTobbesTanugyModel.Tanuloszerzodeses > 0) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.Tanuloszerzodeses)}", ErrorResource.TanuloTanugyesSzerzodesKozulCsakEgyValaszthato); } if (model.TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel.HasValue && model.TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel > 0) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel)}", ErrorResource.TanuloTanugyesSzerzodesKozulCsakEgyValaszthato); } } if (model.TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel.HasValue && model.TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel > 0 && (model.TanuloTobbesTanugyModel.SzakkepzesiMunkaszerzodesModels?.Count ?? 0) > 0) { var felhelyHelper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var isMindSzakkepzeses = model.TobbesModIdList.All(x => { var osztalyJellemzok = felhelyHelper.GetOsztalyJellemzoi(osztalyId: x.OsztalyId); return osztalyJellemzok[OsztalyJellemzoEnum.IsSzakkepzeses] || osztalyJellemzok[OsztalyJellemzoEnum.IsNKTSzakkepzeses]; }); var isMindNemSzakkepzeses = model.TobbesModIdList.All(x => { var osztalyJellemzok = felhelyHelper.GetOsztalyJellemzoi(osztalyId: x.OsztalyId); return !(osztalyJellemzok[OsztalyJellemzoEnum.IsSzakkepzeses] || osztalyJellemzok[OsztalyJellemzoEnum.IsNKTSzakkepzeses]); }); if (isMindNemSzakkepzeses) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.SzakkepzesiMunkaszerzodesModels)}", ErrorResource.MunkaszerzodesKezdeteVegeNemSzakkepzesesTanulok); } else if (!isMindSzakkepzeses) { modelState.AddModelError($"{nameof(TanuloTobbesTanugyModel)}.{nameof(TanuloTobbesTanugyModel.SzakkepzesiMunkaszerzodesModels)}", ErrorResource.MunkaszerzodesKezdeteVegeCsakAzonosSzakkepzesesTipusuTanuloknak); } } } } } public static System.Web.Http.ModelBinding.ModelStateDictionary CheckGondviseloCimCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary ms, CimElerhetosegModel model) { if (!model.TanulovalEgyezik) { if (!model.Orszag.HasValue) { ms.AddModelError("Orszag", TanuloResource.OrszagMegadasaKotelezo); } if (string.IsNullOrWhiteSpace(model.Iranyitoszam_Str)) { if (model.Orszag == (int)OrszagTipusEnum.Magyarorszag) { ms.AddModelError("Iranyitoszam", TanuloResource.IranyitoszamKitolteseKotelezo); } else { ms.AddModelError("Iranyitoszam_Str", TanuloResource.IranyitoszamKitolteseKotelezo); } } if (string.IsNullOrWhiteSpace(model.HelysegNev_Str)) { if (model.Orszag == (int)OrszagTipusEnum.Magyarorszag) { ms.AddModelError("HelysegNev", TanuloResource.HelysegNevKitolteseKotelezo); } else { ms.AddModelError("HelysegNev_Str", TanuloResource.HelysegNevKitolteseKotelezo); } } if (string.IsNullOrWhiteSpace(model.KozteruletNev)) { ms.AddModelError("KozteruletNev", TanuloResource.KozteruletNevenekKitolteseKotelezo); } if (string.IsNullOrWhiteSpace(model.KozteruletTipus_Str)) { if (model.Orszag == (int)OrszagTipusEnum.Magyarorszag) { ms.AddModelError("KozteruletTipus", TanuloResource.KozteruletJellegenekKitolteseKotelezo); } else { ms.AddModelError("KozteruletTipus_Str", TanuloResource.KozteruletJellegenekKitolteseKotelezo); } } if (!model.CimTipus.HasValue) { ms.AddModelError("CimTipus", TanuloResource.CimTipusKitolteseKotelezo); } if (string.IsNullOrWhiteSpace(model.Hazszam)) { ms.AddModelError("Hazszam", TanuloResource.HazszamKitolteseKotelezo); } } return ms; } public static bool KozSzolgDateValidate(DateTime? kezdete, DateTime? vege) { return vege == null || kezdete <= vege; } public static TanuloSearchModel SetButtonVisibility(TanuloSearchModel model) { var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var tanuloHozzaferesGeneralasLathato = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanuloi_jelszavak_generalasa_az_alabbi_ertek_alapjan) != JelszoGeneralasModjaEnum.Egyeni; model.TanuloHozzaferesGeneralasaGombLathato = tanuloHozzaferesGeneralasLathato; model.TanuloJelszoGeneralasaGombLathato = tanuloHozzaferesGeneralasLathato; model.GondviseloHozzaferesGeneralasaGombLathato = TanuloHelper.GetGondviseloHozzaferesGeneralasLathato(); model.GondviseloJelszoGeneralasaGombLathato = TanuloHelper.GetGondviseloJelszoGeneralasLathato(); return model; } public static TanuloModel CreateNewTanuloPopupModel() { return new TanuloModel { TanevId = ClaimData.SelectedTanevID.Value, IsSzirIntezmeny = ClaimData.IsSzirIntezmeny, TanuloBTMProblemakModel = new TanuloBTMProblemakModel(), TanuloAlapAdatModel = new TanuloAlapAdatModel { NemList = GetNemList(justData: true), FelhasznaloiNevGeneralasModja = TanuloHelper.GetFelhasznaloiNevGeneralasModja(), Allampolgarsag = (int)AllampolgarsagEnum.magyar, Anyanyelv = (int)AnyanyelvEnum.magyar, SzuletesiOrszag = (int)OrszagTipusEnum.Magyarorszag }, CimElerhetosegModel = new CimElerhetosegModel { Orszag = (int)OrszagTipusEnum.Magyarorszag, CimTipus = (int)CimTipusEnum.allando_lakcim, AlapertelmezettCim = true, IsAlapertelmezettModosithato = false, TanulovalEgyezik = false, AlapertelmezettEmail = true, AlapertelmezettTel = true, IsGondviseloElerhetoseg = false, FormSettings = new List() { CimElerhetosegConstant.CimSectionVisible, CimElerhetosegConstant.EmailSectionVisible, CimElerhetosegConstant.TelSectionVisible, CimElerhetosegConstant.IsNew } }, TanuloGondviseloModel = new TanuloGondviseloModel { RokonsagiFok = (int)RokonsagiFokEnum.na, GondviseloAutoEmail = true, GondviseloBelepesFileLetoltesSzukseges = true }, GondviseloCimElerhetosegModel = new GondviseloCimElerhetosegModel { Orszag_Gondviselo = (int)OrszagTipusEnum.Magyarorszag, CimTipus_Gondviselo = (int)CimTipusEnum.allando_lakcim, TanulovalEgyezik_Gondviselo = true, }, TanuloTanugyModel = new TanuloTanugyModel { FelvetelTaneveId = ClaimData.SelectedTanevID, IsSzamitogepetOktCelraHasznal = true }, TanuloSzocialisModel = new TanuloSzocialisModel { HatranyosHelyzet = (int)HatranyosHelyzetTipusEnum.nem_hatranyos_helyzetu, TestnevelesTipusa = (int)TestnevelesTipusEnum.normal_testneveles }, TanuloSajatosAdatModel = new TanuloSajatosAdatModel(), TanuloIgazolvanyModel = new TanuloIgazolvanyModel { IgazolvanyTipus = (int)IgazolvanyTipusEnum.Szemelyi_igazolvany }, TanuloVallasModel = new TanuloVallasModel(), TanuloBankszamlaModel = new TanuloBankszamlaModel() { IsReadonly = true, }, GlodalData = new GlodalData() { isNewTanulo = true, isAktivTanev = ClaimData.IsActivTanev }, TanuloUjJogviszonyModel = new JogviszonyModel() }; } public static void SetTanuloSzakkepzesesBasicProperties(TanuloModel tanulo) { if (!tanulo.TanuloTanugyModel.SzakmacsoportId.HasValue) { tanulo.TanuloTanugyModel.SzakmacsoportId = (int)SzakmacsoportTipusEnum.Na; } if (!tanulo.TanuloTanugyModel.AgazatId.HasValue) { tanulo.TanuloTanugyModel.AgazatId = (int)AgazatTipusEnum.Na; } if (!tanulo.TanuloTanugyModel.SzakkepesitesId.HasValue) { tanulo.TanuloTanugyModel.SzakkepesitesId = (int)SzakkepesitesTipusEnum.Na; } if (!tanulo.TanuloTanugyModel.ReszSzakkepesitesId.HasValue) { tanulo.TanuloTanugyModel.ReszSzakkepesitesId = (int)ReszszakkepesitesTipusEnum.Na; } if (!tanulo.TanuloTanugyModel.AgazatUjSzktTipusId.HasValue) { tanulo.TanuloTanugyModel.AgazatUjSzktTipusId = (int)AgazatUjSzktTipusEnum.na; } if (!tanulo.TanuloTanugyModel.SzakmaTipusId.HasValue) { tanulo.TanuloTanugyModel.SzakmaTipusId = (int)SzakmaTipusEnum.na; } if (!tanulo.TanuloTanugyModel.SzakmairanyTipusId.HasValue) { tanulo.TanuloTanugyModel.SzakmairanyTipusId = (int)SzakmairanyTipusEnum.na; } if (!tanulo.TanuloTanugyModel.SzakiranyNktTipusId.HasValue) { tanulo.TanuloTanugyModel.SzakiranyNktTipusId = (int)SzakiranyNktTipusEnum.na; } if (!tanulo.TanuloTanugyModel.SzakkepesitesNktTipusId.HasValue) { tanulo.TanuloTanugyModel.SzakkepesitesNktTipusId = (int)SzakkepesitesNktTipusEnum.na; } if (!tanulo.TanuloTanugyModel.TanulmanyiTeruletNktTipusId.HasValue) { tanulo.TanuloTanugyModel.TanulmanyiTeruletNktTipusId = (int)TanulmanyiTeruletNktTipusEnum.na; } if (!tanulo.TanuloTanugyModel.ReszSzakmaTipusId.HasValue) { tanulo.TanuloTanugyModel.ReszSzakmaTipusId = (int)ReszSzakmaTipusEnum.na; } if (!tanulo.TanuloTanugyModel.AgazatReszSzakmaTipusId.HasValue) { tanulo.TanuloTanugyModel.AgazatReszSzakmaTipusId = (int)AgazatReszSzakmaTipusEnum.na; } if (!tanulo.TanuloTanugyModel.SzakmaReszSzakmaTipusId.HasValue) { tanulo.TanuloTanugyModel.SzakmaReszSzakmaTipusId = (int)SzakmaReszSzakmaTipusEnum.na; } } public static void SetTanuloAmiKepzesiJellemzokProperties(TanuloModel tanulo) { if (!tanulo.AmiKepzesiJellemzokModel.MufajTipusId.HasValue) { tanulo.AmiKepzesiJellemzokModel.MufajTipusId = (int)MufajTipusEnum.na; } if (!tanulo.AmiKepzesiJellemzokModel.TanszakTipusId.HasValue) { tanulo.AmiKepzesiJellemzokModel.TanszakTipusId = (int)TanszakTipusEnum.na; } } public static string GetTanuloModalHeader(int tanuloId) { return new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloModalHeader(tanuloId); } public static FelhasznaloiNevGeneralasModjaEnum GetFelhasznaloiNevGeneralasModja(TanuloModel model) { if (string.IsNullOrWhiteSpace(model.TanuloAlapAdatModel.OktatasiAzonosito) && model.TanuloAlapAdatModel.IsOktatasiAzonositoNelkul) { return FelhasznaloiNevGeneralasModjaEnum.Egyeni; } return FelhasznaloiNevGeneralasModjaEnum.Oktatasi_azonosito_alapjan; } public static TanuloKozszolgModel GetTanuloKozSzolg(int tanuloId) { var co = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetKozossegiSzolgalatbyId(tanuloId); return TanuloKozszolgModel.ConvertCoToModel(co); } public static CimElerhetosegModel GetTanuloElerhetosegTel(int tanuloId) { var co = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloElerhetosegTelById(tanuloId); return CimElerhetosegModel.ConvertCoToModel(co); } public static CimElerhetosegModel GetTanuloElerhetosegCimTelEmail(int tanuloId) { var co = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(tanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater); return CimElerhetosegModel.ConvertCoToModel(co); } public static CimElerhetosegModel GetTanuloElerhetosegEmail(int tanuloId) { var co = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloElerhetosegEmailById(tanuloId); return CimElerhetosegModel.ConvertCoToModel(co); } public static CimElerhetosegModel GetTanuloElerhetosegCim(int tanuloId) { var co = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloGondviseloCimById(tanuloId); return CimElerhetosegModel.ConvertCoToModel(co); } public static TanuloModGondviseloModel GetTanuloGondviselo(int tanuloId) { var co = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloGondviseloById(tanuloId); return TanuloModGondviseloModel.ConvertCoToModel(co); } public static CimElerhetosegModel GetGondviseloElerhetosegCim(int cimId) { var tanuloHelper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var co = tanuloHelper.GetTanuloGondviseloCimById(cimId); var model = CimElerhetosegModel.ConvertCoToModel(co); model.AlapertelmezettCim = tanuloHelper.IsGondviseloAlapertelmezettCim(model.GondviseloId.Value, cimId); return model; } public static TanuloFelmentesModel GetFelmentes(int tanuloId) { var co = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloFelmentesById(tanuloId); return TanuloFelmentesModel.ConvertCoToModel(co); } public static HozzaferesGeneralasaPopupModel AzonositoGeneralas(bool isTanulo, bool fileLetoltesSzukseges, bool isPasswordReset, List tanuloIdList = null, bool emailKuldesSzukseges = false, bool toroltFelhasznaloBelepes = false) { if (isPasswordReset && (tanuloIdList == null || tanuloIdList.Count == 0)) { throw new StatusError(HttpStatusCode.BadRequest, TanuloResource.JelszavakAlaphelyzetbeAllitasahozLeagalabbEgyTanuloKivalasztasaSzukseges); } var popupModel = new HozzaferesGeneralasaPopupModel { IsPasswordReset = isPasswordReset }; BelepesiAdatokListCO belepesList; DataSet belepesDataSet; var helper = new HozzaferesGeneralasaHelper(ConnectionTypeExtensions.GetOrganizationConnectionType()); belepesList = isTanulo ? helper.TanuloAzonositoGeneralas(tanuloIdList, isPasswordReset, ClaimData.FelhasznaloId, csakAkiknekNincsAzonositojuk: true, emailKuldesSzukseges, toroltFelhasznaloBelepes: toroltFelhasznaloBelepes) : helper.GondviseloAzonositoGeneralas(tanuloIdList, isPasswordReset, ClaimData.FelhasznaloId); belepesDataSet = helper.ConvertBelepesiAdatokCoToDataset(belepesList, isTanulo); popupModel.ErrorList = belepesList.ErrorList; popupModel.IsError = belepesList.ErrorList.Count > 0; popupModel.EmailErrors = belepesList.EmailErrors; if (popupModel.ErrorList.Contains(TanuloResource.TanuloAzonositoGeneralasUresDokumentum)) { popupModel.IsError = false; throw new StatusError(HttpStatusCode.BadRequest, TanuloResource.TanuloAzonositoGeneralasUresDokumentum); } if (popupModel.ErrorList.Contains(FelhasznaloBelepesResource.EgyeniMegadasSzerepelARendszerbeallitasoknalIgyAFelhasznalonevetEsJelszotATanuloknalAllithatjaBe)) { popupModel.IsError = false; throw new StatusError(HttpStatusCode.BadRequest, FelhasznaloBelepesResource.EgyeniMegadasSzerepelARendszerbeallitasoknalIgyAFelhasznalonevetEsJelszotATanuloknalAllithatjaBe); } if (belepesList.IsUresFelhasznaloNevError) { throw new StatusError(HttpStatusCode.BadRequest, popupModel.ErrorList.Single()); } if (belepesList.IsUresOktatasiAzonositoError) { throw new StatusError(HttpStatusCode.BadRequest, popupModel.ErrorList.Single()); } if (fileLetoltesSzukseges) { if (belepesDataSet.Tables[0].Rows.Count > 0) { var nevmodel = new NyomtatvanyNevGeneralasModel { TanevID = ClaimData.AktivTanevID }; var fileName = CommonExtensions.NevGeneralas("BelepesiAdatok", nevmodel); popupModel.FileString = BelepesiAdatokPdfLogic.GetFileLetoltesUrl(belepesDataSet, isTanulo ? Core.Constants.FrxNames.TanuloBelepesiAdatok : Core.Constants.FrxNames.HozzatartozoJelszoAdatok, fileName); } } return popupModel; } public static HozzaferesGeneralasaPopupModel SetKijeloltTanulokGondviseloiToBovitett(bool emailKuldesSzukseges, bool fileLetoltesSzukseges, List tanuloIdList) { var popupModel = new HozzaferesGeneralasaPopupModel(); BelepesiAdatokListCO belepesList; DataSet belepesDataSet; var helper = new HozzaferesGeneralasaHelper(ConnectionTypeExtensions.GetOrganizationConnectionType()); belepesList = helper.SetKijeloltTanulokGondviseloiToBovitett(tanuloIdList, emailKuldesSzukseges); belepesDataSet = helper.ConvertBelepesiAdatokCoToDataset(belepesList, isTanulo: false); if (!string.IsNullOrWhiteSpace(belepesList.EmailErrors)) { popupModel.EmailErrors = belepesList.EmailErrors; } if (fileLetoltesSzukseges) { var nevmodel = new NyomtatvanyNevGeneralasModel { TanevID = ClaimData.AktivTanevID }; var fileName = CommonExtensions.NevGeneralas("BelepesiAdatok", nevmodel); popupModel.FileString = BelepesiAdatokPdfLogic.GetFileLetoltesUrl(belepesDataSet, Core.Constants.FrxNames.HozzatartozoJelszoAdatok, fileName); } return popupModel; } public static HozzaferesGeneralasaPopupModel SetGondviseloToBovitett(bool emailKuldesSzukseges, bool fileLetoltesSzukseges, List gondviseloIdList) { var popupModel = new HozzaferesGeneralasaPopupModel(); BelepesiAdatokListCO belepesList; DataSet belepesDataSet; var helper = new HozzaferesGeneralasaHelper(ConnectionTypeExtensions.GetOrganizationConnectionType()); belepesList = helper.SetGondviseloToBovitett(gondviseloIdList, emailKuldesSzukseges); belepesDataSet = helper.ConvertBelepesiAdatokCoToDataset(belepesList, isTanulo: false); if (!string.IsNullOrWhiteSpace(belepesList.EmailErrors)) { popupModel.EmailErrors = belepesList.EmailErrors; } if (fileLetoltesSzukseges) { var nevmodel = new NyomtatvanyNevGeneralasModel { TanevID = ClaimData.AktivTanevID }; var fileName = CommonExtensions.NevGeneralas("BelepesiAdatok", nevmodel); popupModel.FileString = BelepesiAdatokPdfLogic.GetFileLetoltesUrl(belepesDataSet, Core.Constants.FrxNames.HozzatartozoJelszoAdatok, fileName); } return popupModel; } public static TanuloAdatCO GetTanuloAdatCO(int tanuloId) { return new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(tanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater); } public static List GetColumnsTanulokLakcimmel() { var items = new List { new ExportColumn() { Field = nameof(TanuloResource.Neve), Title = TanuloResource.Neve }, new ExportColumn() { Field = nameof(TanuloResource.Osztaly), Title = TanuloResource.Osztaly }, new ExportColumn() { Field = nameof(TanuloResource.SzuletesiDatuma), Title = TanuloResource.SzuletesiDatuma }, new ExportColumn() { Field = nameof(TanuloResource.AnyjaNeve), Title = TanuloResource.AnyjaNeve }, new ExportColumn() { Field = nameof(TanuloResource.OktatasiAzonositoja), Title = TanuloResource.TanuloOktatasiAzonosito }, new ExportColumn() { Field = nameof(TanuloResource.KollegiumiEllatasos), Title = TanuloResource.KollegiumiEllatasos }, new ExportColumn() { Field = nameof(TanuloResource.Bejaro), Title = TanuloResource.Bejaro }, new ExportColumn() { Field = nameof(TanuloResource.Telefon), Title = TanuloResource.Telefon }, new ExportColumn() { Field = nameof(TanuloResource.EmailCim), Title = TanuloResource.EmailCim }, new ExportColumn() { Field = nameof(TanuloResource.AllandoLakcimIranyitoszam), Title = TanuloResource.AllandoLakcimIranyitoszam }, new ExportColumn() { Field = nameof(TanuloResource.AllandoLakcimVaros), Title = TanuloResource.AllandoLakcimVaros }, new ExportColumn() { Field = nameof(TanuloResource.AllandoLakcimKozteruletNeve), Title = TanuloResource.AllandoLakcimKozteruletNeve }, new ExportColumn() { Field = nameof(TanuloResource.AllandoLakcimKozteruletJellege), Title = TanuloResource.AllandoLakcimKozteruletJellege }, new ExportColumn() { Field = nameof(TanuloResource.AllandoLakcimHazszam), Title = TanuloResource.AllandoLakcimHazszam }, new ExportColumn() { Field = nameof(TanuloResource.AllandoLakcimEmelet), Title = TanuloResource.AllandoLakcimEmelet }, new ExportColumn() { Field = nameof(TanuloResource.AllandoLakcimAjto), Title = TanuloResource.AllandoLakcimAjto }, new ExportColumn() { Field = nameof(TanuloResource.IdeiglenesLakcimIranyitoszam), Title = TanuloResource.IdeiglenesLakcimIranyitoszam }, new ExportColumn() { Field = nameof(TanuloResource.IdeiglenesLakcimVaros), Title = TanuloResource.IdeiglenesLakcimVaros }, new ExportColumn() { Field = nameof(TanuloResource.IdeiglenesLakcimKozteruletNeve), Title = TanuloResource.IdeiglenesLakcimKozteruletNeve }, new ExportColumn() { Field = nameof(TanuloResource.IdeiglenesLakcimKozteruletJellege), Title = TanuloResource.IdeiglenesLakcimKozteruletJellege }, new ExportColumn() { Field = nameof(TanuloResource.IdeiglenesLakcimHazszam), Title = TanuloResource.IdeiglenesLakcimHazszam }, new ExportColumn() { Field = nameof(TanuloResource.IdeiglenesLakcimEmelet), Title = TanuloResource.IdeiglenesLakcimEmelet }, new ExportColumn() { Field = nameof(TanuloResource.IdeiglenesLakcimAjto), Title = TanuloResource.IdeiglenesLakcimAjto }, new ExportColumn() { Field = nameof(TanuloResource.TartozkodasiHelyIranyitoszam), Title = TanuloResource.TartozkodasiHelyIranyitoszam }, new ExportColumn() { Field = nameof(TanuloResource.TartozkodasiHelyVaros), Title = TanuloResource.TartozkodasiHelyVaros }, new ExportColumn() { Field = nameof(TanuloResource.TartozkodasiHelyKozteruletNeve), Title = TanuloResource.TartozkodasiHelyKozteruletNeve }, new ExportColumn() { Field = nameof(TanuloResource.TartozkodasiHelyKozteruletJellege), Title = TanuloResource.TartozkodasiHelyKozteruletJellege }, new ExportColumn() { Field = nameof(TanuloResource.TartozkodasiHelyHazszam), Title = TanuloResource.TartozkodasiHelyHazszam }, new ExportColumn() { Field = nameof(TanuloResource.TartozkodasiHelyEmelet), Title = TanuloResource.TartozkodasiHelyEmelet }, new ExportColumn() { Field = nameof(TanuloResource.TartozkodasiHelyAjto), Title = TanuloResource.TartozkodasiHelyAjto }, new ExportColumn() { Field = nameof(TanuloResource.IntezmenycimIranyitoszam), Title = TanuloResource.IntezmenycimIranyitoszam }, new ExportColumn() { Field = nameof(TanuloResource.IntezmenycimVaros), Title = TanuloResource.IntezmenycimVaros }, new ExportColumn() { Field = nameof(TanuloResource.IntezmenycimKozteruletNeve), Title = TanuloResource.IntezmenycimKozteruletNeve }, new ExportColumn() { Field = nameof(TanuloResource.IntezmenycimKozteruletJellege), Title = TanuloResource.IntezmenycimKozteruletJellege }, new ExportColumn() { Field = nameof(TanuloResource.IntezmenycimHazszam), Title = TanuloResource.IntezmenycimHazszam }, new ExportColumn() { Field = nameof(TanuloResource.IntezmenycimEmelet), Title = TanuloResource.IntezmenycimEmelet }, new ExportColumn() { Field = nameof(TanuloResource.IntezmenycimAjto), Title = TanuloResource.IntezmenycimAjto }, new ExportColumn() { Field = nameof(TanuloResource.IsmeretlenLakcimIranyitoszam), Title = TanuloResource.IsmeretlenLakcimIranyitoszam }, new ExportColumn() { Field = nameof(TanuloResource.IsmeretlenLakcimVaros), Title = TanuloResource.IsmeretlenLakcimVaros }, new ExportColumn() { Field = nameof(TanuloResource.IsmeretlenLakcimKozteruletNeve), Title = TanuloResource.IsmeretlenLakcimKozteruletNeve }, new ExportColumn() { Field = nameof(TanuloResource.IsmeretlenLakcimKozteruletJellege), Title = TanuloResource.IsmeretlenLakcimKozteruletJellege }, new ExportColumn() { Field = nameof(TanuloResource.IsmeretlenLakcimHazszam), Title = TanuloResource.IsmeretlenLakcimHazszam }, new ExportColumn() { Field = nameof(TanuloResource.IsmeretlenLakcimEmelet), Title = TanuloResource.IsmeretlenLakcimEmelet }, new ExportColumn() { Field = nameof(TanuloResource.IsmeretlenLakcimAjto), Title = TanuloResource.IsmeretlenLakcimAjto } }; return items; } public static List GetColumnsforExport() { var items = new List { new ExportColumn() { Field = "TanuloNeve", Title = TanuloResource.Nev }, new ExportColumn() { Field = "AnyjaNeve", Title = TanuloResource.AnyjaNeve }, new ExportColumn() { Field = "SzuletesiHely", Title = TanuloResource.SzuletesiHely }, new ExportColumn() { Field = "SzuletesiIdo", Title = TanuloResource.SzuletesiIdo }, new ExportColumn() { Field = "OktatasiAzonosito", Title = TanuloResource.OktatasiAzonosito }, new ExportColumn() { Field = "IsTankotelezettText", Title = TanuloResource.Tankotelezett }, new ExportColumn() { Field = "Osztaly", Title = TanuloResource.Osztaly } }; return items; } public static DataSet GetDataSetTanuloExport(string searchFilter, string sortColumn, string sortDir) { var model = JsonConvert.DeserializeObject(searchFilter); var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var helper = new TanuloHelper(connectionType); var tanulok = helper.TanuloKereses(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev)); tanulok.Tables[0].Columns.Add("SzuletesiIdoStr", typeof(string)); foreach (DataRow row in tanulok.Tables[0].Rows) { var dt = DateTime.Parse(row["SzuletesiIdo"].ToString()); row["SzuletesiIdoStr"] = dt.ToString("yyyy.MM.dd."); } tanulok.Tables[0].Columns.Remove("SzuletesiIdo"); tanulok.Tables[0].Columns["SzuletesiIdoStr"].ColumnName = "SzuletesiIdo"; if (sortColumn != "-" && sortDir != "-") { var result = new DataSet(); tanulok.Tables[0].DefaultView.Sort = $"{sortColumn.ToUpper()} {sortDir.ToUpper()}"; result.Tables.Add(tanulok.Tables[0].DefaultView.ToTable()); return result; } return tanulok; } public static void TanuloFelmentesCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, TanuloFelmentesModel model) { if (model.Kezdete.HasValue && model.Vege.HasValue && model.Vege < model.Kezdete) { modelState.AddModelError("Datumok", StringResourcesUtil.GetString(4295)); //Az igazolás érvényességének vége nem lehet korábban mint a kezdete! } if (model.ID == 0 && model.TantargyIdList.Length == 0) { modelState.AddModelError("TantargyId", ErrorResource.TantargyKivalasztasaKotelezo); } if (model.ID != 0 && !model.TantargyId.HasValue) { modelState.AddModelError("TantargyId", ErrorResource.TantargyKivalasztasaKotelezo); } } public static void TanuloGondviseloSaveValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, TanuloModGondviseloModel model) { if (!string.IsNullOrWhiteSpace(model.GondviseloBejelentkezesiNev) && model.GondviseloBejelentkezesiNev.Trim().Length == 0) { throw new StatusError(HttpStatusCode.BadRequest, StringResourcesUtil.GetString(5487)); } var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); if (!helper.GondviseloValidation(model.Id, model.FelhasznaloId, model.GondviseloNeve.Trim(), model.RokonsagiFok.Value)) { modelState.AddModelError("GondviseloNeveRokonsagiFok", TanuloResource.AMegadottNevvelEsRokonsagiFokkalMarSzerepelGondviseloATanulonal); } if (!string.IsNullOrWhiteSpace(model.GondviseloBejelentkezesiNev)) { var felhasznaloHelper = new FelhasznaloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var anotherYearId = Kreta.Web.Classes.Utils.GetAnotherYearId(); var tanevIds = new List { ClaimData.SelectedTanevID.Value }; if (anotherYearId.HasValue) { tanevIds.Add(anotherYearId.Value); } var list = felhasznaloHelper.Check4TFelhOktAzonValidation(tanevIds, (int)Validation4TEnum.Tanulo, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, default, string.Empty, model.GondviseloBejelentkezesiNev); var selectedTanevElemek = list.Where(x => (!model.Id.HasValue || x.GondviseloId != model.Id) && x.TanevId == ClaimData.SelectedTanevID.Value).ToList(); var anotherTanevElemek = list.Where(x => (!model.Id.HasValue || x.GondviseloId != model.Id) && anotherYearId.HasValue && x.TanevId == anotherYearId.Value).ToList(); FelhasznalonevValidacio(modelState, "GondviseloUserNameExists", selectedTanevElemek, anotherTanevElemek, GetTanevMegnevezesForBelepesCheck()); } var nevCo = NevUtils.GetNevCo(model.GondviseloNeve.Trim()); if (string.IsNullOrWhiteSpace(nevCo.Vezeteknev) || string.IsNullOrWhiteSpace(nevCo.Keresztnev)) { modelState.AddModelError("GondviseloNeve", ImportExportGondviseloResource.AGondviseloNeveFormatumaNemMegfelelo); } Kreta.Web.Classes.Utils.TelefonSzamValidation(modelState, model.Telefon, model.TelefonTipus, TelefonszamTulajdonosEnum.Gondviselo); } public static string GondviseloFileGenerate(bool fileLetoltesSzukseges, BelepesiAdatokListCO belepesList) { var fileString = string.Empty; if (ClaimData.KovTanevID.HasValue && ClaimData.SelectedTanevID == ClaimData.KovTanevID) { return fileString; } if (fileLetoltesSzukseges) { var nevmodel = new NyomtatvanyNevGeneralasModel { TanevID = ClaimData.AktivTanevID }; var fileName = CommonExtensions.NevGeneralas("BelepesiAdatok", nevmodel); var belepesDataSet = new HozzaferesGeneralasaHelper(ConnectionTypeExtensions.GetOrganizationConnectionType()).ConvertBelepesiAdatokCoToDataset(belepesList, isTanulo: false); fileString = BelepesiAdatokPdfLogic.GetFileLetoltesUrl(belepesDataSet, Core.Constants.FrxNames.HozzatartozoJelszoAdatok, fileName); } return fileString; } public static HttpResponseMessage DeleteTanulogondviselo(int gondviseloId) { var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var gondviseloData = helper.GetTanuloGondviseloById(gondviseloId); var tanuloData = helper.GetTanuloiAdatok(gondviseloData.TanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater); var ds = helper.GetGondviselok(gondviseloData.TanuloId); if ((ds.Tables[0].Rows.Count == 1 && (((DateTime.MinValue + (DateTime.Now - tanuloData.SzuletesiIdo)).Year - 1) > 18)) || (ds.Tables[0].Rows.Count >= 2)) { helper.TanuloGondviseloTorlese(gondviseloId); return new HttpResponseMessage(HttpStatusCode.OK); } throw new StatusError(HttpStatusCode.BadRequest, StringResourcesUtil.GetString(5546)); } public static string FelhasznalonevGeneralas(FelhasznalonevGeneralasModel felhasznalonevGeneralasModel) { if (!ClaimData.IsSzirIntezmeny) { var tanuloId = felhasznalonevGeneralasModel.TanuloId; var gondviseloId = felhasznalonevGeneralasModel.GondviseloId; string newFelhasznalonev; var connectionType = ConnectionTypeExtensions.GetOrganizationConnectionType(); var helper = new HozzaferesGeneralasaHelper(connectionType); var nevgeneralasModel = helper.TanuloFelhasznalonevGeneralas(tanuloId, gondviseloId); newFelhasznalonev = nevgeneralasModel.FelhasznaloNev; if (nevgeneralasModel.IsNewFelhasznaloBelepes) { new FelhasznaloBelepesHelper(connectionType).GrantLogin(nevgeneralasModel.TanuloId, newFelhasznalonev, CommonUtils.GenerateJelszo(), nevgeneralasModel.GondviseloId, kotelezoValtoztatni: true); } else { helper.FelhasznalonevUpdate(tanuloId, gondviseloId, nevgeneralasModel.FelhasznaloNev); } return newFelhasznalonev; } return string.Empty; } public static string JelszoGeneralas(int userId, bool isGondviselo) { var jelszo = string.Empty; var gondviseloJelszoGeneralasTipus = SystemSettingJelszoGeneralas.Veletlenszeru; //RendszerBeallitasTipusEnum.Gondviselo_jelszavak_generalasa_az_alabbi_ertek_alapjan var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var tanuloJelszoGeneralasTipus = (SystemSettingJelszoGeneralas)systemSettingsHelper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanuloi_jelszavak_generalasa_az_alabbi_ertek_alapjan); var helper = new FelhasznaloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()); var bejelentkezesiNev = isGondviselo ? helper.GetGondviseloFelhasznaloBelepesiNeve(userId) : helper.GetTanuloFelhasznaloBelepesiNeve(userId); if (string.IsNullOrWhiteSpace(bejelentkezesiNev) && !isGondviselo) { bejelentkezesiNev = FelhasznalonevGeneralas(new FelhasznalonevGeneralasModel() { TanuloId = userId, GondviseloId = null }); } if (isGondviselo) { if (gondviseloJelszoGeneralasTipus == SystemSettingJelszoGeneralas.Veletlenszeru) { jelszo = CommonUtils.GenerateJelszo(); } if (gondviseloJelszoGeneralasTipus == SystemSettingJelszoGeneralas.SzuletesiDatum) { //Gondviselő jelszavának generálása ha születési dátum van beállítva: Tanuló születési dátum alapján történik jelszo = helper.GetTanuloSzuletesiDatumByGondviseloId(userId).ToString("yyyy-MM-dd"); } } else { if (tanuloJelszoGeneralasTipus == SystemSettingJelszoGeneralas.Veletlenszeru) { jelszo = CommonUtils.GenerateJelszo(); } if (tanuloJelszoGeneralasTipus == SystemSettingJelszoGeneralas.SzuletesiDatum) { jelszo = helper.GetTanuloFelhasznaloSzuletesiDatum(userId).ToString("yyyy-MM-dd"); } } new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).ChangePassword(jelszo, bejelentkezesiNev); return jelszo; } public static void TanuloDelete(int tanuloId) { var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); helper.TanuloTorlese(tanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater); } public static object TanuloMentese(TanuloModel model, FelhasznaloiNevGeneralasModjaEnum felhasznaloiNevGeneralasModja) { var co = TanuloModel.ConvertModelToCo(model); var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var gondviseloBelepesiAdatokPdfGeneralasList = helper.TanuloMentese( co, felhasznaloiNevGeneralasModja, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.LCID, ClaimData.KovTanevID, saveAlapadatok: model.TanuloAlapAdatModel != null, saveElerhetosegAdatok: model.CimElerhetosegModel != null, saveGondviseloAdatok: model.TanuloGondviseloModel != null && !string.IsNullOrWhiteSpace(model.TanuloGondviseloModel.GondviseloNeve), saveIgazolvanyAdatok: model.TanuloIgazolvanyModel != null, saveSzocialisAdatok: model.TanuloSzocialisModel != null, saveTanugyiAdatok: model.TanuloTanugyModel != null, saveSNIAdatok: model.TanuloSajatosAdatModel != null, saveBTMAdatok: model.TanuloBTMProblemakModel != null, saveVallasiAdatok: model.TanuloVallasModel != null, saveSportoloiAdatok: model.TanuloSportModel != null, isSzirIntezmeny: ClaimData.IsSzirIntezmeny, saveJuttatasok: model.TanuloJuttatasModel != null, saveSzirBeallitasok: model.TanuloSzirBeallitasokModel != null, saveUjJogviszony: model.TanuloUjJogviszonyModel != null); string fileString = null; if ((model.TanuloGondviseloModel?.GondviseloBelepesFileLetoltesSzukseges ?? false) && !string.IsNullOrWhiteSpace(model.TanuloGondviseloModel?.GondviseloBejelentkezesiNev)) { var nevmodel = new NyomtatvanyNevGeneralasModel { TanevID = ClaimData.AktivTanevID }; var fileName = CommonExtensions.NevGeneralas("BelepesiAdatok", nevmodel); fileString = BelepesiAdatokPdfLogic.GetFileLetoltesUrl(new HozzaferesGeneralasaHelper(ConnectionTypeExtensions.GetOrganizationConnectionType()).ConvertBelepesiAdatokCoToDataset(gondviseloBelepesiAdatokPdfGeneralasList, isTanulo: false), Core.Constants.FrxNames.HozzatartozoJelszoAdatok, fileName); } TanuloAdatlapCacheTorles(model.TanuloId, ClaimData.IntezmenyAzonosito); return new { EmailErrors = gondviseloBelepesiAdatokPdfGeneralasList.EmailErrors, FileString = fileString }; } public static string DeleteSelectedTanulo(List idList) { var errorMsg = string.Empty; var counter = 0; foreach (var tanuloId in idList) { try { TanuloDelete(tanuloId); counter++; } catch (CannotBeDeletedException ex) { errorMsg += $"{ex.Message}{Environment.NewLine}"; continue; } catch (EntityDeleteFailedException ex) { var tanuloAdatCO = GetTanuloAdatCO(tanuloId); var entityName = BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", tanuloAdatCO.Elotag, tanuloAdatCO.CsaladiNev, tanuloAdatCO.UtoNev); if (ClaimData.IsCsokkentettTanuloLEP) { errorMsg += string.Format(ErrorResource._0TanuloNemTorolhetoMertJelentkeztetveVanEloadasra, entityName) + Environment.NewLine + Environment.NewLine; } else { errorMsg += string.Format(ErrorResource.TanuloNemTorolhetoKapcsolatMiatt, entityName, $"{ex.ConnectionErrorMessage}{Environment.NewLine}{Environment.NewLine}"); } continue; } } if (string.IsNullOrWhiteSpace(errorMsg)) { return string.Format(ErrorResource.NSorTorlesSikeres, counter); } if (counter > 0) { errorMsg += Environment.NewLine + string.Format(ErrorResource.NSorTorlesSikeres, counter); } throw new StatusError(HttpStatusCode.BadRequest, errorMsg); } public static HttpResponseMessage SaveData(int tanevId, TanuloTobbesModModel model) { var co = TanuloTobbesModModel.ConvertModModelToCo(model); var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var tanuloHelper = new TanuloHelper(connectionType); var osztalyCsoportHelper = new OsztalyCsoportHelper(connectionType); var feladatEllatasiHelyHelper = new FeladatEllatasiHelyHelper(connectionType); var tanuloJuttatasUpdateList = new List(); foreach (var item in model.TobbesModIdList) { co.ID = item.TanuloId; co.OsztalyId = item.OsztalyId; var needJuttatasUpdate = tanuloHelper.TanuloTobbesModify(co, ClaimData.KovTanevID, osztalyCsoportHelper, ClaimData.IsSelectedTanev21_22OrLater, ClaimData.IsSzakkepzoIntezmeny, feladatEllatasiHelyHelper); if (needJuttatasUpdate) { tanuloJuttatasUpdateList.Add(item.TanuloId); } } if (tanuloJuttatasUpdateList.Count > 0) { tanuloHelper.UpdateTanuloSzakkepzesiJuttatasok(tanevId, tanuloJuttatasUpdateList); } return new HttpResponseMessage(HttpStatusCode.OK); } public static string ValidateOnSaveData(TanuloTobbesModModel model) { var warningMessage = string.Empty; var sorolasNelkuliTanulok = model.TanuloTobbesTanugyModel != null && (model.TanuloTobbesTanugyModel.AgazatId.HasValue || model.TanuloTobbesTanugyModel.BeilleszkedesiNehezseg.HasValue || model.TanuloTobbesTanugyModel.Bejaro.HasValue || model.TanuloTobbesTanugyModel.DiaksportkorTag.HasValue || model.TanuloTobbesTanugyModel.EgyebOrszagosDonto.HasValue || model.TanuloTobbesTanugyModel.EgyuttmukodesiMegallapodasos.HasValue || model.TanuloTobbesTanugyModel.ESL16EvesUtanBelepett.HasValue || model.TanuloTobbesTanugyModel.EtkezesiKedvezmeny.HasValue || model.TanuloTobbesTanugyModel.Evismetlo.HasValue || model.TanuloTobbesTanugyModel.FelvetelTaneveId.HasValue || model.TanuloTobbesTanugyModel.HatranyosHelyzet.HasValue || model.TanuloTobbesTanugyModel.IngyenesTankonyvEllatas.HasValue || model.TanuloTobbesTanugyModel.IntezetiNevelt.HasValue || model.TanuloTobbesTanugyModel.IsSzakmaiGyakorlatHiany.HasValue || model.TanuloTobbesTanugyModel.JogviszonySzuneteltetese.HasValue || model.TanuloTobbesTanugyModel.KizarolagIskolaiKeretekKozott.HasValue || model.TanuloTobbesTanugyModel.KollegiumiEllatasu.HasValue || model.TanuloTobbesTanugyModel.Magantanulo.HasValue || model.TanuloTobbesTanugyModel.MagantanulosagKezdete.HasValue || model.TanuloTobbesTanugyModel.MagantanulosagVege.HasValue || model.TanuloTobbesTanugyModel.MagantanulosagOka.HasValue || model.TanuloTobbesTanugyModel.MenekultOltalmazottMenedekes.HasValue || model.TanuloTobbesTanugyModel.NevelesiTervId.HasValue || model.TanuloTobbesTanugyModel.OSZTV.HasValue || model.TanuloTobbesTanugyModel.PolgariSzerzodeses.HasValue || model.TanuloTobbesTanugyModel.ReszSzakkepesitesId.HasValue || model.TanuloTobbesTanugyModel.SzakkepesitesId.HasValue || model.TanuloTobbesTanugyModel.SzakmacsoportId.HasValue || model.TanuloTobbesTanugyModel.SzakmaiGyakorlatonTartozkodik.HasValue || model.TanuloTobbesTanugyModel.SZETV.HasValue || model.TanuloTobbesTanugyModel.SZKTV.HasValue || model.TanuloTobbesTanugyModel.SzocialisTamogatas.HasValue || model.TanuloTobbesTanugyModel.TandijatFizeto.HasValue || model.TanuloTobbesTanugyModel.TankotelezettsegetTeljesito.HasValue || model.TanuloTobbesTanugyModel.TankotelezettsegVege.HasValue || model.TanuloTobbesTanugyModel.TantervId.HasValue || model.TanuloTobbesTanugyModel.Tanuloszerzodeses.HasValue || model.TanuloTobbesTanugyModel.TechnikusiEvfolyam.HasValue || model.TanuloTobbesTanugyModel.TeritestFizeto.HasValue || model.TanuloTobbesTanugyModel.TestnevelesTipusa.HasValue || model.TanuloTobbesTanugyModel.Vendeg.HasValue || model.TanuloTobbesTanugyModel.Veszelyeztetett.HasValue || model.TanuloTobbesTanugyModel.TanterviJellemzoId.HasValue || model.TanuloTobbesTanugyModel.AgazatUjSzktTipusId.HasValue || model.TanuloTobbesTanugyModel.SzakmaTipusId.HasValue || model.TanuloTobbesTanugyModel.SzakmairanyTipusId.HasValue || model.TanuloTobbesTanugyModel.SzakiranyNktTipusId.HasValue || model.TanuloTobbesTanugyModel.SzakkepesitesNktTipusId.HasValue || model.TanuloTobbesTanugyModel.TanulmanyiTeruletNktTipusId.HasValue || model.TanuloTobbesTanugyModel.Is9kozul8ElozotanevbenVegezte.HasValue || model.TanuloTobbesTanugyModel.IsSzakkepzesiMunkaszerzodessel.HasValue || model.TanuloTobbesTanugyModel.IsKiemeltenTehetseges.HasValue || model.TanuloTobbesTanugyModel.IsSzamitogepetOktCelraHasznal.HasValue || model.TanuloTobbesTanugyModel.IsSzabokyAdolfSzakkepODReszesul.HasValue || model.TanuloTobbesTanugyModel.IsEgesznaposIskOktReszesul.HasValue || model.TanuloTobbesTanugyModel.AgazatReszSzakmaTipusId.HasValue || model.TanuloTobbesTanugyModel.SzakmaReszSzakmaTipusId.HasValue || model.TanuloTobbesTanugyModel.ReszSzakmaTipusId.HasValue || model.TanuloTobbesTanugyModel.TanuloSzervezetId.HasValue) ? model.TobbesModIdList.Where(x => x.OsztalyId == null).ToList().Select(x => x.TanuloId).ToList() : new List(); warningMessage += new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetValidationTextByTanuloIds(sorolasNelkuliTanulok); if (model.TanuloTobbesTanugyModel != null && model.TanuloTobbesTanugyModel.TanuloEvfolyamTipusId.HasValue) { var tanuloOsztalyParos = new List(); foreach (var item in model.TobbesModIdList) { if (item.OsztalyId != null) { tanuloOsztalyParos.Add(string.Format("{0}-{1}", item.TanuloId, item.OsztalyId)); } } warningMessage += new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanuloEvfolyamValidationTextByTanuloIds(tanuloOsztalyParos); } if (!string.IsNullOrWhiteSpace(warningMessage)) { warningMessage += ErrorResource.BiztosanFolytatja; } return warningMessage; } public static bool ExistsGondviselo(List tanuloIdList) { return new TanuloHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).ExistsGondviselo(tanuloIdList); } #region Export public static ActionResult TanuloExportBesorolashoz(TanuloSearchModel model, OktNevelesiKategoriaEnum feladatKategoria) { var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var stream = new TanuloHelper(connectionType).GetTanuloExportBesorolashoz(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev)); var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = feladatKategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas ? TanuloResource.NovendekekBesorolashozExportFileName : TanuloResource.TanulokBesorolashozExportFileName }; return result; } public static ActionResult TanulokLakcimmelExport(TanuloSearchModel model, OktNevelesiKategoriaEnum feladatKategoria) { var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var stream = new TanuloHelper(connectionType).GetTanulokLakcimmelExcelExport(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev)); var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = feladatKategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas ? TanuloResource.NovendekekElerhetosegeiExport : TanuloResource.TanulokElerhetosegeiExport }; return result; } public static ActionResult ExportTanulokTanugyiAdatai(TanuloSearchModel model) { var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var stream = new TanuloHelper(connectionType).GetTanulokTanugyiAdataiExcelExport(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev), ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSzakkepzoIntezmeny, ClaimData.IsSelectedTanev21_22OrLater); var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = model.FeladatKategoriaId == (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas ? TanuloResource.NovendekekTanugyiAdataiExport : TanuloResource.TanulokTanugyiAdataiExport }; return result; } public static ActionResult ExportTanulokTantargyaiEsPedagogusai(TanuloSearchModel model, OktNevelesiKategoriaEnum feladatKategoria) { var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var stream = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanulokTantargyaiEsPedagogusaiExcelExport(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev), feladatKategoria); var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = feladatKategoria == OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas ? TanuloResource.NovendekekTantargyaiEsPedagogusaiExportFileName : TanuloResource.TanulokTantargyaiEsPedagogusaiExportFileName }; return result; } public static ActionResult ExportGondviselokElerhetosegei(TanuloSearchModel model, OktNevelesiKategoriaEnum feladatKategoria) { var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var stream = new TanuloHelper(connectionType).GetGondviselokElerhetosegeiExcelExport(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev), feladatKategoria); var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = TanuloResource.GondviselokElerhetosegeiExport }; return result; } public static ActionResult TanuloKirStatExport(TanuloSearchModel model) { var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var stream = new TanuloHelper(connectionType).GetTanuloKirStatExport(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev), ClaimData.IsSelectedTanev20_21OrLater); var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = model.ForOktober ? TanuloResource.KirStatExportFileName : TanuloResource.KirStatTeljesExportFileName }; return result; } public static ActionResult TanuloSzirBeallitasokExport(TanuloSearchModel model) { var connectionType = ConnectionTypeExtensions.GetSessionConnectionType(); var stream = new TanuloHelper(connectionType).TanuloSzirBeallitasokExport(model.ConvertModelToCo(connectionType, ClaimData.IsActivTanev)); var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = $"{TanuloResource.TanulokSzirBeallitasAdataiExportFileName}_{DateTime.Now:yyyy_MM_dd}.{Constants.ImportExport.FileFormatXlsx}" }; return result; } #endregion public static void FelhasznalonevValidacio(System.Web.Http.ModelBinding.ModelStateDictionary modelState, string key, IEnumerable selectedTanevElemek, IEnumerable anotherTanevElemek, string tanevMegnevezes) { var nincsGondviseloSelectedTanevElemek = selectedTanevElemek.Where(x => x.GondviseloId == null); if (nincsGondviseloSelectedTanevElemek.Any()) { modelState.AddModelError(key, string.Format(ErrorResource.FelhasznalonevFoglaltAltal, string.Join(", ", nincsGondviseloSelectedTanevElemek.Select(x => x.NyomtatasiNev)), string.Empty)); } var vanGondviseloSelectedTanevElemek = selectedTanevElemek.Where(x => x.GondviseloId != null); if (vanGondviseloSelectedTanevElemek.Any()) { modelState.AddModelError(key, string.Format(ErrorResource.FelhasznalonevFoglaltAltalGondviselo, string.Join(", ", vanGondviseloSelectedTanevElemek.Select(x => x.NyomtatasiNev)), string.Empty)); } var nincsGondviseloAnotherTanevElemek = anotherTanevElemek.Where(x => x.GondviseloId == null); if (nincsGondviseloAnotherTanevElemek.Any()) { modelState.AddModelError(key, string.Format(ErrorResource.FelhasznalonevFoglaltAltal, string.Join(", ", nincsGondviseloAnotherTanevElemek.Select(x => x.NyomtatasiNev)), tanevMegnevezes)); } var vanGondviseloAnotherTanevElemek = anotherTanevElemek.Where(x => x.GondviseloId != null); if (vanGondviseloAnotherTanevElemek.Any()) { modelState.AddModelError(key, string.Format(ErrorResource.FelhasznalonevFoglaltAltalGondviselo, string.Join(", ", vanGondviseloAnotherTanevElemek.Select(x => x.NyomtatasiNev)), tanevMegnevezes)); } } public static int GetTanulokEmailNelkulSzam(List tanuloIds) { return new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanulokEmailNelkulSzamJelszoResethez(tanuloIds); } public static void JogviszonyCustomValidation(System.Web.Http.ModelBinding.ModelStateDictionary modelState, JogviszonyModel model, DateTime? ujTanuloSzuletesiIdo = null, TanuloAdatCO regiTanuloiAdatokCo = null) { var tanuloSzuletesiIdom = ujTanuloSzuletesiIdo; if (regiTanuloiAdatokCo != null) { tanuloSzuletesiIdom = regiTanuloiAdatokCo.SzuletesiIdo; } else { model.IsNew = true; } var isJogviszonyAdatKitoltve = model.JogviszonyKezdete.HasValue || model.JogviszonyTipusaId.IsEntityId() || model.JogviszonyKeletkezesenekJogcimeId.IsEntityId(); if (model.TanuloId.IsEntityId() || isJogviszonyAdatKitoltve) { if (!model.JogviszonyKezdete.HasValue) { modelState.AddModelError(nameof(model.JogviszonyKezdete), ErrorResource.JogviszonyKezdeteKitolteseKotelezo); } else { if (model.JogviszonyKezdete.Value < tanuloSzuletesiIdom) { modelState.AddModelError(nameof(model.JogviszonyKezdete), ErrorResource.JogviszonyKezdeteNemlehetKorabbiMintTanuloSzuletesiIdeje); } } if (!model.JogviszonyTipusaId.IsEntityId()) { modelState.AddModelError(nameof(model.JogviszonyTipusaId), ErrorResource.JogviszonyTipusaKitolteseKotelez); } if (!model.JogviszonyKeletkezesenekJogcimeId.IsEntityId()) { modelState.AddModelError(nameof(model.JogviszonyKeletkezesenekJogcimeId), ErrorResource.JogviszonyKeletkezesenekJogcimeKitolteseKotelezo); } } if (!model.IsNew) { if (!model.JogviszonyVege.HasValue) { modelState.AddModelError(nameof(model.JogviszonyVege), ErrorResource.JogviszonyVegeKitolteseKotelezo); } else { if (model.JogviszonyVege <= model.JogviszonyKezdete) { modelState.AddModelError(nameof(model.JogviszonyVege), ErrorResource.JogviszonyVegeNemLehetKisebbVagyEgyenloMintJogviszonyKezdete); } } if (!model.JogviszonyMegszunesenekJogcimeId.IsEntityId()) { modelState.AddModelError(nameof(model.JogviszonyMegszunesenekJogcimeId), ErrorResource.JogviszonyMegszunesenekJogcimeKitolteseKotelezo); } } } /// INFO: Mobil használja public static void TanuloAdatlapCacheTorles(int? tanuloId, string intezmenyAzonosito) { var isMobileApiCacheEnabled = FeatureContext.Instance.IsEnabled(featureName: Kreta.Core.Constants.FeatureName.MobileEllenorzoApiCache, intezmenyAzonosito); var tanuloAdatlapCache = KretaServer.KretaServer.Instance.CacheManager.AquireCacheMobile(); if (isMobileApiCacheEnabled && tanuloAdatlapCache != null && tanuloId.HasValue) { tanuloAdatlapCache.RemoveTanuloAdatlap(tanuloId.Value, intezmenyAzonosito); } } } public class AlapkepzesTanuloLogic : TanuloLogic { private const string TanuloController = Constants.Controllers.Tanulo; private const int FeladatKategoria = (int)OktNevelesiKategoriaEnum.NevelesOktatas; public static TanuloModel GetModTanuloData(int tanuloId, int? osztalycsoportId = null) { var co = GetTanuloAdat(tanuloId, osztalycsoportId); var model = TanuloModel.ConvertCoToModel(co); model.ZaradekModel.IsKapcsolodoZaradekokMegjelennek = true; model.IsApaczaiEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig(IntezmenyConfigModulEnum.Apaczai, IntezmenyConfigTipusEnum.IsEnabled); SetTanuloSzakkepzesesBasicProperties(model); var feladatEllatasiHelyHelper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType()); if (osztalycsoportId.IsEntityId()) { var osztalyJellemzok = feladatEllatasiHelyHelper.GetOsztalyJellemzoi(tanulocsoportId: co.Zaradek.TanuloCsoportId, osztalyId: co.OsztalyId); var isSzakkepzeses = osztalyJellemzok[OsztalyJellemzoEnum.IsSzakkepzeses]; var isNKTSzakkepzeses = osztalyJellemzok[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater; model.TanuloTanugyModel.IsSzakkepzeses = isSzakkepzeses; model.TanuloTanugyModel.IsNKTSzakkepzeses = isNKTSzakkepzeses; if (ClaimData.IsSelectedTanev21_22OrLater && osztalycsoportId.HasValue) { var isAllOsztalyAltalanosFeladat = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsAllOsztalyAltalanosIskolaFeladatellatasiHely(new List { osztalycsoportId.Value }); model.TanuloTanugyModel.IsAltalanosIskolaFeladatEllatasiHely = isAllOsztalyAltalanosFeladat; } var osztaly = AlapkepzesOsztalyCsoportLogic.GetOsztalyBasicProperties(osztalycsoportId); if (isSzakkepzeses) { if (osztaly.AgazatUjSzktTipusId != (int)AgazatUjSzktTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsAgazatUjSzktTipusModificationEnabled = true; } if (osztaly.SzakmaTipusId != (int)SzakmaTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakmaTipusModificationEnabled = true; } if (osztaly.SzakmairanyTipusId != (int)SzakmairanyTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakmairanyTipusModificationEnabled = true; } if (osztaly.SzakmacsoportId != (int)SzakmacsoportTipusEnum.Na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakmacsoportModificationEnabled = true; } if (osztaly.AgazatId != (int)AgazatTipusEnum.Na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsAgazatModificationEnabled = true; } if (osztaly.SzakkepesitesId != (int)SzakkepesitesTipusEnum.Na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakkepesitesModificationEnabled = true; } if (osztaly.ReszSzakkepesitesId != (int)ReszszakkepesitesTipusEnum.Na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsReszSzakkepesitesModificationEnabled = true; } if (ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsAgazatReszSzakmaTipusModificationEnabled = true; model.TanuloTanugyModel.IsSzakmaReszSzakmaTipusModificationEnabled = true; model.TanuloTanugyModel.IsReszSzakmaTipusModificationEnabled = true; } } if (isNKTSzakkepzeses) { if (osztaly.TanulmanyiTeruletNktTipusId != (int)TanulmanyiTeruletNktTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsTanulmanyiTeruletNktTipusModificationEnabled = true; } if (osztaly.SzakkepesitesNktTipusId != (int)SzakkepesitesNktTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakkepesitesNktTipusModificationEnabled = true; } if (osztaly.SzakiranyNktTipusId != (int)SzakiranyNktTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakiranyNktTipusModificationEnabled = true; } } } return model; } public static TanuloDetailModel GetTanuloData(int id, int? osztalycsoportId = null) { var co = GetTanuloAdat(id, osztalycsoportId); var model = TanuloDetailModel.ConvertCoToModel(co); model.ZaradekModel.IsKapcsolodoZaradekokMegjelennek = true; model.IsApaczaiEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig(IntezmenyConfigModulEnum.Apaczai, IntezmenyConfigTipusEnum.IsEnabled); return model; } private static TanuloAdatCO GetTanuloAdat(int tanuloId, int? osztalycsoportId = null) { return new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(tanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, osztalycsoportId, FeladatKategoria, ClaimData.IsSelectedTanevIsElozo); } public static List GetDetailTabs(TanuloDetailModel model, bool ertekelesTabAktiv, bool tanugyDisabled, bool isFromSzervezet) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SzemelyesAdat_Tab" }, { "IsFromSzervezet", isFromSzervezet.ToString() } } }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elerhetosegek_Tab" } } }, }; list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Gondviselok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Gondviselok_Tab" } } }); if (!isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Jogviszony_Tab" } } }); } if (!tanugyDisabled && !isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = model.OsztalycsoportId.HasValue ? "GetPartialViewWithOsztalycsoport" : "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Tanugyi_Tab" } } }); } var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok && !isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Szocialis_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SNIBTN_Tab" } } }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok && !isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Sport_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok && !isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "18", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Vallas_Tab" } } }); } if (!ClaimData.IsSzirIntezmeny) { if (!isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "12", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "DetailTanuloView" } }, IsActive = ertekelesTabAktiv }); list.Add(new TabStripItemModel() { ItemId = "13", ItemName = TanuloResource.Mulasztasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Mulasztasok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.Igazolasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Igazolasok_Tab" } } }); } } list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Felmentesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TantargyiMentesseg_Tab" }, { "IsFromSzervezet", isFromSzervezet.ToString() } } }); if (!ClaimData.IsOsztalyfonok || isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.OsztalyaiEsCsoportjai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OsztalyCsoport_Tab" }, { "FeladatKategoriaId", model.FeladatKategoriaId.ToString() }, { "IsFromSzervezet", isFromSzervezet.ToString() } } }); } if (!isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Elozmenyek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elozmenyek_Tab" } } }); } if (!ClaimData.IsSzirIntezmeny && !isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "11", ItemName = TanuloResource.OrarendiOrai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OrarendiOra_Tab" } } }); } if (!isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.TanultTantargyak, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TanultTantargyak_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "16", ItemName = TanuloResource.KozossegiSzolgalat, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", $"{Constants.General.TanuloSharedFolderPrefix}Info_KozossegiSzolgalat_Tab.cshtml" } } }); list.Add(new TabStripItemModel() { ItemId = "17", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Zaradek_Tab" } } }); } if (new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzoJuttatas && !isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "18", ItemName = TanuloResource.SzakkepzesiJuttatasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetSzakkepzesiJuttatasokPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_SzakkepzesiJuttatasok_Tab" } } }); } if (ClaimData.IsAdministrator && ClaimData.IsSzakkepzoIntezmeny && !isFromSzervezet) { list.Add(new TabStripItemModel() { ItemId = "19", ItemName = TanuloResource.SzirBeallitasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SzirBeallitasok_Tab" } } }); } return list; } public static List GetModTabs(TanuloModel model, bool isOfo, int? osztalyCsoportId) { var list = new List(); var osztalyCsoportIdString = osztalyCsoportId?.ToString(); if (ClaimData.ModifyTanuloAlapAdatok) { list.Add(new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Alapadat_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModElerhetoseg", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Elerhetoseg_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Igazolvanyok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Igazolvanyok_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.BelepesiAdatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Belepesi_Adatok_Tab" } } }); } if (ClaimData.IsAdministrator) { list.Add(new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Jogviszony_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "ModGondviselo", ItemName = TanuloResource.Gondviselok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Gondviselo_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_TanugyiAdatok_Tab" } } }); } if (isOfo) { if (ClaimData.OfoManageSNIBTMAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } if (ClaimData.OfoManageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } if (ClaimData.OfoManageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } } else { var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } } if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "ModTanuloView" } } }); } list.Add(new TabStripItemModel() { ItemId = "13", ItemName = TanuloResource.Felmentesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Felmentes_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModKozSzolg", ItemName = TanuloResource.KozossegiSzolgalat, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", $"{Constants.General.TanuloSharedFolderPrefix}Mod_KozossegiSzolgalat_Tab.cshtml" } } }); list.Add(new TabStripItemModel() { ItemId = "12", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Zaradek_Tab" } } }); if (new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzoJuttatas) { list.Add(new TabStripItemModel() { ItemId = "16", ItemName = TanuloResource.SzakkepzesiJuttatasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModSzakkepzesiJuttatasokPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_SzakkepzesiJuttatasok_Tab" } } }); } if (ClaimData.IsAdministrator && ClaimData.IsSzakkepzoIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "17", ItemName = TanuloResource.SzirBeallitasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzirBeallitasok_Tab" } } }); } list[0].IsActive = true; return list; } public static List GetTanuloTobbesModTabs(TanuloTobbesModModel model) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.SzemelyesAdatai, Model = model, PartialViewName = "AlapadatTobbesModify_Bevitel" }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.TanugyiAdatai, Model = model, PartialViewName = "TanugyiAdatokTobbesModify_Bevitel" } }; var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.VallasiFelekezetiHovatartozas, Model = model, PartialViewName = "VallasTobbesModify_Bevitel" }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.SportoloiTevekenyseg, Model = model, PartialViewName = "SportTobbesModify_Bevitel" }); } if (new IntezmenyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzoJuttatas) { list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.SzakkepzesiJuttatasok, Model = model, PartialViewName = "SzakkepzesiJuttatasokTobbesModify_Bevitel" }); } if (ClaimData.IsAdministrator && ClaimData.IsSzakkepzoIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.SzirBeallitasok, Model = model, PartialViewName = "SzirBeallitasokTobbesModify_Bevitel" }); } list[0].IsActive = true; return list; } public static void ValidateTobbesModFeladatKategoria(string osztalyIdArrayString) { if (!string.IsNullOrWhiteSpace(osztalyIdArrayString)) { var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()); var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var gimnaziumAlapkepzeseskentKezelendo = systemSettingsHelper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Szakgimnaziumok_Alapkezpeseskent_Tudjak_Kezelni_osztalyokat_Tanulokat); if (gimnaziumAlapkepzeseskentKezelendo) { if (!osztalyCsoportHelper.IsOsztalyCsoportokAzonosOktatasNevelesiFeladatTipus(osztalyIdArrayString, OktatasiNevelesiFeladatEnum.MuveszetiSzakgimnazium)) { if (!osztalyCsoportHelper.IsOsztalyCsoportokAzonosKategoria(osztalyIdArrayString, OktNevelesiKategoriaEnum.NevelesOktatas)) { throw new StatusError((int)HttpStatusCode.BadRequest, ErrorResource.CsakAlapkezpesesFeladatellatasiHelyhezVagyCsakMuveszetiSzakgimnaziumhozTartozoOsztalyuCsoportuTanulokatLehetEgyuttModositani); } } } else { if (!osztalyCsoportHelper.IsOsztalyCsoportokAzonosKategoria(osztalyIdArrayString, OktNevelesiKategoriaEnum.NevelesOktatas)) { throw new StatusError((int)HttpStatusCode.BadRequest, ErrorResource.CsakAlapkezpesesFeladatellatasiHelyhezTartozoOsztalyuCsoportuTanulokatLehetEgyuttModositani); } } } } } public class AmiTanuloLogic : TanuloLogic { private const string TanuloController = Constants.Controllers.AmiTanulo; private const int FeladatKategoria = (int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas; public static TanuloModel GetModTanuloData(int tanuloId, int? osztalycsoportId = null) { var co = GetTanuloAdat(tanuloId, osztalycsoportId); var model = TanuloModel.ConvertCoToModel(co); model.ZaradekModel.IsKapcsolodoZaradekokMegjelennek = true; var feladatEllatasiHelyHelper = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType()); if (osztalycsoportId.IsEntityId()) { var osztalyJellemzok = feladatEllatasiHelyHelper.GetOsztalyJellemzoi(osztalyId: osztalycsoportId); var isNKTSzakkepzeses = osztalyJellemzok[OsztalyJellemzoEnum.IsNKTSzakkepzeses] && ClaimData.IsSelectedTanev20_21OrLater; model.TanuloTanugyModel.IsNKTSzakkepzeses = isNKTSzakkepzeses; if (ClaimData.IsSelectedTanev21_22OrLater && osztalycsoportId.HasValue) { var isAllOsztalyAltalanosFeladat = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsAllOsztalyAltalanosIskolaFeladatellatasiHely(new List { osztalycsoportId.Value }); model.TanuloTanugyModel.IsAltalanosIskolaFeladatEllatasiHely = isAllOsztalyAltalanosFeladat; } if (isNKTSzakkepzeses) { var osztaly = AmiOsztalyCsoportLogic.GetOsztalyBasicProperties(osztalycsoportId); if (osztaly.TanulmanyiTeruletNktTipusId != (int)TanulmanyiTeruletNktTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsTanulmanyiTeruletNktTipusModificationEnabled = true; } if (osztaly.SzakkepesitesNktTipusId != (int)SzakkepesitesNktTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakkepesitesNktTipusModificationEnabled = true; } if (osztaly.SzakiranyNktTipusId != (int)SzakiranyNktTipusEnum.na || ClaimData.IsSelectedTanev21_22OrLater) { model.TanuloTanugyModel.IsSzakiranyNktTipusModificationEnabled = true; } } } return model; } public static TanuloDetailModel GetTanuloData(int id, int? osztalycsoportId = null) { var co = GetTanuloAdat(id, osztalycsoportId); return TanuloDetailModel.ConvertCoToModel(co); } private static TanuloAdatCO GetTanuloAdat(int tanuloId, int? osztalycsoportId = null) { return new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(tanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, osztalycsoportId, FeladatKategoria, ClaimData.IsSelectedTanevIsElozo); } public static List GetDetailTabs(TanuloDetailModel model, bool ertekelesTabAktiv = false) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SzemelyesAdat_Tab" } } }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elerhetosegek_Tab" } } }, new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Gondviselok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Gondviselok_Tab" } } }, new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Jogviszony_Tab" } } }, new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = model.OsztalycsoportId.HasValue ? "GetPartialViewWithOsztalycsoport" : "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Tanugyi_Tab" } } }, new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.TantargyakAMIEgyeniTTF, Model = model, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Tantargyak_Tab" } } } }; var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Szocialis_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SNIBTN_Tab" } } }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Sport_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "16", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Vallas_Tab" } } }); } if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "12", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "DetailTanuloView" } }, IsActive = ertekelesTabAktiv }); list.Add(new TabStripItemModel() { ItemId = "13", ItemName = TanuloResource.Mulasztasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Mulasztasok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.Igazolasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Igazolasok_Tab" } } }); } if (!ClaimData.IsOsztalyfonok) { list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.OsztalyaiEsCsoportjai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OsztalyCsoport_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Elozmenyek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elozmenyek_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "11", ItemName = TanuloResource.OrarendiOrai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OrarendiOra_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.TanultTantargyak, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TanultTantargyak_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "17", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Zaradek_Tab" } } }); return list; } public static List GetModTabs(TanuloModel model, bool isOfo, int? osztalyCsoportId) { var list = new List(); var osztalyCsoportIdString = osztalyCsoportId?.ToString(); if (ClaimData.ModifyTanuloAlapAdatok) { list.Add(new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Edit_Alapadat_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModElerhetoseg", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Mod_Elerhetoseg_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Igazolvanyok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Edit_Igazolvanyok_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.BelepesiAdatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Edit_Belepesi_Adatok_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "ModGondviselo", ItemName = TanuloResource.Gondviselok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Mod_Gondviselo_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Jogviszony_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Edit_TanugyiAdatok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModTantargyak", ItemName = TanuloResource.TantargyakAMIEgyeniTTF, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Edit_Tantargyak_Tab" } } }); } if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "ModTanuloView" } } }); } if (isOfo) { if (ClaimData.OfoManageSNIBTMAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } if (ClaimData.OfoManageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } if (ClaimData.OfoManageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "12", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Mod_Zaradek_Tab" } } }); } else { var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } if (ClaimData.IsAdministrator) { list.Add(new TabStripItemModel() { ItemId = "12", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyId", osztalyCsoportIdString }, { "PartialViewName", "Mod_Zaradek_Tab" } } }); } } list[0].IsActive = true; return list; } public static List GetTanuloTobbesModTabs(TanuloTobbesModModel model) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.SzemelyesAdatai, Model = model, PartialViewName = "AlapadatTobbesModify_Bevitel" }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.TanugyiAdatai, Model = model, PartialViewName = "TanugyiAdatokTobbesModify_Bevitel" } }; var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.VallasiFelekezetiHovatartozas, Model = model, PartialViewName = "VallasTobbesModify_Bevitel" }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.SportoloiTevekenyseg, Model = model, PartialViewName = "SportTobbesModify_Bevitel" }); } list[0].IsActive = true; return list; } public static void ValidateTanuloTantargyaiModel(List list) { foreach (var model in list) { var errorMessage = new StringBuilder(); //ezeket mindig ellenőrizzük if (!model.OsztalyId.IsEntityId()) { errorMessage.AppendLine(ErrorResource.OsztalyVagyCsoportMegadasaKotelezo); } if (!model.TanarID.IsEntityId()) { errorMessage.AppendLine(ErrorResource.TanarMegadasaKotelezo); } if (!model.TantargyID.IsEntityId() && !model.AmiTantargyID.IsEntityId()) { errorMessage.AppendLine(ErrorResource.TantargyMegadasaKotelezo); } if (model.Oraszam < 0) { errorMessage.AppendLine(ErrorResource.OraSzamaNemLehetKisebbMintNulla); } if (model.OsztalyId.IsEntityId() && model.TanarID.IsEntityId() && (model.TantargyID.IsEntityId() || model.AmiTantargyID.IsEntityId())) { var ervenyes = true; var tanar = string.Empty; var tantargy = string.Empty; if (model.TantargyID.IsEntityId()) { int.TryParse(model.ID, out var id); //db-ben ellenőrzés (ervenyes, tanar, tantargy) = new TantargyFelosztasHelper(ConnectionTypeExtensions.GetSessionConnectionType()).ValidateAmiCsoportTtf(model.OsztalyId.Value, model.TanarID.Value, model.TantargyID.Value, id); } if (!ervenyes) { errorMessage.AppendFormat(model.IsCsoportos ? ErrorResource.AMegadottTantarggyalEsTanarralMarSzerepelTantargyfelosztasANovendekCsoportjahozAzAdatbazisban : ErrorResource.AMegadottTantarggyalEsTanarralMarSzerepelTantargyfelosztasANovendekEgyeniCsoportjahozAzAdatbazisban, tantargy, tanar).AppendLine(); } else { //felületen lévő duplázodás ellenőrzés if (list.Where(x => x.IsCsoportos == model.IsCsoportos && x.OsztalyId == model.OsztalyId && x.TanarID == model.TanarID && ((x.TantargyID.IsEntityId() && model.TantargyID.IsEntityId() && x.TantargyID == model.TantargyID) || (x.AmiTantargyID.IsEntityId() && model.AmiTantargyID.IsEntityId() && x.AmiTantargyID == model.AmiTantargyID))).Skip(1).Any()) { var k = list.Where(x => x.IsCsoportos == model.IsCsoportos && x.OsztalyId == model.OsztalyId && x.TanarID == model.TanarID && ((x.TantargyID.IsEntityId() && model.TantargyID.IsEntityId() && x.TantargyID == model.TantargyID) || (x.AmiTantargyID.IsEntityId() && model.AmiTantargyID.IsEntityId() && x.AmiTantargyID == model.AmiTantargyID))); errorMessage.Append(model.IsCsoportos ? ErrorResource.AMegadottTantarggyalEsTanarralMarSzerepelTantargyfelosztasANovendekCsoportjahozAFeluleten : ErrorResource.AMegadottTantarggyalEsTanarralMarSzerepelTantargyfelosztasANovendekEgyeniCsoportjahozAFeluleten).AppendLine(); } } } //csak ha egyéni, vagy csoportos, de valamelyik meg van adva if (!model.IsCsoportos || (model.IsCsoportos && (model.AmiFotargy.IsEntityId() || model.AmiTagozat.IsEntityId() || model.AmiTantargyKotelezoseg.IsEntityId() || model.EvfolyamTipus.IsEntityId()))) { if (!model.AmiFotargy.IsEntityId()) { errorMessage.AppendLine(ErrorResource.FotargyMegadasaKotelezo); } if (!model.AmiTagozat.IsEntityId()) { errorMessage.AppendLine(ErrorResource.TagozatMegadasaKotelezo); } if (!model.AmiTantargyKotelezoseg.IsEntityId()) { errorMessage.AppendLine(ErrorResource.TantargyKotelezosegMegadaKotelezo); } if (!model.EvfolyamTipus.IsEntityId()) { errorMessage.AppendLine(ErrorResource.EvfolyamTipusMegadasaKotelezo); } } if (errorMessage.Length > 0) { var message = string.Format("{0}
{1}", model.IsCsoportos ? TanuloResource.Csoportos : TanuloResource.Egyeni, errorMessage.ToString()); throw new StatusError(HttpStatusCode.BadRequest, message); } } } public static List GetSablon(int tanuloId, int osztalyId, int sablonId) { var helper = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()); (var osztalyCsoportId, var osztalyCsoportVezetoId) = helper.GetDefaultAMINemEgyeniOsztalyCsoportAndVezeto(tanuloId); (var egyeniCsoportId, var egyeniCsoportVezetoId) = helper.GetDefaultEgyeniCsoportAndVezeto(tanuloId, osztalyId, !ClaimData.IsActivTanev); var data = new List(); var sablonok = new FoglalkozasHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSablon(sablonId); var tantargyakSablonokkal = new List(); var tantargyHelper = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType()); tantargyakSablonokkal = tantargyHelper.GetTantargyakSablonokkal().Tables[0].AsEnumerable().Select(x => new TantargySablonnal { TantargyId = SDAConvert.ToNullableInt32(x["TantargyId"]), SemaId = SDAConvert.ToNullableInt32(x["SemaId"]) }).ToList(); foreach (DataRow dr in sablonok.Tables[0].Rows) { var semaId = SDAConvert.ToNullableInt32(dr["AmiTantargySablonId"]); var tantargyId = tantargyakSablonokkal.Where(x => x.SemaId == semaId).Select(x => x.TantargyId).FirstOrDefault(); if (SDAConvert.ToBooleanFromTF(dr["IsCsoportos"])) { data.Add(new TanuloTantargyaiModel { TanuloId = tanuloId, OsztalyId = osztalyCsoportId, TanarID = osztalyCsoportVezetoId, Oraszam = SDAConvert.ToDouble(dr["Oraszam"]), AmiFotargy = SDAConvert.ToNullableInt32(dr["AmiFotargy"]), AmiTagozat = SDAConvert.ToNullableInt32(dr["AmiTagozat"]), AmiTantargyKotelezoseg = SDAConvert.ToNullableInt32(dr["AmiTantargyKotelezoseg"]), EvfolyamTipus = SDAConvert.ToNullableInt32(dr["EvfolyamTipus"]), AmiTantargyID = semaId, TantargyID = tantargyId }); } else { data.Add(new TanuloTantargyaiEgyeniModel { TanuloId = tanuloId, EgyeniOsztalyId = egyeniCsoportId, EgyeniTanarID = egyeniCsoportVezetoId, EgyeniOraszam = SDAConvert.ToDouble(dr["Oraszam"]), EgyeniAmiFotargy = SDAConvert.ToNullableInt32(dr["AmiFotargy"]), EgyeniAmiTagozat = SDAConvert.ToNullableInt32(dr["AmiTagozat"]), EgyeniAmiTantargyKotelezoseg = SDAConvert.ToNullableInt32(dr["AmiTantargyKotelezoseg"]), EgyeniEvfolyamTipus = SDAConvert.ToNullableInt32(dr["EvfolyamTipus"]), EgyeniAmiTantargyID = semaId, EgyeniTantargyID = tantargyId }); } } return data; } private class TantargySablonnal { public int? TantargyId { get; set; } public int? SemaId { get; set; } } } public class KollegiumTanuloLogic : TanuloLogic { private const string TanuloController = Constants.Controllers.KollegiumTanulo; private const int FeladatKategoria = (int)OktNevelesiKategoriaEnum.Kollegium; public static TanuloModel GetModTanuloData(int tanuloId, int? osztalycsoportId = null) { var co = GetTanuloAdat(tanuloId, osztalycsoportId); var model = TanuloModel.ConvertCoToModel(co); model.ZaradekModel.IsKapcsolodoZaradekokMegjelennek = true; if (ClaimData.IsSelectedTanev21_22OrLater && osztalycsoportId.HasValue) { var isAllOsztalyAltalanosFeladat = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsAllOsztalyAltalanosIskolaFeladatellatasiHely(new List { osztalycsoportId.Value }); model.TanuloTanugyModel.IsAltalanosIskolaFeladatEllatasiHely = isAllOsztalyAltalanosFeladat; } return model; } public static TanuloDetailModel GetTanuloData(int id, int? osztalycsoportId = null) { var co = GetTanuloAdat(id, osztalycsoportId); return TanuloDetailModel.ConvertCoToModel(co); } private static TanuloAdatCO GetTanuloAdat(int tanuloId, int? osztalycsoportId = null) { return new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(tanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, osztalycsoportId, FeladatKategoria); } public static List GetDetailTabs(TanuloDetailModel model, bool ertekelesTabAktiv = false) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SzemelyesAdat_Tab" } } }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elerhetosegek_Tab" } } }, new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Jogviszony_Tab" } } }, new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = model.OsztalycsoportId.HasValue ? "GetPartialViewWithOsztalycsoport" : "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Tanugyi_Tab" } } } }; var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Szocialis_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SNIBTN_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageVallasiAdatok || manageSportoloiAdatok) { var tabName = TanuloResource.SportoloiEsVallasiAdatok; if (!manageVallasiAdatok) { tabName = TanuloResource.Sport; } else if (!manageSportoloiAdatok) { tabName = TanuloResource.Vallas; } list.Add(new TabStripItemModel() { ItemId = "6", ItemName = tabName, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SportVallas_Tab" } } }); } if (!ClaimData.IsOsztalyfonok) { list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.OsztalyaiEsCsoportjai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OsztalyCsoport_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.TanultTantargyak, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TanultTantargyak_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Gondviselok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Gondviselok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Felmentesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TantargyiMentesseg_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "11", ItemName = TanuloResource.OrarendiOrai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OrarendiOra_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "12", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "DetailTanuloView" } }, IsActive = ertekelesTabAktiv }); list.Add(new TabStripItemModel() { ItemId = "13", ItemName = TanuloResource.Mulasztasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Mulasztasok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.Igazolasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Igazolasok_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Elozmenyek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elozmenyek_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "16", ItemName = TanuloResource.KozossegiSzolgalat, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", $"{Constants.General.TanuloSharedFolderPrefix}Info_KozossegiSzolgalat_Tab.cshtml" } } }); list.Add(new TabStripItemModel() { ItemId = "17", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Zaradek_Tab" } } }); return list; } public static List GetModTabs(TanuloModel model, bool isOfo, int? osztalyCsoportId) { var list = new List(); var osztalyCsoportIdString = osztalyCsoportId?.ToString(); if (ClaimData.ModifyTanuloAlapAdatok) { list.Add(new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Alapadat_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModElerhetoseg", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Elerhetoseg_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModGondviselo", ItemName = TanuloResource.Gondviselo, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Gondviselo_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Igazolvanyok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Igazolvanyok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Jogviszony_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_TanugyiAdatok_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.BelepesiAdatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Belepesi_Adatok_Tab" } } }); } } if (isOfo) { if (ClaimData.OfoManageSNIBTMAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); //list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.SNI, Model = model, PartialViewName = "Edit_SNI_Tab" }); //list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.BTM, Model = model, PartialViewName = "Edit_BTM_Tab" }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } if (ClaimData.OfoManageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } if (ClaimData.OfoManageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "12", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Zaradek_Tab" } } }); } else { var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); //list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.SNI, Model = model, PartialViewName = "Edit_SNI_Tab" }); //list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.BTM, Model = model, PartialViewName = "Edit_BTM_Tab" }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } if (ClaimData.IsAdministrator) { list.Add(new TabStripItemModel() { ItemId = "12", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Zaradek_Tab" } } }); } } list.Add(new TabStripItemModel() { ItemId = "ModKozSzolg", ItemName = TanuloResource.KozossegiSzolgalat, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", $"{Constants.General.TanuloSharedFolderPrefix}Mod_KozossegiSzolgalat_Tab.cshtml" } } }); list.Add(new TabStripItemModel() { ItemId = "13", ItemName = TanuloResource.Felmentesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Felmentes_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "ModTanuloView" } } }); } list[0].IsActive = true; return list; } public static List GetTanuloTobbesModTabs(TanuloTobbesModModel model) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.SzemelyesAdatai, Model = model, PartialViewName = "AlapadatTobbesModify_Bevitel" }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.TanugyiAdatai, Model = model, PartialViewName = "TanugyiAdatokTobbesModify_Bevitel" } }; var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.VallasiFelekezetiHovatartozas, Model = model, PartialViewName = "VallasTobbesModify_Bevitel" }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.SportoloiTevekenyseg, Model = model, PartialViewName = "SportTobbesModify_Bevitel" }); } list[0].IsActive = true; return list; } } public class EGYMITanuloLogic : TanuloLogic { private const string TanuloController = Constants.Controllers.EGYMITanulo; private const int FeladatKategoria = (int)OktNevelesiKategoriaEnum.EGYMI; public static TanuloModel GetModTanuloData(int tanuloId, int? osztalycsoportId = null) { var co = GetTanuloAdat(tanuloId, osztalycsoportId); var model = TanuloModel.ConvertCoToModel(co); model.ZaradekModel.IsKapcsolodoZaradekokMegjelennek = true; if (ClaimData.IsSelectedTanev21_22OrLater && osztalycsoportId.HasValue) { var isAllOsztalyAltalanosFeladat = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).IsAllOsztalyAltalanosIskolaFeladatellatasiHely(new List { osztalycsoportId.Value }); model.TanuloTanugyModel.IsAltalanosIskolaFeladatEllatasiHely = isAllOsztalyAltalanosFeladat; } return model; } public static TanuloDetailModel GetTanuloData(int id, int? osztalycsoportId = null) { var co = GetTanuloAdat(id, osztalycsoportId); return TanuloDetailModel.ConvertCoToModel(co); } private static TanuloAdatCO GetTanuloAdat(int tanuloId, int? osztalycsoportId = null) { return new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(tanuloId, ClaimData.KovTanevID, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, osztalycsoportId, FeladatKategoria); } public static List GetDetailTabs(TanuloDetailModel model, bool ertekelesTabAktiv = false) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SzemelyesAdat_Tab" } } }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elerhetosegek_Tab" } } }, new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Jogviszony_Tab" } } }, new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = model.OsztalycsoportId.HasValue ? "GetPartialViewWithOsztalycsoport" : "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Tanugyi_Tab" } } } }; var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Szocialis_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SNIBTN_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageVallasiAdatok || manageSportoloiAdatok) { var tabName = TanuloResource.SportoloiEsVallasiAdatok; if (!manageVallasiAdatok) { tabName = TanuloResource.Sport; } else if (!manageSportoloiAdatok) { tabName = TanuloResource.Vallas; } list.Add(new TabStripItemModel() { ItemId = "6", ItemName = tabName, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_SportVallas_Tab" } } }); } if (!ClaimData.IsOsztalyfonok) { list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.OsztalyaiEsCsoportjai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OsztalyCsoport_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.TanultTantargyak, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TanultTantargyak_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Gondviselok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Gondviselok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Felmentesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_TantargyiMentesseg_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "11", ItemName = TanuloResource.OrarendiOrai, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_OrarendiOra_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "12", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "DetailTanuloView" } }, IsActive = ertekelesTabAktiv }); list.Add(new TabStripItemModel() { ItemId = "13", ItemName = TanuloResource.Mulasztasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Mulasztasok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.Igazolasok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Igazolasok_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Elozmenyek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Elozmenyek_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "16", ItemName = TanuloResource.KozossegiSzolgalat, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", $"{Constants.General.TanuloSharedFolderPrefix}Info_KozossegiSzolgalat_Tab.cshtml" } } }); list.Add(new TabStripItemModel() { ItemId = "17", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", model.OsztalycsoportId.ToString() }, { "PartialViewName", "Info_Zaradek_Tab" } } }); return list; } public static List GetModTabs(TanuloModel model, bool isOfo, int? osztalyCsoportId) { var list = new List(); var osztalyCsoportIdString = osztalyCsoportId?.ToString(); if (ClaimData.ModifyTanuloAlapAdatok) { list.Add(new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.Alapadatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Alapadat_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModElerhetoseg", ItemName = TanuloResource.Elerhetosegek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Elerhetoseg_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "ModGondviselo", ItemName = TanuloResource.Gondviselo, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Gondviselo_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.Igazolvanyok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Igazolvanyok_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "20", ItemName = TanuloResource.Jogviszony, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetPartialView", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "PartialViewName", "Info_Jogviszony_Tab" } } }); list.Add(new TabStripItemModel() { ItemId = "5", ItemName = TanuloResource.Tanugy, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_TanugyiAdatok_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "14", ItemName = TanuloResource.BelepesiAdatok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Belepesi_Adatok_Tab" } } }); } } if (isOfo) { if (ClaimData.OfoManageSNIBTMAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); //list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.SNI, Model = model, PartialViewName = "Edit_SNI_Tab" }); //list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.BTM, Model = model, PartialViewName = "Edit_BTM_Tab" }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } if (ClaimData.OfoManageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } if (ClaimData.OfoManageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } list.Add(new TabStripItemModel() { ItemId = "12", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Zaradek_Tab" } } }); } else { var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sajatos_nevelesi_igenyenek_szocialis_es_tanugyi_adatainak_kezelese); if (manageSajatosNevelesiIgenySzocialisEsTanugyiAdatok) { list.Add(new TabStripItemModel() { ItemId = "6", ItemName = TanuloResource.Szocialis, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SzocialisAdatok_Tab" } } }); //list.Add(new TabStripItemModel() { ItemId = "7", ItemName = TanuloResource.SNI, Model = model, PartialViewName = "Edit_SNI_Tab" }); //list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.BTM, Model = model, PartialViewName = "Edit_BTM_Tab" }); list.Add(new TabStripItemModel() { ItemId = "8", ItemName = TanuloResource.SNIBTM, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_SNI_BTM_Tab" } } }); } var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "9", ItemName = TanuloResource.Vallas, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Vallas_Tab" } } }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "10", ItemName = TanuloResource.Sport, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Edit_Sport_Tab" } } }); } if (ClaimData.IsAdministrator) { list.Add(new TabStripItemModel() { ItemId = "12", ItemName = OsztalyCsoportResource.Zaradekok, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Zaradek_Tab" } } }); } } list.Add(new TabStripItemModel() { ItemId = "ModKozSzolg", ItemName = TanuloResource.KozossegiSzolgalat, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", $"{Constants.General.TanuloSharedFolderPrefix}Mod_KozossegiSzolgalat_Tab.cshtml" } } }); list.Add(new TabStripItemModel() { ItemId = "13", ItemName = TanuloResource.Felmentesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetModPartialViewWithOsztalycsoport", RouteParameters = new Dictionary() { { "Id", model.TanuloId.ToString() }, { "osztalyCsoportIdString", osztalyCsoportIdString }, { "PartialViewName", "Mod_Felmentes_Tab" } } }); if (!ClaimData.IsSzirIntezmeny) { list.Add(new TabStripItemModel() { ItemId = "15", ItemName = TanuloResource.Ertekelesek, Area = Constants.Areas.Tanulo, Controller = TanuloController, Action = "GetTanuloErtekelesPartialView", RouteParameters = new Dictionary() { { "tanuloId", model.TanuloId.ToString() }, { "PartialViewName", "~/Areas/TanuloErtekeles/Views/TanuloErtekelesByTanulo/Index.cshtml" }, { "namePrefix", "ModTanuloView" } } }); } list[0].IsActive = true; return list; } public static List GetTanuloTobbesModTabs(TanuloTobbesModModel model) { var list = new List { new TabStripItemModel() { ItemId = "1", ItemName = TanuloResource.SzemelyesAdatai, Model = model, PartialViewName = "AlapadatTobbesModify_Bevitel" }, new TabStripItemModel() { ItemId = "2", ItemName = TanuloResource.TanugyiAdatai, Model = model, PartialViewName = "TanugyiAdatokTobbesModify_Bevitel" } }; var helper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()); var manageVallasiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_vallasi_adatainak_kezelese); if (manageVallasiAdatok) { list.Add(new TabStripItemModel() { ItemId = "3", ItemName = TanuloResource.VallasiFelekezetiHovatartozas, Model = model, PartialViewName = "VallasTobbesModify_Bevitel" }); } var manageSportoloiAdatok = helper.GetSystemSettingValue(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese); if (manageSportoloiAdatok) { list.Add(new TabStripItemModel() { ItemId = "4", ItemName = TanuloResource.SportoloiTevekenyseg, Model = model, PartialViewName = "SportTobbesModify_Bevitel" }); } list[0].IsActive = true; return list; } } }