Actual Table built.

still needs links per row, and sorting

git-svn-id: https://svn.coded.pt/svn/SIPRP@1127 bb69d46d-e84e-40c8-a05a-06db0d633741
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
Diogo Neves 16 years ago
parent bf70eccec1
commit 5550b7874c

@ -26,6 +26,8 @@
width: 816px;
margin-top: 10px;
margin-bottom: 15px;
background-color: #FFFFFF;
border: 1px solid #000000;
}
</ui:style>

@ -41,6 +41,8 @@ public class ActualTable extends FlexTable
cellFormatter.setStyleName( 0, 4, "lblBold" );
cellFormatter.setStyleName( 0, 5, "lblBold" );
this.setText( 1, 0, "loading ..." );
this.getFlexCellFormatter().setColSpan( 1, 0, 6 );
this.actualService.getActualTableData( PageNavigation.getProvider().getUserLogged(), new AsyncCallback< Vector< ActualTableRow > >() {
@Override
@ -62,20 +64,21 @@ public class ActualTable extends FlexTable
if ( tableRows == null || tableRows.size() == 0 )
{
this.setText( 1, 0, "No items found." );
this.getFlexCellFormatter().setColSpan( 1, 0, 6 );
}
else
{
for ( int rowNumber = 1, columnNumber = 0; rowNumber < tableRows.size(); rowNumber++, columnNumber = 0 )
this.getFlexCellFormatter().setColSpan( 1, 0, 0 );
for ( int rowNumber = 0, columnNumber = 0; rowNumber < tableRows.size(); rowNumber++, columnNumber = 0 )
{
ActualTableRow row = tableRows.get( rowNumber );
this.setText( rowNumber, columnNumber++, D_F.format( row.getDataAcidente() ) );
this.setText( rowNumber, columnNumber++, D_F.format( row.getDataAbertura() ) );
this.setText( rowNumber, columnNumber++, row.getNrAcidente() );
this.setText( rowNumber, columnNumber++, row.getPOR() );
this.setText( rowNumber, columnNumber++, row.getNomeAcidentado() );
this.setText( rowNumber, columnNumber++, row.getFase() );
this.setText( (rowNumber+1), columnNumber++, D_F.format( row.getDataAcidente() ) );
this.setText( (rowNumber+1), columnNumber++, D_F.format( row.getDataAbertura() ) );
this.setText( (rowNumber+1), columnNumber++, row.getNrAcidente() );
this.setText( (rowNumber+1), columnNumber++, row.getPOR() );
this.setText( (rowNumber+1), columnNumber++, row.getNomeAcidentado() );
this.setText( (rowNumber+1), columnNumber++, String.valueOf( row.getFase() ) );
}
}
}

@ -7,11 +7,13 @@ public class ActualTableRow implements Serializable
{
private static final long serialVersionUID = -6271564752485792179L;
private Integer id;
private Date dataAcidente;
private Date dataAbertura;
private String nrAcidente;
private String POR;
private String nomeAcidentado;
private Integer estado;
private String fase;
@ -21,6 +23,14 @@ public class ActualTableRow implements Serializable
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Date getDataAcidente() {
return dataAcidente;
}
@ -61,10 +71,18 @@ public class ActualTableRow implements Serializable
this.nomeAcidentado = nomeAcidentado;
}
public Integer getEstado() {
return estado;
}
public void setEstado(Integer estado) {
this.estado = estado;
}
public String getFase() {
return fase;
}
public void setFase(String fase) {
this.fase = fase;
}

@ -16,6 +16,8 @@ public class Utilizador implements Serializable
private Boolean primeiro_login = null;
private Date data_password = null;
private Integer estabelecimento_id = null;
private Boolean responsavel_loja = null;
public Utilizador()
{
@ -77,5 +79,21 @@ public class Utilizador implements Serializable
public void setData_password(Date data_password) {
this.data_password = data_password;
}
public Boolean getResponsavel_loja() {
return responsavel_loja;
}
public void setResponsavel_loja(Boolean responsavel_loja) {
this.responsavel_loja = responsavel_loja;
}
public Integer getEstabelecimento_id() {
return estabelecimento_id;
}
public void setEstabelecimento_id(Integer estabelecimento_id) {
this.estabelecimento_id = estabelecimento_id;
}
}

@ -1,5 +1,6 @@
package com.evolute.siprp.server.logic.AnaliseAcidentesTrabalho;
import java.util.Date;
import java.util.Vector;
import com.evolute.siprp.client.panels.apps.AnaliseAcidentesTrabalho.actual.ActualTableService;
@ -33,15 +34,28 @@ public class AnaliseAcidentesTrabalhoLogic implements ActualTableService
try
{
Virtual2DArray array = actualProvider.getAnalisesActuais();
Virtual2DArray array = actualProvider.getAnalisesActuais( userLogged );
result = new Vector< ActualTableRow >();
for ( int i = 0; i < array.columnLength(); i++ )
{
//TODO: ...
Integer anaID = ( Integer ) array.get( i, 0 );
Date dataAcidente = ( Date ) array.get( i, 1 );
Date dataAbertura = ( Date ) array.get( i, 2 );
String analiseNr = ( String ) array.get( i, 3 );
String nrPOR = ( String ) array.get( i, 4 );
String nomeTrabalhador = ( String ) array.get( i, 5 );
Integer estado = ( Integer ) array.get( i, 6 );
ActualTableRow row = new ActualTableRow();
//TODO: ...
row.setId( anaID );
row.setDataAcidente( dataAcidente );
row.setDataAbertura( dataAbertura );
row.setNrAcidente( analiseNr );
row.setPOR( nrPOR );
row.setNomeAcidentado( nomeTrabalhador );
row.setEstado( estado );
row.setFase( actualProvider.getFase( estado ) );
result.add( row );
}

@ -1,12 +1,18 @@
package com.evolute.siprp.server.logic.AnaliseAcidentesTrabalho.actual;
import com.evolute.siprp.client.panels.utils.AppConstants;
import com.evolute.siprp.client.panels.utils.permissoes.RolesConstants;
import com.evolute.siprp.client.vo.Utilizador;
import com.evolute.siprp.server.db.InitDB;
import com.evolute.siprp.server.db.data.siprp.AcidentadosData;
import com.evolute.siprp.server.db.data.siprp.AnalisesAcidentesData;
import com.evolute.utils.Singleton;
import com.evolute.utils.arrays.Virtual2DArray;
import com.evolute.utils.db.DBManager;
import com.evolute.utils.db.Executer;
import com.evolute.utils.jdo.JDOProvider;
import com.evolute.utils.sql.Expression;
import com.evolute.utils.sql.Field;
import com.evolute.utils.sql.Select;
import com.evolute.utils.sql.Select2;
@ -38,78 +44,184 @@ public class ActualTableDataProvider
}
//TODO: ...
public Virtual2DArray getAnalisesActuais() throws Exception
/**
*
* @param userLogged
* @return analises_acidentes.id, analises_acidentes.data_acidente, analises_acidentes.data_inicio_processo,
* analises_acidentes.analise_nr, acidentados.numero_mecanografico, acidentados.nome, analises_acidentes.estado
* @throws Exception
*/
public Virtual2DArray getAnalisesActuais( Utilizador userLogged ) throws Exception
{
Virtual2DArray result = null;
Integer userType = userLogged.getTipo_utilizador();
if ( userType.intValue() == RolesConstants.TIPO_SEGURANCA )
{
result = getAnalisesActuaisSeguranca( userLogged.getEstabelecimento_id(), userLogged.getResponsavel_loja() );
}
else if ( userType.intValue() == RolesConstants.TIPO_RECURSOS_HUMANOS )
{
result = getAnalisesActuaisRH( userLogged.getEstabelecimento_id(), userLogged.getResponsavel_loja() );
}
else if ( userType.intValue() == RolesConstants.TIPO_HIGIENE_SEGURANCA )
{
result = getAnalisesActuaisHS();
}
return result;
}
private Virtual2DArray getAnalisesActuaisSeguranca( Integer estabelecimento_id, Boolean responsavel_loja )
throws Exception
{
Expression whereExpression = new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_SEG ).or(
new Field( AnalisesAcidentesData.AVERIGUACAO_POSTERIOR_FULL ).isEqual( "y" ).and(
new Field( AnalisesAcidentesData.AVERIGUACAO_OBS_FULL ).isEqual( "" )
)
);
if ( responsavel_loja )
{
whereExpression = whereExpression.or(
new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_ASSINATURA_SEG )
);
}
Select query = new Select2(
new String[] {},
new Integer[] {},
new Expression[] {},
new String[] {},
new String[] { AnalisesAcidentesData.TABLENAME, AcidentadosData.TABLENAME },
new Integer[] { Select2.JOIN_INNER },
new Expression[] {
new Field( AnalisesAcidentesData.ACIDENTADO_ID_FULL ).isEqual( new Field( AcidentadosData.ID_FULL ) )
},
new String[] {
AnalisesAcidentesData.ID_FULL, AnalisesAcidentesData.DATA_ACIDENTE_FULL, AnalisesAcidentesData.DATA_INICIO_PROCESSO_FULL,
AnalisesAcidentesData.ANALISE_NR_FULL, AcidentadosData.NUMERO_MECANOGRAFICO_FULL, AcidentadosData.NOME_FULL,
AnalisesAcidentesData.ESTADO_FULL
},
new Field( AnalisesAcidentesData.APAGADA_FULL ).isEqual( "n" ).and(
new Field( AnalisesAcidentesData.ESTABELECIMENTO_ID_FULL ).isEqual( estabelecimento_id ).and(
whereExpression
)
),
new String[] { AnalisesAcidentesData.ANALISE_NR_FULL },
null,
null,
null
);
System.out.println( "\n" + query.toString() );
return EXECUTER.executeQuery( query );
}
private Virtual2DArray getAnalisesActuaisRH( Integer estabelecimento_id, Boolean responsavel_loja )
throws Exception
{
Expression whereExpression = new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_RH1 ).or(
new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_RH2 )
);
if ( responsavel_loja )
{
whereExpression = whereExpression.or(
new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_ASSINATURA_RH )
);
}
Select query = new Select2(
new String[] { AnalisesAcidentesData.TABLENAME, AcidentadosData.TABLENAME },
new Integer[] { Select2.JOIN_INNER },
new Expression[] {
new Field( AnalisesAcidentesData.ACIDENTADO_ID_FULL ).isEqual( new Field( AcidentadosData.ID_FULL ) )
},
new String[] {
AnalisesAcidentesData.ID_FULL, AnalisesAcidentesData.DATA_ACIDENTE_FULL, AnalisesAcidentesData.DATA_INICIO_PROCESSO_FULL,
AnalisesAcidentesData.ANALISE_NR_FULL, AcidentadosData.NUMERO_MECANOGRAFICO_FULL, AcidentadosData.NOME_FULL,
AnalisesAcidentesData.ESTADO_FULL
},
new Field( AnalisesAcidentesData.APAGADA_FULL ).isEqual( "n" ).and(
new Field( AnalisesAcidentesData.ESTABELECIMENTO_ID_FULL ).isEqual( estabelecimento_id ).and(
whereExpression
)
),
new String[] { AnalisesAcidentesData.ANALISE_NR_FULL },
null,
null,
null
);
result = EXECUTER.executeQuery( query );
System.out.println( "\n" + query.toString() );
return result;
return EXECUTER.executeQuery( query );
}
/* Seguranca */
/*
responsabel_loja = 'y'
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 = estabelecimento_id
AND apagada = 'n'
ORDER BY analise_nr
responsabel_loja = 'n'
SELECT *
FROM analises_acidentes
WHERE
( estado = Global.ESTADO_SEG OR (averiguacao_posterior = 'y' AND averiguacao_obs = '') )
AND estabelecimento_id = estabelecimento_id
AND apagada = 'n'
ORDER BY analise_nr
*/
private Virtual2DArray getAnalisesActuaisHS()
throws Exception
{
Select query = new Select2(
new String[] { AnalisesAcidentesData.TABLENAME, AcidentadosData.TABLENAME },
new Integer[] { Select2.JOIN_INNER },
new Expression[] {
new Field( AnalisesAcidentesData.ACIDENTADO_ID_FULL ).isEqual( new Field( AcidentadosData.ID_FULL ) )
},
new String[] {
AnalisesAcidentesData.ID_FULL, AnalisesAcidentesData.DATA_ACIDENTE_FULL, AnalisesAcidentesData.DATA_INICIO_PROCESSO_FULL,
AnalisesAcidentesData.ANALISE_NR_FULL, AcidentadosData.NUMERO_MECANOGRAFICO_FULL, AcidentadosData.NOME_FULL,
AnalisesAcidentesData.ESTADO_FULL
},
new Field( AnalisesAcidentesData.APAGADA_FULL ).isEqual( "n" ).and(
new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_HS ).or(
new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_FECHAR ).or(
new Field( AnalisesAcidentesData.ESTADO_FULL ).isEqual( AppConstants.ESTADO_CONSOLIDACAO )
)
)
),
new String[] { AnalisesAcidentesData.ANALISE_NR_FULL },
null,
null,
null
);
System.out.println( "\n" + query.toString() );
return EXECUTER.executeQuery( query );
}
/* RH */
/*
responsabel_loja = 'y'
SELECT *
FROM analises_acidentes
WHERE
( estado = Global.ESTADO_RH1 OR estado = Global.ESTADO_RH2 OR estado = Global.ESTADO_ASSINATURA_RH )
AND estabelecimento_id = estabelecimento_id
AND apagada = 'n'
ORDER BY analise_nr
responsavel_loja = 'n'
SELECT *
FROM analises_acidentes
WHERE
( estado = Global.ESTADO_RH1 OR estado = Global.ESTADO_RH2 )
AND estabelecimento_id = estabelecimento_id
AND apagada = 'n'
ORDER BY analise_nr
*/
/* HS */
/*
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
*/
public String getFase( int estado )
{
String fase = null;
if ( estado == AppConstants.ESTADO_SEG )
{
fase = "FASE 1 - SEG - ABERTURA";
}
else if ( estado == AppConstants.ESTADO_RH1 )
{
fase = "FASE 2 - RH - ACOMPANHAMENTO";
}
else if ( estado == AppConstants.ESTADO_HS )
{
fase = "FASE 3 - SIPRP - RECOMENDA\u00C7\u00D5ES";
}
else if ( estado == AppConstants.ESTADO_RH2 )
{
fase = "FASE 4 - RH - MEDIDAS + LES\u00C3O";
}
else if ( estado == AppConstants.ESTADO_CONSOLIDACAO )
{
fase = "FASE 5 - SIPRP - CONSOLIDA\u00C7\u00C3O";
}
else if ( estado == AppConstants.ESTADO_ASSINATURA_SEG )
{
fase = "FASE 6 - SEG - VERIFICA\u00C7\u00C3O SEG.";
}
else if ( estado == AppConstants.ESTADO_ASSINATURA_RH )
{
fase = "FASE 7 - RH - VERIFICA\u00C7\u00C3O RH";
}
else if ( estado == AppConstants.ESTADO_FECHAR )
{
fase = "FASE 8 - SIPRP - CONCLUS\u00C3O";
}
return fase;
}
}

@ -59,6 +59,8 @@ public class LoginDataProvider
user.setData_password( usersData.getData_password() );
user.setPrimeiro_login( usersData.getPrimeiro_login().equals( "y" ) );
user.setTipo_utilizador( usersData.getTipo() );
user.setResponsavel_loja( usersData.getResponsavel_loja().equals( "y" ) );
user.setEstabelecimento_id( usersData.getEstabelecimento_id() );
}
return user;
@ -82,7 +84,7 @@ public class LoginDataProvider
new String[] {
UtilizadoresData.ID_FULL, UtilizadoresData.LOGIN_FULL, UtilizadoresData.EMAIL_FULL,
UtilizadoresData.TIPO_FULL, UtilizadoresData.NOME_FULL, UtilizadoresData.PRIMEIRO_LOGIN_FULL,
UtilizadoresData.DATA_PASSWORD_FULL
UtilizadoresData.DATA_PASSWORD_FULL, UtilizadoresData.RESPONSAVEL_LOJA_FULL, UtilizadoresData.ESTABELECIMENTO_ID_FULL
},
new Field( UtilizadoresData.LOGIN_FULL ).isEqual( username ).and(
new Field( UtilizadoresData.PASSWORD_FULL ).isEqual( password )

@ -42,6 +42,8 @@ public class LoginLogic implements LoginService
rUser.setNome( ( String ) users.get( 0, 4 ) );
rUser.setPrimeiro_login( (( String ) users.get( 0, 5 )).equals( "y" ) );
rUser.setData_password( ( Date ) users.get( 0, 6 ) );
rUser.setResponsavel_loja( (( String ) users.get( 0, 7 )).equals( "y" ) );
rUser.setEstabelecimento_id( ( Integer ) users.get( 0, 8 ) );
}
}
catch ( Exception e )

Loading…
Cancel
Save