no message

git-svn-id: https://svn.coded.pt/svn/SIPRP@532 bb69d46d-e84e-40c8-a05a-06db0d633741
lxbfYeaa
Frederico Palma 20 years ago
parent 596328baff
commit 3ab4835e36

@ -42,6 +42,21 @@ public class doGetListaTrabalhadoresPendentes
protected static int MOTIVO_OCASIONAL = 3;
protected static int MOTIVO_PERIODICA_INICIAL = 5;
protected static final Hashtable CORES_ESTADOS = new Hashtable();
protected static final Hashtable TEXTOS_ESTADOS = new Hashtable();
static
{
CORES_ESTADOS.put( new Integer( ESTADO_NAO_APLICAVEL ), "white" );
CORES_ESTADOS.put( new Integer( ESTADO_PENDENTE ), "red" );
CORES_ESTADOS.put( new Integer( ESTADO_MARCADO ), "yellow" );
CORES_ESTADOS.put( new Integer( ESTADO_TRATADO ), "green" );
TEXTOS_ESTADOS.put( new Integer( ESTADO_NAO_APLICAVEL ), "n.a." );
TEXTOS_ESTADOS.put( new Integer( ESTADO_PENDENTE ), "pendente" );
TEXTOS_ESTADOS.put( new Integer( ESTADO_MARCADO ), "pendente" );
// TEXTOS_ESTADOS.put( new Integer( ESTADO_TRATADO ), "green" );
}
protected java.sql.Date today;
protected long todayMillis;
@ -298,9 +313,13 @@ public class doGetListaTrabalhadoresPendentes
for( int n = 0; n < trabalhadores.length; n++ )
{
Object marcacoes[][] = ( Object[][] ) marcacoesPorID.get( trabalhadores[ n ].getID() );
Object ocasionais[][] = ( Object[][] ) ocasionaisPorID.get( trabalhadores[ n ].getID() );
Object marcacoes[][] = ( Object[][] ) ( ( Vector )marcacoesPorID.get( trabalhadores[ n ].getID() ) ).toArray( new Object[ 0 ][] );
Object ocasionais[][] = ( Object[][] ) ( ( Vector )ocasionaisPorID.get( trabalhadores[ n ].getID() ) ).toArray( new Object[ 0 ][] );
Object agrupadas[][] = agruparMarcacoes( marcacoes, ocasionais );
acrescentarTrabalhador( empresaId, estabelecimentoId,
trabalhadores[ n ], null,
agrupadas, links, desc,
true, true );
}
HashMap hmValues = new HashMap();
@ -475,12 +494,13 @@ public class doGetListaTrabalhadoresPendentes
return agrupadas;
}
protected void acrescentarTrabalhador( IDObject trabalhador, java.util.Date dataFicha,
protected void acrescentarTrabalhador( String empresaID, String estabelecimentoID,
IDObject trabalhador, java.util.Date dataFicha,
Object marcacoes[][], Vector links, Vector dados,
boolean perfilConsultas, boolean perfilExames )
{
int estado[] = new int[ 2 ];
int index = 0;
if( marcacoes.length == 0 )
{
estado[ 0 ] = perfilConsultas ? ESTADO_PENDENTE : ESTADO_NAO_APLICAVEL;
@ -490,7 +510,7 @@ public class doGetListaTrabalhadoresPendentes
{
java.util.Date dataConsulta;
java.util.Date dataExame;
int index = -1;
index = -1;
for( ; index + 1 < marcacoes.length; index++ )
{
int n = index + 1;
@ -518,18 +538,99 @@ public class doGetListaTrabalhadoresPendentes
index = 0;
}
boolean found = false;
for( ; !found; index++ )
for( ; !found && index < marcacoes.length; index++ )
{
// java.util.Date dataConsulta = ( java.util.Date ) marcacoes[ n ][ 0 ];
// java.util.Date dataExame = ( java.util.Date ) marcacoes[ n ][ 3 ];
// if( ( dataConsulta == null || dataConsulta.before( today ) ) !=
// ( dataExame == null || dataExame.before( today ) ) )
// {
// break;
// }
dataConsulta = ( java.util.Date ) marcacoes[ index ][ 0 ];
dataExame = ( java.util.Date ) marcacoes[ index ][ 3 ];
boolean temConsulta = dataConsulta != null;
long diffConsulta = temConsulta ? dataConsulta.getTime() - today.getTime() : 0;
boolean temExame = dataExame != null;
long diffExame = temExame ? dataExame.getTime() - today.getTime() : 0;
if( ( temConsulta && diffConsulta < CATORZE_DIAS ) || ( temExame && diffExame < CATORZE_DIAS ) )
{
found = true;
}
}
if( index >= marcacoes.length )
{
index = marcacoes.length - 1;
}
else
{
if( marcacoes.length > 1 )
{
dataConsulta = ( java.util.Date ) marcacoes[ index ][ 0 ];
dataExame = ( java.util.Date ) marcacoes[ index ][ 3 ];
Calendar calToday = Calendar.getInstance();
calToday.setTime( today );
calToday.add( Calendar.YEAR, -2 );
if( dataConsulta.before( calToday.getTime() ) )
{
index++;
}
}
}
dataConsulta = ( java.util.Date ) marcacoes[ index ][ 0 ];
Integer estadoConsulta = ( Integer ) marcacoes[ index ][ 1 ];
Integer motivoConsulta = ( Integer ) marcacoes[ index ][ 2 ];
dataExame = ( java.util.Date ) marcacoes[ index ][ 3 ];
Integer estadoExame = ( Integer ) marcacoes[ index ][ 4 ];
if( perfilConsultas )
{
if( dataConsulta == null )
{
estado[ 0 ] = ESTADO_PENDENTE;
}
else if( estadoConsulta == null || estadoConsulta.intValue() != 2 )
{
estado[ 0 ] = ESTADO_MARCADO;
}
else
{
estado[ 0 ] = ESTADO_TRATADO;
}
}
else
{
estado[ 0 ] = ESTADO_NAO_APLICAVEL;
}
if( perfilExames )
{
if( dataExame == null )
{
if( motivoConsulta != null && motivoConsulta.intValue() != MOTIVO_OCASIONAL )
{
estado[ 1 ] = ESTADO_PENDENTE;
}
else
{
estado[ 1 ] = ESTADO_NAO_APLICAVEL;
}
}
else if( estadoExame == null || estadoExame.intValue() != 2 )
{
estado[ 1 ] = ESTADO_MARCADO;
}
else
{
estado[ 1 ] = ESTADO_TRATADO;
}
}
else
{
estado[ 1 ] = ESTADO_NAO_APLICAVEL;
}
}
links.add( "/"+servletName+"/?"+empresaID+"/"+estabelecimentoID+"/"+trabalhador.getID() );
HashMap dadosTrabalhador = new HashMap();
dadosTrabalhador.put( "Nome", trabalhador.toString() );
dadosTrabalhador.put( "Consulta", CORES_ESTADOS.get( new Integer( estado[ 0 ] ) ) );
Object text = TEXTOS_ESTADOS.get( new Integer( estado[ 0 ] ) );
dadosTrabalhador.put( "Consulta_estado", text != null ? text : marcacoes[ index ][ 0 ] );
dadosTrabalhador.put( "Exame", CORES_ESTADOS.get( new Integer( estado[ 1 ] ) ) );
text = TEXTOS_ESTADOS.get( new Integer( estado[ 0 ] ) );
dadosTrabalhador.put( "Exame_estado", text != null ? text : marcacoes[ index ][ 3 ] );
dados.add( dadosTrabalhador );
}
// protected boolean verificarTrabalhador( Object consultas[][], Object exames[][] )

@ -94,6 +94,7 @@ public class siprpServlet extends HttpServlet
public static final String bdNullString = ""; // String a mostrar quando o campo lido da BD é null
public static final String bdEmailEmpresa = "email"; // campo que contem email da empresa
protected ServletContext CONTEXT;
// Arrays
public static final String[][] trabalhadorDescFields = new String [][]
@ -112,7 +113,7 @@ public class siprpServlet extends HttpServlet
{
try {
CONTEXT = this.getServletContext();
String TEMPLATE_DIR = this.getServletContext().getRealPath( "/" ) + "html/";
System.out.println( "DIR: " + TEMPLATE_DIR );
Properties props = new Properties();
@ -634,12 +635,13 @@ System.out.println( "query: " + queryString );
protected Executer getExecuter()
throws Exception
{
ServletContext context = getServletContext();
DBManager dbm = ( DBManager ) context.getAttribute( Singleton.DEFAULT_DBMANAGER );
// ServletContext context = CONTEXT;
DBManager dbm = null;
// ( DBManager ) context.getAttribute( Singleton.DEFAULT_DBMANAGER );
if( dbm == null )
{
dbm = new JDBCManager( bdLocalUrl, bdLocalUsername, bdLocalPassword , 10, 8, 8, null );
context.setAttribute( Singleton.DEFAULT_DBMANAGER, dbm );
// context.setAttribute( Singleton.DEFAULT_DBMANAGER, dbm );
}
return dbm.getSharedExecuter();
}

Loading…
Cancel
Save