Descargar los traficos del cliente en un excel

feature/Creacion_Reporte_Archivo_Electronico_20240417
Felix Morales 5 months ago
parent 3444834b2c
commit 985d9fce89
  1. 79
      src/Components/Clientes/Traficos/RptClientesTraficos.tsx
  2. 4
      src/Services/Catalogos/Clientes.Services.ts

@ -292,56 +292,33 @@ export default function RptClientesTraficos(props: IProps) {
} }
function exportExcel(jsonData: any[], fileName: string): void { function exportExcel(jsonData: any[], fileName: string): void {
let Heading = [ const data: DTOFiltrosTraficosClientes = {
[ Inicio: moment(Inicio).format('YYYY-MM-DD'),
{ Fin: moment(Fin).format('YYYY-MM-DD'),
title: 'Aduana Seccion Despacho', TipoOperacion: TipoOperacion,
style: { font: { sz: '18', bold: true } }, NoCliente: Cliente,
}, IdCorresponsal: Corresponsal,
'Patente', Pedimento: Pedimento,
'Referencia', Aduana: Aduana,
'Pedimento', Patente: Patente,
'Fecha Pago', Referencia: Referencia,
'Fecha Entrada Presentacion', IdUsuario: UserId,
'Clave Docto', Estado: Estado
'Es rectificacion',
'Tipo Cambio',
'Valor Dls',
'Valor Aduana',
'Numero Factura',
'Fecha Factura',
'Proveedor Factura',
'Incrementables Fact',
'Fraccion',
'Subdiv NICO',
'Descripcion',
'Pais Origen',
'Pais Vendedor',
'Tasa DTA',
'Tasa IGI',
'Numero Parte',
'Cantidad Comercial',
'TL Pais',
'Tipo Tasa',
'Unidad Comercial',
'Valor Factura Item',
'Valor Comercial Ped',
'Valor Factura Item MN',
],
]
const wb = XLSX.utils.book_new()
const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet([])
XLSX.utils.sheet_add_aoa(ws, Heading)
XLSX.utils.sheet_add_json(ws, jsonData, { origin: 'A2', skipHeader: true })
XLSX.utils.book_append_sheet(wb, ws, 'Sheet1')
XLSX.writeFile(wb, fileName + '.xlsx')
var range = XLSX.utils.decode_range(ws['!ref?'])
for (var C = range.s.c; C <= range.e.c; ++C) {
var address = XLSX.utils.encode_col(C) + '1' // <-- first row, column number C
if (!ws[address]) continue
ws[address].v = ws[address].v.toUpperCase()
} }
ClientesServices.GetExcel(data)
.then(resp => {
const url = window.URL.createObjectURL(new Blob([resp.data]));
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', `Reporte_Operaciones.xlsx`);
document.body.appendChild(link);
link.click();
}).catch(e => {
setHeader('Error')
setMsg('Ocurrio un error al generar el reporte. Por favor, intentelo de nuevo.')
setShowMsg(true)
return
})
} }
return ( return (
@ -512,7 +489,6 @@ export default function RptClientesTraficos(props: IProps) {
<BsSearch /> <BsSearch />
&nbsp; Buscar &nbsp; Buscar
</Button> </Button>
{(Depto === 'Corresponsalias' || Depto === 'Sistemas') ? (
<Button <Button
size='sm' size='sm'
variant='success' variant='success'
@ -524,9 +500,6 @@ export default function RptClientesTraficos(props: IProps) {
<BsFileEarmarkExcel /> <BsFileEarmarkExcel />
&nbsp; Excel &nbsp; Excel
</Button> </Button>
) : (
''
)}
</Col> </Col>
</Row> </Row>
</Card.Body> </Card.Body>

@ -37,5 +37,9 @@ class ClientesDataService {
GetTraficos(data: DTOFiltrosTraficosClientes){ GetTraficos(data: DTOFiltrosTraficosClientes){
return http.get<ICorresponsalTrafico[]>(`/Clientes/Traficos?Inicio=${data.Inicio}&Fin=${data.Fin}&TipoOperacion=${data.TipoOperacion}&NoCliente=${data.NoCliente}&IdCorresponsal=${data.IdCorresponsal}&Pedimento=${data.Pedimento}&Aduana=${data.Aduana}&Patente=${data.Patente}&Referencia=${data.Referencia}&IdUsuario=${data.IdUsuario}&Estado=${data.Estado}`) return http.get<ICorresponsalTrafico[]>(`/Clientes/Traficos?Inicio=${data.Inicio}&Fin=${data.Fin}&TipoOperacion=${data.TipoOperacion}&NoCliente=${data.NoCliente}&IdCorresponsal=${data.IdCorresponsal}&Pedimento=${data.Pedimento}&Aduana=${data.Aduana}&Patente=${data.Patente}&Referencia=${data.Referencia}&IdUsuario=${data.IdUsuario}&Estado=${data.Estado}`)
} }
GetExcel(data: DTOFiltrosTraficosClientes){
return http.get(`/Clientes/Excel?Inicio=${data.Inicio}&Fin=${data.Fin}&TipoOperacion=${data.TipoOperacion}&NoCliente=${data.NoCliente}&IdCorresponsal=${data.IdCorresponsal}&Pedimento=${data.Pedimento}&Aduana=${data.Aduana}&Patente=${data.Patente}&Referencia=${data.Referencia}&IdUsuario=${data.IdUsuario}&Estado=${data.Estado}`,{responseType: 'blob'})
}
} }
export default new ClientesDataService(); export default new ClientesDataService();
Loading…
Cancel
Save