sql+="case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null ";
sql+="when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade ";
sql+="else null ";
sql+="end as valor ";
sql+="from hs_relatorio_posto ";
sql+="inner join hs_relatorio_posto_medida on hs_relatorio_posto_medida.posto_id = hs_relatorio_posto.id ";
sql+="inner join hs_relatorio_medida on hs_relatorio_medida.id = hs_relatorio_posto_medida.medida_id ";
sql+="inner join hs_relatorio_risco on hs_relatorio_risco.id = hs_relatorio_medida.risco_id ";
sql+="inner join hs_relatorio_posto_risco on (hs_relatorio_posto_risco.posto_id = hs_relatorio_posto.id and hs_relatorio_posto_risco.risco_id = hs_relatorio_risco.id) ";
sql+="inner join hs_relatorio on hs_relatorio.id = hs_relatorio_risco.relatorio_id ";
sql+="inner join hs_relatorio_area on hs_relatorio_area.id = area_id ";
sql+="where hs_relatorio_posto_risco.risco_id = "+r.getId()+" and area_id = "+a.getId()+") subquery ";
sql+="order by subquery.valor";
System.out.println("VALORES BY RISCO : "+sql);
Stringsql="select subquery.valor, subquery.valor_qualitativo_id from "
+" case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null "
+" when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade "
+" else null "
+" end as valor "
+" from hs_relatorio_posto "
+" inner join hs_relatorio_posto_medida on hs_relatorio_posto_medida.posto_id = hs_relatorio_posto.id "
+" inner join hs_relatorio_medida on hs_relatorio_medida.id = hs_relatorio_posto_medida.medida_id "
+" inner join hs_relatorio_risco on hs_relatorio_risco.id = hs_relatorio_medida.risco_id "
+" inner join hs_relatorio_posto_risco on (hs_relatorio_posto_risco.posto_id = hs_relatorio_posto.id and hs_relatorio_posto_risco.risco_id = hs_relatorio_risco.id) "
+" inner join hs_relatorio on hs_relatorio.id = hs_relatorio_risco.relatorio_id "
+" inner join hs_relatorio_area on hs_relatorio_area.id = area_id "
+" left outer join hs_relatorio_risco_valor_qualitativo on ( hs_relatorio_risco_valor_qualitativo.id = hs_relatorio_posto_risco.valor_qualitativo_id ) "
+" where hs_relatorio_posto_risco.risco_id = "+r.getId()+" and area_id = "+a.getId()+") subquery "
Stringsql="select distinct medida_id, valor, descricao from ";
sql+="( select distinct hs_relatorio_posto_medida.medida_id, hs_relatorio_posto_risco.risco_id, hs_relatorio_medida.description as descricao, ";
sql+="case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null ";
sql+="when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade ";
System.out.println("MEDIDAS BY RISCO SQL : "+sql);
Stringsql="select distinct medida_id, valor, descricao from "
+" ( select distinct hs_relatorio_posto_medida.medida_id, hs_relatorio_posto_risco.risco_id, hs_relatorio_medida.description as descricao, "
+" case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null "
+" when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade "
+" inner join hs_relatorio_posto_medida on hs_relatorio_posto_medida.posto_id = hs_relatorio_posto.id "
+" inner join hs_relatorio_medida on hs_relatorio_medida.id = hs_relatorio_posto_medida.medida_id "
+" inner join hs_relatorio_risco on hs_relatorio_risco.id = hs_relatorio_medida.risco_id "
+" inner join hs_relatorio_posto_risco on (hs_relatorio_posto_risco.posto_id = hs_relatorio_posto.id and hs_relatorio_posto_risco.risco_id = hs_relatorio_risco.id) "
+" inner join hs_relatorio on hs_relatorio.id = hs_relatorio_risco.relatorio_id "
+" inner join hs_relatorio_area on hs_relatorio_area.id = area_id "
+" where hs_relatorio_posto_risco.risco_id = "+r.getId()+" and area_id = "+a.getId()+" and hs_relatorio_posto_medida.is_plano_actuacao = true"+") subquery "
//+ " where hs_relatorio_posto_risco.risco_id = " + r.getId() + " and area_id = " + a.getId() + ") subquery "
//+ " where valor = " + v.getValorQuantitativo() + " "
sql+="from ( select distinct hs_relatorio_posto_medida.medida_id, hs_relatorio_posto_risco.risco_id, hs_relatorio_medida.description as descricao, ";
sql+="case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null ";
sql+="when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade else hs_relatorio_posto_risco.valor_qualitativo_id end as valor from hs_relatorio_posto ";
sql+="inner join hs_relatorio_posto_medida on hs_relatorio_posto_medida.posto_id = hs_relatorio_posto.id ";
sql+="inner join hs_relatorio_medida on hs_relatorio_medida.id = hs_relatorio_posto_medida.medida_id ";
sql+="inner join hs_relatorio_risco on hs_relatorio_risco.id = hs_relatorio_medida.risco_id ";
sql+="inner join hs_relatorio_posto_risco on (hs_relatorio_posto_risco.posto_id = hs_relatorio_posto.id and hs_relatorio_posto_risco.risco_id = hs_relatorio_risco.id) ";
sql+="inner join hs_relatorio on hs_relatorio.id = hs_relatorio_risco.relatorio_id ";
sql+="inner join hs_relatorio_area on hs_relatorio_area.id = area_id ";
sql+="where area_id = "+area_id+" and hs_relatorio_posto_medida.is_plano_actuacao = true) subquery order by subquery.medida_id, valor";
System.out.println("EXISTEM MEDIDAS BY AREA SQL : "+sql);
+" from ( select distinct hs_relatorio_posto_medida.medida_id, hs_relatorio_posto_risco.risco_id, hs_relatorio_medida.description as descricao, "
+" case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null "
+" when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade else hs_relatorio_posto_risco.valor_qualitativo_id end as valor from hs_relatorio_posto "
+" inner join hs_relatorio_posto_medida on hs_relatorio_posto_medida.posto_id = hs_relatorio_posto.id "
+" inner join hs_relatorio_medida on hs_relatorio_medida.id = hs_relatorio_posto_medida.medida_id "
+" inner join hs_relatorio_risco on hs_relatorio_risco.id = hs_relatorio_medida.risco_id "
+" inner join hs_relatorio_posto_risco on (hs_relatorio_posto_risco.posto_id = hs_relatorio_posto.id and hs_relatorio_posto_risco.risco_id = hs_relatorio_risco.id) "
+" inner join hs_relatorio on hs_relatorio.id = hs_relatorio_risco.relatorio_id "
+" inner join hs_relatorio_area on hs_relatorio_area.id = area_id "
+" where area_id = "+areaID+" and hs_relatorio_posto_medida.is_plano_actuacao = true) subquery "
sql+="from ( select distinct hs_relatorio_posto_medida.medida_id, hs_relatorio_posto_risco.risco_id, hs_relatorio_medida.description as descricao, ";
sql+="case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null ";
sql+="when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade else hs_relatorio_posto_risco.valor_qualitativo_id end as valor from hs_relatorio_posto ";
sql+="inner join hs_relatorio_posto_medida on hs_relatorio_posto_medida.posto_id = hs_relatorio_posto.id ";
sql+="inner join hs_relatorio_medida on hs_relatorio_medida.id = hs_relatorio_posto_medida.medida_id ";
sql+="inner join hs_relatorio_risco on hs_relatorio_risco.id = hs_relatorio_medida.risco_id ";
sql+="inner join hs_relatorio_posto_risco on (hs_relatorio_posto_risco.posto_id = hs_relatorio_posto.id and hs_relatorio_posto_risco.risco_id = hs_relatorio_risco.id) ";
sql+="inner join hs_relatorio on hs_relatorio.id = hs_relatorio_risco.relatorio_id ";
sql+="inner join hs_relatorio_area on hs_relatorio_area.id = area_id ";
sql+="where hs_relatorio_posto_risco.risco_id = "+risco_id+" and hs_relatorio_posto_medida.is_plano_actuacao = true) subquery order by medida_id";
Stringsql="select distinct medida_id "
+" from ( select distinct hs_relatorio_posto_medida.medida_id, hs_relatorio_posto_risco.risco_id, hs_relatorio_medida.description as descricao, "
+" case when hs_relatorio_posto_risco.valor_qualitativo_id isnull and hs_relatorio_posto_risco.probabilidade isnull and hs_relatorio_posto_risco.severidade isnull then null "
+" when hs_relatorio_posto_risco.valor_qualitativo_id isnull then hs_relatorio_posto_risco.probabilidade * hs_relatorio_posto_risco.severidade else hs_relatorio_posto_risco.valor_qualitativo_id end as valor from hs_relatorio_posto "
+" inner join hs_relatorio_posto_medida on hs_relatorio_posto_medida.posto_id = hs_relatorio_posto.id "
+" inner join hs_relatorio_medida on hs_relatorio_medida.id = hs_relatorio_posto_medida.medida_id "
+" inner join hs_relatorio_risco on hs_relatorio_risco.id = hs_relatorio_medida.risco_id "
+" inner join hs_relatorio_posto_risco on (hs_relatorio_posto_risco.posto_id = hs_relatorio_posto.id and hs_relatorio_posto_risco.risco_id = hs_relatorio_risco.id) "
+" inner join hs_relatorio on hs_relatorio.id = hs_relatorio_risco.relatorio_id "
+" inner join hs_relatorio_area on hs_relatorio_area.id = area_id "
+" where hs_relatorio_posto_risco.risco_id = "+risco_id+" and hs_relatorio_posto_medida.is_plano_actuacao = true) subquery "
+" order by medida_id";
System.out.println("EXISTEM MEDIDAS BY RISCO SQL : "+sql);
Statementst=createLocalStatement();
ResultSetrs=st.executeQuery(sql);
@ -523,9 +526,10 @@ public class PlanosActuacaoImporterProvider extends GenericDataProvider
mail_text="Notifica-se que o Plano passou para a fase Segurançãa(Preenchimento)";
}
else
@ -2075,7 +2075,7 @@ public class EditarPlano extends AbstractPageBean
{
caseGlobal.FASE_DIR_LOJA_VALIDACAO:
tipo_utilizador=Global.DIRECTOR_LOJA;
assunto="Plano de Actuação da Avaliação de Riscos de " +p.getData_visita_str()+" - Pedido de Correcção";
assunto="Plano de Actua<EFBFBD><EFBFBD>o da Avalia<69><61>o de Riscos de " +p.getData_visita_str()+" - Pedido de Correc<EFBFBD><EFBFBD>o";
mail_text="<p>Exmo. (a) Senhor (a),</p>";
mail_text+="<p>O Plano de Actuação referente à auditoria de Avaliação de Riscos Laborais realizada no passado dia "+p.getData_visita_str()+" foi devolvido para correcção.</p>";
mail_text+="<p>Proceda, por favor, em www.siprp.com à(s) respectiva(s) correcção(ões) de acordo com as indicações e volte a reenviar o processo para a fase seguinte.</p>";
@ -2106,14 +2106,14 @@ public class EditarPlano extends AbstractPageBean
}
caseGlobal.FASE_SIPRP_CONCLUSAO:
tipo_utilizador=Global.TECNICO_HS;
assunto="Plano de Actuação da Avaliação de Riscos de " +p.getData_visita_str()+" - "+p.getNome_estabelecimento();
assunto="Plano de Actua<EFBFBD><EFBFBD>o da Avalia<69><61>o de Riscos de " +p.getData_visita_str()+" - "+p.getNome_estabelecimento();
mail_text="<p>Exmo. (a) Senhor (a),</p>";
mail_text+="<p>Encontra-se disponível em www.siprp.com o Plano de Actuação referente à auditoria de Avaliação de Riscos Laborais realizada no passado dia "+p.getData_visita_str()+" para que possa efectuar a sua verificação.</p>";
mail_text+="<p><center><b>Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático</b></center></p>";
break;
caseGlobal.FASE_CONCLUIDO:
assunto="Plano de Actuação da Avaliação de Riscos de " +p.getData_visita_str()+" - "+p.getNome_estabelecimento()+" - Processo finalizado";
assunto="Plano de Actua<EFBFBD><EFBFBD>o da Avalia<69><61>o de Riscos de " +p.getData_visita_str()+" - "+p.getNome_estabelecimento()+" - Processo finalizado";
mail_text="<p>Exmo. (a) Senhor (a),</p>";
mail_text+="<p>Encontra-se disponível em www.siprp.com o Plano de Actuação referente à auditoria de Avaliação de Riscos Laborais realizada no passado dia "+p.getData_visita_str()+" finalizado após verificação pelos Técnicos Superiores de Higiene e Segurança da SIPRP.</p>";
mail_text+="<p>Aproveitamos para agradecer toda a disponibilidade e ficamos ao vosso dispor, caso tenha alguma dúvida ou necessite de qualquer esclarecimento, através do telefone 213 504 540.</p>";