Creacion del funcionamiento para agregar pedimentos adicionales a un trafico

feature/ConsolidarPedimentos_20231229
Felix Morales 9 months ago
parent 5b70263914
commit d50989940b
  1. 9
      Contracts/Corresponsalias/ICorresponsaliasPedimentosConsolidadosRepository.cs
  2. 42
      Controllers/Corresponsalias/PedimentosConsolidadosController.cs
  3. 11
      Models/Corresponsales/CorresponsalPedimentosConsolidados.cs
  4. 2
      Program.cs
  5. 45
      Repository/Corresponsalias/CorresponsaliasPedimentosConsolidadosRepository.cs

@ -0,0 +1,9 @@
using CORRESPONSALBackend.Models.Corresponsales;
namespace CORRESPONSALBackend.Contracts.Corresponsalias{
public interface ICorresponsaliasPedimentosConsolidadosRepository{
public Task<IEnumerable<CorresponsalPedimentosConsolidados>> GetAll(int IdTrafico);
public Task<CorresponsalPedimentosConsolidados> Append(CorresponsalPedimentosConsolidados pedimento);
public Task Delete(int id);
}
}

@ -0,0 +1,42 @@
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 PedimentosConsolidados : ControllerBase{
private readonly ICorresponsaliasPedimentosConsolidadosRepository _repo;
public PedimentosConsolidados(ICorresponsaliasPedimentosConsolidadosRepository repo){
_repo = repo;
}
[HttpPost("Append")]
public async Task<IActionResult> Append([FromBody] CorresponsalPedimentosConsolidados data){
try{
var entrada = await _repo.Append(data);
return Ok(entrada);
}catch(Exception ex){
return BadRequest(ex.Message);
}
}
[HttpGet("GetAll")]
public async Task<IEnumerable<CorresponsalPedimentosConsolidados>> GetAll([FromQuery] int IdTrafico){
var entrada = await _repo.GetAll(IdTrafico);
return entrada;
}
[HttpDelete("Delete/{id}")]
public async Task<IActionResult> Delete(int id){
try{
await _repo.Delete(id);
return new OkObjectResult(new { respuesta = "Se elimino el registro" });
}catch(Exception ex){
return BadRequest(ex.Message);
}
}
}
}

@ -0,0 +1,11 @@
namespace CORRESPONSALBackend.Models.Corresponsales{
public class CorresponsalPedimentosConsolidados{
public int Id { get; set; }
public int IdTrafico { get; set; }
public int Aduana { get; set; }
public int Patente { get; set; }
public int Pedimento { get; set; }
public string Clave { get; set; }
public DateTime FechaPago { get; set; }
}
}

@ -78,7 +78,7 @@ builder.Services.AddScoped<ICorresponsaliasGuiasRepository, CorresponsaliasGuias
builder.Services.AddScoped<ICorresponsaliasPedimentoRepository, CorresponsaliasPedimentoRepository>();
builder.Services.AddScoped<ICorresponsaliasPedimentoPartidasRepository, CorresponsaliasPedimentoPartidasRepository>();
builder.Services.AddScoped<ICorresponsaliasCuentasComplementarias, CorresponsaliasCuentaComplementariaRepository>();
builder.Services.AddScoped<ICorresponsaliasPedimentosConsolidadosRepository, CorresponsaliasPedimentosConsolidadosRepository>();
//Clientes
builder.Services.AddScoped<ICasaCuervoRepository, CasaCuervoRepository>();

@ -0,0 +1,45 @@
using System.Data;
using CORRESPONSALBackend.Context;
using CORRESPONSALBackend.Contracts.Corresponsalias;
using CORRESPONSALBackend.Models.Corresponsales;
using Dapper;
namespace CORRESPONSALBackend.Repository.Corresponsalias{
public class CorresponsaliasPedimentosConsolidadosRepository : ICorresponsaliasPedimentosConsolidadosRepository{
private readonly DapperContext _context;
public CorresponsaliasPedimentosConsolidadosRepository(DapperContext context) { _context = context; }
public async Task<CorresponsalPedimentosConsolidados> Append(CorresponsalPedimentosConsolidados data)
{
var query = "[Corresponsales.Trafico.Pedimento.Consolidados.Append]";
using var connection = _context.CreateConnection();
var entrada = await connection.QueryAsync<CorresponsalPedimentosConsolidados>(query, new
{
data.Id,
data.IdTrafico,
data.Aduana,
data.Patente,
data.Pedimento,
data.Clave,
data.FechaPago
},
commandType: CommandType.StoredProcedure);
return entrada.First();
}
public async Task<IEnumerable<CorresponsalPedimentosConsolidados>> GetAll(int IdTrafico)
{
var query = "[Corresponsales.Trafico.Pedimento.Consolidados.GetAll]";
using var connection = _context.CreateConnection();
var entrada = await connection.QueryAsync<CorresponsalPedimentosConsolidados>(query, new {IdTrafico}, commandType: CommandType.StoredProcedure);
return entrada;
}
public async Task Delete(int id){
var query = "[Corresponsales.Trafico.Pedimento.Consolidados.Delete]";
using var connection = _context.CreateConnection();
var entrada = await connection.QueryAsync<CorresponsalPedimentosConsolidados>(query, new {id}, commandType: CommandType.StoredProcedure);
}
}
}
Loading…
Cancel
Save