From eaf6fe5f0fe6018bc588268b91771242d6338ba4 Mon Sep 17 00:00:00 2001 From: Alejandro Date: Fri, 18 Sep 2026 13:06:47 +0200 Subject: [PATCH] =?UTF-8?q?-=20Poner=20un=20fondo=20a=20la=20opci=C3=B3n?= =?UTF-8?q?=20en=20la=20que=20estoy=20cuando=20entro=20en=20trabajadores?= =?UTF-8?q?=20-=20Imitar=20la=20forma=20de=20mostrar=20los=20a=C3=B1os=20?= =?UTF-8?q?=20y=20dem=C3=A1s=20opciones=20del=20programa=20de=20gesti?= =?UTF-8?q?=C3=B3n=20por=20ejemplo=20el=20"+"=20cuando=20tenga=20contenido?= =?UTF-8?q?=20+=20A=C3=B1o=20N=C3=B3mina:=202025,=20-=20Dentro=20de=20cada?= =?UTF-8?q?=20A=C3=B1o=20N=C3=B3mina=20ordenar=20por=20mes=20decreciente?= =?UTF-8?q?=20-=20Mostrar=20el=20contenido=20de=20la=20n=C3=B3mina=20sin?= =?UTF-8?q?=20necesidad=20de=20entrar=20en=20ella,=20estilo=20el=20program?= =?UTF-8?q?a=20de=20gest=C3=ADon,=20ordenando=20los=20conceptos=20por=20el?= =?UTF-8?q?=20campo=20orden=20de=20Conceptos=20Generales=20y=20poner=20en?= =?UTF-8?q?=20rojo=20los=20conceptos=20que=20son=20deducciones.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Components/Pages/InfoPers.razor | 10 +- .../InfoPersComponents/NominaDetalle.razor | 145 ++++++++++ .../Pages/InfoPersComponents/NominaGrid.razor | 251 ++---------------- .../Components/Pages/ListTrabajadores.razor | 6 +- .../Components/Pages/NominaPersona.razor | 12 + .../Components/Pages/PeriodoSiltraPers.razor | 19 +- .../wwwroot/Content/Site.css | 187 ++++++++++++- .../Controllers/PERSONASController.cs | 4 + 8 files changed, 388 insertions(+), 246 deletions(-) create mode 100644 Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaDetalle.razor diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPers.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPers.razor index 9821151..e63531e 100644 --- a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPers.razor +++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPers.razor @@ -56,6 +56,12 @@ +@if (cargando) +{ +
+
+
+}
@@ -309,7 +315,7 @@
- + @@ -440,6 +446,7 @@ [Parameter] public string? cl { get; set; } = ""; public bool mostrar { get; set; } = true; + private bool cargando = true; public bool mostrarBtn { get; set; } = false; List ListaSexos = new List(); List ListaTipos = new List(); @@ -891,6 +898,7 @@ finally { mostrar = false; + cargando = false; } } protected void volver() { Navigation.NavigateTo("/ListTrabajadores", forceLoad: true); } diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaDetalle.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaDetalle.razor new file mode 100644 index 0000000..f10f9e2 --- /dev/null +++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaDetalle.razor @@ -0,0 +1,145 @@ +@using BlazorBootstrap +@using bdAntifraude.db + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NóminaTotal devengadoTotal líquidoGrupoNivelDías efectivosDías enfermoDías accidentesDías faltaDías permisos sin retribuirDías maternidadAcumuladaProtegidaPluriempleoNº pluriempleoTotal Seguridad SocialProrrata paga extraProrrata productividadTotal deduccionesTotal haberesOtras deduccionesSS pago en especieTotal epígrafe 126Total maternidad/paternidadTotal permiso sin retribuirSindicatoReducción jornadaTrabajo tiempo parcialMutuaDías enfermedad al 60Base enfermedad al 60Días enfermedad al 75Base accidentesDías base pago directoBase pago directoVisibleModificableMes nómina
@Nomina.IDNOMINANavigation?.DESCRIPCION@Nomina.TOTALDEVENGADO@Nomina.TOTALLIQUIDO@Nomina.IDGRUPOFUNCIONARIONavigation?.DESCRIPCION@Nomina.NIVEL@Nomina.DIASEFECTIVOS@Nomina.DIASENFERMOS@Nomina.DIASACCIDENTES@Nomina.DIASFALTA@Nomina.DIASPERMISOSSINRETRIBUIR@Nomina.DIASMATERNIDAD@(Nomina.ACUMULADA == true ? "Sí" : "No")@(Nomina.PROTEGIDA == true ? "Sí" : "No")@Nomina.PLURIEMPLEO@Nomina.NUMEROPLURIEMPLEO@Nomina.TOTALSEGURIDADSOCIAL@Nomina.PRORRATAPAGAEXTRA@Nomina.PRORRATAPRODUCTIVIDAD@Nomina.TOTALDEDUCCIONES@Nomina.TOTALHABERES@Nomina.OTRASDEDUCCIONES@Nomina.TOTALSEGURIDADSOCIALPAGOENESPECIE@Nomina.TOTALEPIGRAFE126@Nomina.TOTALMATERNIDADPATERNIDAD@Nomina.TOTALPERMISOSINRETRIBUIR@Nomina.SINDICATO1@Nomina.REDUCCIONJORNADA@Nomina.TRABAJOTIEMPOPARCIAL@Nomina.MUTUA@Nomina.DIASENFERMEDADAL60@Nomina.BASEENFERMEDADAL60@Nomina.DIASENFERMEDADAL75@Nomina.BASEACCIDENTES@Nomina.DIASBASEPAGODIRECTO@Nomina.BASEPAGODIRECTO@(Nomina.VISIBLE == true ? "Sí" : "No")@(Nomina.MODIFICABLE == true ? "Sí" : "No")@Nomina.MESNOMINA
+
+ + + + + + + + @context.DESCRIPCIONCONCEPTO + @context.CANTIDAD + @context.IMPORTE + @context.TOTALRETRIBUCIONES + @context.TOTALDEDUCCIONES + + + + + + + + + @context.DESCRIPCION + @context.IMPORTE + @context.CUOTA + @context.SEGURIDADSOCIAL + + + + + + + + + @context.IDCONCEPTONOMINANavigation?.DESCRIPCION + @context.CANTIDAD + @context.IMPORTE + @context.IRPF + + + + + + +
+ @if (!Nomina.PERIODOSSILTRA.Any()) + { +

No se han encontrado datos

+ } + @foreach (var periodo in Nomina.PERIODOSSILTRA.OrderByDescending(x=>x.FECHAINICIO)) + { +
+ + + @periodo.FECHAINICIO?.ToString("dd/MM/yyyy") - @periodo.FECHAFIN?.ToString("dd/MM/yyyy") + + · @periodo.DIAS días · @periodo.IDTIPOPERIODOTRAMONavigation?.DESCRIPCION + +
+ + + + @foreach (var tramo in periodo.TRAMOSSILTRA.OrderBy(x=>x.IDTIPOTRAMONavigation.CODIGO)) + { + + + + + + } + +
Tipo de tramoImporte% empresaImporte empresa% trabajadorImporte trabajadorImporte global
+ @if (tramo.IDTIPOTRAMONavigation?.MODIFICABLE == false && tramo.IDTIPOTRAMONavigation?.SOLICITADOALUSUARIO == false) + { +

@tramo.IDTIPOTRAMONavigation?.CODIGO - @tramo.IDTIPOTRAMONavigation?.DESCRIPCION

+ } + @if (tramo.IDTIPOTRAMONavigation?.SOLICITADOALUSUARIO == true && tramo.IDTIPOTRAMONavigation?.MODIFICABLE == true) + { +

@tramo.IDTIPOTRAMONavigation?.CODIGO - @tramo.IDTIPOTRAMONavigation?.DESCRIPCION

+ } + @if (tramo.IDTIPOTRAMONavigation?.SOLICITADOALUSUARIO == false && tramo.IDTIPOTRAMONavigation?.MODIFICABLE == true) + { +

@tramo.IDTIPOTRAMONavigation?.CODIGO - @tramo.IDTIPOTRAMONavigation?.DESCRIPCION

+ } +
@tramo.IMPORTE@tramo.PORCENTAJEEMPRESA@tramo.IMPORTEEMPRESA@tramo.PORCENTAJETRABAJADOR@tramo.IMPORTETRABAJADOR@tramo.IMPORTEGLOBAL
+
+
+ } +
+
+
+
+ +@code { + + [Parameter] public NOMINATRABAJADORCABECERA Nomina { get; set; } = new(); + + private string PeriodoSiltraUrl(PERIODOSSILTRA periodo) + { + const string caracteres = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890.:/-*"; + var idPeriodo = tsUtilidades.crypt.FEncS(periodo.IDPERIODOSILTRA.ToString(), caracteres, caracteres, 875421649); + var idPersona = tsUtilidades.crypt.FEncS(Nomina.IDPERSONA.ToString(), caracteres, caracteres, 875421649); + var idNomina = tsUtilidades.crypt.FEncS(Nomina.IDNOMINATRABAJADOR.ToString(), caracteres, caracteres, 875421649); + + return $"/PeriodoSiltra?cl={idPeriodo}&idp={idPersona}&idn={idNomina}"; + } +} diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaGrid.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaGrid.razor index 2855a74..ef79380 100644 --- a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaGrid.razor +++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/NominaGrid.razor @@ -1,184 +1,29 @@ -@using System.Net.Http.Headers -@using System.Linq.Expressions -@using Newtonsoft.Json -@using System.Text -@using Serialize.Linq.Serializers @using GestionPersonalWeb.Models @using BlazorBootstrap @using bdAntifraude.db -@using Microsoft.AspNetCore.Components @rendermode InteractiveServer -@inject IJSRuntime JS -@inject NavigationManager NavigationManager -@inject IHttpClientFactory HttpClientFactory -@inject IHttpContextAccessor HttpContextAccessor -@inject UserState UserState - -
- +
- @for (var y = 0; y <= annos.Count - 1; y++) + @foreach (var anno in annos) { - var listado = itmList.Where(x => x.IDNOMINANavigation.AÑO == annos[y]).ToList(); - titulo = "Año Nómina: "+annos[y].ToString(); - + -
- - - - - - @context.IDNOMINANavigation?.DESCRIPCION - - @* @context.IDNOMINANavigation?.DESCRIPCION *@ - - - @context.TOTALDEVENGADO - - - @context.TOTALLIQUIDO - - - @context.IDGRUPOFUNCIONARIONavigation?.DESCRIPCION - - - @context.NIVEL - - - @context.DIASEFECTIVOS - - - @context.DIASENFERMOS - - - @context.DIASACCIDENTES - - - @context.DIASFALTA - - - @context.DIASPERMISOSSINRETRIBUIR - - - @context.DIASMATERNIDAD - - - @if (context.ACUMULADA == true) - { - - } - else { } - - - @if (context.PROTEGIDA == true) - { - - } - else { } - - - @context.PLURIEMPLEO - - - @context.NUMEROPLURIEMPLEO - - - @context.TOTALSEGURIDADSOCIAL - - - @context.PRORRATAPAGAEXTRA - - - @context.PRORRATAPRODUCTIVIDAD - - - @context.TOTALDEDUCCIONES - - - @context.TOTALHABERES - - - @context.OTRASDEDUCCIONES - - - @context.TOTALSEGURIDADSOCIALPAGOENESPECIE - - - @context.TOTALEPIGRAFE126 - - - @context.TOTALMATERNIDADPATERNIDAD - - - @context.TOTALPERMISOSINRETRIBUIR - - - @context.SINDICATO1 - - - @context.REDUCCIONJORNADA - - - @context.TRABAJOTIEMPOPARCIAL - - - @context.MUTUA - - - @context.DIASENFERMEDADAL60 - - - @context.BASEENFERMEDADAL60 - - - @context.DIASENFERMEDADAL75 - - - @context.DIASACCIDENTES - - - @context.BASEACCIDENTES - - - @context.DIASBASEPAGODIRECTO - - - @context.BASEPAGODIRECTO - - - @if (context.VISIBLE == true) - { - - } - else { } - - - @if (context.MODIFICABLE == true) - { - - } - else { } - - - @context.MESNOMINA - - - - +
+ @foreach (var nomina in itmList.Where(x => x.IDNOMINANavigation?.AÑO == anno).OrderByDescending(x => x.MESNOMINA)) + { +
+ + + Nómina@nomina.IDNOMINANavigation?.DESCRIPCION + Total devengado@nomina.TOTALDEVENGADO + Total líquido@nomina.TOTALLIQUIDO + Grupo@nomina.IDGRUPOFUNCIONARIONavigation?.DESCRIPCION + Nivel@nomina.NIVEL + +
+
+ }
@@ -187,57 +32,19 @@
@code { - [Parameter] - public PERSONAS Persona{ get; set; } = new PERSONAS(); - public int? idNom { get; set; } - [Parameter] - public EventCallback OnPersonaActualizada { get; set; } - private List annos = new List(); - private string titulo { get; set; } - private List itmList = new List(); - protected override async Task OnInitializedAsync() + [Parameter] public PERSONAS Persona { get; set; } = new(); + [Parameter] public EventCallback OnPersonaActualizada { get; set; } + private readonly List annos = new(); + private readonly List itmList = new(); + + protected override void OnInitialized() { - try - { - var listnom = Persona.NOMINATRABAJADORCABECERA; - foreach (NOMINATRABAJADORCABECERA i in listnom) - { - itmList.Add(i); - } - for (var i = 0; i < itmList.Count; i++) - { - if (annos.Contains(itmList[i].IDNOMINANavigation.AÑO) == false) - { - annos.Add(itmList[i].IDNOMINANavigation.AÑO); - } - } - annos = annos.OrderDescending().ToList(); - // for (var i = 0; i < Persona.NOMINATRABAJADORCABECERA.Count; i++) - // { - // NOMINATRABAJADORCABECERA nom = new NOMINATRABAJADORCABECERA(); - // // nom = Persona.NOMINATRABAJADORCABECERA; - - - // // itmList.Add(Persona.NOMINATRABAJADORCABECERA[i]) - // } - - } - catch (Exception e) - { - Console.WriteLine($"Error al obtener los datos: {e.Message}"); - } + itmList.AddRange(Persona.NOMINATRABAJADORCABECERA); + annos.AddRange(itmList.Where(x => x.IDNOMINANavigation != null).Select(x => x.IDNOMINANavigation!.AÑO).Distinct().OrderDescending()); } + private string HashRed(NOMINATRABAJADORCABECERA nom) { - string link = "/NomPers?cl=" + tsUtilidades.crypt.FEncS( - Persona.NIF + "-" + nom.IDNOMINA.ToString(), - "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890.:/-*", - "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890.:/-*", - 875421649); - // + "&cn=" + tsUtilidades.crypt.FEncS(nom.IDNOMINA.ToString(), - // "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890.:/-*", - // "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890.:/-*", - // 875421649); - return link; + return "/NomPers?cl=" + tsUtilidades.crypt.FEncS(Persona.NIF + "-" + nom.IDNOMINA, "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890.:/-*", "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890.:/-*", 875421649); + } } -} \ No newline at end of file diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/ListTrabajadores.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/ListTrabajadores.razor index 550428c..52303b2 100644 --- a/Antifraude.Net/GestionPersonalWeb/Components/Pages/ListTrabajadores.razor +++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/ListTrabajadores.razor @@ -21,7 +21,7 @@
Personas
- @if (personas == null) + @if (cargando) {
@@ -258,6 +258,7 @@ @code { private List listPersonas = new List(); private List personas = new List(); + private bool cargando = true; private string textBtnTodos { get; set; } private string _filter = ""; public string Filter @@ -443,6 +444,7 @@ .ToList(); listPersonas = personas.Where(x => x.FECHABAJA == null).ToList(); + cargando = false; } private async Task btnExportarPDF() { @@ -521,4 +523,4 @@ link.click(); document.body.removeChild(link); }; - \ No newline at end of file + diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/NominaPersona.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/NominaPersona.razor index 1065b3e..8f9df39 100644 --- a/Antifraude.Net/GestionPersonalWeb/Components/Pages/NominaPersona.razor +++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/NominaPersona.razor @@ -19,6 +19,13 @@ @inject ProtectedSessionStorage ProtectedSessionStore @inject UserState UserState +@if (cargando) +{ +
+
+
+} +
@@ -630,6 +637,7 @@ private Modal popupConfirmacion = default!; List mensajes = new List(); private EditContext editContext = default!; + private bool cargando = true; List listaIdentificadores = new List(); private void EstablecerEditContext(NOMINATRABAJADORCABECERA nuevo) { @@ -703,6 +711,10 @@ errorMessage = ex.Message; Console.WriteLine($"Error durante la inicialización: {ex.Message}"); } + finally + { + cargando = false; + } } private string HashRed(string id) { diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/PeriodoSiltraPers.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/PeriodoSiltraPers.razor index 56afff0..bf5bb9c 100644 --- a/Antifraude.Net/GestionPersonalWeb/Components/Pages/PeriodoSiltraPers.razor +++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/PeriodoSiltraPers.razor @@ -18,20 +18,18 @@ @inject UserState UserState
+ @if (cargando) + { +
+
+
+ }
Periodo Siltra
- @if (PeriodoSiltra == null) - { -
-
-
- } - else - {
@@ -185,11 +183,11 @@
} - }
@code { private PERIODOSSILTRA PeriodoSiltra = new PERIODOSSILTRA(); + private bool cargando = true; public EventCallback OnValidationStateChanged { get; set; } private List annos = new List(); private string cl { get; set; } @@ -260,6 +258,7 @@ lCuentaCoti = JsonConvert.DeserializeObject>(rcCuentaCoti) ?? throw new Exception("Error al deserializar los datos."); lEstados = await Utilidades.ObtenerObjeto>(client, "/api/ENUMERACIONES/EnumeracionesGrupo/MUT"); lTipPeriodo = await Utilidades.ObtenerObjeto>(client, "/api/ENUMERACIONES/EnumeracionesGrupo/TIPPERTRAM"); + cargando = false; } private string _filter = ""; public string Filter @@ -359,4 +358,4 @@ OnValidationStateChanged.InvokeAsync(fieldName); } -} \ No newline at end of file +} diff --git a/Antifraude.Net/GestionPersonalWeb/wwwroot/Content/Site.css b/Antifraude.Net/GestionPersonalWeb/wwwroot/Content/Site.css index c2d9b3d..83238bc 100644 --- a/Antifraude.Net/GestionPersonalWeb/wwwroot/Content/Site.css +++ b/Antifraude.Net/GestionPersonalWeb/wwwroot/Content/Site.css @@ -217,7 +217,7 @@ body { text-align:end; } .Cabecera { - margin-bottom: 3rem; + margin-bottom: 1.5rem; } .btnGris { background-color: #eeeeee; @@ -371,6 +371,18 @@ body { font-weight:bold; color:var(--AzulMuyOscuro) } +.navInfoPers .nav-link { + color:var(--AzulOAAF); + padding: 5px +} + .navInfoPers .nav-link:hover { + background-color: var(--AzulOscuro); + color: white !important; + } +.navInfoPers .nav-link.active { + background-color: var(--AzulOscuro); + color: white !important +} .navBar { position:fixed; left:0; @@ -496,7 +508,7 @@ body { color: white !important; text-decoration: none !important; padding: 20px; - padding-inline: 20px; + padding-inline: 10px; overflow-inline: visible; border-inline: solid 1px white; width: auto; @@ -513,18 +525,109 @@ body { .tablaRegPers th a:hover { opacity: 0.6; } +.tablaRegPers td.text-start { + text-align: inherit !important; +} .tablaRegPers td { - padding: 15px !important; - padding-inline: 30px !important; + padding: 5px !important; + padding-inline: 10px !important; border: solid 1px black; - font-size: 14px !important; + font-size: 12px !important; + vertical-align: middle !important; } .tablaRegPers td a { - font-size:14px; + font-size:12px; +} + + +.tablaRegPers th { + text-align: center; + background-color: var(--AzulOscuro); + color: white !important; + text-decoration: none !important; + padding: 20px; + padding-inline: 10px; + overflow-inline: visible; + border-inline: solid 1px white; + width: auto; + white-space: nowrap; + font-size: 14px; +} + .tablaRegPers th .btn-link { + color:white; + } + .tablaRegPers th a { + color: white !important; + text-decoration: none !important; + } +.tablaRegPers th a:hover { + opacity: 0.6; +} +.tablaRegPers td.text-start { + text-align: inherit !important; +} +.tablaRegPers td { + padding: 5px !important; + padding-inline: 10px !important; + border: solid 1px black; + font-size: 12px !important; + vertical-align: middle !important; +} +.tablaRegPers td a { + font-size:12px; +} +/********/ +.tablaDetalle th { + text-align: center; + background-color: var(--AzulOAAF); + color: white !important; + text-decoration: none !important; + padding: 20px; + padding-inline: 10px; + overflow-inline: visible; + border-inline: solid 1px white; + width: auto; + white-space: nowrap; + font-size: 14px; +} + + .tablaDetalle th .btn-link { + color: white; + } + + .tablaDetalle th a { + color: white !important; + text-decoration: none !important; + } + + .tablaDetalle th a:hover { + opacity: 0.6; + } + +.tablaDetalle td.text-start { + text-align: inherit !important; +} + +.tablaDetalle td { + padding: 5px !important; + padding-inline: 10px !important; + border: solid 1px black; + font-size: 12px !important; + vertical-align: middle !important; +} + + .tablaDetalle td a { + font-size: 12px; + } +/********/ + +.accordion-button:not(.collapsed){ + background-color:var(--AzulOAAF); + color:white; } .linkNavActivo { - background-color: var(--AzulMuyOscuro) !important; - } + background-color: var(--AzulMuyOscuro) !important; +} .table .card { border: none !important; } @@ -675,8 +778,11 @@ body { color: white; font-size: 26px; } - .page-link{ - font-size:15px !important; + .tablaDetalle tr th { + background-color:var(--AzulOAAF) !important; + } + .page-link { + font-size: 15px !important; } .bb-grid-pagination-text { display:none !important; @@ -761,4 +867,63 @@ body { } } - \ No newline at end of file + +.tablaRegPers td { + vertical-align: top; +} + +.nomina-detalle { + display: block; +} + +.nomina-acordeon { + border-bottom: 1px solid #b8b8b8; +} + +.nomina-resumen { + display: grid; + grid-template-columns: 32px minmax(260px, 2fr) repeat(4, minmax(130px, 1fr)); + align-items: center; + gap: 12px; + padding: 10px 8px; + cursor: pointer; + list-style: none; +} + +.nomina-resumen::-webkit-details-marker { + display: none; +} + +.nomina-expandir { + color: #0d6efd; + font-size: 22px; + text-align: center; + /*transition: transform .15s ease-in-out;*/ +} + +.nomina-acordeon[open] .nomina-expandir { + transform: rotate(180deg); +} +.concepto-deduccion{ + color:red +} +.nomina-dato { + display: flex; + flex-direction: column; + min-width: 0; + +} + .nomina-dato a { + text-align: start !important; + } +.nomina-etiqueta { + color: #666; + font-size: 11px; + font-weight: 600; + text-transform: uppercase; + margin-bottom: 2px; +} + +.nomina-detalle { + /*margin-left: 32px;*/ +} diff --git a/Antifraude.Net/SwaggerAntifraude/Controllers/PERSONASController.cs b/Antifraude.Net/SwaggerAntifraude/Controllers/PERSONASController.cs index f62a0f6..823cd47 100644 --- a/Antifraude.Net/SwaggerAntifraude/Controllers/PERSONASController.cs +++ b/Antifraude.Net/SwaggerAntifraude/Controllers/PERSONASController.cs @@ -114,6 +114,10 @@ namespace SwaggerAntifraude.Controllers .Include(n => n.NOMINATRABAJADORCABECERA) .ThenInclude(pr => pr.PERIODOSSILTRA) .ThenInclude(y => y.IDESTADONavigation) + .Include(n => n.NOMINATRABAJADORCABECERA) + .ThenInclude(pr => pr.PERIODOSSILTRA) + .ThenInclude(y => y.TRAMOSSILTRA) + .ThenInclude(y => y.IDTIPOTRAMONavigation) .Include(n => n.NOMINATRABAJADORCABECERA) .ThenInclude(y => y.IDSINDICATO1Navigation) .Include(n => n.NOMINATRABAJADORCABECERA)