using Kreta.Naplo.Dto.V3.Documentation; using System.ComponentModel.DataAnnotations; using System.ComponentModel; using System; using Kreta.Naplo.Dto.V3.Interfaces; using Kreta.Naplo.Domain.V3.OsztalyCsoport; using Kreta.Naplo.Domain.V3.Utility; namespace Kreta.Naplo.Dto.V3.OsztalyCsoport { public class TanuloErtekelesekResponseDto : IDtoListDocumentation { [Required, Description(DescriptionLookUp.ErtekelesId)] public int ErtekelesId { get; set; } [Required, Description(DescriptionLookUp.TantargyId)] public int TantargyId { get; set; } [Required, Description(DescriptionLookUp.TantargyNev)] public string TantargyNev { get; set; } [Description(DescriptionLookUp.Ertekeles)] public string Ertekeles { get; set; } [Description(DescriptionLookUp.ErtekelesOsztalyzatId)] public int? ErtekelesOsztalyzatId { get; set; } [Description(DescriptionLookUp.ErtekelesOsztalyzatNev)] public string ErtekelesOsztalyzatNev { get; set; } [Description(DescriptionLookUp.ErtekelesSzoveg)] public string ErtekelesSzoveg { get; set; } [Description(DescriptionLookUp.ErtekelesSzazalek)] public int? ErtekelesSzazalek { get; set; } [Required, Description(DescriptionLookUp.ErtekelesFajtaId)] public int ErtekelesFajtaId { get; set; } [Required, Description(DescriptionLookUp.ErtekelesFajtaNev)] public string ErtekelesFajtaNev { get; set; } [Description(DescriptionLookUp.ErtekelesModId)] public int? ErtekelesModId { get; set; } [Description(DescriptionLookUp.ErtekelesModNev)] public string ErtekelesModNev { get; set; } [Required, Description(DescriptionLookUp.ErtekelesTipusId)] public int ErtekelesTipusId { get; set; } [Required, Description(DescriptionLookUp.ErtekelesTipusNev)] public string ErtekelesTipusNev { get; set; } [Description(DescriptionLookUp.ErtekelesTema)] public string ErtekelesTema { get; set; } [Required, Description(DescriptionLookUp.ErtekelesDatum)] public DateTime ErtekelesDatum { get; set; } [Description(DescriptionLookUp.ErtekelesSuly)] public int? ErtekelesSuly { get; set; } [Required, Description(DescriptionLookUp.ErtekelesRogzitesDatum)] public DateTime ErtekelesRogzitesDatum { get; set; } [Required, Description(DescriptionLookUp.TanarUid)] public Guid TanarUid { get; set; } [Required, Description(DescriptionLookUp.OsztalyCsoportId)] public int OsztalyCsoportId { get; set; } [Required, Description(DescriptionLookUp.FeladatEllatasiHelyId)] public int FeladatEllatasiHelyId { get; set; } [Required, Description(DescriptionLookUp.FeladatEllatasiHelyNev)] public string FeladatEllatasiHelyNev { get; set; } [Required, Description(DescriptionLookUp.Naplozart)] public bool Naplozart { get; set; } public DocumentationExampleDto ListExample => new DocumentationExampleDto( "GetTanuloErtekelesei", new TanuloErtekelesekRequestDto { TanuloId = 218785, TantargyId = 330986, OsztalyCsoportId = 804093 }); public static implicit operator TanuloErtekelesekResponseDto(TanuloErtekelesekResponse model) => new TanuloErtekelesekResponseDto { ErtekelesId = model.ErtekelesId, TantargyId = model.TantargyId, TantargyNev = model.TantargyNev, Ertekeles = model.Ertekeles, ErtekelesOsztalyzatId = model.ErtekelesOsztalyzatId, ErtekelesOsztalyzatNev = model.ErtekelesOsztalyzatNev, ErtekelesSzoveg = model.ErtekelesSzoveg, ErtekelesSzazalek = model.ErtekelesSzazalek, ErtekelesFajtaId = model.ErtekelesFajtaId, ErtekelesFajtaNev = model.ErtekelesFajtaNev, ErtekelesModId = model.ErtekelesModId, ErtekelesModNev = model.ErtekelesModNev, ErtekelesTipusId = model.ErtekelesTipusId, ErtekelesTipusNev = model.ErtekelesTipusNev, ErtekelesTema = model.ErtekelesTema, ErtekelesDatum = model.ErtekelesDatum.ToIso8601Utc(), ErtekelesSuly = model.ErtekelesSuly, ErtekelesRogzitesDatum = model.ErtekelesRogzitesDatum.ToIso8601Utc(), TanarUid = model.TanarUid, OsztalyCsoportId = model.OsztalyCsoportId, FeladatEllatasiHelyId = model.FeladatEllatasiHelyId, FeladatEllatasiHelyNev = model.FeladatEllatasiHelyNev, Naplozart = model.Naplozart }; } }