kreta/KretaWeb/Areas/Adminisztracio/Models/AdatszotarGridModel.cs
2024-03-13 00:33:46 +01:00

226 lines
13 KiB
C#

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<SelectListItem>();
ZaradekSzovegList = new List<ZaradekSzovegModel>();
}
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<ZaradekSzovegModel>();
}
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<SelectListItem> 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<ZaradekSzovegModel> 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<AdatszotarZaradekNyelvCo>();
return co;
}
}
}