init
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Naplo.Domain.V3.Interfaces;
|
||||
using Kreta.Naplo.Domain.V3.UniqueIdentifier;
|
||||
|
||||
namespace Kreta.Naplo.Domain.V3.Orarend
|
||||
{
|
||||
public class OrarendElemRequest : IValidatableObject, IModelValidacio<OrarendElemRequest>
|
||||
{
|
||||
public OrarendElemRequest(string orarendElemUid)
|
||||
{
|
||||
OrarendElemUid = new OrarendElemUid(orarendElemUid);
|
||||
}
|
||||
|
||||
public OrarendElemRequest(CalendarOraTypeEnum tipus, int id, DateTime datum)
|
||||
{
|
||||
OrarendElemUid = new OrarendElemUid(id, tipus, datum);
|
||||
}
|
||||
|
||||
public Dictionary<Predicate<OrarendElemRequest>, string> ModelValidaciok => new Dictionary<Predicate<OrarendElemRequest>, string>
|
||||
{
|
||||
{ x => x.OrarendElemUid != null
|
||||
&& x.OrarendElemUid.Tipus != CalendarOraTypeEnum.OrarendiOra
|
||||
&& x.OrarendElemUid.Tipus != CalendarOraTypeEnum.TanitasiOra
|
||||
&& x.OrarendElemUid.Tipus != CalendarOraTypeEnum.UresOra
|
||||
, "Csak órarendi, tanítási és elmaradt óra kérhető le!" }
|
||||
};
|
||||
|
||||
[Required]
|
||||
public OrarendElemUid OrarendElemUid { get; set; }
|
||||
|
||||
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) => ModelValidaciok.Where(x => x.Key.Invoke(this)).AsEnumerable().Select(x => new ValidationResult(x.Value));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user