using System; using System.ComponentModel.DataAnnotations; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.Resources; using Kreta.Web.Areas.OsztalyCsoport.ModelInterface; using Kreta.Web.Models; using Kreta.Web.Models.EditorTemplates; namespace Kreta.Web.Areas.OsztalyCsoport.Models { public class BesorolasModCsoportbolKiirtTanulokModel : TabStripModel { public BesorolasModCsoportbolKiirtTanulokModel(int tanuloCsoportId) { AlapadatModel = new BesorolasModCsoportbolKiirtTanulokAlapadatModel(); ZaradekModel = new ZaradekModel(tanuloCsoportId); } [ValidateObject] public BesorolasModCsoportbolKiirtTanulokAlapadatModel AlapadatModel { get; set; } [ValidateObject] public ZaradekModel ZaradekModel { get; set; } public TanuloCsoportCO ConvertModelToTanuloCsoportCo() { return new TanuloCsoportCO { ID = AlapadatModel.TanuloCsoportId.Value, BelepDatum = AlapadatModel.BelepesDatum.Value, KilepDatum = AlapadatModel.KilepesDatum, NaploSorszam = AlapadatModel.NaploSorszam ?? default, TorzslapSzam = AlapadatModel.TorzslapSzam, Megjegyzes = AlapadatModel.Megjegyzes, BefogadoIntezmeny = AlapadatModel.BefogadoIntezmeny }; } } public class BesorolasModCsoportbolKiirtTanulokAlapadatModel : IBesorolasModValidationModel { [Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))] public string CsoportNev { get; set; } [Display(Name = nameof(OsztalyCsoportResource.TanuloNeve), ResourceType = typeof(OsztalyCsoportResource))] public string TanuloNev { get; set; } [Display(Name = nameof(OsztalyCsoportResource.BelepesDatum), ResourceType = typeof(OsztalyCsoportResource))] [KretaRequired(typeof(OsztalyCsoportResource), nameof(OsztalyCsoportResource.ABelepesdatumanakMegadasaKotelezo))] [DateRange(ErrorMessageResourceName = nameof(ErrorResource.BelepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))] public DateTime? BelepesDatum { get; set; } [Display(Name = nameof(OsztalyCsoportResource.KilepesDatum), ResourceType = typeof(OsztalyCsoportResource))] [DateRange(ErrorMessageResourceName = nameof(ErrorResource.KilepesDatumNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))] public DateTime? KilepesDatum { get; set; } [Display(Name = nameof(OsztalyCsoportResource.NaploSorszama), ResourceType = typeof(OsztalyCsoportResource))] [KretaRange(0, int.MaxValue, StringResourcesId = 2)] public int? NaploSorszam { get; set; } [Display(Name = nameof(OsztalyCsoportResource.Torzslapszam), ResourceType = typeof(OsztalyCsoportResource))] public string TorzslapSzam { get; set; } [Display(Name = nameof(OsztalyCsoportResource.Megjegyzes), ResourceType = typeof(OsztalyCsoportResource))] [StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.AMegjegyzesMax255KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))] public string Megjegyzes { get; set; } [Display(Name = nameof(OsztalyCsoportResource.TavozoTanuloEsetenBefogadoIntezmeny), ResourceType = typeof(OsztalyCsoportResource))] [StringLength(maximumLength: 255, ErrorMessageResourceName = nameof(ErrorResource.BefogadoIntezmenyMax255Karakter), ErrorMessageResourceType = typeof(ErrorResource))] public string BefogadoIntezmeny { get; set; } public DateTime ElsoTanitasiNap { get; set; } public DateTime UtolsoNap { get; set; } public DateTime UtolsoTanitasiNap { get; set; } public int? TanuloCsoportId { get; set; } public int? TanuloId { get; set; } public int? CsoportId { get; set; } public int? OsztalyId { get; set; } } }