private void cargarInformacion() { newObject = equipoHospitalarioBean.getAllRelations(selectEquipos.get(0).getId()); mantenimientoEquipo = mantenimientoEquipoBean.getAll(newObject); adquisicionEquipo = newObject.getAdquisicionEquipo(); infoTecnica = newObject.getInfoTecnica(); estadoEquipo = newObject.getEstadoEquipo(); funcionamientoEquipo = newObject.getFuncionamientoEquipo(); planosEquipo = newObject.getPlanosEquipo(); manualesEquipo = newObject.getManualesEquipo(); recomendacionesEquipo = newObject.getRecomendacionesEquipo(); for (TipoManteEquipo element : newObject.getManteEquipo()) { if (element.getTipoMantenimiento().equals(TipoMantenimiento.PREVENTIVO)) { tipoManteEquipoPre = element; // Propio es TRUE if (tipoManteEquipoPre.getTipoContrato() == Boolean.TRUE) { tipoManteEquipoPre.setValor("Propio"); } else { tipoManteEquipoPre.setValor("Contratado"); } } else { tipoManteEquipoCorr = element; // Propio es TRUE if (tipoManteEquipoCorr.getTipoContrato() == Boolean.TRUE) { tipoManteEquipoCorr.setValor("Propio"); } else { tipoManteEquipoCorr.setValor("Contratado"); } } } if (newObject.getFotoEquipo() != null) { nombreFoto = "Ya existe un archivo cargado"; } listaEmpresa = new ArrayList<Empresa>(); listaEmpresa.add(newObject.getEmpresa()); }
/** * Método encargado de llenar los datos necesarios para la generación del archivo JasperPrint. * * @throws Exception Se genera cuando ocurre un error al generar el JasperPrint del reporte. */ public void generarJasperPrint() { try { cargarInformacion(); HashMap<String, Object> parametros = new HashMap<String, Object>(); // pie de pagina parametros.put("direccion_empresa", reporteList.get(ReporteConstants.DIRECCION)); parametros.put("telefonos_empresa", reporteList.get(ReporteConstants.TELEFONOS)); parametros.put("email_empresa", reporteList.get(ReporteConstants.EMAIL)); parametros.put("web_empresa", reporteList.get(ReporteConstants.WEB)); // Datos Generales parametros.put("nombre_equipo", newObject.getNombreEquipo()); parametros.put("marca_equipo", newObject.getMarca()); parametros.put("modelo_equipo", newObject.getModelo()); parametros.put("inventario_equipo", newObject.getNumInventario()); parametros.put("ubicacion_equipo", newObject.getUbicacion()); parametros.put("fabricante_equipo", newObject.getFabricante()); parametros.put("representante_equipo", newObject.getRepresentanteCol()); parametros.put("direccion", newObject.getDireccion()); parametros.put("telefono", newObject.getTelefono()); // Informacion Tecnica parametros.put("voltaje", infoTecnica.getVoltaje() + " V."); parametros.put("potencia", infoTecnica.getPotencia() + " Kw."); parametros.put("capacidad_teorica", infoTecnica.getCapacidadTeorica()); parametros.put("capacidad_practica", infoTecnica.getCapacidadPractica()); parametros.put("instalaciones", infoTecnica.getInstalaciones()); parametros.put("frecuencia", infoTecnica.getFrecuencia() + " Hz"); parametros.put("tecnologia", infoTecnica.getTecnologia()); parametros.put("insumos", infoTecnica.getInsumos()); // Propiedad, adquisicion y garantia parametros.put("fecha_adquisicion", adquisicionEquipo.getFechaAdquisicion()); parametros.put("fecha_instalacion", adquisicionEquipo.getFechaInstalacion()); parametros.put("anios_operacion", adquisicionEquipo.getAniosOperacion()); parametros.put("propiedad", adquisicionEquipo.getPropiedadEquipo()); parametros.put("anios_fuera_servicio", adquisicionEquipo.getAniosFueraServicio()); parametros.put("razon", adquisicionEquipo.getRazon()); parametros.put("garantia", adquisicionEquipo.getGarantia()); parametros.put("periodo_garantia", adquisicionEquipo.getPeridoGarantia()); parametros.put("cubrimiento_garantia", adquisicionEquipo.getCubrimientoGarantia()); parametros.put("clasificacion_decreto", adquisicionEquipo.getClasificacionDecreto()); parametros.put("calibracion", adquisicionEquipo.getCalibracionTipo()); // Planos parametros.put( "si_instalacion", planosEquipo.getInstalacionConfirmar() != null && planosEquipo.getInstalacionConfirmar() ? "SI" : "NO"); parametros.put( "si_partes", planosEquipo.getPartesConfirmar() != null && planosEquipo.getPartesConfirmar() ? "SI" : "NO"); parametros.put( "si_funcionamiento", planosEquipo.getFuncionamientoConfirmar() != null && planosEquipo.getFuncionamientoConfirmar() ? "SI" : "NO"); parametros.put("instalacion_ubicacion", planosEquipo.getInstalacionUbicacion()); parametros.put("partes_ubicacion", planosEquipo.getPartesUbicacion()); parametros.put("funcionamiento_ubicacion", planosEquipo.getFuncionamientoUbicacion()); // Manuales parametros.put( "si_tecnico", manualesEquipo.getTecnicoConfirmar() != null && manualesEquipo.getTecnicoConfirmar() ? "SI" : "NO"); parametros.put( "si_servicio", manualesEquipo.getServicioConfirmar() != null && manualesEquipo.getServicioConfirmar() ? "SI" : "NO"); parametros.put( "si_usuario", manualesEquipo.getUsuarioConfirmar() != null && manualesEquipo.getUsuarioConfirmar() ? "SI" : "NO"); parametros.put("tecnico_ubicacion", manualesEquipo.getTecnicoUbicacion()); parametros.put("servicio_ubicacion", manualesEquipo.getServicioUbicacion()); parametros.put("usuario_ubicacion", manualesEquipo.getUsuarioUbicacion()); // Recomendaciones parametros.put("recomendaciones", recomendacionesEquipo.getDetalle()); // Estado parametros.put("estado", estadoEquipo.getEstadoConfirmar()); parametros.put("causas_estado", estadoEquipo.getCausa()); // Funcionamiento parametros.put("estado_funcionamiento", funcionamientoEquipo.getFuncionamientoConfirmar()); parametros.put( "fuera_servicio", funcionamientoEquipo.getFueraServicio() != null && funcionamientoEquipo.getFueraServicio() ? "SI" : "NO"); parametros.put("anios_fuera_servicios", funcionamientoEquipo.getAnioFueraServicio()); parametros.put("causas_funcionamiento", funcionamientoEquipo.getCausa()); // Tipo Mantenimiento if (tipoManteEquipoPre.getTipoContrato() != null && tipoManteEquipoPre.getTipoContrato()) { parametros.put("preventivo_propio", "X"); } else { parametros.put("preventivo_contratado", "X"); } if (tipoManteEquipoCorr.getTipoContrato() != null && tipoManteEquipoCorr.getTipoContrato()) { parametros.put("correctivo_propio", "X"); } else { parametros.put("correctivo_contratado", "X"); } parametros.put("preventivo_cual", tipoManteEquipoPre.getCual()); parametros.put("correctivo_cual", tipoManteEquipoCorr.getCual()); // Imagen if (newObject.getFotoEquipo() != null && newObject.getFotoEquipo().length > 0) { InputStream in = new ByteArrayInputStream(newObject.getFotoEquipo()); parametros.put("imagen", new BufferedInputStream(in)); } // Lista de mantenimiento ReporteDTO reportee = new ReporteDTO(); List<ReporteDTO> listaReporte = new ArrayList<ReporteDTO>(); List<RegistroActividadesDTO> listaRegistro = new ArrayList<RegistroActividadesDTO>(); if (mantenimientoEquipo != null && !mantenimientoEquipo.isEmpty()) { for (MantenimientoEquipo mantenimiento : mantenimientoEquipo) { RegistroActividadesDTO registroActividadesDTO = new RegistroActividadesDTO(); registroActividadesDTO.setDanio(mantenimiento.getDanioFalla()); registroActividadesDTO.setFecha( FechaUtils.formatearfechaSinHora(mantenimiento.getFecha())); if (mantenimiento.getFirmaAprobacion() != null && mantenimiento.getFirmaAprobacion().length > 0) { InputStream in = new ByteArrayInputStream(mantenimiento.getFirmaAprobacion()); registroActividadesDTO.setFirmaAprobacion(new BufferedInputStream(in)); } if (mantenimiento.getFirmaAprobacionContrato() != null && mantenimiento.getFirmaAprobacionContrato().length > 0) { InputStream in = new ByteArrayInputStream(mantenimiento.getFirmaAprobacionContrato()); registroActividadesDTO.setFirmaContratista(new BufferedInputStream(in)); } if (mantenimiento.getFirmaAprobacionTecnico() != null && mantenimiento.getFirmaAprobacionTecnico().length > 0) { InputStream in = new ByteArrayInputStream(mantenimiento.getFirmaAprobacionTecnico()); registroActividadesDTO.setFirmaIngeniero(new BufferedInputStream(in)); } registroActividadesDTO.setNroTransaccion( ConvertidorUtils.convertirACadenas(mantenimiento.getIdTransaccion())); registroActividadesDTO.setObservaciones(mantenimiento.getObservaciones()); registroActividadesDTO.setReparacion(mantenimiento.getReparaciones()); registroActividadesDTO.setRepuesto(mantenimiento.getRepuestos()); listaRegistro.add(registroActividadesDTO); } } reportee.setListaRegistro(listaRegistro); listaReporte.add(reportee); JasperPrint jasperPrint = JasperFillManager.fillReport( obtenerPlantilla(), parametros, new JRBeanCollectionDataSource(listaReporte)); String nombreReporte = FechaUtils.formatearfechaConHoraGuion(Calendar.getInstance().getTime()) + "_" + newObject.getNombreEquipo(); enviarPDF(jasperPrint, nombreReporte); addMessage(FacesMessage.SEVERITY_INFO, "Se genero el informe"); } catch (Exception e) { addMessage(FacesMessage.SEVERITY_ERROR, "Error al generar el informe"); } }
/** * Registra un nuevo objeto en Base de datos * * @return Retorna regla de nevagacion * @throws Exception Lanza una excepcion si hay un error en la transacciòn */ public String crear() { try { if (newObject.getEmpresa() == null) { addMessage(FacesMessage.SEVERITY_ERROR, "Debe Seleccionar un Cliente"); return ""; } if (newObject.getFotoEquipo() == null) { addMessage(FacesMessage.SEVERITY_ERROR, "Debe Seleccionar una Foto para el equipo"); return ""; } else { equipoHospitalarioBean.save( recomendacionesEquipo, manualesEquipo, adquisicionEquipo, estadoEquipo, infoTecnica, funcionamientoEquipo, planosEquipo, newObject); newObject.setRecomendacionesEquipo(recomendacionesEquipo); newObject.setManualesEquipo(manualesEquipo); newObject.setAdquisicionEquipo(adquisicionEquipo); newObject.setEstadoEquipo(estadoEquipo); newObject.setInfoTecnica(infoTecnica); newObject.setFuncionamientoEquipo(funcionamientoEquipo); newObject.setPlanosEquipo(planosEquipo); // newObject.setEmpresa(listaEmpresa.get(0)); equipoHospitalarioBean.update(newObject); tipoManteEquipoCorr.setEquipoHospitalario(newObject); tipoManteEquipoCorr.setTipoMantenimiento(TipoMantenimiento.CORRECTIVO); // Propio es TRUE if (tipoManteEquipoCorr.getValor().equals("Propio")) { tipoManteEquipoCorr.setTipoContrato(Boolean.TRUE); } else { tipoManteEquipoCorr.setTipoContrato(Boolean.FALSE); } tipoManteEquipoPre.setEquipoHospitalario(newObject); tipoManteEquipoPre.setTipoMantenimiento(TipoMantenimiento.PREVENTIVO); // Propio es TRUE if (tipoManteEquipoPre.getValor().equals("Propio")) { tipoManteEquipoPre.setTipoContrato(Boolean.TRUE); } else { tipoManteEquipoPre.setTipoContrato(Boolean.FALSE); } equipoHospitalarioBean.save(tipoManteEquipoCorr, tipoManteEquipoPre); facesContext.addMessage( null, new FacesMessage( FacesMessage.SEVERITY_INFO, "Exito!", "Se guardo un registro de una Equipo hospitalario")); inicializarVariables(); busqueda(); razonSocial = ""; } return ConstantesUtil.ATRAS; } catch (Exception e) { String errorMessage = getRootErrorMessage(e); addMessage(FacesMessage.SEVERITY_ERROR, errorMessage); return ""; } }