94 lines
4.3 KiB
C#
94 lines
4.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using Kreta.BusinessLogic.Classes;
|
|
using Kreta.BusinessLogic.HelperClasses;
|
|
using Kreta.BusinessLogic.Helpers;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Helpers;
|
|
using Microsoft.Ajax.Utilities;
|
|
using ModelStateDictionary = System.Web.Http.ModelBinding.ModelStateDictionary;
|
|
|
|
namespace Kreta.Web.Areas.Feljegyzes.Models
|
|
{
|
|
public class BaseFeljegyzesModel
|
|
{
|
|
public int? Id { get; set; }
|
|
|
|
public int? FeljegyzoId { get; set; }
|
|
public bool HasAdminJogosultsag { get; set; }
|
|
|
|
public List<int> NemzetiDokumentumNyelvek { get; set; } = new List<int>();
|
|
|
|
public List<int> NyelvesitendoEsemenyTipuslist { get; set; }
|
|
|
|
[Display(Name = nameof(FeljegyzesekResource.Tanar), ResourceType = typeof(FeljegyzesekResource))]
|
|
public string FeljegyzoNev { get; set; }
|
|
|
|
[KretaRequired]
|
|
[Display(Name = nameof(FeljegyzesekResource.Datum), ResourceType = typeof(FeljegyzesekResource))]
|
|
public DateTime? EsemenyDatuma { get; set; }
|
|
|
|
[Display(Name = nameof(FeljegyzesekResource.Cim), ResourceType = typeof(FeljegyzesekResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
public string Targy { get; set; }
|
|
|
|
[Display(Name = nameof(FeljegyzesekResource.Megjegyzes), ResourceType = typeof(FeljegyzesekResource))]
|
|
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
|
public string Megjegyzes { get; set; }
|
|
|
|
[KretaRequired]
|
|
[Display(Name = nameof(FeljegyzesekResource.Tartalom), ResourceType = typeof(FeljegyzesekResource))]
|
|
public string Tartalom { get; set; }
|
|
|
|
[Display(Name = nameof(FeljegyzesekResource.TartalomNemet), ResourceType = typeof(FeljegyzesekResource))]
|
|
public string TartalomNemet { get; set; }
|
|
|
|
[Display(Name = nameof(FeljegyzesekResource.TartalomHorvat), ResourceType = typeof(FeljegyzesekResource))]
|
|
public string TartalomHorvat { get; set; }
|
|
|
|
[Display(Name = nameof(FeljegyzesekResource.TartalomRoman), ResourceType = typeof(FeljegyzesekResource))]
|
|
public string TartalomRoman { get; set; }
|
|
|
|
[Display(Name = nameof(FeljegyzesekResource.TartalomSzerb), ResourceType = typeof(FeljegyzesekResource))]
|
|
public string TartalomSzerb { get; set; }
|
|
|
|
public DateTime? MinimumErvenyessegKezdete { get; set; }
|
|
|
|
public DateTime? MaximumErvenyessegKezdete { get; set; }
|
|
|
|
protected ModelStateDictionary BaseValidation()
|
|
{
|
|
var modelStateDictionary = new ModelStateDictionary();
|
|
|
|
if (Tartalom.IsNullOrWhiteSpace())
|
|
{
|
|
modelStateDictionary.AddModelError(nameof(Tartalom), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.Tartalom}\""));
|
|
}
|
|
|
|
if (Megjegyzes?.Length > 255)
|
|
{
|
|
modelStateDictionary.AddModelError(nameof(Tartalom), string.Format(CommonResource.MaxLengthValidation, $"\"{FeljegyzesekResource.Megjegyzes}\"", 255));
|
|
}
|
|
|
|
if (!EsemenyDatuma.HasValue)
|
|
{
|
|
modelStateDictionary.AddModelError(nameof(EsemenyDatuma), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.Datum}\""));
|
|
}
|
|
else
|
|
{
|
|
FeljegyzesHelperCo feljegyzesHelperCo = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFeljegyzesHelperCo();
|
|
var minimumErvenyessegKezdete = feljegyzesHelperCo.MinimumErvenyessegKezdete;
|
|
var maximumErvenyessegKezdete = feljegyzesHelperCo.MaximumErvenyessegKezdete;
|
|
var minOk = EsemenyDatuma >= minimumErvenyessegKezdete;
|
|
var maxOk = EsemenyDatuma <= maximumErvenyessegKezdete;
|
|
if (!minOk || !maxOk)
|
|
{
|
|
modelStateDictionary.AddModelError(nameof(EsemenyDatuma), string.Format(FeljegyzesekResource.ADatumCsakKozeEshet, minimumErvenyessegKezdete.ToString("yyyy. MM. dd."), maximumErvenyessegKezdete.ToString("yyyy. MM. dd.")));
|
|
}
|
|
}
|
|
|
|
return modelStateDictionary;
|
|
}
|
|
}
|
|
}
|