iter = riscosVector.iterator();
+ while(iter.hasNext())
+ {
+ Risco r = iter.next();
+ pagina = new Pagina();
+ pagina.setId("risco" + r.getId().toString());
+ //pagina.setRisco_id(r.getId());
+ i++;
+ pagina.setPage_nr(i);
+ if(i == current_page)
+ {
+ pagina.setDisabled(true);
+ }
+ pagina.setText(i);
+ paginas.add(pagina);
+ }
+
+ if(current_page < TOTAL_PAGINAS)
+ {
+ pagina = new Pagina();
+ pagina.setId("next");
+ pagina.setNext(new Boolean(true));
+ pagina.setText(">>");
+ paginas.add(pagina);
+ }
+
+ return paginas;
+ }
+
+ public Risco getRisco(Pagina p)
+ {
+ Integer risco_id = null;
+ if(p.isNext())
+ {
+ current_page++;
+ }
+ else if(p.isPrevious())
+ {
+ current_page--;
+ }
+ else
+ {
+ current_page = p.getPage_nr().intValue();
+ }
+
+ return riscosVector.get(current_page-1);
+ }
+
+ public Risco nextRisco()
+ {
+ Risco r = null;
+
+ if( current_page < TOTAL_PAGINAS)
+ {
+ current_page++;
+ r = riscosVector.get(current_page-1);
+ }
+
+ return r;
+ }
+
+ public int totalPaginas()
+ {
+ return TOTAL_PAGINAS;
+ }
+
+ private void initialize(PlanoActuacao p)
+ {
+ for(Area a : p.getAreas())
+ {
+ for(Risco r : a.getRiscos())
+ {
+ riscosVector.add(r);
+ }
+ }
+ TOTAL_PAGINAS = riscosVector.size();
+ }
+
+}
diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/Dummy.java b/trunk/PlanosActuacao/src/java/planosactuacao/Dummy.java
index 8e49ecac..c93e80d8 100644
--- a/trunk/PlanosActuacao/src/java/planosactuacao/Dummy.java
+++ b/trunk/PlanosActuacao/src/java/planosactuacao/Dummy.java
@@ -7,15 +7,13 @@
package planosactuacao;
import com.sun.rave.web.ui.appbase.AbstractPageBean;
-import com.sun.webui.jsf.component.Calendar;
-import com.sun.webui.jsf.component.TextArea;
-import com.sun.webui.jsf.component.TextField;
-import com.sun.webui.jsf.model.DefaultOptionsList;
-import com.sun.webui.jsf.model.DefaultTableDataProvider;
-import com.sun.webui.jsf.model.SingleSelectOptionsList;
-import javax.faces.component.html.HtmlPanelGrid;
-import tabledataproviders.*;
+import com.sun.webui.jsf.component.Hyperlink;
+import com.sun.webui.jsf.component.PanelGroup;
+
+import javax.el.MethodExpression;
import javax.faces.FacesException;
+import javax.faces.event.ActionEvent;
+import javax.faces.event.MethodExpressionActionListener;
/**
* Page bean that corresponds to a similarly named JSP page. This
@@ -36,23 +34,14 @@ public class Dummy extends AbstractPageBean {
*/
private void _init() throws Exception {
}
- private HtmlPanelGrid grid = new HtmlPanelGrid();
-
- public HtmlPanelGrid getGrid() {
- return grid;
- }
-
- public void setGrid(HtmlPanelGrid hpg) {
- this.grid = hpg;
- }
- private SingleSelectOptionsList dropDown1DefaultOptions = new SingleSelectOptionsList();
+ private PanelGroup pgLink = new PanelGroup();
- public SingleSelectOptionsList getDropDown1DefaultOptions() {
- return dropDown1DefaultOptions;
+ public PanelGroup getPgLink() {
+ return pgLink;
}
- public void setDropDown1DefaultOptions(SingleSelectOptionsList ssol) {
- this.dropDown1DefaultOptions = ssol;
+ public void setPgLink(PanelGroup pg) {
+ this.pgLink = pg;
}
//
@@ -120,10 +109,16 @@ public class Dummy extends AbstractPageBean {
*/
@Override
public void prerender() {
- Calendar cal = new Calendar();
- cal.setDateFormatPattern("dd-MM-yyyy");
+ Hyperlink lnk = new Hyperlink();
+ lnk.setText("HERE");
+ pgLink.getChildren().add(lnk);
- grid.getChildren().add(cal);
+ Class[] argtypes = new Class[1];
+ argtypes[0] = ActionEvent.class;
+ MethodExpression me = (MethodExpression)this.getApplication().getExpressionFactory().createMethodExpression(
+ getFacesContext().getELContext(), "#{Dummy.lnk_actionListener}", null,argtypes);
+ lnk.addActionListener(new MethodExpressionActionListener(me));
+
}
/**
@@ -171,11 +166,12 @@ public class Dummy extends AbstractPageBean {
return null;
}
- public String lnkLogout_action() {
+ public void lnk_actionListener(ActionEvent e) {
// TODO: Process the action. Return value is a navigation
// case name where null will return to the same page.
- return null;
+ System.out.print("DUMMY LINK");
}
+
}
diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java b/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java
index 6378e0a4..dff6530b 100644
--- a/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java
+++ b/trunk/PlanosActuacao/src/java/planosactuacao/EditarPlano.java
@@ -26,14 +26,21 @@ import db.entidades.Utilizador;
import db.entidades.Valor;
import db.providers.PlanosDataProvider;
import global.Global;
+import java.util.HashMap;
+import java.util.Iterator;
import java.util.List;
import java.util.Vector;
+import javax.el.MethodExpression;
import javax.faces.FacesException;
import javax.faces.component.html.HtmlInputHidden;
import javax.faces.component.html.HtmlPanelGrid;
import javax.faces.context.FacesContext;
+import javax.faces.event.ActionEvent;
+import javax.faces.event.MethodExpressionActionListener;
import javax.faces.event.ValueChangeEvent;
import mail.Mail;
+import pagination.Pagina;
+import pagination.Pagination;
import utils.JSFUtils;
/**
@@ -57,6 +64,7 @@ public class EditarPlano extends AbstractPageBean {
}
//
+ PlanosDataProvider pdp = new PlanosDataProvider();
HtmlPanelGrid grid;
PanelGroup pg;
StaticText st;
@@ -64,9 +72,6 @@ public class EditarPlano extends AbstractPageBean {
//Plano actuacao
PlanoActuacao plano;
- Vector medidas = new Vector();
- Vector riscos = new Vector();
- Vector postos = new Vector();
HtmlPanelGrid gridPlano = new HtmlPanelGrid();
HtmlPanelGrid gridArea;
@@ -74,6 +79,7 @@ public class EditarPlano extends AbstractPageBean {
HtmlPanelGrid gridValor;
HtmlPanelGrid gridMedida;
HtmlPanelGrid gridPosto;
+ HtmlPanelGrid gridResponsavel;
@@ -86,6 +92,7 @@ public class EditarPlano extends AbstractPageBean {
TextArea txtRecursos;
Calendar dtInicio;
Calendar dtFim;
+
public HtmlPanelGrid getGridLayout() {
return gridLayout;
@@ -220,6 +227,24 @@ public class EditarPlano extends AbstractPageBean {
public void setLblTop(StaticText st) {
this.lblTop = st;
}
+ private PanelGroup grpPagination = new PanelGroup();
+
+ public PanelGroup getGrpPagination() {
+ return grpPagination;
+ }
+
+ public void setGrpPagination(PanelGroup pg) {
+ this.grpPagination = pg;
+ }
+ private HtmlPanelGrid gridPagination = new HtmlPanelGrid();
+
+ public HtmlPanelGrid getGridPagination() {
+ return gridPagination;
+ }
+
+ public void setGridPagination(HtmlPanelGrid hpg) {
+ this.gridPagination = hpg;
+ }
/**
* Construct a new Page bean instance.
@@ -295,22 +320,18 @@ public class EditarPlano extends AbstractPageBean {
//boolean isPostback = JSFUtils.isPostBack12(fc);
//boolean isPostback = JSFUtils.isPostBack(fc);
boolean isPostback = JSFUtils.isPostback();
- System.out.println("POSTBACK : " + isPostback);
+ System.out.println("POSTBACK : " + isPostback);
+ PlanoActuacao p = getSessionBean1().getPlanoActuacao();
+ getRiscosByPlano(p);
if(!isPostback)
{
- PlanoActuacao p = getSessionBean1().getPlanoActuacao();
//initializePlano();
initialize(p);
showPlano(p);
//fillPlano();
}
- else
- {
- riscos = getSessionBean1().getRiscos();
- medidas = getSessionBean1().getMedidas();
- postos = getSessionBean1().getPostos();
- }
-
+ //setPagination(p);
+ setPagination();
lblMsg.setText(getSessionBean1().getMsg());
getSessionBean1().setMsg("");
}
@@ -360,219 +381,14 @@ public class EditarPlano extends AbstractPageBean {
return "lista_planos";
}
-// private void fillPlano()
-// {
-// String indent = " ";
-// Risco r = getNextRisco(plano.getId());
-// fillRisco(r);
-// }
-//
-// private void fillRisco(Risco r)
-// {
-// String indent = " ";
-// if(gridLayout.getChildren().size() > 0)
-// {
-// gridLayout.getChildren().clear();
-// }
-// gridRisco = new HtmlPanelGrid();
-// gridRisco.setWidth("100%");
-// gridRisco.setStyle("border: solid 1px #000000");
-// gridRisco.setColumns(1);
-// gridRisco.setColumnClasses("gridColLeft");
-//
-// pg = new PanelGroup();
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setStyle("color: #2c4d7a");
-// st.setText("RISCO 1" + ": ");
-// pg.getChildren().add(st);
-// st = new StaticText();
-// st.setEscape(false);
-// st.setText(r.getDescricao());
-// pg.getChildren().add(st);
-// gridRisco.getChildren().add(pg);
-//
-// st = new StaticText();
-// st.setEscape(false);
-// st.setText(" ");
-// gridRisco.getChildren().add(st);
-//
-// pg = new PanelGroup();
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setText("Valor:" + " ");
-// pg.getChildren().add(st);
-// st = new StaticText();
-// st.setEscape(false);
-// st.setText(r.getValor().toString());
-// pg.getChildren().add(st);
-// gridRisco.getChildren().add(pg);
-//
-// st = new StaticText();
-// st.setEscape(false);
-// st.setText(" ");
-// gridRisco.getChildren().add(st);
-//
-// //medidas
-// Vector meds = getMedidas(r.getId());
-// for(int i = 0; i < meds.size(); i++)
-// {
-// Medida m = medidas.get(i);
-// if(m.getRisco_id().intValue() == r.getId().intValue())
-// {
-// pg = new PanelGroup();
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setText(indent + "Medida" + ": ");
-// pg.getChildren().add(st);
-// st = new StaticText();
-// st.setEscape(false);
-// st.setText(m.getDescricao());
-// pg.getChildren().add(st);
-// gridRisco.getChildren().add(pg);
-//
-// //postos trabalho
-// Vector posts = getPostosTrabalho(m.getId());
-// pg = new PanelGroup();
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setText(indent + indent + "Postos de trabalho afectados" + ": ");
-// pg.getChildren().add(st);
-// st = new StaticText();
-// st.setEscape(false);
-// String spostos = "";
-// for(int j = 0; j < posts.size(); j++)
-// {
-// PostoTrabalho p = posts.get(j);
-// spostos += p.getDescricao(); // + " ";
-// if(j < (posts.size() -1) )
-// {
-// spostos += "; ";
-// }
-// }
-// st.setText(spostos);
-// pg.getChildren().add(st);
-// gridRisco.getChildren().add(pg);
-// }
-// }
-//
-// st = new StaticText();
-// st.setEscape(false);
-// st.setText(" ");
-// gridRisco.getChildren().add(st);
-//
-// pg = new PanelGroup();
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setText("Responsável de execução:");
-// pg.getChildren().add(st);
-// txtResponsavelExecucao = new TextField();
-// txtResponsavelExecucao.setColumns(100);
-// pg.getChildren().add(txtResponsavelExecucao);
-// gridRisco.getChildren().add(pg);
-// pg = new PanelGroup();
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setText("Recursos necessários à implementação da medida:");
-// pg.getChildren().add(st);
-// gridRisco.getChildren().add(pg);
-// txtRecursos = new TextArea();
-// txtRecursos.setColumns(200);
-// gridRisco.getChildren().add(txtRecursos);
-//
-// HtmlPanelGrid grd = new HtmlPanelGrid();
-// grd.setColumns(2);
-// grd.setColumnClasses("gridCol15, gridCol85");
-// grd.setId("pgDtInicio");
-// grd.setStyle("width: 100%");
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setText("Data prevista de início:");
-// grd.getChildren().add(st);
-// dtInicio = new Calendar();
-// grd.getChildren().add(dtInicio);
-// gridRisco.getChildren().add(grd);
-//
-// grd = new HtmlPanelGrid();
-// grd.setColumns(2);
-// grd.setColumnClasses("gridCol15, gridCol85");
-// grd.setId("pgDtFim");
-// grd.setStyle("width: 100%");
-// st = new StaticText();
-// st.setEscape(false);
-// st.setStyleClass("label");
-// st.setText("Data prevista de conclusão:");
-// grd.getChildren().add(st);
-// dtFim = new Calendar();
-//
-// grd.getChildren().add(dtFim);
-// gridRisco.getChildren().add(grd);
-//
-// gridLayout.getChildren().add(gridRisco);
-//
-// }
-// private Risco getNextRisco(Integer planoId)
-// {
-// System.out.println("GET NEXT RISCO");
-// System.out.println("RISCOS SIZE : " + riscos.size());
-// riscos = getSessionBean1().getRiscos();
-// risco_id = getSessionBean1().getRiscosIdx();
-// Risco r = riscos.get(risco_id);
-// if(r != null)
-// {
-// if(r.getPlano_id().intValue() != planoId.intValue())
-// {
-// r = null;
-// risco_id = 0;
-// }
-// }
-// risco_id++;
-// getSessionBean1().setRiscosIdx(risco_id);
-// return r;
-// }
-
-// private Vector getMedidas(Integer riscoId)
-// {
-// Vector meds = new Vector();
-// medidas = getSessionBean1().getMedidas();
-// for(int i = 0; i < medidas.size(); i++)
-// {
-// Medida m = medidas.get(i);
-// if(m.getRisco_id().intValue() == riscoId.intValue())
-// {
-// meds.add(m);
-// }
-// }
-// return meds;
-// }
-
- private Vector getPostosTrabalho(Integer medidaId)
- {
- Vector posts = new Vector();
- postos = getSessionBean1().getPostos();
- for(int i = 0; i < postos.size(); i++)
- {
- PostoTrabalho p = postos.get(i);
- if(p.getMedida_id().intValue() == medidaId.intValue())
- {
- posts.add(p);
- }
- }
- return posts;
- }
-
private void initialize(PlanoActuacao p)
{
+ //getSessionBean1().setPaginationPageNr(1);
+ Pagination pagination = new Pagination(p);
+ getSessionBean1().setPagination(pagination);
Utilizador u = getSessionBean1().getCurrentUser();
if(u.getTipo().intValue() == Global.DIRECTOR_NACIONAL_SEGURANCA)
{
@@ -585,12 +401,9 @@ public class EditarPlano extends AbstractPageBean {
//gridValidar.setStyleClass("hidden");
- //System.out.println("VISIBILITY : " + gridValidar.getStyleClass());
- //System.out.println("USER TYPE : " + u.getTipo().intValue());
if(u.getTipo().intValue() != Global.DIRECTOR_LOJA && u.getTipo().intValue() != Global.DIRECTOR_NACIONAL_SEGURANCA)
{
//gridValidar.setStyleClass("visible");
- //System.out.println("VISIBILITY B : " + gridValidar.getStyleClass());
gridValidar.setRendered(false);
//txtParecer.setStyleClass("hidden");
}
@@ -636,6 +449,7 @@ public class EditarPlano extends AbstractPageBean {
break;
}
+ gridPlano.setId("gridPlano");
gridPlano.setWidth("100%");
gridPlano.setColumns(1);
gridPlano.setColumnClasses("gridColCenter");
@@ -647,6 +461,7 @@ public class EditarPlano extends AbstractPageBean {
private void showPlano(PlanoActuacao p)
{
gridArea = new HtmlPanelGrid();
+ gridArea.setId("gridArea");
gridArea.setColumns(1);
gridArea.setColumnClasses("gridColLeft");
gridArea.setWidth("100%");
@@ -654,7 +469,15 @@ public class EditarPlano extends AbstractPageBean {
gridPlano.getChildren().add(gridArea);
Area a = p.getAreas().get(0);
-
+ showArea(a);
+ Risco r = a.getRiscos().get(0);
+ showRisco(r);
+ showValores(r);
+ showResponsavel(r);
+ }
+
+ private void showArea(Area a)
+ {
pg = new PanelGroup();
st = new StaticText();
st.setEscape(false);
@@ -662,13 +485,18 @@ public class EditarPlano extends AbstractPageBean {
pg.getChildren().add(st);
gridArea.getChildren().add(pg);
+
+ }
+
+ private void showRisco(Risco r)
+ {
+ getSessionBean1().setCurrentRisco(r);
HtmlPanelGrid grd = new HtmlPanelGrid();
grd.setColumns(1);
grd.setWidth("100%");
grd.setStyleClass("centerBlock");
- gridArea.getChildren().add(grd);
+ gridArea.getChildren().add(grd);
- //Risco
gridRisco = new HtmlPanelGrid();
gridRisco.setStyleClass("centerBlock");
gridRisco.setWidth("98%");
@@ -676,7 +504,6 @@ public class EditarPlano extends AbstractPageBean {
gridRisco.setColumnClasses("gridColLeft");
grd.getChildren().add(gridRisco);
- Risco r = a.getRiscos().get(0);
pg = new PanelGroup();
st = new StaticText();
st.setEscape(false);
@@ -684,15 +511,6 @@ public class EditarPlano extends AbstractPageBean {
pg.getChildren().add(st);
gridRisco.getChildren().add(pg);
- showValores(r);
-
-
- gridMedida = new HtmlPanelGrid();
- gridMedida.setStyleClass("centerBlock");
- gridMedida.setWidth("98%");
- gridMedida.setColumns(1);
- gridMedida.setColumnClasses("gridColLeft");
- grd.getChildren().add(gridMedida);
}
private void showValores(Risco r)
@@ -781,7 +599,123 @@ public class EditarPlano extends AbstractPageBean {
}
}
+
+ private void showResponsavel(Risco r)
+ {
+ gridResponsavel = new HtmlPanelGrid();
+ gridResponsavel.setId("gridResponsavel");
+ gridResponsavel.setWidth("100%");
+ gridResponsavel.setColumns(1);
+ gridResponsavel.setColumnClasses("gridColLeft");
+ gridArea.getChildren().add(gridResponsavel);
+
+ pg = new PanelGroup();
+ pg.setId("pgResponsavel");
+ st = new StaticText();
+ st.setEscape(false);
+ st.setStyleClass("label");
+ st.setText("Responsável de execução:");
+ pg.getChildren().add(st);
+ txtResponsavelExecucao = new TextField();
+ txtResponsavelExecucao.setId("txtResponsavel");
+ txtResponsavelExecucao.setColumns(100);
+ pg.getChildren().add(txtResponsavelExecucao);
+ gridResponsavel.getChildren().add(pg);
+ pg = new PanelGroup();
+ st = new StaticText();
+ st.setEscape(false);
+ st.setStyleClass("label");
+ st.setText("Recursos necessários à implementação da medida:");
+ pg.getChildren().add(st);
+ gridResponsavel.getChildren().add(pg);
+ txtRecursos = new TextArea();
+ txtRecursos.setId("txtRecursos");
+ txtRecursos.setColumns(200);
+ gridResponsavel.getChildren().add(txtRecursos);
+
+ HtmlPanelGrid grd = new HtmlPanelGrid();
+ grd.setColumns(2);
+ grd.setColumnClasses("gridCol15, gridCol85");
+ grd.setId("pgDtInicio");
+ grd.setStyle("width: 100%");
+ st = new StaticText();
+ st.setEscape(false);
+ st.setStyleClass("label");
+ st.setText("Data prevista de início:");
+ grd.getChildren().add(st);
+ dtInicio = new Calendar();
+ dtInicio.setId("dtInicio");
+ grd.getChildren().add(dtInicio);
+ gridResponsavel.getChildren().add(grd);
+
+ grd = new HtmlPanelGrid();
+ grd.setColumns(2);
+ grd.setColumnClasses("gridCol15, gridCol85");
+ grd.setId("pgDtFim");
+ grd.setStyle("width: 100%");
+ st = new StaticText();
+ st.setEscape(false);
+ st.setStyleClass("label");
+ st.setText("Data prevista de conclusão:");
+ grd.getChildren().add(st);
+ dtFim = new Calendar();
+ dtFim.setId("dtFim");
+ grd.getChildren().add(dtFim);
+ gridResponsavel.getChildren().add(grd);
+ }
+
+ private void setPagination()
+ {
+ StaticText st = null;
+
+ Class[] argtypes = new Class[1];
+ argtypes[0] = ActionEvent.class;
+ MethodExpression me = (MethodExpression)this.getApplication().getExpressionFactory().createMethodExpression(
+ getFacesContext().getELContext(), "#{EditarPlano.paginacao_actionListener}", null,argtypes);
+ if(grpPagination.getChildCount() > 0)
+ {
+ grpPagination.getChildren().clear();
+ }
+
+ Pagination pagination = getSessionBean1().getPagination();
+ Vector paginas = pagination.getPaginas();
+ for(Pagina pagina : paginas)
+ {
+ if(pagina.isPrevious())
+ {
+ pagina.addActionListener(new MethodExpressionActionListener(me));
+ grpPagination.getChildren().add(pagina);
+ st = new StaticText();
+ st.setEscape(false);
+ st.setText(" ");
+ grpPagination.getChildren().add(st);
+ }
+ else if(pagina.isNext())
+ {
+ st = new StaticText();
+ st.setEscape(false);
+ st.setText(" ");
+ grpPagination.getChildren().add(st);
+ pagina.addActionListener(new MethodExpressionActionListener(me));
+ grpPagination.getChildren().add(pagina);
+ }
+ else
+ {
+ pagina.addActionListener(new MethodExpressionActionListener(me));
+ grpPagination.getChildren().add(pagina);
+ if(pagina.getPage_nr().intValue() < pagination.totalPaginas() )
+ {
+ st = new StaticText();
+ st.setEscape(false);
+ st.setText(" | ");
+ grpPagination.getChildren().add(st);
+ }
+
+ }
+ }
+ }
+
public String butGravarPlano_action() {
// TODO: Process the action. Return value is a navigation
// case name where null will return to the same page.
@@ -791,11 +725,79 @@ public class EditarPlano extends AbstractPageBean {
public String butGravarRisco_action() {
// TODO: Process the action. Return value is a navigation
// case name where null will return to the same page.
- System.out.println("BUT NEXT RISCO");
+
+ try
+ {
+ Risco r = getSessionBean1().getCurrentRisco();
+ r = fillRiscoFields(r);
+ pdp.updateRisco(r);
+
+ Pagination pagination = getSessionBean1().getPagination();
+ r = pagination.nextRisco();
+ if(r != null)
+ {
+ gridPlano = (HtmlPanelGrid) gridLayout.findComponent("form1:gridPlano");
+ gridArea = (HtmlPanelGrid) gridPlano.findComponent("form1:gridArea");
+ if(gridArea.getChildren() != null)
+ {
+ gridArea.getChildren().clear();
+ }
+ Area a = getSessionBean1().getAreasHash().get( r.getArea_id() );
+ showArea(a);
+ showRisco(r);
+ showValores(r);
+ showResponsavel(r);
+ }
+ }
+ catch(Exception ex)
+ {
+ ex.printStackTrace();
+ }
+
+
+
//Risco r = getNextRisco(getSessionBean1().getPlanoId());
//fillRisco(r);
return null;
}
+
+ private Risco fillRiscoFields(Risco r)
+ {
+ gridArea = (HtmlPanelGrid) gridPlano.findComponent("form1:gridArea");
+ gridResponsavel = (HtmlPanelGrid) gridArea.findComponent("form1:gridResponsavel");
+
+ TextField txtResponsavel = (TextField) gridResponsavel.findComponent("_form1:txtResponsavel");
+ if(txtResponsavel != null)
+ {
+ if(txtResponsavel.getText() != null)
+ {
+ r.setResponsavel_execucao((String) txtResponsavel.getText());
+ }
+ }
+
+ TextArea txtRecursos = (TextArea) gridResponsavel.findComponent("_form1:txtRecursos");
+ if(txtRecursos != null)
+ {
+ if(txtRecursos.getText() != null)
+ {
+ r.setRecursos_necessarios((String) txtRecursos.getText());
+ }
+ }
+
+ Calendar dtInicio = (Calendar) gridResponsavel.findComponent("_form1:dtInicio");
+ if(dtInicio != null)
+ {
+ r.setData_inicio(dtInicio.getSelectedDate());
+ }
+
+ Calendar dtFim = (Calendar) gridResponsavel.findComponent("_form1:dtFim");
+ if(dtFim != null)
+ {
+ r.setData_fim(dtFim.getSelectedDate());
+ }
+
+ return r;
+ }
public String butEnviar_action() {
// TODO: Process the action. Return value is a navigation
@@ -969,5 +971,43 @@ public class EditarPlano extends AbstractPageBean {
}
+
+ private void getRiscosByPlano(PlanoActuacao p)
+ {
+ HashMap areasHash = new HashMap();
+ HashMap riscosHash = new HashMap();
+
+ for(Area a : p.getAreas())
+ {
+ areasHash.put(a.getId(), a);
+ for(Risco r : a.getRiscos())
+ {
+ riscosHash.put(r.getId(), r);
+ }
+ }
+
+ getSessionBean1().setAreasHash(areasHash);
+ getSessionBean1().setRiscosHash(riscosHash);
+ }
+
+ public void paginacao_actionListener(ActionEvent e)
+ {
+ gridPlano = (HtmlPanelGrid) gridLayout.findComponent("form1:gridPlano");
+ gridArea = (HtmlPanelGrid) gridPlano.findComponent("form1:gridArea");
+ if(gridArea.getChildren() != null)
+ {
+ gridArea.getChildren().clear();
+ }
+ Pagina pagina = (Pagina) e.getSource();
+ Pagination pagination = getSessionBean1().getPagination();
+ Risco r = pagination.getRisco(pagina);
+ System.out.println("RISCO == " + r.getId().toString());
+ Area a = getSessionBean1().getAreasHash().get( r.getArea_id() );
+ showArea(a);
+ showRisco(r);
+ showValores(r);
+ showResponsavel(r);
+ }
+
}
diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java b/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java
index 33610258..052afb82 100644
--- a/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java
+++ b/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java
@@ -169,7 +169,7 @@ public class PlanosActuacao {
}
catch(Exception ex)
{
-
+ ex.printStackTrace();
}
return list;
}
@@ -183,7 +183,7 @@ public class PlanosActuacao {
}
catch(Exception ex)
{
-
+ ex.printStackTrace();
}
return list;
}
@@ -197,7 +197,7 @@ public class PlanosActuacao {
}
catch(Exception ex)
{
-
+ ex.printStackTrace();
}
return list;
}
diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/SessionBean1.java b/trunk/PlanosActuacao/src/java/planosactuacao/SessionBean1.java
index 12649777..06d90ce5 100644
--- a/trunk/PlanosActuacao/src/java/planosactuacao/SessionBean1.java
+++ b/trunk/PlanosActuacao/src/java/planosactuacao/SessionBean1.java
@@ -7,13 +7,13 @@
package planosactuacao;
import com.sun.rave.web.ui.appbase.AbstractSessionBean;
-import db.entidades.Medida;
+import db.entidades.Area;
import db.entidades.PlanoActuacao;
-import db.entidades.PostoTrabalho;
import db.entidades.Risco;
import db.entidades.Utilizador;
-import java.util.Vector;
+import java.util.HashMap;
import javax.faces.FacesException;
+import pagination.Pagination;
/**
* Session scope data bean for your application. Create properties
@@ -35,10 +35,8 @@ public class SessionBean1 extends AbstractSessionBean {
private Integer planoId;
private PlanoActuacao planoActuacao = null;
- private Vector riscos = new Vector();
- private Vector medidas = new Vector();
- private Vector postos = new Vector();
- private int riscosIdx = 0;
+ private Risco currentRisco = null;
+
private tabledataproviders.PlanosActualDataProvider planosActualDataProvider;
private tabledataproviders.PlanosSeguimentoDataProvider planosSeguimentoDataProvider;
@@ -63,6 +61,10 @@ public class SessionBean1 extends AbstractSessionBean {
//fase
private int fase = 1;
+
+ private HashMap areasHash;
+ private HashMap riscosHash;
+ private Pagination pagination = null;
/**
* Construct a new session data bean instance.
@@ -208,38 +210,6 @@ public class SessionBean1 extends AbstractSessionBean {
this.planoId = planoId;
}
- public Vector getRiscos() {
- return riscos;
- }
-
- public void setRiscos(Vector riscos) {
- this.riscos = riscos;
- }
-
- public Vector getMedidas() {
- return medidas;
- }
-
- public void setMedidas(Vector medidas) {
- this.medidas = medidas;
- }
-
- public Vector getPostos() {
- return postos;
- }
-
- public void setPostos(Vector postos) {
- this.postos = postos;
- }
-
- public int getRiscosIdx() {
- return riscosIdx;
- }
-
- public void setRiscosIdx(int riscosIdx) {
- this.riscosIdx = riscosIdx;
- }
-
public Utilizador getCurrentUser() {
return currentUser;
}
@@ -326,6 +296,39 @@ public class SessionBean1 extends AbstractSessionBean {
public void setIrParaOptions(com.sun.webui.jsf.model.Option[] irParaOptions) {
this.irParaOptions = irParaOptions;
- }
+ }
+
+ public HashMap getAreasHash() {
+ return areasHash;
+ }
+
+ public void setAreasHash(HashMap areasHash) {
+ this.areasHash = areasHash;
+ }
+
+ public HashMap getRiscosHash() {
+ return riscosHash;
+ }
+
+ public void setRiscosHash(HashMap riscosHash) {
+ this.riscosHash = riscosHash;
+ }
+
+ public Pagination getPagination() {
+ return pagination;
+ }
+
+ public void setPagination(Pagination pagination) {
+ this.pagination = pagination;
+ }
+
+ public Risco getCurrentRisco() {
+ return currentRisco;
+ }
+
+ public void setCurrentRisco(Risco currentRisco) {
+ this.currentRisco = currentRisco;
+ }
+
}
diff --git a/trunk/PlanosActuacao/web/Dummy.jsp b/trunk/PlanosActuacao/web/Dummy.jsp
index d34a1faa..e22afac6 100644
--- a/trunk/PlanosActuacao/web/Dummy.jsp
+++ b/trunk/PlanosActuacao/web/Dummy.jsp
@@ -28,21 +28,10 @@
-
-
-
-
-
-
-
-
-
+
-
-
-
-
diff --git a/trunk/PlanosActuacao/web/EditarPlano.jsp b/trunk/PlanosActuacao/web/EditarPlano.jsp
index 7d2051f0..649dfcaa 100644
--- a/trunk/PlanosActuacao/web/EditarPlano.jsp
+++ b/trunk/PlanosActuacao/web/EditarPlano.jsp
@@ -105,6 +105,10 @@
+