diff --git a/Controllers/FileManagerController.cs b/Controllers/FileManagerController.cs index b392a30..de0c4e6 100644 --- a/Controllers/FileManagerController.cs +++ b/Controllers/FileManagerController.cs @@ -324,6 +324,9 @@ namespace CORRESPONSALBackend.Controllers var zipFilePath = tempFilesPath + trafico.FolioGemco + ".zip"; if(!System.IO.File.Exists(zipFilePath)){//Se valida si no existe el archivo var procesos = new int[]{2,37,38,39,41};//Se crea un array con los procesos de los cuales se van a necesitar los archivos + if(trafico.PedimentoObligatorio == 0){ + procesos = new int[]{37,38,39,41}; + } string folderName = string.Concat(trafico.FolioGemco, "\\"); // "23-000xxxC" -> "23-000xxxC\" if(!System.IO.Directory.Exists(tempFilesPath + folderName)) System.IO.Directory.CreateDirectory(tempFilesPath + folderName);// Path: C:data\Corresponsales\Zips\Facturacion\Entregas\23-000xxxC\ diff --git a/DTO/Corresponsales/DTOTraficoCompleto.cs b/DTO/Corresponsales/DTOTraficoCompleto.cs index 0aedf9f..e4ce66e 100644 --- a/DTO/Corresponsales/DTOTraficoCompleto.cs +++ b/DTO/Corresponsales/DTOTraficoCompleto.cs @@ -4,7 +4,7 @@ namespace CORRESPONSALBackend.DTO.Corresponsales { public int Id { get; set; } = 0; public int IdUsuario { get; set; } = 0; - public byte Estatus { get; set; } = 0; + public byte PedimentoObligatorio { get; set; } = 0; public string Comentarios { get; set; } = null!; } } \ No newline at end of file diff --git a/Models/Corresponsales/ITrafico.cs b/Models/Corresponsales/ITrafico.cs index 1732f58..8cd9cbe 100644 --- a/Models/Corresponsales/ITrafico.cs +++ b/Models/Corresponsales/ITrafico.cs @@ -46,5 +46,6 @@ public string CausaRectificacion {get;set;} = ""; public double TotalHonorariosAA { get; set; } public double TotalGastosTerceros { get; set; } + public int PedimentoObligatorio {get;set;} } } diff --git a/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs b/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs index 4b7c530..c15eb81 100644 --- a/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs +++ b/Repository/Corresponsalias/CorresponsaliasTraficosRepository.cs @@ -131,7 +131,8 @@ namespace CORRESPONSALBackend.Repository.Corresponsalias @CargoA = data.CargoA, @CausaRectificacion = data.CausaRectificacion, @TotalHonorariosAA = data.TotalHonorariosAA, - @TotalGastosTerceros = data.TotalGastosTerceros + @TotalGastosTerceros = data.TotalGastosTerceros, + @PedimentoObligatorio = data.PedimentoObligatorio }, commandType: CommandType.StoredProcedure); return entrada.First(); @@ -156,7 +157,7 @@ namespace CORRESPONSALBackend.Repository.Corresponsalias { @id = data.Id, @IdUsuario = data.IdUsuario, - @Estatus = data.Estatus, + @PedimentoObligatorio = data.PedimentoObligatorio, @Comentarios = data.Comentarios }, commandType: CommandType.StoredProcedure); diff --git a/Services/Corresponsalias/Traficos/CorresponsaliasTraficosService.cs b/Services/Corresponsalias/Traficos/CorresponsaliasTraficosService.cs index 458179f..1710e04 100644 --- a/Services/Corresponsalias/Traficos/CorresponsaliasTraficosService.cs +++ b/Services/Corresponsalias/Traficos/CorresponsaliasTraficosService.cs @@ -69,7 +69,7 @@ namespace CORRESPONSALBackend.Services.Corresponsalias.Traficos{ var trafico = await _Repo.Get(idTrafico); trafico.DescripcionMercancia = Regex.Replace(trafico.DescripcionMercancia, @"\t|\n|\r", ""); var tiposMercancia = await _tiposMercanciaRepository.GetAll(); - var tipoMercancia = tiposMercancia.First(x => x.id == trafico.idTipoMercancia); + var tipoMercancia = tiposMercancia.First(x => trafico.PedimentoObligatorio == 1 ? x.id == trafico.idTipoMercancia : x.id == 15); var facturas = await _facturasRepository.GetAll(idTrafico); string NombreProveedor = ""; var proveedores = await _proveedoresRepository.GetAll(0); @@ -80,7 +80,8 @@ namespace CORRESPONSALBackend.Services.Corresponsalias.Traficos{ int IdCteFacturacion = centroCostos.ClienteFacturacion; var cteFacturacion = clientes.FirstOrDefault(x => x.sClave == IdCteFacturacion, new IClientes()); string fileData = $"\"{trafico.FolioGemco}\"|{(IdCteFacturacion == trafico.IdCliente || IdCteFacturacion == 0 ? trafico.IdCliente : IdCteFacturacion)}|{trafico.Patente}|{trafico.Pedimento}|{trafico.TipoCambio}|"; - fileData += $"{DateTime.ParseExact(trafico.FechaPago, "MM/dd/yyyy hh:mm:ss",CultureInfo.InvariantCulture).ToString("yyyy-MM-dd")}|0|0|0|0|0|0|0.00|\"{trafico.Aduana}\"|\"{trafico.Clave}\"|{trafico.TipoOperacion}|"; + fileData += $"{(trafico.FechaPago != null ? DateTime.ParseExact(trafico.FechaPago, "MM/dd/yyyy hh:mm:ss",CultureInfo.InvariantCulture).ToString("yyyy-MM-dd") : "/ / : :")}|"; + fileData += $"0|0|0|0|0|0|0.00|\"{trafico.Aduana}\"|\"{trafico.Clave}\"|{trafico.TipoOperacion}|"; fileData += $"\"C\"|{trafico.ValorFacturaDls}|{trafico.ValorFacturaDls! * trafico.TipoCambio!}|{trafico.ValorAduanaMN}|\"{(trafico.DescripcionMercancia.Length >= 100 ? trafico.DescripcionMercancia.Substring(0,100): trafico.DescripcionMercancia)}\"|"; fileData += $"{trafico.Kilos}|{trafico.Kilos! * 2.20462}|{trafico.CantidadFracciones}|\"{(trafico.SemaforoFiscal == 0 ? "R" : "V")}\"|"; if(facturas.Count() > 0){ @@ -95,8 +96,13 @@ namespace CORRESPONSALBackend.Services.Corresponsalias.Traficos{ }else{ fileData += $"0|\"\"|0|\"\"|\"\"|"; } - fileData += $"{trafico.Bultos}|0|0|{trafico.FechaDesaduanamiento.Substring(0,10)}|{contenedores.Count()}|0|\"\"|{trafico.FechaDesaduanamiento.Substring(0,10)}|{tipoMercancia.Clave}|0|0|\"\"|\"\"|\"\"|\"\"|/ /|F|F|F|F|0|0|F|0.00|F|0|\"\"|\"\"|"; - fileData += $"{DateTime.ParseExact(trafico.FechaPago, "MM/dd/yyyy hh:mm:ss",CultureInfo.InvariantCulture).ToString("yyyy-MM-dd")}|\"\"|\"\"|0|\"{(IdCteFacturacion == trafico.IdCliente || IdCteFacturacion == 0 ? cliente!.sRazonSocial.Split("|")[0].Trim() : cteFacturacion!.sRazonSocial.Split("|")[0].Trim())}\"|"; + fileData += $"{trafico.Bultos}|0|0|"; + fileData += $"{(trafico.FechaDesaduanamiento != "" ? trafico.FechaDesaduanamiento.Substring(0,10) : "/ / : :")}|"; + fileData += $"{contenedores.Count()}|0|\"\"|"; + fileData += $"{(trafico.FechaDesaduanamiento != "" ? trafico.FechaDesaduanamiento.Substring(0,10) : "/ / : :")}|"; + fileData += $"{tipoMercancia.Clave}|0|0|\"\"|\"\"|\"\"|\"\"|/ /|F|F|F|F|0|0|F|0.00|F|0|\"\"|\"\"|"; + fileData += $"{(trafico.FechaPago != null ? DateTime.ParseExact(trafico.FechaPago, "MM/dd/yyyy hh:mm:ss",CultureInfo.InvariantCulture).ToString("yyyy-MM-dd") : "/ / : :")}|"; + fileData += $"\"\"|\"\"|0|\"{(IdCteFacturacion == trafico.IdCliente || IdCteFacturacion == 0 ? cliente!.sRazonSocial.Split("|")[0].Trim() : cteFacturacion!.sRazonSocial.Split("|")[0].Trim())}\"|"; fileData += $"{(IdCteFacturacion == trafico.IdCliente || IdCteFacturacion == 0 ? cliente!.sRFC : cteFacturacion.sRFC)}|\"\"|\"\"|\"\"|\"\"|\"\"|\"\"|\"\"|\"{NombreProveedor}\"|"; fileData += $"0|\"\"|\"\"|\"\"|\"\"|\"\"|\"\"|\"\"|\"\"|{trafico.ValorFacturaDls}|\"\"|\"\"|336|\"\"|/ / : :|{DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss")}|{DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss")}|"; fileData += $"0|\"\"|\"\"|\"\"|0|0|0|F|\"\"|0|\"\"|\"\"|0|0|0|0|\"\"|\"{centroCostos.CentroCostos.Trim()}\"";