using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Web.Mvc; using Kreta.BusinessLogic.HelperClasses; using Kreta.BusinessLogic.Interfaces; using Kreta.Core.CustomAttributes; using Kreta.Enums; using Kreta.Resources; using Kreta.Web.Models; namespace Kreta.Web.Areas.Adminisztracio.Models { public class AdatszotarGridModel : IKretaIdentity { public const string AdatszotarExportAttributeId = nameof(AdatszotarExportAttributeId); public const string AdatszotarNapTipusExportAttributeId = nameof(AdatszotarNapTipusExportAttributeId); public AdatszotarGridModel() { this.IsLathato = true; AdatszotarTipusList = new List(); ZaradekSzovegList = new List(); } public AdatszotarGridModel(AdatszotarItemCo itemCo) : this() { ID = itemCo.Id.ToString(); AdatszotarTipusId = itemCo.AdatszotarTipusId; AdatszotarTipusNev = itemCo.AdatszotarTipusNev; Megnevezes = itemCo.Megnevezes; Sorszam = itemCo.Sorszam; Megnevezes1 = itemCo.Megnevezes1; Megnevezes2 = itemCo.Megnevezes2; Megnevezes3 = itemCo.Megnevezes3; Megnevezes4 = itemCo.Megnevezes4; IsLathato = itemCo.IsLathato; IsLathatoText = itemCo.IsLathatoText; IsProtected = itemCo.IsProtected; IsProtectedText = itemCo.IsProtectedText; IsSorszamozando = itemCo.IsSorszamozando; IsSorszamozandoText = itemCo.IsSorszamozandoText; IsTanorai = itemCo.IsTanorai; IsTanoraiText = itemCo.IsTanoraiText; IsTanorankivuli = itemCo.IsTanorankivuli; IsTanorankivuliText = itemCo.IsTanorankivuliText; IsLeNemKotottMunkaido = itemCo.IsLeNemKotottMunkaido; IsLeNemKotottMunkaidoText = itemCo.IsLeNemKotottMunkaidoText; } public AdatszotarGridModel(AdatszotarCO co) : this() { ID = string.Empty; AdatszotarID = co.ID; AdatszotarTipusNev = co.AdatszotarTipus; AdatszotarTipusId = co.AdatszotarTipusId; IsLathato = co.Lathato ?? false; Megnevezes = co.Megnevezes; Sorszam = co.Sorszam; Megnevezes1 = co.Megnevezes1; Megnevezes2 = co.Megnevezes2; Megnevezes3 = co.Megnevezes3; Megnevezes4 = co.Megnevezes4; Color = "#" + co.Color != null ? co.Color : "000000"; IsBold = co.IsBold; Suly = co.Suly; IsProtected = co.Protected; IsSorszamozando = co.IsSorszamozando; IsTanorai = co.IsTanorai; IsTanorankivuli = co.IsTanorankivuli; IsLeNemKotottMunkaido = co.IsLeNemKotottMunkaido; IsBizonyitvanybanMegjelenik = co.IsBizonyitvanybanMegjelenik; IsNaplobanMegjelenik = co.IsNaplobanMegjelenik; IsTorzslaponMegjelenik = co.IsTorzslaponMegjelenik; ZaradekSzovegList = (co.AdatszotarTipusId == (int)GeneratedAdatszotarTipusEnum.SorolasOkaTipus) ? ZaradekSzovegModel.AdatszotarNyelvCoToZaradekSzovegModel(co.ZaradekSzovegCoList) : new List(); } public string ID { get; set; } public int? AdatszotarID { get; set; } public int AdatszotarTipusId { get; set; } [Display(Name = nameof(AdminisztracioResource.Adatszotar), ResourceType = typeof(AdminisztracioResource))] public string AdatszotarTipusNev { get; set; } public List AdatszotarTipusList { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 01, nameof(AdminisztracioResource.Megnevezes), typeof(AdminisztracioResource))] [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 01, nameof(AdminisztracioResource.Megnevezes), typeof(AdminisztracioResource))] [Required(ErrorMessageResourceName = nameof(ErrorResource.MegnevezesMegadasaKotelezo), ErrorMessageResourceType = typeof(ErrorResource))] [StringLength(250, ErrorMessageResourceName = nameof(ErrorResource.AMegnevezesMax250KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))] [Display(Name = nameof(AdminisztracioResource.Megnevezes), ResourceType = typeof(AdminisztracioResource))] public string Megnevezes { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 00, nameof(AdminisztracioResource.Sorszam), typeof(AdminisztracioResource))] [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 00, nameof(AdminisztracioResource.Sorszam), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.Sorszam), ResourceType = typeof(AdminisztracioResource))] public int? Sorszam { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 02, nameof(AdminisztracioResource.Megnevezes1), typeof(AdminisztracioResource))] [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 02, nameof(AdminisztracioResource.Megnevezes1), typeof(AdminisztracioResource))] [StringLength(250, ErrorMessageResourceName = nameof(ErrorResource.AMegnevezes1Max250KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))] [Display(Name = nameof(AdminisztracioResource.Megnevezes1), ResourceType = typeof(AdminisztracioResource))] public string Megnevezes1 { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 03, nameof(AdminisztracioResource.Megnevezes2), typeof(AdminisztracioResource))] [StringLength(250, ErrorMessageResourceName = nameof(ErrorResource.AMegnevezes2Max250KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))] [Display(Name = nameof(AdminisztracioResource.Megnevezes2), ResourceType = typeof(AdminisztracioResource))] public string Megnevezes2 { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 04, nameof(AdminisztracioResource.Megnevezes3), typeof(AdminisztracioResource))] [StringLength(250, ErrorMessageResourceName = nameof(ErrorResource.AMegnevezes3Max250KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))] [Display(Name = nameof(AdminisztracioResource.Megnevezes3), ResourceType = typeof(AdminisztracioResource))] public string Megnevezes3 { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 05, nameof(AdminisztracioResource.Megnevezes4), typeof(AdminisztracioResource))] [StringLength(250, ErrorMessageResourceName = nameof(ErrorResource.AMegnevezes4Max250KarakterLehet), ErrorMessageResourceType = typeof(ErrorResource))] [Display(Name = nameof(AdminisztracioResource.Megnevezes4), ResourceType = typeof(AdminisztracioResource))] public string Megnevezes4 { get; set; } [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 04, nameof(AdminisztracioResource.Lathato), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.Lathato), ResourceType = typeof(AdminisztracioResource))] public bool IsLathato { get; set; } [Display(Name = nameof(AdminisztracioResource.VedettElem), ResourceType = typeof(AdminisztracioResource))] public bool IsProtected { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 07, nameof(AdminisztracioResource.Lathato), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.Lathato), ResourceType = typeof(AdminisztracioResource))] public string IsLathatoText { get; set; } [SimpleExportColumn(AdatszotarExportAttributeId, 06, nameof(AdminisztracioResource.VedettElem), typeof(AdminisztracioResource))] [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 03, nameof(AdminisztracioResource.VedettElem), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.VedettElem), ResourceType = typeof(AdminisztracioResource))] public string IsProtectedText { get; set; } [Display(Name = nameof(AdminisztracioResource.Szin), ResourceType = typeof(AdminisztracioResource))] public string Color { get; set; } [Display(Name = nameof(AdminisztracioResource.Felkover), ResourceType = typeof(AdminisztracioResource))] public bool IsBold { get; set; } [Display(Name = nameof(AdminisztracioResource.Suly), ResourceType = typeof(AdminisztracioResource))] public int Suly { get; set; } [Display(Name = nameof(AdminisztracioResource.IsSorszamozando), ResourceType = typeof(AdminisztracioResource))] public bool IsSorszamozando { get; set; } [Display(Name = nameof(AdminisztracioResource.IsTanorai), ResourceType = typeof(AdminisztracioResource))] public bool IsTanorai { get; set; } [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 06, nameof(AdminisztracioResource.IsTanoraiGridHeader), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.IsTanoraiGridHeader), ResourceType = typeof(AdminisztracioResource))] public string IsTanoraiText { get; set; } [Display(Name = nameof(AdminisztracioResource.IsTanorankivuli), ResourceType = typeof(AdminisztracioResource))] public bool IsTanorankivuli { get; set; } [Display(Name = nameof(AdminisztracioResource.IsLeNemKotottMunkaido), ResourceType = typeof(AdminisztracioResource))] public bool IsLeNemKotottMunkaido { get; set; } [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 08, nameof(AdminisztracioResource.IsLeNemKotottMunkaidoGridHeader), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.IsLeNemKotottMunkaidoGridHeader), ResourceType = typeof(AdminisztracioResource))] public string IsLeNemKotottMunkaidoText { get; set; } [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 05, nameof(AdminisztracioResource.Sorszamozando), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.IsSorszamozandoGridHeader), ResourceType = typeof(AdminisztracioResource))] public string IsSorszamozandoText { get; set; } [SimpleExportColumn(AdatszotarNapTipusExportAttributeId, 07, nameof(AdminisztracioResource.IsTanorankivuliGridHeader), typeof(AdminisztracioResource))] [Display(Name = nameof(AdminisztracioResource.IsTanorankivuliGridHeader), ResourceType = typeof(AdminisztracioResource))] public string IsTanorankivuliText { get; set; } [Display(Name = nameof(AdminisztracioResource.IsNaplobanMegjelenik), ResourceType = typeof(AdminisztracioResource))] public bool IsNaplobanMegjelenik { get; set; } [Display(Name = nameof(AdminisztracioResource.IsTorzslaponMegjelenik), ResourceType = typeof(AdminisztracioResource))] public bool IsTorzslaponMegjelenik { get; set; } [Display(Name = nameof(AdminisztracioResource.IsBizonyitvanybanMegjelenik), ResourceType = typeof(AdminisztracioResource))] public bool IsBizonyitvanybanMegjelenik { get; set; } public List ZaradekSzovegList { get; set; } public AdatszotarCO ToCo() { AdatszotarCO co = new AdatszotarCO { ID = this.AdatszotarID, AdatszotarTipus = this.AdatszotarTipusNev, AdatszotarTipusId = this.AdatszotarTipusId, Lathato = this.IsLathato, Megnevezes = this.Megnevezes, Sorszam = this.Sorszam, Megnevezes1 = this.Megnevezes1, Megnevezes2 = this.Megnevezes2, Megnevezes3 = this.Megnevezes3, Megnevezes4 = this.Megnevezes4, Color = this.Color != null ? this.Color.Replace("#", "") : "", IsBold = this.IsBold, Suly = this.Suly, Protected = this.IsProtected, IsSorszamozando = this.IsSorszamozando, IsTanorai = this.IsTanorai, IsTanorankivuli = this.IsTanorankivuli, IsLeNemKotottMunkaido = this.IsLeNemKotottMunkaido, IsBizonyitvanybanMegjelenik = this.IsBizonyitvanybanMegjelenik, IsNaplobanMegjelenik = this.IsNaplobanMegjelenik, IsTorzslaponMegjelenik = this.IsTorzslaponMegjelenik }; co.ZaradekSzovegCoList = (this.AdatszotarTipusId == (int)GeneratedAdatszotarTipusEnum.SorolasOkaTipus) ? this.ZaradekSzovegList.ConvertAll(x => new AdatszotarZaradekNyelvCo { NyelvId = x.NyelvId, Name = x.Szoveg }) : new List(); return co; } } }