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.SystemSettings; using Kreta.Core; using Kreta.Enums; using Kreta.Resources; using Kreta.Web.Attributes; using Kreta.Web.Helpers; using Kreta.Web.Security; namespace Kreta.Web.Areas.OsztalyCsoport.Models { public class OsztalySearchModel { public OsztalySearchModel() { TanevList = 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 List TanevList; [KretaDisplayName(458)] /*Osztály neve*/ public string OsztalyNev { get; set; } [KretaDisplayName(442)] /*Évfolyam*/ public int? EvfolyamID { get; set; } [KretaDisplayName(29)] /*Osztályfőnök*/ public int? OsztalyfonokID { get; set; } [KretaDisplayName(2477)] /*Terem*/ public int? TeremID { get; set; } [KretaDisplayName(3905)] /*Végzős évfolyam?*/ public int? Vegzos { get; set; } [KretaDisplayName(3906)] /*Osztályfőnök helyettes*/ public int? OsztalyfonokHelyettesID { get; set; } [KretaDisplayName(462)] /*Képzés*/ public int? KepzesID { get; set; } [KretaDisplayName(335)] /*Tanterv*/ public int? TantervID { get; set; } [Display(Name = nameof(OsztalyCsoportResource.NevelesiTerv), ResourceType = typeof(OsztalyCsoportResource))] public int? NevelesiTervID { get { return TantervID; } set { TantervID = value; } } [KretaDisplayName(3929)] /*Osztálynapló megnyitás/lezárás dátuma*/ public DateTime? NaploMegnyitasDatum { get; set; } [Display(Name = nameof(CommonResource.Feladatellatasihely), ResourceType = typeof(CommonResource))] public int? FeladatEllatasiHelyID { get; set; } [KretaDisplayName(3692)] /*Osztálynapló lezárás dátuma*/ public DateTime? NaploLezarasDatum { get; set; } public bool? UresOsztaly { get; set; } public bool? NincsEvfolyamJellmezo { get; set; } public bool? NincsOsztalyfonok { get; set; } [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 static OsztalySearchModel SetFilterOsztalySearchModel(string filter) { OsztalySearchModel result = new OsztalySearchModel(); switch (filter) { case "nincsosztalyfonok": result.NincsOsztalyfonok = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "nincsevfolyam": result.NincsEvfolyamJellmezo = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "ures": result.UresOsztaly = true; result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; case "minden": result.FeladatKategoriaId = Constants.MindenErteke.FeladatKategoria; break; } return result; } public OsztalySearchCo ConvertToCo(DateTime searchDate) { return new OsztalySearchCo { SearchDate = searchDate, OsztalyNev = this.OsztalyNev, EvfolyamId = this.EvfolyamID, OsztalyfonokId = this.OsztalyfonokID, TeremId = TeremID, Vegzos = this.Vegzos, OsztalyfonokHelyettesId = this.OsztalyfonokHelyettesID, KepzesId = this.KepzesID, TantervId = TantervID, NaploMegnyitasDatum = this.NaploMegnyitasDatum, FeladatEllatasiHelyId = this.FeladatEllatasiHelyID, NaploLezarasDatum = this.NaploLezarasDatum, UresOsztaly = this.UresOsztaly, NincsEvfolyamJellmezo = this.NincsEvfolyamJellmezo, NincsOsztalyfonok = this.NincsOsztalyfonok, FeladatKategoriaId = this.FeladatKategoriaId.IsEntityId() ? this.FeladatKategoriaId : null, SearchMuveszetiAgId = this.SearchMuveszetiAgId }; } } }