init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,49 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using Kreta.Ellenorzo.Domain.VN.Interfaces;
|
||||
using Kreta.Ellenorzo.Domain.VN.Logic;
|
||||
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
|
||||
using Kreta.Ellenorzo.Domain.VN.Utility.ValidationAttributes;
|
||||
|
||||
namespace Kreta.Ellenorzo.Domain.VN.Mulasztas
|
||||
{
|
||||
public class MulasztasListRequest : IValidatableObject, IRequestUidFilter<MulasztasUid>, IModelValidacio<MulasztasListRequest>
|
||||
{
|
||||
public MulasztasListRequest()
|
||||
{
|
||||
}
|
||||
|
||||
public MulasztasListRequest(string uidRaw)
|
||||
{
|
||||
Uid = UidLogic.GetUid(uidRaw, UidConverter);
|
||||
}
|
||||
|
||||
[ShortDateTime]
|
||||
public DateTime? DatumIg { get; set; }
|
||||
|
||||
[ShortDateTime]
|
||||
public DateTime? DatumTol { get; set; }
|
||||
|
||||
public bool IsCallerGetOnlyOneItem { get; set; }
|
||||
|
||||
public Dictionary<Predicate<MulasztasListRequest>, string> ModelValidaciok => new Dictionary<Predicate<MulasztasListRequest>, string>
|
||||
{
|
||||
{
|
||||
x => x.DatumIg.HasValue && x.DatumTol.HasValue && (x.DatumIg < x.DatumTol),
|
||||
$"A {nameof(DatumTol)} és a {nameof(DatumIg)} paraméterek meg vannak adva, de a {nameof(DatumTol)} nagyobb, mint a {nameof(DatumIg)} értek!"
|
||||
},
|
||||
{
|
||||
x => x.DatumIg.HasValue && x.DatumTol.HasValue && (((TimeSpan)(x.DatumIg - x.DatumTol)).Days > 21),
|
||||
$"A {nameof(DatumTol)} és a {nameof(DatumIg)} paraméterek meg vannak adva, de maximum 3 hetes intervallum kérdezhető le!"
|
||||
}
|
||||
};
|
||||
|
||||
public MulasztasUid Uid { get; set; }
|
||||
|
||||
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) => ModelValidaciok.Where(x => x.Key.Invoke(this)).AsEnumerable().Select(x => new ValidationResult(x.Value));
|
||||
|
||||
public static readonly Converter<string[], MulasztasUid> UidConverter = uidRaw => new MulasztasUid(uidRaw[0]);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,44 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Kreta.Ellenorzo.Domain.VN.Adatszotar;
|
||||
using Kreta.Ellenorzo.Domain.VN.Felhasznalo.Alkalmazott.Tanar;
|
||||
using Kreta.Ellenorzo.Domain.VN.Ora.TanitasiOra;
|
||||
using Kreta.Ellenorzo.Domain.VN.OsztalyCsoport;
|
||||
using Kreta.Ellenorzo.Domain.VN.Tantargy;
|
||||
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
|
||||
using Kreta.Ellenorzo.Enums.VN;
|
||||
using Kreta.Enums;
|
||||
|
||||
namespace Kreta.Ellenorzo.Domain.VN.Mulasztas
|
||||
{
|
||||
public class MulasztasListResponse : IEqualityComparer<MulasztasListResponse>
|
||||
{
|
||||
public DateTime Datum { get; set; }
|
||||
|
||||
public IgazolasAllapota IgazolasAllapota { get; set; }
|
||||
|
||||
public Adatszotar<IgazolasTipusEnum> IgazolasTipusa { get; set; }
|
||||
|
||||
public int? KesesPercben { get; set; }
|
||||
|
||||
public DateTime KeszitesDatuma { get; set; }
|
||||
|
||||
public Adatszotar<MulasztasMod> Mod { get; set; }
|
||||
|
||||
public TanitasiOraResponse Ora { get; set; }
|
||||
|
||||
public TanarSimplifiedResponse RogzitoTanar { get; set; }
|
||||
|
||||
public TantargyResponse Tantargy { get; set; }
|
||||
|
||||
public Adatszotar<MulasztasTipusEnum> Tipus { get; set; }
|
||||
|
||||
public OsztalyCsoportSimplifiedResponse OsztalyCsoport { get; set; }
|
||||
|
||||
public MulasztasUid Uid { get; set; }
|
||||
|
||||
public bool Equals(MulasztasListResponse x, MulasztasListResponse y) => x.Uid.Equals(x.Uid, y.Uid);
|
||||
|
||||
public int GetHashCode(MulasztasListResponse obj) => obj.Uid.UidRaw.GetHashCode();
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue