<%@ page import="com.tarisan.control.*" %> <%@ page import="com.tarisan.data.*" %> <%@ page import="com.tarisan.excepcion.*" %> <%@ page import="com.tarisan.log.*" %> <%@ page import="com.tarisan.util.Utilidades" %> <%@ page import="java.util.Vector" %> <%@ page import="java.io.*" %> <%@ page import="java.util.Calendar" %> <%@ page import="java.math.BigDecimal"%> <%@ page import="java.text.SimpleDateFormat" %> <%@ page import="com.tarisan.util.DES" %> <%@ page import="com.tarisan.persistencia.PersistenciaParametros" %> <% //LogTarisan.logger.log(NivelLog.INFO, "Inicio página de analitica (pac/analitica.jsp)"); response.setHeader("Expires", "0"); response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); HttpSession sesion = request.getSession(true); if(sesion.isNew() || (sesion.getAttribute("USUARIO") == null)) { LogTarisan.logger.log(NivelLog.INFO, "Sesión invalidada"); response.sendRedirect(request.getContextPath() + "/html/login.html"); } /*else if ( ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getEntidadChipcard().compareTo(ParametrosConfiguracion.bin_chipcard_propios)!=0) { LogTarisan.logger.log(NivelLog.INFO, "Sesión invalidada"); response.sendRedirect(request.getContextPath() + "/jsp/pac/solicitudAnaliticaNiveles.jsp?x=4&pagina=1"); }*/ else { LogTarisan.logger.log(NivelLog.INFO, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Inicio página de analitica (pac/analitica.jsp)"); try { // Definicion de variables param2 boolean desplazado = false; String strParametroMenu=""; Calendar calFechaAnalisis = Calendar.getInstance(); calFechaAnalisis.add(Calendar.MONTH, -ParametrosConfiguracion.periodoAnalisis); java.sql.Date dtFechaAnalisis = new java.sql.Date(calFechaAnalisis.getTime().getTime()); int intPagina = 0; int pteExtraccion = 0; /* Indica si la analítica esta pte de extraccion para indicarlo en el apartado de regenerar pdf */ StringBuffer strSql = new StringBuffer(); StringBuffer strSql2 = new StringBuffer(); StringBuffer strSql_requestid = new StringBuffer(); Object aCondiciones[]=null; Object bCondiciones[]=null; Object Condiciones[]=null; Object aCondiciones_requestid[]=null; SimpleDateFormat sdfFormateadorFecha=new SimpleDateFormat(PersistenciaParametros.formatoFechas); int intImpresion = 0; java.util.Date hoy = Calendar.getInstance().getTime(); String strListaElementosPrescripcion = ""; String strInformePrescripcion = ""; String strAutorizacion=""; //Obtención del perfil del usuario conectado StringBuffer perfil = new StringBuffer(); perfil.append("|"); perfil.append(sesion.getAttribute("PERFIL")); perfil.append("|"); //Obtenemos los valores de los parametros que se pasan a la pagina //En caso de que no se le pasen parametros, quedaram inicializados //a sus valores por defecto //parametro x para marcar la opcion del menu en la que se encuentra el usuario if (request.getParameter("x")!=null) strParametroMenu=(String)request.getParameter("x"); //parametro pagina para realizar la paginacion if (request.getParameter("pagina")!=null) intPagina=Integer.parseInt(request.getParameter("pagina")); //parametro impresion que nos indica que se ha de realizar una impresion if (request.getParameter("imp")!=null) { intImpresion=Integer.parseInt(request.getParameter("imp")); } //parametro listaElementosPrescripciones utilizado para realizar la impresion if (request.getParameter("listaElementosPrescripcion")!=null) strListaElementosPrescripcion=(String)request.getParameter("listaElementosPrescripcion"); //parametro informePrescripcion utilizado para realizar la impresion if (request.getParameter("informePrescripcion")!=null) strInformePrescripcion=(String)request.getParameter("informePrescripcion"); //atributo autorizacion utilizado para realizar la impresion if (request.getAttribute("autorizacion")!=null) { strAutorizacion=(String)request.getAttribute("autorizacion"); } if ( ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getEntidadChipcard().compareTo(ParametrosConfiguracion.bin_chipcard_propios)!=0) { desplazado = true; } Tamensaje tamensaje = new Tamensaje(); PersistenciaTamensaje pertamensaje = new PersistenciaTamensaje(); boolean mostrarNoticia = true; PersistenciaTanoticias perTaNo = new PersistenciaTanoticias(); Vector vSeleccionNot = perTaNo.obtener_noticias_cabecera(); Vector vNoticias = new Vector(); String strNoticia = ""; String noticias =""; String separador = " ---//--- "; if(vSeleccionNot.size()==0){ mostrarNoticia = false; }else{ mostrarNoticia = true; Tanoticias tanoticia = null; for(int i = 0; i < vSeleccionNot.size(); i++) { tanoticia = (Tanoticias)vSeleccionNot.elementAt(i); if (i!=0){ strNoticia = strNoticia + separador + tanoticia.getNoticia(); }else{ strNoticia = tanoticia.getNoticia(); } strNoticia = strNoticia.replaceAll("
", " "); } } String path = request.getContextPath(); String pathSpgif = request.getContextPath(); if (request.getContextPath().indexOf("tarisan")==-1){ path = path + "/tarisan"; pathSpgif = path + "/.."; } %> Analítica
<%= sesion.getAttribute("USUARIO") %>

<%=strNoticia %>


<%= sesion.getAttribute("PACIENTE") %>

<% //tarjeta.getEntidadChipcard().compareTo(ParametrosConfiguracion.bin_chipcard_propios)==0 Tarjeta tarjeta = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta(); if(!((Paciente)sesion.getAttribute("PACIENTE")).get_noesiguala_inactivar() && tarjeta.getEntidadChipcard().compareTo(ParametrosConfiguracion.bin_chipcard_propios)==0) { %> <% } else { %> <% }%>
 
 
 
<% tamensaje = pertamensaje.obtenerMensaje(11); %><%=tamensaje.getMensaje() %>

<% //Creación de la tabla presentación de resultados PersistenciaVTaprescaTamedico per = new PersistenciaVTaprescaTamedico(); String cole = (Long.valueOf( ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getColectivo() )).toString(); String poli = new BigDecimal(((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getPoliza()).toString(); String orde = (Integer.valueOf( ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getBeneficiario() )).toString(); /*Vector vSeleccion = per.listado_analiticas_paciente(cole, poli, orde, dtFechaAnalisis, intPagina);*/ Paciente pac = (Paciente)sesion.getAttribute("PACIENTE"); /*Vector vSeleccion2 = per.listado_analiticas_por_tarjeta(pac, intPagina); LogTarisan.logger.log(NivelLog.DEBUG, "Nueva select resultados analitica tapresca_tarisan. Tenemos resultados: " + vSeleccion2.size());*/ String vael = null; /*for(int i = 0; i < vSeleccion2.size(); i++) { vSeleccion.addElement(vSeleccion2.elementAt(i)); }*/ int medico = ((Usuario)sesion.getAttribute("USUARIO")).getMedico(); Vector vSeleccion = per.listado_analiticas_por_paciente(cole, poli, orde, dtFechaAnalisis, pac, medico, intPagina); LogTarisan.logger.log(NivelLog.DEBUG, "Resultados analitica tapresca_tarisan. Tenemos resultados: " + vSeleccion.size()); /*int prueba = per.prueba_conexion();*/ /*Vector vPagiancion = new Vector(); vPagiancion = Utilidades.ObtenerPaginacionDeUnVector(vSeleccion, intPagina);*/ if (vSeleccion.size()==0) //No se han encontrado datos { %> <% } else { if (intPagina != 0){ //se tiene en cuenta la paginacion %> <% } %> <% VTaresanaTamedico vTaresanaTamedico = null; String estilo = ""; for(int i = 0; i < vSeleccion.size(); i++) { if (i % 2 == 0) { estilo = "filaA"; } else { estilo = "filaB"; } vTaresanaTamedico = (VTaresanaTamedico)vSeleccion.elementAt(i); %> <% if (vTaresanaTamedico.getAutorizacion() == 0) //campo autorizacion nulo o inicializado a 0. Valor no valido. { %> <% } else //campo autorizacion tiene un valor valido { %> <% int diaHoy = hoy.getDate(); int mesHoy = hoy.getMonth(); int anoHoy = hoy.getYear(); int diaAnalisis = vTaresanaTamedico.getFecha().getDate(); int mesAnalisis = vTaresanaTamedico.getFecha().getMonth(); int anoAnalisis = vTaresanaTamedico.getFecha().getYear(); if ((diaHoy==diaAnalisis)&&(mesHoy==mesAnalisis)&&(anoHoy==anoAnalisis)){ %> <%}else{ %> <%}%> <% /*strSql_requestid.delete(0,strSql_requestid.length());*/ } %> <% } %> <% if (intPagina!=0){ //se tiene en cuenta la paginacion %> <% } //fin if(pagina!=0) } //fin else (vSeleccion.size()!=0) %>
 
 
<%=pertamensaje.obtenerMensaje(67).getMensaje() %>
 
<%=pertamensaje.obtenerMensaje(68).getMensaje() %>
Página <%=per.getPaginacion().getNumeroPagina()%> de <%=per.getPaginacion().getNumeroPaginasTotales()%>
Fecha Solicitud Prescriptor Peticion Ver Resultados Regenerar Resultados Modificar
<%=sdfFormateadorFecha.format(vTaresanaTamedico.getFecha())%> <%=vTaresanaTamedico.getNombre() + " " + vTaresanaTamedico.getApellidos()%> <%=vTaresanaTamedico.getAutorizacion()%><%=sdfFormateadorFecha.format(vTaresanaTamedico.getFecha())%> <%=vTaresanaTamedico.getNombre() + " " + vTaresanaTamedico.getApellidos()%> <% String peticion = ""+vTaresanaTamedico.getAutorizacion(); /*peticion = (peticion.length()<8)?"0"+peticion:peticion;*/ String peticionE = ""+vTaresanaTamedico.getAutorizacionEncriptada(); String ruta = ParametrosConfiguracion.ruta_pdf_peticiones_analiticas; File ficheroPeticion = new File(ruta+peticion+".pdf"); if(ficheroPeticion.exists()) //Busco en la nueva ubicación { %>
<% }else{ ruta = ParametrosConfiguracion.ruta_pdf_peticiones; ficheroPeticion = new File(ruta+peticion+".pdf"); if(ficheroPeticion.exists()) //Busco en la ubicación vieja { %>
<% }else{ %> <%=peticion%> <% } } %>
<% PersistenciaPaciente perPac = new PersistenciaPaciente(); Paciente pacient = (Paciente)sesion.getAttribute("PACIENTE"); Usuario usu = (Usuario)sesion.getAttribute("USUARIO"); String autorizado = pacient.getAutorizado(); if(autorizado == null) autorizado = "N"; LogTarisan.logger.log(NivelLog.DEBUG, "Autorizado: "+pacient.getAutorizado()); String igua = vTaresanaTamedico.getIgualada(); if(igua == null) igua = "0"; LogTarisan.logger.log(NivelLog.DEBUG, "Igua: "+igua); LogTarisan.logger.log(NivelLog.DEBUG, vTaresanaTamedico.getAutorizacion()); String resultado = ""+vTaresanaTamedico.getAutorizacion(); String resultadoE = ""+vTaresanaTamedico.getAutorizacionEncriptada(); String igualadaE = ""+vTaresanaTamedico.getIgualadaEncriptada(); //Buscar los PDF con ceros String resultadoConCeros=resultado; do{ resultadoConCeros = (resultado.length()<8)?"0"+resultadoConCeros:resultadoConCeros; }while (resultadoConCeros.length() < 8); if((autorizado.toUpperCase().compareTo("S") == 0) || usu.getMedico() == vTaresanaTamedico.getPrescriptor()) { // 16/06/2018 Nuvea comprobación para mostrar los pdfs que subimos a mano(ej: los desplazados que se hacen la extracción en CSM) String direccion = ParametrosConfiguracion.ruta_pdf_resultados_analiticas; File fichero = new File(direccion+resultado+".pdf"); if(fichero.exists()) { %>
<% } else { if (vTaresanaTamedico.getExtraccion()!=0 && vTaresanaTamedico.getExtraccion()!=3){ // Mirar si la analítica está pendiente de extracción if(igua.compareTo("0") != 0){ //Comprobar si se trata de una autorización que está en Tarisan y GPC %>
<% }else{ if(vTaresanaTamedico.isPeticionConGuion()) { %>
<% } else if(vTaresanaTamedico.getAutorizacion() < 999999 && !(vTaresanaTamedico.getAutorizacion()>700000 && vTaresanaTamedico.getAutorizacion()<799999)) { %>
<% } else{ //PAC.ruta_pdf /*String resultado = ""+vTaresanaTamedico.getAutorizacion(); resultado = (resultado.length()<8)?"0"+resultado:resultado;*/ /*String*/ direccion = ParametrosConfiguracion.ruta_pdf_resultados_analiticas; /*File*/ fichero = new File(direccion+resultado+".pdf"); if(fichero.exists()) { %>
<% } else { fichero = new File(direccion+resultado+".PDF"); if(fichero.exists()) { %>
<% } else { direccion = ParametrosConfiguracion.ruta_pdf_resultados; fichero = new File(direccion+resultado+".pdf"); if(fichero.exists()) { %>
<% } else { fichero = new File(direccion+resultado+".PDF"); if(fichero.exists()) { %>
<% } else { //Buscamos en los mismos sitios pero con los ceros en el nombre del PDF DES encrypter = new DES(""+medico); String resultadoConCerosE = encrypter.encrypt(resultadoConCeros); direccion = ParametrosConfiguracion.ruta_pdf_resultados_analiticas; fichero = new File(direccion+resultadoConCeros+".pdf"); if(fichero.exists()) { %>
<% } else { fichero = new File(direccion+resultadoConCeros+".PDF"); if(fichero.exists()) { %>
<% } else { direccion = ParametrosConfiguracion.ruta_pdf_resultados; fichero = new File(direccion+resultadoConCeros+".pdf"); if(fichero.exists()) { %>
<% } else { fichero = new File(direccion+resultadoConCeros+".PDF"); if(fichero.exists()) { %>
<% } else { %>

<%=pertamensaje.obtenerMensaje(6).getMensaje() %>

<% //Resultados Pendientes } } } } } } } } } } }else if(vTaresanaTamedico.getExtraccion()==3){ /* Controlamos las peticiones anuladas desde GPC */ pteExtraccion = 3; %>

Petición anulada en GPC

<% } else{ pteExtraccion = 1; %>

Pendiente de Extracción

<% } } } else { %>

<%=pertamensaje.obtenerMensaje(66).getMensaje() %>

<% //Pendiente de Autorización del paciente } %>
<% /*PersistenciaPaciente perPac = new PersistenciaPaciente(); Paciente pacient = (Paciente)sesion.getAttribute("PACIENTE"); Usuario usu = (Usuario)sesion.getAttribute("USUARIO"); String autorizado = pacient.getAutorizado(); if(autorizado == null) autorizado = "N"; LogTarisan.logger.log(NivelLog.DEBUG, "Autorizado: "+pacient.getAutorizado()); String igua = vTaresanaTamedico.getIgualada(); if(igua == null) igua = "0"; LogTarisan.logger.log(NivelLog.DEBUG, "Igua: "+igua); LogTarisan.logger.log(NivelLog.DEBUG, vTaresanaTamedico.getAutorizacion()); autorizado="S";*/ if(((autorizado.toUpperCase().compareTo("S") == 0) || usu.getMedico() == vTaresanaTamedico.getPrescriptor()) && pteExtraccion==0) { if(igua.compareTo("0") != 0){ //Comprobar si se trata de una autorización que está en Tarisan y GPC //File fichero = new File(ParametrosConfiguracion.ruta_pdf_resultados_analiticas+Long.valueOf(igua.toString())+".pdf"); %>
<% }else{ if(vTaresanaTamedico.getAutorizacion() < 999999 && !(vTaresanaTamedico.getAutorizacion()>700000 && vTaresanaTamedico.getAutorizacion()<799999)) //Comprobar si es de izasa { //File fichero = new File(ParametrosConfiguracion.ruta_pdf_resultados_analiticas+Long.valueOf(vTaresanaTamedico.getAutorizacion()).toString()+".pdf"); %>
<% }else{ %>

PDF no regenerable

<% } } } else { pteExtraccion = 0; %>

PDF no regenerable

<%//Pendiente de Autorización del paciente } %>
Editar-
 
<%=pertamensaje.obtenerMensaje(68).getMensaje() %>
<%if (per.getPaginacion().esPrimeraPagina()){%> <%}else{%> <%}%> <%if (per.getPaginacion().esUltimaPagina()){%> <%}else{%> <%}%>
primero anterior primero anteriorsiguiente último siguiente último
<% } catch(Exception ex) { LogTarisan.logger.log(NivelLog.ERROR, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Exception: " + ex); sesion.setAttribute("ERROR", "ExcepcionTarisan: " + ex); response.sendRedirect("../error.jsp"); } LogTarisan.logger.log(NivelLog.INFO, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Final página de analitica (pac/analitica.jsp)"); } %>