From eefb8ddb36060de72a506336ac5721336bf1c73e Mon Sep 17 00:00:00 2001 From: Felix Morales Date: Tue, 20 Feb 2024 12:52:29 -0600 Subject: [PATCH 1/3] primer avance para crear la solicitud para dar de baja una referencia --- .../ICorresponsaliasSolicitudesRepository.cs | 9 ++++ .../ICorresponsaliasTraficosRepository.cs | 2 - .../Corresponsalias/SolicitudesController.cs | 37 ++++++++++++++ .../Corresponsalias/TraficosController.cs | 20 -------- Program.cs | 1 + .../CorresponsaliasSolicitudesRepository.cs | 49 +++++++++++++++++++ .../CorresponsaliasTraficosRepository.cs | 36 -------------- 7 files changed, 96 insertions(+), 58 deletions(-) create mode 100644 Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs create mode 100644 Controllers/Corresponsalias/SolicitudesController.cs create mode 100644 Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs diff --git a/Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs b/Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs new file mode 100644 index 0000000..61946a3 --- /dev/null +++ b/Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs @@ -0,0 +1,9 @@ +using CORRESPONSALBackend.DTO.Corresponsales; +using CORRESPONSALBackend.Models.Corresponsales; + +namespace CORRESPONSALBackend.Contracts.Corresponsalias{ + public interface ICorresponsaliasSolicitudesRepository{ + public Task AppendSolicitudReapertura(ITraficoSolicitudReapertura solicitud); + public Task GetSolicitudReapertura(int idTrafico); + } +} \ No newline at end of file diff --git a/Contracts/Corresponsalias/ICorresponsaliasTraficosRepository.cs b/Contracts/Corresponsalias/ICorresponsaliasTraficosRepository.cs index 0bec030..f9633d7 100644 --- a/Contracts/Corresponsalias/ICorresponsaliasTraficosRepository.cs +++ b/Contracts/Corresponsalias/ICorresponsaliasTraficosRepository.cs @@ -21,7 +21,5 @@ namespace CORRESPONSALBackend.Contracts.Corresponsalias public Task> RectificacionHistoricoGet(int IdTrafico); public Task ValidaTraficoDuplicado(int aduana, int patente, int pedimento, int idTrafico); - public Task AppendSolicitudReapertura(ITraficoSolicitudReapertura solicitud); - public Task GetSolicitudReapertura(int idTrafico); } } \ No newline at end of file diff --git a/Controllers/Corresponsalias/SolicitudesController.cs b/Controllers/Corresponsalias/SolicitudesController.cs new file mode 100644 index 0000000..de4d78d --- /dev/null +++ b/Controllers/Corresponsalias/SolicitudesController.cs @@ -0,0 +1,37 @@ +using CORRESPONSALBackend.Contracts.Corresponsalias; +using CORRESPONSALBackend.Models.Corresponsales; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; + +namespace CORRESPONSALBackend.Controllers.Corresponsalias{ + [Authorize] + [Route("api/Corresponsalias/[controller]")] + [ApiController] + public class SolicitudesController : ControllerBase + { + private readonly ICorresponsaliasSolicitudesRepository _Repo; + public SolicitudesController(ICorresponsaliasSolicitudesRepository Repo){ + _Repo = Repo; + } + + [HttpPost("Reapertura/Append")] + public async Task AppendSolicitudReapertura([FromBody] ITraficoSolicitudReapertura solicitud){ + try{ + var response = await _Repo.AppendSolicitudReapertura(solicitud); + return Ok(response); + }catch(Exception ex){ + return BadRequest(ex.Message); + } + } + + [HttpGet("Reapertura/Get")] + public async Task GetSolicitudReapertura([FromQuery] int idTrafico){ + try{ + var solicitud = await _Repo.GetSolicitudReapertura(idTrafico); + return Ok(solicitud); + }catch(Exception ex){ + return BadRequest(ex.Message); + } + } + } +} \ No newline at end of file diff --git a/Controllers/Corresponsalias/TraficosController.cs b/Controllers/Corresponsalias/TraficosController.cs index f6ef9f8..0851ba7 100644 --- a/Controllers/Corresponsalias/TraficosController.cs +++ b/Controllers/Corresponsalias/TraficosController.cs @@ -228,25 +228,5 @@ namespace CORRESPONSALBackend.Controllers.Corresponsalias return BadRequest(ex.Message); } } - - [HttpPost("Solicitud/Append")] - public async Task AppendSolicitudReapertura([FromBody] ITraficoSolicitudReapertura solicitud){ - try{ - var response = await _Repo.AppendSolicitudReapertura(solicitud); - return Ok(response); - }catch(Exception ex){ - return BadRequest(ex.Message); - } - } - - [HttpGet("Solicitud")] - public async Task GetSolicitudReapertura([FromQuery] int idTrafico){ - try{ - var solicitud = await _Repo.GetSolicitudReapertura(idTrafico); - return Ok(solicitud); - }catch(Exception ex){ - return BadRequest(ex.Message); - } - } } } diff --git a/Program.cs b/Program.cs index 2cb0a84..60659ac 100644 --- a/Program.cs +++ b/Program.cs @@ -84,6 +84,7 @@ builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddScoped(); +builder.Services.AddScoped(); //Clientes builder.Services.AddScoped(); diff --git a/Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs b/Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs new file mode 100644 index 0000000..2229991 --- /dev/null +++ b/Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs @@ -0,0 +1,49 @@ +using System.Data; +using CORRESPONSALBackend.Context; +using CORRESPONSALBackend.Contracts.Corresponsalias; +using CORRESPONSALBackend.DTO.Corresponsales; +using CORRESPONSALBackend.Models.Corresponsales; +using Dapper; + +namespace CORRESPONSALBackend.Repository.Corresponsalias{ + public class CorresponsaliasSolicitudesRepository : ICorresponsaliasSolicitudesRepository + { + private readonly DapperContext _context; + public CorresponsaliasSolicitudesRepository(DapperContext context) { _context = context; } + public async Task AppendSolicitudReapertura(ITraficoSolicitudReapertura solicitud) + { + var query = "[Corresponsales.Trafico.SolicitudReapertura.Append]"; + using var connection = _context.CreateConnection(); + var response = await connection.QueryAsync(query, new { + @id =solicitud.Id, + @idTrafico = solicitud.IdTrafico, + @idUsuarioSolicita = solicitud.IdUsuarioSolicita, + @fechaSolicita = solicitud.FechaSolicita, + @motivoSolicita = solicitud.MotivoSolicita, + @idUsuarioAutoriza = solicitud.IdUsuarioAutoriza, + @fechaAutoriza = solicitud.FechaAutoriza, + @motivoRechazo = solicitud.MotivoRechazo, + @estado = solicitud.Estado + }, commandType: CommandType.StoredProcedure); + + return response.First(); + } + + public async Task GetSolicitudReapertura(int idTrafico) + { + var query = "[Corresponsales.Trafico.SolicitudReapertura.Get]"; + using var connection = _context.CreateConnection(); + var response = await connection.QueryAsync(query, new { + @idTrafico = idTrafico + }, commandType: CommandType.StoredProcedure); + return response.FirstOrDefault(new DTOTraficoSolicitudReapertura{ + Id=0, + IdTrafico=idTrafico, + UsuarioSolicita= "", + FechaSolicita=null, + MotivoSolicita="", + Estado=1 + }); + } + } +} \ No newline at end of file diff --git a/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs b/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs index e92d62f..4b7c530 100644 --- a/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs +++ b/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs @@ -212,41 +212,5 @@ namespace CORRESPONSALBackend.Repository.Corresponsalias return ""; } } - - public async Task AppendSolicitudReapertura(ITraficoSolicitudReapertura solicitud) - { - var query = "[Corresponsales.Trafico.SolicitudReapertura.Append]"; - using var connection = _context.CreateConnection(); - var response = await connection.QueryAsync(query, new { - @id =solicitud.Id, - @idTrafico = solicitud.IdTrafico, - @idUsuarioSolicita = solicitud.IdUsuarioSolicita, - @fechaSolicita = solicitud.FechaSolicita, - @motivoSolicita = solicitud.MotivoSolicita, - @idUsuarioAutoriza = solicitud.IdUsuarioAutoriza, - @fechaAutoriza = solicitud.FechaAutoriza, - @motivoRechazo = solicitud.MotivoRechazo, - @estado = solicitud.Estado - }, commandType: CommandType.StoredProcedure); - - return response.First(); - } - - public async Task GetSolicitudReapertura(int idTrafico) - { - var query = "[Corresponsales.Trafico.SolicitudReapertura.Get]"; - using var connection = _context.CreateConnection(); - var response = await connection.QueryAsync(query, new { - @idTrafico = idTrafico - }, commandType: CommandType.StoredProcedure); - return response.FirstOrDefault(new DTOTraficoSolicitudReapertura{ - Id=0, - IdTrafico=idTrafico, - UsuarioSolicita= "", - FechaSolicita=null, - MotivoSolicita="", - Estado=1 - }); - } } } \ No newline at end of file From 0b5de936a20d1084d176631c508132ebfc45e23d Mon Sep 17 00:00:00 2001 From: Felix Morales Date: Wed, 21 Feb 2024 12:34:53 -0600 Subject: [PATCH 2/3] Renombrar modelo, dto y archivos de solicitudes --- .../ICorresponsaliasSolicitudesRepository.cs | 6 ++- .../Corresponsalias/SolicitudesController.cs | 2 +- ...udReapertura.cs => DTOTraficoSolicitud.cs} | 2 +- ...itudReapertura.cs => ITraficoSolicitud.cs} | 2 +- .../CorresponsaliasSolicitudesRepository.cs | 46 +++++++++++++++++-- 5 files changed, 48 insertions(+), 10 deletions(-) rename DTO/Corresponsales/{DTOTraficoSolicitudReapertura.cs => DTOTraficoSolicitud.cs} (88%) rename Models/Corresponsales/{ITraficoSolicitudReapertura.cs => ITraficoSolicitud.cs} (91%) diff --git a/Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs b/Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs index 61946a3..df30bc0 100644 --- a/Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs +++ b/Contracts/Corresponsalias/ICorresponsaliasSolicitudesRepository.cs @@ -3,7 +3,9 @@ using CORRESPONSALBackend.Models.Corresponsales; namespace CORRESPONSALBackend.Contracts.Corresponsalias{ public interface ICorresponsaliasSolicitudesRepository{ - public Task AppendSolicitudReapertura(ITraficoSolicitudReapertura solicitud); - public Task GetSolicitudReapertura(int idTrafico); + public Task AppendSolicitudReapertura(ITraficoSolicitud solicitud); + public Task GetSolicitudReapertura(int idTrafico); + public Task AppendSolicitudEliminarReferencia(ITraficoSolicitud solicitud); + public Task GetSolicitudEliminarReferencia(int idTrafico); } } \ No newline at end of file diff --git a/Controllers/Corresponsalias/SolicitudesController.cs b/Controllers/Corresponsalias/SolicitudesController.cs index de4d78d..e8d6e42 100644 --- a/Controllers/Corresponsalias/SolicitudesController.cs +++ b/Controllers/Corresponsalias/SolicitudesController.cs @@ -15,7 +15,7 @@ namespace CORRESPONSALBackend.Controllers.Corresponsalias{ } [HttpPost("Reapertura/Append")] - public async Task AppendSolicitudReapertura([FromBody] ITraficoSolicitudReapertura solicitud){ + public async Task AppendSolicitudReapertura([FromBody] ITraficoSolicitud solicitud){ try{ var response = await _Repo.AppendSolicitudReapertura(solicitud); return Ok(response); diff --git a/DTO/Corresponsales/DTOTraficoSolicitudReapertura.cs b/DTO/Corresponsales/DTOTraficoSolicitud.cs similarity index 88% rename from DTO/Corresponsales/DTOTraficoSolicitudReapertura.cs rename to DTO/Corresponsales/DTOTraficoSolicitud.cs index 885fc92..2148ecf 100644 --- a/DTO/Corresponsales/DTOTraficoSolicitudReapertura.cs +++ b/DTO/Corresponsales/DTOTraficoSolicitud.cs @@ -1,5 +1,5 @@ namespace CORRESPONSALBackend.DTO.Corresponsales{ - public class DTOTraficoSolicitudReapertura{ + public class DTOTraficoSolicitud{ public int Id { get; set; } public int IdTrafico { get; set; } public int IdUsuarioSolicita { get; set; } diff --git a/Models/Corresponsales/ITraficoSolicitudReapertura.cs b/Models/Corresponsales/ITraficoSolicitud.cs similarity index 91% rename from Models/Corresponsales/ITraficoSolicitudReapertura.cs rename to Models/Corresponsales/ITraficoSolicitud.cs index 1ec3b68..d76cf7f 100644 --- a/Models/Corresponsales/ITraficoSolicitudReapertura.cs +++ b/Models/Corresponsales/ITraficoSolicitud.cs @@ -1,5 +1,5 @@ namespace CORRESPONSALBackend.Models.Corresponsales{ - public class ITraficoSolicitudReapertura{ + public class ITraficoSolicitud{ public int Id { get; set; } public int IdTrafico { get; set; } public int IdUsuarioSolicita { get; set; } diff --git a/Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs b/Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs index 2229991..b0cb49f 100644 --- a/Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs +++ b/Repository/Corresponsalias/CorresponsaliasSolicitudesRepository.cs @@ -10,11 +10,11 @@ namespace CORRESPONSALBackend.Repository.Corresponsalias{ { private readonly DapperContext _context; public CorresponsaliasSolicitudesRepository(DapperContext context) { _context = context; } - public async Task AppendSolicitudReapertura(ITraficoSolicitudReapertura solicitud) + public async Task AppendSolicitudReapertura(ITraficoSolicitud solicitud) { var query = "[Corresponsales.Trafico.SolicitudReapertura.Append]"; using var connection = _context.CreateConnection(); - var response = await connection.QueryAsync(query, new { + var response = await connection.QueryAsync(query, new { @id =solicitud.Id, @idTrafico = solicitud.IdTrafico, @idUsuarioSolicita = solicitud.IdUsuarioSolicita, @@ -29,14 +29,50 @@ namespace CORRESPONSALBackend.Repository.Corresponsalias{ return response.First(); } - public async Task GetSolicitudReapertura(int idTrafico) + public async Task GetSolicitudReapertura(int idTrafico) { var query = "[Corresponsales.Trafico.SolicitudReapertura.Get]"; using var connection = _context.CreateConnection(); - var response = await connection.QueryAsync(query, new { + var response = await connection.QueryAsync(query, new { @idTrafico = idTrafico }, commandType: CommandType.StoredProcedure); - return response.FirstOrDefault(new DTOTraficoSolicitudReapertura{ + return response.FirstOrDefault(new DTOTraficoSolicitud{ + Id=0, + IdTrafico=idTrafico, + UsuarioSolicita= "", + FechaSolicita=null, + MotivoSolicita="", + Estado=1 + }); + } + + public async Task AppendSolicitudEliminarReferencia(ITraficoSolicitud solicitud) + { + var query = "[Corresponsales.Trafico.Solicitud.EliminarCuenta.Append]"; + using var connection = _context.CreateConnection(); + var response = await connection.QueryAsync(query, new { + @id =solicitud.Id, + @idTrafico = solicitud.IdTrafico, + @idUsuarioSolicita = solicitud.IdUsuarioSolicita, + @fechaSolicita = solicitud.FechaSolicita, + @motivoSolicita = solicitud.MotivoSolicita, + @idUsuarioAutoriza = solicitud.IdUsuarioAutoriza, + @fechaAutoriza = solicitud.FechaAutoriza, + @motivoRechazo = solicitud.MotivoRechazo, + @estado = solicitud.Estado + }, commandType: CommandType.StoredProcedure); + + return response.First(); + } + + public async Task GetSolicitudEliminarReferencia(int idTrafico) + { + var query = "[Corresponsales.Trafico.Solicitud.EliminarCuenta.Get]"; + using var connection = _context.CreateConnection(); + var response = await connection.QueryAsync(query, new { + @idTrafico = idTrafico + }, commandType: CommandType.StoredProcedure); + return response.FirstOrDefault(new DTOTraficoSolicitud{ Id=0, IdTrafico=idTrafico, UsuarioSolicita= "", From 705ce31e4ed54709bbad75477999efd69a8e2ca5 Mon Sep 17 00:00:00 2001 From: Felix Morales Date: Tue, 27 Feb 2024 09:45:48 -0600 Subject: [PATCH 3/3] =?UTF-8?q?Creacion=20de=20los=20enpoint=20para=20crea?= =?UTF-8?q?r=20y=20obtener=20las=20solicitudes,=20adem=C3=A1s=20del=20endp?= =?UTF-8?q?oint=20para=20el=20indiciador=20del=20dashboard=20del=20supervi?= =?UTF-8?q?sor=20de=20corresponsalias?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../IDashboardCorresponsalesRepository.cs | 1 + .../Corresponsalias/SolicitudesController.cs | 20 +++++++++++++++++++ .../Dashboard/CorresponsalesController.cs | 7 +++++++ DTO/Corresponsales/DTOCorresponsalTrafico.cs | 1 + .../DashboardCorresponsalesRepository.cs | 9 +++++++++ 5 files changed, 38 insertions(+) diff --git a/Contracts/Dashboard/IDashboardCorresponsalesRepository.cs b/Contracts/Dashboard/IDashboardCorresponsalesRepository.cs index dbdb56e..9c996ae 100644 --- a/Contracts/Dashboard/IDashboardCorresponsalesRepository.cs +++ b/Contracts/Dashboard/IDashboardCorresponsalesRepository.cs @@ -11,5 +11,6 @@ namespace CORRESPONSALBackend.Contracts.Dashboard public Task> GetFacturacion(); public Task GetTraficosConCargosDlls(); public Task SolicitudesReapertura(); + public Task SolicitudesElminarCuenta(); } } diff --git a/Controllers/Corresponsalias/SolicitudesController.cs b/Controllers/Corresponsalias/SolicitudesController.cs index e8d6e42..f213fe1 100644 --- a/Controllers/Corresponsalias/SolicitudesController.cs +++ b/Controllers/Corresponsalias/SolicitudesController.cs @@ -33,5 +33,25 @@ namespace CORRESPONSALBackend.Controllers.Corresponsalias{ return BadRequest(ex.Message); } } + + [HttpPost("EliminarCuenta/Append")] + public async Task AppendSolicitudEliminarCuenta([FromBody] ITraficoSolicitud solicitud){ + try{ + var response = await _Repo.AppendSolicitudEliminarReferencia(solicitud); + return Ok(response); + }catch(Exception ex){ + return BadRequest(ex.Message); + } + } + + [HttpGet("EliminarCuenta/Get")] + public async Task GetSolicitudEliminarCuenta([FromQuery] int idTrafico){ + try{ + var solicitud = await _Repo.GetSolicitudEliminarReferencia(idTrafico); + return Ok(solicitud); + }catch(Exception ex){ + return BadRequest(ex.Message); + } + } } } \ No newline at end of file diff --git a/Controllers/Dashboard/CorresponsalesController.cs b/Controllers/Dashboard/CorresponsalesController.cs index 4a340ac..f04b0f0 100644 --- a/Controllers/Dashboard/CorresponsalesController.cs +++ b/Controllers/Dashboard/CorresponsalesController.cs @@ -62,5 +62,12 @@ namespace CORRESPONSALBackend.Controllers.Dashboard var traficos = await _Repo.SolicitudesReapertura(); return traficos; } + + [HttpGet] + [Route("SolicitudesEliminarCuenta")] + public async Task SolicitudesElminarCuenta(){ + var traficos = await _Repo.SolicitudesElminarCuenta(); + return traficos; + } } } diff --git a/DTO/Corresponsales/DTOCorresponsalTrafico.cs b/DTO/Corresponsales/DTOCorresponsalTrafico.cs index 0b83a95..15cbac4 100644 --- a/DTO/Corresponsales/DTOCorresponsalTrafico.cs +++ b/DTO/Corresponsales/DTOCorresponsalTrafico.cs @@ -48,5 +48,6 @@ namespace CORRESPONSALBackend.DTO.Corresponsales public int Rechazado { get; set; } = 0; public int NoRecti { get; set; } = 0; public byte? Activo { get; set; } = 0; + public int TieneSolicitud {get;set;} = 0; } } \ No newline at end of file diff --git a/Repository/Dashboard/DashboardCorresponsalesRepository.cs b/Repository/Dashboard/DashboardCorresponsalesRepository.cs index 3eefb8a..e60b19c 100644 --- a/Repository/Dashboard/DashboardCorresponsalesRepository.cs +++ b/Repository/Dashboard/DashboardCorresponsalesRepository.cs @@ -63,5 +63,14 @@ namespace CORRESPONSALBackend.Repository.Dashboard return entrada.First(); } + + public async Task SolicitudesElminarCuenta() + { + var query = "[Dashboard.Facturacion.SolicitudesEliminarCuenta.Get]"; + using var connection = _context.CreateConnection(); + var entrada = await connection.QueryAsync(query, new {}, commandType: CommandType.StoredProcedure); + + return entrada.First(); + } } }