diff --git a/trunk/PlanosActuacao/lib/cursos.jar b/trunk/PlanosActuacao/lib/cursos.jar index 86796607..b9c85e84 100644 Binary files a/trunk/PlanosActuacao/lib/cursos.jar and b/trunk/PlanosActuacao/lib/cursos.jar differ diff --git a/trunk/PlanosActuacao/lib/evologger.jar b/trunk/PlanosActuacao/lib/evologger.jar index 3f9d645e..1f741c12 100644 Binary files a/trunk/PlanosActuacao/lib/evologger.jar and b/trunk/PlanosActuacao/lib/evologger.jar differ diff --git a/trunk/PlanosActuacao/lib/evolute.jar b/trunk/PlanosActuacao/lib/evolute.jar index 6c14bf60..0c503cae 100644 Binary files a/trunk/PlanosActuacao/lib/evolute.jar and b/trunk/PlanosActuacao/lib/evolute.jar differ diff --git a/trunk/PlanosActuacao/lib/shst.jar b/trunk/PlanosActuacao/lib/shst.jar index 24fdaa22..95e5fdd7 100644 Binary files a/trunk/PlanosActuacao/lib/shst.jar and b/trunk/PlanosActuacao/lib/shst.jar differ diff --git a/trunk/PlanosActuacao/nbproject/build-impl.xml b/trunk/PlanosActuacao/nbproject/build-impl.xml index 7aed9a87..2da747d3 100644 --- a/trunk/PlanosActuacao/nbproject/build-impl.xml +++ b/trunk/PlanosActuacao/nbproject/build-impl.xml @@ -564,13 +564,13 @@ exists or setup the property manually. For example like this: - - + + - + @@ -622,8 +622,8 @@ exists or setup the property manually. For example like this: - - + + diff --git a/trunk/PlanosActuacao/nbproject/genfiles.properties b/trunk/PlanosActuacao/nbproject/genfiles.properties index 1f88279e..042ed3a6 100644 --- a/trunk/PlanosActuacao/nbproject/genfiles.properties +++ b/trunk/PlanosActuacao/nbproject/genfiles.properties @@ -1,8 +1,8 @@ -build.xml.data.CRC32=19ca635b +build.xml.data.CRC32=bcd9760d build.xml.script.CRC32=50b8b881 build.xml.stylesheet.CRC32=c0ebde35@1.15.2.1 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=19ca635b -nbproject/build-impl.xml.script.CRC32=75fcbdeb +nbproject/build-impl.xml.data.CRC32=bcd9760d +nbproject/build-impl.xml.script.CRC32=65855de9 nbproject/build-impl.xml.stylesheet.CRC32=8ab4467e@1.15.2.1 diff --git a/trunk/PlanosActuacao/nbproject/project.properties b/trunk/PlanosActuacao/nbproject/project.properties index 74799d9c..60f555b3 100644 --- a/trunk/PlanosActuacao/nbproject/project.properties +++ b/trunk/PlanosActuacao/nbproject/project.properties @@ -30,6 +30,7 @@ file.reference.commons-beanutils-1.8.3.jar=lib/commons-beanutils-1.8.3.jar file.reference.commons-codec-1.3.jar=lib/commons-codec-1.3.jar file.reference.commons-collections-3.1.jar=lib/commons-collections-3.1.jar file.reference.commons-digester-1.8.jar=lib/commons-digester-1.8.jar +file.reference.commons-el-1.0.jar=lib/myfaces/commons-el-1.0.jar file.reference.commons-fileupload-1.2.1.jar=lib/commons-fileupload-1.2.1.jar file.reference.commons-httpclient-3.1.jar=lib/commons-httpclient-3.1.jar file.reference.commons-io-1.4.jar=lib/commons-io-1.4.jar @@ -49,7 +50,6 @@ file.reference.mail.jar-1=lib/mail.jar file.reference.org.springframework.beans-3.0.0.jar=lib/org.springframework.beans-3.0.0.jar file.reference.org.springframework.context-3.0.0.jar=lib/org.springframework.context-3.0.0.jar file.reference.org.springframework.core-3.0.0.jar=lib/org.springframework.core-3.0.0.jar -file.reference.oro-2.0.8.jar=lib/myfaces/oro-2.0.8.jar file.reference.postgresql-9.0-801.jdbc4.jar=lib/postgresql-9.0-801.jdbc4.jar file.reference.richfaces-api-3.3.3.Final.jar=lib/richfaces/richfaces-api-3.3.3.Final.jar file.reference.richfaces-impl-3.3.3.Final.jar=lib/richfaces/richfaces-impl-3.3.3.Final.jar @@ -60,7 +60,7 @@ file.reference.spring-ws-core-1.5.9.jar=lib/spring-ws-core-1.5.9.jar file.reference.spring-ws-core-tiger-1.5.9.jar=lib/spring-ws-core-tiger-1.5.9.jar file.reference.spring-ws-support-1.5.9.jar=lib/spring-ws-support-1.5.9.jar file.reference.spring-xml-1.5.9.jar=lib/spring-xml-1.5.9.jar -file.reference.tomahawk12-1.1.10.jar=lib/myfaces/tomahawk12-1.1.10.jar +file.reference.tomahawk-1.1.10.jar=lib/myfaces/tomahawk-1.1.10.jar file.reference.truelicense.jar=lib/truelicense.jar file.reference.xalan-2.7.0.jar=lib/xalan-2.7.0.jar file.reference.xercesImpl-2.7.1.jar=lib/xercesImpl-2.7.1.jar @@ -122,8 +122,8 @@ javac.classpath=\ ${file.reference.richfaces-api-3.3.3.Final.jar}:\ ${file.reference.richfaces-impl-3.3.3.Final.jar}:\ ${file.reference.richfaces-ui-3.3.3.Final.jar}:\ - ${file.reference.oro-2.0.8.jar}:\ - ${file.reference.tomahawk12-1.1.10.jar}:\ + ${file.reference.commons-el-1.0.jar}:\ + ${file.reference.tomahawk-1.1.10.jar}:\ ${file.reference.xmlParserAPIs-2.0.2.jar} # Space-separated list of extra javac options javac.compilerargs= diff --git a/trunk/PlanosActuacao/nbproject/project.xml b/trunk/PlanosActuacao/nbproject/project.xml index c97b14b3..5485ae38 100644 --- a/trunk/PlanosActuacao/nbproject/project.xml +++ b/trunk/PlanosActuacao/nbproject/project.xml @@ -200,11 +200,11 @@ WEB-INF/lib - ${file.reference.oro-2.0.8.jar} + ${file.reference.commons-el-1.0.jar} WEB-INF/lib - ${file.reference.tomahawk12-1.1.10.jar} + ${file.reference.tomahawk-1.1.10.jar} WEB-INF/lib diff --git a/trunk/PlanosActuacao/src/java/mail/Mail.java b/trunk/PlanosActuacao/src/java/mail/Mail.java index be90e11d..4e2358a2 100644 --- a/trunk/PlanosActuacao/src/java/mail/Mail.java +++ b/trunk/PlanosActuacao/src/java/mail/Mail.java @@ -24,6 +24,11 @@ public class Mail private final String BCC_1 = "departamentotecnico@siprp.pt"; + public void send( String emailTo, String emailFrom, MailNextPhase nextPhase ) throws Exception + { + send( emailTo, emailFrom, nextPhase.getSubject(), nextPhase.getBody() ); + } + public void send( String emailTo, String emailFrom, String assunto, String texto_email ) throws Exception { diff --git a/trunk/PlanosActuacao/src/java/mail/MailNextPhase.java b/trunk/PlanosActuacao/src/java/mail/MailNextPhase.java new file mode 100644 index 00000000..6cb49d1f --- /dev/null +++ b/trunk/PlanosActuacao/src/java/mail/MailNextPhase.java @@ -0,0 +1,133 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package mail; + +import db.entidades.PlanoActuacao; + +/** + * + * @author dneves + */ +public interface MailNextPhase +{ + + public String getSubject(); + + public String getBody(); + + + public class SIPRP_TO_RESPONSAVEL_SEGURANCA implements MailNextPhase + { + private final PlanoActuacao p; + + public SIPRP_TO_RESPONSAVEL_SEGURANCA( PlanoActuacao p ) + { + this.p = p; + } + + @Override + public String getSubject() + { + return "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str() + " - " + p.getNome_estabelecimento(); + } + + @Override + public String getBody() + { +// String mail_text = "

Exmo. (a) Senhor (a),

"; +// mail_text += "

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 o seu preenchimento.

"; +// mail_text += "

Recordamos que dispõe de duas semanas para efectuar o seu preenchimento e passar o respectivo processo para a fase seguinte, ou seja, para o responsável pelo seu estabelecimento.

"; +// mail_text += "

Caso tenha alguma dúvida ou necessite de qualquer esclarecimento, contacte, por favor, a área técnica da SIPRP através do telefone 213 504 540.

"; +// mail_text += "

Cumprimentos,

"; +// mail_text += "

A equipa da SIPRP

"; +// mail_text += "

Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático

"; +// return mail_text; + + String body = ""; + body += "

Exmo. (a) Senhor (a),

"; + body += "

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 o seu preenchimento.

"; + body += "

Recordamos que dispõe de 30 dias para efectuar o seu preenchimento e passar o respectivo processo para a fase seguinte, ou seja, para o responsável pelo seu estabelecimento.

"; + body += "

Caso tenha alguma dúvida ou necessite de qualquer esclarecimento, contacte, por favor, a área técnica da SIPRP através do telefone 213 504 540.

"; + body += "

Cumprimentos,

"; + body += "

A equipa da SIPRP

"; + return body; + } + } + + public class RESPONSAVEL_SEGURANCA_TO_DIRECTOR_LOJA implements MailNextPhase + { + private final PlanoActuacao p; + + public RESPONSAVEL_SEGURANCA_TO_DIRECTOR_LOJA( PlanoActuacao p ) + { + this.p = p; + } + + @Override + public String getSubject() + { + return "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str(); + } + + @Override + public String getBody() + { +// String mail_text = "

Exmo. (a) Senhor (a),

"; +// mail_text += "

Encontra-se disponível em www.siprp.com o Plano de Actuação referente à auditoria de "; +// mail_text += "Avaliação de Riscos Laborais realizada no passado dia " + p.getData_visita_str() + " para que possa "; +// mail_text += "validar a informação preenchida.

"; +// mail_text += "

Cumprimentos.

"; +// mail_text += "

Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático

"; +// return mail_text; + + String body = ""; + body += "

Exmo. (a) Senhor (a),

"; + body += "

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 validar a informação preenchida.

"; + body += "

Recordamos que dispõe de 15 dias para efectuar o seu preenchimento e passar o respectivo processo para a fase seguinte, ou seja, para a Direcção Nacional de Segurança.

"; + body += "

Caso tenha alguma dúvida ou necessite de qualquer esclarecimento, contacte, por favor, a área técnica da SIPRP através do telefone 213 504 540.

"; + body += "

Cumprimentos,

"; + body += "

A equipa da SIPRP

"; + return body; + } + } + + public class DIRECTOR_LOJA_TO_DIRECTOR_NACIONAL_SEGURANCA implements MailNextPhase + { + private final PlanoActuacao p; + + public DIRECTOR_LOJA_TO_DIRECTOR_NACIONAL_SEGURANCA( PlanoActuacao p ) + { + this.p = p; + } + + @Override + public String getSubject() + { + return "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str() + " - " + p.getNome_estabelecimento(); + } + + @Override + public String getBody() + { +// String mail_text = "

Exmo. Senhor Silvestre Machado,

"; +// mail_text += "

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 o possa validar.

"; +// mail_text += "

Cumprimentos.

"; +// mail_text += "

Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático

"; +// return mail_text; + + String body = ""; + body += "

Exmo. (a) Senhor (a),

"; + body += "

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 validar a informação preenchida.

"; + body += "

Recordamos que dispõe de 15 dias para efectuar o seu preenchimento e passar o respectivo processo para a fase seguinte, ou seja, verificação por parte da SIPRP.

"; + body += "

Caso tenha alguma dúvida ou necessite de qualquer esclarecimento, contacte, por favor, a área técnica da SIPRP através do telefone 213 504 540.

"; + body += "

Cumprimentos,

"; + body += "

A equipa da SIPRP

"; + return body; + } + + } + +} diff --git a/trunk/PlanosActuacao/src/java/phaselistener/ContextListener.java b/trunk/PlanosActuacao/src/java/phaselistener/PAContextListener.java similarity index 97% rename from trunk/PlanosActuacao/src/java/phaselistener/ContextListener.java rename to trunk/PlanosActuacao/src/java/phaselistener/PAContextListener.java index 88c9ee56..36a5bc92 100644 --- a/trunk/PlanosActuacao/src/java/phaselistener/ContextListener.java +++ b/trunk/PlanosActuacao/src/java/phaselistener/PAContextListener.java @@ -24,7 +24,7 @@ import utils.PlanosActuacaoLogger; * * @author dneves */ -public class ContextListener implements ServletContextListener +public class PAContextListener implements ServletContextListener { private static final int IMPORT_INTERVAL = 300; @@ -32,6 +32,7 @@ public class ContextListener implements ServletContextListener private TimedEvent importEvent = null; + @Override public void contextInitialized( ServletContextEvent sce ) { startedTime = System.currentTimeMillis(); @@ -73,6 +74,7 @@ public class ContextListener implements ServletContextListener System.out.println( "\nScheduling Import Event ... " ); importEvent = new TimedEvent() { + @Override public void executeAction() throws Exception { try @@ -90,6 +92,7 @@ public class ContextListener implements ServletContextListener System.out.println( "\tExecuting Import each " + ( IMPORT_INTERVAL / 60 ) + " minutes." ); } + @Override public void contextDestroyed( ServletContextEvent sce ) { System.out.println( "\ncontextDestroyed() : " ); diff --git a/trunk/PlanosActuacao/src/java/phaselistener/MainPhaseListener.java b/trunk/PlanosActuacao/src/java/phaselistener/PAMainPhaseListener.java similarity index 98% rename from trunk/PlanosActuacao/src/java/phaselistener/MainPhaseListener.java rename to trunk/PlanosActuacao/src/java/phaselistener/PAMainPhaseListener.java index 6c757518..4c7c74bc 100644 --- a/trunk/PlanosActuacao/src/java/phaselistener/MainPhaseListener.java +++ b/trunk/PlanosActuacao/src/java/phaselistener/PAMainPhaseListener.java @@ -29,10 +29,11 @@ import utils.Logos; * * @author lluis */ -public class MainPhaseListener implements PhaseListener +public class PAMainPhaseListener implements PhaseListener { private boolean firstEntry = true; + @Override public void afterPhase( PhaseEvent pe ) { if ( pe.getPhaseId() == PhaseId.RENDER_RESPONSE ) @@ -43,6 +44,7 @@ public class MainPhaseListener implements PhaseListener } } + @Override public void beforePhase(PhaseEvent event) { if ( event.getPhaseId() == PhaseId.RENDER_RESPONSE ) @@ -190,6 +192,7 @@ public class MainPhaseListener implements PhaseListener // } // } + @Override public PhaseId getPhaseId() { return PhaseId.ANY_PHASE; diff --git a/trunk/PlanosActuacao/src/java/phaselistener/SessionListener.java b/trunk/PlanosActuacao/src/java/phaselistener/PASessionListener.java similarity index 91% rename from trunk/PlanosActuacao/src/java/phaselistener/SessionListener.java rename to trunk/PlanosActuacao/src/java/phaselistener/PASessionListener.java index 0eff2121..7cbbabe7 100644 --- a/trunk/PlanosActuacao/src/java/phaselistener/SessionListener.java +++ b/trunk/PlanosActuacao/src/java/phaselistener/PASessionListener.java @@ -13,7 +13,7 @@ import javax.servlet.http.HttpSessionListener; * * @author dneves */ -public class SessionListener implements HttpSessionListener +public class PASessionListener implements HttpSessionListener { @Override diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java b/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java index e74dccd9..41d85e59 100644 --- a/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java +++ b/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java @@ -46,6 +46,8 @@ import javax.faces.event.ActionEvent; import javax.faces.event.MethodExpressionActionListener; import javax.faces.event.ValueChangeEvent; import mail.Mail; +import mail.MailNextPhase; +import mail.MailNextPhase.RESPONSAVEL_SEGURANCA_TO_DIRECTOR_LOJA; import org.richfaces.component.html.HtmlCalendar; import pagination.Pagina; import pagination.Pagination; @@ -2093,27 +2095,22 @@ public class EditarPlano extends AbstractPageBean } break; - case Global.FASE_DIR_LOJA_VALIDACAO : + case Global.FASE_DIR_LOJA_VALIDACAO : // RS para DL + { tipo_utilizador = Global.DIRECTOR_LOJA; - assunto = "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str(); - mail_text = "

Exmo. (a) Senhor (a),

"; - mail_text += "

Encontra-se disponível em www.siprp.com o Plano de Actuação referente à auditoria de "; - mail_text += "Avaliação de Riscos Laborais realizada no passado dia " + p.getData_visita_str() + " para que possa "; - mail_text += "validar a informação preenchida.

"; - mail_text += "

Cumprimentos.

"; - mail_text += "

Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático

"; - + MailNextPhase nextPhase = new RESPONSAVEL_SEGURANCA_TO_DIRECTOR_LOJA( p ); + assunto = nextPhase.getSubject(); + mail_text = nextPhase.getBody(); break; - - case Global.FASE_DNS_PARECER : + } + case Global.FASE_DNS_PARECER : // DL para DNS + { tipo_utilizador = Global.DIRECTOR_NACIONAL_SEGURANCA; - assunto = "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str() + " - " + p.getNome_estabelecimento(); - mail_text = "

Exmo. Senhor Silvestre Machado,

"; - mail_text += "

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 o possa validar.

"; - mail_text += "

Cumprimentos.

"; - mail_text += "

Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático

"; + MailNextPhase nextPhase = new MailNextPhase.DIRECTOR_LOJA_TO_DIRECTOR_NACIONAL_SEGURANCA( p ); + assunto = nextPhase.getSubject(); + mail_text = nextPhase.getBody(); break; - + } case Global.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(); diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/EnviarCorrecao.java b/trunk/PlanosActuacao/src/java/planosactuacao/EnviarCorrecao.java index e480c14d..0f89b91e 100644 --- a/trunk/PlanosActuacao/src/java/planosactuacao/EnviarCorrecao.java +++ b/trunk/PlanosActuacao/src/java/planosactuacao/EnviarCorrecao.java @@ -323,7 +323,7 @@ public class EnviarCorrecao extends AbstractPageBean int tipo_utilizador = 0; switch( fase ) { - case Global.FASE_SEGURANCA_PREENCHIMENTO : + case Global.FASE_SEGURANCA_PREENCHIMENTO : // enviar para correccao para responsavel de seguranca tipo_utilizador = Global.RESPONSAVEL_SEGURANCA; assunto = "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str() + " - Pedido de Correcção"; mail_text = "

Exmo. (a) Senhor (a),

"; @@ -335,7 +335,7 @@ public class EnviarCorrecao extends AbstractPageBean mail_text += "

Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático

"; break; - case Global.FASE_DIR_LOJA_VALIDACAO : + case Global.FASE_DIR_LOJA_VALIDACAO : // enviar para correccao para director de loja tipo_utilizador = Global.DIRECTOR_LOJA; assunto = "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str() + " - Pedido de Correcção"; mail_text = "

Exmo. (a) Senhor (a),

"; diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java b/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java index ae3525ef..f0bcb7ca 100644 --- a/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java +++ b/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java @@ -22,6 +22,8 @@ import java.util.LinkedList; import java.util.List; import java.util.ListIterator; import mail.Mail; +import mail.MailNextPhase; +import mail.MailNextPhase.SIPRP_TO_RESPONSAVEL_SEGURANCA; import shst.data.outer.HsRelatorioData; import shst.data.provider.PlanoActuacaoDataProvider; import static com.evolute.utils.strings.UnicodeLatin1Map.*; @@ -32,16 +34,9 @@ import static com.evolute.utils.strings.UnicodeLatin1Map.*; */ public class PlanosActuacao { - //PlanosDataProvider pdp = new PlanosDataProvider(); -// CreatePlanosDataProvider cpdp = new CreatePlanosDataProvider(); - //RelatoriosDataProvider rdp; private List< PlanoActuacao > planosList; private List< Date > planosOnlineList; -// PlanoActuacaoDAO pa = new PlanoActuacaoDAO(); - - //DB - public PlanosActuacao() { @@ -312,28 +307,9 @@ public class PlanosActuacao { createMedidas( r.getId(), r.getMedidas() ); } -// if(r.getValores() != null) -// { -// createValores(r.getId(), r.getValores()); -// } - } } -// private void createValores(Integer risco_id, List valores) throws Exception -// { -// for(Valor v : valores) -// { -// v.setRisco_id(risco_id); -// v.setId(pdp.createValor(v)); -// if(v.getMedidas() != null) -// { -// createMedidas(v.getId(), v.getMedidas()); -// } -// -// } -// } - private void createMedidas(Integer risco_id, List medidas) throws Exception { CreatePlanosDataProvider cpdp = CreatePlanosDataProvider.getInstance(); @@ -360,117 +336,56 @@ public class PlanosActuacao cpdp.createPostoTrabalho( p ); } } - - - - -// private void showPlano(PlanoActuacao p) -// { -// System.out.println("================================================"); -// System.out.println("PLANO : " + p.getData_visita_str() + " | " + p.getDescricao() + " | " + p.getFase_nome() + " | " + p.getNome_estabelecimento()); -// showAreas(p.getAreas()); -// System.out.println("================================================"); -// } - -// private void showAreas(List areas) -// { -// for(Area a : areas) -// { -// System.out.println(" " + a.getDescricao()); -// showRiscos(a.getRiscos()); -// } -// } - -// private void showRiscos(List riscos) -// { -// for(Risco r : riscos) -// { -// System.out.println(" " + r.getDescricao()); -// showValores(r.getValores()); -// } -// } - -// private void showValores(List valores) -// { -// for(Valor v : valores) -// { -// System.out.println(" " + v.getValor()); -// showMedidas(v.getMedidas()); -// } -// } - -// private void showMedidas(List medidas) -// { -// for(Medida m : medidas) -// { -// System.out.println(" " + m.getDescricao()); -// showPostos(m.getPostos()); -// } -// } - -// private void showPostos(List postos) -// { -// for(PostoTrabalho p : postos) -// { -// System.out.println(" " + p.getDescricao()); -// } -// } - + private void enviarMail( PlanoActuacao p ) { - String assunto = ""; - String mail_text = ""; + MailNextPhase nextPhase = null; int fase = p.getFase().intValue(); int tipo_utilizador = 0; - switch(fase) + switch ( fase ) { - case Global.FASE_SEGURANCA_PREENCHIMENTO : + case Global.FASE_SEGURANCA_PREENCHIMENTO : // SIPRP para RS tipo_utilizador = Global.RESPONSAVEL_SEGURANCA; - assunto = "Plano de Actuação da Avaliação de Riscos de " + p.getData_visita_str() + " - " + p.getNome_estabelecimento(); - mail_text = "

Exmo. (a) Senhor (a),

"; - mail_text += "

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 o seu preenchimento.

"; - mail_text += "

Recordamos que dispõe de duas semanas para efectuar o seu preenchimento e passar o respectivo processo para a fase seguinte, ou seja, para o responsável pelo seu estabelecimento.

"; - mail_text += "

Caso tenha alguma dúvida ou necessite de qualquer esclarecimento, contacte, por favor, a área técnica da SIPRP através do telefone 213 504 540.

"; - mail_text += "

Cumprimentos,

"; - mail_text += "

A equipa da SIPRP

"; - mail_text += "

Por favor não responda a esta mensagem, dado tratar-se de um e-mail automático

"; + nextPhase = new SIPRP_TO_RESPONSAVEL_SEGURANCA( p ); break; } - String responsavel_loja = "n"; - if(tipo_utilizador == Global.RESPONSAVEL_SEGURANCA) - { - responsavel_loja = "y"; - } - try - { - Mail mail = new Mail(); - - UtilizadoresDataProvider udp = UtilizadoresDataProvider.getInstance(); - List< Utilizador > list = udp.getUtilizadoresListByTipo( tipo_utilizador, responsavel_loja, p.getEstabelecimento_id() ); - ListIterator iter = list.listIterator(); - while ( iter.hasNext() ) - { - Utilizador u = ( Utilizador ) iter.next(); - System.out.println( "\t\tUSER MAIL NEXT FASE : " + u.getLogin() + " ; " + u.getEmail() ); - try - { - mail.send( u.getEmail(), Mail.ENDERECO_ENVIO, assunto, mail_text ); - System.out.println( "\t\t\tEMAIL ENVIADO !!" ); - } - catch(Exception ex1) - { - ErrorLogger.logException( ex1 ); - System.out.println("\t\t\tMAIL ERROR : " + ex1.getMessage()); - } + if ( nextPhase != null ) + { + String responsavel_loja = "n"; + if ( tipo_utilizador == Global.RESPONSAVEL_SEGURANCA ) + { + responsavel_loja = "y"; + } + try + { + Mail mail = new Mail(); - } - } - catch ( Exception ex ) - { - ErrorLogger.logException( ex ); - } + UtilizadoresDataProvider udp = UtilizadoresDataProvider.getInstance(); + List< Utilizador > list = udp.getUtilizadoresListByTipo( tipo_utilizador, responsavel_loja, p.getEstabelecimento_id() ); + ListIterator iter = list.listIterator(); + while ( iter.hasNext() ) + { + Utilizador u = ( Utilizador ) iter.next(); + System.out.println( "\t\tUSER MAIL NEXT FASE : " + u.getLogin() + " ; " + u.getEmail() ); + try + { + mail.send( u.getEmail(), Mail.ENDERECO_ENVIO, nextPhase ); + System.out.println( "\t\t\tEMAIL ENVIADO !!" ); + } + catch ( Exception ex1 ) + { + ErrorLogger.logException( ex1 ); + System.out.println("\t\t\tMAIL ERROR : " + ex1.getMessage()); + } + } + } + catch ( Exception ex ) + { + ErrorLogger.logException( ex ); + } + } } } diff --git a/trunk/PlanosActuacao/web/WEB-INF/faces-config.xml b/trunk/PlanosActuacao/web/WEB-INF/faces-config.xml index f3d8a731..5cc5ffab 100644 --- a/trunk/PlanosActuacao/web/WEB-INF/faces-config.xml +++ b/trunk/PlanosActuacao/web/WEB-INF/faces-config.xml @@ -13,7 +13,7 @@ - phaselistener.MainPhaseListener + phaselistener.PAMainPhaseListener SessionBean1 diff --git a/trunk/PlanosActuacao/web/WEB-INF/web.xml b/trunk/PlanosActuacao/web/WEB-INF/web.xml index 9fa7a905..9eb7bd40 100644 --- a/trunk/PlanosActuacao/web/WEB-INF/web.xml +++ b/trunk/PlanosActuacao/web/WEB-INF/web.xml @@ -151,10 +151,10 @@ - phaselistener.ContextListener + phaselistener.PAContextListener - phaselistener.SessionListener + phaselistener.PASessionListener