List of usage examples for com.lowagie.text Font HELVETICA
int HELVETICA
To view the source code for com.lowagie.text Font HELVETICA.
Click Source Link
From source file:userInterface.HospitalAdminRole.ManagePatientsJPanel.java
private void saveAsPdfBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_saveAsPdfBtnActionPerformed Document document = new Document(PageSize.A4.rotate()); String[] headers = new String[] { "Name", "TimeStamp", "Resp Rate", "Heart Rate", "Blood Pressure", "Temperature", "Status" }; String filename = fileNameTxt.getText(); try {/*from w w w. ja v a 2 s . c o m*/ if (!filename.equals("")) { PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(filename + ".pdf")); document.open(); PdfContentByte cb = writer.getDirectContent(); cb.saveState(); PdfPTable table = new PdfPTable(headers.length); for (int i = 0; i < headers.length; i++) { String header = headers[i]; PdfPCell cell = new PdfPCell(); cell.setGrayFill(0.9f); cell.setPhrase(new Phrase(header.toUpperCase(), new Font(Font.HELVETICA, 8, Font.BOLD))); table.addCell(cell); } table.completeRow(); table.spacingBefore(); table.spacingAfter(); document.add(table); Graphics2D g2 = cb.createGraphicsShapes(500, 500); //cb.showTextAligned(PdfContentByte.ALIGN_CENTER, g2, 200, 300, 0); Shape oldClip = g2.getClip(); g2.clipRect(0, 0, 700, 500); vitalSignjTable.print(g2); g2.setClip(oldClip); g2.dispose(); cb.restoreState(); JOptionPane.showMessageDialog(null, "file saved", "Saved", JOptionPane.INFORMATION_MESSAGE); } else { JOptionPane.showMessageDialog(null, "enter the filename", "FileName", JOptionPane.ERROR_MESSAGE); } } catch (Exception e) { System.err.println(e.getMessage()); } document.close(); }
From source file:vistas.reportes.procesos.rptAsistenciaEntrada.java
public void crearPdf(String nombreFile, List<String> dnis, Date fechaInicio, Date fechaFin, String oficina, String tipo, String usuario) throws IOException, DocumentException { Document documento = new Document(PageSize.A4); PdfWriter.getInstance(documento, new FileOutputStream(nombreFile)); documento.open();//w w w . j av a 2 s . c om String nombreGrupoOficina = ""; if (tipo == "O") { nombreGrupoOficina = "OFICINA: "; } else { nombreGrupoOficina = "GRUPO HORARIO: "; } Font font = new Font(Font.HELVETICA, 10, Font.BOLD); Chunk nombreReporte = new Chunk("REPORTE DE CONTROL DE ASISTENCIA", font); Chunk labelOficina = new Chunk(nombreGrupoOficina, font); Chunk labelMes = new Chunk("FECHA: ", font); Chunk labelUsuario = new Chunk("USUARIO: ", font); Chunk nombreOficina = new Chunk(oficina, new Font(Font.HELVETICA, 10)); Chunk nombreMes = new Chunk(ReporteUtil.obtenerFechaFormateada(fechaInicio, "/").toUpperCase(), new Font(Font.HELVETICA, 10)); Chunk nombreUsuario = new Chunk(usuario.toUpperCase(), new Font(Font.HELVETICA, 10)); documento.add(new Paragraph(nombreReporte)); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelOficina, nombreOficina))); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelMes, nombreMes))); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelUsuario, nombreUsuario))); documento.add(ReporteUtil.darEspaciado(20)); PdfPTable tabla = new rptAsistenciaEntrada().crearTabla(dnis, fechaInicio, fechaFin); documento.add(tabla); documento.close(); try { File path = new File(nombreFile); Desktop.getDesktop().open(path); } catch (IOException ex) { ex.printStackTrace(); } }
From source file:vistas.reportes.procesos.rptAsistenciaEntrada.java
public PdfPTable crearTabla(List<String> dnis, Date fechaInicio, Date fechaFin) throws DocumentException { /**/*from w w w . j a v a2 s . com*/ * Procesamiento para info para generar tablas */ Calendar fechaInicioC = Calendar.getInstance(); Calendar fechaFinC = Calendar.getInstance(); fechaInicioC.setTime(fechaInicio); fechaFinC.setTime(fechaFin); /** * Procesamiento para elaborar tabla con datos */ int nroColumnas = 6; PdfPTable tabla = new PdfPTable(nroColumnas); tabla.setWidthPercentage(100); //Asignamos los tamaos a las columnas //MOdifique para tomar en cuenta la nueva columna de dewscuento int[] widthColumna = new int[nroColumnas]; widthColumna[0] = 1; widthColumna[1] = 5; widthColumna[2] = 2; widthColumna[3] = 2; widthColumna[4] = 2; widthColumna[5] = 2; tabla.setWidths(widthColumna); //Definimos celdas iniciales Font fontCabecera = new Font(Font.HELVETICA, 8, Font.BOLD); Font fontCelda = new Font(Font.HELVETICA, 7); PdfPCell h0 = new PdfPCell(new Phrase("DNI", fontCabecera)); h0.setHorizontalAlignment(1); h0.setGrayFill(0.7f); h0.setColspan(1); tabla.addCell(h0); PdfPCell h1 = new PdfPCell(new Phrase("NOMBRE EMPLEADO", fontCabecera)); h1.setHorizontalAlignment(1); h1.setGrayFill(0.7f); h1.setColspan(1); tabla.addCell(h1); PdfPCell h2 = new PdfPCell(new Phrase("MARCACION ENTRADA", fontCabecera)); h2.setHorizontalAlignment(1); h2.setGrayFill(0.7f); h2.setColspan(1); tabla.addCell(h2); PdfPCell h3 = new PdfPCell(new Phrase("ASISTENCIA", fontCabecera)); h3.setHorizontalAlignment(1); h3.setGrayFill(0.7f); h3.setColspan(1); tabla.addCell(h3); //Agregado de columna de descuento sin goce PdfPCell h4 = new PdfPCell(new Phrase("OBSERVACION", fontCabecera)); h4.setHorizontalAlignment(1); h4.setGrayFill(0.7f); h4.setColspan(1); tabla.addCell(h4); PdfPCell h5 = new PdfPCell(new Phrase("VACACION", fontCabecera)); h5.setHorizontalAlignment(1); h5.setGrayFill(0.7f); h5.setColspan(1); tabla.addCell(h5); /** * Procesamiento de los datos para generar los registros de la entrada */ for (String dni : dnis) { List<Marcacion> marcaciones = mc.buscarXFecha(dni, fechaInicio); String Asistencia = ""; String Permiso = ""; String Vacaciones = ""; String marcacion = ""; String condicion = ""; System.out.println("DNI: " + dni); Empleado empleado = ec.buscarPorDni(dni); List<EmpleadoOpcionInfo> infoEmpleado = eoc.buscarTodos(Integer.parseInt(dni)); if (!infoEmpleado.isEmpty()) { if (infoEmpleado.get(0).getSFieldValue5().equals("0") || infoEmpleado.get(0).getSFieldValue5().equals("") || infoEmpleado.get(0).getSFieldValue5().equals(" ")) { condicion = "NORMAL"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("1")) { condicion = "EXONERADO"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("2")) { condicion = "DESIGNADO"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("3")) { condicion = "OTRA SEDE"; } } else { condicion = "Sin dato"; } System.out.println("Condicion: " + condicion); //Datos de horario, jornada, empleado List<DetalleGrupoHorario> detallesGrupos = dc.buscarXEmpleado(empleado); if (condicion.equals("NORMAL")) { if (!marcaciones.isEmpty()) { Marcacion primeraMarcacion = marcaciones.get(0); marcacion = primeraMarcacion.getHora().toString(); if (!detallesGrupos.isEmpty()) { DetalleGrupoHorario detalleGrupoEmpleado = detallesGrupos.get(0); List<AsignacionHorario> asignaciones = ashc .buscarXGrupo(detalleGrupoEmpleado.getGrupoHorario()); AsignacionHorario asignacionEmpleado = asignaciones.get(0); Horario horarioEmpleado = asignacionEmpleado.getHorario(); Jornada jornadaEmpleado = horarioEmpleado.getJornada(); //Validacion de asistencia if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHE()) == 0 || primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHE()) < 0) { Asistencia = "Asistencia Normal"; } else if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTardanzaHE()) < 0 && primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHE()) > 0) { Asistencia = "Tardanza"; } else if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTardanzaHE()) > 0) { Asistencia = "Falta"; } } else { Asistencia = "No tiene grupo horario"; } } else { marcacion = "Sin marcacion"; Asistencia = "Falta"; } } else if (condicion.equals("EXONERADO")) { marcacion = "Sin marcacion"; Asistencia = condicion; } else if (condicion.equals("DESIGNADO")) { marcacion = "Sin marcacion"; Asistencia = condicion; } else if (condicion.equals("OTRA SEDE")) { marcacion = "Sin marcacion"; Asistencia = condicion; } else { marcacion = "Sin marcacion"; Asistencia = "Condicin sin especificar"; } //Validacion de permiso //Procesar permisos con horas tbm si no encuentra permisos por fechas AsignacionPermiso asignacionPermisoEmpleado = aspc.buscarXDia(dni, fechaInicio); if (asignacionPermisoEmpleado != null) { Permiso = asignacionPermisoEmpleado.getPermiso().getTipoPermiso().getNombre(); Asistencia = "Permiso"; } else { Permiso = "Sin permiso"; } //Validacion de Vacaciones Vacacion vacacionEmpleado = vc.buscarXDia(dni, fechaInicio); if (vacacionEmpleado != null) { Vacaciones = ReporteUtil.obtenerFechaDiaMes(vacacionEmpleado.getFechaInicio()) + " al " + ReporteUtil.obtenerFechaDiaMes(vacacionEmpleado.getFechaFin()); Asistencia = "Vacaciones"; } else { Vacaciones = "No tiene vacaciones"; } //DNI PdfPCell celdaNombre = new PdfPCell(new Phrase(empleado.getNroDocumento(), fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Nombre String celda0 = empleado.getApellidoPaterno() + " " + empleado.getApellidoMaterno() + " " + empleado.getNombre(); celdaNombre.setPhrase(new Phrase(celda0, fontCelda)); celdaNombre.setHorizontalAlignment(0); tabla.addCell(celdaNombre); //Hora Marcacion String celda = marcacion; celdaNombre.setPhrase(new Phrase(celda, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Asistencia String celda1 = Asistencia; celdaNombre.setPhrase(new Phrase(celda1, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Permiso String celda2 = Permiso; celdaNombre.setPhrase(new Phrase(celda2, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Vacacion String celda3 = Vacaciones; celdaNombre.setPhrase(new Phrase(celda3, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); } return tabla; }
From source file:vistas.reportes.procesos.rptAsistenciaTotal.java
public void crearPdf(String nombreFile, List<String> dnis, Date fechaInicio, Date fechaFin, String oficina, String tipo, String usuario, boolean isSelectedComp, boolean isSelectedHoraM) throws IOException, DocumentException { Document documento = new Document(PageSize.A4); PdfWriter.getInstance(documento, new FileOutputStream(nombreFile)); documento.open();//from w ww .j a va 2 s. c o m Image cabecera = Image.getInstance("img/cabecera.png"); cabecera.setAlignment(1); documento.add(cabecera); String nombreGrupoOficina = ""; if (tipo == "O") { nombreGrupoOficina = "DEPENDENCIA: "; } else if (tipo == "G") { nombreGrupoOficina = "GRUPO HORARIO: "; } else if (tipo == "P") { nombreGrupoOficina = "DEPENDENCIA: "; } Font font = new Font(Font.HELVETICA, 10, Font.BOLD); Chunk nombreReporte = new Chunk("REPORTE DE CONTROL DE ASISTENCIA", new Font(Font.HELVETICA, 12, Font.BOLD)); Chunk labelOficina = new Chunk(nombreGrupoOficina, font); Chunk labelFechaInicio = new Chunk("FECHA INICIO: ", font); Chunk labelFechaFin = new Chunk(" FECHA FIN: ", font); //Chunk labelUsuario = new Chunk("USUARIO: ",font); Chunk nombreOficina = new Chunk(oficina, new Font(Font.HELVETICA, 10)); Chunk nombreFechaInicio = new Chunk(ReporteUtil.obtenerFechaFormateada(fechaInicio, "/").toUpperCase(), new Font(Font.HELVETICA, 10)); Chunk nombreFechaFin = new Chunk(ReporteUtil.obtenerFechaFormateada(fechaFin, "/").toUpperCase(), new Font(Font.HELVETICA, 10)); //Chunk nombreUsuario = new Chunk(usuario.toUpperCase(), new Font(Font.HELVETICA,10)); Paragraph pNombreReporte = new Paragraph(nombreReporte); pNombreReporte.setAlignment(1); documento.add(pNombreReporte); documento.add(ReporteUtil.darEspaciado(25)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelOficina, nombreOficina))); documento.add(ReporteUtil.darEspaciado(15)); if (tipo == "P") { Chunk labelDniEmpleado = new Chunk("DNI: ", font); Chunk labelNombreEmpleado = new Chunk("NOMBRE: ", font); Empleado empleado = ec.buscarPorDni(dnis.get(0)); Chunk nombreDni = new Chunk(empleado.getNroDocumento(), new Font(Font.HELVETICA, 10)); Chunk nombreEmpleado = new Chunk(empleado.getApellidoPaterno() + " " + empleado.getApellidoMaterno() + " " + empleado.getNombre(), new Font(Font.HELVETICA, 10)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelNombreEmpleado, nombreEmpleado))); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelDniEmpleado, nombreDni))); documento.add(ReporteUtil.darEspaciado(15)); } documento.add(new Paragraph( ReporteUtil.unirChunks(labelFechaInicio, nombreFechaInicio, labelFechaFin, nombreFechaFin))); documento.add(ReporteUtil.darEspaciado(15)); //documento.add(new Paragraph(ReporteUtil.unirChunks(labelFechaFin,nombreFechaFin))); //documento.add(ReporteUtil.darEspaciado(15)); //documento.add(new Paragraph(ReporteUtil.unirChunks(labelUsuario,nombreUsuario))); documento.add(ReporteUtil.darEspaciado(20)); PdfPTable tabla = new rptAsistenciaTotal().crearTabla(dnis, fechaInicio, fechaFin, isSelectedComp, isSelectedHoraM, tipo); documento.add(tabla); documento.close(); try { File path = new File(nombreFile); Desktop.getDesktop().open(path); } catch (IOException ex) { ex.printStackTrace(); } }
From source file:vistas.reportes.procesos.rptAsistenciaTotal.java
public PdfPTable crearTabla(List<String> dnis, Date fechaInicio, Date fechaFin, boolean isSelectedComp, boolean isSelectedHoraM, String tipo) throws DocumentException { /**/*ww w.j a va2s . c o m*/ * Procesamiento para info para generar tablas */ /** * Procesamiento para elaborar tabla con datos */ int nroColumnas; if (isSelectedComp) { nroColumnas = 9; } else { nroColumnas = 8; } if (tipo == "P") { nroColumnas -= 2; } //int nroColumnas = 8; PdfPTable tabla = new PdfPTable(nroColumnas); tabla.setWidthPercentage(100); //Asignamos los tamaos a las columnas //MOdifique para tomar en cuenta la nueva columna de dewscuento int[] widthColumna = new int[nroColumnas]; if (tipo == "P") { widthColumna[0] = 1; widthColumna[1] = 1; widthColumna[2] = 1; widthColumna[3] = 1; widthColumna[4] = 2; widthColumna[5] = 1; if (isSelectedComp) { widthColumna[6] = 1; } } else { widthColumna[0] = 1; widthColumna[1] = 4; widthColumna[2] = 1; widthColumna[3] = 1; widthColumna[4] = 1; widthColumna[5] = 1; widthColumna[6] = 2; widthColumna[7] = 1; if (isSelectedComp) { widthColumna[8] = 1; } } tabla.setWidths(widthColumna); //Definimos celdas iniciales Font fontCabecera = new Font(Font.HELVETICA, 8, Font.BOLD); Font fontCelda = new Font(Font.HELVETICA, 7); // HeaderFooter cabecera = new HeaderFooter(new Phrase("This is a header."), false); // cabecera. if (tipo != "P") { PdfPCell h0 = new PdfPCell(new Phrase("DNI", fontCabecera)); h0.setHorizontalAlignment(1); h0.setGrayFill(0.7f); h0.setColspan(1); tabla.addCell(h0); PdfPCell h1 = new PdfPCell(new Phrase("NOMBRE EMPLEADO", fontCabecera)); h1.setHorizontalAlignment(1); h1.setGrayFill(0.7f); h1.setColspan(1); tabla.addCell(h1); } PdfPCell h2 = new PdfPCell(new Phrase("FECHA", fontCabecera)); h2.setHorizontalAlignment(1); h2.setGrayFill(0.7f); h2.setColspan(1); tabla.addCell(h2); PdfPCell h3 = new PdfPCell(new Phrase("MARC. ENTR.", fontCabecera)); h3.setHorizontalAlignment(1); h3.setGrayFill(0.7f); h3.setColspan(1); tabla.addCell(h3); PdfPCell h4 = new PdfPCell(new Phrase("MARC. SAL.", fontCabecera)); h4.setHorizontalAlignment(1); h4.setGrayFill(0.7f); h4.setColspan(1); tabla.addCell(h4); PdfPCell h5 = new PdfPCell(new Phrase("ESTADO", fontCabecera)); h5.setHorizontalAlignment(1); h5.setGrayFill(0.7f); h5.setColspan(1); tabla.addCell(h5); PdfPCell h6 = new PdfPCell(new Phrase("OBSERV.", fontCabecera)); h6.setHorizontalAlignment(1); h6.setGrayFill(0.7f); h6.setColspan(1); tabla.addCell(h6); PdfPCell h7 = new PdfPCell(new Phrase("PER. VAC", fontCabecera)); h7.setHorizontalAlignment(1); h7.setGrayFill(0.7f); h7.setColspan(1); tabla.addCell(h7); if (isSelectedComp) { PdfPCell h8 = new PdfPCell(new Phrase("COMPENSA", fontCabecera)); h8.setHorizontalAlignment(1); h8.setGrayFill(0.7f); h8.setColspan(1); tabla.addCell(h8); } //Hacemos que la primera fila sea la cabecera tabla.setHeaderRows(1); /** * Procesamiento de los datos para generar los registros de la entrada */ Calendar calC = Calendar.getInstance(); for (String dni : dnis) { Calendar iterador = Calendar.getInstance(); iterador.setTime(fechaInicio); while (iterador.getTime().compareTo(fechaFin) <= 0) { Date fecha = iterador.getTime(); //Descartar si es sabado o domingo System.out.println("Dni: " + dni + " Fecha: " + fecha.toString()); Empleado empleado = ec.buscarPorDni(dni); boolean isFeriado = false; String feriado = ""; //Para inicio de contrato if (empleado.getFechaInicioContrato().compareTo(fecha) <= 0) { System.out.println("OK"); } else { iterador.add(Calendar.DATE, 1); continue; } /** * Generacion de permiso por onomastico */ if (isOnosmatico(fecha, empleado)) { Calendar fechaPermisoOno = Calendar.getInstance(); fechaPermisoOno.setTime(fecha); while (fc.buscarXDia(fechaPermisoOno.getTime()) != null) { fechaPermisoOno.add(Calendar.DATE, 1); } while (!ReporteUtil.isDiaLaboral(fechaPermisoOno.getTime())) { fechaPermisoOno.add(Calendar.DATE, 1); } if (ReporteUtil.isDiaLaboral(fechaPermisoOno.getTime())) { //busca onomastico if (aspc.buscarXDiaOnosmatico(dni, fechaPermisoOno.getTime()) != null) { System.out.println("Hay cumpleaosd d_d"); } else { System.out.println("Crear Cumple"); crearOnomastico(fechaPermisoOno.getTime(), empleado); } } } else { System.out.println("No cumple"); } if (!ReporteUtil.isDiaLaboral(fecha)) { iterador.add(Calendar.DATE, 1); continue; } if (fc.buscarXDia(fecha) != null) { isFeriado = true; feriado = fc.buscarXDia(fecha).getNombre(); } //Marcaciones del dia a procesar List<Marcacion> marcaciones = mc.buscarXFecha(dni, fecha); String Asistencia = ""; String Permiso = ""; String Vacaciones = ""; String marcacion = ""; String marcacion2 = ""; String condicion = ""; String compensacion = ""; Marcacion primeraMarcacion = new Marcacion(); Marcacion ultimaMarcacion = new Marcacion(); List<EmpleadoOpcionInfo> infoEmpleado = eoc.buscarTodos(Integer.parseInt(dni)); if (!infoEmpleado.isEmpty()) { if (infoEmpleado.get(0).getSFieldValue5().equals("0") || infoEmpleado.get(0).getSFieldValue5().equals("") || infoEmpleado.get(0).getSFieldValue5().equals(" ")) { condicion = "NORMAL"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("1")) { condicion = "Exonerado"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("2")) { condicion = "Designado"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("3")) { condicion = "Otra sede"; } } else { condicion = "Sin dato"; } System.out.println("Condicion: " + condicion); //Datos de horario, jornada, empleado List<DetalleGrupoHorario> detallesGrupos = dc.buscarXEmpleado(empleado); if (condicion.equals("NORMAL")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); if (marcaciones.size() > 1) { ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); marcacion2 = ultimaMarcacion.getHora().toString(); } else { marcacion2 = "---"; } //ultimaMarcacion = marcaciones.get(marcaciones.size()-1); /** *Codigo para el manejo de asignaciones de horario */ if (!detallesGrupos.isEmpty()) { DetalleGrupoHorario detalleGrupoEmpleado = detallesGrupos.get(0); List<AsignacionHorario> asignaciones = ashc .buscarXGrupo(detalleGrupoEmpleado.getGrupoHorario()); //List<AsignacionHorario> asignacionesHorario = ashc.bus List<AsignacionHorario> asignacionesHorarios = ashc.buscarXEmpleadosXAll(dni, fecha); //Declaramos la variable asighorario q usaremos /** * Vemos si tiene una asignacion horario en particular para asignar la jornada q le corresponde, sino la tiene se asigna la jornada por * defecto del grupo horario general */ AsignacionHorario asignacionEmpleado; if (!asignacionesHorarios.isEmpty()) { asignacionEmpleado = asignacionesHorarios.get(0); } else { asignacionEmpleado = asignaciones.get(0); } //AsignacionHorario asignacionEmpleado = asignaciones.get(0); Horario horarioEmpleado = asignacionEmpleado.getHorario(); Jornada jornadaEmpleado = horarioEmpleado.getJornada(); //Validacion de asistencia if (ultimaMarcacion.getHora() != null) { if (!isSelectedHoraM) { marcacion2 = jornadaEmpleado.getTurnoHS().toString(); } if (primeraMarcacion.getHora().compareTo(ultimaMarcacion.getHora()) < 0) { if ((primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHE()) == 0 || primeraMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHE()) < 0) && (ultimaMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHS()) == 0 || ultimaMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHS()) > 0)) { Asistencia = " "; //marcacion2 = jornadaEmpleado.getTurnoHS().toString(); } else if (primeraMarcacion.getHora() .compareTo(jornadaEmpleado.getTardanzaHE()) < 0 && primeraMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHE()) > 0) { Asistencia = "TARDANZA"; //marcacion2 = jornadaEmpleado.getTurnoHS().toString(); } else if (primeraMarcacion.getHora() .compareTo(jornadaEmpleado.getTardanzaHE()) > 0 && ultimaMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHS()) < 0) { Asistencia = "FALTA"; //Cambio hasta tener directiva //Asistencia = "TARDANZA"; } else if (primeraMarcacion.getHora() .compareTo(jornadaEmpleado.getTardanzaHE()) < 0 && ultimaMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHS()) < 0) { System.out.println("Hora de salida jornada: " + jornadaEmpleado.getTurnoHS().toString()); Asistencia = "FALTA"; //Cambio hasta tener directiva //Asistencia = "TARDANZA"; } else if (primeraMarcacion.getHora() .compareTo(jornadaEmpleado.getTardanzaHE()) < 0 && ultimaMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHS()) > 0) { //Asistencia = "Falta"; //Cambio hasta tener directiva Asistencia = "TARDANZA"; //marcacion2 = jornadaEmpleado.getTurnoHS().toString(); } else if (primeraMarcacion.getHora() .compareTo(jornadaEmpleado.getTardanzaHE()) > 0 && ultimaMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHS()) > 0) { //Asistencia = "Falta"; //Cambio hasta tener directiva Asistencia = "TARDANZA"; //marcacion2 = jornadaEmpleado.getTurnoHS().toString(); } //Para la compensacion if (isSelectedComp) { if (ultimaMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHS()) > 0) { calC.setTime(ultimaMarcacion.getHora()); int horaUM = calC.get(Calendar.HOUR_OF_DAY); int minUM = calC.get(Calendar.MINUTE); calC.setTime(jornadaEmpleado.getTurnoHS()); int horaHS = calC.get(Calendar.HOUR_OF_DAY); int minHS = calC.get(Calendar.MINUTE); System.out.println("Horas: " + " " + horaUM + " " + minUM + " " + horaHS + " " + minHS); if (horaUM > horaHS) { if (minUM > minHS) { compensacion = "" + (horaUM - horaHS) + " H"; } else { compensacion = (horaUM - (horaHS + 1)) + " H"; } } else { compensacion = "0 H"; } } } } else { Asistencia = "FALTA"; } } else { Asistencia = "FALTA"; } if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHS()) >= 0) { marcacion2 = primeraMarcacion.getHora().toString(); marcacion = "---"; } else { marcacion = primeraMarcacion.getHora().toString(); } } else { Asistencia = "No tiene grupo horario"; } } else { marcacion = "---"; marcacion2 = "---"; Asistencia = "FALTA"; } } else if (condicion.equals("Exonerado")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); //marcacion = primeraMarcacion.getHora().toString(); //marcacion2 = ultimaMarcacion.getHora().toString(); marcacion = "---"; marcacion2 = "---"; Asistencia = condicion.toUpperCase(); } else { marcacion = "---"; marcacion2 = "---"; Asistencia = condicion.toUpperCase(); } } else if (condicion.equals("Designado")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); //marcacion = primeraMarcacion.getHora().toString(); //marcacion2 = ultimaMarcacion.getHora().toString(); marcacion = "---"; marcacion2 = "---"; Asistencia = condicion.toUpperCase(); } else { marcacion = "---"; marcacion2 = "---"; Asistencia = condicion.toUpperCase(); } } else if (condicion.equals("Otra sede")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); //marcacion = primeraMarcacion.getHora().toString(); //marcacion2 = ultimaMarcacion.getHora().toString(); marcacion = "---"; marcacion2 = "---"; Asistencia = condicion.toUpperCase(); } else { marcacion = "---"; marcacion2 = "---"; Asistencia = condicion.toUpperCase(); } } else { marcacion = "---"; marcacion2 = "---"; Asistencia = "Condicin sin especificar".toUpperCase(); } //Validacion de permiso //Procesar permisos con horas tbm si no encuentra permisos por fechas AsignacionPermiso asignacionPermisoEmpleadoDia = aspc.buscarXDia(dni, fecha); Calendar horaESinCero = Calendar.getInstance(); Calendar horaFSinCero = Calendar.getInstance(); if (primeraMarcacion.getHora() != null) { horaESinCero.setTime(primeraMarcacion.getHora()); horaESinCero.set(Calendar.SECOND, 0); } if (ultimaMarcacion.getHora() != null) { horaFSinCero.setTime(ultimaMarcacion.getHora()); horaFSinCero.set(Calendar.SECOND, 0); } AsignacionPermiso asigPerEntrada = aspc.buscarOnlyHora(dni, horaESinCero.getTime(), fecha); AsignacionPermiso asigPerSalida = aspc.buscarOnlyHora(dni, horaFSinCero.getTime(), fecha); if (asignacionPermisoEmpleadoDia != null) { Permiso = asignacionPermisoEmpleadoDia.getPermiso().getDocumento().toUpperCase(); Asistencia = asignacionPermisoEmpleadoDia.getPermiso().getTipoPermiso().getNombre() .toUpperCase(); } else if (asigPerEntrada != null) { Permiso = asigPerEntrada.getPermiso().getDocumento().toUpperCase(); Asistencia = asigPerEntrada.getPermiso().getTipoPermiso().getNombre().toLowerCase(); } else if (asigPerSalida != null) { Permiso = asigPerSalida.getPermiso().getDocumento().toUpperCase(); Asistencia = asigPerSalida.getPermiso().getTipoPermiso().getNombre().toUpperCase(); } else { Permiso = ""; } //Validacion de Vacaciones Vacacion vacacionEmpleado = vc.buscarXDia(dni, fecha); if (vacacionEmpleado != null) { Vacaciones = ReporteUtil.obtenerFechaDiaMes(vacacionEmpleado.getFechaInicio()) + " al " + ReporteUtil.obtenerFechaDiaMes(vacacionEmpleado.getFechaFin()); Asistencia = "VACACIONES"; Permiso = vacacionEmpleado.getDocumento().toUpperCase(); } else { Vacaciones = ""; } if (isFeriado) { Asistencia = feriado; } PdfPCell celdaNombre = new PdfPCell(new Phrase(empleado.getNroDocumento(), fontCelda)); celdaNombre.setMinimumHeight(15f); if (tipo != "P") { //DNI celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Nombre String celda0 = empleado.getApellidoPaterno() + " " + empleado.getApellidoMaterno() + " " + empleado.getNombre(); celdaNombre.setPhrase(new Phrase(celda0, fontCelda)); celdaNombre.setHorizontalAlignment(0); tabla.addCell(celdaNombre); } //Fecha String celdaA = ReporteUtil.obtenerFechaFormateada(fecha, "/"); celdaNombre.setPhrase(new Phrase(celdaA, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Hora Marcacion de entrada String celda = marcacion; celdaNombre.setPhrase(new Phrase(celda, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Hora Marcacion de Salida String celdaM = marcacion2; celdaNombre.setPhrase(new Phrase(celdaM, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Asistencia String celda1 = Asistencia; celdaNombre.setPhrase(new Phrase(celda1, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Permiso String celda2 = Permiso; celdaNombre.setPhrase(new Phrase(celda2, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Vacacion String celda3 = Vacaciones; celdaNombre.setPhrase(new Phrase(celda3, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Compensacion if (isSelectedComp) { String celda4 = compensacion; celdaNombre.setPhrase(new Phrase(celda4, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); } iterador.add(Calendar.DATE, 1); } } return tabla; }
From source file:vistas.reportes.procesos.rptFaltas.java
public void crearPdf(String nombreFile, List<String> dnis, Date fechaInicio, Date fechaFin, String oficina, String tipo, String usuario) throws IOException, DocumentException { Document documento = new Document(PageSize.A4); PdfWriter.getInstance(documento, new FileOutputStream(nombreFile)); documento.open();/*w w w.jav a 2 s. co m*/ String nombreGrupoOficina = ""; if (tipo == "O") { nombreGrupoOficina = "OFICINA: "; } else { nombreGrupoOficina = "GRUPO HORARIO: "; } Font font = new Font(Font.HELVETICA, 10, Font.BOLD); Chunk nombreReporte = new Chunk("REPORTE DE FALTAS", font); Chunk labelOficina = new Chunk(nombreGrupoOficina, font); Chunk labelFechaInicio = new Chunk("FECHA INICIO: ", font); Chunk labelFechaFin = new Chunk("FECHA FIN: ", font); Chunk labelUsuario = new Chunk("USUARIO: ", font); Chunk nombreOficina = new Chunk(oficina, new Font(Font.HELVETICA, 10)); Chunk nombreFechaInicio = new Chunk(ReporteUtil.obtenerFechaFormateada(fechaInicio, "/").toUpperCase(), new Font(Font.HELVETICA, 10)); Chunk nombreFechaFin = new Chunk(ReporteUtil.obtenerFechaFormateada(fechaFin, "/").toUpperCase(), new Font(Font.HELVETICA, 10)); Chunk nombreUsuario = new Chunk(usuario.toUpperCase(), new Font(Font.HELVETICA, 10)); documento.add(new Paragraph(nombreReporte)); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelOficina, nombreOficina))); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelFechaInicio, nombreFechaInicio))); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelFechaFin, nombreFechaFin))); documento.add(ReporteUtil.darEspaciado(15)); documento.add(new Paragraph(ReporteUtil.unirChunks(labelUsuario, nombreUsuario))); documento.add(ReporteUtil.darEspaciado(20)); PdfPTable tabla = new rptFaltas().crearTabla(dnis, fechaInicio, fechaFin); documento.add(tabla); documento.close(); try { File path = new File(nombreFile); Desktop.getDesktop().open(path); } catch (IOException ex) { ex.printStackTrace(); } }
From source file:vistas.reportes.procesos.rptFaltas.java
public PdfPTable crearTabla(List<String> dnis, Date fechaInicio, Date fechaFin) throws DocumentException { /**// www.j a va2 s .c o m * Procesamiento para info para generar tablas */ Calendar fechaInicioC = Calendar.getInstance(); Calendar fechaFinC = Calendar.getInstance(); fechaInicioC.setTime(fechaInicio); fechaFinC.setTime(fechaFin); int diaMesInicio, diaMesFin; diaMesInicio = fechaInicioC.get(Calendar.DAY_OF_MONTH); diaMesFin = fechaFinC.get(Calendar.DAY_OF_MONTH); // Dias contados desde un inicio y fin fecha ArrayList<Integer> listaInt = new ArrayList<>(); for (int i = diaMesInicio; i <= diaMesFin; i++) { listaInt.add(i); } //Ordenamos arraylist int indice, menor, aux; for (int i = 0; i < listaInt.size(); i++) { menor = listaInt.get(i); indice = i; aux = 0; for (int j = i + 1; j < listaInt.size(); j++) { aux = listaInt.get(j); indice = aux < menor ? j : indice; menor = aux < menor ? aux : menor; } listaInt.set(indice, listaInt.get(i)); listaInt.set(i, menor); } /** * Procesamiento para elaborar tabla con datos */ int nroColumnas = 3; PdfPTable tabla = new PdfPTable(nroColumnas); tabla.setWidthPercentage(100); //Asignamos los tamaos a las columnas //MOdifique para tomar en cuenta la nueva columna de dewscuento int[] widthColumna = new int[nroColumnas]; widthColumna[0] = 1; widthColumna[1] = 5; widthColumna[2] = 1; //widthColumna[8]=1; tabla.setWidths(widthColumna); //Definimos celdas iniciales Font fontCabecera = new Font(Font.HELVETICA, 8, Font.BOLD); Font fontCelda = new Font(Font.HELVETICA, 7); // HeaderFooter cabecera = new HeaderFooter(new Phrase("This is a header."), false); // cabecera. PdfPCell h0 = new PdfPCell(new Phrase("DNI", fontCabecera)); h0.setHorizontalAlignment(1); h0.setGrayFill(0.7f); h0.setColspan(1); tabla.addCell(h0); PdfPCell h1 = new PdfPCell(new Phrase("NOMBRE EMPLEADO", fontCabecera)); h1.setHorizontalAlignment(1); h1.setGrayFill(0.7f); h1.setColspan(1); tabla.addCell(h1); PdfPCell h2 = new PdfPCell(new Phrase("FECHA", fontCabecera)); h2.setHorizontalAlignment(1); h2.setGrayFill(0.7f); h2.setColspan(1); tabla.addCell(h2); // PdfPCell h8 = new PdfPCell(new Phrase("COMPENSA",fontCabecera)); // h8.setHorizontalAlignment(1); // h8.setGrayFill(0.7f); // h8.setColspan(1); // tabla.addCell(h8); // tabla.setHeaderRows(1); /** * Procesamiento de los datos para generar los registros de la entrada */ Calendar cal = Calendar.getInstance(); Calendar calC = Calendar.getInstance(); for (String dni : dnis) { //cal.setTime(fechaInicio); for (int i = 0; i < listaInt.size(); i++) { cal.setTime(fechaInicio); int diaMarcacion = cal.get(Calendar.DAY_OF_MONTH) + i; System.out.println("Iterador: " + i + " Dni: " + dni); cal.set(Calendar.DAY_OF_MONTH, diaMarcacion); //Descartar si es sabado o domingo if (!ReporteUtil.isDiaLaboral(cal.getTime())) { continue; } //Marcaciones del dia a procesar List<Marcacion> marcaciones = mc.buscarXFecha(dni, cal.getTime()); String Asistencia = ""; String Permiso = ""; String Vacaciones = ""; String marcacion = ""; String marcacion2 = ""; String condicion = ""; String compensacion = ""; Marcacion primeraMarcacion = new Marcacion(); Marcacion ultimaMarcacion = new Marcacion(); Empleado empleado = ec.buscarPorDni(dni); List<EmpleadoOpcionInfo> infoEmpleado = eoc.buscarTodos(Integer.parseInt(dni)); if (!infoEmpleado.isEmpty()) { if (infoEmpleado.get(0).getSFieldValue5().equals("0") || infoEmpleado.get(0).getSFieldValue5().equals("") || infoEmpleado.get(0).getSFieldValue5().equals(" ")) { condicion = "NORMAL"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("1")) { condicion = "Exonerado"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("2")) { condicion = "Designado"; } else if (infoEmpleado.get(0).getSFieldValue5().equals("3")) { condicion = "Otra sede"; } } else { condicion = "Sin dato"; } System.out.println("Condicion: " + condicion); //Datos de horario, jornada, empleado List<DetalleGrupoHorario> detallesGrupos = dc.buscarXEmpleado(empleado); if (condicion.equals("NORMAL")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); marcacion = primeraMarcacion.getHora().toString(); marcacion2 = ultimaMarcacion.getHora().toString(); if (!detallesGrupos.isEmpty()) { DetalleGrupoHorario detalleGrupoEmpleado = detallesGrupos.get(0); List<AsignacionHorario> asignaciones = ashc .buscarXGrupo(detalleGrupoEmpleado.getGrupoHorario()); AsignacionHorario asignacionEmpleado = asignaciones.get(0); Horario horarioEmpleado = asignacionEmpleado.getHorario(); Jornada jornadaEmpleado = horarioEmpleado.getJornada(); //Validacion de asistencia if (primeraMarcacion.getHora().compareTo(ultimaMarcacion.getHora()) < 0) { if ((primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHE()) == 0 || primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHE()) < 0) && (ultimaMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHS()) == 0 || ultimaMarcacion.getHora() .compareTo(jornadaEmpleado.getTurnoHS()) > 0)) { Asistencia = "Asistencia Normal"; marcacion2 = jornadaEmpleado.getTurnoHS().toString(); continue; } else if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTardanzaHE()) < 0 && primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHE()) > 0) { Asistencia = "Tardanza"; marcacion2 = jornadaEmpleado.getTurnoHS().toString(); continue; //Marco falta en entrada y marco antes de tiempo salida } else if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTardanzaHE()) > 0 && ultimaMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHS()) < 0) { Asistencia = "Falta"; continue; //Marco tarde entrada y marco antes de tiempo salida } else if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTardanzaHE()) < 0 && ultimaMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHS()) < 0) { Asistencia = "Falta"; continue; //Marco tarde entrada y marco antes de tiempo salida?? } else if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTardanzaHE()) < 0 && ultimaMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHS()) > 0) { Asistencia = "Falta"; marcacion2 = jornadaEmpleado.getTurnoHS().toString(); continue; //Marco falta en la entrada y marco antes de tiempo salida } else if (primeraMarcacion.getHora().compareTo(jornadaEmpleado.getTardanzaHE()) > 0 && ultimaMarcacion.getHora().compareTo(jornadaEmpleado.getTurnoHS()) > 0) { Asistencia = "Falta"; marcacion2 = jornadaEmpleado.getTurnoHS().toString(); continue; } } else { Asistencia = "Falta"; } } else { Asistencia = "No tiene grupo horario"; if (primeraMarcacion.getHora().compareTo(ultimaMarcacion.getHora()) < 0) { continue; } } } else { marcacion = "---"; marcacion2 = "---"; Asistencia = "Falta"; } } else if (condicion.equals("Exonerado")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); //marcacion = primeraMarcacion.getHora().toString(); //marcacion2 = ultimaMarcacion.getHora().toString(); marcacion = "---"; marcacion2 = "---"; Asistencia = condicion; } else { marcacion = "---"; marcacion2 = "---"; Asistencia = condicion; } break; } else if (condicion.equals("Designado")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); //marcacion = primeraMarcacion.getHora().toString(); //marcacion2 = ultimaMarcacion.getHora().toString(); marcacion = "---"; marcacion2 = "---"; Asistencia = condicion; } else { marcacion = "---"; marcacion2 = "---"; Asistencia = condicion; } break; } else if (condicion.equals("Otra sede")) { if (!marcaciones.isEmpty()) { primeraMarcacion = marcaciones.get(0); ultimaMarcacion = marcaciones.get(marcaciones.size() - 1); //marcacion = primeraMarcacion.getHora().toString(); //marcacion2 = ultimaMarcacion.getHora().toString(); marcacion = "---"; marcacion2 = "---"; Asistencia = condicion; } else { marcacion = "---"; marcacion2 = "---"; Asistencia = condicion; } break; } else { marcacion = "---"; marcacion2 = "---"; Asistencia = "Condicin sin especificar"; } //Validacion de permiso //Procesar permisos con horas tbm si no encuentra permisos por fechas AsignacionPermiso asignacionPermisoEmpleadoDia = aspc.buscarXDia(dni, cal.getTime()); Calendar horaESinCero = Calendar.getInstance(); Calendar horaFSinCero = Calendar.getInstance(); if (primeraMarcacion.getHora() != null) { horaESinCero.setTime(primeraMarcacion.getHora()); horaESinCero.set(Calendar.SECOND, 0); } if (ultimaMarcacion.getHora() != null) { horaFSinCero.setTime(ultimaMarcacion.getHora()); horaFSinCero.set(Calendar.SECOND, 0); } AsignacionPermiso asigPerEntrada = aspc.buscarOnlyHora(dni, horaESinCero.getTime(), cal.getTime()); AsignacionPermiso asigPerSalida = aspc.buscarOnlyHora(dni, horaFSinCero.getTime(), cal.getTime()); if (asignacionPermisoEmpleadoDia != null) { Permiso = asignacionPermisoEmpleadoDia.getPermiso().getTipoPermiso().getNombre().toLowerCase(); Asistencia = "Permiso"; continue; } else if (asigPerEntrada != null) { Permiso = asigPerEntrada.getPermiso().getTipoPermiso().getNombre().toLowerCase(); Asistencia = "Permiso"; continue; } else if (asigPerSalida != null) { Permiso = asigPerSalida.getPermiso().getTipoPermiso().getNombre().toLowerCase(); Asistencia = "Permiso"; continue; } else { Permiso = ""; } //Validacion de Vacaciones Vacacion vacacionEmpleado = vc.buscarXDia(dni, cal.getTime()); if (vacacionEmpleado != null) { Vacaciones = ReporteUtil.obtenerFechaDiaMes(vacacionEmpleado.getFechaInicio()) + " al " + ReporteUtil.obtenerFechaDiaMes(vacacionEmpleado.getFechaFin()); Asistencia = "Vacaciones"; continue; } else { Vacaciones = ""; } //DNI PdfPCell celdaNombre = new PdfPCell(new Phrase(empleado.getNroDocumento(), fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); //Nombre String celda0 = empleado.getApellidoPaterno() + " " + empleado.getApellidoMaterno() + " " + empleado.getNombre(); celdaNombre.setPhrase(new Phrase(celda0, fontCelda)); celdaNombre.setHorizontalAlignment(0); tabla.addCell(celdaNombre); //Fecha String celdaA = ReporteUtil.obtenerFechaFormateada(cal.getTime(), "/"); celdaNombre.setPhrase(new Phrase(celdaA, fontCelda)); celdaNombre.setHorizontalAlignment(1); tabla.addCell(celdaNombre); } } return tabla; }