using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Web.Mvc; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.BusinessLogic.Helpers; using Kreta.BusinessLogic.Helpers.SystemSettings; using Kreta.Core; using Kreta.Core.ConnectionType; using Kreta.Enums; using Kreta.Enums.ManualEnums; using Kreta.Resources; using Kreta.Web.Helpers; using Kreta.Web.Helpers.TabStrip; using Kreta.Web.Security; namespace Kreta.Web.Areas.Tanulo.Models { public class TanuloSearchModel { public TanuloSearchModel() { TabList = new List(); AmiFeladatKategoriaIdItem = new List() { new SelectListItem { Text = OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = ((int)OktNevelesiKategoriaEnum.AlapfokuMuveszetoktatas).ToString() } }; KollegiumFeladatKategoriaIdItem = new List() { new SelectListItem { Text = OktNevelesiKategoriaEnum.Kollegium.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = ((int)OktNevelesiKategoriaEnum.Kollegium).ToString() } }; FelnottkepzesFeladatKategoriaIdItem = new List() { new SelectListItem { Text = OktNevelesiKategoriaEnum.Felnottkepzes.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = ((int)OktNevelesiKategoriaEnum.Felnottkepzes).ToString() } }; EGYMIFeladatKategoriaIdItem = new List() { new SelectListItem { Text = OktNevelesiKategoriaEnum.EGYMI.GetDisplayName(ClaimData.SelectedTanevID.Value), Value = ((int)OktNevelesiKategoriaEnum.EGYMI).ToString() } }; if (ClaimData.IsVegyes) { FeladatKategoriaId = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue(RendszerBeallitasTipusEnum.Default_Feladat_Kategoria); } } public int TanuloId { get; set; } public string TanuloModalHeader { get; set; } public List TabList { get; set; } [Display(Name = nameof(TanuloResource.Nev), ResourceType = typeof(TanuloResource))] public string Nev { get; set; } [Display(Name = nameof(CommonResource.Nem), ResourceType = typeof(CommonResource))] public int? NemId { get; set; } [Display(Name = nameof(TanuloResource.AnyjaNeve), ResourceType = typeof(TanuloResource))] public string AnyjaNeve { get; set; } [Display(Name = nameof(TanuloResource.SzuletesiHely), ResourceType = typeof(TanuloResource))] public string SzuletesiHely { get; set; } [Display(Name = nameof(TanuloResource.SzuletesiIdo), ResourceType = typeof(TanuloResource))] public DateTime? SzuletesiIdoTol { get; set; } [Display(Name = nameof(TanuloResource.SzuletesiIdo), ResourceType = typeof(TanuloResource))] public DateTime? SzuletesiIdoIg { get; set; } [Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))] public int? OsztalyCsoportId { get; set; } [Display(Name = nameof(TanuloResource.Aktiv), ResourceType = typeof(TanuloResource))] public bool Aktiv { get; set; } [Display(Name = nameof(TanuloResource.Archivaltak), ResourceType = typeof(TanuloResource))] public bool Archivalt { get; set; } [Display(Name = nameof(TanuloResource.Evfolyam), ResourceType = typeof(TanuloResource))] public int? EvfolyamId { get; set; } [Display(Name = nameof(TanuloResource.FelvetelTaneve), ResourceType = typeof(TanuloResource))] public int? FelvetelTanevId { get; set; } [Display(Name = nameof(TanuloResource.OktatasiAzonosito), ResourceType = typeof(TanuloResource))] public string OktatasiAzonosito { get; set; } [Display(Name = nameof(TanuloResource.Vegzos), ResourceType = typeof(TanuloResource))] public int? VegzosId { get; set; } [Display(Name = nameof(TanuloResource.SNI), ResourceType = typeof(TanuloResource))] public int? SNIId { get; set; } [Display(Name = nameof(TanuloResource.BTM), ResourceType = typeof(TanuloResource))] public int? BTMId { get; set; } [Display(Name = nameof(CommonResource.Feladatellatasihely), ResourceType = typeof(CommonResource))] public int? FeladatEllatasiHelyId { get; set; } [Display(Name = nameof(TanuloResource.HatranyosHelyzet), ResourceType = typeof(TanuloResource))] public int? HatranyosHelyzetId { get; set; } public bool? RosszOktAzon { get; set; } public bool? OsztalybaSoroltTantervNelkul { get; set; } public bool? NincsNem { get; set; } public bool? NincsSzakmaCsoport { get; set; } public bool? NincsAnyanyelv { get; set; } public bool? NincsAllampolgarsag { get; set; } public bool? TanuloBelepesNelkul { get; set; } public bool? NincsOsztondijAlapAdat { get; set; } public bool? NincsOsztondijUtalasAdat { get; set; } public bool? VanKettosOsztalybesorolas { get; set; } public bool IsHibasanRogzitettOktatasiAzonositok { get; set; } public bool IsHibasanRogzitettTajSzamok { get; set; } public bool IsHibasanRogzitettAdoazonositoJelek { get; set; } //Tanuló hozzáférés generálása gomb láthatósága public bool TanuloHozzaferesGeneralasaGombLathato { get; set; } public bool TanuloJelszoGeneralasaGombLathato { get; set; } //Gondviselő hozzáférés generálása gomb láthatósága public bool GondviseloHozzaferesGeneralasaGombLathato { get; set; } public bool GondviseloJelszoGeneralasaGombLathato { get; set; } public bool IsFromSzervezet { get; set; } public int? SzervezetId { get; set; } [Display(Name = nameof(TeremResource.SzervezetNeve), ResourceType = typeof(TeremResource))] public string SzervezetNev { get; set; } [Display(Name = nameof(TeremResource.SzervezetAzonosito), ResourceType = typeof(TeremResource))] public string SzervezetAzonosito { get; set; } public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled); [Display(Name = nameof(OsztalyCsoportResource.EllatottKoznevelesiFeladatTipus), ResourceType = typeof(OsztalyCsoportResource))] public int? FeladatKategoriaId { get; set; } [Display(Name = nameof(OsztalyCsoportResource.MuvesztiAg), ResourceType = typeof(OsztalyCsoportResource))] public int? SearchMuveszetiAgId { get; set; } public List AmiFeladatKategoriaIdItem { get; set; } public List KollegiumFeladatKategoriaIdItem { get; set; } public List FelnottkepzesFeladatKategoriaIdItem { get; set; } public List EGYMIFeladatKategoriaIdItem { get; set; } public bool ForOktober { get; set; } [Display(Name = nameof(TanuloResource.TanterviJelleg), ResourceType = typeof(TanuloResource))] public int? TanterviJellegSearchId { get; set; } public static TanuloSearchModel SetFilterTanuloSearchModel(string filter) { TanuloSearchModel result = new TanuloSearchModel(); switch (filter) { case "nincsallampolgarsag": result.NincsAllampolgarsag = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "nincsanyanyelv": result.NincsAnyanyelv = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "nincsszakmacsoport": result.NincsSzakmaCsoport = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "nincsnem": result.NincsNem = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "nincsbelepestanulo": result.TanuloBelepesNelkul = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "minden": result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "nincsOsztondijAlapAdat": result.NincsOsztondijAlapAdat = true; result.FeladatKategoriaId = (int)OktNevelesiKategoriaEnum.NevelesOktatas; break; case "nincsOsztondijUtalasAdat": result.NincsOsztondijUtalasAdat = true; result.FeladatKategoriaId = (int)OktNevelesiKategoriaEnum.NevelesOktatas; break; case "vanKettosOsztalybesorolas": result.VanKettosOsztalybesorolas = true; break; case "hibasanRogzitettOktatasiAzonositok": result.IsHibasanRogzitettOktatasiAzonositok = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "hibasanRogzitettTajSzamok": result.IsHibasanRogzitettTajSzamok = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; result.Aktiv = true; break; case "hibasanRogzitettAdoazonositoJelek": result.IsHibasanRogzitettAdoazonositoJelek = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; result.Aktiv = true; break; } return result; } public TanuloKeresesCO ConvertModelToCo(IConnectionType connectionType, bool isAktivTanev) { return new TanuloKeresesCO(connectionType, isAktivTanev) { Nev = this.Nev, Neme = this.NemId, EvfolyamId = this.EvfolyamId, FelvetelEve = this.FelvetelTanevId, SzuletesiIdoKezdet = this.SzuletesiIdoTol, SzuletesiIdoVeg = this.SzuletesiIdoIg, AnyjaNeve = this.AnyjaNeve, SzuletesiHely = this.SzuletesiHely, OsztalyId = this.OsztalyCsoportId, Aktiv = this.Aktiv, Vegzos = this.VegzosId?.ToString(), SNI = this.SNIId?.ToString(), BTM = this.BTMId?.ToString(), FeladatellatasiHelyId = this.FeladatEllatasiHelyId, HatranyosHelyzetId = this.HatranyosHelyzetId, Torolt = this.Archivalt, OktatasiAzonosito = string.IsNullOrWhiteSpace(this.OktatasiAzonosito) ? string.Empty : this.OktatasiAzonosito, OsztalybaSoroltTantervNelkul = this.OsztalybaSoroltTantervNelkul, NincsNem = this.NincsNem, NincsAllampolgarsag = this.NincsAllampolgarsag, NincsAnyanyelv = this.NincsAnyanyelv, NincsSzakmaCsoport = this.NincsSzakmaCsoport, FeladatKategoriaId = this.FeladatKategoriaId.IsEntityId() ? this.FeladatKategoriaId : null, TanuloBelepesNelkul = this.TanuloBelepesNelkul, SearchMuveszetiAgId = this.SearchMuveszetiAgId, ForOktober = ForOktober, NincsOsztondijAlapAdat = this.NincsOsztondijAlapAdat, NincsOsztondijUtalasAdat = this.NincsOsztondijUtalasAdat, VanKettosOsztalybesorolas = this.VanKettosOsztalybesorolas, IsHibasanRogzitettOktatasiAzonositok = this.IsHibasanRogzitettOktatasiAzonositok, IsHibasanRogzitettTajSzamok = this.IsHibasanRogzitettTajSzamok, IsHibasanRogzitettAdoazonositoJelek = this.IsHibasanRogzitettAdoazonositoJelek, TanterviJellegSearchId = this.TanterviJellegSearchId, IsFromSzervezet = this.IsFromSzervezet, SzervezetId = this.SzervezetId, SzervezetNev = this.SzervezetNev, SzervezetAzonosito = this.SzervezetAzonosito, }; } } }