< Summary

Information
Class: FAU.Logica.DTOs.CrearBeneficioSocialRequest
Assembly: FAU.Logica
File(s): /home/runner/work/Sistema.Liquidacion.BE/Sistema.Liquidacion.BE/FAU.Logica/DTOs/CrearBeneficioSocialRequest.cs
Line coverage
100%
Covered lines: 9
Uncovered lines: 0
Coverable lines: 9
Total lines: 71
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_PersonaId()100%11100%
get_TipoBeneficioId()100%11100%
get_Cantidad()100%11100%
get_VigenteDesde()100%11100%
get_VigenteHasta()100%11100%
get_DocumentoRespaldo()100%11100%
get_Observaciones()100%11100%
get_CategoriaBeneficio()100%11100%
get_DatosTipo()100%11100%

File(s)

/home/runner/work/Sistema.Liquidacion.BE/Sistema.Liquidacion.BE/FAU.Logica/DTOs/CrearBeneficioSocialRequest.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2
 3namespace FAU.Logica.DTOs;
 4
 5public class CrearBeneficioSocialRequest
 6{
 7    [Required(ErrorMessage = "La persona es requerida")]
 138    public long PersonaId { get; set; }
 9
 10    [Required(ErrorMessage = "El tipo de beneficio es requerido")]
 1311    public long TipoBeneficioId { get; set; }
 12
 13    [Range(0, short.MaxValue, ErrorMessage = "La cantidad no puede ser negativa")]
 1614    public short? Cantidad { get; set; }
 15
 16    [Required(ErrorMessage = "La fecha de vigencia es requerida")]
 2217    public DateTime VigenteDesde { get; set; }
 18
 619    public DateTime? VigenteHasta { get; set; }
 20
 21    [MaxLength(200, ErrorMessage = "El documento de respaldo no puede exceder 200 caracteres")]
 722    public string? DocumentoRespaldo { get; set; }
 23
 324    public string? Observaciones { get; set; }
 25
 26    [Required(ErrorMessage = "La categoria de beneficio es requerida")]
 1027    public CategoriaBeneficioRequest CategoriaBeneficio { get; set; }
 28
 2329    public DatosTipoBeneficioRequest DatosTipo { get; set; } = new();
 30}
 31
 32public enum CategoriaBeneficioRequest
 33{
 34    General = 0,
 35    AsignacionFamiliar = 1,
 36    HogarConstituido = 2,
 37    PrimaSolidariaFamiliar = 3,
 38    PrimaNacimiento = 4,
 39    PrimaMatrimonio = 5
 40}
 41
 42public class DatosTipoBeneficioRequest
 43{
 44    public DateTime? FechaEvento { get; set; }
 45
 46    [MaxLength(80, ErrorMessage = "El estado civil o union no puede exceder 80 caracteres")]
 47    public string? EstadoCivilUnion { get; set; }
 48
 49    public bool? TieneHijosACargo { get; set; }
 50
 51    [Range(0, short.MaxValue, ErrorMessage = "La cantidad de hijos no puede ser negativa")]
 52    public short? CantidadHijosMenores { get; set; }
 53
 54    [Range(0, short.MaxValue, ErrorMessage = "La cantidad de hijos con discapacidad no puede ser negativa")]
 55    public short? CantidadHijosDiscapacidad { get; set; }
 56
 57    [MaxLength(120, ErrorMessage = "El tipo de prima solidaria no puede exceder 120 caracteres")]
 58    public string? PrimaSolidariaFamiliarTipo { get; set; }
 59
 60    // Subtipo de beneficio: "CON_FAMILIA" / "SIN_FAMILIA" para Prima Traslado;
 61    // "NACIMIENTO" / "MATRIMONIO" para PRIMA_NACIMIENTO_MATRIMONIO legado
 62    [MaxLength(20)]
 63    public string? Subtipo { get; set; }
 64
 65    public bool TieneJustificacionRetroactivo { get; set; }
 66
 67    [MaxLength(300, ErrorMessage = "La justificacion de retroactivo no puede exceder 300 caracteres")]
 68    public string? JustificacionRetroactivo { get; set; }
 69
 70    public bool PendienteDocumentacion { get; set; }
 71}