I have my service that works fine, but it is saved automatically on the server, how could it be saved on the client's side?
@POST
@Path("reporteComisiones")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public void reporteComisiones (Dtorest2 dtorest2) throws DocumentException, FileNotFoundException, ParseException, IOException
{
Double TotalPositivo = 0.00;
Double TotalNegativo = 0.00;
Double TotalFinal = 0.00;
Date fecha = new Date();
SimpleDateFormat formateador = new SimpleDateFormat("dd-MM-yyyy");
List<DtoOutrest2> lista = serComisiones(dtorest2);
Document document = new Document();
FileOutputStream FOS = new FileOutputStream("C:\reportes\"+dtorest2.persona_id+"-"+formateador.format(fecha)+".pdf");
PdfWriter.getInstance(document, FOS);
document.open();
Paragraph titulo = new Paragraph("Reporte Comisiones",FontFactory.getFont(FontFactory.TIMES_BOLD,20,Font.BOLD,BaseColor.BLUE));
titulo.setAlignment(titulo.ALIGN_CENTER);
document.add(titulo);
Paragraph Indicefecha = new Paragraph("Del "+ dtorest2.FechaIni + "hasta el "+ dtorest2.FechaFin,FontFactory.getFont(FontFactory.TIMES_BOLD,12));
Indicefecha.setAlignment(Indicefecha.ALIGN_CENTER);
document.add(Indicefecha);
document.add(new Paragraph("----------------------------------------------------------------------------------------------------------------------------------"));
PdfPTable tabla = new PdfPTable(9);
tabla.setWidthPercentage(100);
float[] medidaCeldas = {3.5f,3f,3f,10f,3f,3f,4f,4f,3f};
tabla.setWidths(medidaCeldas);
//Añadimos los títulos a la tabla.
Paragraph columna1 = new Paragraph("FECHA");
columna1.getFont().setStyle(Font.BOLD);
columna1.getFont().setColor(BaseColor.BLUE);
columna1.getFont().setSize(5);
tabla.addCell(columna1);
Paragraph columna2 = new Paragraph("NroOrden");
columna2.getFont().setStyle(Font.BOLD);
columna2.getFont().setColor(BaseColor.BLUE);
columna2.getFont().setSize(5);
tabla.addCell(columna2);
Paragraph columna3 = new Paragraph("ALMACEN");
columna3.getFont().setStyle(Font.BOLD);
columna3.getFont().setColor(BaseColor.BLUE);
columna3.getFont().setSize(5);
tabla.addCell(columna3);
Paragraph columna4 = new Paragraph("VENDEDOR");
columna4.getFont().setStyle(Font.BOLD);
columna4.getFont().setColor(BaseColor.BLUE);
columna4.getFont().setSize(5);
tabla.addCell(columna4);
Paragraph columna5 = new Paragraph("PAGADO");
columna5.getFont().setStyle(Font.BOLD);
columna5.getFont().setColor(BaseColor.BLUE);
columna5.getFont().setSize(5);
tabla.addCell(columna5);
Paragraph columna6 = new Paragraph("COBRADO");
columna6.getFont().setStyle(Font.BOLD);
columna6.getFont().setColor(BaseColor.BLUE);
columna6.getFont().setSize(5);
tabla.addCell(columna6);
Paragraph columna7 = new Paragraph("TERCEROS");
columna7.getFont().setStyle(Font.BOLD);
columna7.getFont().setColor(BaseColor.BLUE);
columna7.getFont().setSize(5);
tabla.addCell(columna7);
Paragraph columna8 = new Paragraph("OPERATIVO");
columna8.getFont().setStyle(Font.BOLD);
columna8.getFont().setColor(BaseColor.BLUE);
columna8.getFont().setSize(5);
tabla.addCell(columna8);
Paragraph columna9 = new Paragraph("COMISION");
columna9.getFont().setStyle(Font.BOLD);
columna9.getFont().setColor(BaseColor.BLUE);
columna9.getFont().setSize(5);
tabla.addCell(columna9);
for(DtoOutrest2 row : lista)
{
columna1 = new Paragraph(row.fecha);
columna1.getFont().setSize(5);
tabla.addCell(columna1);
columna2 = new Paragraph(row.nroOrdenVenta);
columna2.getFont().setSize(5);
tabla.addCell(columna2);
columna3 = new Paragraph(row.almacen);
columna3.getFont().setSize(5);
tabla.addCell(columna3);
columna4 = new Paragraph(row.vendedor.toString());
columna4.getFont().setSize(5);
tabla.addCell(columna4);
columna5 = new Paragraph(row.total_Pagado.toString());
columna5.getFont().setSize(5);
tabla.addCell(columna5);
columna6 = new Paragraph(row.total_Cobrado.toString());
columna6.getFont().setSize(5);
tabla.addCell(columna6);
columna7 = new Paragraph(row.comision_Terceros.toString());
columna7.getFont().setSize(5);
tabla.addCell(columna7);
columna8 = new Paragraph(row.gasto_Operativo.toString());
columna8.getFont().setSize(5);
tabla.addCell(columna8);
columna9 = new Paragraph(row.comision.toString());
columna9.getFont().setSize(5);
tabla.addCell(columna9);
if(row.comision > 0)
{
TotalPositivo = TotalPositivo + row.comision;
}
if(row.comision < 0)
{
TotalNegativo = TotalNegativo + row.comision;
}
}
TotalFinal = TotalPositivo + TotalNegativo;
document.add(tabla);
TotalPositivo = (double)Math.round(TotalPositivo * 10000d) / 10000d;
TotalNegativo = (double)Math.round(TotalNegativo * 10000d) / 10000d;
TotalFinal = (double)Math.round(TotalFinal * 10000d) / 10000d;
Paragraph totPositivo = new Paragraph("Total Positivo: "+ TotalPositivo ,FontFactory.getFont(FontFactory.TIMES_BOLD,12));
totPositivo.setAlignment(Indicefecha.ALIGN_RIGHT);
document.add(totPositivo);
Paragraph totNegativo = new Paragraph("Total Negativo: "+ TotalNegativo ,FontFactory.getFont(FontFactory.TIMES_BOLD,12));
totNegativo.setAlignment(Indicefecha.ALIGN_RIGHT);
document.add(totNegativo);
Paragraph totFinal = new Paragraph("Total Final: "+ TotalFinal ,FontFactory.getFont(FontFactory.TIMES_BOLD,12));
totFinal.setAlignment(Indicefecha.ALIGN_RIGHT);
document.add(totFinal);
document.close();
}