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.Linq;
using Kreta.Ellenorzo.Domain.VN.Interfaces;
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
using Kreta.Enums.ManualEnums;
namespace Kreta.Ellenorzo.Domain.VN.Orarend
{
public class OrarendElemGetRequest : IValidatableObject, IModelValidacio<OrarendElemGetRequest>
{
public OrarendElemGetRequest(string orarendElemUid)
{
OrarendElemUid = new OrarendElemUid(orarendElemUid);
}
public OrarendElemGetRequest(CalendarOraTypeEnum tipus, int id, DateTime datum)
{
OrarendElemUid = new OrarendElemUid(id, tipus, datum);
}
public Dictionary<Predicate<OrarendElemGetRequest>, string> ModelValidaciok => new Dictionary<Predicate<OrarendElemGetRequest>, 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));
}
}

View file

@ -0,0 +1,26 @@
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.Orarend
{
public class OrarendElemListRequest : IValidatableObject, IModelValidacio<OrarendElemListRequest>
{
public Dictionary<Predicate<OrarendElemListRequest>, string> ModelValidaciok => new Dictionary<Predicate<OrarendElemListRequest>, string>
{
{ x => 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 - x.DatumTol).Days > 31, $"A {nameof(DatumTol)} és a {nameof(DatumIg)} paraméterek meg vannak adva, de maximum 1 hónap intervallum kérdezhető le!" },
{ x => x.DatumTol < (DateTime)SqlDateTime.MinValue || x.DatumTol > (DateTime)SqlDateTime.MaxValue, $"A {nameof(DatumTol)} paraméter nem lehet kisebb, mint 1753. január 1. és nagyobb, mint 9999. december 31.!" },
{ x => x.DatumIg < (DateTime)SqlDateTime.MinValue || x.DatumIg > (DateTime)SqlDateTime.MaxValue, $"A {nameof(DatumIg)} paraméter nem lehet kisebb, mint 1753. január 1. és nagyobb, mint 9999. december 31.!" }
};
public DateTime DatumIg { get; set; }
public DateTime DatumTol { 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,83 @@
using System;
using System.Collections.Generic;
using Kreta.Ellenorzo.Domain.VN.Adatszotar;
using Kreta.Ellenorzo.Domain.VN.Csatolmany;
using Kreta.Ellenorzo.Domain.VN.Felhasznalo.Alkalmazott.Tanar;
using Kreta.Ellenorzo.Domain.VN.OsztalyCsoport;
using Kreta.Ellenorzo.Domain.VN.Tantargy;
using Kreta.Ellenorzo.Domain.VN.Terem;
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
using Kreta.Ellenorzo.Enums.VN;
using Kreta.Enums.ManualEnums;
namespace Kreta.Ellenorzo.Domain.VN.Orarend
{
public class OrarendElemListResponse : IEqualityComparer<OrarendElemListResponse>
{
public OrarendElemUid Uid { get; set; }
public OrarendElemUid OrarendiOraUid { get; set; }
public int? Oraszam { get; set; }
public DateTime KezdetIdopont { get; set; }
public DateTime VegIdopont { get; set; }
public Adatszotar<TanoraAllapotaEnum> Allapot { get; set; }
public Adatszotar<MulasztasTipus> TanuloJelenlet { get; set; }
public string Tema { get; set; }
public string TanevRendjeEsemenyNeve { private get; set; }
public string Nev => Uid.Tipus == CalendarOraTypeEnum.TanevRendjeEsemeny ? TanevRendjeEsemenyNeve : Tantargy.Nev;
public bool HasHaziFeladat { get; set; }
public List<CsatolmanySimplifiedResponse> Csatolmanyok { get; set; }
public HaziFeladatUid HaziFeladatUid { get; set; }
public OraiFeladatGroupUid FeladatGroupUid { get; set; }
public NyelviFeladatGroupUid NyelviFeladatGroupUid { get; set; }
public bool IsHaziFeladatMegoldva { get; set; }
public bool IsTanuloHaziFeladatEnabled { get; set; }
public bool IsTanevRendjeEsemeny { get; set; }
public int? OraEvesSorszama { get; set; }
public BejelentettSzamonkeresUid BejelentettSzamonkeresUid { get; set; }
public TantargyResponse Tantargy { get; set; }
public TeremSimplifiedResponse Terem { get; set; }
public OsztalyCsoportResponse OsztalyCsoport { get; set; }
public TanarSimplifiedResponse OratTartoTanar { get; set; }
public TanarSimplifiedResponse HelyettesTanar { get; set; }
public bool IsDigitalisOra { get; set; }
public string DigitalisEszkozTipus { get; set; }
public string DigitalisPlatformTipus { get; set; }
public List<string> DigitalisTamogatoEszkozTipusList { get; set; }
public DateTime Letrehozas { get; set; }
public DateTime UtolsoModositas { get; set; }
public bool Equals(OrarendElemListResponse x, OrarendElemListResponse y) => x.Uid.Equals(x.Uid, y.Uid);
public int GetHashCode(OrarendElemListResponse obj) => obj.Uid.UidRaw.GetHashCode();
}
}