primer avance de la creacion del reporte de archivo electronico para la vista del cliente

feature/Creacion_Reporte_Archivo_Electronico_20240417
Felix Morales 5 months ago
parent 1a7db051eb
commit 8170a2a56b
  1. 9
      Contracts/ArchivoElectronico/IArchivoElectronicoRepository.cs
  2. 5
      Contracts/ArchivoElectronico/IArchivoElectronicoService.cs
  3. 6
      Controllers/AuthController.cs
  4. 37
      Controllers/Utils/ArchivoElectronicoController.cs
  5. 11
      Models/Reportes/RptPedimentosPagadosAEO.cs
  6. 6
      Program.cs
  7. 31
      Repository/ArchivoElectronicoRepository.cs
  8. 7
      Services/ArchivoElectronicoService.cs

@ -0,0 +1,9 @@
using CORRESPONSALBackend.DTO.ArchivoElectronico;
using GEMCO.Backend.Models.Reportes;
namespace CORRESPONSALBackend.Contracts.ArchivoElectronico{
public interface IArchivoElectronicoRepository
{
public Task<List<RptPedimentosPagadosAEO>> getRptPedimentoPagadosAEO(DTOAEPeriodo dTOData);
}
}

@ -0,0 +1,5 @@
namespace CORRESPONSALBackend.Contracts.ArchivoElectronico{
public interface IArchivoElectronicoService{
}
}

@ -133,10 +133,10 @@ namespace CORRESPONSALBackend.Controllers
{ {
DTOPINData PINData = await _usuariosRepo.CreatePIN(IdUser); DTOPINData PINData = await _usuariosRepo.CreatePIN(IdUser);
string htmlContent = $@"<table> string htmlContent = $@"<table>
<tr><td>Estimado usuario, mediante este correo se le notifica que esta en proceso de cambiar su contraseña</td></tr> <tr><td>Estimado usuario, mediante este correo se le notifica que está en proceso de cambiar su contraseña.</td></tr>
<tr><td>Se ha generado un PIN para poder cambiar su contraseña. PIN : <b>{PINData.PIN}</b> </td></tr> <tr><td>Se ha generado un PIN para poder cambiar su contraseña. PIN : <b>{PINData.PIN}</b> </td></tr>
<tr><td>El PIN tiene un tiempo de vida de 10 minutos, a partir de su generacion, despues de ese tiempo caduca</td></tr> <tr><td>El PIN tiene un tiempo de vida de 10 minutos, a partir de su generación.</td></tr>
<tr><td>Si usted <b>no</b> es quien ha activando este mecanismo, favor de ponerse en contacto con personal de ZINC</td></tr> <tr><td>Si usted <b>NO</b> es quien ha activando este mecanismo, favor de ponerse en contacto con personal de GEMCO.</td></tr>
</table>"; </table>";
if (PINData.PIN > 0) if (PINData.PIN > 0)
{ {

@ -0,0 +1,37 @@
using CORRESPONSALBackend.Contracts.ArchivoElectronico;
using CORRESPONSALBackend.DTO.ArchivoElectronico;
using GEMCO.Backend.Models.Reportes;
using Microsoft.AspNetCore.Mvc;
namespace CORRESPONSALBackend.Controllers.Utils{
[Route("api/[controller]")]
[ApiController]
public class ArchivoElectronicoController : ControllerBase {
private readonly IArchivoElectronicoRepository _AERepo;
public ArchivoElectronicoController(IArchivoElectronicoRepository AERepo){
_AERepo = AERepo;
}
[HttpGet]
[Route("RptArchivoElectronicoOficial")]
public async Task<List<RptPedimentosPagadosAEO>> GetReporteArchivElectronicoOficial([FromQuery] DTOAEPeriodo DTOData)
{
List<RptPedimentosPagadosAEO> data = await _AERepo.getRptPedimentoPagadosAEO(DTOData);
return data;
}
[HttpPost]
[Route("DownloadZippedArchivosOficiales")]
public async Task<IActionResult> DownloadZippedArchivosOficiales([FromBody] DTOAEPeriodoSeleccion data){
try{
if(data.Referencias.Count > 0){
}
return Ok();
}catch(Exception ex){
return BadRequest(ex.Message);
}
}
}
}

@ -0,0 +1,11 @@
namespace GEMCO.Backend.Models.Reportes
{
public class RptPedimentosPagadosAEO
{
public string Referencia { set; get; } = null!;
public int Aduana { get; set; } = 0;
public int Patente { get; set; } = 0;
public int Pedimento { get; set; } = 0;
public string FechaPago { set; get; } = null!;
}
}

@ -52,6 +52,8 @@ using CORRESPONSALBackend.Repository.Reportes.CuentasCerradas;
using CORRESPONSALBackend.Services.Reportes.CuentasCerradas; using CORRESPONSALBackend.Services.Reportes.CuentasCerradas;
using CORRESPONSALBackend.Contracts.Reportes; using CORRESPONSALBackend.Contracts.Reportes;
using CORRESPONSALBackend.Services.Reportes; using CORRESPONSALBackend.Services.Reportes;
using CORRESPONSALBackend.Contracts.ArchivoElectronico;
using CORRESPONSALBackend.Services;
var builder = WebApplication.CreateBuilder(args); var builder = WebApplication.CreateBuilder(args);
@ -92,6 +94,9 @@ builder.Services.AddScoped<ICorresponsaliasPedimentoPartidasRepository, Correspo
builder.Services.AddScoped<ICorresponsaliasCuentasComplementarias, CorresponsaliasCuentaComplementariaRepository>(); builder.Services.AddScoped<ICorresponsaliasCuentasComplementarias, CorresponsaliasCuentaComplementariaRepository>();
builder.Services.AddScoped<ICorresponsaliasPedimentosConsolidadosRepository, CorresponsaliasPedimentosConsolidadosRepository>(); builder.Services.AddScoped<ICorresponsaliasPedimentosConsolidadosRepository, CorresponsaliasPedimentosConsolidadosRepository>();
builder.Services.AddScoped<ICorresponsaliasSolicitudesRepository, CorresponsaliasSolicitudesRepository>(); builder.Services.AddScoped<ICorresponsaliasSolicitudesRepository, CorresponsaliasSolicitudesRepository>();
builder.Services.AddScoped<ITraficosClientesService, TraficosClientesService>();
builder.Services.AddScoped<IArchivoElectronicoRepository, ArchivoElectronicoRepository>();
builder.Services.AddScoped<IArchivoElectronicoService, ArchivoElectronicoService>();
//Clientes //Clientes
builder.Services.AddScoped<ICasaCuervoRepository, CasaCuervoRepository>(); builder.Services.AddScoped<ICasaCuervoRepository, CasaCuervoRepository>();
@ -112,7 +117,6 @@ builder.Services.AddScoped<ITiposMercanciaRepository, TiposMercanciaRepository>(
builder.Services.AddScoped<ICatCentrosCostosRepository, CatCentrosCostosRepository>(); builder.Services.AddScoped<ICatCentrosCostosRepository, CatCentrosCostosRepository>();
builder.Services.AddScoped<ICatClavesPedimentosRepository, CatClavesPedimentosRepository>(); builder.Services.AddScoped<ICatClavesPedimentosRepository, CatClavesPedimentosRepository>();
builder.Services.AddScoped<ICatTiposContenedoresRepository, CatTiposContenedoresRepository>(); builder.Services.AddScoped<ICatTiposContenedoresRepository, CatTiposContenedoresRepository>();
builder.Services.AddScoped<ITraficosClientesService, TraficosClientesService>();
//Utilerias //Utilerias
builder.Services.AddScoped<IFileManagerRepository, FileManagerRepository>(); builder.Services.AddScoped<IFileManagerRepository, FileManagerRepository>();

@ -0,0 +1,31 @@
using System.Data;
using CORRESPONSALBackend.Context;
using CORRESPONSALBackend.Contracts.ArchivoElectronico;
using CORRESPONSALBackend.DTO.ArchivoElectronico;
using Dapper;
using GEMCO.Backend.Models.Reportes;
namespace CORRESPONSALBackend.Repository{
public class ArchivoElectronicoRepository : IArchivoElectronicoRepository
{
private readonly DapperContext _context;
public ArchivoElectronicoRepository(DapperContext context) { _context = context; }
public async Task<List<RptPedimentosPagadosAEO>> getRptPedimentoPagadosAEO(DTOAEPeriodo data)
{
var query = "getRptArchivoElectronicoOficial";
using (var connection = _context.CreateConnection())
{
var entrada = await connection.QueryAsync<RptPedimentosPagadosAEO>(query,
new
{
@Anio = data.Anio,
@Mes = data.Mes,
@NoCliente = data.NoCliente,
@TipoOperacion = data.TipoOperacion
},
commandType: CommandType.StoredProcedure);
return entrada.ToList();
}
}
}
}

@ -0,0 +1,7 @@
using CORRESPONSALBackend.Contracts.ArchivoElectronico;
namespace CORRESPONSALBackend.Services{
public class ArchivoElectronicoService : IArchivoElectronicoService{
}
}
Loading…
Cancel
Save