package com.tarisan.control; import com.tarisan.excepcion.ExcepcionTarisan; import com.tarisan.log.*; import java.sql.*; public class PersistenciaControlMedicos { public boolean insertar(int medico, String tarjeta) { boolean resul=false; StringBuffer sqlInsert = new StringBuffer(); Object[] aValores = new Object[3]; try { Connection conexion = ParametrosConfiguracion.dataStore.obtenerConexion(); LogTarisan.logger.log(NivelLog.DEBUG, medico + " - El medico "+medico+" pasa la tarjeta: "+tarjeta+" vamos a meterlo en la tabla oracle"); sqlInsert.append("Insert into control_medicos (id, medico, fecha, tarjeta) values (?, ?, sysdate, ?)"); aValores[0]=siguiente_id(); aValores[1]=Integer.valueOf(medico); aValores[2]=new String(tarjeta); resul = ParametrosConfiguracion.dataStore.insertar(sqlInsert.toString(), aValores, conexion); } catch (ExcepcionTarisan e) { LogTarisan.logger.log(NivelLog.ERROR, medico + " - Error al insertar el registro de control de medicos"); } return resul; } public int siguiente_id() { int resul = 0; try { Connection conexion = ParametrosConfiguracion.dataStore.obtenerConexion(); String sql = "select max(id) maximo from control_medicos"; ResultSet rs = ParametrosConfiguracion.dataStore.seleccionar(conexion, sql); while(rs.next()) { resul = rs.getInt(1); } } catch (ExcepcionTarisan e) { LogTarisan.logger.log(NivelLog.ERROR, "Error al obtener el max id de la tabla control_medicos"); } catch (SQLException e) { LogTarisan.logger.log(NivelLog.ERROR, "Error SQL al obtener el max id de la tabla control_medicos"); } if(resul == 0) resul = 1; else resul += 1; return resul; } }