Añado los fuentes de java

This commit is contained in:
2025-06-09 13:37:06 +02:00
parent d6c990e5d5
commit a97a6350ee
226 changed files with 57246 additions and 0 deletions
@@ -0,0 +1,358 @@
/**
* @(#) PersistenciaTapolfac.java
*/
package com.tarisan.control;
import com.tarisan.data.Tapolfac;
import com.tarisan.log.*;
import com.tarisan.util.Utilidades;
import com.tarisan.excepcion.ExcepcionTarisan;
import java.sql.*;
import java.util.Vector;
/**
* Controla los accesos a la persistencia para la entidad <code>Tapolfac</code>.
* @author <a href="mailto:sistemas@imqnavarra.com">Dpto. Informática</a>.
* @version 1.0, 24/09/2003
*/
public class PersistenciaTapolfac
{
/**
* El objeto <code>Paginacion</code> que controla el número de filas a mostrar por cada página.
*/
private Paginacion objPaginacion = new Paginacion();
/**
* Obtiene el valor del objeto <code>Paginacion</code> para saber que página se está visualizando.
* @return El objeto <code>Paginacion</code>.
*/
public Paginacion getPaginacion()
{
return objPaginacion;
}
/**
* Selecciona los registros de la tabla TAPOLFAC en función de la sentencia SELECT indicada.
* @param sqlSelect La sentencia SELECT de selección.
* @param pagina Número de página a mostrar.
* @param aCondiciones Array que contiene los parámetros utilizados en la sentencia SELECT.
* @return El Vector con los registros seleccionados (todos pertenencientes a la clase <code>Tapolfac</code>).
* @throws
*/
public Vector seleccionar(String sqlSelect, int pagina, Object[] aCondiciones) throws ExcepcionTarisan
{
int elementosPaginacion=1;
Vector vResultado = new Vector();
Tapolfac tapolfac = null;
try
{
Connection conexion = ParametrosConfiguracion.dataStore.obtenerConexion();
ResultSet rs = ParametrosConfiguracion.dataStore.seleccionar(conexion, sqlSelect, aCondiciones);
objPaginacion.inicializarPaginacion(rs);
if (objPaginacion.getNumeroRegistrosTotales()!=0)
{
objPaginacion.realizarPaginacion(rs, pagina);
while(rs.next() && (elementosPaginacion <= Paginacion.getFilasPorPagina()))
{
tapolfac = new Tapolfac();
tapolfac.setTitular(rs.getString("TITULAR"));
tapolfac.setColec(rs.getInt("COLEC"));
tapolfac.setPoliza(rs.getDouble("POLIZA"));
tapolfac.setBeneficiarios(rs.getInt("BENEFICIARIOS"));
vResultado.addElement(tapolfac);
if (pagina!=0) //Se quiere realizar la paginacion
elementosPaginacion++;
}
}
rs.close();
ParametrosConfiguracion.dataStore.liberarConexion(conexion);
LogTarisan.logger.log(NivelLog.DEBUG, "Seleccionados " + vResultado.size() + " registros de la tabla TAPOLFAC (" + sqlSelect + ")");
}
catch (ExcepcionTarisan sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + sqlSelect + ")");
throw (ExcepcionTarisan)sqle;
}
catch(SQLException sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + sqlSelect + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
catch(Exception sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + sqlSelect + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
catch(Throwable sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + sqlSelect + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
return vResultado;
}
public int obtenerNumerPolizasMedicos(int medico)
{
int resul = 0;
String strSql = "";
try
{
strSql = "Select count(*) from tapolfac where medico = " + medico +" group by colec, poliza";
Connection conexion = ParametrosConfiguracion.dataStore.obtenerConexion();
ResultSet rs = ParametrosConfiguracion.dataStore.seleccionar(conexion, strSql);
if(rs.next())
{
rs.last();
resul = rs.getRow();
}
}
catch (ExcepcionTarisan sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección obtenerNumerPolizasMedicos: " + sqle + " (" + strSql + ")");
} catch (SQLException e) {
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección obtenerNumerPolizasMedicos: " + e + " (" + strSql + ")");
}
return resul;
}
/**
* Obtiene el número total de beneficiarios del total de pólizas de la tabla TAPOLFAC dependiendo del médico que este conectado.
* @param medico El código del médico conectado a la aplicación.
* @return El número total de beneficiarios del total de pólizas pertenecientes al médico conectado.
* @throws
*/
public int obtenerNumTotalBeneficiarios(int medico) throws ExcepcionTarisan
{
String strSql="";
int intTotalBeneficiarios=0;
try
{
strSql = "select count(*) as totalBeneficiarios from tapolfac where medico=" + medico;
Connection conexion = ParametrosConfiguracion.dataStore.obtenerConexion();
ResultSet rs = ParametrosConfiguracion.dataStore.seleccionar(conexion, strSql);
if (rs.next())
intTotalBeneficiarios = rs.getInt("totalBeneficiarios");
rs.close();
ParametrosConfiguracion.dataStore.liberarConexion(conexion);
LogTarisan.logger.log(NivelLog.DEBUG, "Total beneficiarios " + intTotalBeneficiarios + " de la tabla TAPOLFAC (" + strSql + ")");
}
catch (ExcepcionTarisan sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección obtenerNumTotalBeneficiarios: " + sqle + " (" + strSql + ")");
throw (ExcepcionTarisan)sqle;
}
catch(SQLException sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección obtenerNumTotalBeneficiarios: " + sqle + " (" + strSql + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
catch(Exception sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección obtenerNumTotalBeneficiarios: " + sqle + " (" + strSql + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
catch(Throwable sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección obtenerNumTotalBeneficiarios: " + sqle + " (" + strSql + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
return intTotalBeneficiarios;
}
/**
* Indica si la póliza es una de las igualas de un determinado médico.
* @param medico El código del médico.
* @param colectivo El código del colectivo.
* @param poliza El código de la póliza.
* @return Valor entero que indica si la póliza es una de las igualas del médico (1), es iguala de otro médico (2) o no es
* iguala (0)
* @throws
*
*/
public Integer esPolizaIgualaMedico(int medico, long colectivo, double poliza) throws ExcepcionTarisan
{
StringBuffer strSql = new StringBuffer();
Object aCondiciones[]=null;
Integer blnEsPolizaIgualaMedico = 0;
Integer blnEsMutualista = 0;
/*
* Manda el Dr. Indave una incidencia:
* https://incidencias.imqnavarra.com/soporte/scp/tickets.php?id=52142
* para que los mutualistas puedan ir al médico de cabecera que quieran
* pero solo los mutualistas, no los directos.
*/
strSql.append("Select count(*) from TTCOLECT where ");
strSql.append("COLECTIVO=? and ");
strSql.append("contrato in (711, 712,713)");
aCondiciones = new Object[1];
aCondiciones[0]=Long.valueOf(colectivo);
Connection conexion = ParametrosConfiguracion.dataStore.obtenerConexion();
ResultSet rs = ParametrosConfiguracion.dataStore.seleccionar(conexion, strSql.toString(), aCondiciones);
try{
LogTarisan.logger.log(NivelLog.DEBUG, "Vamos a comprobar si es mutualista");
if(rs.next())
{
LogTarisan.logger.log(NivelLog.DEBUG, "Es mutualista ");
blnEsMutualista = 1;
rs.close();
ParametrosConfiguracion.dataStore.liberarConexion(conexion);
aCondiciones=null;
}
else{
rs.close();
ParametrosConfiguracion.dataStore.liberarConexion(conexion);
LogTarisan.logger.log(NivelLog.DEBUG, "No es mutualista, seguimos comprobando");
aCondiciones=null;
}
}
catch(SQLException sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + strSql.toString() + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
try
{
strSql = new StringBuffer();
strSql.append("SELECT *");
strSql.append(" FROM tapolfac");
//strSql.append(" WHERE medico=?");
//strSql.append(" AND colec=?");
strSql.append(" where colec=?");
strSql.append(" AND poliza=?");
//strSql.append(" and medico != 0");
/*
* El médico 0 es el sns, si ponemos la excepcion consideramos que los que tienen SNS pueden ir a los medicos de cabecera del cuadro.
* Si la quitamos, los que van a SNS no pueden ir a los médicos del cuadro.
*
*/
aCondiciones = new Object[2];
/*aCondiciones[0]=Integer.valueOf(medico);
aCondiciones[1]=Integer.valueOf(colectivo);
aCondiciones[2]=Double.valueOf(poliza);*/
aCondiciones[0]=Long.valueOf(colectivo);
aCondiciones[1]=Double.valueOf(poliza);
/*
* No necesitamos volver a definir las variables, ya que las hemos definido arriba para comprobar si es mutualista.
*/
conexion = ParametrosConfiguracion.dataStore.obtenerConexion();
rs = ParametrosConfiguracion.dataStore.seleccionar(conexion, strSql.toString(), aCondiciones);
//nos posicionamos en el registro
if (rs.next()){
int sql_medico = rs.getInt("medico");
if(sql_medico == medico){
//la poliza se trata de una iguala del medico
blnEsPolizaIgualaMedico = 1;
LogTarisan.logger.log(NivelLog.DEBUG, "La poliza es una de las igualas del medico " + blnEsPolizaIgualaMedico + " (" + strSql.toString() + ")");
}
else{
//la poliza es iguala de otro médico
if(blnEsMutualista == 1){
//Los mutualistas pueden ir a cualquier médico de cabecera.
blnEsPolizaIgualaMedico = 0;
}
else{
blnEsPolizaIgualaMedico = 2;
}
LogTarisan.logger.log(NivelLog.DEBUG, "La poliza es una de las igualas pero de otro medico " + blnEsPolizaIgualaMedico + " (" + strSql.toString() + ")");
}
}
rs.close();
ParametrosConfiguracion.dataStore.liberarConexion(conexion);
}
catch (ExcepcionTarisan sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + strSql.toString() + ")");
throw (ExcepcionTarisan)sqle;
}
catch(SQLException sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + strSql.toString() + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
catch(Exception sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + strSql.toString() + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
catch(Throwable sqle)
{
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de TAPOLFAC: " + sqle + " (" + strSql.toString() + ")");
throw new ExcepcionTarisan(sqle.getMessage());
}
return blnEsPolizaIgualaMedico;
}
public Vector listado_igualados(String igualado, int medico, int intPagina)
{
Vector resul = new Vector();
StringBuffer strSql = new StringBuffer();
Object [] aCondiciones = new Object[1];
String consulta = "";
if(igualado.length()==0)
{
strSql.append("SELECT TITULAR, COLEC, POLIZA, BENEFICIARIOS");
strSql.append(" FROM TAPOLFAC");
strSql.append(" WHERE MEDICO=?");
strSql.append(" ORDER BY TITULAR");
}
else
{
strSql.append("SELECT TITULAR, COLEC, POLIZA, BENEFICIARIOS");
strSql.append(" FROM TAPOLFAC");
strSql.append(" WHERE MEDICO=?");
strSql.append(" AND TITULAR LIKE '%"+igualado+"%'");
strSql.append(" ORDER BY TITULAR");
}
aCondiciones[0] = Integer.valueOf(medico);
try {
resul = this.seleccionar(strSql.toString(), intPagina, aCondiciones);
consulta = Utilidades.obtenerSentenciaSQL(strSql, null, aCondiciones);
} catch (ExcepcionTarisan e) {
LogTarisan.logger.log(NivelLog.ERROR, "Error en la selección de Tapolfac (listado_igualados): " + e + " (" + consulta + ")");
}
return resul;
}
}