forked from Coded/SIPRP
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3206 lines
117 KiB
3206 lines
117 KiB
/*
|
|
* AnalisesDataProvider.java
|
|
*
|
|
* Created on September 20, 2007, 1:44 PM
|
|
*
|
|
* To change this template, choose Tools | Template Manager
|
|
* and open the template in the editor.
|
|
*/
|
|
package db.providers;
|
|
|
|
import beans.Acidentado;
|
|
import beans.AnaliseAcidente;
|
|
import beans.Causa;
|
|
import beans.Controle;
|
|
import beans.Correcao;
|
|
import beans.Departamento;
|
|
import beans.Estabelecimento;
|
|
import beans.Medico;
|
|
import beans.Medida;
|
|
import beans.Recomendacao;
|
|
import beans.Seccao;
|
|
import beans.TecnicoSaude;
|
|
import beans.TipoUtilizador;
|
|
import beans.Trabalhador;
|
|
import com.evolute.utils.arrays.Virtual2DArray;
|
|
import com.evolute.utils.sql.Assignment;
|
|
import com.evolute.utils.sql.Expression;
|
|
import com.evolute.utils.sql.Field;
|
|
import com.evolute.utils.sql.Insert;
|
|
import com.evolute.utils.sql.Select2;
|
|
import com.evolute.utils.strings.StringPlainer;
|
|
import com.sun.rave.web.ui.model.Option;
|
|
import db.data.siprp.outer.CausasData;
|
|
import global.Global;
|
|
import java.sql.ResultSet;
|
|
import java.sql.ResultSetMetaData;
|
|
import java.sql.Statement;
|
|
import java.text.DateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.ArrayList;
|
|
import java.util.Calendar;
|
|
import java.util.Date;
|
|
import java.util.GregorianCalendar;
|
|
import java.util.HashMap;
|
|
import java.util.LinkedList;
|
|
import java.util.List;
|
|
import java.util.ListIterator;
|
|
import java.util.StringTokenizer;
|
|
import utils.Strings;
|
|
import utils.Utils;
|
|
|
|
/**
|
|
*
|
|
* @author lluis
|
|
*/
|
|
public class AnalisesDataProvider extends GenericDataProvider
|
|
{
|
|
|
|
private static AnalisesDataProvider INSTANCE = null;
|
|
|
|
private AnalisesDataProvider() throws Exception
|
|
{
|
|
super();
|
|
}
|
|
|
|
public static synchronized AnalisesDataProvider getInstance() throws Exception
|
|
{
|
|
if ( INSTANCE == null )
|
|
{
|
|
INSTANCE = new AnalisesDataProvider();
|
|
}
|
|
return INSTANCE;
|
|
}
|
|
|
|
public Controle getControle() throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM controle WHERE id = 1";
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
Controle c = new Controle();
|
|
c.setId( new Integer( rs.getInt( "id" ) ) );
|
|
c.setAnalise_year( new Integer( rs.getInt( "analise_year" ) ) );
|
|
c.setLast_analise_nr( new Integer( rs.getInt( "last_analise_nr" ) ) );
|
|
return c;
|
|
}
|
|
|
|
public Controle getControloByAno( Integer ano ) throws Exception
|
|
{
|
|
Controle c = null;
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM controle WHERE analise_year = " + ano;
|
|
ResultSet rs = st.executeQuery( sql );
|
|
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
c = new Controle();
|
|
c.setId( new Integer( rs.getInt( "id" ) ) );
|
|
c.setAnalise_year( new Integer( rs.getInt( "analise_year" ) ) );
|
|
c.setLast_analise_nr( new Integer( rs.getInt( "last_analise_nr" ) ) );
|
|
}
|
|
return c;
|
|
}
|
|
|
|
public Controle createAnoNumeracao( Integer ano ) throws Exception
|
|
{
|
|
Controle c = new Controle();
|
|
Integer newId = getMaxControleId();
|
|
c.setId( newId );
|
|
c.setAnalise_year( ano );
|
|
c.setLast_analise_nr( new Integer( 0 ) );
|
|
Statement st = createStatement();
|
|
|
|
String sql = "INSERT INTO controle (id, analise_year, last_analise_nr) VALUES (";
|
|
sql += c.getId() + ", ";
|
|
sql += c.getAnalise_year() + ", ";
|
|
sql += c.getLast_analise_nr() + ")";
|
|
st.execute( sql );
|
|
return c;
|
|
}
|
|
|
|
public void updateControle( Controle c ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "UPDATE controle SET analise_year = " + c.getAnalise_year() + ", ";
|
|
sql += "last_analise_nr = " + c.getLast_analise_nr() + " ";
|
|
sql += "WHERE id = " + c.getId();
|
|
st.execute( sql );
|
|
}
|
|
|
|
public String getExpression( String nome, Integer estabelecimentoID, String visitaDate, String POR )
|
|
{
|
|
String tables = "analises_acidentes";
|
|
String joinConditions = "";
|
|
String whereExpression = "analises_acidentes.apagada = 'n' ";
|
|
|
|
if ( nome != null || POR != null )
|
|
{
|
|
tables += ", acidentados";
|
|
joinConditions += "acidentados.id = analises_acidentes.acidentado_id AND ";
|
|
}
|
|
|
|
if ( nome != null )
|
|
{
|
|
nome = StringPlainer.convertString( nome.trim() );
|
|
nome = nome.replaceAll( " ", "%" );
|
|
whereExpression += "AND plain_utf8( acidentados.nome ) LIKE '%" + nome + "%' ";
|
|
}
|
|
if ( estabelecimentoID != null )
|
|
{
|
|
// estabelecimento = StringPlainer.convertString( estabelecimento.trim() );
|
|
// estabelecimento = estabelecimento.replaceAll( " ", "%" );
|
|
// tables += ", estabelecimentos";
|
|
// joinConditions += "analises_acidentes.estabelecimento_id = estabelecimentos.id AND ";
|
|
// whereExpression += "AND plain_utf8( estabelecimentos.nome ) LIKE '%" + estabelecimento + "%' ";
|
|
whereExpression += " AND analises_acidentes.estabelecimento_id = " + estabelecimentoID + " ";
|
|
}
|
|
if ( visitaDate != null )
|
|
{
|
|
whereExpression += "AND analises_acidentes.data_acidente = '" + visitaDate + "' ";
|
|
}
|
|
if ( POR != null )
|
|
{
|
|
whereExpression += "AND acidentados.numero_mecanografico LIKE '%" + POR.toUpperCase() + "%' ";
|
|
}
|
|
|
|
return "SELECT * FROM " + tables + " WHERE " + joinConditions + whereExpression + " ";
|
|
}
|
|
|
|
/*************************************************************************/
|
|
/********************************* ACTUAIS *******************************/
|
|
/*************************************************************************/
|
|
public ArrayList searchAnalisesActualSeg( Integer estabelecimento_id,
|
|
String nome, String visitaDate, String POR, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesActuaisSegList( estabelecimento_id, responsavel_loja, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, null, visitaDate, POR );
|
|
|
|
if ( responsavel_loja.matches( "y" ) )
|
|
{
|
|
sql += "AND (estado = " + Global.ESTADO_SEG + " OR (averiguacao_posterior = 'y' AND averiguacao_obs = '')" +
|
|
" OR estado = " + Global.ESTADO_ASSINATURA_SEG + ")" + " AND estabelecimento_id = " + estabelecimento_id +
|
|
" ORDER BY analise_nr";
|
|
}
|
|
else
|
|
{
|
|
sql += "AND (estado = " + Global.ESTADO_SEG + " OR (averiguacao_posterior = 'y' AND averiguacao_obs = ''))" +
|
|
" AND estabelecimento_id = " + estabelecimento_id +
|
|
" ORDER BY analise_nr";
|
|
}
|
|
|
|
System.out.println( "SQL: " + sql );
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesActuaisSegList( Integer estabelecimentoID, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
Expression where = new Field( "analises_acidentes.apagada" ).isEqual( "n" );
|
|
where = where.and( new Field( "analises_acidentes.estabelecimento_id" ).isEqual( estabelecimentoID ) );
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM analises_acidentes.data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
|
|
Expression states = new Field( "analises_acidentes.estado" ).isEqual( Global.ESTADO_SEG ).or(
|
|
new Field( "analises_acidentes.averiguacao_posterior" ).isEqual( "y" ).and( new Field( "analises_acidentes.averiguacao_obs" ).isEqual( "" ) ) );
|
|
if ( "y".equals( responsavel_loja ) )
|
|
{
|
|
states = states.or( new Field( "analises_acidentes.estado" ).isEqual( Global.ESTADO_ASSINATURA_SEG ) );
|
|
}
|
|
where = where.and( states );
|
|
|
|
Select2 query = new Select2(
|
|
new String[]
|
|
{
|
|
"analises_acidentes"
|
|
},
|
|
new Integer[]
|
|
{
|
|
},
|
|
new Expression[]
|
|
{
|
|
},
|
|
new String[]
|
|
{
|
|
"*"
|
|
},
|
|
where,
|
|
new String[]
|
|
{
|
|
"analises_acidentes.analise_nr"
|
|
},
|
|
null, null, null );
|
|
|
|
// String sql = "";
|
|
// if ( responsavel_loja.matches( "y" ) )
|
|
// {
|
|
// sql = "SELECT * " +
|
|
// "FROM analises_acidentes " +
|
|
// "WHERE " +
|
|
// "(estado = " + Global.ESTADO_SEG + " OR (averiguacao_posterior = 'y' AND averiguacao_obs = '')" +
|
|
// " OR estado = " + Global.ESTADO_ASSINATURA_SEG + ")" +
|
|
// " AND estabelecimento_id = " + estabelecimentoID +
|
|
// " AND apagada = 'n' " +
|
|
// "ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * " +
|
|
// "FROM analises_acidentes " +
|
|
// "WHERE " +
|
|
// "( estado = " + Global.ESTADO_SEG + " OR (averiguacao_posterior = 'y' AND averiguacao_obs = '') )" +
|
|
// " AND estabelecimento_id = " + estabelecimentoID +
|
|
// " AND apagada = 'n' " +
|
|
// "ORDER BY analise_nr";
|
|
// }
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchAnalisesActualRH( Integer estabelecimento_id,
|
|
String nome, String visitaDate, String POR, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesActuaisRhList( estabelecimento_id, responsavel_loja, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, null, visitaDate, POR );
|
|
|
|
if ( responsavel_loja.matches( "y" ) )
|
|
{
|
|
sql += "AND (estado = " + Global.ESTADO_RH1 + " OR estado = " + Global.ESTADO_RH2 +
|
|
" OR estado = " + Global.ESTADO_ASSINATURA_RH + ") AND estabelecimento_id = " + estabelecimento_id +
|
|
" ORDER BY analise_nr";
|
|
}
|
|
else
|
|
{
|
|
sql += "AND (estado = " + Global.ESTADO_RH1 + " OR estado = " + Global.ESTADO_RH2 +
|
|
") AND estabelecimento_id = " + estabelecimento_id +
|
|
" ORDER BY analise_nr";
|
|
}
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesActuaisRhList( Integer estabelecimentoID, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
Expression where = new Field( "apagada" ).isEqual( "n" );
|
|
where = where.and( new Field( "estabelecimento_id" ).isEqual( estabelecimentoID ) );
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM analises_acidentes.data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
|
|
Expression or = new Field( "estado" ).isEqual( Global.ESTADO_RH1 ).or( new Field( "estado" ).isEqual( Global.ESTADO_RH2 ) );
|
|
if ( "y".equals( responsavel_loja ) )
|
|
{
|
|
or = or.or( new Field( "estado" ).isEqual( Global.ESTADO_ASSINATURA_RH ) );
|
|
}
|
|
where = where.and( or );
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analise_nr" },
|
|
null, null, null );
|
|
|
|
// String sql = "";
|
|
// if ( responsavel_loja.matches( "y" ) )
|
|
// {
|
|
// sql = "SELECT * " +
|
|
// "FROM analises_acidentes " +
|
|
// "WHERE " +
|
|
// "(estado = " + Global.ESTADO_RH1 + " OR estado = " + Global.ESTADO_RH2 + " OR estado = " + Global.ESTADO_ASSINATURA_RH + ") " +
|
|
// "AND estabelecimento_id = " + estabelecimentoID +
|
|
// " AND apagada = 'n' " +
|
|
// "ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * " +
|
|
// "FROM analises_acidentes " +
|
|
// "WHERE " +
|
|
// "(estado = " + Global.ESTADO_RH1 + " OR estado = " + Global.ESTADO_RH2 + ") " +
|
|
// "AND estabelecimento_id = " + estabelecimentoID +
|
|
// " AND apagada = 'n' " +
|
|
// "ORDER BY analise_nr";
|
|
// }
|
|
|
|
System.out.println( "\ngetAnalisesActuaisRhList() : " + query.toString() + "\n" );
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchAnalisesActuaisHS( Integer estabelecimento_id,
|
|
String nome, Integer estabelecimentoID, String visitaDate, String POR, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && estabelecimentoID == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesActuaisHsList( estabelecimento_id, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, estabelecimentoID, visitaDate, POR );
|
|
|
|
sql += "AND (estado = " + Global.ESTADO_HS + " OR estado = " + Global.ESTADO_FECHAR +
|
|
" OR estado = " + Global.ESTADO_CONSOLIDACAO + ")" +
|
|
" ORDER BY analise_nr";
|
|
|
|
System.out.println( "\nAnalisesDataProvider . searchAnalisesActuaisHS() :\n\t" + sql );
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesActuaisHsList( Integer estabelecimentoID, Integer fromYear ) throws Exception
|
|
{
|
|
Expression where = new Field( "apagada" ).isEqual( "n" ).and(
|
|
new Field( "estado" ).isEqual( Global.ESTADO_HS ).or( new Field( "estado" ).isEqual( Global.ESTADO_FECHAR ) ).or( new Field( "estado" ).isEqual( Global.ESTADO_CONSOLIDACAO ) ) );
|
|
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analise_nr" },
|
|
null, null, null
|
|
);
|
|
|
|
// String sql = "SELECT * " +
|
|
// "FROM analises_acidentes " +
|
|
// "WHERE " +
|
|
// "(estado = " + Global.ESTADO_HS + " OR estado = " + Global.ESTADO_FECHAR +
|
|
// " OR estado = " + Global.ESTADO_CONSOLIDACAO + ")" +
|
|
// " AND apagada = 'n' " +
|
|
// "ORDER BY analise_nr";
|
|
|
|
System.out.println( "\nAnalisesDataProvider . getAnalisesActuaisHsList() : " + query.toString() );
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
/*************************************************************************/
|
|
/******************************* SEGUIMENTO ******************************/
|
|
/*************************************************************************/
|
|
public ArrayList searchAnalisesSeguimentoSeg( Integer estabelecimento_id,
|
|
String nome, String visitaDate, String POR, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesSeguimentoSegList( estabelecimento_id, responsavel_loja, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, null, visitaDate, POR );
|
|
|
|
if ( responsavel_loja.matches( "y" ) )
|
|
{
|
|
sql += "AND estabelecimento_id = " + estabelecimento_id + " AND (" +
|
|
"estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_ASSINATURA_SEG + " AND (" +
|
|
"averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> '')" +
|
|
") " +
|
|
"OR (estado > " + Global.ESTADO_ASSINATURA_SEG + " AND estado < " + Global.ESTADO_CONCLUIDO + ")" +
|
|
")" + " ORDER BY analise_nr";
|
|
}
|
|
else
|
|
{
|
|
sql += "AND estabelecimento_id = " + estabelecimento_id + " AND (" +
|
|
"(estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_FECHAR + " AND (" +
|
|
"averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> '')" +
|
|
")) OR estado = " + Global.ESTADO_FECHAR +
|
|
")" + " ORDER BY analise_nr";
|
|
}
|
|
|
|
System.out.println( "SQL: " + sql );
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesSeguimentoSegList( Integer estabelecimento_id, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
String sql = null;
|
|
|
|
// TODO : change to Select2
|
|
if ( responsavel_loja.matches( "y" ) )
|
|
{
|
|
sql = "SELECT * FROM analises_acidentes WHERE " +
|
|
"estabelecimento_id = " + estabelecimento_id + " AND (" +
|
|
"estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_ASSINATURA_SEG + " AND (" +
|
|
"averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> '')" +
|
|
") " +
|
|
"OR (estado > " + Global.ESTADO_ASSINATURA_SEG + " AND estado < " + Global.ESTADO_CONCLUIDO + ")" +
|
|
")" + " AND apagada = 'n' ";
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT * FROM analises_acidentes WHERE " +
|
|
"estabelecimento_id = " + estabelecimento_id + " AND (" +
|
|
"(estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_FECHAR + " AND (" +
|
|
"averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> '')" +
|
|
")) OR estado = " + Global.ESTADO_FECHAR +
|
|
")" + " AND apagada = 'n' ";
|
|
}
|
|
if ( fromYear != null )
|
|
{
|
|
sql += " AND EXTRACT( year FROM analises_acidentes.data_acidente ) = " + fromYear + " ";
|
|
}
|
|
sql += " ORDER BY analise_nr ";
|
|
|
|
System.out.println( "\ngetAnalisesSeguimentoSegList() : " + sql + "\n" );
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchAnalisesSeguimentoHS( Integer estabelecimento_id,
|
|
String nome, Integer estabelecimentoID, String visitaDate, String POR, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && estabelecimentoID == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesSeguimentoHsList( estabelecimento_id, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, estabelecimentoID, visitaDate, POR );
|
|
|
|
sql += "AND (" +
|
|
"estado < " + Global.ESTADO_HS + " OR (estado > " + Global.ESTADO_HS + " AND estado < " + Global.ESTADO_CONSOLIDACAO + ") " +
|
|
"OR (estado > " + Global.ESTADO_CONSOLIDACAO + " AND estado < " + Global.ESTADO_FECHAR + ")" +
|
|
")" + " ORDER BY analise_nr";
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesSeguimentoHsList( Integer estabelecimentoID, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
Expression where = new Field( "analises_acidentes.apagada" ).isEqual( "n" );
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM analises_acidentes.data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
where = where.and(
|
|
new Field( "estado" ).isLess( Global.ESTADO_HS ).or( new Field( "estado" ).isGreater( Global.ESTADO_HS ).and( new Field( "estado" ).isLess( Global.ESTADO_CONSOLIDACAO ) ) ).or( new Field( "estado" ).isGreater( Global.ESTADO_CONSOLIDACAO ).and( new Field( "estado" ).isLess( Global.ESTADO_FECHAR ) ) ) );
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analises_acidentes.analise_nr" },
|
|
null, null, null
|
|
);
|
|
|
|
// String sql = null;
|
|
// sql = "SELECT * FROM analises_acidentes WHERE (" +
|
|
// "estado < " + Global.ESTADO_HS + " OR (estado > " + Global.ESTADO_HS + " AND estado < " + Global.ESTADO_CONSOLIDACAO + ") " +
|
|
// "OR (estado > " + Global.ESTADO_CONSOLIDACAO + " AND estado < " + Global.ESTADO_FECHAR + ")" +
|
|
// ")" + " AND apagada = 'n' " +
|
|
// "ORDER BY analise_nr";
|
|
// AND estabelecimento_id = " + estabelecimento_id;
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
System.out.println( "SEGUIMENTO HS SQL : " + query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchAnalisesSeguimentoRH( Integer estabelecimento_id,
|
|
String nome, String visitaDate, String POR, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesSeguimentoRhList( estabelecimento_id, responsavel_loja, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, null, visitaDate, POR );
|
|
|
|
if ( responsavel_loja.matches( "y" ) )
|
|
{
|
|
sql += "AND (estado = " + Global.ESTADO_SEG + " OR estado = " + Global.ESTADO_HS +
|
|
" OR estado = " + Global.ESTADO_CONSOLIDACAO + " OR estado = " + Global.ESTADO_ASSINATURA_SEG +
|
|
" OR estado = " + Global.ESTADO_FECHAR + ") AND estabelecimento_id = " + estabelecimento_id +
|
|
" ORDER BY analise_nr";
|
|
}
|
|
else
|
|
{
|
|
sql += "AND ( estado = " + Global.ESTADO_SEG + " OR estado = " + Global.ESTADO_HS +
|
|
" OR estado = " + Global.ESTADO_CONSOLIDACAO + " OR estado = " + Global.ESTADO_ASSINATURA_SEG +
|
|
" OR estado = " + Global.ESTADO_ASSINATURA_RH + " OR estado = " + Global.ESTADO_FECHAR +
|
|
") AND estabelecimento_id = " + estabelecimento_id +
|
|
" ORDER BY analise_nr";
|
|
}
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesSeguimentoRhList( Integer estabelecimentoID, String responsavel_loja, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
Expression where = new Field( "apagada" ).isEqual( "n" );
|
|
where = where.and( new Field( "estabelecimento_id" ).isEqual( estabelecimentoID ) );
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM analises_acidentes.data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
|
|
Expression or = new Field( "estado" ).isEqual( Global.ESTADO_SEG );
|
|
or = or.or( new Field( "estado" ).isEqual( Global.ESTADO_HS ) );
|
|
or = or.or( new Field( "estado" ).isEqual( Global.ESTADO_CONSOLIDACAO ) );
|
|
or = or.or( new Field( "estado" ).isEqual( Global.ESTADO_ASSINATURA_SEG ) );
|
|
or = or.or( new Field( "estado" ).isEqual( Global.ESTADO_FECHAR ) );
|
|
if ( !"y".equals( responsavel_loja ) )
|
|
{
|
|
or = or.or( new Field( "estado" ).isEqual( Global.ESTADO_ASSINATURA_RH ) );
|
|
}
|
|
where = where.and( or );
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analise_nr" },
|
|
null, null, null
|
|
);
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchAnalisesSeguimentoMedico( Integer estabelecimento_id, String nome, String visitaDate, String POR, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesSeguimentoMedList( estabelecimento_id, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, null, visitaDate, POR );
|
|
|
|
sql += "AND estado < 5 OR (estado = 6 AND estado_assinatura <> 2) OR (estado = 6 AND estado_assinatura = 2 AND ass_med = 'y') " +
|
|
"OR (estado > 6 AND estado < 9) " +
|
|
"AND estabelecimento_id = " + estabelecimento_id +
|
|
" ORDER BY analise_nr";
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesSeguimentoMedList( Integer estabelecimentoID, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
// String sql = null;
|
|
// sql = "SELECT * FROM analises_acidentes WHERE " +
|
|
// "estado < 5 OR (estado = 6 AND estado_assinatura <> 2) OR (estado = 6 AND estado_assinatura = 2 AND ass_med = 'y') " +
|
|
// "OR (estado > 6 AND estado < 9) " +
|
|
// "AND estabelecimento_id = " + estabelecimentoID + " AND apagada = 'n' ";
|
|
// if ( fromYear != null )
|
|
// {
|
|
// sql += " AND EXTRACT( year FROM analises_acidentes.data_acidente ) = " + fromYear + " ";
|
|
// }
|
|
// sql += " ORDER BY analise_nr ";
|
|
|
|
Expression where = new Field( "analises_acidentes.apagada" ).isEqual( "n" );
|
|
where = where.and( new Field( "analises_acidentes.estabelecimento_id" ).isEqual( estabelecimentoID ) );
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM analises_acidentes.data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
where = where.and(
|
|
new Field( "analises_acidentes.estado" ).isLess( 5 ).or(
|
|
new Field( "analises_acidentes.estado" ).isEqual( 6 ).and( new Field( "analises_acidentes.estado_assinatura" ).isDifferent( 2 ) ) ).or(
|
|
new Field( "analises_acidentes.estado" ).isEqual( 6 ).and( new Field( "analises_acidentes.estado_assinatura" ).isEqual( 2 ) ).and( new Field( "analises_acidentes.ass_med" ).isEqual( "y" ) ) ).or(
|
|
new Field( "analises_acidentes.estado" ).isGreater( 6 ).and( new Field( "analises_acidentes.estado" ).isLess( 9 ) ) ) );
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analises_acidentes.analise_nr" },
|
|
null, null, null
|
|
);
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchAnalisesSeguimentoDirSiprp( String nome, Integer estabelecimentoID, String visitaDate, String POR, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && estabelecimentoID == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesSeguimentoDirSiprpList( fromYear );
|
|
}
|
|
|
|
String sql = getExpression( nome, estabelecimentoID, visitaDate, POR );
|
|
sql += " AND estado < " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesSeguimentoDirSiprpList( Integer fromYear ) throws Exception
|
|
{
|
|
Expression where = new Field( "apagada" ).isEqual( "n" );
|
|
where = where.and( new Field( "estado" ).isLess( Global.ESTADO_CONCLUIDO ) );
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM analises_acidentes.data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analise_nr" },
|
|
null, null, null
|
|
);
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchAnalisesSeguimentoDirGerRh(
|
|
String nome, Integer estabelecimentoID, String visitaDate, String POR, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
return searchAnalisesSeguimentoDirSiprp( nome, estabelecimentoID, visitaDate, POR, fromYear );
|
|
}
|
|
|
|
public ArrayList getAnalisesSeguimentoDirGerRhList( Integer fromYear ) throws Exception
|
|
{
|
|
return getAnalisesSeguimentoDirSiprpList( fromYear );
|
|
}
|
|
|
|
public ArrayList searchAnalisesSeguimentoGestor( Integer estabelecimento_id,
|
|
String nome, Integer estabelecimentoID, String visitaDate, String POR, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
if ( nome == null && estabelecimentoID == null && visitaDate == null && POR == null )
|
|
{
|
|
return getAnalisesSeguimentoGestorList( estabelecimento_id, fromYear );
|
|
}
|
|
|
|
Statement st = createStatement();
|
|
String sql = getExpression( nome, estabelecimentoID, visitaDate, POR );
|
|
sql += "AND estado < " + Global.ESTADO_CONCLUIDO + " ";
|
|
|
|
if ( estabelecimento_id != null )
|
|
{
|
|
sql += " AND estabelecimento_id = " + estabelecimento_id + " ";
|
|
}
|
|
sql += " ORDER BY analise_nr";
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesSeguimentoGestorList( Integer estabelecimentoID, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
Expression where = new Field( "apagada" ).isEqual( "n" );
|
|
where = where.and( new Field( "estado" ).isLess( Global.ESTADO_CONCLUIDO ) );
|
|
if ( estabelecimentoID != null )
|
|
{
|
|
where = where.and( new Field( "estabelecimento_id" ).isEqual( estabelecimentoID ) );
|
|
}
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM analises_acidentes.data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analise_nr" },
|
|
null, null, null
|
|
);
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
/*************************************************************************/
|
|
/****************************** CONCLUIDOS *******************************/
|
|
/*************************************************************************/
|
|
public ArrayList getAnalisesConcluidasList( Integer estabelecimentoID, Integer fromYear ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
|
|
Expression where = new Field( "estado" ).isEqual( Global.ESTADO_CONCLUIDO );
|
|
where = where.and( new Field( "apagada" ).isEqual( "n" ) );
|
|
if ( estabelecimentoID != null )
|
|
{
|
|
where = where.and( new Field( "estabelecimento_id" ).isEqual( estabelecimentoID ) );
|
|
}
|
|
if ( fromYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM data_acidente )" ).isEqual( fromYear ) );
|
|
}
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "*" },
|
|
where,
|
|
new String[] { "analise_nr" },
|
|
null, null, null
|
|
);
|
|
|
|
System.out.println( "\ngetAnalisesConcluidasList() : " + query.toString() + "\n" );
|
|
|
|
ResultSet rs = st.executeQuery( query.toString() );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getAnalisesConcluidasHsList( Integer fromYear ) throws Exception
|
|
{
|
|
return getAnalisesConcluidasList( null, fromYear );
|
|
}
|
|
|
|
public ArrayList searchAnalisesConcluidasList( Integer estabelecimento_id,
|
|
Integer ano, Integer mes, Integer dia, String POR, String nome, Integer estabelecimentoID, Integer fromYear )
|
|
throws Exception
|
|
{
|
|
String sql = null;
|
|
|
|
sql = getExpression( nome, estabelecimentoID, null, POR );
|
|
|
|
if ( estabelecimento_id != null && estabelecimento_id.intValue() > 0 )
|
|
{
|
|
sql += "AND analises_acidentes.estabelecimento_id = " + estabelecimento_id + " ";
|
|
}
|
|
|
|
if ( ano != null )
|
|
{
|
|
final DateFormat D_F = new SimpleDateFormat( "yyyy-MM-dd" );
|
|
Calendar calendar_from = Calendar.getInstance();
|
|
Calendar calendar_to = Calendar.getInstance();
|
|
|
|
calendar_from.set( Calendar.YEAR, ano.intValue() );
|
|
calendar_from.set( Calendar.MONTH, 0 );
|
|
calendar_from.set( Calendar.DATE, 1 );
|
|
|
|
calendar_to.set( Calendar.YEAR, ano.intValue() );
|
|
calendar_to.set( Calendar.MONTH, 11 );
|
|
calendar_to.set( Calendar.DATE, 31 );
|
|
|
|
if ( mes != null )
|
|
{
|
|
calendar_from.set( Calendar.MONTH, mes.intValue() - 1 );
|
|
calendar_to.set( Calendar.MONTH, mes.intValue() - 1 );
|
|
|
|
if ( dia != null )
|
|
{
|
|
calendar_from.set( Calendar.DATE, dia.intValue() );
|
|
calendar_to.set( Calendar.DATE, dia.intValue() );
|
|
}
|
|
else
|
|
{
|
|
calendar_from.set( Calendar.DATE, 1 );
|
|
calendar_to.set( Calendar.DATE, 31 );
|
|
}
|
|
}
|
|
else
|
|
{
|
|
calendar_from.set( Calendar.MONTH, 0 );
|
|
calendar_to.set( Calendar.MONTH, 11 );
|
|
}
|
|
|
|
Date dateStart = calendar_from.getTime();
|
|
Date dateEnd = calendar_to.getTime();
|
|
|
|
if ( dateStart.compareTo( dateEnd ) == 0 )
|
|
{
|
|
sql += "AND analises_acidentes.data_acidente = '" + D_F.format( dateStart ) + "' ";
|
|
}
|
|
else
|
|
{
|
|
sql += "AND ( analises_acidentes.data_acidente >= '" + D_F.format( dateStart ) + "' AND analises_acidentes.data_acidente <= '" + D_F.format( dateEnd ) + "' ) ";
|
|
}
|
|
}
|
|
|
|
sql += " AND estado = " + Global.ESTADO_CONCLUIDO + " ";
|
|
|
|
// if search parameters are null, account with fromYear
|
|
if ( ano == null && mes == null && dia == null && POR == null && nome == null && estabelecimentoID == null && fromYear != null )
|
|
{
|
|
sql += " AND EXTRACT( year FROM analises_acidentes.data_acidente ) = " + fromYear + " ";
|
|
}
|
|
|
|
sql += " ORDER BY analises_acidentes.analise_nr ASC ";
|
|
|
|
System.out.println( "CONCLUIDAS SQL: " + sql );
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ArrayList list = fillAnaliseFields( rs );
|
|
return list;
|
|
}
|
|
|
|
//by lino
|
|
// public ArrayList searchAanalisesConcluidasList( Integer estabelecimento_id,
|
|
// Integer ano, Integer mes, Integer dia, String por, String nome, String estabelecimento )
|
|
// throws Exception
|
|
// {
|
|
// Calendar cal = Calendar.getInstance();
|
|
// Statement st = createStatement();
|
|
// String sql = "";
|
|
// if(por != null)
|
|
// {
|
|
// por = por.toUpperCase();
|
|
// }
|
|
// if(nome != null)
|
|
// {
|
|
// nome = nome.toUpperCase();
|
|
// }
|
|
//
|
|
// if( ano != null)
|
|
// {
|
|
// if( mes != null)
|
|
// {
|
|
// if( dia != null)
|
|
// {
|
|
// cal.set( cal.YEAR, ano.intValue() );
|
|
// cal.set( cal.MONTH, mes.intValue() -1 );
|
|
// cal.set( cal.DATE, dia.intValue() );
|
|
// java.sql.Date data_acidente = new java.sql.Date( cal.getTime().getTime() );
|
|
// if(por != null && nome != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente +
|
|
// "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente +
|
|
// "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// else if(por != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente +
|
|
// "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente +
|
|
// "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
// " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
//
|
|
// }
|
|
// else if( nome != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente +
|
|
// "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente +
|
|
// "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
// " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// else
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE data_acidente = '" + data_acidente + "' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE data_acidente = '" + data_acidente + "' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
// " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// }
|
|
// else
|
|
// {
|
|
// cal.set( cal.YEAR, ano.intValue() );
|
|
// cal.set( cal.MONTH, mes.intValue() -1 );
|
|
// cal.set( cal.DATE, 1 );
|
|
// java.sql.Date data_acidente_from = new java.sql.Date( cal.getTime().getTime() );
|
|
// cal.set( cal.DATE, 31 );
|
|
// java.sql.Date data_acidente_to = new java.sql.Date( cal.getTime().getTime() );
|
|
// if(por != null && nome != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// else if(por != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
//
|
|
// }
|
|
// else if( nome != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados" +
|
|
// " WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// else
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
//
|
|
// }
|
|
// } // dia
|
|
// } // mes
|
|
// else
|
|
// {
|
|
// cal.set( cal.YEAR, ano.intValue() );
|
|
// cal.set( cal.MONTH, 0 );
|
|
// cal.set( cal.DATE, 1 );
|
|
// java.sql.Date data_acidente_from = new java.sql.Date( cal.getTime().getTime() );
|
|
// cal.set( cal.MONTH, 11 );
|
|
// cal.set( cal.DATE, 31 );
|
|
// java.sql.Date data_acidente_to = new java.sql.Date( cal.getTime().getTime() );
|
|
// if(por != null && nome != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// else if(por != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
//
|
|
// }
|
|
// else if( nome != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from +
|
|
// "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// else
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to +
|
|
// "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// }
|
|
// } // ano
|
|
// else
|
|
// {
|
|
// if(por != null && nome != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// }
|
|
// else if(por != null)
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND numero_mecanografico LIKE '%" + por + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND numero_mecanografico LIKE '%" + por + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
//
|
|
// }
|
|
// else if( nome != null )
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND nome LIKE '%" + nome + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes, acidentados " +
|
|
// "WHERE acidentado_id = acidentados.id AND nome LIKE '%" + nome + "%' " +
|
|
// "AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
//
|
|
// }
|
|
// else
|
|
// {
|
|
// if(estabelecimento_id == null)
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql = "SELECT * FROM analises_acidentes " +
|
|
// "WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id +
|
|
// " AND apagada = 'n' ORDER BY analise_nr";
|
|
// }
|
|
//
|
|
// }
|
|
// }
|
|
// ResultSet rs = st.executeQuery(sql);
|
|
// ArrayList list = fillAnaliseFields(rs);
|
|
//
|
|
// return list;
|
|
// }
|
|
private ArrayList fillAnaliseFields( ResultSet rs ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
// Statement stlocal1 = dblocal.createStatement();
|
|
|
|
ArrayList list = new ArrayList();
|
|
if ( !rs.isBeforeFirst() ) //rs empty
|
|
{
|
|
return list;
|
|
}
|
|
|
|
Statement stlocal = createLocalStatement();
|
|
Statement stlocal1 = createLocalStatement();
|
|
|
|
rs.first();
|
|
int nr = 0;
|
|
do
|
|
{
|
|
AnaliseAcidente a = new AnaliseAcidente();
|
|
a.setId( new Integer( rs.getInt( "id" ) ) );
|
|
|
|
nr++;
|
|
a.setNr( new Integer( nr ) );
|
|
a.setData_acidente( rs.getDate( "data_acidente" ) );
|
|
a.setEmpresa_id( new Integer( rs.getInt( "empresa_id" ) ) );
|
|
a.setEstabelecimento_id( new Integer( rs.getInt( "estabelecimento_id" ) ) );
|
|
String sqllocal1 = "SELECT nome FROM estabelecimentos WHERE id = " + a.getEstabelecimento_id();
|
|
ResultSet rslocal1 = stlocal1.executeQuery( sqllocal1 );
|
|
rslocal1.first();
|
|
a.setNome_estabelecimento( utils.Utils.unicodeToHTML( rslocal1.getString( "nome" ) ) );
|
|
|
|
a.setEstado( new Integer( rs.getInt( "estado" ) ) );
|
|
a.setEstado_assinatura( new Integer( rs.getInt( "estado_assinatura" ) ) );
|
|
a.setFase( getFase( a.getEstado().intValue() ) );
|
|
a.setAcidentado_id( new Integer( rs.getInt( "acidentado_id" ) ) );
|
|
Acidentado ac = getAcidentado( a.getAcidentado_id() );
|
|
String sqllocal = "SELECT nome, numero_mecanografico FROM trabalhadores WHERE id = " + ac.getTrabalhador_id();
|
|
ResultSet rslocal = stlocal.executeQuery( sqllocal );
|
|
String nome_acidentado = "";
|
|
String numero_mecanografico = "";
|
|
if ( rslocal.first() )
|
|
{
|
|
nome_acidentado = rslocal.getString( "nome" );
|
|
numero_mecanografico = rslocal.getString( "numero_mecanografico" );
|
|
}
|
|
a.setNome_acidentado( utils.Utils.unicodeToHTML( nome_acidentado ) );
|
|
a.setNumero_mecanografico( numero_mecanografico );
|
|
Object horas_turno = rs.getObject( "horas_turno" );
|
|
if ( horas_turno == null )
|
|
{
|
|
a.setHoras_turno( null );
|
|
}
|
|
else
|
|
{
|
|
a.setHoras_turno( new Integer( rs.getInt( "horas_turno" ) ) );
|
|
}
|
|
|
|
a.setAveriguador( rs.getString( "averiguador" ) );
|
|
//a.setSeccao(rs.getString("seccao"));
|
|
a.setDepartamento_id( new Integer( rs.getInt( "departamento_id" ) ) );
|
|
a.setSeccao_id( new Integer( rs.getInt( "seccao_id" ) ) );
|
|
a.setLocal_trabalho( rs.getString( "local_trabalho" ) );
|
|
a.setTarefa( rs.getString( "tarefa" ) );
|
|
a.setSubstancias( rs.getString( "substancias" ) );
|
|
// a.setSuperior_hierarquico(rs.getString("superior_hierarquico"));
|
|
a.setCondicoes( rs.getString( "condicoes" ) );
|
|
a.setTestemunhas( rs.getString( "testemunhas" ) );
|
|
a.setCausas( new Integer( rs.getInt( "causas" ) ) );
|
|
a.setDescricao( rs.getString( "descricao" ) );
|
|
a.setConclusoes( rs.getString( "conclusoes" ) );
|
|
a.setAccoes( rs.getString( "accoes" ) );
|
|
a.setAveriguacao_posterior( rs.getString( "averiguacao_posterior" ) );
|
|
a.setAveriguacao_obs( rs.getString( "averiguacao_obs" ) );
|
|
|
|
a.setHora_acidente( rs.getTime( "hora_acidente" ) );
|
|
a.setFormacao_shst( rs.getString( "formacao_shst" ) );
|
|
Object o = rs.getString( "formacao_shst_nao_porque" );
|
|
if ( o == null )
|
|
{
|
|
a.setFormacao_shst_nao_porque( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setFormacao_shst_nao_porque( rs.getString( "formacao_shst_nao_porque" ) );
|
|
}
|
|
a.setOutros_acidentes_com_colaborador( rs.getString( "outros_acidentes_com_colaborador" ) );
|
|
a.setNr_acidentes_com_colaborador( new Integer( rs.getInt( "nr_acidentes_com_colaborador" ) ) );
|
|
a.setNr_relatorio_acidente_colaborador1( new Integer( rs.getInt( "nr_relatorio_acidente_colaborador1" ) ) );
|
|
a.setNr_relatorio_acidente_colaborador2( new Integer( rs.getInt( "nr_relatorio_acidente_colaborador2" ) ) );
|
|
a.setNr_relatorio_acidente_colaborador3( new Integer( rs.getInt( "nr_relatorio_acidente_colaborador3" ) ) );
|
|
a.setNr_relatorio_acidente_colaborador4( new Integer( rs.getInt( "nr_relatorio_acidente_colaborador4" ) ) );
|
|
a.setAcidentes_outros_colaboradores( rs.getString( "acidentes_outros_colaboradores" ) );
|
|
a.setNr_acidentes_outros_colaboradores( new Integer( rs.getInt( "nr_acidentes_outros_colaboradores" ) ) );
|
|
a.setNr_relatorio_acidente_outros_colaboradores1( new Integer( rs.getInt( "nr_relatorio_acidente_outros_colaboradores1" ) ) );
|
|
a.setNr_relatorio_acidente_outros_colaboradores2( new Integer( rs.getInt( "nr_relatorio_acidente_outros_colaboradores2" ) ) );
|
|
a.setNr_relatorio_acidente_outros_colaboradores3( new Integer( rs.getInt( "nr_relatorio_acidente_outros_colaboradores3" ) ) );
|
|
a.setNr_relatorio_acidente_outros_colaboradores4( new Integer( rs.getInt( "nr_relatorio_acidente_outros_colaboradores4" ) ) );
|
|
|
|
a.setLesao_cabeca( rs.getString( "lesao_cabeca" ) );
|
|
a.setLesao_pescoco( rs.getString( "lesao_pescoco" ) );
|
|
a.setLesao_tronco( rs.getString( "lesao_tronco" ) );
|
|
a.setLesao_membro_sup_dir( rs.getString( "lesao_membro_sup_dir" ) );
|
|
a.setLesao_membro_sup_esq( rs.getString( "lesao_membro_sup_esq" ) );
|
|
a.setLesao_membro_inf_dir( rs.getString( "lesao_membro_inf_dir" ) );
|
|
a.setLesao_membro_inf_esq( rs.getString( "lesao_membro_inf_esq" ) );
|
|
Object ob = rs.getString( "especif1" );
|
|
if ( ob == null )
|
|
{
|
|
a.setEspecif1( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setEspecif1( rs.getString( "especif1" ) );
|
|
}
|
|
ob = rs.getString( "especif2" );
|
|
if ( ob == null )
|
|
{
|
|
a.setEspecif2( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setEspecif2( rs.getString( "especif2" ) );
|
|
}
|
|
ob = rs.getString( "especif3" );
|
|
if ( ob == null )
|
|
{
|
|
a.setEspecif3( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setEspecif3( rs.getString( "especif3" ) );
|
|
}
|
|
ob = rs.getString( "especif4" );
|
|
if ( ob == null )
|
|
{
|
|
a.setEspecif4( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setEspecif4( rs.getString( "especif4" ) );
|
|
}
|
|
ob = rs.getString( "tipo_lesao" );
|
|
if ( ob == null )
|
|
{
|
|
a.setTipo_lesao( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setTipo_lesao( rs.getString( "tipo_lesao" ) );
|
|
}
|
|
|
|
a.setTipo_incapacidade( rs.getString( "tipo_incapacidade" ) );
|
|
//a.setCoef_incapacidade(new Integer(( rs.getInt("coef_incapacidade") )));
|
|
a.setCoef_incapacidade( ( Integer ) rs.getObject( "coef_incapacidade" ) );
|
|
a.setData_aval_incapacidade( rs.getDate( "data_aval_incapacidade" ) );
|
|
a.setData_rev_incapacidade( rs.getDate( "data_rev_incapacidade" ) );
|
|
a.setPeriodo_incapacidade_de( rs.getDate( "periodo_incapacidade_de" ) );
|
|
a.setPeriodo_incapacidade_a( rs.getDate( "periodo_incapacidade_a" ) );
|
|
a.setImg_flexao( rs.getString( "img_flexao" ) );
|
|
a.setImg_ext1( rs.getString( "img_ext1" ) );
|
|
a.setImg_ext2( rs.getString( "img_ext2" ) );
|
|
a.setImg_cab2( rs.getString( "img_cab2" ) );
|
|
a.setImg_cab3( rs.getString( "img_cab3" ) );
|
|
a.setImg_ma2( rs.getString( "img_ma2" ) );
|
|
a.setImg_ma3( rs.getString( "img_ma3" ) );
|
|
a.setImg_ma5( rs.getString( "img_ma5" ) );
|
|
a.setImg_ma6( rs.getString( "img_ma6" ) );
|
|
a.setImg_ma8( rs.getString( "img_ma8" ) );
|
|
a.setImg_ma10( rs.getString( "img_ma10" ) );
|
|
a.setImg_rot1( rs.getString( "img_rot1" ) );
|
|
a.setImg_rot2( rs.getString( "img_rot2" ) );
|
|
a.setImg_cab1( rs.getString( "img_cab1" ) );
|
|
a.setImg_cab4( rs.getString( "img_cab4" ) );
|
|
a.setImg_ma1( rs.getString( "img_ma1" ) );
|
|
a.setImg_ma4( rs.getString( "img_ma4" ) );
|
|
a.setImg_ma7( rs.getString( "img_ma7" ) );
|
|
a.setImg_ma9( rs.getString( "img_ma9" ) );
|
|
a.setRestricao_carga( new Integer( rs.getInt( "restricao_carga" ) ) );
|
|
a.setRestricao_motricidade( rs.getString( "restricao_motricidade" ) );
|
|
a.setRestricao_conducao( rs.getString( "restricao_conducao" ) );
|
|
a.setRestricao_vibracoes( rs.getString( "restricao_vibracoes" ) );
|
|
ob = rs.getString( "restricao_outras" );
|
|
if ( ob == null )
|
|
{
|
|
a.setRestricao_outras( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setRestricao_outras( rs.getString( "restricao_outras" ) );
|
|
}
|
|
ob = rs.getString( "med_observ" );
|
|
if ( ob == null )
|
|
{
|
|
a.setMed_observ( "" );
|
|
}
|
|
else
|
|
{
|
|
a.setMed_observ( rs.getString( "med_observ" ) );
|
|
}
|
|
a.setAnalise_nr( rs.getString( "analise_nr" ) );
|
|
a.setMedico_id( new Integer( rs.getInt( "medico_id" ) ) );
|
|
a.setTecnico_saude_id( new Integer( rs.getInt( "tecnico_saude_id" ) ) );
|
|
|
|
//a.setAss_hs(rs.getString("ass_hs"));
|
|
//a.setAss_seg(rs.getString("ass_seg"));
|
|
a.setAss_resp_seg( rs.getString( "ass_resp_seg" ) );
|
|
//a.setAss_med(rs.getString("ass_med"));
|
|
a.setAss_resp_rh( rs.getString( "ass_resp_rh" ) );
|
|
a.setAss_consolidacao( rs.getString( "ass_consolidacao" ) );
|
|
a.setData_consolidacao( rs.getDate( "data_consolidacao" ) );
|
|
a.setData_assinatura_seg( rs.getDate( "data_assinatura_seg" ) );
|
|
a.setData_assinatura_rh( rs.getDate( "data_assinatura_rh" ) );
|
|
a.setNome_resp_seg( rs.getString( "nome_resp_seg" ) );
|
|
a.setNome_resp_rh( rs.getString( "nome_resp_rh" ) );
|
|
a.setCorrecao( rs.getString( "correcao" ) );
|
|
a.setObservacoes_correcao( rs.getString( "observacoes_correcao" ) );
|
|
a.setEstado_antes_correcao( new Integer( rs.getInt( "estado_antes_correcao" ) ) );
|
|
a.setAss_superior( rs.getString( "ass_superior" ) );
|
|
a.setNome_superior( rs.getString( "nome_superior" ) );
|
|
a.setData_assinatura_superior( rs.getDate( "data_assinatura_superior" ) );
|
|
a.setData_inicio_processo( rs.getDate( "data_inicio_processo" ) );
|
|
a.setNome_resp_consolidacao( rs.getString( "nome_resp_consolidacao" ) );
|
|
//System.out.println("ANALISE NR : " + a.getAnalise_nr());
|
|
a.setRh_fase4( new Integer( rs.getInt( "rh_fase4" ) ) );
|
|
|
|
a.setConcluido_por_desactivacao( rs.getBoolean( "concluido_por_desactivacao" ) );
|
|
a.setData_desactivacao( rs.getDate( "data_desactivacao" ) );
|
|
a.setComentario_desactivacao( rs.getString( "comentario_desactivacao" ) );
|
|
list.add( a );
|
|
}
|
|
while ( rs.next() );
|
|
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchTrabalhador( Integer empresa_id, Integer estabelecimento_id, String nrMecanografico, String nome )
|
|
throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "";
|
|
// trabalhadores do estabelecimento
|
|
if ( nrMecanografico != null )
|
|
{
|
|
if ( nome != null )
|
|
{
|
|
sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND estabelecimento_id = " + estabelecimento_id + " AND (trabalhadores.nome LIKE '%" + nome + "%' OR LOWER(numero_mecanografico) LIKE '%" + nrMecanografico.toLowerCase() + "%') AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND estabelecimento_id = " + estabelecimento_id + " AND LOWER(numero_mecanografico) LIKE '%" + nrMecanografico.toLowerCase() + "%' AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if ( nome != null )
|
|
{
|
|
sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND estabelecimento_id = " + estabelecimento_id + " AND trabalhadores.nome LIKE '%" + nome + "%' AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
}
|
|
}
|
|
|
|
System.out.println( "TRABALHADORES SQL B : " + sql );
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
if ( rslocal.isBeforeFirst() )
|
|
{
|
|
rslocal.first();
|
|
do
|
|
{
|
|
Trabalhador t = new Trabalhador();
|
|
t.setId( new Integer( rslocal.getInt( 1 ) ) ); //id
|
|
String nome_trab = rslocal.getString( 2 );
|
|
t.setNome( utils.Utils.unicodeToHTML( nome_trab ) );
|
|
t.setData_nascimento( rslocal.getDate( "data_nascimento" ) );
|
|
t.setFuncao( rslocal.getString( "funcao_proposta" ) );
|
|
t.setData_admissao( rslocal.getDate( "data_admissao" ) );
|
|
t.setNumero_mecanografico( rslocal.getString( "numero_mecanografico" ) );
|
|
t.setEstabelecimento_id( new Integer( rslocal.getInt( 7 ) ) );
|
|
//if(nome != null)
|
|
//{
|
|
t.setEstabelecimento( utils.Utils.unicodeToHTML( rslocal.getString( 8 ) ) );
|
|
//}
|
|
|
|
list.add( t );
|
|
}
|
|
while ( rslocal.next() );
|
|
}
|
|
|
|
|
|
//restantes trabalhadores
|
|
if ( nrMecanografico != null )
|
|
{
|
|
if ( nome != null )
|
|
{
|
|
sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND estabelecimento_id <> " + estabelecimento_id + " AND (trabalhadores.nome LIKE '%" + nome + "%' OR LOWER(numero_mecanografico) LIKE '%" + nrMecanografico.toLowerCase() + "%') AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND estabelecimento_id <> " + estabelecimento_id + " AND LOWER(numero_mecanografico) LIKE '%" + nrMecanografico.toLowerCase() + "%' AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if ( nome != null )
|
|
{
|
|
sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND estabelecimento_id <> " + estabelecimento_id + " AND trabalhadores.nome LIKE '%" + nome + "%' AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
}
|
|
}
|
|
|
|
|
|
// if(nrMecanografico != null)
|
|
// {
|
|
// sql = "SELECT * FROM trabalhadores WHERE LOWER(numero_mecanografico) = '" + nrMecanografico.toLowerCase() + "'";
|
|
// }
|
|
// else if(nome != null)
|
|
// {
|
|
// sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND trabalhadores.nome LIKE '%" + nome + "%'";
|
|
// }
|
|
System.out.println( "TRABALHADORES SQL : " + sql );
|
|
rslocal = stlocal.executeQuery( sql );
|
|
if ( rslocal.isBeforeFirst() )
|
|
{
|
|
rslocal.first();
|
|
do
|
|
{
|
|
Trabalhador t = new Trabalhador();
|
|
t.setId( new Integer( rslocal.getInt( 1 ) ) ); //id
|
|
String nome_trab = rslocal.getString( 2 );
|
|
t.setNome( utils.Utils.unicodeToHTML( nome_trab ) );
|
|
t.setData_nascimento( rslocal.getDate( "data_nascimento" ) );
|
|
t.setFuncao( rslocal.getString( "funcao_proposta" ) );
|
|
t.setData_admissao( rslocal.getDate( "data_admissao" ) );
|
|
t.setNumero_mecanografico( rslocal.getString( "numero_mecanografico" ) );
|
|
t.setEstabelecimento_id( new Integer( rslocal.getInt( 7 ) ) );
|
|
//if(nome != null)
|
|
//{
|
|
t.setEstabelecimento( utils.Utils.unicodeToHTML( rslocal.getString( 8 ) ) );
|
|
//}
|
|
|
|
list.add( t );
|
|
}
|
|
while ( rslocal.next() );
|
|
}
|
|
return list;
|
|
}
|
|
|
|
public ArrayList searchTrabalhador( Integer empresa_id, String nrMecanografico, String nome ) throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "";
|
|
|
|
StringTokenizer st = null;
|
|
|
|
if ( nrMecanografico != null )
|
|
{
|
|
if ( nome != null )
|
|
{
|
|
String sql1 = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND (";
|
|
String sql2 = "";
|
|
String sql3 = ") AND LOWER(numero_mecanografico) LIKE '%" + nrMecanografico.toLowerCase() + "%' AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
st = new StringTokenizer( nome );
|
|
int n = 0;
|
|
while ( st.hasMoreTokens() )
|
|
{
|
|
if ( n > 0 )
|
|
{
|
|
sql2 += "AND ";
|
|
}
|
|
sql2 += "trabalhadores.nome LIKE '%" + st.nextToken() + "%' ";
|
|
n++;
|
|
}
|
|
sql = sql1 + sql2 + sql3;
|
|
//sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND (trabalhadores.nome LIKE '%" + nome + "%' AND LOWER(numero_mecanografico) LIKE '%" + nrMecanografico.toLowerCase() + "%') AND estabelecimentos.empresa_id = " + empresa_id;
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND LOWER(numero_mecanografico) LIKE '%" + nrMecanografico.toLowerCase() + "%' AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if ( nome != null )
|
|
{
|
|
//sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND trabalhadores.nome LIKE '%" + nome + "%' AND estabelecimentos.empresa_id = " + empresa_id;
|
|
String sql1 = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.id, estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND (";
|
|
String sql2 = "";
|
|
String sql3 = ") AND estabelecimentos.empresa_id = " + empresa_id + " AND trabalhadores.inactivo = 'n'";
|
|
st = new StringTokenizer( nome );
|
|
int n = 0;
|
|
while ( st.hasMoreTokens() )
|
|
{
|
|
if ( n > 0 )
|
|
{
|
|
sql2 += "AND ";
|
|
}
|
|
sql2 += "trabalhadores.nome LIKE '%" + st.nextToken() + "%' ";
|
|
n++;
|
|
}
|
|
sql = sql1 + sql2 + sql3;
|
|
|
|
}
|
|
}
|
|
|
|
System.out.println( "TRABALHADORES SQL A : " + sql );
|
|
// if(nrMecanografico != null)
|
|
// {
|
|
// sql = "SELECT * FROM trabalhadores WHERE LOWER(numero_mecanografico) = '" + nrMecanografico.toLowerCase() + "'";
|
|
// }
|
|
// else if(nome != null)
|
|
// {
|
|
// sql = "SELECT trabalhadores.id, trabalhadores.nome, data_nascimento, funcao_proposta, data_admissao, numero_mecanografico , estabelecimentos.nome FROM trabalhadores, estabelecimentos WHERE estabelecimento_id = estabelecimentos.id AND trabalhadores.nome LIKE '%" + nome + "%'";
|
|
// }
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
do
|
|
{
|
|
Trabalhador t = new Trabalhador();
|
|
t.setId( new Integer( rslocal.getInt( 1 ) ) ); //id
|
|
String nome_trab = rslocal.getString( 2 );
|
|
t.setNome( utils.Utils.unicodeToHTML( nome_trab ) );
|
|
t.setData_nascimento( rslocal.getDate( "data_nascimento" ) );
|
|
t.setFuncao( rslocal.getString( "funcao_proposta" ) );
|
|
t.setData_admissao( rslocal.getDate( "data_admissao" ) );
|
|
t.setNumero_mecanografico( rslocal.getString( "numero_mecanografico" ) );
|
|
t.setEstabelecimento_id( new Integer( rslocal.getInt( 7 ) ) );
|
|
//if(nome != null)
|
|
//{
|
|
t.setEstabelecimento( utils.Utils.unicodeToHTML( rslocal.getString( 8 ) ) );
|
|
//}
|
|
|
|
list.add( t );
|
|
}
|
|
while ( rslocal.next() );
|
|
return list;
|
|
}
|
|
|
|
public ArrayList getTrabalhadoresListByEstabelecimento( Integer estabelecimento_id ) throws Exception
|
|
{
|
|
Utils utils = new Utils();
|
|
ArrayList list = new ArrayList();
|
|
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT * FROM trabalhadores WHERE estabelecimento_id = " + estabelecimento_id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
int nr = 0;
|
|
do
|
|
{
|
|
Trabalhador t = new Trabalhador();
|
|
t.setId( new Integer( rslocal.getInt( "id" ) ) );
|
|
String nome = rslocal.getString( "nome" );
|
|
t.setNome( utils.unicodeToHTML( nome ) );
|
|
t.setData_nascimento( rslocal.getDate( "data_nascimento" ) );
|
|
t.setFuncao( rslocal.getString( "funcao_proposta" ) );
|
|
t.setData_admissao( rslocal.getDate( "data_admissao" ) );
|
|
list.add( t );
|
|
}
|
|
while ( rslocal.next() );
|
|
|
|
return list;
|
|
}
|
|
|
|
public Trabalhador getTrabalhador( Integer id ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT * FROM trabalhadores WHERE id = " + id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
Trabalhador t = new Trabalhador();
|
|
t.setId( new Integer( rslocal.getInt( "id" ) ) );
|
|
t.setNome( rslocal.getString( "nome" ) );
|
|
t.setData_nascimento( rslocal.getDate( "data_nascimento" ) );
|
|
t.setFuncao( rslocal.getString( "funcao_proposta" ) );
|
|
t.setData_admissao( rslocal.getDate( "data_admissao" ) );
|
|
return t;
|
|
}
|
|
|
|
public Acidentado getAcidentado( Integer acidentado_id ) throws Exception
|
|
{
|
|
Strings strings = new Strings();
|
|
Acidentado a = new Acidentado();
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM acidentados WHERE id = " + acidentado_id;
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
a.setId( new Integer( rs.getInt( "id" ) ) );
|
|
a.setNome( rs.getString( "nome" ) );
|
|
a.setData_nascimento( rs.getDate( "data_nascimento" ) );
|
|
a.setBilhete_identidade( rs.getString( "bilhete_identidade" ) );
|
|
a.setMorada( rs.getString( "morada" ) );
|
|
a.setCod_postal( rs.getString( "cod_postal" ) );
|
|
a.setLocalidade( rs.getString( "localidade" ) );
|
|
a.setContacto_telefonico( rs.getString( "contacto_telefonico" ) );
|
|
a.setData_admissao( rs.getDate( "data_admissao" ) );
|
|
a.setTurno( rs.getString( "turno" ) );
|
|
String funcao = rs.getString( "funcao" );
|
|
a.setFuncao( utils.Utils.unicodeToHTML( funcao ) );
|
|
a.setTrabalhador_id( new Integer( rs.getInt( "trabalhador_id" ) ) );
|
|
a.setNumero_mecanografico( rs.getString( "numero_mecanografico" ) );
|
|
a.setNome_superior_hierarquico( rs.getString( "nome_superior_hierarquico" ) );
|
|
a.setEmail_superior_hierarquico( rs.getString( "email_superior_hierarquico" ) );
|
|
a.setEstabelecimento_origem( rs.getString( "estabelecimento_origem" ) );
|
|
a.setData_email_superior_hierarquico( rs.getDate( "data_email_superior_hierarquico" ) );
|
|
//a.setAnalise_acidente_id(new Integer("analise_acidente_id"));
|
|
return a;
|
|
}
|
|
|
|
public String getEmpresaNome( Integer empresa_id ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT designacao_social FROM empresas WHERE id = " + empresa_id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
String nome = rslocal.getString( "designacao_social" );
|
|
return nome;
|
|
}
|
|
|
|
public String getEstabelecimentoNome( Integer estabelecimento_id ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT nome FROM estabelecimentos WHERE id = " + estabelecimento_id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
|
|
String nome = "";
|
|
if ( rslocal.first() )
|
|
{
|
|
nome = rslocal.getString( "nome" );
|
|
}
|
|
return Utils.unicodeToHTML( nome );
|
|
}
|
|
|
|
public String getMedicoNome( Integer medico_id ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT nome FROM medicos WHERE id = " + medico_id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
String nome = rslocal.getString( "nome" );
|
|
return Utils.unicodeToHTML( nome );
|
|
}
|
|
|
|
public Medico getMedico( Integer id ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT * FROM medicos WHERE id = " + id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
Medico m = new Medico();
|
|
m.setId( new Integer( rslocal.getInt( "id" ) ) );
|
|
m.setNome( rslocal.getString( "nome" ) );
|
|
m.setNumero_cedula( rslocal.getString( "numero_cedula" ) );
|
|
return m;
|
|
}
|
|
|
|
public String getTecnicoSaudeNome( Integer tecnico_id ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT nome FROM marcacoes_tecnicos_hst WHERE id = " + tecnico_id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
String nome = rslocal.getString( "nome" );
|
|
return nome;
|
|
}
|
|
|
|
public Integer getMaxAcidentadoId()
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "SELECT max(acidentados.id)+1 AS MAXACIDENTADOID FROM acidentados";
|
|
try
|
|
{
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
Integer newId = new Integer( rs.getInt( "MAXACIDENTADOID" ) );
|
|
if ( newId.intValue() == 0 )
|
|
{
|
|
newId = new Integer( 1 );
|
|
}
|
|
return newId;
|
|
}
|
|
catch ( Exception ex )
|
|
{
|
|
return new Integer( 1 );
|
|
}
|
|
}
|
|
|
|
public Integer createAcidentado( Acidentado a ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
Integer newId = getMaxAcidentadoId();
|
|
String sql = "INSERT INTO acidentados (id, nome, data_nascimento, bilhete_identidade, morada, cod_postal, localidade, contacto_telefonico, data_admissao, turno, funcao, trabalhador_id, numero_mecanografico, nome_superior_hierarquico, email_superior_hierarquico, estabelecimento_origem, data_email_superior_hierarquico) VALUES (";
|
|
sql += newId + ", '";
|
|
sql += a.getNome() + "', ";
|
|
if ( a.getData_nascimento() == null )
|
|
{
|
|
sql += null + ", '";
|
|
}
|
|
else
|
|
{
|
|
sql += "'" + a.getData_nascimento() + "', '";
|
|
}
|
|
//sql += a.getData_nascimento() + "', '";
|
|
sql += a.getBilhete_identidade() + "', '";
|
|
sql += a.getMorada() + "', '";
|
|
sql += a.getCod_postal() + "', '";
|
|
sql += a.getLocalidade() + "', '";
|
|
sql += a.getContacto_telefonico() + "', ";
|
|
if ( a.getData_admissao() == null )
|
|
{
|
|
sql += null + ", '";
|
|
}
|
|
else
|
|
{
|
|
sql += "'" + a.getData_admissao() + "', '";
|
|
}
|
|
// sql += a.getData_admissao() + "', '";
|
|
sql += a.getTurno() + "', '";
|
|
sql += a.getFuncao() + "', ";
|
|
sql += a.getTrabalhador_id() + ", '";
|
|
sql += a.getNumero_mecanografico() + "', '";
|
|
sql += a.getNome_superior_hierarquico() + "', '";
|
|
sql += a.getEmail_superior_hierarquico() + "', '";
|
|
sql += a.getEstabelecimento_origem() + "', ";
|
|
if ( a.getData_email_superior_hierarquico() == null )
|
|
{
|
|
sql += null + ")";
|
|
}
|
|
else
|
|
{
|
|
sql += "'" + a.getData_email_superior_hierarquico() + "')";
|
|
}
|
|
//sql += a.getAnalise_acidente_id() + ")";
|
|
System.out.println( "SQL ACIDENTADO : " + sql );
|
|
st.execute( sql );
|
|
|
|
return newId;
|
|
}
|
|
|
|
public void updateAcidentado( Acidentado a ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "UPDATE acidentados SET nome = '" + a.getNome() + "', ";
|
|
if ( a.getData_nascimento() == null )
|
|
{
|
|
sql += "data_nascimento = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_nascimento = '" + a.getData_nascimento() + "', ";
|
|
}
|
|
// sql += "data_nascimento = '" + a.getData_nascimento() + "', ";
|
|
sql += "bilhete_identidade = '" + a.getBilhete_identidade() + "', ";
|
|
sql += "morada = '" + a.getMorada() + "', ";
|
|
sql += "cod_postal = '" + a.getCod_postal() + "', ";
|
|
sql += "localidade = '" + a.getLocalidade() + "', ";
|
|
sql += "contacto_telefonico = '" + a.getContacto_telefonico() + "', ";
|
|
if ( a.getData_admissao() == null )
|
|
{
|
|
sql += "data_admissao = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_admissao = '" + a.getData_admissao() + "', ";
|
|
}
|
|
// sql += "data_admissao = '" + a.getData_admissao() + "', ";
|
|
sql += "turno = '" + a.getTurno() + "', ";
|
|
sql += "funcao = '" + a.getFuncao() + "', ";
|
|
sql += "trabalhador_id = " + a.getTrabalhador_id() + ", ";
|
|
sql += "numero_mecanografico = '" + a.getNumero_mecanografico() + "', ";
|
|
sql += "nome_superior_hierarquico = '" + a.getNome_superior_hierarquico() + "', ";
|
|
sql += "email_superior_hierarquico = '" + a.getEmail_superior_hierarquico() + "', ";
|
|
sql += "estabelecimento_origem = '" + a.getEstabelecimento_origem() + "', ";
|
|
if ( a.getData_email_superior_hierarquico() == null )
|
|
{
|
|
sql += "data_email_superior_hierarquico = " + null + " ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_email_superior_hierarquico = '" + a.getData_email_superior_hierarquico() + "' ";
|
|
}
|
|
//sql += "analise_acidente_id = '" + a.getAnalise_acidente_id() + " ";
|
|
sql += "WHERE id = " + a.getId();
|
|
System.out.println( "SQL UPDATE ACIDENTADO : " + sql );
|
|
st.execute( sql );
|
|
}
|
|
|
|
public Integer getMaxControleId()
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "SELECT max(controle.id)+1 AS MAXCONTROLEID FROM controle";
|
|
try
|
|
{
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
Integer newId = new Integer( rs.getInt( "MAXCONTROLEID" ) );
|
|
if ( newId.intValue() == 0 )
|
|
{
|
|
newId = new Integer( 1 );
|
|
}
|
|
return newId;
|
|
}
|
|
catch ( Exception ex )
|
|
{
|
|
return new Integer( 1 );
|
|
}
|
|
}
|
|
|
|
public Integer getMaxAnaliseId()
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "SELECT max(analises_acidentes.id)+1 AS MAXANALISEID FROM analises_acidentes";
|
|
try
|
|
{
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
Integer newId = new Integer( rs.getInt( "MAXANALISEID" ) );
|
|
if ( newId.intValue() == 0 )
|
|
{
|
|
newId = new Integer( 1 );
|
|
}
|
|
return newId;
|
|
}
|
|
catch ( Exception ex )
|
|
{
|
|
return new Integer( 1 );
|
|
}
|
|
}
|
|
|
|
public AnaliseAcidente createAnalise( AnaliseAcidente a ) throws Exception
|
|
{
|
|
// Integer newId = getMaxAnaliseId();
|
|
|
|
//calc analise_nr
|
|
java.util.Date data_acidente = new java.util.Date( a.getData_acidente().getTime() );
|
|
Calendar cal = new GregorianCalendar();
|
|
cal.setTime( data_acidente );
|
|
int ano = cal.get( Calendar.YEAR );
|
|
Controle c = getControloByAno( new Integer( ano ) );
|
|
if ( c == null )
|
|
{
|
|
c = createAnoNumeracao( new Integer( ano ) );
|
|
}
|
|
// if(c.getAnalise_year().intValue() != ano)
|
|
// {
|
|
// c.setAnalise_year(new Integer(ano));
|
|
// c.setLast_analise_nr(new Integer(0));
|
|
// }
|
|
//String seq_str = new Integer(10000 + newId.intValue()).toString();
|
|
int i_analise_nr = c.getLast_analise_nr().intValue() + 1;
|
|
c.setLast_analise_nr( new Integer( i_analise_nr ) );
|
|
//updateControle(c);
|
|
String seq_str = new Integer( 10000 + i_analise_nr ).toString();
|
|
String ano_str = new Integer( ano ).toString();
|
|
String analise_nr = ano_str.substring( 2 ) + "/" + seq_str.substring( 1 );
|
|
a.setAnalise_nr( analise_nr );
|
|
// a.setId( newId );
|
|
|
|
Insert insert = new Insert( "analises_acidentes", new Assignment[] {
|
|
// new Assignment( new Field( "id" ), newId ),
|
|
new Assignment( new Field( "averiguador" ), a.getAveriguador() ),
|
|
new Assignment( new Field( "data_acidente" ), a.getData_acidente() ),
|
|
new Assignment( new Field( "acidentado_id" ), a.getAcidentado_id() ),
|
|
new Assignment( new Field( "estado" ), a.getEstado() ),
|
|
new Assignment( new Field( "empresa_id" ), a.getEmpresa_id() ),
|
|
new Assignment( new Field( "estabelecimento_id" ), a.getEstabelecimento_id() ),
|
|
new Assignment( new Field( "horas_turno" ), a.getHoras_turno() ),
|
|
new Assignment( new Field( "departamento_id" ), a.getDepartamento_id() ),
|
|
new Assignment( new Field( "seccao_id" ), a.getSeccao_id() ),
|
|
new Assignment( new Field( "local_trabalho" ), a.getLocal_trabalho() ),
|
|
new Assignment( new Field( "tarefa" ), a.getTarefa() ),
|
|
new Assignment( new Field( "substancias" ), a.getSubstancias() ),
|
|
new Assignment( new Field( "condicoes" ), a.getCondicoes() ),
|
|
new Assignment( new Field( "testemunhas" ), a.getTestemunhas() ),
|
|
new Assignment( new Field( "causas" ), a.getCausas() ),
|
|
new Assignment( new Field( "descricao" ), a.getDescricao() ),
|
|
new Assignment( new Field( "conclusoes" ), a.getConclusoes() ),
|
|
new Assignment( new Field( "accoes" ), a.getAccoes() ),
|
|
new Assignment( new Field( "hora_acidente" ), a.getHora_acidente() ),
|
|
new Assignment( new Field( "medico_id" ), a.getMedico_id() ),
|
|
new Assignment( new Field( "tecnico_saude_id" ), a.getTecnico_saude_id() ),
|
|
new Assignment( new Field( "averiguacao_posterior" ), a.getAveriguacao_posterior() ),
|
|
new Assignment( new Field( "averiguacao_obs" ), a.getAveriguacao_obs() ),
|
|
new Assignment( new Field( "data_inicio_processo" ), a.getData_inicio_processo() ),
|
|
new Assignment( new Field( "analise_nr" ), analise_nr ),
|
|
new Assignment( new Field( "coef_incapacidade" ), null ),
|
|
new Assignment( new Field( "concluido_por_desactivacao" ), Boolean.FALSE ),
|
|
new Assignment( new Field( "data_desactivacao" ), null ),
|
|
new Assignment( new Field( "comentario_desactivacao" ), null ),
|
|
} );
|
|
Virtual2DArray array = getExecuter().executeQuery( insert );
|
|
Integer insertedID = getInsertedID( array );
|
|
System.out.println( "SQL : " + insert.toString() );
|
|
System.out.println( "\nINSERTED ANALISE ID : " + insertedID );
|
|
a.setId( insertedID );
|
|
|
|
// String sql = "INSERT INTO analises_acidentes (id, averiguador, data_acidente, acidentado_id, estado, empresa_id, estabelecimento_id, horas_turno, departamento_id, seccao_id, local_trabalho, tarefa, substancias, condicoes, testemunhas, causas, descricao, conclusoes, accoes, hora_acidente, medico_id, tecnico_saude_id, averiguacao_posterior, averiguacao_obs, data_inicio_processo, analise_nr, coef_incapacidade, concluido_por_desactivacao, data_desactivacao, comentario_desactivacao) VALUES (";
|
|
// sql += newId + ", '";
|
|
// sql += a.getAveriguador() + "', '";
|
|
// sql += a.getData_acidente() + "', ";
|
|
// sql += a.getAcidentado_id() + ", ";
|
|
// sql += a.getEstado() + ", ";
|
|
// sql += a.getEmpresa_id() + ", ";
|
|
// sql += a.getEstabelecimento_id() + ", ";
|
|
// sql += a.getHoras_turno() + ", ";
|
|
// sql += a.getDepartamento_id() + ", ";
|
|
// sql += a.getSeccao_id() + ", '";
|
|
// sql += a.getLocal_trabalho() + "', '";
|
|
// sql += a.getTarefa() + "', '";
|
|
// sql += a.getSubstancias() + "', '";
|
|
//// sql += a.getSuperior_hierarquico() + "', '";
|
|
// sql += a.getCondicoes() + "', '";
|
|
// sql += a.getTestemunhas() + "', ";
|
|
// sql += a.getCausas() + ", '";
|
|
// sql += a.getDescricao() + "', '";
|
|
// sql += a.getConclusoes() + "', '";
|
|
// sql += a.getAccoes() + "', ";
|
|
// if ( a.getHora_acidente() == null )
|
|
// {
|
|
// sql += null + ", ";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql += "'" + a.getHora_acidente() + "', ";
|
|
// }
|
|
//
|
|
// sql += a.getMedico_id() + ", ";
|
|
// sql += a.getTecnico_saude_id() + ", '";
|
|
// sql += a.getAveriguacao_posterior() + "', '";
|
|
// sql += a.getAveriguacao_obs() + "', ";
|
|
// if ( a.getData_inicio_processo() == null )
|
|
// {
|
|
// sql += null + ", ";
|
|
// }
|
|
// else
|
|
// {
|
|
// sql += "'" + a.getData_inicio_processo() + "', '";
|
|
// }
|
|
//
|
|
// sql += analise_nr + "', ";
|
|
// sql += null + ", ";
|
|
//
|
|
// sql += false + ", " + null + ", " + null; //concluido_por_desactivacao, data_desactivacao, comentario_desactivacao
|
|
//
|
|
// sql += ")";
|
|
//
|
|
//// sql += null + ")";
|
|
//// sql += a.getFormacao_shst() + "', '";
|
|
//// sql += a.getFormacao_shst_nao_porque() + "', '";
|
|
//// sql += a.getOutros_acidentes_com_colaborador() + "', ";
|
|
//// sql += a.getNr_acidentes_com_colaborador() + ", ";
|
|
//// sql += a.getNr_relatorio_acidente_colaborador1() + ", ";
|
|
//// sql += a.getNr_relatorio_acidente_colaborador2() + ", ";
|
|
//// sql += a.getNr_relatorio_acidente_colaborador3() + ", ";
|
|
//// sql += a.getNr_relatorio_acidente_colaborador4() + ", '";
|
|
//// sql += a.getAcidentes_outros_colaboradores()+ "', ";
|
|
//// sql += a.getNr_acidentes_outros_colaboradores()+ ", ";
|
|
//// sql += a.getNr_relatorio_acidente_outros_colaboradores1() + ", ";
|
|
//// sql += a.getNr_relatorio_acidente_outros_colaboradores2() + ", ";
|
|
//// sql += a.getNr_relatorio_acidente_outros_colaboradores3() + ", ";
|
|
//// sql += a.getNr_relatorio_acidente_outros_colaboradores4() + ")";
|
|
// System.out.println( "SQL : " + sql );
|
|
//
|
|
// Statement st = createStatement();
|
|
// st.execute( sql );
|
|
|
|
updateControle( c );
|
|
return a;
|
|
}
|
|
|
|
public void updateAnalise( AnaliseAcidente a ) throws Exception
|
|
{
|
|
if ( a.getEspecif1().matches( "null" ) )
|
|
{
|
|
a.setEspecif1( "" );
|
|
}
|
|
if ( a.getEspecif2().matches( "null" ) )
|
|
{
|
|
a.setEspecif2( "" );
|
|
}
|
|
if ( a.getEspecif3().matches( "null" ) )
|
|
{
|
|
a.setEspecif3( "" );
|
|
}
|
|
if ( a.getEspecif4().matches( "null" ) )
|
|
{
|
|
a.setEspecif4( "" );
|
|
}
|
|
if ( a.getRestricao_outras().matches( "null" ) )
|
|
{
|
|
a.setRestricao_outras( "" );
|
|
}
|
|
if ( a.getTipo_lesao().matches( "null" ) )
|
|
{
|
|
a.setTipo_lesao( "" );
|
|
}
|
|
if ( a.getMed_observ().matches( "null" ) )
|
|
{
|
|
a.setMed_observ( "" );
|
|
}
|
|
if ( a.getFormacao_shst_nao_porque().matches( "null" ) )
|
|
{
|
|
a.setFormacao_shst_nao_porque( "" );
|
|
}
|
|
if ( a.getConcluido_por_desactivacao() == null )
|
|
{
|
|
a.setConcluido_por_desactivacao( Boolean.FALSE );
|
|
a.setData_desactivacao( null );
|
|
a.setComentario_desactivacao( null );
|
|
}
|
|
if ( a.getConcluido_por_desactivacao() != null && a.getConcluido_por_desactivacao().equals( Boolean.TRUE ) && a.getData_desactivacao() == null )
|
|
{
|
|
a.setData_desactivacao( new Date() );
|
|
}
|
|
if ( a.getComentario_desactivacao() != null && "".equals( a.getComentario_desactivacao().trim() ) )
|
|
{
|
|
a.setComentario_desactivacao( null );
|
|
}
|
|
|
|
|
|
Statement st = createStatement();
|
|
String sql = "UPDATE analises_acidentes SET data_acidente = '" + a.getData_acidente() + "', ";
|
|
sql += "acidentado_id = " + a.getAcidentado_id() + ", ";
|
|
sql += "estado = " + a.getEstado() + ", ";
|
|
sql += "empresa_id = " + a.getEmpresa_id() + ", ";
|
|
sql += "estabelecimento_id = " + a.getEstabelecimento_id() + ", ";
|
|
sql += "horas_turno = " + a.getHoras_turno() + ", ";
|
|
sql += "departamento_id = " + a.getDepartamento_id() + ", ";
|
|
sql += "seccao_id = " + a.getSeccao_id() + ", ";
|
|
sql += "local_trabalho = '" + a.getLocal_trabalho() + "', ";
|
|
sql += "tarefa = '" + a.getTarefa() + "', ";
|
|
sql += "substancias = '" + a.getSubstancias() + "', ";
|
|
// sql += "superior_hierarquico = '" + a.getSuperior_hierarquico() + "', ";
|
|
sql += "condicoes = '" + a.getCondicoes() + "', ";
|
|
sql += "testemunhas = '" + a.getTestemunhas() + "', ";
|
|
sql += "causas = " + a.getCausas() + ", ";
|
|
sql += "descricao = '" + a.getDescricao() + "', ";
|
|
sql += "conclusoes = '" + a.getConclusoes() + "', ";
|
|
sql += "accoes = '" + a.getAccoes() + "', ";
|
|
sql += "averiguador = '" + a.getAveriguador() + "', ";
|
|
if ( a.getHora_acidente() == null )
|
|
{
|
|
sql += "hora_acidente = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "hora_acidente = '" + a.getHora_acidente() + "', ";
|
|
}
|
|
|
|
sql += "formacao_shst = '" + a.getFormacao_shst() + "', ";
|
|
sql += "formacao_shst_nao_porque = '" + a.getFormacao_shst_nao_porque() + "', ";
|
|
sql += "outros_acidentes_com_colaborador = '" + a.getOutros_acidentes_com_colaborador() + "', ";
|
|
sql += "nr_acidentes_com_colaborador = " + a.getNr_acidentes_com_colaborador() + ", ";
|
|
sql += "nr_relatorio_acidente_colaborador1 = " + a.getNr_relatorio_acidente_colaborador1() + ", ";
|
|
sql += "nr_relatorio_acidente_colaborador2 = " + a.getNr_relatorio_acidente_colaborador2() + ", ";
|
|
sql += "nr_relatorio_acidente_colaborador3 = " + a.getNr_relatorio_acidente_colaborador3() + ", ";
|
|
sql += "nr_relatorio_acidente_colaborador4 = " + a.getNr_relatorio_acidente_colaborador4() + ", ";
|
|
sql += "acidentes_outros_colaboradores = '" + a.getAcidentes_outros_colaboradores() + "', ";
|
|
sql += "nr_acidentes_outros_colaboradores = " + a.getNr_acidentes_outros_colaboradores() + ", ";
|
|
sql += "nr_relatorio_acidente_outros_colaboradores1 = " + a.getNr_relatorio_acidente_outros_colaboradores1() + ", ";
|
|
sql += "nr_relatorio_acidente_outros_colaboradores2 = " + a.getNr_relatorio_acidente_outros_colaboradores2() + ", ";
|
|
sql += "nr_relatorio_acidente_outros_colaboradores3 = " + a.getNr_relatorio_acidente_outros_colaboradores3() + ", ";
|
|
sql += "nr_relatorio_acidente_outros_colaboradores4 = " + a.getNr_relatorio_acidente_outros_colaboradores4() + ", ";
|
|
sql += "lesao_cabeca = '" + a.getLesao_cabeca() + "', ";
|
|
sql += "lesao_pescoco = '" + a.getLesao_pescoco() + "', ";
|
|
sql += "lesao_tronco = '" + a.getLesao_tronco() + "', ";
|
|
sql += "lesao_membro_sup_dir = '" + a.getLesao_membro_sup_dir() + "', ";
|
|
sql += "lesao_membro_sup_esq = '" + a.getLesao_membro_sup_esq() + "', ";
|
|
sql += "lesao_membro_inf_dir = '" + a.getLesao_membro_inf_dir() + "', ";
|
|
sql += "lesao_membro_inf_esq = '" + a.getLesao_membro_inf_esq() + "', ";
|
|
sql += "especif1 = '" + a.getEspecif1() + "', ";
|
|
sql += "especif2 = '" + a.getEspecif2() + "', ";
|
|
sql += "especif3 = '" + a.getEspecif3() + "', ";
|
|
sql += "especif4 = '" + a.getEspecif4() + "', ";
|
|
sql += "tipo_lesao = '" + a.getTipo_lesao() + "', ";
|
|
sql += "tipo_incapacidade = '" + a.getTipo_incapacidade() + "', ";
|
|
sql += "coef_incapacidade = " + a.getCoef_incapacidade() + ", ";
|
|
if ( a.getData_aval_incapacidade() == null )
|
|
{
|
|
sql += "data_aval_incapacidade = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_aval_incapacidade = '" + a.getData_aval_incapacidade() + "', ";
|
|
}
|
|
if ( a.getData_rev_incapacidade() == null )
|
|
{
|
|
sql += "data_rev_incapacidade = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_rev_incapacidade = '" + a.getData_rev_incapacidade() + "', ";
|
|
}
|
|
if ( a.getPeriodo_incapacidade_de() == null )
|
|
{
|
|
sql += "periodo_incapacidade_de = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "periodo_incapacidade_de = '" + a.getPeriodo_incapacidade_de() + "', ";
|
|
}
|
|
if ( a.getPeriodo_incapacidade_a() == null )
|
|
{
|
|
sql += "periodo_incapacidade_a = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "periodo_incapacidade_a = '" + a.getPeriodo_incapacidade_a() + "', ";
|
|
}
|
|
sql += "img_flexao = '" + a.getImg_flexao() + "', ";
|
|
sql += "img_ext1 = '" + a.getImg_ext1() + "', ";
|
|
sql += "img_ext2 = '" + a.getImg_ext2() + "', ";
|
|
sql += "img_cab2 = '" + a.getImg_cab2() + "', ";
|
|
sql += "img_cab3 = '" + a.getImg_cab3() + "', ";
|
|
sql += "img_ma2 = '" + a.getImg_ma2() + "', ";
|
|
sql += "img_ma3 = '" + a.getImg_ma3() + "', ";
|
|
sql += "img_ma5 = '" + a.getImg_ma5() + "', ";
|
|
sql += "img_ma6 = '" + a.getImg_ma6() + "', ";
|
|
sql += "img_ma8 = '" + a.getImg_ma8() + "', ";
|
|
sql += "img_ma10 = '" + a.getImg_ma10() + "', ";
|
|
sql += "img_rot1 = '" + a.getImg_rot1() + "', ";
|
|
sql += "img_rot2 = '" + a.getImg_rot2() + "', ";
|
|
sql += "img_cab1 = '" + a.getImg_cab1() + "', ";
|
|
sql += "img_cab4 = '" + a.getImg_cab4() + "', ";
|
|
sql += "img_ma1 = '" + a.getImg_ma1() + "', ";
|
|
sql += "img_ma4 = '" + a.getImg_ma4() + "', ";
|
|
sql += "img_ma7 = '" + a.getImg_ma7() + "', ";
|
|
sql += "img_ma9 = '" + a.getImg_ma9() + "', ";
|
|
sql += "restricao_carga = " + a.getRestricao_carga() + ", ";
|
|
sql += "restricao_motricidade = '" + a.getRestricao_motricidade() + "', ";
|
|
sql += "restricao_conducao = '" + a.getRestricao_conducao() + "', ";
|
|
sql += "restricao_vibracoes = '" + a.getRestricao_vibracoes() + "', ";
|
|
sql += "restricao_outras = '" + a.getRestricao_outras() + "', ";
|
|
sql += "med_observ = '" + a.getMed_observ() + "', ";
|
|
sql += "estado_assinatura = " + a.getEstado_assinatura() + ", ";
|
|
sql += "tecnico_saude_id = " + a.getTecnico_saude_id() + ", ";
|
|
sql += "medico_id = " + a.getMedico_id() + ", ";
|
|
sql += "ass_consolidacao = '" + a.getAss_consolidacao() + "', ";
|
|
sql += "ass_resp_seg = '" + a.getAss_resp_seg() + "', ";
|
|
sql += "ass_resp_rh = '" + a.getAss_resp_rh() + "', ";
|
|
if ( a.getData_consolidacao() == null )
|
|
{
|
|
sql += "data_consolidacao = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_consolidacao = '" + a.getData_consolidacao() + "', ";
|
|
}
|
|
if ( a.getData_assinatura_seg() == null )
|
|
{
|
|
sql += "data_assinatura_seg = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_assinatura_seg = '" + a.getData_consolidacao() + "', ";
|
|
}
|
|
if ( a.getData_assinatura_rh() == null )
|
|
{
|
|
sql += "data_assinatura_rh = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_assinatura_rh = '" + a.getData_consolidacao() + "', ";
|
|
}
|
|
sql += "nome_resp_seg = '" + a.getNome_resp_seg() + "', ";
|
|
sql += "nome_resp_rh = '" + a.getNome_resp_rh() + "', ";
|
|
sql += "correcao = '" + a.getCorrecao() + "', ";
|
|
sql += "observacoes_correcao = '" + a.getObservacoes_correcao() + "', ";
|
|
sql += "estado_antes_correcao = " + a.getEstado_antes_correcao() + ", ";
|
|
sql += "ass_superior = '" + a.getAss_superior() + "', ";
|
|
sql += "nome_superior = '" + a.getNome_superior() + "', ";
|
|
sql += "averiguacao_posterior = '" + a.getAveriguacao_posterior() + "', ";
|
|
sql += "averiguacao_obs = '" + a.getAveriguacao_obs() + "', ";
|
|
sql += "nome_resp_consolidacao = '" + a.getNome_resp_consolidacao() + "', ";
|
|
if ( a.getData_assinatura_superior() == null )
|
|
{
|
|
sql += "data_assinatura_superior = " + null + ", ";
|
|
}
|
|
else
|
|
{
|
|
sql += "data_assinatura_superior = '" + a.getData_assinatura_superior() + "', ";
|
|
}
|
|
sql += "rh_fase4 = " + a.getRh_fase4() + ", ";
|
|
sql += "concluido_por_desactivacao = " + a.getConcluido_por_desactivacao() + ", ";
|
|
sql += "comentario_desactivacao = " + ( a.getComentario_desactivacao() == null ? "null" : "'" + a.getComentario_desactivacao() + "'" ) + ", ";
|
|
sql += "data_desactivacao = " + ( a.getData_desactivacao() == null ? "null" : "'" + new java.sql.Date( a.getData_desactivacao().getTime() ) + "'" );
|
|
sql += " WHERE id = " + a.getId();
|
|
System.out.println( "SQL UPDATE : " + sql );
|
|
st.execute( sql );
|
|
}
|
|
|
|
public void changeEstado( Correcao c ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "UPDATE analises_acidentes SET correcao = '" + c.getCorrecao() + "', estado = " + c.getEstado_corr() + ", estado_antes_correcao = " + c.getEstado_actual() + ", observacoes_correcao = '" + c.getObservacoes() + "' WHERE id = " + c.getAnalise_id();
|
|
st.execute( sql );
|
|
}
|
|
|
|
public Integer getMaxRecomendacaoId()
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "SELECT max(recomendacoes.id)+1 AS MAXRECOMENDACAOID FROM recomendacoes";
|
|
try
|
|
{
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
Integer newId = new Integer( rs.getInt( "MAXRECOMENDACAOID" ) );
|
|
if ( newId.intValue() == 0 )
|
|
{
|
|
newId = new Integer( 1 );
|
|
}
|
|
return newId;
|
|
}
|
|
catch ( Exception ex )
|
|
{
|
|
return new Integer( 1 );
|
|
}
|
|
}
|
|
|
|
public Integer createRecomendacao( Recomendacao r ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
Integer newId = getMaxRecomendacaoId();
|
|
String sql = "INSERT INTO recomendacoes (id, analise_id, recomendacao) VALUES (";
|
|
sql += newId + ", ";
|
|
sql += r.getAnalise_id() + ", '";
|
|
sql += r.getRecomendacao() + "')";
|
|
st.execute( sql );
|
|
|
|
return newId;
|
|
}
|
|
|
|
public void updateRecomendacao( Recomendacao r ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "UPDATE recomendacoes SET analise_id = " + r.getAnalise_id() + ", ";
|
|
sql += "recomendacao = '" + r.getRecomendacao() + "' ";
|
|
sql += "WHERE id = " + r.getId();
|
|
//System.out.println("SQL : " + sql);
|
|
st.execute( sql );
|
|
}
|
|
|
|
public void deleteRecomendacoesByAnalise( Integer analise_id ) throws Exception
|
|
{
|
|
System.out.println( "DELETE RECOMENDACOES" );
|
|
Statement st = createStatement();
|
|
String sql = "DELETE FROM recomendacoes WHERE analise_id = " + analise_id;
|
|
st.execute( sql );
|
|
}
|
|
|
|
public void deleteAnaliseAcidente( Integer analise_id ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
//String sql = "DELETE FROM analises_acidentes WHERE id = " + analise_id;
|
|
String sql = "UPDATE analises_acidentes SET apagada = 'y' WHERE id = " + analise_id;
|
|
st.execute( sql );
|
|
}
|
|
|
|
public void deleteAcidentado( Integer acidentado_id ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "DELETE FROM acidentados WHERE id = " + acidentado_id;
|
|
st.execute( sql );
|
|
}
|
|
|
|
public ArrayList getRecomendacoesByAnalise( Integer analiseId ) throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM recomendacoes WHERE analise_id = " + analiseId;
|
|
//System.out.println("SQL : " + sql);
|
|
ResultSet rs = st.executeQuery( sql );
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
do
|
|
{
|
|
Recomendacao r = new Recomendacao();
|
|
r.setId( new Integer( rs.getInt( "id" ) ) );
|
|
r.setAnalise_id( new Integer( rs.getInt( "analise_id" ) ) );
|
|
r.setRecomendacao( rs.getString( "recomendacao" ) );
|
|
list.add( r );
|
|
}
|
|
while ( rs.next() );
|
|
}
|
|
|
|
return list;
|
|
}
|
|
|
|
public Integer getMaxMedidaId()
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "SELECT max(medidas.id)+1 AS MAXMEDIDAID FROM medidas";
|
|
try
|
|
{
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
Integer newId = new Integer( rs.getInt( "MAXMEDIDAID" ) );
|
|
if ( newId.intValue() == 0 )
|
|
{
|
|
newId = new Integer( 1 );
|
|
}
|
|
return newId;
|
|
}
|
|
catch ( Exception ex )
|
|
{
|
|
return new Integer( 1 );
|
|
}
|
|
}
|
|
|
|
public Integer createMedida( Medida m ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
Integer newId = getMaxMedidaId();
|
|
String sql = "INSERT INTO medidas (id, analise_id, medida) VALUES (";
|
|
sql += newId + ", ";
|
|
sql += m.getAnalise_id() + ", '";
|
|
sql += m.getMedidaForSql() + "')";
|
|
st.execute( sql );
|
|
|
|
return newId;
|
|
}
|
|
|
|
public void updateMedida( Medida m ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "UPDATE medidas SET analise_id = " + m.getAnalise_id() + ", ";
|
|
sql += "medida = '" + m.getMedidaForSql() + "' ";
|
|
sql += "WHERE id = " + m.getId();
|
|
//System.out.println("SQL : " + sql);
|
|
st.execute( sql );
|
|
}
|
|
|
|
public void deleteMedidasByAnalise( Integer analise_id ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "DELETE FROM medidas WHERE analise_id = " + analise_id;
|
|
st.execute( sql );
|
|
}
|
|
|
|
public ArrayList getMedidasByAnalise( Integer analiseId ) throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM medidas WHERE analise_id = " + analiseId;
|
|
//System.out.println("SQL : " + sql);
|
|
ResultSet rs = st.executeQuery( sql );
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
do
|
|
{
|
|
Medida m = new Medida();
|
|
m.setId( new Integer( rs.getInt( "id" ) ) );
|
|
m.setAnalise_id( new Integer( rs.getInt( "analise_id" ) ) );
|
|
m.setMedida( rs.getString( "medida" ) );
|
|
list.add( m );
|
|
}
|
|
while ( rs.next() );
|
|
}
|
|
|
|
return list;
|
|
}
|
|
|
|
public String getNumeroCedula( Integer medico_id ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
String sql = "SELECT numero_cedula FROM medicos WHERE id = " + medico_id;
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
rslocal.first();
|
|
String numero_cedula = rslocal.getString( "numero_cedula" );
|
|
return numero_cedula;
|
|
}
|
|
|
|
public String getTipoDescricao( Integer tipo ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "SELECT descricao FROM tipos_utilizadores WHERE tipo = " + tipo;
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
String descricao = rs.getString( "descricao" );
|
|
return descricao;
|
|
}
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getTiposList() throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
TipoUtilizador t = new TipoUtilizador();
|
|
t.setId( new Integer( 0 ) );
|
|
t.setTipo( new Integer( 0 ) );
|
|
t.setDescricao( "" );
|
|
list.add( t );
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM tipos_utilizadores WHERE activo = 'y' ORDER BY ordem";
|
|
ResultSet rs = st.executeQuery( sql );
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
do
|
|
{
|
|
t = new TipoUtilizador();
|
|
t.setId( new Integer( rs.getInt( "id" ) ) );
|
|
t.setTipo( new Integer( rs.getInt( "tipo" ) ) );
|
|
t.setDescricao( rs.getString( "descricao" ) );
|
|
//t.setActivo(rs.getString("activo"));
|
|
//t.setOrdem(new Integer(rs.getInt("ordem")));
|
|
list.add( t );
|
|
}
|
|
while ( rs.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
t = ( TipoUtilizador ) iter.next();
|
|
|
|
listOptions[i] = new Option( t.getTipo(), t.getDescricao() );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getTiposList( Integer permissao ) throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
TipoUtilizador t = new TipoUtilizador();
|
|
t.setId( new Integer( 0 ) );
|
|
t.setTipo( new Integer( 0 ) );
|
|
t.setDescricao( "" );
|
|
list.add( t );
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM tipos_utilizadores WHERE activo = 'y' ORDER BY ordem";
|
|
ResultSet rs = st.executeQuery( sql );
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
do
|
|
{
|
|
t = new TipoUtilizador();
|
|
if ( permissao.intValue() == 7 ) //director rh
|
|
{
|
|
t.setTipo( new Integer( rs.getInt( "tipo" ) ) );
|
|
if ( t.getTipo().intValue() == 1 || t.getTipo().intValue() == 2 || t.getTipo().intValue() == 6 ) // seguranca || rh || gestor
|
|
{
|
|
t.setId( new Integer( rs.getInt( "id" ) ) );
|
|
t.setDescricao( rs.getString( "descricao" ) );
|
|
//t.setActivo(rs.getString("activo"));
|
|
//t.setOrdem(new Integer(rs.getInt("ordem")));
|
|
list.add( t );
|
|
}
|
|
}
|
|
else
|
|
{
|
|
t.setId( new Integer( rs.getInt( "id" ) ) );
|
|
t.setTipo( new Integer( rs.getInt( "tipo" ) ) );
|
|
t.setDescricao( rs.getString( "descricao" ) );
|
|
//t.setActivo(rs.getString("activo"));
|
|
//t.setOrdem(new Integer(rs.getInt("ordem")));
|
|
list.add( t );
|
|
}
|
|
|
|
}
|
|
while ( rs.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
t = ( TipoUtilizador ) iter.next();
|
|
|
|
listOptions[i] = new Option( t.getTipo(), t.getDescricao() );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getEstabelecimentosList( Integer empresa_id, Boolean booGestor ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
ArrayList list = new ArrayList();
|
|
Estabelecimento e = new Estabelecimento();
|
|
e.setId( new Integer( -1 ) );
|
|
|
|
e.setNome( "-Seleccionar-" );
|
|
|
|
list.add( e );
|
|
if ( booGestor.equals( new Boolean( true ) ) )
|
|
{
|
|
e = new Estabelecimento();
|
|
e.setId( new Integer( 0 ) );
|
|
e.setNome( "-Todos os estabelecimentos-" );
|
|
|
|
list.add( e );
|
|
}
|
|
String sql = "SELECT * FROM estabelecimentos WHERE empresa_id = " + empresa_id + " AND inactivo = 'n' ORDER BY nome_plain";
|
|
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
if ( rslocal.isBeforeFirst() )
|
|
{
|
|
rslocal.first();
|
|
do
|
|
{
|
|
e = new Estabelecimento();
|
|
e.setId( new Integer( rslocal.getInt( "id" ) ) );
|
|
//e.setNome_plain(rslocal.getString("nome_plain"));
|
|
e.setNome( rslocal.getString( "nome" ) );
|
|
System.out.println( "ESTABELECIMENTOAA : " + e.getId().toString() + " - " + e.getNome() );
|
|
//t.setActivo(rs.getString("activo"));
|
|
//t.setOrdem(new Integer(rs.getInt("ordem")));
|
|
list.add( e );
|
|
}
|
|
while ( rslocal.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
e = ( Estabelecimento ) iter.next();
|
|
System.out.println( "ESTABELECIMENTOL : " + e.getId().toString() + " - " + e.getNome() );
|
|
listOptions[i] = new Option( e.getId(), Utils.unicodeToHTML( e.getNome() ) );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getEstabelecimentosGestorList( Integer empresa_id, Boolean booGestor ) throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
ArrayList list = new ArrayList();
|
|
Estabelecimento e = null;
|
|
//Estabelecimento e = new Estabelecimento();
|
|
//e.setId(new Integer(-1));
|
|
|
|
//e.setNome("-Seleccionar-");
|
|
|
|
//list.add(e);
|
|
if ( booGestor.equals( new Boolean( true ) ) )
|
|
{
|
|
e = new Estabelecimento();
|
|
e.setId( new Integer( 0 ) );
|
|
e.setNome( "-Todos os estabelecimentos-" );
|
|
|
|
list.add( e );
|
|
}
|
|
String sql = "SELECT * FROM estabelecimentos WHERE empresa_id = " + empresa_id + " AND inactivo = 'n' ORDER BY nome_plain";
|
|
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
if ( rslocal.isBeforeFirst() )
|
|
{
|
|
rslocal.first();
|
|
do
|
|
{
|
|
e = new Estabelecimento();
|
|
e.setId( new Integer( rslocal.getInt( "id" ) ) );
|
|
//e.setNome_plain(rslocal.getString("nome_plain"));
|
|
e.setNome( rslocal.getString( "nome" ) );
|
|
System.out.println( "ESTABELECIMENTOAA : " + e.getId().toString() + " - " + e.getNome() );
|
|
//t.setActivo(rs.getString("activo"));
|
|
//t.setOrdem(new Integer(rs.getInt("ordem")));
|
|
list.add( e );
|
|
}
|
|
while ( rslocal.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
e = ( Estabelecimento ) iter.next();
|
|
System.out.println( "ESTABELECIMENTOL : " + e.getId().toString() + " - " + e.getNome() );
|
|
listOptions[i] = new Option( e.getId(), Utils.unicodeToHTML( e.getNome() ) );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getMedicosList() throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
ArrayList list = new ArrayList();
|
|
Medico m = new Medico();
|
|
m.setId( new Integer( 0 ) );
|
|
m.setNome( "-Seleccionar-" );
|
|
list.add( m );
|
|
String sql = "SELECT * FROM medicos WHERE inactivo = 'n'";
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
if ( rslocal.isBeforeFirst() )
|
|
{
|
|
rslocal.first();
|
|
do
|
|
{
|
|
m = new Medico();
|
|
m.setId( new Integer( rslocal.getInt( "id" ) ) );
|
|
m.setNome( rslocal.getString( "nome" ) );
|
|
list.add( m );
|
|
}
|
|
while ( rslocal.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
m = ( Medico ) iter.next();
|
|
|
|
listOptions[i] = new Option( m.getId(), Utils.unicodeToHTML( m.getNome() ) );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getTecnicosSaudeList() throws Exception
|
|
{
|
|
// Dblocal dblocal = new Dblocal();
|
|
// dblocal.connect();
|
|
// Statement stlocal = dblocal.createStatement();
|
|
Statement stlocal = createLocalStatement();
|
|
|
|
ArrayList list = new ArrayList();
|
|
TecnicoSaude t = new TecnicoSaude();
|
|
t.setId( new Integer( 0 ) );
|
|
t.setNome( "-Seleccionar-" );
|
|
list.add( t );
|
|
String sql = "SELECT * FROM marcacoes_tecnicos_hst WHERE inactivo = 'n'";
|
|
ResultSet rslocal = stlocal.executeQuery( sql );
|
|
if ( rslocal.isBeforeFirst() )
|
|
{
|
|
rslocal.first();
|
|
do
|
|
{
|
|
t = new TecnicoSaude();
|
|
t.setId( new Integer( rslocal.getInt( "id" ) ) );
|
|
t.setNome( rslocal.getString( "nome" ) );
|
|
list.add( t );
|
|
}
|
|
while ( rslocal.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
t = ( TecnicoSaude ) iter.next();
|
|
|
|
listOptions[i] = new Option( t.getId(), Utils.unicodeToHTML( t.getNome() ) );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getCausasAcidente( boolean toStatistics ) throws Exception
|
|
{
|
|
com.sun.rave.web.ui.model.Option[] options = null;
|
|
|
|
Select2 query = new Select2(
|
|
new String[] { CausasData.TABLENAME },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { CausasData.ID_FULL, CausasData.CAUSA_FULL },
|
|
new Field( CausasData.ACTIVA_FULL ).isEqual( "y" ),
|
|
new String[] { CausasData.ID_FULL, CausasData.CAUSA_FULL },
|
|
null, null, null
|
|
);
|
|
Virtual2DArray array = getExecuter().executeQuery( query );
|
|
if ( array != null )
|
|
{
|
|
options = new com.sun.rave.web.ui.model.Option[ array.columnLength() + 1 ];
|
|
options[ 0 ] = toStatistics ? new Option( "", "" ) : new Option( new Integer( 0 ), "-Seleccionar" );
|
|
for ( int i = 0; i < array.columnLength(); i++ )
|
|
{
|
|
Integer causaID = array.get( i, 0 );
|
|
String causa = array.get( i, 1 );
|
|
options[ (i+1) ] = new Option( causaID, causa );
|
|
}
|
|
}
|
|
return options;
|
|
}
|
|
|
|
// public com.sun.rave.web.ui.model.Option[] getCausasList() throws Exception
|
|
// {
|
|
// ArrayList list = new ArrayList();
|
|
// Causa c = new Causa();
|
|
// c.setId( new Integer( 0 ) );
|
|
// c.setCausa( "-Seleccionar-" );
|
|
// list.add( c );
|
|
// Statement st = createStatement();
|
|
// String sql = "SELECT * FROM causas WHERE activa = 'y'";
|
|
// ResultSet rs = st.executeQuery( sql );
|
|
// if ( rs.isBeforeFirst() )
|
|
// {
|
|
// rs.first();
|
|
// do
|
|
// {
|
|
// c = new Causa();
|
|
// c.setId( new Integer( rs.getInt( "id" ) ) );
|
|
// c.setCausa( rs.getString( "causa" ) );
|
|
// list.add( c );
|
|
// }
|
|
// while ( rs.next() );
|
|
// }
|
|
//
|
|
// com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
// ListIterator iter = list.listIterator();
|
|
// int i = 0;
|
|
// while ( iter.hasNext() )
|
|
// {
|
|
// c = ( Causa ) iter.next();
|
|
//
|
|
// listOptions[i] = new Option( c.getId(), c.getCausa() );
|
|
// i++;
|
|
// }
|
|
// return listOptions;
|
|
// }
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getDepartamentosList() throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
Departamento d = new Departamento();
|
|
|
|
d.setId( new Integer( 0 ) );
|
|
d.setDescricao( "-Todos-" );
|
|
list.add( d );
|
|
Statement st = createStatement();
|
|
String sql = "SELECT * FROM departamentos WHERE activo = 'y'";
|
|
ResultSet rs = st.executeQuery( sql );
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
do
|
|
{
|
|
d = new Departamento();
|
|
d.setId( new Integer( rs.getInt( "id" ) ) );
|
|
d.setDescricao( rs.getString( "descricao" ) );
|
|
list.add( d );
|
|
}
|
|
while ( rs.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
d = ( Departamento ) iter.next();
|
|
|
|
listOptions[i] = new Option( d.getId(), d.getDescricao() );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
public com.sun.rave.web.ui.model.Option[] getSeccoesList( Integer departamento_id ) throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
Seccao s = new Seccao();
|
|
|
|
s.setId( new Integer( 0 ) );
|
|
s.setDescricao( "-Seleccionar-" );
|
|
list.add( s );
|
|
Statement st = createStatement();
|
|
String sql = "";
|
|
if ( departamento_id == null ) // todos
|
|
{
|
|
sql = "SELECT * FROM seccoes WHERE activo = 'y'";
|
|
}
|
|
else
|
|
{
|
|
sql = "SELECT * FROM seccoes WHERE activo = 'y' AND departamento_id = " + departamento_id;
|
|
}
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
do
|
|
{
|
|
s = new Seccao();
|
|
s.setId( new Integer( rs.getInt( "id" ) ) );
|
|
s.setDescricao( rs.getString( "descricao" ) );
|
|
s.setDepartamento_id( new Integer( rs.getInt( "departamento_id" ) ) );
|
|
list.add( s );
|
|
}
|
|
while ( rs.next() );
|
|
}
|
|
|
|
com.sun.rave.web.ui.model.Option[] listOptions = new com.sun.rave.web.ui.model.Option[ list.size() ];
|
|
ListIterator iter = list.listIterator();
|
|
int i = 0;
|
|
while ( iter.hasNext() )
|
|
{
|
|
s = ( Seccao ) iter.next();
|
|
|
|
listOptions[i] = new Option( s.getId(), s.getDescricao() );
|
|
i++;
|
|
}
|
|
return listOptions;
|
|
}
|
|
|
|
public Causa getCausa( Integer id ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = null;
|
|
|
|
sql = "SELECT * FROM causas WHERE id = " + id;
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
Causa c = null;
|
|
if ( rs.first() )
|
|
{
|
|
c = new Causa();
|
|
c.setId( new Integer( rs.getInt( "id" ) ) );
|
|
c.setCausa( rs.getString( "causa" ) );
|
|
}
|
|
return c;
|
|
}
|
|
|
|
public Seccao getSeccao( Integer id ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = null;
|
|
|
|
sql = "SELECT * FROM seccoes WHERE id = " + id + " AND activo = 'y'";
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
rs.first();
|
|
Seccao s = new Seccao();
|
|
s.setId( new Integer( rs.getInt( "id" ) ) );
|
|
s.setDescricao( rs.getString( "descricao" ) );
|
|
return s;
|
|
}
|
|
|
|
public List<Integer> getDistinctYears( Integer excludeYear ) throws Exception
|
|
{
|
|
List<Integer> result = new LinkedList<Integer>();
|
|
|
|
Expression where = new Field( "apagada" ).isEqual( "n" );
|
|
if ( excludeYear != null )
|
|
{
|
|
where = where.and( new Field( "EXTRACT( year FROM data_acidente )" ).notIn( new Integer[] { excludeYear } ) );
|
|
}
|
|
Select2 query = new Select2(
|
|
new String[] { "analises_acidentes" },
|
|
new Integer[] { },
|
|
new Expression[] { },
|
|
new String[] { "DISTINCT( cast( EXTRACT( year FROM data_acidente ) as integer ) ) AS ano" },
|
|
where,
|
|
new String[] { "ano DESC" },
|
|
null, null, null );
|
|
query.disableOrderFieldsVerification();
|
|
Virtual2DArray array = getExecuter().executeQuery( query );
|
|
for ( int i = 0; i < array.columnLength(); i++ )
|
|
{
|
|
Integer ano = array.get( i, 0 );
|
|
result.add( ano );
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public ArrayList getAnosListFromAnalises() throws Exception
|
|
{
|
|
ArrayList list = new ArrayList();
|
|
|
|
String sql = "SELECT DISTINCT EXTRACT( year FROM data_acidente ) AS ano " +
|
|
"FROM analises_acidentes " +
|
|
"WHERE " +
|
|
"apagada = 'n' AND estado = " + Global.ESTADO_CONCLUIDO +
|
|
" ORDER BY ano";
|
|
|
|
Statement st = createStatement();
|
|
ResultSet rs = st.executeQuery( sql );
|
|
if ( rs.isBeforeFirst() )
|
|
{
|
|
rs.first();
|
|
do
|
|
{
|
|
Double dAno = new Double( rs.getDouble( "ano" ) );
|
|
Integer iAno = new Integer( dAno.intValue() );
|
|
list.add( iAno );
|
|
}
|
|
while ( rs.next() );
|
|
}
|
|
return list;
|
|
}
|
|
|
|
public String getFase( int estado )
|
|
{
|
|
if ( estado == Global.ESTADO_SEG )
|
|
{
|
|
return "FASE 1 - SEG - ABERTURA";
|
|
}
|
|
else if ( estado == Global.ESTADO_RH1 )
|
|
{
|
|
return "FASE 2 - RH - ACOMPANHAMENTO";
|
|
}
|
|
else if ( estado == Global.ESTADO_HS )
|
|
{
|
|
return "FASE 3 - SIPRP - RECOMENDAÇÕES";
|
|
}
|
|
else if ( estado == Global.ESTADO_RH2 )
|
|
{
|
|
return "FASE 4 - RH - MEDIDAS + LESÃO";
|
|
}
|
|
// else if(estado == Global.ESTADO_MEDICINA)
|
|
// {
|
|
// return "Medicina";
|
|
// }
|
|
else if ( estado == Global.ESTADO_CONSOLIDACAO )
|
|
{
|
|
return "FASE 5 - SIPRP - CONSOLIDAÇÃO";
|
|
}
|
|
// else if(estado == Global.ESTADO_ASSINATURAS)
|
|
// {
|
|
// return "Verificação";
|
|
// }
|
|
// else if(estado == Global.ESTADO_IMPRESSAO)
|
|
// {
|
|
// return "Impressão";
|
|
// }
|
|
else if ( estado == Global.ESTADO_ASSINATURA_SEG )
|
|
{
|
|
return "FASE 6 - SEG - VERIFICAÇÃO SEG.";
|
|
}
|
|
else if ( estado == Global.ESTADO_ASSINATURA_RH )
|
|
{
|
|
return "FASE 7 - RH - VERIFICAÇÃO RH";
|
|
}
|
|
else if ( estado == Global.ESTADO_FECHAR )
|
|
{
|
|
return "FASE 8 - SIPRP - CONCLUSÃO";
|
|
}
|
|
else if ( estado == Global.ESTADO_CONCLUIDO )
|
|
{
|
|
return "FASE 9 - CONCLUÍDO";
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public HashMap getMetaData( String table ) throws Exception
|
|
{
|
|
Statement st = createStatement();
|
|
String sql = "select * from " + table;
|
|
|
|
ResultSet rs = st.executeQuery( sql );
|
|
ResultSetMetaData rsmd = rs.getMetaData();
|
|
|
|
HashMap hash = new HashMap();
|
|
int cols = rsmd.getColumnCount();
|
|
|
|
for ( int i = 0; i < cols; i++ )
|
|
{
|
|
String field = rsmd.getColumnName( i + 1 );
|
|
int len = rsmd.getPrecision( i + 1 );
|
|
hash.put( field, new Integer( len ) );
|
|
}
|
|
return hash;
|
|
}
|
|
|
|
public byte[] getLogoByEmpresa( Integer empresaID ) throws Exception
|
|
{
|
|
byte[] result = null;
|
|
String sql = "SELECT empresa_logo_id FROM empresas WHERE id = " + empresaID;
|
|
Statement st = createLocalStatement();
|
|
ResultSet rslocal = st.executeQuery( sql );
|
|
if ( rslocal.isBeforeFirst() )
|
|
{
|
|
rslocal.first();
|
|
Integer logoId = new Integer( rslocal.getInt( "empresa_logo_id" ) );
|
|
result = getLogo( logoId );
|
|
}
|
|
return result;
|
|
}
|
|
|
|
private byte[] getLogo( Integer logoID ) throws Exception
|
|
{
|
|
System.out.println( "AnalisesDataProvider . getLogo( " + logoID + " ) : " );
|
|
|
|
byte[] result = null;
|
|
String sql = "SELECT image_data FROM image WHERE id = " + logoID;
|
|
Statement st = createLocalStatement();
|
|
ResultSet rslocal = st.executeQuery( sql );
|
|
if ( rslocal.first() )
|
|
{
|
|
result = rslocal.getBytes( "image_data" );
|
|
}
|
|
System.out.println( "\tLOGO SIZE : " + ( result == null ? "null" : result.length ) );
|
|
return result;
|
|
}
|
|
|
|
}
|