using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.Core; using Kreta.Resources; using Kreta.Web.Classes; namespace Kreta.Web.Areas.Intezmeny.Models { public class OktatottSzakmaModifyModel { public OktatottSzakmaModifyModel() { } public OktatottSzakmaModifyModel(UjSzktSzakmajegyzekOsszerendelesItemCo co) { Id = co.Id.Value; SzakkepesitesMegnevezese = co.SzakkepesitesMegnevezese; OktatasiNevelesiFeladatNev = co.OktatasiNevelesiFeladatNev; AgazatiBesorolas = co.AgazatiBesorolas?.ToString("00"); SzakkepesitesAzonositoszam = co.SzakkepesitesAzonositoszam; JelenlegZajloKepzes = co.JelenlegZajloKepzes.GetDisplayName(); KepzesreFogadhatoTanulokSzama = co.KepzesreFogadhatoTanulokSzama.Value; JelenlegKepzettTanulokSzama = co.JelenlegKepzettTanulokSzama; IsNyilatkozott = co.IsNyilatkozott; FileId = co.FileId; FileNev = co.TeljesFileNev; FeltoltesDatum = co.IsFileFeltoltve ? co.FeltoltesDatum : null; EszkozallomanyAvultsaga = co.EszkozallomanyAvultsaga; EszkozokDarabszama = co.EszkozokDarabszama; EgyebEszkozallomanyInformacio = co.EgyebEszkozallomanyInformacio; TanmuhelyekSzama = co.TanmuhelyekSzama; } public int Id { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.SzakkepesitesMegnevezese), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string SzakkepesitesMegnevezese { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.OktatasiNevelesiFeladatNev), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string OktatasiNevelesiFeladatNev { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.AgazatiBesorolas), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string AgazatiBesorolas { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.SzakkepesitesAzonositoszam), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string SzakkepesitesAzonositoszam { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.JelenlegZajloKepzes), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string JelenlegZajloKepzes { get; set; } [Required(ErrorMessageResourceName = nameof(UjSzktSzakmajegyzekOsszerendelesResource.KepzesreFogadhatoTanulokSzamaRequired), ErrorMessageResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] [Range(0, 1000, ErrorMessageResourceName = nameof(UjSzktSzakmajegyzekOsszerendelesResource.KepzesreFogadhatoTanulokSzamaOutOfRange), ErrorMessageResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.KepzesreFogadhatoTanulokSzama), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public int KepzesreFogadhatoTanulokSzama { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.JelenlegKepzettTanulokSzama), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public int JelenlegKepzettTanulokSzama { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.IsNyilatkozott), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public bool IsNyilatkozott { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.IsNyilatkozott), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public int? FileId { get; set; } public bool IsFileFeltoltve => FileId.IsEntityId(); public string FileNev { get; set; } public FileModel File { get; set; } public bool IsFileNevTooLong => !string.IsNullOrWhiteSpace(FileNev) && FileNev.Length > 32; [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.FileNev), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string ShortFileNev => string.IsNullOrWhiteSpace(FileNev) || IsFileFeltoltve ? IsFileNevTooLong ? $"{FileNev.Substring(0, 29)}..." : FileNev : string.Empty; public DateTime? FeltoltesDatum { get; set; } [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.FeltoltesDatum), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string FeltoltesDatumText => FeltoltesDatum.HasValue ? FeltoltesDatum.Value.ToString(Core.Constants.ToStringPattern.HungarianDateTimeWithoutSeconds) : string.Empty; public int MaxAllowedFileSizeInMegaBytes = 15; public int MaxAllowedFileSizeInBytes => MaxAllowedFileSizeInMegaBytes * 1024 * 1024; public Dictionary AllowedFileExtensions = new Dictionary { {".pdf", "application/pdf"} }; [StringLength(500, ErrorMessageResourceName = nameof(UjSzktSzakmajegyzekOsszerendelesResource.EszkozallomanyAvultsagaOutOfRange), ErrorMessageResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.EszkozallomanyAvultsaga), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string EszkozallomanyAvultsaga { get; set; } [StringLength(500, ErrorMessageResourceName = nameof(UjSzktSzakmajegyzekOsszerendelesResource.EszkozokDarabszamaOutOfRange), ErrorMessageResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.EszkozokDarabszama), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string EszkozokDarabszama { get; set; } [StringLength(500, ErrorMessageResourceName = nameof(UjSzktSzakmajegyzekOsszerendelesResource.EgyebEszkozallomanyInformacioOutOfRange), ErrorMessageResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.EgyebEszkozallomanyInformacio), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string EgyebEszkozallomanyInformacio { get; set; } [Required(ErrorMessageResourceName = nameof(UjSzktSzakmajegyzekOsszerendelesResource.TanmuhelyekSzamaRequired), ErrorMessageResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] [StringLength(2000, ErrorMessageResourceName = nameof(UjSzktSzakmajegyzekOsszerendelesResource.TanmuhelyekSzamaOutOfRange), ErrorMessageResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] [Display(Name = nameof(UjSzktSzakmajegyzekOsszerendelesResource.TanmuhelyekSzama), ResourceType = typeof(UjSzktSzakmajegyzekOsszerendelesResource))] public string TanmuhelyekSzama { get; set; } public UjSzktSzakmajegyzekOsszerendelesItemCo ToCo() { return new UjSzktSzakmajegyzekOsszerendelesItemCo { Id = Id, FileId = FileId, File = File, KepzesreFogadhatoTanulokSzama = KepzesreFogadhatoTanulokSzama, EszkozallomanyAvultsaga = EszkozallomanyAvultsaga, EszkozokDarabszama = EszkozokDarabszama, EgyebEszkozallomanyInformacio = EgyebEszkozallomanyInformacio, TanmuhelyekSzama = TanmuhelyekSzama }; } } }