<%@ page import="com.tarisan.control.*" %> <%@ page import="com.tarisan.data.*" %> <%@ page import="com.tarisan.excepcion.*" %> <%@ page import="com.tarisan.log.*" %> <%@ page import="java.sql.*" %> <%@ page import="java.util.Vector" %> <%@ page import="com.tarisan.util.Utilidades" %> <%@ page import="com.tarisan.persistencia.PersistenciaParametros" %> <%@ page import="java.util.Calendar" %> <% //LogTarisan.logger.log(NivelLog.INFO, "Inicio página de facturacion (pac/facturacion.jsp)"); response.setHeader("Expires", "0"); response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); HttpSession sesion = request.getSession(true); if(sesion == null) { LogTarisan.logger.log(NivelLog.INFO, "Sesión no iniciada"); response.sendRedirect("../../html/login.html"); } if(sesion.isNew() || (sesion.getAttribute("USUARIO") == null)) { LogTarisan.logger.log(NivelLog.INFO, "Sesión invalidada"); response.sendRedirect(request.getContextPath() + "/html/login.html"); } else if(sesion.getAttribute("PACIENTE") == null) { LogTarisan.logger.log(NivelLog.INFO, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Paciente borrado ¿Ha pulsado 'history back'?"); response.sendRedirect(request.getContextPath() + "/jsp/pac/gestor.jsp"); } //else if ( ((Paciente)sesion.getAttribute("PACIENTE")).getDesplazado().compareTo(ParametrosConfiguracion.bin_chipcard_propios) != 0 ) else if ( ((Paciente)sesion.getAttribute("PACIENTE")).getDesplazado() != (ParametrosConfiguracion.bin_chipcard_propios)) { LogTarisan.logger.log(NivelLog.INFO, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Es desplazado, lo mandamos a chipcard"); response.sendRedirect(request.getContextPath() + "/jsp/pac/facturacion_chipcard.jsp?x=0&pagina=1"); } else { LogTarisan.logger.log(NivelLog.INFO, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Inicio página de facturacion (pac/facturacion.jsp)"); try { // Definicion de variables String mensaje = null; mensaje = (String)sesion.getAttribute("ERROR"); String strMensajeSinElementos=""; if(mensaje == null || (mensaje.trim().compareTo("") == 0)) { strMensajeSinElementos="No ha seleccionado ningún acto médico."; } else { strMensajeSinElementos=mensaje; } String strParametroMenu=""; String strCampoNombre=""; String strListaElementos=""; String strListaCodigoElementos=""; int intImpresion = 0; int intPagina = 0; StringBuffer strSql = new StringBuffer(); Object aCondiciones[]=null; String strEsPrimeraVisita = ""; String strConRevisionHoy = ""; String strListaElementosPrescripcion = ""; //Obtención del perfil del usuario conectado StringBuffer perfil = new StringBuffer(); perfil.append("|"); perfil.append(sesion.getAttribute("PERFIL")); perfil.append("|"); StringBuffer perfilIguala = new StringBuffer(); perfilIguala.append(sesion.getAttribute("PERFIL")); //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 descripcion para las busquedas if (request.getParameter("nombre")!=null) strCampoNombre = (String)request.getParameter("nombre"); //parametro pagina para realizar la paginacion if (request.getParameter("pagina")!=null) intPagina=Integer.parseInt(request.getParameter("pagina")); //parametro listaPrescripciones para mostrar las prescripciones seleccionadas if (request.getParameter("listaElementos")!=null) strListaElementos=(String)request.getParameter("listaElementos"); //parametro listaPrescripciones para mostrar las prescripciones seleccionadas if (request.getParameter("listaCodigoElementos")!=null) strListaCodigoElementos=(String)request.getParameter("listaCodigoElementos"); //parametro listaElementosPrescripciones utilizado para realizar la impresion if (request.getParameter("listaElementosPrescripcion")!=null) strListaElementosPrescripcion=(String)request.getParameter("listaElementosPrescripcion"); //parametro impresion que nos indica que se ha de realizar una impresion if (request.getParameter("imp")!=null) { intImpresion=Integer.parseInt(request.getParameter("imp")); } //atributo ENC que obtiene la peticion encriptada String factE = ""; if (sesion.getAttribute("ENC")!=null) { factE = (String)sesion.getAttribute("ENC"); sesion.removeAttribute("ENC"); } int intMedico = ((Usuario)sesion.getAttribute("USUARIO")).getMedico(); long intColectivo = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getColectivo(); int intBeneficiario = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getBeneficiario(); double dblPoliza = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getPoliza(); String tarjeta = String.valueOf(((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getTarjeta()); if(((Paciente)sesion.getAttribute("PACIENTE")).getDesplazado() != ParametrosConfiguracion.bin_chipcard_propios) tarjeta = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getTarjetaDesplazado(); PersistenciaTapolfac perTapolfac = new PersistenciaTapolfac(); Integer blnEsPolizaIgualaMedico = perTapolfac.esPolizaIgualaMedico(intMedico, intColectivo, dblPoliza); PersistenciaTaprimer perTaprimer = new PersistenciaTaprimer(); if (perTaprimer.esPrimeraVisita( intMedico, intColectivo, dblPoliza, intBeneficiario) ) strEsPrimeraVisita = "si"; else strEsPrimeraVisita = "no"; PersistenciaTamovext perTamovex = new PersistenciaTamovext(); strConRevisionHoy = "no"; //if(perTamovex.tieneRevisionHoy(intMedico, ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getTarjetaDesplazado(), true)) if(perTamovex.tieneRevisionHoyColPolOrd(intMedico, intColectivo, dblPoliza, intBeneficiario, true)) strConRevisionHoy = "si"; 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 + "/.."; }else if (request.getContextPath().indexOf("servlet")==-1){ path = "/tarisan"; } %> Especialidades
<%= sesion.getAttribute("USUARIO") %>

<%=strNoticia %>


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

<% if ((blnEsPolizaIgualaMedico == 0) || ((blnEsPolizaIgualaMedico != 0) && perfilIguala.toString().compareTo("01")!=0)){ LogTarisan.logger.log(NivelLog.INFO, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - PERFIL TARISAN: " + perfilIguala.toString() + " " + blnEsPolizaIgualaMedico); %>
<% PersistenciaTtactmed per = new PersistenciaTtactmed(); long intColectivonew = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getColectivo(); double dblPolizanew = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getPoliza(); int contrato = ((Paciente)sesion.getAttribute("PACIENTE")).getTarjeta().getContrato(); Vector vSeleccion = per.obtenerActosAutoprescribibles(intPagina, ((Usuario)sesion.getAttribute("USUARIO")).getEspecialidad(), contrato, intColectivonew, dblPolizanew,((Usuario)sesion.getAttribute("USUARIO")).getTarifa(), strCampoNombre); LogTarisan.logger.log(NivelLog.DEBUG, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Actos: " + vSeleccion.size()); if (vSeleccion.size()==0) //No se han encontrado datos { %> <% } else { if (intPagina != 0){ //se tiene en cuenta la paginacion %> <% } %> <% Ttactmed ttactmed = null; String estilo = ""; String strDescripcionSinComilla=""; for(int i = 0; i < vSeleccion.size(); i++) { if (i % 2 == 0) { estilo = "filaA"; } else { estilo = "filaB"; } ttactmed = (Ttactmed)vSeleccion.elementAt(i); //hacemos el tratamiento por si viene comilla simple en la descripcion strDescripcionSinComilla = ttactmed.getDescripcion().replace('\'', '~'); %> <% if (strListaElementos.indexOf("¬" + ttactmed.getDescripcion() + "¬")!=-1) { %> <% } else { %> <% } %> <% } %> <% if (intPagina!=0){ //se tiene en cuenta la paginacion %> <% } //fin if(pagina!=0) %> <% } //fin else (vSeleccion.size()!=0) %>
Imputación de actos médicos:
Nombre acto médico:   <%=pertamensaje.obtenerMensaje(24).getMensaje() %>
 
<% tamensaje = pertamensaje.obtenerMensaje(10); %><%=tamensaje.getMensaje() %>
Página <%=per.getPaginacion().getNumeroPagina()%> de <%=per.getPaginacion().getNumeroPaginasTotales()%>
Acto Descripción Precio
<%=ttactmed.getActo()%> <%=ttactmed.getDescripcion()%> <%=Utilidades.formatearDouble(per.obtenerPrecioActoMedico(((Usuario)sesion.getAttribute("USUARIO")).getTarifa(), ttactmed.getActo(), ((Usuario)sesion.getAttribute("USUARIO")).getEspecialidad()), PersistenciaParametros.decimales)%>
<%if (per.getPaginacion().esPrimeraPagina()){%> <%}else{%> <%}%> <%if (per.getPaginacion().esUltimaPagina()){%> <%}else{%> <%}%>
primero anteriorprimero anteriorsiguiente últimosiguiente último
<% } else { %> <% if (blnEsPolizaIgualaMedico == 1){ %> <%} else { %> <% }%>
 
 
 
<%=pertamensaje.obtenerMensaje(12).getMensaje() %><% tamensaje = pertamensaje.obtenerMensaje(11); %><%=tamensaje.getMensaje() %>
<% } %>
<% } catch(ExcepcionTarisan ex) { LogTarisan.logger.log(NivelLog.ERROR, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - ExcepcionTarisan: " + ex.getMensaje()); sesion.setAttribute("ERROR", "Error en la presentación de la página al usuario."); response.sendRedirect(request.getContextPath() + "/jsp/error.jsp"); } catch(Exception ex) { LogTarisan.logger.log(NivelLog.ERROR, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Exception: " + ex); sesion.setAttribute("ERROR", "Error en la presentación de la página al usuario."); response.sendRedirect(request.getContextPath() + "/jsp/error.jsp"); } LogTarisan.logger.log(NivelLog.INFO, ((Usuario)sesion.getAttribute("USUARIO")).getMedico() + " - Final página de facturacion (pac/facturacion.jsp)"); } %>