diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/DiferenciaGrid.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/DiferenciaGrid.razor
index bcfc10a..8c97095 100644
--- a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/DiferenciaGrid.razor
+++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/DiferenciaGrid.razor
@@ -15,6 +15,7 @@
@inject UserState UserState
+ @*
abrirPopupModificacion(new MATERNIDADES(), true))" class="mb-2 btnOAAFBlack" /> *@
+
+@*
+
+
+
+
+
+ @if (ItemEnEdicion.IDMATERNIDADES != 0)
+ {
+
+ }
+ else
+ {
+
+ }
+
+
+ *@
+
+
+
+
@code {
[Parameter]
public PERSONAS Persona { get; set; } = new PERSONAS();
@@ -57,8 +108,17 @@
public EventCallback OnPersonaActualizada { get; set; }
// private List
meses = new List();
private List itmList = new List();
+
+
protected override async Task OnInitializedAsync()
{
+ cliente = Utilidades.ObtenerCliente(UserState.Token, HttpClientFactory);
+ await CargarListas();
+ }
+ private async Task CargarListas()
+ {
+
+ itmList.Clear();
try
{
var listnom = Persona.DIFERENCIAPAGODELEGADO;
@@ -69,4 +129,5 @@
Console.WriteLine($"Error al obtener los datos: {e.Message}");
}
}
+
}
diff --git a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/MaternidadesGrid.razor b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/MaternidadesGrid.razor
index e15adff..1a49a65 100644
--- a/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/MaternidadesGrid.razor
+++ b/Antifraude.Net/GestionPersonalWeb/Components/Pages/InfoPersComponents/MaternidadesGrid.razor
@@ -39,7 +39,7 @@
@context.FECHAINICIO?.ToString("dd/MM/yyyy")
- @context.FECHAINICIO?.ToString("dd/MM/yyyy")
+ @context.FECHAFIN?.ToString("dd/MM/yyyy")
@context.BASECOTIZACIONSEGURIDADSOCIAL
@@ -130,23 +130,16 @@
private List itmList = new List();
protected override async Task OnInitializedAsync()
{
- try
- {
- var listnom = Persona.MATERNIDADES;
- foreach (MATERNIDADES i in listnom){itmList.Add(i);}
- }
- catch (Exception e)
- {
- Console.WriteLine($"Error al obtener los datos: {e.Message}");
- }
+ cliente = Utilidades.ObtenerCliente(UserState.Token, HttpClientFactory);
+ await CargarListas();
}
private async Task CargarListas()
{
+
itmList.Clear();
try
{
foreach (MATERNIDADES enf in Persona.MATERNIDADES)
-
{
itmList.Add(enf);
}
diff --git a/Antifraude.Net/RegistroPersonalAN/Components/Pages/InfoVidaAdministrativa.razor b/Antifraude.Net/RegistroPersonalAN/Components/Pages/InfoVidaAdministrativa.razor
index faafc85..6b3567f 100644
--- a/Antifraude.Net/RegistroPersonalAN/Components/Pages/InfoVidaAdministrativa.razor
+++ b/Antifraude.Net/RegistroPersonalAN/Components/Pages/InfoVidaAdministrativa.razor
@@ -49,6 +49,18 @@
}
+@if (mostrarMensajeEliminarLinea == true)
+{
+
+
+
+}
@if (mostrarAnadirLineaVida == true)
{
@@ -385,9 +397,9 @@
abrirEditarLineaVida(context))" style="cursor: pointer;">
- @* abrirPopupConfirmarBorrado(@context))" style="cursor: pointer;">
+ mostrarAvisoEliminarLinea(context))" style="cursor: pointer;">
- *@
+
@@ -408,6 +420,7 @@
private bool nueva = false;
private bool mostrarMensajeCuerpo = false;
private bool mostrarMensajeEliminar = false;
+ private bool mostrarMensajeEliminarLinea = false;
private bool mostrarAnadirLineaVida = false;
private bool mostrarEditarLineaVida = false;
private string usuarioVida { get; set; } = "";
@@ -862,9 +875,11 @@
protected void OcultarMenCuer() { mostrarMensajeCuerpo = false; }
protected void OcultarMenElim() { mostrarMensajeEliminar = false; }
protected void mostrarAvisoEliminar() { mostrarMensajeEliminar = true; }
+ protected void mostrarAvisoEliminarLinea(LINEASVIDAADMINISTRATIVA linea){lineaEditada = linea;mostrarMensajeEliminarLinea = true; }
protected void abrirAnadirLineaVida() { mostrarAnadirLineaVida = true; }
protected void abrirEditarLineaVida(LINEASVIDAADMINISTRATIVA linea) { mostrarEditarLineaVida = true; lineaEditada = linea; DESCRIPCIONLINEAVIDAED = linea.DESCRIPCION; IDTIPODOCUED = linea.IDTIPO; }
protected void cerrarAnadirLineaVida() { mostrarAnadirLineaVida = false; }
+ protected void cerrarEliminarLineaVida() { lineaEditada = null; mostrarAnadirLineaVida = false; }
protected void cerrarEditarLineaVida() { mostrarEditarLineaVida = false; }
protected void volver() { Navigation.NavigateTo(LINKPERSONA, forceLoad: true); }
protected string urlFich(int id)
@@ -1346,6 +1361,28 @@
if (dot.IsSuccessStatusCode) { Navigation.NavigateTo(LINKPERSONA, forceLoad: true); }
}
+ protected async void BorrarLineaVida()
+ {
+ var idlinea = lineaEditada.IDLINEAVIDAADMIN;
+ var dot = await client.DeleteAsync("/api/LINEASVIDAADMINISTRATIVA/" + idlinea);
+ var dotContent = await dot.Content.ReadAsStringAsync();
+ if (dot.IsSuccessStatusCode)
+ {
+
+ var fichTrans = new AlmacenaFicheroAtransmitir();
+ fichTrans.IdRegistro = idlinea;
+ fichTrans.Tabla = "LINEAVIDAADMINISTRATIVA";
+ var jsonConsulta = JsonConvert.SerializeObject(fichTrans);
+ var content = new StringContent(jsonConsulta, Encoding.UTF8, "application/json");
+ var ficherotrans = await client.PostAsync("/api/Almacenamiento/eliminar-fichero", content);
+ var fichContent = await ficherotrans.Content.ReadAsStringAsync();
+
+ }
+ cargarGridLineas();
+ cerrarEliminarLineaVida();
+ mostrar = false;
+ StateHasChanged();
+ }
private void abrirPopupGestionLinea(LINEASVIDAADMINISTRATIVA objeto)
{
DESCRIPCIONLINEAVIDAED = objeto.DESCRIPCION!;
diff --git a/Antifraude.Net/SwaggerAntifraude/Controllers/AlmacenamientoController.cs b/Antifraude.Net/SwaggerAntifraude/Controllers/AlmacenamientoController.cs
index c2e3b64..5044aac 100644
--- a/Antifraude.Net/SwaggerAntifraude/Controllers/AlmacenamientoController.cs
+++ b/Antifraude.Net/SwaggerAntifraude/Controllers/AlmacenamientoController.cs
@@ -46,6 +46,23 @@ namespace SwaggerAntifraude.Controllers
return Ok(resultado);
}
+ return StatusCode(500, resultado);
+ }
+ [Authorize(Policy = "SupervisorPolicy")]
+ [HttpPost("eliminar-fichero")]
+ public IActionResult EliminarFichero(PeticionFichero solicitud)
+ {
+ if (string.IsNullOrEmpty(solicitud.Tabla) || solicitud.IdRegistro <= 0)
+ return BadRequest("Solicitud inválida. Asegúrese de enviar los parámetros requeridos.");
+
+ var resultado = _servicio.EliminarFicheroAtransmitir(solicitud.IdRegistro, solicitud.Tabla, solicitud.Nif);
+
+ if (resultado.Resultado == 0)
+ {
+ // Devolver el archivo como un PDF descargable
+ return Ok(resultado);
+ }
+
return StatusCode(500, resultado);
}
}
diff --git a/Antifraude.Net/SwaggerAntifraude/Controllers/MATERNIDADESController.cs b/Antifraude.Net/SwaggerAntifraude/Controllers/MATERNIDADESController.cs
new file mode 100644
index 0000000..90a1cc4
--- /dev/null
+++ b/Antifraude.Net/SwaggerAntifraude/Controllers/MATERNIDADESController.cs
@@ -0,0 +1,23 @@
+using bdAntifraude.db;
+using bdAntifraude.dbcontext;
+using Microsoft.AspNetCore.Mvc;
+using System.Diagnostics;
+using Microsoft.AspNetCore.Authorization;
+using Serialize.Linq.Serializers;
+using System.Linq.Expressions;
+using Microsoft.EntityFrameworkCore;
+
+namespace SwaggerAntifraude.Controllers
+{
+ [ApiController]
+ [Route("api/[controller]")]
+ public class MATERNIDADESController : GenericoController
+ {
+ public MATERNIDADESController()
+ : base()
+ {
+ Debug.WriteLine("aqui");
+ }
+
+ }
+}
diff --git a/Antifraude.Net/SwaggerAntifraude/Servicios/ServicioAlmacenamiento.cs b/Antifraude.Net/SwaggerAntifraude/Servicios/ServicioAlmacenamiento.cs
index 857df11..fb73471 100644
--- a/Antifraude.Net/SwaggerAntifraude/Servicios/ServicioAlmacenamiento.cs
+++ b/Antifraude.Net/SwaggerAntifraude/Servicios/ServicioAlmacenamiento.cs
@@ -91,9 +91,6 @@ namespace SwaggerAntifraude.Servicios
return resultado;
}
-
-
-
public ResultadoObtenFicheroAtransmitir DevolverObtenFicheroAtransmitir(int idRegistro, string tabla, string nif)
{
var resultado = new ResultadoObtenFicheroAtransmitir();
@@ -181,11 +178,99 @@ namespace SwaggerAntifraude.Servicios
resultado.Mensaje += $" {ex.InnerException.Message}";
}
}
+
+ return resultado;
+ }
+ public ResultadoObtenFicheroAtransmitir EliminarFicheroAtransmitir(int idRegistro, string tabla, string nif)
+ {
+ var resultado = new ResultadoObtenFicheroAtransmitir();
+
+ try
+ {
+ // Obtener el nombre de la base de datos utilizando el contexto
+ string baseDeDatos;
+ using (var context = tsGestionAntifraude.NuevoContexto(SoloLectura: true))
+ {
+ baseDeDatos = context.Database.GetDbConnection().Database;
+ }
+
+ Conf = new ConfigurationBuilder()
+ .AddJsonFile("appsettings.json")
+ .Build();
+ baseDeDatos = Conf.GetSection("BaseDatos").Value; ;
+
+ //if (string.IsNullOrEmpty(baseDeDatos))
+ //{
+ // baseDeDatos = "preproduccion";
+ //}
+
+ // Generar la ruta base
+ string ruta = $"{baseDeDatos.ToLower()}/registrodepersonal";
+
+ switch (tabla.ToUpper())
+ {
+ case "LINEAVIDAADMINISTRATIVA":
+ ruta += "/lineavidaadministrativa/";
+ break;
+ case "FORMACION":
+ ruta += "/formacion/";
+ break;
+ case "TITULACION":
+ ruta += "/titulacion/";
+ break;
+ case "DOCENCIA":
+ ruta += "/docencia/";
+ break;
+ case "INCIDENCIA":
+ ruta = $"{baseDeDatos.ToLower()}/control_horario/";
+ break;
+ case "CSV":
+ using (var context = tsGestionAntifraude.NuevoContexto(SoloLectura: true))
+ {
+ //ruta += context.VALIDACIONDOCUMENTOS.First(x => x.CSV == nif).RUTAFICHERO;
+ }
+ break;
+ default:
+ resultado.Resultado = 1;
+ resultado.Mensaje = "Tabla no contemplada entre las posibles para tener ficheros";
+ return resultado;
+ }
+
+ if (tabla.ToUpper() != "CSV")
+ {
+ ruta += $"{idRegistro}.pdf";
+ }
+
+ resultado.Mensaje = $"Ruta: {ruta}";
+
+ // Descargar el archivo desde el servidor SFTP
+ using (var context = tsGestionAntifraude.NuevoContexto(SoloLectura: true))
+ using (var clienteSftp = ConectarServidorSftp(context))
+ {
+ clienteSftp.Connect();
+
+ //using var memoryStream = new MemoryStream();
+ clienteSftp.DeleteFile(ruta);
+ clienteSftp.Disconnect();
+
+ //resultado.Pdf = memoryStream.ToArray();
+ }
+
+ resultado.Resultado = 0;
+ }
+ catch (Exception ex)
+ {
+ resultado.Resultado = 1;
+ resultado.Mensaje = $"ERROR de generación: {ex.Message}";
+
+ if (ex.InnerException != null)
+ {
+ resultado.Mensaje += $" {ex.InnerException.Message}";
+ }
+ }
return resultado;
}
-
-
private SftpClient ConectarServidorSftp(tsGestionAntifraude context)
{
var configuraciones = context.ENUMERACIONES