From 32501067b4655815712709976511c3a1d5abf1ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?L=20Lu=C3=ADs=20=3D?=
Date: Wed, 8 Oct 2008 09:01:24 +0000
Subject: [PATCH] 03/10/2008
git-svn-id: https://svn.coded.pt/svn/SIPRP@756 bb69d46d-e84e-40c8-a05a-06db0d633741
---
trunk/AnaliseAcidentesTrabalho/build.xml | 8 +-
.../nbproject/ant-deploy.xml | 4 +-
.../nbproject/build-impl.xml | 624 +++++++-----
.../nbproject/faces-config.NavData | 26 +
.../nbproject/genfiles.properties | 12 +-
.../nbproject/navigation.NavData | 26 +
.../nbproject/project.properties | 16 +-
.../nbproject/project.xml | 10 +-
.../AnaliseAcidenteTrabalho.java | 899 +++++++++++++-----
.../java/analiseacidentestrabalho/Dummy.java | 314 ++----
.../EnviarCorrecao.java | 145 ++-
.../FichaUtilizador.java | 50 +
.../FormDirGerRh.java | 100 ++
.../FormDirSiprp.java | 154 ++-
.../analiseacidentestrabalho/FormGestor.java | 136 +++
.../java/analiseacidentestrabalho/FormHS.java | 223 ++++-
.../java/analiseacidentestrabalho/FormRH.java | 164 +++-
.../FormSeguranca.java | 189 +++-
.../GestaoUtilizadores.java | 40 +
.../java/analiseacidentestrabalho/Login.java | 1 +
.../NovoUtilizador.java | 69 +-
.../RecuperarPassword.java | 8 +-
.../SessionBean1.java | 66 ++
.../UtilizadorFields.java | 40 +
.../ViewAnaliseAcidenteTrabalho.java | 244 ++++-
.../src/java/db/AnalisesDataProvider.java | 153 +--
.../src/java/db/Dblocal.java | 2 +-
.../src/java/db/UtilizadoresDataProvider.java | 11 +-
.../src/java/global/Global.java | 39 +-
.../src/java/utils/Utils.java | 150 ++-
.../web/AnaliseAcidenteTrabalho.jsp | 61 +-
trunk/AnaliseAcidentesTrabalho/web/Dummy.jsp | 62 +-
.../web/EnviarCorrecao.jsp | 29 +-
.../web/FichaUtilizador.jsp | 21 +-
.../web/FormDirGerRh.jsp | 29 +-
.../web/FormDirSiprp.jsp | 38 +-
.../web/FormGestor.jsp | 37 +-
trunk/AnaliseAcidentesTrabalho/web/FormHS.jsp | 54 +-
trunk/AnaliseAcidentesTrabalho/web/FormRH.jsp | 42 +-
.../web/FormSeguranca.jsp | 52 +-
.../web/GestaoUtilizadores.jsp | 17 +-
.../web/NovoUtilizador.jsp | 31 +-
.../web/RecuperarPassword.jsp | 11 +-
.../web/UtilizadorFields.jsp | 17 +-
.../web/ViewAnaliseAcidenteTrabalho.jsp | 49 +-
.../web/resources/pdfs/Ajuda.pdf | Bin 0 -> 2818927 bytes
.../web/resources/stylesheet.css | 2 +
47 files changed, 3492 insertions(+), 983 deletions(-)
create mode 100644 trunk/AnaliseAcidentesTrabalho/nbproject/faces-config.NavData
create mode 100644 trunk/AnaliseAcidentesTrabalho/nbproject/navigation.NavData
create mode 100644 trunk/AnaliseAcidentesTrabalho/web/resources/pdfs/Ajuda.pdf
diff --git a/trunk/AnaliseAcidentesTrabalho/build.xml b/trunk/AnaliseAcidentesTrabalho/build.xml
index 749e498d..eb87f66d 100644
--- a/trunk/AnaliseAcidentesTrabalho/build.xml
+++ b/trunk/AnaliseAcidentesTrabalho/build.xml
@@ -21,15 +21,15 @@
-post-compile-test: called after javac compilation of JUnit tests
-pre-compile-test-single: called before javac compilation of single JUnit test
-post-compile-test-single: called after javac compilation of single JUunit test
- -pre-dist: called before jar building
- -post-dist: called after jar building
+ -pre-dist: called before archive building
+ -post-dist: called after archive building
-post-clean: called after cleaning build products
-pre-run-deploy: called before deploying
-post-run-deploy: called after deploying
Example of pluging an obfuscator after the compilation could look like
-
+
@@ -45,7 +45,7 @@
init-macrodef-javac: defines macro for javac compilation
init-macrodef-junit: defines macro for junit execution
init-macrodef-debug: defines macro for class debugging
- do-dist: jar archive building
+ do-dist: archive building
run: execution of project
javadoc-build: javadoc generation
diff --git a/trunk/AnaliseAcidentesTrabalho/nbproject/ant-deploy.xml b/trunk/AnaliseAcidentesTrabalho/nbproject/ant-deploy.xml
index bcfeee44..a6f1480c 100644
--- a/trunk/AnaliseAcidentesTrabalho/nbproject/ant-deploy.xml
+++ b/trunk/AnaliseAcidentesTrabalho/nbproject/ant-deploy.xml
@@ -12,7 +12,7 @@
+ classpath="${tomcat.home}/lib/catalina-ant.jar"/>
@@ -21,7 +21,7 @@
+ classpath="${tomcat.home}/lib/catalina-ant.jar"/>
diff --git a/trunk/AnaliseAcidentesTrabalho/nbproject/build-impl.xml b/trunk/AnaliseAcidentesTrabalho/nbproject/build-impl.xml
index c08bb76a..780cccbc 100644
--- a/trunk/AnaliseAcidentesTrabalho/nbproject/build-impl.xml
+++ b/trunk/AnaliseAcidentesTrabalho/nbproject/build-impl.xml
@@ -17,9 +17,9 @@
- cleanup
-->
-
+
-
+
@@ -27,25 +27,21 @@
-
+
-
+
-
+
-
-
-
-
-
-
+
+
@@ -80,29 +76,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
-
-
-
+
+
@@ -110,12 +151,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
Must set src.dir
Must set test.src.dir
Must set build.dir
@@ -128,6 +185,13 @@
Must set build.test.results.dir
Must set build.classes.excludes
Must set dist.war
+
+The Java EE server classpath is not correctly set up. Your active server type is ${j2ee.server.type}.
+Either open the project in the IDE and assign the server or setup the server classpath manually.
+For example like this:
+ ant -Duser.properties.file=<path_to_property_file> (where you put the property "j2ee.platform.classpath" in a .properties file)
+or ant -Dj2ee.platform.classpath=<server_classpath> (where no properties file is used)
+
@@ -140,17 +204,17 @@
-
-
-
-
+
+
+
+
-
+
-
+
@@ -158,18 +222,18 @@
-
+
-
+
-
+
-
+
@@ -179,29 +243,37 @@
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
-
-
+
+
-
+
@@ -209,24 +281,44 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
+
+
+
+
-
-
-
-
+
+
@@ -234,9 +326,10 @@
-
+
+
@@ -246,66 +339,70 @@
-
-
+
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
+
+
+
-
-
-
+
+
+
+
-
+
-
-
-
+
+
+
@@ -313,19 +410,19 @@
-
+
-
+
Must select some files in the IDE or set javac.includes
-
+
@@ -333,35 +430,39 @@
-
-
+
+
-
+
-
+
+
+
-
+
-
+
Must select some files in the IDE or set javac.jsp.includes
-
+
-
+
+
+
-
+
@@ -378,144 +479,161 @@
-
-
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
-
-
+
+
-
+
-
+
-
+
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
+
@@ -535,9 +653,11 @@
-
-
-
+
+
+
+
+
@@ -545,15 +665,15 @@
-
-
+
+
-
+
-
-
+
+
@@ -561,14 +681,14 @@
-
+
-
+
-
+
@@ -603,7 +723,7 @@
-
+
Browser not found, cannot launch the deployed application. Try to set the BROWSER environment variable.
@@ -613,54 +733,58 @@
-
+
Must select one file in the IDE or set run.class
-
-
+
+
+
-
-
+
+
-
+
-
+
-
-
+
+
+
+
+
-
+
Must select one file in the IDE or set debug.class
-
-
+
+
Must set fix.includes
-
+
-
+
-
+
-
+
@@ -671,23 +795,23 @@
-
+
-
+
-
+
-
-
+
+
@@ -696,14 +820,14 @@
-
+
-
+
Must select some files in the IDE or set javac.includes
-
+
@@ -716,75 +840,85 @@
-
+
-
+
-
+
-
+
Some tests failed; see details above.
-
-
-
-
+
+
+
+
-
+
Must select some files in the IDE or set test.includes
-
+
Some tests failed; see details above.
-
+
-
+
Must select one file in the IDE or set test.class
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
+
-
-
-
+
+
+
-
+
-
+
-
-
+
+
-
-
+
+
diff --git a/trunk/AnaliseAcidentesTrabalho/nbproject/faces-config.NavData b/trunk/AnaliseAcidentesTrabalho/nbproject/faces-config.NavData
new file mode 100644
index 00000000..c1dae4ea
--- /dev/null
+++ b/trunk/AnaliseAcidentesTrabalho/nbproject/faces-config.NavData
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/trunk/AnaliseAcidentesTrabalho/nbproject/genfiles.properties b/trunk/AnaliseAcidentesTrabalho/nbproject/genfiles.properties
index 6d4fc5d8..ab3002cc 100644
--- a/trunk/AnaliseAcidentesTrabalho/nbproject/genfiles.properties
+++ b/trunk/AnaliseAcidentesTrabalho/nbproject/genfiles.properties
@@ -1,8 +1,8 @@
-build.xml.data.CRC32=9736285c
-build.xml.script.CRC32=ab1471e9
-build.xml.stylesheet.CRC32=95be3570
+build.xml.data.CRC32=306dea99
+build.xml.script.CRC32=82e52d07
+build.xml.stylesheet.CRC32=cfd7ba16
# 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=9736285c
-nbproject/build-impl.xml.script.CRC32=8213162e
-nbproject/build-impl.xml.stylesheet.CRC32=ac43bae1
+nbproject/build-impl.xml.data.CRC32=306dea99
+nbproject/build-impl.xml.script.CRC32=8bf3a1ef
+nbproject/build-impl.xml.stylesheet.CRC32=8926891b
diff --git a/trunk/AnaliseAcidentesTrabalho/nbproject/navigation.NavData b/trunk/AnaliseAcidentesTrabalho/nbproject/navigation.NavData
new file mode 100644
index 00000000..7543719b
--- /dev/null
+++ b/trunk/AnaliseAcidentesTrabalho/nbproject/navigation.NavData
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/trunk/AnaliseAcidentesTrabalho/nbproject/project.properties b/trunk/AnaliseAcidentesTrabalho/nbproject/project.properties
index bb85d001..3eca7146 100644
--- a/trunk/AnaliseAcidentesTrabalho/nbproject/project.properties
+++ b/trunk/AnaliseAcidentesTrabalho/nbproject/project.properties
@@ -28,7 +28,7 @@ file.reference.jdom.jar=lib/jdom.jar
file.reference.mail.jar=jars/mail.jar
file.reference.postgresql-8.2-506.jdbc4.jar=jars/postgresql-8.2-506.jdbc4.jar
j2ee.platform=1.4
-j2ee.server.type=Tomcat55
+j2ee.server.type=Tomcat60
jar.compress=false
javac.classpath=\
${libs.jsf-designtime.classpath}:\
@@ -71,9 +71,23 @@ javadoc.version=false
javadoc.windowtitle=
jspcompilation.classpath=${jspc.classpath}:${javac.classpath}
lib.dir=${web.docbase.dir}/WEB-INF/lib
+libs.jsfsupport-designtime.classpath.libfile.1=/usr/local/netbeans-6.1/visualweb2/modules/ext/jsfcl.jar
+libs.jsfsupport-designtime.classpath.libfile.2=/usr/local/netbeans-6.1/visualweb2/modules/ext/appbase.jar
+libs.jsfsupport-designtime.classpath.libfile.3=/usr/local/netbeans-6.1/visualweb2/modules/ext/dataprovider.jar
+libs.jsfsupport-designtime.classpath.libfile.4=/usr/local/netbeans-6.1/visualweb2/modules/ext/sqlx.jar
+libs.jsfsupport-runtime.classpath.libfile.1=/usr/local/netbeans-6.1/visualweb2/modules/ext/jsfcl.jar
+libs.jsfsupport-runtime.classpath.libfile.2=/usr/local/netbeans-6.1/visualweb2/modules/ext/appbase.jar
+libs.jsfsupport-runtime.classpath.libfile.3=/usr/local/netbeans-6.1/visualweb2/modules/ext/dataprovider.jar
+libs.jsfsupport-runtime.classpath.libfile.4=/usr/local/netbeans-6.1/visualweb2/modules/ext/sqlx.jar
+libs.jstl11.classpath.libfile.1=/usr/local/netbeans-6.1/enterprise5/modules/ext/standard.jar
+libs.jstl11.classpath.libfile.2=/usr/local/netbeans-6.1/enterprise5/modules/ext/jstl.jar
# Property libs.rowset-ri.classpath is set here just to make sharing of project simpler.
# The library definition has always preference over this property.
libs.rowset-ri.classpath=../../../../.netbeans/6.0/modules/ext/rowset-1.0.1.jar
+libs.webui-designtime.classpath.libfile.1=/usr/local/netbeans-6.1/visualweb2/modules/ext/webui.jar
+libs.webui-designtime.classpath.libfile.2=/usr/local/netbeans-6.1/enterprise5/modules/ext/commons-fileupload-1.0.jar
+libs.webui-runtime.classpath.libfile.1=/usr/local/netbeans-6.1/visualweb2/modules/ext/webui.jar
+libs.webui-runtime.classpath.libfile.2=/usr/local/netbeans-6.1/enterprise5/modules/ext/commons-fileupload-1.0.jar
platform.active=default_platform
resource.dir=setup
run.test.classpath=\
diff --git a/trunk/AnaliseAcidentesTrabalho/nbproject/project.xml b/trunk/AnaliseAcidentesTrabalho/nbproject/project.xml
index bad63696..e9370564 100644
--- a/trunk/AnaliseAcidentesTrabalho/nbproject/project.xml
+++ b/trunk/AnaliseAcidentesTrabalho/nbproject/project.xml
@@ -11,7 +11,7 @@
${libs.jsf-designtime.classpath}
WEB-INF/lib
-
+
${libs.jsfsupport-designtime.classpath}
WEB-INF/lib
@@ -19,7 +19,7 @@
${libs.webui-designtime.classpath}
WEB-INF/lib
-
+
${libs.jdbcsupport-designtime.classpath}
WEB-INF/lib
@@ -43,7 +43,7 @@
${file.reference.postgresql-8.2-506.jdbc4.jar}
WEB-INF/lib
-
+
${libs.rowset-ri.classpath}
WEB-INF/lib
@@ -77,7 +77,7 @@
${libs.jsf-runtime.classpath}
WEB-INF/lib
-
+
${libs.jsfsupport-runtime.classpath}
WEB-INF/lib
@@ -85,7 +85,7 @@
${libs.webui-runtime.classpath}
WEB-INF/lib
-
+
${libs.jdbcsupport-runtime.classpath}
WEB-INF/lib
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/AnaliseAcidenteTrabalho.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/AnaliseAcidenteTrabalho.java
index 2abfcb01..e4c077c1 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/AnaliseAcidenteTrabalho.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/AnaliseAcidenteTrabalho.java
@@ -43,6 +43,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
+import java.util.HashMap;
import java.util.ListIterator;
import java.util.Properties;
import javax.activation.DataHandler;
@@ -6839,6 +6840,36 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public void setTxtHorasTurno(TextField tf) {
this.txtHorasTurno = tf;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText8 = new StaticText();
+
+ public StaticText getStaticText8() {
+ return staticText8;
+ }
+
+ public void setStaticText8(StaticText st) {
+ this.staticText8 = st;
+ }
+
+ private HiddenField hidConfEnviar = new HiddenField();
+
+ public HiddenField getHidConfEnviar() {
+ return hidConfEnviar;
+ }
+
+ public void setHidConfEnviar(HiddenField hf) {
+ this.hidConfEnviar = hf;
+ }
/**
* Construct a new Page bean instance.
*/
@@ -6916,6 +6947,9 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
}
lblUser.setText( getSessionBean1().getCurrentUser().getLogin() );
+ getSessionBean1().setGravado(false);
+ getSessionBean1().setSubmetido(false);
+ getSessionBean1().setIeBug(false);
//drpTecnicos.setSelected(new Integer(0));
//drpMedicos.setSelected(new Integer(0));
if(getSessionBean1().getCurrentAnalise() == null) // new analise
@@ -6935,8 +6969,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
}
}
- }
-
+ }
}
@@ -7002,7 +7035,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String lnkLogout_action() {
// TODO: Replace with your code
-
+ getSessionBean1().setIeBug(true);
try
{
javax.servlet.http.HttpSession session =
@@ -7541,175 +7574,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
fillVerificacaoView(a);
fillVerificacao(a);
break;
-//// case Global.ESTADO_ASSINATURAS:
-//// butImprimir.setDisabled(true);
-//// butCorrecao.setRendered(false);
-//// butGravar.setText("Gravar");
-//// butEnviar.setText("Enviar a Impressão");
-//// if(a.getEstado_assinatura().intValue() == ESTADO_ASSINATURA_1)
-//// {
-//// butEnviar.setDisabled(true);
-//// }
-//// else
-//// {
-//// butEnviar.setDisabled(false);
-//// }
-////
-////
-//// int tipo_utilizador = getSessionBean1().getCurrentUser().getTipo().intValue();
-////
-//// switch(tipo_utilizador)
-//// {
-//// case 1: //seguranca
-//// if(a.getEstado_assinatura().intValue() == 1)
-//// {
-//// //txtAssRespSeg.setDisabled(false);
-//// }
-//// else
-//// {
-//// //txtAssSeg.setDisabled(false);
-//// }
-//// butGravar.setText("Enviar");
-//// gridSiprp.setRendered(false);
-//// gridAcidentado.setRendered(false);
-//// gridDadosAcidenteSeg.setRendered(false);
-//// gridDadosAcidenteRh.setRendered(false);
-//// gridRecomendacoesHS.setRendered(false);
-//// gridRecomendacoesViewHS.setRendered(false);
-//// gridMedidasRH.setRendered(false);
-//// //gridMedidasViewRH.setRendered(false);
-//// gridMedico.setRendered(false);
-//// //gridMedicoView.setRendered(false);
-//// gridVerificacaoView.setRendered(false);
-//// gridImpressao.setRendered(false);
-//// gridImpressaoView.setRendered(false);
-//// grpVerRespSeg.setRendered(true);
-//// grpVerHs.setRendered(false);
-//// grpVerRespRh.setRendered(false);
-//// //chkVerRespRh.setDisabled(true);
-//// ddate = new java.util.Date();
-//// stVerRespSeg.setText("Tomei conhecimento a " + utils.Utils.dateToYYYYMMDD(ddate));
-////
-//// fillSiprpView(a);
-//// if(ac != null)
-//// {
-//// fillAcidentadoView(ac);
-//// }
-//// fillDadosAcidenteSegView(a);
-//// fillDadosAcidenteRhView(a);
-//// fillMedidasViewRh(a);
-//// fillMedicoView(a);
-//// //fillAssinaturaSeg(a);
-//// break;
-////
-//// case 2: //rh
-//// //txtAssRespRh.setDisabled(false);
-//// butGravar.setRendered(false);
-//// gridSiprp.setRendered(false);
-//// gridAcidentado.setRendered(false);
-//// gridDadosAcidenteSeg.setRendered(false);
-//// gridDadosAcidenteRh.setRendered(false);
-//// gridRecomendacoesHS.setRendered(false);
-//// gridMedidasRH.setRendered(false);
-//// gridMedico.setRendered(false);
-//// //gridMedicoView.setRendered(false);
-//// gridVerificacaoView.setRendered(false);
-//// gridImpressao.setRendered(false);
-//// gridImpressaoView.setRendered(false);
-//// grpVerRespRh.setRendered(true);
-//// grpVerHs.setRendered(false);
-//// grpVerRespSeg.setRendered(false);
-//// //chkVerRespSeg.setDisabled(true);
-//// ddate = new java.util.Date();
-//// stVerRespRh.setText("Tomei conhecimento a " + utils.Utils.dateToYYYYMMDD(ddate));
-////
-//// fillSiprpView(a);
-//// if(ac != null)
-//// {
-//// fillAcidentadoView(ac);
-//// }
-//// fillDadosAcidenteSegView(a);
-//// fillDadosAcidenteRhView(a);
-//// fillRecomendacoesViewHs(a);
-//// fillMedidasViewRh(a);
-//// fillMedicoView(a);
-//// break;
-
-// case 3: //hs
-// //txtAssHS.setDisabled(false);
-// gridSiprp.setRendered(false);
-// gridAcidentado.setRendered(false);
-// gridDadosAcidenteSeg.setRendered(false);
-// gridDadosAcidenteRh.setRendered(false);
-// gridRecomendacoesHS.setRendered(false);
-// gridMedidasRH.setRendered(false);
-// gridMedidasViewRH.setRendered(false);
-// gridMedico.setRendered(false);
-// gridMedicoView.setRendered(false);
-// fillSiprpView(a);
-// if(ac != null)
-// {
-// fillAcidentadoView(ac);
-// }
-// fillDadosAcidenteSegView(a);
-// fillDadosAcidenteRhView(a);
-// fillRecomendacoesViewHs(a);
-// break;
-//
-// case 5: //med
-// //txtAssMed.setDisabled(false);
-// gridSiprp.setRendered(false);
-// gridAcidentado.setRendered(false);
-// gridDadosAcidenteSeg.setRendered(false);
-// gridDadosAcidenteRh.setRendered(false);
-// gridRecomendacoesHS.setRendered(false);
-// gridMedidasRH.setRendered(false);
-// gridMedico.setRendered(false);
-// fillSiprpView(a);
-// if(ac != null)
-// {
-// fillAcidentadoView(ac);
-// }
-// fillDadosAcidenteSegView(a);
-// fillDadosAcidenteRhView(a);
-// fillRecomendacoesViewHs(a);
-// fillMedidasViewRh(a);
-// //fillMedico(a);
-// fillMedicoView(a);
-// break;
-//// }
-//// break;
-// case Global.ESTADO_IMPRESSAO:
-// butCorrecao.setRendered(false);
-// butImprimir.setRendered(false);
-// butGravar.setText("Gravar");
-// butEnviar.setText("Enviar para Fecho");
-// gridSiprp.setRendered(false);
-// gridAcidentado.setRendered(false);
-// gridDadosAcidenteSeg.setRendered(false);
-// gridDadosAcidenteRh.setRendered(false);
-// gridRecomendacoesHS.setRendered(false);
-// gridMedidasRH.setRendered(false);
-// gridMedico.setRendered(false);
-// gridVerificacao.setRendered(false);
-// gridImpressao.setRendered(false);
-// gridImpressaoView.setRendered(false);
-// fillSiprpView(a);
-// if(ac != null)
-// {
-// fillAcidentadoView(ac);
-// }
-// fillDadosAcidenteSegView(a);
-// fillDadosAcidenteRhView(a);
-// fillRecomendacoesViewHs(a);
-// fillMedidasViewRh(a);
-// //fillMedico(a);
-// fillMedicoView(a);
-// fillVerificacaoView(a);
-// //fillImpressao(a);
-// //buildPdf(a);
-//
-// break;
+
case Global.ESTADO_FECHAR:
butCorrecao.setRendered(false);
butGravar.setRendered(false);
@@ -10283,7 +10148,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
st = new StaticText();
st.setId("stVerificacao2");
st.setEscape(false);
- txtVer = "Verificado por " + a.getNome_resp_consolidacao() + " (Técnico de HST) a ";
+ txtVer = "Verificado por " + a.getNome_resp_consolidacao() + " (Técnico de SHST) a ";
//txtVer += a.getData_assinatura_rh();
try
{
@@ -10452,7 +10317,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String butImagem_action() {
// TODO: Process the button click action. Return value is a navigation
// case name where null will return to the same page.
-
+ getSessionBean1().setIeBug(true);
savePageState();
return "load_image";
}
@@ -10544,6 +10409,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String butCancelar_action() {
// TODO: Process the button click action. Return value is a navigation
// case name where null will return to the same page.
+ getSessionBean1().setIeBug(true);
ServletContext theApplicationsServletContext =
(ServletContext) this.getExternalContext().getContext();
// String imageFileFolderTmp = theApplicationsServletContext.getRealPath(Global.IMAGE_FOLDER + "/tmp" + getSessionBean1().getCurrentUser().getLogin());
@@ -10588,7 +10454,9 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String butGravar_action() {
// TODO: Process the button click action. Return value is a navigation
// case name where null will return to the same page.
-
+
+ System.out.println("BUT GRAVAR");
+
if(getSessionBean1().getCurrentAnalise() == null) //new analise
{
//if(validationOk())
@@ -10597,28 +10465,46 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
{
AnaliseAcidente a = fillAnaliseFields();
Acidentado ac = fillAcidentadoFields();
-
- try
+ if(fieldsLenOk())
{
- AnaliseAcidente aa = create(a, ac);
- createImagesFolder(aa);
- String navFrom = getSessionBean1().getNavFrom();
- if(navFrom.matches("FormSeguranca"))
+ try
{
- return "form_seguranca";
- }
- }
- catch(Exception ex)
- {
- getSessionBean1().setMsg("Erro na inserção da análise !");
- ex.printStackTrace();
+ if(!getSessionBean1().isGravado())
+ {
+ getSessionBean1().setGravado(true);
+ AnaliseAcidente aa = create(a, ac);
+ createImagesFolder(aa);
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente nº " + aa.getAnalise_nr() + " foi gravada na sua área de trabalho.");
+ }
+ else
+ {
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente foi gravada na sua área de trabalho.");
+ }
+ String navFrom = getSessionBean1().getNavFrom();
+ if(navFrom.matches("FormSeguranca"))
+ {
+ return "form_seguranca";
+ }
+
+ }
+ catch(Exception ex)
+ {
+ getSessionBean1().setMsg("Erro na inserção da análise !");
+ getSessionBean1().setGravado(false);
+ ex.printStackTrace();
+ }
}
- }
+
+ }
+ else
+ {
+ getSessionBean1().setGravado(false);
+ }
}
else // edit analise
{
- //if(validationOk())
- //{
+ if(fieldsLenOk())
+ {
AnaliseAcidente a = fillAnaliseFields();
Acidentado ac = null;
@@ -10642,9 +10528,19 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
}
try
{
- update(a, ac, recs, meds);
- //createImagesFolder(analiseId.toString());
- updateImagesFolder(a);
+ if(! getSessionBean1().isGravado())
+ {
+ getSessionBean1().setGravado(true);
+ update(a, ac, recs, meds);
+ //createImagesFolder(analiseId.toString());
+ updateImagesFolder(a);
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente nº " + a.getAnalise_nr() + " foi gravada na sua área de trabalho.");
+ }
+ else
+ {
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente nº " + a.getAnalise_nr() + " foi gravada na sua área de trabalho.");
+ }
+
if(estado != Global.ESTADO_ASSINATURA_RH)
{
String navFrom = getSessionBean1().getNavFrom();
@@ -10669,14 +10565,17 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
{
chkVerRespRh.setDisabled(true);
// IMPRIMIR HERE
- }
+ }
+
+
}
catch(Exception ex)
{
getSessionBean1().setMsg("Erro na actualização da análise !");
+ getSessionBean1().setGravado(false);
ex.printStackTrace();
}
- //}
+ }
}
@@ -10686,6 +10585,20 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String butEnviar_action() {
// TODO: Process the button click action. Return value is a navigation
// case name where null will return to the same page.
+
+ System.out.println("BUT ENVIAR 1");
+
+ //IE bugs
+ if(getSessionBean1().isIeBug())
+ {
+ return null;
+ }
+ if(getSessionBean1().isGravado() )
+ {
+ getSessionBean1().setSubmetido(true);
+ }
+
+ //
if(getSessionBean1().getCurrentAnalise() == null) //new analise
{
if(validationOk())
@@ -10696,21 +10609,37 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
a.setEstado(new Integer(Global.ESTADO_RH1));
try
{
- AnaliseAcidente aa = create(a, ac);
- createImagesFolder(aa);
- sendMailToNextUser(a, new Integer(Global.ESTADO_RH1));
+ if(!getSessionBean1().isSubmetido())
+ {
+ getSessionBean1().setSubmetido(true);
+ AnaliseAcidente aa = create(a, ac);
+ createImagesFolder(aa);
+ sendMailToNextUser(a, new Integer(Global.ESTADO_RH1));
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente nº " + aa.getAnalise_nr() + " foi enviada para a fase seguinte.");
+ }
+ else
+ {
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente foi enviada para a fase seguinte.");
+ }
String navFrom = getSessionBean1().getNavFrom();
if(navFrom.matches("FormSeguranca"))
{
return "form_seguranca";
- }
+ }
+
+
}
catch(Exception ex)
{
getSessionBean1().setMsg("Erro no envio da análise !");
+ getSessionBean1().setSubmetido(false);
ex.printStackTrace();
}
- }
+ }
+ else
+ {
+ getSessionBean1().setSubmetido(false);
+ }
}
else // edit analise
{
@@ -10742,14 +10671,20 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
{
a.setCorrecao("n");
a.setEstado(a.getEstado_antes_correcao());
+ novo_estado = a.getEstado_antes_correcao().intValue();
a.setEstado_antes_correcao(null);
a.setObservacoes_correcao("");
+ //sendMailToNextUser(a, new Integer(novo_estado));
}
else
{
if(novo_estado < Global.ESTADO_CONCLUIDO)
{
- novo_estado++;
+ if(!getSessionBean1().isSubmetido())
+ {
+ novo_estado++;
+ }
+
// if(novo_estado == ESTADO_MEDICO)
// {
// novo_estado++; //skip medico
@@ -10765,19 +10700,28 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
try
{
- update(a, ac, recs, meds);
- //createImagesFolder(analiseId.toString());
- updateImagesFolder(a);
- sendMailToNextUser(a, new Integer(novo_estado));
- //envia email para responsavel hierarquico ao passar da Consolidacao para a Verificacao
- if(a.getEstado().intValue() == Global.ESTADO_ASSINATURA_SEG)
+ if(!getSessionBean1().isSubmetido())
{
- sendEmailResponsavelHierarquico(a);
+ getSessionBean1().setSubmetido(true);
+ update(a, ac, recs, meds);
+ //createImagesFolder(analiseId.toString());
+ updateImagesFolder(a);
+ sendMailToNextUser(a, new Integer(novo_estado));
+ //envia email para responsavel hierarquico ao passar da Consolidacao para a Verificacao
+ if(a.getEstado().intValue() == Global.ESTADO_ASSINATURA_SEG)
+ {
+ sendEmailResponsavelHierarquico(a);
+ }
+ else if(a.getEstado().intValue() == Global.ESTADO_CONCLUIDO)
+ {
+ sendEmailFimProcesso(a);
+ sendEmailToRhFase4(a);
+ }
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente nº " + a.getAnalise_nr() + " foi enviada para a fase seguinte.");
}
- else if(a.getEstado().intValue() == Global.ESTADO_CONCLUIDO)
+ else
{
- sendEmailFimProcesso(a);
- sendEmailToRhFase4(a);
+ getSessionBean1().setMsg("A Ficha de Análise de Acidente nº " + a.getAnalise_nr() + " foi enviada para a fase seguinte.");
}
String navFrom = getSessionBean1().getNavFrom();
if(navFrom.matches("FormSeguranca"))
@@ -10795,19 +10739,26 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
else if(navFrom.matches("FormMedico"))
{
return "form_medico";
- }
+ }
+
}
catch(Exception ex)
{
getSessionBean1().setMsg("Erro na actualização da análise !");
+ getSessionBean1().setSubmetido(false);
ex.printStackTrace();
}
- }
- }
-
+ }
+ else
+ {
+ getSessionBean1().setSubmetido(false);
+ }
+ }
+
return null;
}
+
private AnaliseAcidente create(AnaliseAcidente a, Acidentado ac) throws Exception
{
AnalisesDataProvider adp = new AnalisesDataProvider();
@@ -11056,12 +11007,12 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
new java.util.Date();
java.sql.Date sqlToday =
new java.sql.Date(today.getTime());
- if(a.getData_acidente() == null)
- {
- a.setData_acidente(sqlToday);
- }
- else
- {
+ //if(a.getData_acidente() == null)
+ //{
+ // a.setData_acidente(sqlToday);
+ //}
+ //else
+ //{
DateFormat formatador = new SimpleDateFormat("yyyy-MM-dd");
java.util.Date ddate = (java.util.Date) calDataOcorrencia.getValue();
@@ -11075,7 +11026,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
{
a.setData_acidente(null);
}
- }
+ //}
if(a.getData_inicio_processo() == null)
{
@@ -11598,6 +11549,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
private ArrayList fillAnaliseRecomendacoesHs(AnaliseAcidente a)
{
+ System.out.println("FILL RECOMENDACOES");
ArrayList list = new ArrayList();
ListIterator iter = gridRecomendacoes.getChildren().listIterator();
while(iter.hasNext())
@@ -12143,15 +12095,363 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
return true;
}
+ private boolean fieldsLenOk()
+ {
+ //System.out.println("VALIDATION GRAVAR OK");
+ AnalisesDataProvider adp = new AnalisesDataProvider();
+ HashMap meta = new HashMap();
+ HashMap meta_ac = new HashMap();
+ try
+ {
+ meta = adp.getMetaData("analises_acidentes");
+ meta_ac = adp.getMetaData("acidentados");
+ }
+ catch(Exception ex)
+ {
+ ex.printStackTrace();
+ meta = null;
+ meta_ac = null;
+ }
+
+ if(meta == null || meta_ac == null)
+ {
+ getSessionBean1().setMsg("Erro na aquisição da metadata!");
+ return false;
+ }
+
+ int estado = 0;
+ if(getSessionBean1().getCurrentAnalise() == null) //null
+ {
+ estado = Global.ESTADO_SEG;
+ }
+ else
+ {
+ AnaliseAcidente a = getSessionBean1().getCurrentAnalise();
+ estado = a.getEstado().intValue();
+ }
+
+ if(estado == Global.ESTADO_SEG)
+ {
+ if(txtAveriguador.getText() != null)
+ {
+ String averiguador = txtAveriguador.getText().toString();
+ int len = ((Integer)meta.get("averiguador")).intValue();
+ System.out.println("Averiguador : " + len);
+ if(averiguador.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Averiguador não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtLocal.getText() != null)
+ {
+ String local = txtLocal.getText().toString();
+ int len = ((Integer)meta.get("local_trabalho")).intValue();
+ System.out.println("Local : " + len);
+ if(local.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Local não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtTarefa.getText() != null)
+ {
+ String tarefa = txtTarefa.getText().toString();
+ int len = ((Integer)meta.get("tarefa")).intValue();
+ System.out.println("Tarefa : " + len);
+ if(tarefa.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Tarefa não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtSubstancias.getText() != null)
+ {
+ String substancias = txtSubstancias.getText().toString();
+ int len = ((Integer)meta.get("substancias")).intValue();
+ System.out.println("Substancias : " + len);
+ if(substancias.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Substancias não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtTestemunhas.getText() != null)
+ {
+ String testemunhas = txtTestemunhas.getText().toString();
+ int len = ((Integer)meta.get("testemunhas")).intValue();
+ System.out.println("Testemunhas : " + len);
+ if(testemunhas.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Testemunhas não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtDescricao.getText() != null)
+ {
+ String descricao = txtDescricao.getText().toString();
+ int len = ((Integer)meta.get("descricao")).intValue();
+ System.out.println("Descricao : " + len);
+ if(descricao.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Descrição não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtConclusoes.getText() != null)
+ {
+ String conclusoes = txtConclusoes.getText().toString();
+ int len = ((Integer)meta.get("conclusoes")).intValue();
+ System.out.println("Conclusoes : " + len);
+ if(conclusoes.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Conclusões não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtAccoes.getText() != null)
+ {
+ String accoes = txtAccoes.getText().toString();
+ int len = ((Integer)meta.get("accoes")).intValue();
+ System.out.println("Accoes : " + len);
+ if(accoes.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Accões não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtCondicoes.getText() != null)
+ {
+ String condicoes = txtCondicoes.getText().toString();
+ int len = ((Integer)meta.get("condicoes")).intValue();
+ System.out.println("Condicoes : " + len);
+ if(condicoes.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Condições não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtAveriguacaoObs.getText() != null)
+ {
+ String averiguacao_obs = txtAveriguacaoObs.getText().toString();
+ int len = ((Integer)meta.get("averiguacao_obs")).intValue();
+ System.out.println("Observacoes : " + len);
+ if(averiguacao_obs.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Observações não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+ }
+ else if(estado == Global.ESTADO_RH1)
+ {
+ if(txtBI.getText() != null)
+ {
+ String bi = (String) txtBI.getText();
+ int len = ((Integer)meta_ac.get("bilhete_identidade")).intValue();
+ System.out.println("BI : " + len);
+ if(bi.length() > len)
+ {
+ getSessionBean1().setMsg("Campo Bilhete Identidade não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ try
+ {
+ int bi_nr = Integer.parseInt(bi);
+ }
+ catch(Exception ex)
+ {
+ getSessionBean1().setMsg("Nº do Bilhete de Identidade tem de ser numérico!");
+ return false;
+ }
+ }
+
+ if(txtMorada.getText() != null)
+ {
+ String morada = txtMorada.getText().toString();
+ int len = ((Integer)meta_ac.get("morada")).intValue();
+ System.out.println("Morada : " + len);
+ if(morada.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Morada não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtLocalidade.getText() != null)
+ {
+ String localidade = txtLocalidade.getText().toString();
+ int len = ((Integer)meta_ac.get("localidade")).intValue();
+ System.out.println("Localidade : " + len);
+ if(localidade.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Localidade não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtContactoTelefonico.getText() != null)
+ {
+ String contacto_telefonico = txtContactoTelefonico.getText().toString();
+ int len = ((Integer)meta_ac.get("contacto_telefonico")).intValue();
+ System.out.println("Contacto Telefonico : " + len);
+ if(contacto_telefonico.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Contacto Telefónico não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtNomeSuperior.getText() != null)
+ {
+ String nome_superior = txtNomeSuperior.getText().toString();
+ int len = ((Integer)meta_ac.get("nome_superior_hierarquico")).intValue();
+ System.out.println("Nome Superior : " + len);
+ if(nome_superior.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Nome do Superior Hierárquico não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtEmailSuperior.getText() != null)
+ {
+ String email_superior = txtEmailSuperior.getText().toString();
+ int len = ((Integer)meta_ac.get("email_superior_hierarquico")).intValue();
+ System.out.println("Email Superior : " + len);
+ if(email_superior.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Email do Superior Hierárquico não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtEmailSuperior.getText() != null)
+ {
+ String email_superior = (String) txtEmailSuperior.getText();
+ if(email_superior.trim().length() > 0)
+ {
+ if(! utils.Utils.isValidEmail(email_superior))
+ {
+ getSessionBean1().setMsg("Email do superior hierárquico inválido!");
+ return false;
+ }
+ }
+ }
+
+ if(txtFormacaoSHSTNWhy.getText() != null)
+ {
+ String why = txtFormacaoSHSTNWhy.getText().toString();
+ int len = ((Integer)meta.get("formacao_shst_nao_porque")).intValue();
+ System.out.println("Porque Nao Teve Formacao : " + len);
+ if(why.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Porquê o Colaborador Não Teve Formação não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+ }
+ else if(estado == Global.ESTADO_HS)
+ {
+ if(!checkRecomendacoesLen())
+ {
+ return false;
+ }
+ }
+ else if(estado == Global.ESTADO_RH2)
+ {
+ if(!checkMedidasLen())
+ {
+ return false;
+ }
+
+ if(txtEspecif1.getText() != null)
+ {
+ String especif = txtEspecif1.getText().toString();
+ int len = ((Integer)meta.get("especif1")).intValue();
+ if(especif.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Especifíque não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtEspecif2.getText() != null)
+ {
+ String especif = txtEspecif2.getText().toString();
+ int len = ((Integer)meta.get("especif2")).intValue();
+ if(especif.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Especifíque não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtEspecif3.getText() != null)
+ {
+ String especif = txtEspecif3.getText().toString();
+ int len = ((Integer)meta.get("especif3")).intValue();
+ if(especif.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Especifíque não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtEspecif4.getText() != null)
+ {
+ String especif = txtEspecif4.getText().toString();
+ int len = ((Integer)meta.get("especif4")).intValue();
+ if(especif.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Especifíque não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+
+ if(txtTipoLesao.getText() != null)
+ {
+ String tipo_lesao = txtTipoLesao.getText().toString();
+ int len = ((Integer)meta.get("tipo_lesao")).intValue();
+ System.out.println("Tipo Lesao : " + len);
+ if(tipo_lesao.length() > len)
+ {
+ getSessionBean1().setMsg("O campo Tipo Lesão não pode exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+ }
+
+ return true;
+ }
private boolean validationOk()
{
+
+ if(getSessionBean1().isSubmetido() || getSessionBean1().isGravado())
+ {
+ return true;
+ }
if(getSessionBean1().getAcidentado() == null)
{
getSessionBean1().setMsg("Não seleccionou trabalhador acidentado!");
return false;
}
+ if(!fieldsLenOk())
+ {
+ return false;
+ }
+
int estado = 0;
int estado_assinatura = 0;
if(getSessionBean1().getCurrentAnalise() == null) //null
@@ -12180,6 +12480,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
getSessionBean1().setMsg("Falta averiguador!");
return false;
}
+
}
if(drpHours.getSelected() == null || drpMinutes.getSelected() == null)
@@ -13239,6 +13540,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
butCorrecao.setRendered(false);
butGravar.setText("Gravar");
butImprimir.setRendered(false);
+ getSessionBean1().setIeBug(false); //THIS MUST BE SEEN !!!!!
if(a.getEstado() == Global.ESTADO_SEG)
{
butEnviar.setText("Enviar a RH");
@@ -13476,6 +13778,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
// getSessionBean1().setNavFrom("AnaliseAcidenteTrabalho");
// getSessionBean1().setModoEdicaoUtilizador("edit");
// return "user";
+ getSessionBean1().setIeBug(true);
ServletContext theApplicationsServletContext =
(ServletContext) this.getExternalContext().getContext();
// String imageFileFolderTmp = theApplicationsServletContext.getRealPath(Global.IMAGE_FOLDER + "/tmp" + getSessionBean1().getCurrentUser().getLogin());
@@ -13518,6 +13821,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String lnkMoreRec1_action() {
// TODO: Replace with your code
+ getSessionBean1().setIeBug(true);
int seq = gridRecomendacoes.getChildren().size();
seq++;
HtmlPanelGrid grd = new HtmlPanelGrid();
@@ -13553,7 +13857,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String lnkMoreMed_action() {
// TODO: Replace with your code
-
+ getSessionBean1().setIeBug(true);
int seq = gridMedidas.getChildren().size();
seq++;
HtmlPanelGrid grd = new HtmlPanelGrid();
@@ -13898,12 +14202,12 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
UtilizadoresDataProvider udp = new UtilizadoresDataProvider();
try
{
- ArrayList list = udp.getUtilizadoresListByTipo(tipo, responsavel_loja);
+ ArrayList list = udp.getUtilizadoresListByTipo(tipo, responsavel_loja, a.getEstabelecimento_id());
ListIterator iter = list.listIterator();
while(iter.hasNext())
{
Utilizador u = (Utilizador) iter.next();
- System.out.println("USER MAIL : " + u.getLogin() + " ; " + u.getEmail());
+ System.out.println("USER MAIL NEXT FASE : " + u.getLogin() + " ; " + u.getEmail());
try
{
sendEmail(u.getEmail(), Global.ENDERECO_ENVIO, assunto, texto_email);
@@ -13936,12 +14240,12 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
}
catch(Exception ex){}
- String texto_email = "Caro(a) Colega,
";
- texto_email += "Na sequência do acidente de trabalho do colaborador ";
+ String texto_email = "
Caro(a) Colega,
";
+ texto_email += "Na sequência do acidente de trabalho do colaborador ";
texto_email += ac.getNome();
texto_email += " no dia " + data_acidente;
texto_email += ", vimos pelo presente remeter cópia da análise do acidente " + a.getAnalise_nr() + " que se encontra em processo de averiguação pelo departamento de Segurança, Recursos Humanos e pela SIPRP para seu conhecimento. Caso tenha qualquer informação importante sobre o processo ou pretenda esclarecimentos adicionais contacte, por favor, a secção de Recursos Humanos.
";
- texto_email += "Cumprimentos.
";
+ texto_email += "Cumprimentos.
";
try
{
sendEmail(ac.getEmail_superior_hierarquico(), Global.ENDERECO_ENVIO, assunto, texto_email);
@@ -13964,12 +14268,12 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
while(iter.hasNext())
{
Utilizador u = (Utilizador) iter.next();
- String texto_email = "Exmo. (a) Senhor(a), " + u.getNome() + "
";
- texto_email += "Informamos que o processo de análise de acidente de trabalho nº " + a.getAnalise_nr() + " se encontra finalizado, ";
+ String texto_email = "
Exmo. (a) Senhor(a), " + u.getNome() + "
";
+ texto_email += "Informamos que o processo de análise de acidente de trabalho nº " + a.getAnalise_nr() + " se encontra finalizado, ";
texto_email += "pelo que solicitamos a sua impressão e arquivamento em pasta própria, juntamente com a participação de sinistro à seguradora.
";
- texto_email += "Caso pretenda qualquer esclarecimento, contacte-nos, por favor, através de acidentes.auchan@siprp.pt ou pelo telefone 213 504 540.
";
- texto_email += "Os melhores cumprimentos.
";
- texto_email += "SIPRP
";
+ texto_email += "Caso pretenda qualquer esclarecimento, contacte-nos, por favor, através de acidentes.auchan@siprp.pt ou pelo telefone 213 504 540.
";
+ texto_email += "Os melhores cumprimentos.
";
+ texto_email += "SIPRP
";
try
{
sendEmail(u.getEmail(), Global.ENDERECO_ENVIO, assunto, texto_email);
@@ -13986,18 +14290,19 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
{
System.out.println("SEND EMAIL TO RH FASE 4");
Acidentado ac = getSessionBean1().getAcidentado();
- String assunto = "SIPRP – Fecho do Processo de Análise de Acidente de Trabalho nº " + a.getAnalise_nr() + " – Ficheiro para Impressão";
+ //String assunto = "SIPRP ¯ Fecho do Processo de Análise de Acidente de Trabalho nº " + a.getAnalise_nr() + " ¯ Ficheiro para Impressão";
+ String assunto = "SIPRP - Fecho do Processo de Análise de Acidente de Trabalho nº " + a.getAnalise_nr() + " - Ficheiro para Impressão";
UtilizadoresDataProvider udp = new UtilizadoresDataProvider();
try
{
Utilizador urh = udp.getUtilizador(a.getRh_fase4());
- String texto_email = "Exmo. (a) Senhor(a),
";
- texto_email += "Confirmamos que o processo de Análise de Acidente de Trabalho nº " + a.getAnalise_nr()+ " se encontra encerrado após o preenchimento e validação de todos os intervenientes.
";
- texto_email += "Sugerimos que imprima o ficheiro que enviamos em anexo e o junte à Participação de Sinistro à Seguradora para dar conhecimento ao Médico do Trabalho do seu estabelecimento. Após o seu conhecimento, aconselhamos que entregue uma cópia da Ficha de Análise de Acidente de Trabalho à equipa de Saúde Ocupacional, para que esta a arquive no processo clínico do trabalhador antes de juntar toda a documentação no processo individual do colaborador nos Recursos Humanos.
";
- texto_email += "Agradecemos a sua colaboração e ficamos ao dispor para qualquer esclarecimento através dos telefones 213 504 544 (Catarina Leonardo) ou 213 504 542 (Sónia Campos).
";
- texto_email += "Os melhores cumprimentos,
";
- texto_email += "A equipa da SIPRP
";
+ String texto_email = "Exmo. (a) Senhor(a),
";
+ texto_email += "Confirmamos que o processo de Análise de Acidente de Trabalho nº " + a.getAnalise_nr()+ " se encontra encerrado após o preenchimento e validação de todos os intervenientes.
";
+ texto_email += "Sugerimos que imprima o ficheiro que enviamos em anexo e o junte à Participação de Sinistro à Seguradora para dar conhecimento ao Médico do Trabalho do seu estabelecimento. Após o seu conhecimento, aconselhamos que entregue uma cópia da Ficha de Análise de Acidente de Trabalho à equipa de Saúde Ocupacional, para que esta a arquive no processo clínico do trabalhador antes de juntar toda a documentação no processo individual do colaborador nos Recursos Humanos.
";
+ texto_email += "Agradecemos a sua colaboração e ficamos ao dispor para qualquer esclarecimento através dos telefones 213 504 544 (Catarina Leonardo) ou 213 504 542 (Sónia Campos).
";
+ texto_email += "Os melhores cumprimentos,
";
+ texto_email += "A equipa da SIPRP
";
try
{
sendEmailWithPdf(a, urh.getEmail(), Global.ENDERECO_ENVIO, assunto, texto_email);
@@ -14077,7 +14382,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
msg.setFrom(new InternetAddress(emailFrom));
InternetAddress[] address = {new InternetAddress(emailTo)};
msg.setRecipients(Message.RecipientType.TO, address);
- msg.setSubject(assunto);
+ ((MimeMessage)msg).setSubject(assunto, "UTF-8");
msg.setSentDate(new Date());
Multipart multipart = new MimeMultipart();
BodyPart msgBodyPart = new MimeBodyPart();
@@ -14089,8 +14394,8 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
msgBodyPart.setContent(html, "text/html");
multipart.addBodyPart(msgBodyPart);
msg.setContent(multipart);
- ////////Transport.send(msg);
- ////////System.out.println("Email Enviado !!!! ");
+ Transport.send(msg);
+ System.out.println("Email Enviado !!!! ");
}
@@ -14149,14 +14454,14 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
msg.setFrom(new InternetAddress(emailFrom));
InternetAddress[] address = {new InternetAddress(emailTo)};
msg.setRecipients(Message.RecipientType.TO, address);
- msg.setSubject(assunto);
+ ((MimeMessage)msg).setSubject(assunto, "UTF-8");
msg.setSentDate(new Date());
Multipart multipart = new MimeMultipart();
BodyPart msgBodyPart = new MimeBodyPart();
String html;
html=" ";
html+="";
- html+= texto_email;
+ html+= "" + texto_email + "
";
html+="";
msgBodyPart.setContent(html, "text/html");
multipart.addBodyPart(msgBodyPart);
@@ -14171,7 +14476,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
multipart.addBodyPart(pdfPart,1);
msg.setContent(multipart);
Transport.send(msg);
- System.out.println("Email Enviado !!!! " + emailTo);
+ System.out.println("Email Pdf Enviado !!!! " + emailTo);
}
public String butImprimir_action() {
@@ -14409,6 +14714,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String lnkPOR_action() {
// TODO: Replace with your code
+ getSessionBean1().setIeBug(true);
Trabalhador t = getTrabalhadorRowData();
Acidentado ac = setAcidentado(t);
gridSiprp.setRendered(true);
@@ -14421,6 +14727,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String lnkNomeTrabalhador_action() {
// TODO: Replace with your code
+ getSessionBean1().setIeBug(true);
Trabalhador t = getTrabalhadorRowData();
Acidentado ac = setAcidentado(t);
gridSiprp.setRendered(true);
@@ -14433,6 +14740,7 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String lnkEstabelecimentoTrabalhador_action() {
// TODO: Replace with your code
+ getSessionBean1().setIeBug(true);
Trabalhador t = getTrabalhadorRowData();
Acidentado ac = setAcidentado(t);
gridSiprp.setRendered(true);
@@ -14474,7 +14782,8 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
public String butCorrecao_action() {
// TODO: Process the button click action. Return value is a navigation
// case name where null will return to the same page.
-
+ getSessionBean1().setIeBug(true);
+ getSessionBean1().setCorrecao(null);
return "correcao";
}
@@ -14553,5 +14862,99 @@ public class AnaliseAcidenteTrabalho extends AbstractPageBean {
hidAnchor.setValue("dados");
}
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ getSessionBean1().setIeBug(true);
+ return null;
+ }
+
+ private boolean checkRecomendacoesLen()
+ {
+ AnalisesDataProvider adp = new AnalisesDataProvider();
+ HashMap meta = new HashMap();
+ try
+ {
+ meta = adp.getMetaData("recomendacoes");
+ ArrayList list = new ArrayList();
+ ListIterator iter = gridRecomendacoes.getChildren().listIterator();
+ while(iter.hasNext())
+ {
+ HtmlPanelGrid grd = (HtmlPanelGrid)iter.next();
+ TextArea ta = (TextArea) grd.getChildren().get(1);
+ if(ta.getText() != null )
+ {
+ String txt = (String) ta.getText();
+ if(txt.length() > 0)
+ {
+ int len = ( (Integer) meta.get("recomendacao") ).intValue();
+ if(txt.length() > len)
+ {
+ getSessionBean1().setMsg("Os Campos Recomendações não podem exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+ }
+ }
+ }
+ catch(Exception ex)
+ {
+ ex.printStackTrace();
+ return false;
+ }
+ return true;
+ }
+
+ private boolean checkMedidasLen()
+ {
+ AnalisesDataProvider adp = new AnalisesDataProvider();
+ HashMap meta = new HashMap();
+
+ try
+ {
+ meta = adp.getMetaData("medidas");
+ ArrayList list = new ArrayList();
+ ListIterator iter = gridMedidas.getChildren().listIterator();
+ while(iter.hasNext())
+ {
+ HtmlPanelGrid grd = (HtmlPanelGrid)iter.next();
+ TextArea ta = (TextArea) grd.getChildren().get(1);
+ if(ta.getText() != null )
+ {
+ String txt = (String) ta.getText();
+ if(txt.length() > 0)
+ {
+ int len = ( (Integer) meta.get("medida") ).intValue();
+ if(txt.length() > len)
+ {
+ getSessionBean1().setMsg("Os Campos Medidas não podem exceder " + len + " caracteres!");
+ return false;
+ }
+ }
+ }
+ }
+ }
+ catch(Exception ex)
+ {
+ ex.printStackTrace();
+ return false;
+ }
+
+ return true;
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Dummy.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Dummy.java
index 0dc03da1..c0eab6e8 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Dummy.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Dummy.java
@@ -28,6 +28,7 @@ import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ActionEvent;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
/**
* Page bean that corresponds to a similarly named JSP page. This
@@ -108,254 +109,104 @@ public class Dummy extends AbstractPageBean {
this.form1 = f;
}
- private HtmlPanelGrid gridHeader = new HtmlPanelGrid();
-
- public HtmlPanelGrid getGridHeader() {
- return gridHeader;
- }
-
- public void setGridHeader(HtmlPanelGrid hpg) {
- this.gridHeader = hpg;
- }
-
- private PanelGroup groupPanel5 = new PanelGroup();
-
- public PanelGroup getGroupPanel5() {
- return groupPanel5;
- }
-
- public void setGroupPanel5(PanelGroup pg) {
- this.groupPanel5 = pg;
- }
-
- private StaticText lblUser2 = new StaticText();
-
- public StaticText getLblUser2() {
- return lblUser2;
- }
-
- public void setLblUser2(StaticText st) {
- this.lblUser2 = st;
- }
-
- private StaticText staticText7 = new StaticText();
-
- public StaticText getStaticText7() {
- return staticText7;
- }
-
- public void setStaticText7(StaticText st) {
- this.staticText7 = st;
- }
-
- private Hyperlink lnkEditUser2 = new Hyperlink();
-
- public Hyperlink getLnkEditUser2() {
- return lnkEditUser2;
- }
-
- public void setLnkEditUser2(Hyperlink h) {
- this.lnkEditUser2 = h;
- }
-
- private StaticText staticText8 = new StaticText();
-
- public StaticText getStaticText8() {
- return staticText8;
- }
-
- public void setStaticText8(StaticText st) {
- this.staticText8 = st;
- }
-
- private Hyperlink lnkLogout2 = new Hyperlink();
-
- public Hyperlink getLnkLogout2() {
- return lnkLogout2;
- }
-
- public void setLnkLogout2(Hyperlink h) {
- this.lnkLogout2 = h;
- }
-
- private StaticText staticText9 = new StaticText();
-
- public StaticText getStaticText9() {
- return staticText9;
- }
-
- public void setStaticText9(StaticText st) {
- this.staticText9 = st;
- }
-
- private HtmlPanelGrid gridPanel2 = new HtmlPanelGrid();
-
- public HtmlPanelGrid getGridPanel2() {
- return gridPanel2;
- }
-
- public void setGridPanel2(HtmlPanelGrid hpg) {
- this.gridPanel2 = hpg;
- }
-
- private PanelGroup groupPanel3 = new PanelGroup();
-
- public PanelGroup getGroupPanel3() {
- return groupPanel3;
- }
-
- public void setGroupPanel3(PanelGroup pg) {
- this.groupPanel3 = pg;
- }
-
- private ImageComponent image3 = new ImageComponent();
-
- public ImageComponent getImage3() {
- return image3;
- }
-
- public void setImage3(ImageComponent ic) {
- this.image3 = ic;
- }
-
- private HtmlPanelGrid gridPanel5 = new HtmlPanelGrid();
-
- public HtmlPanelGrid getGridPanel5() {
- return gridPanel5;
- }
-
- public void setGridPanel5(HtmlPanelGrid hpg) {
- this.gridPanel5 = hpg;
- }
-
- private StaticText staticText4 = new StaticText();
-
- public StaticText getStaticText4() {
- return staticText4;
- }
-
- public void setStaticText4(StaticText st) {
- this.staticText4 = st;
- }
-
- private HtmlPanelGrid gridPanel6 = new HtmlPanelGrid();
-
- public HtmlPanelGrid getGridPanel6() {
- return gridPanel6;
- }
-
- public void setGridPanel6(HtmlPanelGrid hpg) {
- this.gridPanel6 = hpg;
- }
-
- private PanelGroup groupPanel4 = new PanelGroup();
-
- public PanelGroup getGroupPanel4() {
- return groupPanel4;
- }
-
- public void setGroupPanel4(PanelGroup pg) {
- this.groupPanel4 = pg;
- }
-
- private StaticText staticText5 = new StaticText();
+ private HiddenField hiddenField1 = new HiddenField();
- public StaticText getStaticText5() {
- return staticText5;
+ public HiddenField getHiddenField1() {
+ return hiddenField1;
}
- public void setStaticText5(StaticText st) {
- this.staticText5 = st;
+ public void setHiddenField1(HiddenField hf) {
+ this.hiddenField1 = hf;
}
- private StaticText stHeaderNr1 = new StaticText();
+ private HiddenField hidConfEnviar = new HiddenField();
- public StaticText getStHeaderNr1() {
- return stHeaderNr1;
+ public HiddenField getHidConfEnviar() {
+ return hidConfEnviar;
}
- public void setStHeaderNr1(StaticText st) {
- this.stHeaderNr1 = st;
+ public void setHidConfEnviar(HiddenField hf) {
+ this.hidConfEnviar = hf;
}
- private PanelGroup groupPanel6 = new PanelGroup();
+ private HtmlPanelGrid gridPanel1 = new HtmlPanelGrid();
- public PanelGroup getGroupPanel6() {
- return groupPanel6;
+ public HtmlPanelGrid getGridPanel1() {
+ return gridPanel1;
}
- public void setGroupPanel6(PanelGroup pg) {
- this.groupPanel6 = pg;
+ public void setGridPanel1(HtmlPanelGrid hpg) {
+ this.gridPanel1 = hpg;
}
- private StaticText staticText6 = new StaticText();
+ private StaticText txtMsg1 = new StaticText();
- public StaticText getStaticText6() {
- return staticText6;
+ public StaticText getTxtMsg1() {
+ return txtMsg1;
}
- public void setStaticText6(StaticText st) {
- this.staticText6 = st;
+ public void setTxtMsg1(StaticText st) {
+ this.txtMsg1 = st;
}
- private StaticText stHeaderDate1 = new StaticText();
+ private Button butEliminar = new Button();
- public StaticText getStHeaderDate1() {
- return stHeaderDate1;
+ public Button getButEliminar() {
+ return butEliminar;
}
- public void setStHeaderDate1(StaticText st) {
- this.stHeaderDate1 = st;
+ public void setButEliminar(Button b) {
+ this.butEliminar = b;
}
- private ImageComponent image4 = new ImageComponent();
+ private HiddenField hidConfDelete = new HiddenField();
- public ImageComponent getImage4() {
- return image4;
+ public HiddenField getHidConfDelete() {
+ return hidConfDelete;
}
- public void setImage4(ImageComponent ic) {
- this.image4 = ic;
+ public void setHidConfDelete(HiddenField hf) {
+ this.hidConfDelete = hf;
}
- private HiddenField hiddenField1 = new HiddenField();
+ private PanelGroup groupPanel1 = new PanelGroup();
- public HiddenField getHiddenField1() {
- return hiddenField1;
+ public PanelGroup getGroupPanel1() {
+ return groupPanel1;
}
- public void setHiddenField1(HiddenField hf) {
- this.hiddenField1 = hf;
+ public void setGroupPanel1(PanelGroup pg) {
+ this.groupPanel1 = pg;
}
- private Button button2 = new Button();
+ private Button butVoltar1 = new Button();
- public Button getButton2() {
- return button2;
+ public Button getButVoltar1() {
+ return butVoltar1;
}
- public void setButton2(Button b) {
- this.button2 = b;
+ public void setButVoltar1(Button b) {
+ this.butVoltar1 = b;
}
- private StaticText stMsg = new StaticText();
+ private Button butEliminar1 = new Button();
- public StaticText getStMsg() {
- return stMsg;
+ public Button getButEliminar1() {
+ return butEliminar1;
}
- public void setStMsg(StaticText st) {
- this.stMsg = st;
+ public void setButEliminar1(Button b) {
+ this.butEliminar1 = b;
}
- private ImageComponent image1 = new ImageComponent();
+ private Hyperlink lnkEstabelecimento = new Hyperlink();
- public ImageComponent getImage1() {
- return image1;
+ public Hyperlink getLnkEstabelecimento() {
+ return lnkEstabelecimento;
}
- public void setImage1(ImageComponent ic) {
- this.image1 = ic;
+ public void setLnkEstabelecimento(Hyperlink h) {
+ this.lnkEstabelecimento = h;
}
//
@@ -455,31 +306,7 @@ public class Dummy extends AbstractPageBean {
return (ApplicationBean1)getBean("ApplicationBean1");
}
- public String button1_action() {
-
- java.util.Date now = new java.util.Date();
- Calendar cal = new GregorianCalendar();
- cal.setTime(now);
- int ano = cal.get(Calendar.YEAR);
- int mes = cal.MONTH;
- int dia = cal.DAY_OF_MONTH;
-
- Calendar today = new GregorianCalendar(ano, mes, dia);
- Calendar firstJan = new GregorianCalendar(ano, Calendar.JANUARY, 1);
- Calendar firstJul = new GregorianCalendar(ano, Calendar.JULY, 1);
-
- if(today.compareTo(firstJan) == 0)
- {
- System.out.println("IGUAL !!!!!!!!!");
- }
-
-// GregorianCalendar backDate = new GregorianCalendar(ano, Calendar.MAY, 1);
-// backDate.add(GregorianCalendar.DATE, 180);
-// Date d = worldTour.getTime();
-
-
- return null;
- }
+
public String butCancelar_action() {
// TODO: Process the button click action. Return value is a navigation
@@ -585,15 +412,38 @@ public class Dummy extends AbstractPageBean {
System.out.println("LINK");
}
- public String button2_action() {
+
+
+// public String lnkAjuda_action() {
+// // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+// return null;
+// }
+
+ public String butVoltar_action() {
+ // TODO: Process the button click action. Return value is a navigation
+ // case name where null will return to the same page.
+
+ return null;
+ }
+
+ public String butEliminar_action() {
// TODO: Process the button click action. Return value is a navigation
// case name where null will return to the same page.
- //File f = new File(Global.IMAGE_FOLDER);
- //stMsg.setText(f.getAbsolutePath() + " ; " + f.exists() + " ; " + f.canRead() + " ; " + f.canWrite());
- String foldername = Global.IMAGE_FOLDER + "/AAA";
- File folder = new File(foldername);
- boolean res = folder.mkdir();
- stMsg.setText(res + " ; " + folder.getAbsolutePath());
+
return null;
}
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/EnviarCorrecao.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/EnviarCorrecao.java
index 173f5453..62b3e39a 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/EnviarCorrecao.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/EnviarCorrecao.java
@@ -30,6 +30,7 @@ import java.util.ArrayList;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
/**
*
Page bean that corresponds to a similarly named JSP page. This
@@ -429,6 +430,56 @@ public class EnviarCorrecao extends AbstractPageBean {
public void setStaticText5(StaticText st) {
this.staticText5 = st;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText7 = new StaticText();
+
+ public StaticText getStaticText7() {
+ return staticText7;
+ }
+
+ public void setStaticText7(StaticText st) {
+ this.staticText7 = st;
+ }
+
+ private Button butConfirmar = new Button();
+
+ public Button getButConfirmar() {
+ return butConfirmar;
+ }
+
+ public void setButConfirmar(Button b) {
+ this.butConfirmar = b;
+ }
+
+ private HtmlPanelGrid gridPanel3 = new HtmlPanelGrid();
+
+ public HtmlPanelGrid getGridPanel3() {
+ return gridPanel3;
+ }
+
+ public void setGridPanel3(HtmlPanelGrid hpg) {
+ this.gridPanel3 = hpg;
+ }
+
+ private StaticText txtMsg = new StaticText();
+
+ public StaticText getTxtMsg() {
+ return txtMsg;
+ }
+
+ public void setTxtMsg(StaticText st) {
+ this.txtMsg = st;
+ }
//
@@ -495,7 +546,9 @@ public class EnviarCorrecao extends AbstractPageBean {
* this page.
*/
public void prerender() {
- fillTabelaEstados();
+ fillTabelaEstados();
+ txtMsg.setText(getSessionBean1().getMsg());
+ getSessionBean1().setMsg("");
}
/**
@@ -717,23 +770,27 @@ public class EnviarCorrecao extends AbstractPageBean {
EstadosCorrecaoDataProvider provider = (EstadosCorrecaoDataProvider) tableRowGroup1.getSourceData();
ArrayList list = (ArrayList) provider.getList();
Correcao c = (Correcao)list.get(k);
- c.setObservacoes("");
- if(txtObservacoes.getText() != null)
- {
- String obs = (String) txtObservacoes.getText();
- c.setObservacoes(obs);
- }
- AnalisesDataProvider adp = new AnalisesDataProvider();
- try
- {
- adp.changeEstado(c);
-
- }
- catch(Exception ex)
- {
- ex.printStackTrace();
- }
- return "form_hs";
+
+ getSessionBean1().setCorrecao(c);
+
+// c.setObservacoes("");
+// if(txtObservacoes.getText() != null)
+// {
+// String obs = (String) txtObservacoes.getText();
+// c.setObservacoes(obs);
+// }
+// AnalisesDataProvider adp = new AnalisesDataProvider();
+// try
+// {
+// adp.changeEstado(c);
+//
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+// return "form_hs";
+ return null;
}
public String lnkNewUser_action() {
@@ -749,5 +806,57 @@ public class EnviarCorrecao extends AbstractPageBean {
//return "form_hs";
return "analise_acidente";
}
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
+
+ public String butConfirmar_action() {
+ // TODO: Process the button click action. Return value is a navigation
+ // case name where null will return to the same page.
+
+ Correcao c = getSessionBean1().getCorrecao();
+ if(c != null)
+ {
+ c.setObservacoes("");
+ if(txtObservacoes.getText() != null)
+ {
+ String obs = (String) txtObservacoes.getText();
+ c.setObservacoes(obs);
+ }
+ AnalisesDataProvider adp = new AnalisesDataProvider();
+ try
+ {
+ adp.changeEstado(c);
+
+ }
+ catch(Exception ex)
+ {
+ ex.printStackTrace();
+ }
+ return "form_hs";
+ }
+ else
+ {
+ getSessionBean1().setMsg("Tem de indicar para onde enviar a correcção");
+ return null;
+ }
+
+ }
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FichaUtilizador.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FichaUtilizador.java
index 72d1cef1..6c97c727 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FichaUtilizador.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FichaUtilizador.java
@@ -32,6 +32,7 @@ import javax.faces.event.ValueChangeEvent;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
import global.Global;
+import javax.servlet.ServletContext;
/**
* Page bean that corresponds to a similarly named JSP page. This
@@ -732,6 +733,36 @@ public class FichaUtilizador extends AbstractPageBean {
public void setLnkAnalisesAcidente(Hyperlink h) {
this.lnkAnalisesAcidente = h;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText16 = new StaticText();
+
+ public StaticText getStaticText16() {
+ return staticText16;
+ }
+
+ public void setStaticText16(StaticText st) {
+ this.staticText16 = st;
+ }
+
+ private StaticText staticText17 = new StaticText();
+
+ public StaticText getStaticText17() {
+ return staticText17;
+ }
+
+ public void setStaticText17(StaticText st) {
+ this.staticText17 = st;
+ }
/**
*
Construct a new Page bean instance.
@@ -1564,5 +1595,24 @@ public class FichaUtilizador extends AbstractPageBean {
return "gestao_utilizadores";
}
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirGerRh.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirGerRh.java
index ef14826e..6fb8521f 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirGerRh.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirGerRh.java
@@ -28,6 +28,7 @@ import com.sun.rave.web.ui.model.Option;
import db.AnalisesConcluidasDataProvider;
import db.AnalisesDataProvider;
import db.AnalisesSeguimentoDataProvider;
+import global.Global;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.GregorianCalendar;
@@ -35,6 +36,7 @@ import java.util.ListIterator;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -836,6 +838,66 @@ public class FormDirGerRh extends AbstractPageBean {
public void setStaticText8(StaticText st) {
this.staticText8 = st;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText9 = new StaticText();
+
+ public StaticText getStaticText9() {
+ return staticText9;
+ }
+
+ public void setStaticText9(StaticText st) {
+ this.staticText9 = st;
+ }
+
+ private TableColumn tableColumn11 = new TableColumn();
+
+ public TableColumn getTableColumn11() {
+ return tableColumn11;
+ }
+
+ public void setTableColumn11(TableColumn tc) {
+ this.tableColumn11 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaSeg = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaSeg() {
+ return lnkDataAberturaSeg;
+ }
+
+ public void setLnkDataAberturaSeg(Hyperlink h) {
+ this.lnkDataAberturaSeg = h;
+ }
+
+ private TableColumn tableColumn12 = new TableColumn();
+
+ public TableColumn getTableColumn12() {
+ return tableColumn12;
+ }
+
+ public void setTableColumn12(TableColumn tc) {
+ this.tableColumn12 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaConcluida = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaConcluida() {
+ return lnkDataAberturaConcluida;
+ }
+
+ public void setLnkDataAberturaConcluida(Hyperlink h) {
+ this.lnkDataAberturaConcluida = h;
+ }
//
@@ -1029,6 +1091,15 @@ public class FormDirGerRh extends AbstractPageBean {
return "view_analise";
}
+
+ public String lnkDataAberturaSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormDirGerRh");
+ return "view_analise";
+ }
public String lnkNrSeg_action() {
// TODO: Replace with your code
@@ -1209,6 +1280,15 @@ public class FormDirGerRh extends AbstractPageBean {
return "view_analise";
}
+
+ public String lnkDataAberturaConcluida_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableConcluidasRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormDirGerRh");
+ return "view_analise";
+ }
public String lnkNrConcluida_action() {
// TODO: Replace with your code
@@ -1332,5 +1412,25 @@ public class FormDirGerRh extends AbstractPageBean {
// {
//
// }
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirSiprp.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirSiprp.java
index d23f08b3..b679a3c1 100755
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirSiprp.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormDirSiprp.java
@@ -28,6 +28,7 @@ import com.sun.rave.web.ui.model.Option;
import db.AnalisesConcluidasDataProvider;
import db.AnalisesDataProvider;
import db.AnalisesSeguimentoDataProvider;
+import global.Global;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.GregorianCalendar;
@@ -35,6 +36,7 @@ import java.util.ListIterator;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -836,6 +838,106 @@ public class FormDirSiprp extends AbstractPageBean {
public void setLnkAnalisesAcidente(Hyperlink h) {
this.lnkAnalisesAcidente = h;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText2 = new StaticText();
+
+ public StaticText getStaticText2() {
+ return staticText2;
+ }
+
+ public void setStaticText2(StaticText st) {
+ this.staticText2 = st;
+ }
+
+ private HtmlPanelGrid gridPanel2 = new HtmlPanelGrid();
+
+ public HtmlPanelGrid getGridPanel2() {
+ return gridPanel2;
+ }
+
+ public void setGridPanel2(HtmlPanelGrid hpg) {
+ this.gridPanel2 = hpg;
+ }
+
+ private StaticText txtMsg1 = new StaticText();
+
+ public StaticText getTxtMsg1() {
+ return txtMsg1;
+ }
+
+ public void setTxtMsg1(StaticText st) {
+ this.txtMsg1 = st;
+ }
+
+ private TableColumn tableColumn1 = new TableColumn();
+
+ public TableColumn getTableColumn1() {
+ return tableColumn1;
+ }
+
+ public void setTableColumn1(TableColumn tc) {
+ this.tableColumn1 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaSeg1 = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaSeg1() {
+ return lnkDataAberturaSeg1;
+ }
+
+ public void setLnkDataAberturaSeg1(Hyperlink h) {
+ this.lnkDataAberturaSeg1 = h;
+ }
+
+ private TableColumn tableColumn2 = new TableColumn();
+
+ public TableColumn getTableColumn2() {
+ return tableColumn2;
+ }
+
+ public void setTableColumn2(TableColumn tc) {
+ this.tableColumn2 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaConcluida1 = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaConcluida1() {
+ return lnkDataAberturaConcluida1;
+ }
+
+ public void setLnkDataAberturaConcluida1(Hyperlink h) {
+ this.lnkDataAberturaConcluida1 = h;
+ }
+
+ private TableColumn tableColumn3 = new TableColumn();
+
+ public TableColumn getTableColumn3() {
+ return tableColumn3;
+ }
+
+ public void setTableColumn3(TableColumn tc) {
+ this.tableColumn3 = tc;
+ }
+
+ private Hyperlink lnkEstabelecimentoSeg1 = new Hyperlink();
+
+ public Hyperlink getLnkEstabelecimentoSeg1() {
+ return lnkEstabelecimentoSeg1;
+ }
+
+ public void setLnkEstabelecimentoSeg1(Hyperlink h) {
+ this.lnkEstabelecimentoSeg1 = h;
+ }
//
@@ -895,6 +997,8 @@ public class FormDirSiprp extends AbstractPageBean {
* resources that will be required in your event handlers.
*/
public void preprocess() {
+ txtMsg1.setText(getSessionBean1().getMsg());
+ getSessionBean1().setMsg("");
}
/**
@@ -928,7 +1032,7 @@ public class FormDirSiprp extends AbstractPageBean {
HttpServletRequest request = (HttpServletRequest) getExternalContext().getRequest();
String referer = request.getRequestURI();
String pageFrom = Utils.getPageFrom(referer);
- if(!pageFrom.matches("FormDirSiprp.jsp"))
+ if((!pageFrom.matches("FormDirSiprp.jsp")) || getSessionBean1().isFromAnaliseDeletion())
{
try
@@ -1047,6 +1151,15 @@ public class FormDirSiprp extends AbstractPageBean {
getSessionBean1().setNavFrom("FormDirSiprp");
return "view_analise";
}
+
+ public String lnkDataAberturaSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormDirSiprp");
+ return "view_analise";
+ }
public String lnkNrSeg_action() {
// TODO: Replace with your code
@@ -1084,6 +1197,16 @@ public class FormDirSiprp extends AbstractPageBean {
return "view_analise";
}
+ public String lnkEstabelecimentoSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormDirSiprp");
+ return "view_analise";
+ }
+
+
private AnaliseAcidente getTableSeguimentoRowData()
{
RowKey rk = tableRowGroup2.getRowKey();
@@ -1222,6 +1345,15 @@ public class FormDirSiprp extends AbstractPageBean {
getSessionBean1().setNavFrom("FormDirSiprp");
return "view_analise";
}
+
+ public String lnkDataAberturaConcluida_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableConcluidasRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormDirSiprp");
+ return "view_analise";
+ }
public String lnkNrConcluida_action() {
// TODO: Replace with your code
@@ -1340,6 +1472,24 @@ public class FormDirSiprp extends AbstractPageBean {
//
// }
-
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormGestor.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormGestor.java
index 8909307b..9330c08c 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormGestor.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormGestor.java
@@ -28,6 +28,7 @@ import com.sun.rave.web.ui.model.Option;
import db.AnalisesConcluidasDataProvider;
import db.AnalisesDataProvider;
import db.AnalisesSeguimentoDataProvider;
+import global.Global;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.GregorianCalendar;
@@ -35,6 +36,7 @@ import java.util.ListIterator;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -836,6 +838,86 @@ public class FormGestor extends AbstractPageBean {
public void setStaticText8(StaticText st) {
this.staticText8 = st;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText9 = new StaticText();
+
+ public StaticText getStaticText9() {
+ return staticText9;
+ }
+
+ public void setStaticText9(StaticText st) {
+ this.staticText9 = st;
+ }
+
+ private TableColumn tableColumn11 = new TableColumn();
+
+ public TableColumn getTableColumn11() {
+ return tableColumn11;
+ }
+
+ public void setTableColumn11(TableColumn tc) {
+ this.tableColumn11 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaSeg1 = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaSeg1() {
+ return lnkDataAberturaSeg1;
+ }
+
+ public void setLnkDataAberturaSeg1(Hyperlink h) {
+ this.lnkDataAberturaSeg1 = h;
+ }
+
+ private TableColumn tableColumn12 = new TableColumn();
+
+ public TableColumn getTableColumn12() {
+ return tableColumn12;
+ }
+
+ public void setTableColumn12(TableColumn tc) {
+ this.tableColumn12 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaConcluida1 = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaConcluida1() {
+ return lnkDataAberturaConcluida1;
+ }
+
+ public void setLnkDataAberturaConcluida1(Hyperlink h) {
+ this.lnkDataAberturaConcluida1 = h;
+ }
+
+ private TableColumn tableColumn13 = new TableColumn();
+
+ public TableColumn getTableColumn13() {
+ return tableColumn13;
+ }
+
+ public void setTableColumn13(TableColumn tc) {
+ this.tableColumn13 = tc;
+ }
+
+ private Hyperlink lnkEstabelecimentoSeg1 = new Hyperlink();
+
+ public Hyperlink getLnkEstabelecimentoSeg1() {
+ return lnkEstabelecimentoSeg1;
+ }
+
+ public void setLnkEstabelecimentoSeg1(Hyperlink h) {
+ this.lnkEstabelecimentoSeg1 = h;
+ }
//
@@ -1046,6 +1128,15 @@ public class FormGestor extends AbstractPageBean {
return "view_analise";
}
+
+ public String lnkDataAberturaSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormGestor");
+ return "view_analise";
+ }
public String lnkNrSeg_action() {
// TODO: Replace with your code
@@ -1087,6 +1178,15 @@ public class FormGestor extends AbstractPageBean {
}
+ public String lnkEstabelecimentoSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormGestor");
+ return "view_analise";
+ }
+
private AnaliseAcidente getTableSeguimentoRowData()
{
RowKey rk = tableRowGroup1.getRowKey();
@@ -1236,6 +1336,15 @@ public class FormGestor extends AbstractPageBean {
return "view_analise";
}
+
+ public String lnkDataAberturaConcluida_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableConcluidasRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormGestor");
+ return "view_analise";
+ }
public String lnkNrConcluida_action() {
// TODO: Replace with your code
@@ -1350,5 +1459,32 @@ public class FormGestor extends AbstractPageBean {
// {
//
// }
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
+
+ public String lnkEstabelecimento_action() {
+ // TODO: Replace with your code
+
+ return null;
+ }
+
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormHS.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormHS.java
index 3b30f435..3ebebe5f 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormHS.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormHS.java
@@ -29,6 +29,7 @@ import db.AnalisesActualDataProvider;
import db.AnalisesConcluidasDataProvider;
import db.AnalisesDataProvider;
import db.AnalisesSeguimentoDataProvider;
+import global.Global;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.GregorianCalendar;
@@ -36,6 +37,7 @@ import java.util.ListIterator;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -1007,6 +1009,146 @@ public class FormHS extends AbstractPageBean {
public void setStaticText13(StaticText st) {
this.staticText13 = st;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText14 = new StaticText();
+
+ public StaticText getStaticText14() {
+ return staticText14;
+ }
+
+ public void setStaticText14(StaticText st) {
+ this.staticText14 = st;
+ }
+
+ private HtmlPanelGrid gridPanel10 = new HtmlPanelGrid();
+
+ public HtmlPanelGrid getGridPanel10() {
+ return gridPanel10;
+ }
+
+ public void setGridPanel10(HtmlPanelGrid hpg) {
+ this.gridPanel10 = hpg;
+ }
+
+ private StaticText txtMsg = new StaticText();
+
+ public StaticText getTxtMsg() {
+ return txtMsg;
+ }
+
+ public void setTxtMsg(StaticText st) {
+ this.txtMsg = st;
+ }
+
+ private TableColumn tableColumn16 = new TableColumn();
+
+ public TableColumn getTableColumn16() {
+ return tableColumn16;
+ }
+
+ public void setTableColumn16(TableColumn tc) {
+ this.tableColumn16 = tc;
+ }
+
+ private Hyperlink lnkDataAbertura = new Hyperlink();
+
+ public Hyperlink getLnkDataAbertura() {
+ return lnkDataAbertura;
+ }
+
+ public void setLnkDataAbertura(Hyperlink h) {
+ this.lnkDataAbertura = h;
+ }
+
+ private TableColumn tableColumn17 = new TableColumn();
+
+ public TableColumn getTableColumn17() {
+ return tableColumn17;
+ }
+
+ public void setTableColumn17(TableColumn tc) {
+ this.tableColumn17 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaSeg = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaSeg() {
+ return lnkDataAberturaSeg;
+ }
+
+ public void setLnkDataAberturaSeg(Hyperlink h) {
+ this.lnkDataAberturaSeg = h;
+ }
+
+ private TableColumn tableColumn18 = new TableColumn();
+
+ public TableColumn getTableColumn18() {
+ return tableColumn18;
+ }
+
+ public void setTableColumn18(TableColumn tc) {
+ this.tableColumn18 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaConcluida = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaConcluida() {
+ return lnkDataAberturaConcluida;
+ }
+
+ public void setLnkDataAberturaConcluida(Hyperlink h) {
+ this.lnkDataAberturaConcluida = h;
+ }
+
+ private TableColumn tableColumn19 = new TableColumn();
+
+ public TableColumn getTableColumn19() {
+ return tableColumn19;
+ }
+
+ public void setTableColumn19(TableColumn tc) {
+ this.tableColumn19 = tc;
+ }
+
+ private Hyperlink lnkEstabelecimento = new Hyperlink();
+
+ public Hyperlink getLnkEstabelecimento() {
+ return lnkEstabelecimento;
+ }
+
+ public void setLnkEstabelecimento(Hyperlink h) {
+ this.lnkEstabelecimento = h;
+ }
+
+ private TableColumn tableColumn20 = new TableColumn();
+
+ public TableColumn getTableColumn20() {
+ return tableColumn20;
+ }
+
+ public void setTableColumn20(TableColumn tc) {
+ this.tableColumn20 = tc;
+ }
+
+ private Hyperlink lnkEstabelecimentoSeg = new Hyperlink();
+
+ public Hyperlink getLnkEstabelecimentoSeg() {
+ return lnkEstabelecimentoSeg;
+ }
+
+ public void setLnkEstabelecimentoSeg(Hyperlink h) {
+ this.lnkEstabelecimentoSeg = h;
+ }
//
@@ -1115,12 +1257,15 @@ public class FormHS extends AbstractPageBean {
HttpServletRequest request = (HttpServletRequest) getExternalContext().getRequest();
String referer = request.getRequestURI();
String pageFrom = Utils.getPageFrom(referer);
- if(!pageFrom.matches("FormHS.jsp"))
+ System.out.println("PAGE FROM : " + pageFrom);
+ if((!pageFrom.matches("FormHS.jsp")) || getSessionBean1().isFromAnaliseDeletion())
{
try
{
//lblActivos.setRendered(true);
+ System.out.println("CONCLUIDAS TABLE");
+ getSessionBean1().getAnalisesConcluidasDataProvider().setList(null);
table3.setRendered(true);
ArrayList concluidasList = adp.getAnalisesConcluidasHsList();
getSessionBean1().getAnalisesConcluidasDataProvider().setList(concluidasList);
@@ -1129,10 +1274,14 @@ public class FormHS extends AbstractPageBean {
{
//lblActivos.setRendered(false);
table3.setRendered(false);
- //ex.printStackTrace();
+ ex.printStackTrace();
+ System.out.println("ERRRRRROR : " + ex.getMessage());
}
fillAnoDropDown();
- }
+ }
+
+ txtMsg.setText(getSessionBean1().getMsg());
+ getSessionBean1().setMsg("");
}
/**
@@ -1193,6 +1342,15 @@ public class FormHS extends AbstractPageBean {
getSessionBean1().setNavFrom("FormHS");
return "analise_acidente";
}
+
+ public String lnkDataAbertura_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableActivosRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormHS");
+ return "analise_acidente";
+ }
public String lnkNr_action() {
// TODO: Replace with your code
@@ -1230,6 +1388,15 @@ public class FormHS extends AbstractPageBean {
getSessionBean1().setNavFrom("FormHS");
return "view_analise";
}
+
+ public String lnkDataAberturaSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormHS");
+ return "view_analise";
+ }
public String lnkNrSeg_action() {
// TODO: Replace with your code
@@ -1521,6 +1688,15 @@ public class FormHS extends AbstractPageBean {
getSessionBean1().setNavFrom("FormHS");
return "view_analise";
}
+
+ public String lnkDataAberturaConcluida_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableConcluidasRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormHS");
+ return "view_analise";
+ }
public String lnkNrConcluida_action() {
// TODO: Replace with your code
@@ -1548,6 +1724,15 @@ public class FormHS extends AbstractPageBean {
getSessionBean1().setNavFrom("FormHS");
return "analise_acidente";
}
+
+ public String lnkEstabelecimento_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableActivosRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormHS");
+ return "analise_acidente";
+ }
public String lnkFaseSeg_action() {
// TODO: Replace with your code
@@ -1557,6 +1742,16 @@ public class FormHS extends AbstractPageBean {
getSessionBean1().setNavFrom("FormHS");
return "view_analise";
}
+
+ public String lnkEstabelecimentoSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormHS");
+ return "view_analise";
+ }
+
public String lnkPor_action() {
// TODO: Replace with your code
@@ -1599,5 +1794,27 @@ public class FormHS extends AbstractPageBean {
return null;
}
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
+
+
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormRH.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormRH.java
index 0d2dfd5d..06cc90ef 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormRH.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormRH.java
@@ -29,6 +29,7 @@ import db.AnalisesActualDataProvider;
import db.AnalisesConcluidasDataProvider;
import db.AnalisesDataProvider;
import db.AnalisesSeguimentoDataProvider;
+import global.Global;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.GregorianCalendar;
@@ -36,6 +37,7 @@ import java.util.ListIterator;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -1007,6 +1009,106 @@ public class FormRH extends AbstractPageBean {
public void setLnkAnalisesAcidente(Hyperlink h) {
this.lnkAnalisesAcidente = h;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText13 = new StaticText();
+
+ public StaticText getStaticText13() {
+ return staticText13;
+ }
+
+ public void setStaticText13(StaticText st) {
+ this.staticText13 = st;
+ }
+
+ private HtmlPanelGrid gridPanel10 = new HtmlPanelGrid();
+
+ public HtmlPanelGrid getGridPanel10() {
+ return gridPanel10;
+ }
+
+ public void setGridPanel10(HtmlPanelGrid hpg) {
+ this.gridPanel10 = hpg;
+ }
+
+ private StaticText txtMsg1 = new StaticText();
+
+ public StaticText getTxtMsg1() {
+ return txtMsg1;
+ }
+
+ public void setTxtMsg1(StaticText st) {
+ this.txtMsg1 = st;
+ }
+
+ private TableColumn tableColumn16 = new TableColumn();
+
+ public TableColumn getTableColumn16() {
+ return tableColumn16;
+ }
+
+ public void setTableColumn16(TableColumn tc) {
+ this.tableColumn16 = tc;
+ }
+
+ private Hyperlink lnkDataAbertura = new Hyperlink();
+
+ public Hyperlink getLnkDataAbertura() {
+ return lnkDataAbertura;
+ }
+
+ public void setLnkDataAbertura(Hyperlink h) {
+ this.lnkDataAbertura = h;
+ }
+
+ private TableColumn tableColumn17 = new TableColumn();
+
+ public TableColumn getTableColumn17() {
+ return tableColumn17;
+ }
+
+ public void setTableColumn17(TableColumn tc) {
+ this.tableColumn17 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaSeg = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaSeg() {
+ return lnkDataAberturaSeg;
+ }
+
+ public void setLnkDataAberturaSeg(Hyperlink h) {
+ this.lnkDataAberturaSeg = h;
+ }
+
+ private TableColumn tableColumn18 = new TableColumn();
+
+ public TableColumn getTableColumn18() {
+ return tableColumn18;
+ }
+
+ public void setTableColumn18(TableColumn tc) {
+ this.tableColumn18 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaConcluida = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaConcluida() {
+ return lnkDataAberturaConcluida;
+ }
+
+ public void setLnkDataAberturaConcluida(Hyperlink h) {
+ this.lnkDataAberturaConcluida = h;
+ }
//
@@ -1147,7 +1249,10 @@ public class FormRH extends AbstractPageBean {
//ex.printStackTrace();
}
fillAnoDropDown();
- }
+ }
+
+ txtMsg1.setText(getSessionBean1().getMsg());
+ getSessionBean1().setMsg("");
}
/**
@@ -1215,6 +1320,15 @@ public class FormRH extends AbstractPageBean {
getSessionBean1().setNavFrom("FormRH");
return "analise_acidente";
}
+
+ public String lnkDataAbertura_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableActivosRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormRH");
+ return "analise_acidente";
+ }
public String lnkNr_action() {
// TODO: Replace with your code
@@ -1249,16 +1363,25 @@ public class FormRH extends AbstractPageBean {
AnaliseAcidente a = getTableSeguimentoRowData();
getSessionBean1().setCurrentAnalise(a);
- getSessionBean1().setNavFrom("FormRh");
+ getSessionBean1().setNavFrom("FormRH");
return "view_analise";
}
+
+ public String lnkDataAberturaSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormRH");
+ return "view_analise";
+ }
public String lnkNrSeg_action() {
// TODO: Replace with your code
AnaliseAcidente a = getTableSeguimentoRowData();
getSessionBean1().setCurrentAnalise(a);
- getSessionBean1().setNavFrom("FormRh");
+ getSessionBean1().setNavFrom("FormRH");
return "view_analise";
}
@@ -1268,7 +1391,7 @@ public class FormRH extends AbstractPageBean {
AnaliseAcidente a = getTableSeguimentoRowData();
getSessionBean1().setCurrentAnalise(a);
- getSessionBean1().setNavFrom("FormRh");
+ getSessionBean1().setNavFrom("FormRH");
return "view_analise";
}
@@ -1544,6 +1667,15 @@ public class FormRH extends AbstractPageBean {
getSessionBean1().setNavFrom("FormRH");
return "view_analise";
}
+
+ public String lnkDataAberturaConcluida_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableConcluidasRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormRH");
+ return "view_analise";
+ }
public String lnkNrConcluida_action() {
// TODO: Replace with your code
@@ -1577,7 +1709,7 @@ public class FormRH extends AbstractPageBean {
AnaliseAcidente a = getTableSeguimentoRowData();
getSessionBean1().setCurrentAnalise(a);
- getSessionBean1().setNavFrom("FormRh");
+ getSessionBean1().setNavFrom("FormRH");
return "view_analise";
}
@@ -1595,7 +1727,7 @@ public class FormRH extends AbstractPageBean {
AnaliseAcidente a = getTableSeguimentoRowData();
getSessionBean1().setCurrentAnalise(a);
- getSessionBean1().setNavFrom("FormRh");
+ getSessionBean1().setNavFrom("FormRH");
return "view_analise";
}
@@ -1624,5 +1756,25 @@ public class FormRH extends AbstractPageBean {
getSessionBean1().setModoEdicaoUtilizador("new");
return "user";
}
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormSeguranca.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormSeguranca.java
index c7a169f0..de46c90b 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormSeguranca.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/FormSeguranca.java
@@ -29,14 +29,21 @@ import db.AnalisesActualDataProvider;
import db.AnalisesConcluidasDataProvider;
import db.AnalisesDataProvider;
import db.AnalisesSeguimentoDataProvider;
+import global.Global;
+import java.io.File;
+import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.ListIterator;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
+import javax.faces.context.FacesContext;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
import utils.Utils;
/**
@@ -1037,6 +1044,106 @@ public class FormSeguranca extends AbstractPageBean {
public void setLnkAnalisesAcidente(Hyperlink h) {
this.lnkAnalisesAcidente = h;
}
+
+ private Hyperlink lnkAjuda = new Hyperlink();
+
+ public Hyperlink getLnkAjuda() {
+ return lnkAjuda;
+ }
+
+ public void setLnkAjuda(Hyperlink h) {
+ this.lnkAjuda = h;
+ }
+
+ private StaticText staticText12 = new StaticText();
+
+ public StaticText getStaticText12() {
+ return staticText12;
+ }
+
+ public void setStaticText12(StaticText st) {
+ this.staticText12 = st;
+ }
+
+ private HtmlPanelGrid gridPanel10 = new HtmlPanelGrid();
+
+ public HtmlPanelGrid getGridPanel10() {
+ return gridPanel10;
+ }
+
+ public void setGridPanel10(HtmlPanelGrid hpg) {
+ this.gridPanel10 = hpg;
+ }
+
+ private StaticText txtMsg = new StaticText();
+
+ public StaticText getTxtMsg() {
+ return txtMsg;
+ }
+
+ public void setTxtMsg(StaticText st) {
+ this.txtMsg = st;
+ }
+
+ private TableColumn tableColumn16 = new TableColumn();
+
+ public TableColumn getTableColumn16() {
+ return tableColumn16;
+ }
+
+ public void setTableColumn16(TableColumn tc) {
+ this.tableColumn16 = tc;
+ }
+
+ private Hyperlink lnkDataAbertura = new Hyperlink();
+
+ public Hyperlink getLnkDataAbertura() {
+ return lnkDataAbertura;
+ }
+
+ public void setLnkDataAbertura(Hyperlink h) {
+ this.lnkDataAbertura = h;
+ }
+
+ private TableColumn tableColumn17 = new TableColumn();
+
+ public TableColumn getTableColumn17() {
+ return tableColumn17;
+ }
+
+ public void setTableColumn17(TableColumn tc) {
+ this.tableColumn17 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaSeg = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaSeg() {
+ return lnkDataAberturaSeg;
+ }
+
+ public void setLnkDataAberturaSeg(Hyperlink h) {
+ this.lnkDataAberturaSeg = h;
+ }
+
+ private TableColumn tableColumn18 = new TableColumn();
+
+ public TableColumn getTableColumn18() {
+ return tableColumn18;
+ }
+
+ public void setTableColumn18(TableColumn tc) {
+ this.tableColumn18 = tc;
+ }
+
+ private Hyperlink lnkDataAberturaConcluida = new Hyperlink();
+
+ public Hyperlink getLnkDataAberturaConcluida() {
+ return lnkDataAberturaConcluida;
+ }
+
+ public void setLnkDataAberturaConcluida(Hyperlink h) {
+ this.lnkDataAberturaConcluida = h;
+ }
//
@@ -1165,7 +1272,8 @@ public class FormSeguranca extends AbstractPageBean {
}
fillAnoDropDown();
}
-
+ txtMsg.setText(getSessionBean1().getMsg());
+ getSessionBean1().setMsg("");
}
/**
@@ -1478,6 +1586,14 @@ public class FormSeguranca extends AbstractPageBean {
getSessionBean1().setNavFrom("FormSeguranca");
return "analise_acidente";
}
+
+ public String lnkDataAbertura_action() {
+ // TODO: Replace with your code
+ AnaliseAcidente a = getTableActivosRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormSeguranca");
+ return "analise_acidente";
+ }
public String lnkNr_action() {
// TODO: Replace with your code
@@ -1514,6 +1630,15 @@ public class FormSeguranca extends AbstractPageBean {
return "view_analise";
}
+
+ public String lnkDataAberturaSeg_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableSeguimentoRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormSeguranca");
+ return "view_analise";
+ }
public String lnkNrSeg_action() {
// TODO: Replace with your code
@@ -1554,6 +1679,7 @@ public class FormSeguranca extends AbstractPageBean {
}
public String lnkEditUser_action() {
+ System.out.println("EDIT USER");
// TODO: Replace with your code
getSessionBean1().setNavFrom("FormSeguranca");
getSessionBean1().setModoEdicaoUtilizador("edit");
@@ -1567,6 +1693,15 @@ public class FormSeguranca extends AbstractPageBean {
getSessionBean1().setNavFrom("FormSeguranca");
return "view_analise";
}
+
+ public String lnkDataAberturaConcluida_action() {
+ // TODO: Replace with your code
+
+ AnaliseAcidente a = getTableConcluidasRowData();
+ getSessionBean1().setCurrentAnalise(a);
+ getSessionBean1().setNavFrom("FormSeguranca");
+ return "view_analise";
+ }
public String lnkNrConcluida_action() {
// TODO: Replace with your code
@@ -1640,5 +1775,57 @@ public class FormSeguranca extends AbstractPageBean {
return null;
}
+
+ public String lnkAjuda_action() {
+ System.out.println("AJUDA");
+// // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// return null;
+// }
+ return null;
+ }
+
+ private void showPdf(String pdfFilePath) throws Exception
+ {
+
+ File pdfFile = new File(pdfFilePath);
+ FileInputStream fis = new FileInputStream(pdfFile);
+ byte[] buf = new byte[(int)pdfFile.length()];
+ while ((fis.read(buf)) > 0)
+ {
+ //fos.write(buf, 0, buf.length);
+ }
+ fis.close();
+ FacesContext ctx = FacesContext.getCurrentInstance();
+ if (!ctx.getResponseComplete())
+ {
+ HttpServletResponse response = (HttpServletResponse)ctx.getExternalContext().getResponse();
+ String contentType = "application/pdf";
+ response.setContentType(contentType);
+ response.setHeader("Content-Disposition","attachment;filename=\"" + "Ajuda.pdf" + "\"");
+
+ ServletOutputStream out = response.getOutputStream();
+
+ //out.write(model.getInfo().getBytes());
+ out.write(buf, 0, buf.length);
+ out.flush();
+ out.close();
+ ctx.responseComplete();
+ ctx.release();
+ }
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java
index f196fa68..0b25dd18 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/GestaoUtilizadores.java
@@ -34,6 +34,7 @@ import java.util.ArrayList;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -778,6 +779,26 @@ public class GestaoUtilizadores extends AbstractPageBean {
public void setLnkAnalisesAcidente(Hyperlink h) {
this.lnkAnalisesAcidente = h;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText4 = new StaticText();
+
+ public StaticText getStaticText4() {
+ return staticText4;
+ }
+
+ public void setStaticText4(StaticText st) {
+ this.staticText4 = st;
+ }
/**
* Construct a new Page bean instance.
*/
@@ -1250,5 +1271,24 @@ public class GestaoUtilizadores extends AbstractPageBean {
}
return null;
}
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Login.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Login.java
index 8964d9bc..8283ce80 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Login.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/Login.java
@@ -436,6 +436,7 @@ public class Login extends AbstractPageBean {
}
catch(Exception ex)
{
+ ex.printStackTrace();
getSessionBean1().setMsg("Utilizador inválido ! ");
}
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/NovoUtilizador.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/NovoUtilizador.java
index e46f72e9..68b45cd0 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/NovoUtilizador.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/NovoUtilizador.java
@@ -34,6 +34,7 @@ import java.util.ArrayList;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -846,24 +847,24 @@ public class NovoUtilizador extends AbstractPageBean {
this.staticText7 = st;
}
- private StaticText staticText8 = new StaticText();
+ private StaticText stOutro = new StaticText();
- public StaticText getStaticText8() {
- return staticText8;
+ public StaticText getStOutro() {
+ return stOutro;
}
- public void setStaticText8(StaticText st) {
- this.staticText8 = st;
+ public void setStOutro(StaticText st) {
+ this.stOutro = st;
}
- private HtmlPanelGrid gridPanel5 = new HtmlPanelGrid();
+ private HtmlPanelGrid gridOutro = new HtmlPanelGrid();
- public HtmlPanelGrid getGridPanel5() {
- return gridPanel5;
+ public HtmlPanelGrid getGridOutro() {
+ return gridOutro;
}
- public void setGridPanel5(HtmlPanelGrid hpg) {
- this.gridPanel5 = hpg;
+ public void setGridOutro(HtmlPanelGrid hpg) {
+ this.gridOutro = hpg;
}
private StaticText staticText9 = new StaticText();
@@ -1118,6 +1119,26 @@ public class NovoUtilizador extends AbstractPageBean {
public void setLnkAnalisesAcidente(Hyperlink h) {
this.lnkAnalisesAcidente = h;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText29 = new StaticText();
+
+ public StaticText getStaticText29() {
+ return staticText29;
+ }
+
+ public void setStaticText29(StaticText st) {
+ this.staticText29 = st;
+ }
/**
* Construct a new Page bean instance.
*/
@@ -2039,5 +2060,33 @@ public class NovoUtilizador extends AbstractPageBean {
return null;
}
+
+ public void rbCatRh_processValueChange(ValueChangeEvent event) {
+ // TODO: Replace with your code
+ }
+
+ public void rbCatHs_processValueChange(ValueChangeEvent event) {
+ // TODO: Replace with your code
+
+ }
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/RecuperarPassword.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/RecuperarPassword.java
index deb5b682..9bd25837 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/RecuperarPassword.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/RecuperarPassword.java
@@ -18,6 +18,7 @@ import com.sun.rave.web.ui.component.PanelGroup;
import com.sun.rave.web.ui.component.StaticText;
import com.sun.rave.web.ui.component.TextField;
import db.UtilizadoresDataProvider;
+import global.Global;
import java.util.Date;
import java.util.Properties;
import javax.faces.FacesException;
@@ -389,13 +390,14 @@ public class RecuperarPassword extends AbstractPageBean {
//send mail :
try
{
- sendEmail(u.getEmail(), u.getLogin(), u.getPassword(), "linojose@mail.com");
+ sendEmail(u.getEmail(), u.getLogin(), u.getPassword(), Global.ENDERECO_ENVIO);
getSessionBean1().setMsg("A sua password foi enviada para o seu email");
return "login";
}
catch(Exception ex)
{
- getSessionBean1().setMsg("Erro no envio da password !");
+ getSessionBean1().setMsg("Erro no envio da password !");
+ ex.printStackTrace();
}
}
@@ -418,7 +420,7 @@ public class RecuperarPassword extends AbstractPageBean {
{
Properties props = new Properties();
//props.put("mail.transport.protocol", "smtp");
- props.put("mail.smtp.host", "smtp.netcabo.pt");
+ props.put("mail.smtp.host", "mail2.evolute.pt");
props.put("mail.from", admin_email);
Session session1 = Session.getInstance(props);
Message msg = new MimeMessage(session1);
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/SessionBean1.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/SessionBean1.java
index 64bdcbec..3f298e66 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/SessionBean1.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/SessionBean1.java
@@ -58,6 +58,12 @@ public class SessionBean1 extends AbstractSessionBean {
setEditUser(null);
setUserDeleted(false);
setMudarPassword(false);
+ setFromAjuda(false);
+ setGravado(false);
+ setSubmetido(false);
+ setFromAnaliseDeletion(false);
+ setIeBug(false);
+ setCorrecao(null);
}
/**
@@ -642,4 +648,64 @@ public class SessionBean1 extends AbstractSessionBean {
this.medico = medico;
}
+ private boolean fromAjuda;
+
+ public boolean isFromAjuda() {
+ return fromAjuda;
+ }
+
+ public void setFromAjuda(boolean fromAjuda) {
+ this.fromAjuda = fromAjuda;
+ }
+
+ private boolean submetido;
+
+ private boolean gravado;
+
+ public boolean isSubmetido() {
+ return submetido;
+ }
+
+ public void setSubmetido(boolean submetido) {
+ this.submetido = submetido;
+ }
+
+ public boolean isGravado() {
+ return gravado;
+ }
+
+ public void setGravado(boolean gravado) {
+ this.gravado = gravado;
+ }
+
+ private boolean fromAnaliseDeletion;
+
+ public boolean isFromAnaliseDeletion() {
+ return fromAnaliseDeletion;
+ }
+
+ public void setFromAnaliseDeletion(boolean fromAnaliseDeletion) {
+ this.fromAnaliseDeletion = fromAnaliseDeletion;
+ }
+
+ private boolean ieBug;
+
+ public boolean isIeBug() {
+ return ieBug;
+ }
+
+ public void setIeBug(boolean ieBug) {
+ this.ieBug = ieBug;
+ }
+
+ private analiseacidentestrabalho.Correcao correcao;
+
+ public analiseacidentestrabalho.Correcao getCorrecao() {
+ return correcao;
+ }
+
+ public void setCorrecao(analiseacidentestrabalho.Correcao correcao) {
+ this.correcao = correcao;
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/UtilizadorFields.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/UtilizadorFields.java
index 482d3bc5..8ace5eb5 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/UtilizadorFields.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/UtilizadorFields.java
@@ -29,6 +29,7 @@ import global.Global;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.event.ValueChangeEvent;
+import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import utils.Utils;
@@ -813,6 +814,26 @@ public class UtilizadorFields extends AbstractPageBean {
public void setLnkAnalisesAcidente(Hyperlink h) {
this.lnkAnalisesAcidente = h;
}
+
+ private Hyperlink lnkAjuda = new Hyperlink();
+
+ public Hyperlink getLnkAjuda() {
+ return lnkAjuda;
+ }
+
+ public void setLnkAjuda(Hyperlink h) {
+ this.lnkAjuda = h;
+ }
+
+ private StaticText staticText19 = new StaticText();
+
+ public StaticText getStaticText19() {
+ return staticText19;
+ }
+
+ public void setStaticText19(StaticText st) {
+ this.staticText19 = st;
+ }
/**
* Construct a new Page bean instance.
*/
@@ -1702,5 +1723,24 @@ public class UtilizadorFields extends AbstractPageBean {
// TODO: Replace with your code
}
+
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/ViewAnaliseAcidenteTrabalho.java b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/ViewAnaliseAcidenteTrabalho.java
index 92ebac19..c410efad 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/ViewAnaliseAcidenteTrabalho.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/analiseacidentestrabalho/ViewAnaliseAcidenteTrabalho.java
@@ -11,6 +11,7 @@ import com.sun.rave.web.ui.component.Body;
import com.sun.rave.web.ui.component.Button;
import com.sun.rave.web.ui.component.Form;
import com.sun.rave.web.ui.component.Head;
+import com.sun.rave.web.ui.component.HiddenField;
import com.sun.rave.web.ui.component.Html;
import com.sun.rave.web.ui.component.Hyperlink;
import com.sun.rave.web.ui.component.ImageComponent;
@@ -1127,16 +1128,6 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
this.groupPanel5 = pg;
}
- private Button butVoltar = new Button();
-
- public Button getButVoltar() {
- return butVoltar;
- }
-
- public void setButVoltar(Button b) {
- this.butVoltar = b;
- }
-
private HtmlPanelGrid gridPanel13 = new HtmlPanelGrid();
public HtmlPanelGrid getGridPanel13() {
@@ -2176,6 +2167,66 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
public void setImage5(ImageComponent ic) {
this.image5 = ic;
}
+
+ private Hyperlink lnkAjuda1 = new Hyperlink();
+
+ public Hyperlink getLnkAjuda1() {
+ return lnkAjuda1;
+ }
+
+ public void setLnkAjuda1(Hyperlink h) {
+ this.lnkAjuda1 = h;
+ }
+
+ private StaticText staticText1 = new StaticText();
+
+ public StaticText getStaticText1() {
+ return staticText1;
+ }
+
+ public void setStaticText1(StaticText st) {
+ this.staticText1 = st;
+ }
+
+ private HiddenField hidConfDelete = new HiddenField();
+
+ public HiddenField getHidConfDelete() {
+ return hidConfDelete;
+ }
+
+ public void setHidConfDelete(HiddenField hf) {
+ this.hidConfDelete = hf;
+ }
+
+ private PanelGroup groupPanel1 = new PanelGroup();
+
+ public PanelGroup getGroupPanel1() {
+ return groupPanel1;
+ }
+
+ public void setGroupPanel1(PanelGroup pg) {
+ this.groupPanel1 = pg;
+ }
+
+ private Button butVoltar = new Button();
+
+ public Button getButVoltar() {
+ return butVoltar;
+ }
+
+ public void setButVoltar(Button b) {
+ this.butVoltar = b;
+ }
+
+ private Button butEliminar = new Button();
+
+ public Button getButEliminar() {
+ return butEliminar;
+ }
+
+ public void setButEliminar(Button b) {
+ this.butEliminar = b;
+ }
/**
* Construct a new Page bean instance.
*/
@@ -2250,6 +2301,66 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
* this page.
*/
public void prerender() {
+ getSessionBean1().setFromAnaliseDeletion(false);
+ String confirmacao_analise = (String)getExternalContext().getRequestParameterMap().get("confirmacao_analise");
+ if(confirmacao_analise != null)
+ {
+ if(confirmacao_analise.matches("yes"))
+ {
+ hidConfDelete.setValue("");
+ try
+ {
+ deleteAnalise();
+ //booMsgQuizDeleted = true;
+ getSessionBean1().setFromAnaliseDeletion(true);
+ getSessionBean1().setMsg("Análise eliminada !");
+ AnalisesDataProvider adp = new AnalisesDataProvider();
+ Utilizador u = getSessionBean1().getCurrentUser();
+ if(u.getTipo().intValue() == Global.TIPO_UTILIZADOR_DIRECTOR_SIPRP)
+ {
+
+ try
+ {
+ getExternalContext().redirect("FormDirSiprp.jsp");
+ }
+ catch(Exception ex1)
+ {
+ ex1.printStackTrace();
+ }
+ }
+ else if(u.getTipo().intValue() == Global.TIPO_UTILIZADOR_HS)
+ {
+
+ try
+ {
+ getExternalContext().redirect("FormHS.jsp");
+ }
+ catch(Exception ex1)
+ {
+ ex1.printStackTrace();
+ }
+ }
+
+ }
+ catch(Exception ex)
+ {
+ getSessionBean1().setMsg("Erro na eliminação da análise");
+ ex.printStackTrace();
+// try
+// {
+// getExternalContext().redirect("EditarQuestionario.jsp");
+// }
+// catch(Exception ex1)
+// {
+// ex1.printStackTrace();
+// }
+ }
+ }
+ else if(confirmacao_analise.matches("no"))
+ {
+ hidConfDelete.setValue("");
+ }
+ }
}
/**
@@ -2260,6 +2371,7 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
* preprocess(), or prerender() methods (or
* acquired during execution of an event handler).
*/
+
public void destroy() {
}
@@ -2323,6 +2435,19 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
private void initializePage()
{
+ Utilizador u = getSessionBean1().getCurrentUser();
+ if(! (u.getTipo().intValue() == Global.TIPO_UTILIZADOR_DIRECTOR_SIPRP || u.getTipo().intValue() == Global.TIPO_UTILIZADOR_HS))
+ {
+ butEliminar.setRendered(false);
+ }
+ else
+ {
+ AnaliseAcidente a = getSessionBean1().getCurrentAnalise();
+ if(a.getEstado().intValue() == Global.ESTADO_CONCLUIDO)
+ {
+ butEliminar.setRendered(false);
+ }
+ }
fillPage();
//fillImages();
}
@@ -4171,7 +4296,7 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
st = new StaticText();
st.setId("stVerificacao2");
st.setEscape(false);
- txtVer = "Verificado por " + a.getNome_resp_consolidacao() + " (Técnico de HST) a ";
+ txtVer = "Verificado por " + a.getNome_resp_consolidacao() + " (Técnico de SHST) a ";
//txtVer += a.getData_assinatura_rh();
try
{
@@ -4326,7 +4451,7 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
{
return "form_seguranca";
}
- else if(navFrom.matches("FormRh"))
+ else if(navFrom.matches("FormRH"))
{
System.out.println("FROM RH ");
return "form_rh";
@@ -4436,5 +4561,100 @@ public class ViewAnaliseAcidenteTrabalho extends AbstractPageBean {
return "user";
}
+ public String lnkAjuda_action() {
+ // TODO: Replace with your code
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+// String pdfFolderPath = theApplicationsServletContext.getRealPath(Global.PDF_FOLDER_URL);
+// String pdfFilePath = pdfFolderPath + "/Ajuda.pdf";
+//
+// Global global = new Global();
+// try
+// {
+// global.showPdf(pdfFilePath);
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+ return null;
+ }
+
+ public String butEliminar_action() {
+ // TODO: Process the button click action. Return value is a navigation
+ // case name where null will return to the same page.
+ hidConfDelete.setValue("apagar");
+ return null;
+ }
+
+ private void deleteAnalise()
+ {
+ System.out.println("DELETE ANALISE");
+ AnaliseAcidente a = getSessionBean1().getCurrentAnalise();
+
+ AnalisesDataProvider adp = new AnalisesDataProvider();
+
+ try
+ {
+ adp.deleteAnaliseAcidente(a.getId());
+ }
+ catch(Exception ex)
+ {
+ ex.printStackTrace();
+ }
+
+// try
+// {
+// adp.deleteRecomendacoesByAnalise(a.getId());
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+//
+// try
+// {
+// adp.deleteMedidasByAnalise(a.getId());
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+//
+// try
+// {
+// adp.deleteAnaliseAcidente(a.getId());
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+//
+// try
+// {
+// adp.deleteAcidentado(a.getAcidentado_id());
+// }
+// catch(Exception ex)
+// {
+// ex.printStackTrace();
+// }
+//
+//
+// //delete images folder
+// String folderName = a.getAnalise_nr().substring(0,2) + a.getAnalise_nr().substring(3);
+//
+// ServletContext theApplicationsServletContext =
+// (ServletContext) this.getExternalContext().getContext();
+//// String imageFileFolder = theApplicationsServletContext.getRealPath(Global.IMAGE_FOLDER + "/" + folderName);
+// String imageFileFolder = Global.IMAGE_FOLDER + "/" + folderName;
+// File f = new File(imageFileFolder);
+// if( f.exists() )
+// {
+// Global global = new Global();
+// global.deleteFolderFiles(f);
+// f.delete();
+// }
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/db/AnalisesDataProvider.java b/trunk/AnaliseAcidentesTrabalho/src/java/db/AnalisesDataProvider.java
index d8ee6ca4..c5979259 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/db/AnalisesDataProvider.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/db/AnalisesDataProvider.java
@@ -26,10 +26,12 @@ import analiseacidentestrabalho.Trabalhador;
import com.sun.rave.web.ui.model.Option;
import global.Global;
import java.sql.ResultSet;
+import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.GregorianCalendar;
+import java.util.HashMap;
import java.util.ListIterator;
import java.util.StringTokenizer;
import utils.Strings;
@@ -95,11 +97,11 @@ public class AnalisesDataProvider {
String sql = "";
if(responsavel_loja.matches("y"))
{
- sql ="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 + " ORDER BY analise_nr";
+ sql ="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";
}
else
{
- sql ="SELECT * FROM analises_acidentes WHERE (estado = " + Global.ESTADO_SEG + " OR (averiguacao_posterior = 'y' AND averiguacao_obs = ''))" + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql ="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";
}
ResultSet rs = st.executeQuery(sql);
@@ -113,11 +115,11 @@ public class AnalisesDataProvider {
String sql = "";
if(responsavel_loja.matches("y"))
{
- sql ="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 + " ORDER BY analise_nr";
+ sql ="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";
}
else
{
- sql ="SELECT * FROM analises_acidentes WHERE (estado = " + Global.ESTADO_RH1 + " OR estado = " + Global.ESTADO_RH2 + ") AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql ="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";
}
ResultSet rs = st.executeQuery(sql);
@@ -128,7 +130,7 @@ public class AnalisesDataProvider {
public ArrayList getAnalisesActuaisHsList(Integer estabelecimento_id) throws Exception
{
Statement st = createStatement();
- String sql ="SELECT * FROM analises_acidentes WHERE (estado = " + Global.ESTADO_HS + " OR estado = " + Global.ESTADO_FECHAR + " OR estado = " + Global.ESTADO_CONSOLIDACAO + ")" + " ORDER BY analise_nr"; //AND estabelecimento_id = " + estabelecimento_id;
+ String sql ="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"; //AND estabelecimento_id = " + estabelecimento_id;
ResultSet rs = st.executeQuery(sql);
ArrayList list = fillAnaliseFields(rs);
return list;
@@ -151,16 +153,15 @@ public class AnalisesDataProvider {
if(responsavel_loja.matches("y"))
{
- sql ="SELECT * FROM analises_acidentes WHERE estabelecimento_id = " + estabelecimento_id + " AND (estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_ASSINATURA_SEG + " AND (averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> '')) OR (estado > " + Global.ESTADO_ASSINATURA_SEG + " AND estado < " + Global.ESTADO_CONCLUIDO + "))" + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estabelecimento_id = " + estabelecimento_id + " AND (estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_ASSINATURA_SEG + " AND (averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> '')) OR (estado > " + Global.ESTADO_ASSINATURA_SEG + " AND estado < " + Global.ESTADO_CONCLUIDO + "))" + " AND apagada = 'n' ORDER BY analise_nr";
// sql ="SELECT * FROM analises_acidentes WHERE estabelecimento_id = " + estabelecimento_id + " AND ((estado = 7 and ass_resp_seg = 'y') OR (estado > 1 AND estado < 7 AND (averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> ''))) OR (estado > 7 AND estado < 10))";
}
else
{
// sql ="SELECT * FROM analises_acidentes WHERE estabelecimento_id = " + estabelecimento_id + " AND ((estado > " + Global.ESTADO_SEG + " AND estado < 8 AND (averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> ''))) OR (estado > 7 AND estado < 10))";
- sql ="SELECT * FROM analises_acidentes WHERE estabelecimento_id = " + estabelecimento_id + " AND ((estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_FECHAR + " AND (averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> ''))) OR estado = " + Global.ESTADO_FECHAR + ")" + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estabelecimento_id = " + estabelecimento_id + " AND ((estado > " + Global.ESTADO_SEG + " AND estado < " + Global.ESTADO_FECHAR + " AND (averiguacao_posterior = 'n' OR (averiguacao_posterior = 'y' AND averiguacao_obs <> ''))) OR estado = " + Global.ESTADO_FECHAR + ")" + " AND apagada = 'n' ORDER BY analise_nr";
}
- System.out.println("SEG SEGUIMENTO SQL : " + sql);
ResultSet rs = st.executeQuery(sql);
ArrayList list = fillAnaliseFields(rs);
return list;
@@ -171,9 +172,10 @@ public class AnalisesDataProvider {
Statement st = createStatement();
String sql = null;
- sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_HS + " OR (estado > " + Global.ESTADO_HS + " AND estado < " + Global.ESTADO_CONSOLIDACAO + ") OR (estado > " + Global.ESTADO_CONSOLIDACAO + " AND estado < " + Global.ESTADO_FECHAR + ")" + " ORDER BY analise_nr"; // AND estabelecimento_id = " + estabelecimento_id;
+ sql ="SELECT * FROM analises_acidentes WHERE (estado < " + Global.ESTADO_HS + " OR (estado > " + Global.ESTADO_HS + " AND estado < " + Global.ESTADO_CONSOLIDACAO + ") OR (estado > " + Global.ESTADO_CONSOLIDACAO + " AND estado < " + Global.ESTADO_FECHAR + "))" + " AND apagada = 'n' ORDER BY analise_nr"; // AND estabelecimento_id = " + estabelecimento_id;
ResultSet rs = st.executeQuery(sql);
+ System.out.println("SEGUIMENTO HS SQL : " + sql);
ArrayList list = fillAnaliseFields(rs);
return list;
}
@@ -187,11 +189,11 @@ public class AnalisesDataProvider {
{
// sql ="SELECT * FROM analises_acidentes WHERE (estado = 1 OR estado = 3 OR estado = 6 OR (estado = 7 AND estado_assinatura < 2) OR estado = 9) AND estabelecimento_id = " + estabelecimento_id;
// sql ="SELECT * FROM analises_acidentes WHERE (estado = 1 OR estado = 3 OR estado = 6 OR (estado = 7 AND estado_assinatura < 2) OR (estado = 7 and ass_resp_rh = 'y') OR estado = 9) AND estabelecimento_id = " + estabelecimento_id;
- sql ="SELECT * FROM analises_acidentes WHERE (estado = " + Global.ESTADO_SEG + " OR estado = " + Global.ESTADO_HS + " OR estado = " + Global.ESTADO_CONSOLIDACAO + " OR estado = " + Global.ESTADO_ASSINATURA_SEG + " OR estado = " + Global.ESTADO_FECHAR + ") AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE (estado = " + Global.ESTADO_SEG + " OR estado = " + Global.ESTADO_HS + " OR estado = " + Global.ESTADO_CONSOLIDACAO + " OR estado = " + Global.ESTADO_ASSINATURA_SEG + " OR estado = " + Global.ESTADO_FECHAR + ") AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql ="SELECT * FROM analises_acidentes WHERE (estado = " + Global.ESTADO_SEG + " OR estado = " + Global.ESTADO_HS + " OR estado = " + Global.ESTADO_CONSOLIDACAO + " OR estado = " + Global.ESTADO_ASSINATURA_SEG + " OR estado = " + Global.ESTADO_ASSINATURA_RH + " OR estado = " + Global.ESTADO_FECHAR + ") AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE (estado = " + Global.ESTADO_SEG + " OR estado = " + Global.ESTADO_HS + " OR estado = " + Global.ESTADO_CONSOLIDACAO + " OR estado = " + Global.ESTADO_ASSINATURA_SEG + " OR estado = " + Global.ESTADO_ASSINATURA_RH + " OR estado = " + Global.ESTADO_FECHAR + ") AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
@@ -205,7 +207,7 @@ public class AnalisesDataProvider {
Statement st = createStatement();
String sql = null;
- sql ="SELECT * FROM analises_acidentes WHERE estado < 5 OR (estado = 6 AND estado_assinatura <> 2) OR (estado = 6 AND estado_assinatura = 2 AND ass_med = 'y') OR (estado > 6 AND estado < 9) AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estado < 5 OR (estado = 6 AND estado_assinatura <> 2) OR (estado = 6 AND estado_assinatura = 2 AND ass_med = 'y') OR (estado > 6 AND estado < 9) AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
ResultSet rs = st.executeQuery(sql);
ArrayList list = fillAnaliseFields(rs);
@@ -217,7 +219,7 @@ public class AnalisesDataProvider {
Statement st = createStatement();
String sql = null;
- sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
ResultSet rs = st.executeQuery(sql);
ArrayList list = fillAnaliseFields(rs);
@@ -229,7 +231,7 @@ public class AnalisesDataProvider {
Statement st = createStatement();
String sql = null;
- sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
ResultSet rs = st.executeQuery(sql);
ArrayList list = fillAnaliseFields(rs);
@@ -243,11 +245,11 @@ public class AnalisesDataProvider {
if(estabelecimento_id == null)
{
- sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estado < " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
@@ -264,11 +266,11 @@ public class AnalisesDataProvider {
String sql = "";
if(estabelecimento_id == null)
{
- sql ="SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql ="SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql ="SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
ResultSet rs = st.executeQuery(sql);
@@ -280,7 +282,7 @@ public class AnalisesDataProvider {
public ArrayList getAnalisesConcluidasHsList() throws Exception
{
Statement st = createStatement();
- String sql ="SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ String sql ="SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
ResultSet rs = st.executeQuery(sql);
ArrayList list = fillAnaliseFields(rs);
@@ -320,22 +322,22 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
else if(por != null)
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
@@ -343,22 +345,22 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente = '" + data_acidente + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
else
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes WHERE data_acidente = '" + data_acidente + "' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE data_acidente = '" + data_acidente + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes WHERE data_acidente = '" + data_acidente + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE data_acidente = '" + data_acidente + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
}
@@ -374,22 +376,22 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
else if(por != null)
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
@@ -397,22 +399,22 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
else
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
@@ -431,22 +433,22 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
else if(por != null)
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
@@ -454,22 +456,22 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
else
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE data_acidente >= '" + data_acidente_from + "' AND data_acidente <= '" + data_acidente_to + "' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
}
@@ -480,22 +482,22 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND (numero_mecanografico LIKE '%" + por + "%' OR nome LIKE '%" + nome + "%') AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
else if(por != null)
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND numero_mecanografico LIKE '%" + por + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
@@ -503,11 +505,11 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes, acidentados WHERE acidentado_id = acidentados.id AND nome LIKE '%" + nome + "%' AND estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
@@ -515,11 +517,11 @@ public class AnalisesDataProvider {
{
if(estabelecimento_id == null)
{
- sql = "SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND apagada = 'n' ORDER BY analise_nr";
}
else
{
- sql = "SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " ORDER BY analise_nr";
+ sql = "SELECT * FROM analises_acidentes WHERE estado = " + Global.ESTADO_CONCLUIDO + " AND estabelecimento_id = " + estabelecimento_id + " AND apagada = 'n' ORDER BY analise_nr";
}
}
@@ -545,16 +547,17 @@ public class AnalisesDataProvider {
{
AnaliseAcidente a = new AnaliseAcidente();
a.setId(new Integer(rs.getInt("id")));
- //System.out.println("ANALISE ID : " + a.getId());
+
nr++;
a.setNr(new Integer(nr));
a.setData_acidente(rs.getDate("data_acidente"));
a.setEmpresa_id(new Integer(rs.getInt("empresa_id")));
a.setEstabelecimento_id(new Integer(rs.getInt("estabelecimento_id")));
- String sqllocal1 = "SELECT nome_plain FROM estabelecimentos WHERE id = " + a.getEstabelecimento_id();
+ String sqllocal1 = "SELECT nome FROM estabelecimentos WHERE id = " + a.getEstabelecimento_id();
ResultSet rslocal1 = stlocal1.executeQuery(sqllocal1);
rslocal1.first();
- a.setNome_estabelecimento(rslocal1.getString("nome_plain"));
+ a.setNome_estabelecimento( utils.Utils.unicodeToHTML( rslocal1.getString("nome") ) );
+
a.setEstado(new Integer(rs.getInt("estado")));
a.setEstado_assinatura(new Integer(rs.getInt("estado_assinatura")));
a.setFase(getFase(a.getEstado().intValue()));
@@ -1261,7 +1264,7 @@ public class AnalisesDataProvider {
//String seq_str = new Integer(10000 + newId.intValue()).toString();
int i_analise_nr = c.getLast_analise_nr().intValue() + 1;
c.setLast_analise_nr(new Integer(i_analise_nr));
- updateControle(c);
+ //updateControle(c);
String seq_str = new Integer(10000 + i_analise_nr).toString();
String ano_str = new Integer(ano).toString();
String analise_nr = ano_str.substring(2) + "/" + seq_str.substring(1);
@@ -1329,7 +1332,7 @@ public class AnalisesDataProvider {
// sql += a.getNr_relatorio_acidente_outros_colaboradores4() + ")";
System.out.println("SQL : " + sql);
st.execute(sql);
-
+ updateControle(c);
return a;
}
@@ -1588,11 +1591,27 @@ public class AnalisesDataProvider {
public void deleteRecomendacoesByAnalise(Integer analise_id) throws Exception
{
+ System.out.println("DELETE RECOMENDACOES");
Statement st = createStatement();
String sql = "DELETE FROM recomendacoes WHERE analise_id = " + analise_id;
st.execute(sql);
}
+ public void deleteAnaliseAcidente(Integer analise_id) throws Exception
+ {
+ Statement st = createStatement();
+ //String sql = "DELETE FROM analises_acidentes WHERE id = " + analise_id;
+ String sql = "UPDATE analises_acidentes SET apagada = 'y' WHERE id = " + analise_id;
+ st.execute(sql);
+ }
+
+ public void deleteAcidentado(Integer acidentado_id) throws Exception
+ {
+ Statement st = createStatement();
+ String sql = "DELETE FROM acidentados WHERE id = " + acidentado_id;
+ st.execute(sql);
+ }
+
public ArrayList getRecomendacoesByAnalise(Integer analiseId) throws Exception
{
ArrayList list = new ArrayList();
@@ -2107,7 +2126,7 @@ public class AnalisesDataProvider {
}
else if(estado == Global.ESTADO_ASSINATURA_RH)
{
- return "FASE 7 - RH - VERIFICAÇÃO RH + IMPRESSÃO";
+ return "FASE 7 - RH - VERIFICAÇÃO RH";
}
else if(estado == Global.ESTADO_FECHAR)
{
@@ -2116,6 +2135,26 @@ public class AnalisesDataProvider {
return null;
}
+ public HashMap getMetaData(String table) throws Exception
+ {
+ Statement st = createStatement();
+ String sql = "select * from " + table;
+
+ ResultSet rs = st.executeQuery(sql);
+ ResultSetMetaData rsmd = rs.getMetaData();
+
+ HashMap hash = new HashMap();
+ int cols = rsmd.getColumnCount();
+
+ for(int i=0; i < cols; i++)
+ {
+ String field = rsmd.getColumnName(i + 1);
+ int len = rsmd.getPrecision(i+1);
+ hash.put(field, new Integer(len));
+ }
+ return hash;
+ }
+
private Statement createStatement()
{
Db db = new Db();
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/db/Dblocal.java b/trunk/AnaliseAcidentesTrabalho/src/java/db/Dblocal.java
index 35445a1f..01b72382 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/db/Dblocal.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/db/Dblocal.java
@@ -21,7 +21,7 @@ import javax.servlet.http.HttpSession;
* @author lluis
*/
public class Dblocal {
- //String connectionURL = "jdbc:postgresql://storage:5432/siprp_local"; //testes
+ //String connectionURL = "jdbc:postgresql://storage/siprp_local"; //testes
String connectionURL = "jdbc:postgresql://localhost:5436/siprp_local_3";
String User = "postgres";
String Pass = null;
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/db/UtilizadoresDataProvider.java b/trunk/AnaliseAcidentesTrabalho/src/java/db/UtilizadoresDataProvider.java
index e9e6411f..6dac62c1 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/db/UtilizadoresDataProvider.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/db/UtilizadoresDataProvider.java
@@ -171,18 +171,23 @@ public class UtilizadoresDataProvider {
return u;
}
- public ArrayList getUtilizadoresListByTipo(Integer tipo, String responsavel_loja) throws Exception
+ public ArrayList getUtilizadoresListByTipo(Integer tipo, String responsavel_loja, Integer estabelecimento_id) throws Exception
{
ArrayList list = new ArrayList();
Statement st = createStatement();
String sql = "";
+ String estabelecimento_constraint = "";
+ if(tipo.intValue() == Global.TIPO_UTILIZADOR_RH || tipo.intValue() == Global.TIPO_UTILIZADOR_SEGURANCA)
+ {
+ estabelecimento_constraint = " AND estabelecimento_id = " + estabelecimento_id;
+ }
if(responsavel_loja.matches("y"))
{
- sql = "SELECT * FROM utilizadores WHERE responsavel_loja = 'y' AND tipo = " + tipo;
+ sql = "SELECT * FROM utilizadores WHERE activo = 'y' AND apagado = 'n' AND responsavel_loja = 'y' AND tipo = " + tipo + estabelecimento_constraint;
}
else
{
- sql = "SELECT * FROM utilizadores WHERE tipo = " + tipo;
+ sql = "SELECT * FROM utilizadores WHERE activo = 'y' AND apagado = 'n' AND tipo = " + tipo + estabelecimento_constraint;
}
ResultSet rs = st.executeQuery(sql);
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/global/Global.java b/trunk/AnaliseAcidentesTrabalho/src/java/global/Global.java
index 77dac1ad..03b6915b 100755
--- a/trunk/AnaliseAcidentesTrabalho/src/java/global/Global.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/global/Global.java
@@ -14,6 +14,10 @@ import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
+import javax.faces.context.FacesContext;
+import javax.servlet.ServletContext;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
/**
*
@@ -52,10 +56,13 @@ public class Global {
public final static String SERVIDOR_SMTP = "smtp.netcabo.pt";
public final static String SERVIDOR_SMTP_PASSWORD = "EVOLUTE";
public final static String ENDERECO_ENVIO = "acidentes.auchan@siprp.pt";
+ //public final static String ENDERECO_ENVIO = "lluis@evolute.pt"; //testes
public final static String IMAGE_FOLDER = "/home/siprp/imagens_acidentes";
//public final static String IMAGE_FOLDER = "/home/lluis/imagens_acidentes";
- public final static String RESOURCES_IMAGE_FOLDER = "/resources/images";
+ public final static String RESOURCES_IMAGE_FOLDER = "/resources/images";
+
+ public static final String PDF_FOLDER_URL = "/resources/pdf";
/** Creates a new instance of Global */
public Global() {
}
@@ -94,4 +101,34 @@ public class Global {
}
}
+ public void showPdf(String pdfFilePath) throws Exception
+ {
+
+ File pdfFile = new File(pdfFilePath);
+ FileInputStream fis = new FileInputStream(pdfFile);
+ byte[] buf = new byte[(int)pdfFile.length()];
+ while ((fis.read(buf)) > 0)
+ {
+ //fos.write(buf, 0, buf.length);
+ }
+ fis.close();
+ FacesContext ctx = FacesContext.getCurrentInstance();
+ if (!ctx.getResponseComplete())
+ {
+ HttpServletResponse response = (HttpServletResponse)ctx.getExternalContext().getResponse();
+ String contentType = "application/pdf";
+ response.setContentType(contentType);
+ response.setHeader("Content-Disposition","attachment;filename=\"" + "Ajuda.pdf" + "\"");
+
+ ServletOutputStream out = response.getOutputStream();
+
+ //out.write(model.getInfo().getBytes());
+ out.write(buf, 0, buf.length);
+ out.flush();
+ out.close();
+ ctx.responseComplete();
+ ctx.release();
+ }
+ }
+
}
diff --git a/trunk/AnaliseAcidentesTrabalho/src/java/utils/Utils.java b/trunk/AnaliseAcidentesTrabalho/src/java/utils/Utils.java
index 27393896..41576f84 100644
--- a/trunk/AnaliseAcidentesTrabalho/src/java/utils/Utils.java
+++ b/trunk/AnaliseAcidentesTrabalho/src/java/utils/Utils.java
@@ -149,8 +149,13 @@ public class Utils {
public static boolean isValidEmail(String email){
boolean res = true;
-
+ System.out.println("IS VALID EMAIL");
int indexOfAtChar=email.indexOf("@");
+
+ if(!isValidEmailCharacters(email))
+ {
+ return false;
+ }
if(indexOfAtChar > 0)
{
@@ -169,7 +174,148 @@ public class Utils {
res = false;
}
return res;
- }
+ }
+
+ private static boolean isValidEmailCharacters(String email)
+ {
+ if(email.indexOf("à") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("á") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ã") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("â") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("è") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("é") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ê") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ì") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("í") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ò") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ó") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ô") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("õ") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ù") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ú") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("û") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("ç") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("À") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Á") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ã") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Â") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("È") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("É") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ê") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ì") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Í") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ò") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ó") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ô") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Õ") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ù") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ú") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Û") != -1)
+ {
+ return false;
+ }
+ else if(email.indexOf("Ç") != -1)
+ {
+ return false;
+ }
+ return true;
+ }
public static String dateToYYYYMMDD(Date ddate)
{
diff --git a/trunk/AnaliseAcidentesTrabalho/web/AnaliseAcidenteTrabalho.jsp b/trunk/AnaliseAcidentesTrabalho/web/AnaliseAcidenteTrabalho.jsp
index 4dbf4591..b195b1ab 100644
--- a/trunk/AnaliseAcidentesTrabalho/web/AnaliseAcidenteTrabalho.jsp
+++ b/trunk/AnaliseAcidentesTrabalho/web/AnaliseAcidenteTrabalho.jsp
@@ -9,19 +9,15 @@
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
diff --git a/trunk/AnaliseAcidentesTrabalho/web/EnviarCorrecao.jsp b/trunk/AnaliseAcidentesTrabalho/web/EnviarCorrecao.jsp
index dfe1bbd0..6c5e59b1 100644
--- a/trunk/AnaliseAcidentesTrabalho/web/EnviarCorrecao.jsp
+++ b/trunk/AnaliseAcidentesTrabalho/web/EnviarCorrecao.jsp
@@ -6,6 +6,18 @@
+
@@ -18,17 +30,20 @@
-
+
+ id="lnkNewUser1" style="" text="gerir utilizadores"/>
+
+
@@ -36,6 +51,10 @@
style="height: 15px; position: relative; vertical-align: top; width: 100%" styleClass="centerBlock">
+
+
+
@@ -49,10 +68,12 @@
-
+
+
diff --git a/trunk/AnaliseAcidentesTrabalho/web/FichaUtilizador.jsp b/trunk/AnaliseAcidentesTrabalho/web/FichaUtilizador.jsp
index dbb99a29..2e6b390c 100644
--- a/trunk/AnaliseAcidentesTrabalho/web/FichaUtilizador.jsp
+++ b/trunk/AnaliseAcidentesTrabalho/web/FichaUtilizador.jsp
@@ -7,6 +7,18 @@
@@ -25,10 +37,13 @@
disabled="true" id="lnkAnalisesAcidente1" text="analisar acidentes"/>
+ id="lnkGerirUtilizadores" style="" text="gerir utilizadores"/>
+
+
@@ -52,6 +67,11 @@
+
+
+
@@ -67,7 +87,7 @@
+ id="lnkFaseSeg" style="height: 24px" text="#{currentRow.value['fase']}"/>
@@ -125,6 +145,11 @@
+
+
+
+
@@ -24,14 +36,20 @@
-
+
+
+
+
+
+
+
+
+
@@ -67,7 +90,11 @@
+ id="lnkFaseSeg" style="height: 24px" text="#{currentRow.value['fase']}"/>
+
+
+
@@ -125,6 +152,11 @@
+
+
+
+
@@ -25,10 +37,13 @@
disabled="true" id="lnkAnalisesAcidente1" text="analisar acidentes"/>
+ disabled="true" id="lnkGerirUtilizadores" style="" text="gerir utilizadores"/>
+
+
@@ -48,10 +63,15 @@
+ sort="data_acidente" style="width: 10%" width="477">
+
+
+
@@ -67,7 +87,11 @@
+ id="lnkFaseSeg" style="height: 24px" text="#{currentRow.value['fase']}"/>
+
+
+
@@ -117,7 +141,7 @@
+ styleClass="centerBlock" width="590">
+
+
+
+
@@ -18,20 +30,27 @@
-
+
+ style="" text="gerir utilizadores"/>
+
+
+
+
+
+ styleClass="centerBlock" width="933">
+
+
+
@@ -60,13 +84,17 @@
+ sort="nome_acidentado" style="width: 25%" width="25%">
+ style="height: 24px" text="#{currentRow.value['fase']}"/>
+
+
+
@@ -90,6 +118,11 @@
+
+
+
@@ -104,7 +137,11 @@
+ style="height: 24px" text="#{currentRow.value['fase']}"/>
+
+
+
@@ -158,6 +195,11 @@
+
+
+
diff --git a/trunk/AnaliseAcidentesTrabalho/web/FormRH.jsp b/trunk/AnaliseAcidentesTrabalho/web/FormRH.jsp
index b0b06b14..d952f289 100644
--- a/trunk/AnaliseAcidentesTrabalho/web/FormRH.jsp
+++ b/trunk/AnaliseAcidentesTrabalho/web/FormRH.jsp
@@ -6,6 +6,18 @@
+
@@ -18,20 +30,27 @@
-
+
+ style="" text="gerir utilizadores"/>
+
+
+
+
+
+
+
+
@@ -66,7 +90,7 @@
+ style="height: 24px" text="#{currentRow.value['fase']}"/>
@@ -90,6 +114,11 @@
+
+
+
@@ -104,7 +133,7 @@
+ style="height: 24px" text="#{currentRow.value['fase']}"/>
@@ -161,6 +190,11 @@
+
+
+
+
@@ -19,7 +31,7 @@
-
+
+
+
+
+
+
+ styleClass="centerBlock" width="816">
+
+
+
@@ -66,13 +90,13 @@
style="" text="#{currentRow.value['numero_mecanografico']}"/>
+ sort="nome_acidentado" style="width=40%">
+ style="height: 24px" text="#{currentRow.value['fase']}"/>
@@ -88,7 +112,7 @@
+ styleClass="centerBlock" width="816">
+
+
+
+ sort="nome_acidentado" style="width: 40%" width="40%">
+ id="lnkFaseSeg" style="height: 24px" text="#{currentRow.value['fase']}"/>
@@ -163,7 +192,7 @@
+ styleClass="centerBlock" width="816">
+
+
+
+ sort="nome_acidentado" style="width: 70%" width="50%">
diff --git a/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp b/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp
index 6a08d215..87041ccd 100644
--- a/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp
+++ b/trunk/AnaliseAcidentesTrabalho/web/GestaoUtilizadores.jsp
@@ -7,6 +7,18 @@
-
+
@@ -15,18 +45,21 @@
styleClass="centerBlock" width="456">
-
-
+
+
@@ -429,6 +464,8 @@
+
+
diff --git a/trunk/AnaliseAcidentesTrabalho/web/resources/pdfs/Ajuda.pdf b/trunk/AnaliseAcidentesTrabalho/web/resources/pdfs/Ajuda.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..3adf0eee4ffeacb466ac532ad8b53a8b1ffb94b5
GIT binary patch
literal 2818927
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