@ -1,18 +1,25 @@
package com.evolute.siprp.pagina ;
package com.evolute.siprp.pagina ;
import com.evolute.utils.arrays.* ;
import java.sql.Connection ;
import com.evolute.utils.strings.* ;
import java.sql.DriverManager ;
import java.io.* ;
import java.sql.ResultSet ;
import java.util.* ;
import java.sql.SQLException ;
import java.sql.* ;
import java.sql.Statement ;
import java.lang.reflect.Array ;
import java.util.HashMap ;
import javax.servlet.* ;
import java.util.LinkedList ;
import javax.servlet.http.* ;
import java.util.List ;
import org.apache.velocity.* ;
import java.util.Map ;
import org.apache.velocity.app.* ;
import javax.servlet.ServletOutputStream ;
import javax.servlet.http.HttpServletRequest ;
import javax.servlet.http.HttpServletResponse ;
import javax.servlet.http.HttpSession ;
import com.evolute.utils.arrays.ResultSet2DArray ;
public class doGetListaTrabalhadores extends siprpServlet
public class doGetListaTrabalhadores extends siprpServlet
{
{
private static final long serialVersionUID = 1L ;
private ResultSet2DArray executeQuery ( Connection con , String query ) throws Exception
private ResultSet2DArray executeQuery ( Connection con , String query ) throws Exception
{
{
@ -23,7 +30,6 @@ public class doGetListaTrabalhadores extends siprpServlet
return rs ;
return rs ;
}
}
public doGetListaTrabalhadores ( HttpServletRequest req , HttpServletResponse res , String query ) throws Exception
public doGetListaTrabalhadores ( HttpServletRequest req , HttpServletResponse res , String query ) throws Exception
{
{
boolean print = false ;
boolean print = false ;
@ -46,32 +52,39 @@ public class doGetListaTrabalhadores extends siprpServlet
Statement stmt = null ;
Statement stmt = null ;
ResultSet2DArray rs , rsTrab ;
ResultSet2DArray rs , rsTrab ;
StringBuffer sBuffer ;
StringBuffer sBuffer ;
String userRole , empresaId , estabelecimentoId , temp ;
String userRole ;
String empresaId ;
String estabelecimentoId ;
HttpSession session = req . getSession ( false ) ;
HttpSession session = req . getSession ( false ) ;
Vector links = new Vector ( ) ;
List < String > links = new LinkedList < String > ( ) ;
Vector desc = new Vector ( ) ;
List < Map < String , Object > > desc = new LinkedList < Map < String , Object > > ( ) ;
Vector descAdicional = new Vector ( ) ;
java . util . Date today = new java . util . Date ( ) ;
try
try
{
{
userRole = ( String ) session . getAttribute ( super . sessionUserRole ) ;
userRole = ( String ) session . getAttribute ( sessionUserRole ) ;
empresaId = ( String ) session . getAttribute ( super . sessionEmpresaId ) ;
empresaId = ( String ) session . getAttribute ( sessionEmpresaId ) ;
estabelecimentoId = ( String ) session . getAttribute ( super . sessionEstabelecimentoId ) ;
estabelecimentoId = ( String ) session . getAttribute ( sessionEstabelecimentoId ) ;
System . out . println ( "\ndoGetListaTrabalhadores() . " ) ;
System . out . println ( "\ndoGetListaTrabalhadores() . " ) ;
System . out . println ( "\tuserRole : " + userRole + " - " + super . superUserRole ) ;
System . out . println ( "\tuserRole : " + userRole + " - " + superUserRole ) ;
System . out . println ( "\tempresaID : " + empresaId ) ;
System . out . println ( "\tempresaID : " + empresaId ) ;
System . out . println ( "\testabelecimentoID : " + estabelecimentoId ) ;
System . out . println ( "\testabelecimentoID : " + estabelecimentoId ) ;
if ( userRole ! = null & & ( userRole . equals ( super . superUserRole ) | | userRole . equals ( empresaId ) ) )
if ( userRole ! = null & & ( userRole . equals ( superUserRole ) | | userRole . equals ( empresaId ) ) )
{
{
Class . forName ( super . bdDriver ) ;
Class . forName ( bdDriver ) ;
con = DriverManager . getConnection ( bdLocalUrl , bdLocalUsername , bdLocalPassword ) ;
con = DriverManager . getConnection ( bdLocalUrl , bdLocalUsername , bdLocalPassword ) ;
if ( super . verificaEstabelecimento ( con , empresaId , estabelecimentoId ) ) // estabelecimento pertence 'a empresa ??
if ( verificaEstabelecimento ( con , empresaId , estabelecimentoId ) ) // estabelecimento
// pertence
// 'a
// empresa
// ??
{
{
// Class.forName(super.bdDriver);
// Class.forName(super.bdDriver);
//con = DriverManager.getConnection( super.bdUrl, super.bdUsername, super.bdPassword );
// con = DriverManager.getConnection( super.bdUrl,
String dbQuery = "SELECT id, nome, nome_plain FROM trabalhadores WHERE inactivo <> 'y' AND data_demissao IS NULL AND estabelecimento_id = '" + estabelecimentoId + "' ORDER BY nome_plain" ;
// super.bdUsername, super.bdPassword );
String dbQuery = "SELECT id, nome, nome_plain FROM trabalhadores WHERE inactivo <> 'y' AND data_demissao IS NULL AND estabelecimento_id = '"
+ estabelecimentoId + "' ORDER BY nome_plain" ;
stmt = con . createStatement ( ResultSet . TYPE_SCROLL_INSENSITIVE , ResultSet . CONCUR_READ_ONLY ) ;
stmt = con . createStatement ( ResultSet . TYPE_SCROLL_INSENSITIVE , ResultSet . CONCUR_READ_ONLY ) ;
rsTrab = new ResultSet2DArray ( stmt . executeQuery ( dbQuery ) ) ;
rsTrab = new ResultSet2DArray ( stmt . executeQuery ( dbQuery ) ) ;
rsTrab . getObjects ( ) ;
rsTrab . getObjects ( ) ;
@ -82,24 +95,28 @@ public class doGetListaTrabalhadores extends siprpServlet
for ( int index = 0 ; index < max ; index + + )
for ( int index = 0 ; index < max ; index + + )
{
{
Integer id = ( Integer ) rsTrab . get ( index , 0 ) ;
Integer id = ( Integer ) rsTrab . get ( index , 0 ) ;
String link = "/" + super . servletName + "/?" + empresaId + "/" + estabelecimentoId + "/" + id ;
String link = "/" + servletName + "/?" + empresaId + "/" + estabelecimentoId + "/" + id ;
links . add ( link ) ;
links . add ( link ) ;
Hash Map trabalhador = new HashMap ( ) ;
Map< String , Object > trabalhador = new HashMap < String , Object > ( ) ;
trabalhador . put ( "Nome" , ( String ) rsTrab . get ( index , 1 ) ) ;
trabalhador . put ( "Nome" , ( String ) rsTrab . get ( index , 1 ) ) ;
/** dados de consultas **/
/** dados de consultas **/
// dbQuery = "SELECT id, data, estado FROM marcacoes_trabalhador "
// dbQuery =
// "SELECT id, data, estado FROM marcacoes_trabalhador "
// + "WHERE tipo = 1 and trabalhador_id = " + id
// + "WHERE tipo = 1 and trabalhador_id = " + id
// + " ORDER BY data DESC";
// + " ORDER BY data DESC";
// stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
// stmt =
// rs = new ResultSet2DArray( stmt.executeQuery( dbQuery ) );
// con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
// ResultSet.CONCUR_READ_ONLY);
// rs = new ResultSet2DArray( stmt.executeQuery( dbQuery
// ) );
// rs.getObjects();
// rs.getObjects();
// stmt.close();
// stmt.close();
// if( rs.columnLength() > 0 )
// if( rs.columnLength() > 0 )
// {
// {
// java.util.Date dataConsulta2 = ( java.util.Date ) rs.get( 0, 1 );
// java.util.Date dataConsulta2 = ( java.util.Date )
// rs.get( 0, 1 );
// Integer estado2 = ( Integer ) rs.get( 0, 2 );
// Integer estado2 = ( Integer ) rs.get( 0, 2 );
// java.util.Date dataConsulta1;
// java.util.Date dataConsulta1;
// Integer estado1;
// Integer estado1;
@ -115,7 +132,9 @@ public class doGetListaTrabalhadores extends siprpServlet
// dataConsulta1 = dataConsulta2;
// dataConsulta1 = dataConsulta2;
// estado1 = estado2;
// estado1 = estado2;
// }
// }
// if( ESTADO_REALIZADO.equals( estado2 ) || ( dataConsulta2 != null && today.after( dataConsulta2 ) ) )
// if( ESTADO_REALIZADO.equals( estado2 ) || (
// dataConsulta2 != null && today.after( dataConsulta2 )
// ) )
// {
// {
// trabalhador.put( "ultima_consulta", dataConsulta2 );
// trabalhador.put( "ultima_consulta", dataConsulta2 );
// if( estado2.equals( ESTADO_POR_REALIZAR ) )
// if( estado2.equals( ESTADO_POR_REALIZAR ) )
@ -135,7 +154,8 @@ public class doGetListaTrabalhadores extends siprpServlet
// {
// {
// for( int c = 1; c < rs.columnLength(); c++ )
// for( int c = 1; c < rs.columnLength(); c++ )
// {
// {
// java.util.Date dataTemp = ( java.util.Date ) rs.get( c, 1 );
// java.util.Date dataTemp = ( java.util.Date ) rs.get(
// c, 1 );
// dataConsulta1 = dataTemp;
// dataConsulta1 = dataTemp;
// estado1 = ( Integer ) rs.get( c, 2 );
// estado1 = ( Integer ) rs.get( c, 2 );
// if( dataTemp.after( today ) )
// if( dataTemp.after( today ) )
@ -181,11 +201,8 @@ public class doGetListaTrabalhadores extends siprpServlet
// trabalhador.put( "proxima_consulta", "" );
// trabalhador.put( "proxima_consulta", "" );
// }
// }
dbQuery = "select id, data, estado " +
dbQuery = "select id, data, estado " + "from marcacoes_trabalhador "
"from marcacoes_trabalhador " +
+ "where deleted_stamp is null and tipo = 1 and estado = 2 and trabalhador_id = " + id + " " + "order by data desc " + "limit 1" ;
"where deleted_stamp is null and tipo = 1 and estado = 2 and trabalhador_id = " + id + " " +
"order by data desc " +
"limit 1" ;
rs = executeQuery ( con , dbQuery ) ;
rs = executeQuery ( con , dbQuery ) ;
java . util . Date dataUltimaConsultaRealizada = null ;
java . util . Date dataUltimaConsultaRealizada = null ;
@ -196,11 +213,9 @@ public class doGetListaTrabalhadores extends siprpServlet
consultaRealizada = "Sim" ;
consultaRealizada = "Sim" ;
}
}
dbQuery = "select id, data, estado " +
dbQuery = "select id, data, estado " + "from marcacoes_trabalhador "
"from marcacoes_trabalhador " +
+ "where deleted_stamp is null and tipo = 1 and estado != 2 and data >= now() and trabalhador_id = " + id + " "
"where deleted_stamp is null and tipo = 1 and estado != 2 and data >= now() and trabalhador_id = " + id + " " +
+ "order by data desc " + "limit 1" ;
"order by data desc " +
"limit 1" ;
rs = executeQuery ( con , dbQuery ) ;
rs = executeQuery ( con , dbQuery ) ;
java . util . Date dataProximaConsulta = null ;
java . util . Date dataProximaConsulta = null ;
@ -214,13 +229,9 @@ public class doGetListaTrabalhadores extends siprpServlet
trabalhador . put ( "proxima_consulta" , dataProximaConsulta = = null ? "" : dataProximaConsulta ) ;
trabalhador . put ( "proxima_consulta" , dataProximaConsulta = = null ? "" : dataProximaConsulta ) ;
/** eof dados consulta **/
/** eof dados consulta **/
/** dados de exames **/
/** dados de exames **/
dbQuery = "select id, data, estado " +
dbQuery = "select id, data, estado " + "from marcacoes_trabalhador "
"from marcacoes_trabalhador " +
+ "where deleted_stamp is null and tipo = 0 and estado = 2 and trabalhador_id = " + id + " order by data desc " + "limit 1" ;
"where deleted_stamp is null and tipo = 0 and estado = 2 and trabalhador_id = " + id +
" order by data desc " +
"limit 1" ;
rs = executeQuery ( con , dbQuery ) ;
rs = executeQuery ( con , dbQuery ) ;
java . util . Date dataUltimoExameRealizado = null ;
java . util . Date dataUltimoExameRealizado = null ;
@ -232,11 +243,9 @@ public class doGetListaTrabalhadores extends siprpServlet
}
}
java . util . Date dataProximoExame = null ;
java . util . Date dataProximoExame = null ;
dbQuery = "select id, data, estado " +
dbQuery = "select id, data, estado " + "from marcacoes_trabalhador "
"from marcacoes_trabalhador " +
+ "where deleted_stamp is null and tipo = 0 and estado != 2 and data >= now() and trabalhador_id = " + id + " "
"where deleted_stamp is null and tipo = 0 and estado != 2 and data >= now() and trabalhador_id = " + id + " " +
+ "order by data desc " + "limit 1" ;
"order by data desc " +
"limit 1" ;
rs = executeQuery ( con , dbQuery ) ;
rs = executeQuery ( con , dbQuery ) ;
if ( rs . columnLength ( ) > 0 )
if ( rs . columnLength ( ) > 0 )
{
{
@ -247,17 +256,21 @@ public class doGetListaTrabalhadores extends siprpServlet
trabalhador . put ( "realizado" , realizado ) ;
trabalhador . put ( "realizado" , realizado ) ;
trabalhador . put ( "proximo_exame" , dataProximoExame = = null ? "" : dataProximoExame ) ;
trabalhador . put ( "proximo_exame" , dataProximoExame = = null ? "" : dataProximoExame ) ;
// dbQuery =
// dbQuery = "SELECT id, data, estado FROM marcacoes_trabalhador "
// "SELECT id, data, estado FROM marcacoes_trabalhador "
// + "WHERE tipo = 0 and trabalhador_id = " + id
// + "WHERE tipo = 0 and trabalhador_id = " + id
// + " ORDER BY data DESC";
// + " ORDER BY data DESC";
// stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
// stmt =
// rs = new ResultSet2DArray( stmt.executeQuery( dbQuery ) );
// con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
// ResultSet.CONCUR_READ_ONLY);
// rs = new ResultSet2DArray( stmt.executeQuery( dbQuery
// ) );
// rs.getObjects();
// rs.getObjects();
// stmt.close();
// stmt.close();
// if( rs.columnLength() > 0 )
// if( rs.columnLength() > 0 )
// {
// {
// java.util.Date dataConsulta2 = ( java.util.Date ) rs.get( 0, 1 );
// java.util.Date dataConsulta2 = ( java.util.Date )
// rs.get( 0, 1 );
// Integer estado2 = ( Integer ) rs.get( 0, 2 );
// Integer estado2 = ( Integer ) rs.get( 0, 2 );
// Integer estado1;
// Integer estado1;
// java.util.Date dataConsulta1;
// java.util.Date dataConsulta1;
@ -273,7 +286,8 @@ public class doGetListaTrabalhadores extends siprpServlet
// dataConsulta1 = dataConsulta2;
// dataConsulta1 = dataConsulta2;
// estado1 = estado2;
// estado1 = estado2;
// }
// }
// if( ESTADO_REALIZADO.equals( estado2 ) || today.after( dataConsulta2 ) )
// if( ESTADO_REALIZADO.equals( estado2 ) ||
// today.after( dataConsulta2 ) )
// {
// {
// trabalhador.put( "ultimo_exame", dataConsulta2 );
// trabalhador.put( "ultimo_exame", dataConsulta2 );
// if( estado2.equals( ESTADO_POR_REALIZAR ) )
// if( estado2.equals( ESTADO_POR_REALIZAR ) )
@ -318,58 +332,59 @@ public class doGetListaTrabalhadores extends siprpServlet
// }
// }
/** eof dados exames **/
/** eof dados exames **/
desc . add ( trabalhador ) ;
desc . add ( trabalhador ) ;
}
}
sBuffer = new StringBuffer ( ) ;
sBuffer = new StringBuffer ( ) ;
sBuffer . append ( "<b>" + super . nomeEmpresa ( con , empresaId ) + "</b><br><br><i>"
sBuffer . append ( "<b>" + nomeEmpresa ( con , empresaId ) + "</b><br><br><i>" + nomeEstabelecimento ( con , estabelecimentoId ) + "</i>" ) ;
+ super . nomeEstabelecimento ( con , estabelecimentoId ) + "</i>" ) ;
Hash Map hmValues = new HashMap ( ) ;
Map< String , Object > hmValues = new HashMap < String , Object > ( ) ;
hmValues . put ( "empresa_nome" , session . getAttribute ( sessionCompanyName ) ) ;
hmValues . put ( "empresa_nome" , session . getAttribute ( sessionCompanyName ) ) ;
hmValues . put ( "empresa_id" , session . getAttribute ( sessionEmpresaId ) ) ;
hmValues . put ( "empresa_id" , session . getAttribute ( sessionEmpresaId ) ) ;
hmValues . put ( "estabelecimento_nome" , super . nomeEstabelecimento( con , estabelecimentoId ) ) ;
hmValues . put ( "estabelecimento_nome" , nomeEstabelecimento( con , estabelecimentoId ) ) ;
hmValues . put ( "estabelecimento_id" , estabelecimentoId ) ;
hmValues . put ( "estabelecimento_id" , estabelecimentoId ) ;
hmValues . put ( "userRole" , userRole ) ;
hmValues . put ( "userRole" , userRole ) ;
hmValues . put ( "userName" , session . getAttribute ( sessionUser ) ) ;
hmValues . put ( "userName" , session . getAttribute ( sessionUser ) ) ;
hmValues . put ( msgTemplate , sBuffer . toString ( ) ) ;
hmValues . put ( msgTemplate , sBuffer . toString ( ) ) ;
hmValues . put ( templateUserRole , userRole ) ;
hmValues . put ( templateUserRole , userRole ) ;
hmValues . put ( templateQuery , super . queryStringTrabalhadores ) ;
hmValues . put ( templateQuery , queryStringTrabalhadores ) ;
hmValues . put ( templateVector1 , links ) ;
hmValues . put ( templateVector1 , links ) ;
hmValues . put ( templateVector2 , desc ) ;
hmValues . put ( templateVector2 , desc ) ;
hmValues . put ( templateVector3 , null ) ;
hmValues . put ( templateVector3 , null ) ;
if ( ! print )
if ( ! print )
{
{
out . println ( mergeTemplate ( hmValues , super . authenticatedUserTemplate ) ) ;
out . println ( mergeTemplate ( hmValues , authenticatedUserTemplate ) ) ;
}
}
else
else
{
{
out . println ( mergeTemplate ( hmValues , super . authenticatedUserPrintTemplate ) ) ;
out . println ( mergeTemplate ( hmValues , authenticatedUserPrintTemplate ) ) ;
}
}
// out.println( mergeTemplate( sBuffer.toString(), userRole, super.queryStringTrabalhadores, links, desc, null, super.authenticatedUserTemplate) );
// out.println( mergeTemplate( sBuffer.toString(), userRole,
// super.queryStringTrabalhadores, links, desc, null,
// super.authenticatedUserTemplate) );
}
}
else // est nao pertence 'a empresa
else
// est nao pertence 'a empresa
{
{
out . println ( mergeTemplate ( super . msgLinkFormatError , userRole , super . errorTemplate ) ) ;
out . println ( mergeTemplate ( msgLinkFormatError , userRole , errorTemplate ) ) ;
}
}
con . close ( ) ;
con . close ( ) ;
}
}
else // Role nao permite ver esta informacao
else
// Role nao permite ver esta informacao
{
{
out . println ( mergeTemplate ( super . msgAcessoNegado , userRole , super . errorTemplate ) ) ;
out . println ( mergeTemplate ( msgAcessoNegado , userRole , errorTemplate ) ) ;
}
}
}
}
catch ( SQLException e )
catch ( SQLException e )
{
{
e . printStackTrace ( ) ;
e . printStackTrace ( ) ;
out . println ( mergeTemplate ( super . msgErroBd , super . errorTemplate ) ) ;
out . println ( mergeTemplate ( msgErroBd , errorTemplate ) ) ;
}
}
catch ( Exception e )
catch ( Exception e )
{
{
e . printStackTrace ( ) ;
e . printStackTrace ( ) ;
out . println ( mergeTemplate ( super . msgGenericError , super . errorTemplate ) ) ;
out . println ( mergeTemplate ( msgGenericError , errorTemplate ) ) ;
}
}
}
}