< Summary

Information
Class: FAU.Entidades.RelacionLaboral
Assembly: FAU.Entidades
File(s): /home/runner/work/Sistema.Liquidacion.BE/Sistema.Liquidacion.BE/FAU.Entidades/RelacionLaboral.cs
Line coverage
96%
Covered lines: 27
Uncovered lines: 1
Coverable lines: 28
Total lines: 107
Line coverage: 96.4%
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_Id()100%11100%
get_PersonaId()100%11100%
get_RegimenId()100%11100%
get_UnidadId()100%11100%
get_ProgramaId()100%11100%
get_SituacionId()100%11100%
get_EscalafonId()100%11100%
get_GradoId()100%11100%
get_FechaInicio()100%11100%
get_FechaFin()100%11100%
get_FechaUltimoAscenso()100%210%
get_Estado()100%11100%
get_FechaActualizacion()100%11100%
get_PrimaTecnica()100%11100%
get_PrimaSolidariaFamiliar()100%11100%
get_RiesgoVuelo()100%11100%
get_AniosInactivos()100%11100%
get_Observaciones()100%11100%
get_CompaniaId()100%11100%
get_Persona()100%11100%
get_Regimen()100%11100%
get_Unidad()100%11100%
get_Programa()100%11100%
get_Situacion()100%11100%
get_Escalafon()100%11100%
get_Grado()100%11100%
get_Compania()100%11100%
get_MovimientosLaborales()100%11100%

File(s)

/home/runner/work/Sistema.Liquidacion.BE/Sistema.Liquidacion.BE/FAU.Entidades/RelacionLaboral.cs

#LineLine coverage
 1using System.ComponentModel.DataAnnotations;
 2using System.ComponentModel.DataAnnotations.Schema;
 3
 4namespace FAU.Entidades;
 5
 6[Table("relaciones_laborales")]
 7public class RelacionLaboral
 8{
 9    [Key]
 10    [Column("id")]
 6511    public long Id { get; set; }
 12
 13    [Required]
 14    [Column("persona_id")]
 4615    public long PersonaId { get; set; }
 16
 17    [Required]
 18    [Column("regimen_id")]
 3619    public long RegimenId { get; set; }
 20
 21    [Required]
 22    [Column("unidad_id")]
 3923    public long UnidadId { get; set; }
 24
 25    [Required]
 26    [Column("programa_id")]
 3827    public long ProgramaId { get; set; }
 28
 29    [Required]
 30    [Column("situacion_id")]
 3831    public long SituacionId { get; set; }
 32
 33    [Required]
 34    [Column("escalafon_id")]
 3835    public long EscalafonId { get; set; }
 36
 37    [Required]
 38    [Column("grado_id")]
 4739    public long GradoId { get; set; }
 40
 41    [Required]
 42    [Column("fecha_inicio", TypeName = "date")]
 4543    public DateTime FechaInicio { get; set; }
 44
 45    [Column("fecha_fin", TypeName = "date")]
 1646    public DateTime? FechaFin { get; set; }
 47
 48    [Column("fecha_ultimo_ascenso", TypeName = "date")]
 049    public DateTime? FechaUltimoAscenso { get; set; }
 50
 51    [Required]
 52    [MaxLength(20)]
 53    [Column("estado")]
 6654    public EstadoRelacion Estado { get; set; } = EstadoRelacion.Activo; // activo, inactivo
 55
 56    [Column("fecha_actualizacion")]
 5657    public DateTime FechaActualizacion { get; set; } = DateTime.UtcNow;
 58
 59    // Campos adicionales para compensaciones
 60    [MaxLength(10)]
 61    [Column("prima_tecnica")]
 5062    public string? PrimaTecnica { get; set; } = "VACIO"; // VACIO, A, B, C
 63
 64    [MaxLength(30)]
 65    [Column("prima_solidaria_familiar")]
 766    public string? PrimaSolidariaFamiliar { get; set; }
 67
 68    [Column("riesgo_vuelo", TypeName = "decimal(14,2)")]
 769    public decimal? RiesgoVuelo { get; set; }
 70
 71    [Column("anios_inactivos")]
 772    public int? AniosInactivos { get; set; }
 73
 74    [Column("observaciones")]
 1675    public string? Observaciones { get; set; }
 76
 77    [Column("compania_id")]
 1278    public long? CompaniaId { get; set; }
 79
 80    // Navegación
 81    [ForeignKey("PersonaId")]
 11982    public virtual Persona Persona { get; set; } = null!;
 83
 84    [ForeignKey("RegimenId")]
 2285    public virtual Regimen Regimen { get; set; } = null!;
 86
 87    [ForeignKey("UnidadId")]
 1488    public virtual Unidad Unidad { get; set; } = null!;
 89
 90    [ForeignKey("ProgramaId")]
 1491    public virtual Programa Programa { get; set; } = null!;
 92
 93    [ForeignKey("SituacionId")]
 1494    public virtual Situacion Situacion { get; set; } = null!;
 95
 96    [ForeignKey("EscalafonId")]
 1497    public virtual Escalafon Escalafon { get; set; } = null!;
 98
 99    [ForeignKey("GradoId")]
 36100    public virtual Grado Grado { get; set; } = null!;
 101
 102    [ForeignKey("CompaniaId")]
 10103    public virtual Compania? Compania { get; set; }
 104
 43105    public virtual ICollection<MovimientoLaboral> MovimientosLaborales { get; set; } = new List<MovimientoLaboral>();
 106}
 107