|
|
@ -9,6 +9,7 @@ using CORRESPONSALBackend.Repository.Corresponsalias; |
|
|
|
using CORRESPONSALBackend.DTO.Reportes; |
|
|
|
using CORRESPONSALBackend.DTO.Reportes; |
|
|
|
using CORRESPONSALBackend.Contracts.Corresponsalias.Services; |
|
|
|
using CORRESPONSALBackend.Contracts.Corresponsalias.Services; |
|
|
|
using CORRESPONSALBackend.Contracts.Catalogos; |
|
|
|
using CORRESPONSALBackend.Contracts.Catalogos; |
|
|
|
|
|
|
|
using System.Globalization; |
|
|
|
|
|
|
|
|
|
|
|
namespace CORRESPONSALBackend.Controllers.Corresponsalias |
|
|
|
namespace CORRESPONSALBackend.Controllers.Corresponsalias |
|
|
|
{ |
|
|
|
{ |
|
|
@ -164,47 +165,50 @@ namespace CORRESPONSALBackend.Controllers.Corresponsalias |
|
|
|
var proveedores = await _proveedoresRepository.GetAll(0); |
|
|
|
var proveedores = await _proveedoresRepository.GetAll(0); |
|
|
|
proveedores.ToList(); |
|
|
|
proveedores.ToList(); |
|
|
|
var facturas = await _traficosService.ReadTxtFacturasAlen(fileId); |
|
|
|
var facturas = await _traficosService.ReadTxtFacturasAlen(fileId); |
|
|
|
|
|
|
|
var facturasOrdenadas = facturas.OrderByDescending(x => DateTime.ParseExact(x[22].Replace(" "," "), "MM/dd/yyyy h:mm:ss tt", CultureInfo.InvariantCulture)).ToArray(); |
|
|
|
{ |
|
|
|
{ |
|
|
|
trafico.Pedimento = int.Parse(facturas[0][6]); |
|
|
|
trafico.Pedimento = int.Parse(facturasOrdenadas[0][6]); |
|
|
|
trafico.FechaPago = DateTime.Parse(facturas[0][7]).ToString("yyyy/MM/dd"); |
|
|
|
trafico.FechaPago = facturasOrdenadas[0][7]; |
|
|
|
trafico.Clave = facturas[0][8]; |
|
|
|
trafico.Clave = facturasOrdenadas[0][8]; |
|
|
|
trafico.TipoCambio = double.Parse(facturas[0][15]); |
|
|
|
trafico.TipoCambio = double.Parse(facturasOrdenadas[0][15]); |
|
|
|
trafico.CantidadFracciones = int.Parse(facturas[0][21]); |
|
|
|
trafico.CantidadFracciones = int.Parse(facturasOrdenadas[0][21]); |
|
|
|
trafico.DescripcionMercancia = facturas[0][14]; |
|
|
|
trafico.DescripcionMercancia = facturasOrdenadas[0][14]; |
|
|
|
trafico.Observaciones = facturas[0][48]; |
|
|
|
trafico.Observaciones = facturasOrdenadas[0][48]; |
|
|
|
|
|
|
|
trafico.FechaDesaduanamiento = facturasOrdenadas[0][22]; |
|
|
|
await _Repo.Append(trafico); |
|
|
|
await _Repo.Append(trafico); |
|
|
|
} |
|
|
|
} |
|
|
|
foreach(var factura in facturas){ |
|
|
|
foreach(var factura in facturasOrdenadas){ |
|
|
|
//Crear modelo de contenedor y asignar los datos en la factura actual |
|
|
|
if (!new List<string>() { " ", "-", "_" }.Contains(factura[13]) && !String.IsNullOrEmpty(factura[13])){ |
|
|
|
CorresponsalesContenedores nuevoContenedor = new CorresponsalesContenedores(){ |
|
|
|
//Crear modelo de contenedor y asignar los datos en la factura actual |
|
|
|
id = 0, |
|
|
|
CorresponsalesContenedores nuevoContenedor = new CorresponsalesContenedores(){ |
|
|
|
IdTrafico = idTrafico, |
|
|
|
id = 0, |
|
|
|
Contenedor = factura[32], |
|
|
|
IdTrafico = idTrafico, |
|
|
|
Semaforo = (byte?)(factura[45] == "VERDE" ? 2 : 1), |
|
|
|
Contenedor = factura[32], |
|
|
|
FSemaforo = factura[22] |
|
|
|
Semaforo = (byte?)(factura[45] == "VERDE" ? 2 : 1), |
|
|
|
}; |
|
|
|
FSemaforo = factura[22] |
|
|
|
var contenedorGuardado = await _contenedoresRepository.Append(nuevoContenedor); |
|
|
|
}; |
|
|
|
//Crear modelo de factura y asignar los datos en la factura actual |
|
|
|
var contenedorGuardado = await _contenedoresRepository.Append(nuevoContenedor); |
|
|
|
var proveedorFactura = proveedores.FirstOrDefault(p => p.Nombre == factura[10]); |
|
|
|
//Crear modelo de factura y asignar los datos en la factura actual |
|
|
|
CorresponsalFacturas nuevaFactura = new CorresponsalFacturas(){ |
|
|
|
var proveedorFactura = proveedores.FirstOrDefault(p => p.Nombre == factura[10]); |
|
|
|
id = 0, |
|
|
|
CorresponsalFacturas nuevaFactura = new CorresponsalFacturas(){ |
|
|
|
Factura = factura[13], |
|
|
|
id = 0, |
|
|
|
IdTrafico = idTrafico, |
|
|
|
Factura = factura[13], |
|
|
|
ValorFacturaDls = double.Parse(factura[16]), |
|
|
|
IdTrafico = idTrafico, |
|
|
|
Proveedor = proveedorFactura.id, |
|
|
|
ValorFacturaDls = double.Parse(factura[16]), |
|
|
|
Pedido = factura[29], |
|
|
|
Proveedor = proveedorFactura.id, |
|
|
|
FechaFactura = factura[7], |
|
|
|
Pedido = factura[29], |
|
|
|
Activo = true, |
|
|
|
FechaFactura = factura[7], |
|
|
|
Code = 0, |
|
|
|
Activo = true, |
|
|
|
FolioGEMCO = "", |
|
|
|
Code = 0, |
|
|
|
COVE = factura[50], |
|
|
|
FolioGEMCO = "", |
|
|
|
Entrega = factura[52], |
|
|
|
COVE = factura[50], |
|
|
|
Transporte = factura[51], |
|
|
|
Entrega = factura[52], |
|
|
|
UUID = factura[33], |
|
|
|
Transporte = factura[51], |
|
|
|
IdContenedor = contenedorGuardado.id |
|
|
|
UUID = factura[33], |
|
|
|
}; |
|
|
|
IdContenedor = contenedorGuardado.id |
|
|
|
await _facturasRepository.Append(nuevaFactura); |
|
|
|
}; |
|
|
|
|
|
|
|
await _facturasRepository.Append(nuevaFactura); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
return new OkObjectResult(new {trafico, facturas = await _facturasRepository.GetAll(idTrafico), contenedores = await _contenedoresRepository.GetAll(idTrafico)}); |
|
|
|
return new OkObjectResult(new {trafico, facturas = await _facturasRepository.GetAll(idTrafico), contenedores = await _contenedoresRepository.GetAll(idTrafico)}); |
|
|
|
}catch(Exception ex){ |
|
|
|
}catch(Exception ex){ |
|
|
|