215 lines
8.6 KiB
C#
215 lines
8.6 KiB
C#
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Web.Http.ModelBinding;
|
|
using Kreta.BusinessLogic.Classes;
|
|
using Kreta.BusinessLogic.HelperClasses;
|
|
using Kreta.BusinessLogic.Interfaces;
|
|
using Kreta.Core;
|
|
using Kreta.Core.CustomAttributes;
|
|
using Kreta.Enums;
|
|
using Kreta.Enums.ManualEnums;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Helpers.TabStrip;
|
|
using Kreta.Web.Security;
|
|
|
|
namespace Kreta.Web.Areas.DualisKepzes.Models
|
|
{
|
|
public class DualisKepzohelyModel
|
|
{
|
|
public DualisKepzohelyModel()
|
|
{
|
|
TabList = new List<TabStripItemModel>();
|
|
}
|
|
|
|
public List<TabStripItemModel> TabList { get; set; }
|
|
|
|
public int? ID { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.KepzohelyNeve), ResourceType = typeof(DualisResource))]
|
|
[Required(ErrorMessageResourceName = nameof(DualisResource.KepzohelyNevMegadasaKotelezo), ErrorMessageResourceType = typeof(DualisResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
public string KepzohelyNeve { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.KepzohelyAdoszama), ResourceType = typeof(DualisResource))]
|
|
[Required(ErrorMessageResourceName = nameof(DualisResource.KepzohelyAdoszamaMegadasaKotelezo), ErrorMessageResourceType = typeof(DualisResource))]
|
|
[AdoszamExtended(ErrorMessageResourceName = nameof(ErrorResource.AdoszamFormatumaNemMegfelelo), ErrorMessageResourceType = typeof(ErrorResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
public string KepzohelyAdoszama { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.KepzohelyCime), ResourceType = typeof(DualisResource))]
|
|
[Required(ErrorMessageResourceName = nameof(DualisResource.KepzohelyCimeMegadasaKotelezo), ErrorMessageResourceType = typeof(DualisResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
public string KepzohelyCime { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.HelyszinTipus), ResourceType = typeof(DualisResource))]
|
|
[Required(ErrorMessageResourceName = nameof(DualisResource.HelyszinTipusMegadasaKotelezo), ErrorMessageResourceType = typeof(DualisResource))]
|
|
public int? HelyszinTipusId { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.HelyszinTipus), ResourceType = typeof(DualisResource))]
|
|
public string HelyszinTipusName => HelyszinTipusId.GetDisplayName<DualisHelyszinTipusEnum>(ClaimData.SelectedTanevID.Value);
|
|
|
|
public bool IsEditable { get; set; }
|
|
|
|
public int? ParentSzervezetId { get; set; }
|
|
|
|
public static void ValidateModel(DualisKepzohelyModel model, ModelStateDictionary modelState)
|
|
{
|
|
if (string.IsNullOrWhiteSpace(model.KepzohelyAdoszama.ReplaceMultipleSpacesAndTrim()))
|
|
{
|
|
modelState.AddModelError("KepzohelyAdoszama", DualisResource.KepzohelyAdoszamaMegadasaKotelezo);
|
|
}
|
|
|
|
if (string.IsNullOrWhiteSpace(model.KepzohelyNeve.ReplaceMultipleSpacesAndTrim()))
|
|
{
|
|
modelState.AddModelError("KepzohelyNeve", DualisResource.KepzohelyNevMegadasaKotelezo);
|
|
}
|
|
|
|
if (string.IsNullOrWhiteSpace(model.KepzohelyCime.ReplaceMultipleSpacesAndTrim()))
|
|
{
|
|
modelState.AddModelError("KepzohelyCime", DualisResource.KepzohelyCimeMegadasaKotelezo);
|
|
}
|
|
|
|
if (!model.HelyszinTipusId.IsEntityId())
|
|
{
|
|
modelState.AddModelError("HelyszinTipusId", DualisResource.HelyszinTipusMegadasaKotelezo);
|
|
}
|
|
}
|
|
|
|
public static DualisKepzohelyCo ConvertModelToCO(DualisKepzohelyModel model)
|
|
{
|
|
var co = new DualisKepzohelyCo()
|
|
{
|
|
ID = model.ID,
|
|
KepzohelyNeve = model.KepzohelyNeve.ReplaceMultipleSpacesAndTrim(),
|
|
KepzohelyAdoszama = model.KepzohelyAdoszama.ReplaceMultipleSpacesAndTrim(),
|
|
KepzohelyCime = model.KepzohelyCime.ReplaceMultipleSpacesAndTrim(),
|
|
HelyszinTipusId = model.HelyszinTipusId ?? 0,
|
|
ParentSzervezetId = model.ParentSzervezetId,
|
|
};
|
|
|
|
return co;
|
|
}
|
|
}
|
|
|
|
public class DualisCsoportGridModel : IKretaIdentity
|
|
{
|
|
public DualisCsoportGridModel() { }
|
|
|
|
public DualisCsoportGridModel(DualisCsoportCo itemCo)
|
|
{
|
|
ID = itemCo.ID.ToString();
|
|
CsoportNeve = itemCo.CsoportNeve;
|
|
TanulokSzama = itemCo.TanulokSzama;
|
|
Megjegyzes = itemCo.Megjegyzes;
|
|
}
|
|
|
|
public string ID { get; set; }//CsoportId
|
|
|
|
[Display(Name = nameof(DualisResource.CsoportNev), ResourceType = typeof(DualisResource))]
|
|
public string CsoportNeve { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.TanulokSzama), ResourceType = typeof(DualisResource))]
|
|
public int TanulokSzama { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.Megjegyzes), ResourceType = typeof(DualisResource))]
|
|
public string Megjegyzes { get; set; }
|
|
|
|
}
|
|
|
|
public class DualisTanuloGridModel : IKretaIdentity
|
|
{
|
|
public DualisTanuloGridModel() { }
|
|
|
|
public DualisTanuloGridModel(DualisTanuloCo itemCo)
|
|
{
|
|
ID = itemCo.ID.ToString();
|
|
Nev = itemCo.Nev;
|
|
OktatasiAzonosito = itemCo.OktatasiAzonosito;
|
|
Adoazonosito = itemCo.Adoazonosito;
|
|
TajSzam = itemCo.TajSzam;
|
|
}
|
|
|
|
public string ID { get; set; }//TanuloId
|
|
|
|
[Display(Name = nameof(DualisResource.Nev), ResourceType = typeof(DualisResource))]
|
|
public string Nev { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.OktatasiAzonosito), ResourceType = typeof(DualisResource))]
|
|
public string OktatasiAzonosito { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.Adoazonosito), ResourceType = typeof(DualisResource))]
|
|
public string Adoazonosito { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.TajSzam), ResourceType = typeof(DualisResource))]
|
|
public string TajSzam { get; set; }
|
|
}
|
|
|
|
public class DualisOktatoGridModel : IKretaIdentity
|
|
{
|
|
public DualisOktatoGridModel() { }
|
|
|
|
public DualisOktatoGridModel(DualisOktatoCo itemCo)
|
|
{
|
|
ID = itemCo.ID.ToString();
|
|
Nev = itemCo.Nev;
|
|
OktatasiAzonosito = itemCo.OktatasiAzonosito;
|
|
}
|
|
|
|
public string ID { get; set; }//OktatoId
|
|
|
|
[Display(Name = nameof(DualisResource.Nev), ResourceType = typeof(DualisResource))]
|
|
public string Nev { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.OktatasiAzonosito), ResourceType = typeof(DualisResource))]
|
|
public string OktatasiAzonosito { get; set; }
|
|
|
|
}
|
|
|
|
public class DualisTantargyGridModel : IKretaIdentity
|
|
{
|
|
public DualisTantargyGridModel() { }
|
|
|
|
public DualisTantargyGridModel(DualisTantargyCo itemCo)
|
|
{
|
|
ID = itemCo.ID.ToString();
|
|
Nev = itemCo.Nev;
|
|
}
|
|
|
|
public string ID { get; set; }//TantargyId
|
|
|
|
[Display(Name = nameof(DualisResource.Nev), ResourceType = typeof(DualisResource))]
|
|
public string Nev { get; set; }
|
|
|
|
}
|
|
|
|
public class DualisHelyszinGridModel : IKretaIdentity
|
|
{
|
|
public DualisHelyszinGridModel() { }
|
|
|
|
public DualisHelyszinGridModel(DualisHelyszinCo itemCo)
|
|
{
|
|
ID = itemCo.ID.ToString();
|
|
Nev = itemCo.Nev;
|
|
HelyisegJelleg = itemCo.HelyisegJelleg;
|
|
HelyszinTipus = itemCo.HelyszinTipus;
|
|
Aktiv = itemCo.Aktiv;
|
|
}
|
|
|
|
public string ID { get; set; }//TeremId
|
|
|
|
[Display(Name = nameof(DualisResource.Nev), ResourceType = typeof(DualisResource))]
|
|
public string Nev { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.HelyisegJelleg), ResourceType = typeof(DualisResource))]
|
|
public string HelyisegJelleg { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.HelyszinTipus), ResourceType = typeof(DualisResource))]
|
|
public string HelyszinTipus { get; set; }
|
|
|
|
[Display(Name = nameof(DualisResource.Aktiv), ResourceType = typeof(DualisResource))]
|
|
public string AktivStr { get { return Aktiv ? IgenNemEnum.Igen.GetDisplayName(ClaimData.SelectedTanevID.Value) : IgenNemEnum.Nem.GetDisplayName(ClaimData.SelectedTanevID.Value); } }
|
|
|
|
public bool Aktiv { get; set; }
|
|
|
|
}
|
|
}
|