This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,34 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Data.SqlTypes;
using System.Linq;
using Kreta.Ellenorzo.Domain.VN.Interfaces;
namespace Kreta.Ellenorzo.Domain.VN.Intezmeny.Hetirend
{
public class HetirendListRequest : IValidatableObject, IModelValidacio<HetirendListRequest>
{
public Dictionary<Predicate<HetirendListRequest>, string> ModelValidaciok => new Dictionary<Predicate<HetirendListRequest>, string>
{
{
x => x.OrarendElemVegNapDatuma < x.OrarendElemKezdoNapDatuma, $"A(z) {nameof(OrarendElemKezdoNapDatuma)} nagyobb, mint a(z) {nameof(OrarendElemVegNapDatuma)} érték!"
},
{ x => (x.OrarendElemVegNapDatuma - x.OrarendElemKezdoNapDatuma).Days > 21,
$"A {nameof(OrarendElemKezdoNapDatuma)} és a {nameof(OrarendElemVegNapDatuma)} paraméterek meg vannak adva, de maximum 3 hetes intervallum kérdezhető le!"
},
{
x => x.OrarendElemKezdoNapDatuma < (DateTime)SqlDateTime.MinValue || x.OrarendElemKezdoNapDatuma > (DateTime)SqlDateTime.MaxValue, $"A {nameof(OrarendElemKezdoNapDatuma)} paraméter nem lehet kisebb, mint 1753. január 1. és nagyobb, mint 9999. december 31.!"
},
{
x => x.OrarendElemVegNapDatuma < (DateTime)SqlDateTime.MinValue || x.OrarendElemVegNapDatuma > (DateTime)SqlDateTime.MaxValue, $"A {nameof(OrarendElemVegNapDatuma)} paraméter nem lehet kisebb, mint 1753. január 1. és nagyobb, mint 9999. december 31.!"
}
};
public DateTime OrarendElemKezdoNapDatuma { get; set; }
public DateTime OrarendElemVegNapDatuma { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) => ModelValidaciok.Where(x => x.Key.Invoke(this)).AsEnumerable().Select(x => new ValidationResult(x.Value));
}
}

View file

@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using Kreta.Ellenorzo.Domain.VN.Adatszotar;
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
using Kreta.Enums;
namespace Kreta.Ellenorzo.Domain.VN.Intezmeny.Hetirend
{
public class HetirendListResponse : IEqualityComparer<HetirendListResponse>
{
public Adatszotar<HetiRendTipusEnum> Tipus { get; set; }
public DateTime KezdoNapDatuma { get; set; }
public DateTime VegNapDatuma { get; set; }
public int HetSorszama { get; set; }
public HetirendUid Uid { get; set; }
public bool Equals(HetirendListResponse x, HetirendListResponse y) => x.Uid.Equals(x.Uid, y.Uid);
public int GetHashCode(HetirendListResponse obj) => obj.Uid.UidRaw.GetHashCode();
}
}