diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java b/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java index 26370620..6d8a3bb6 100644 --- a/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java +++ b/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java @@ -658,10 +658,9 @@ public class ListaPlanos extends AbstractPageBean public String goImprimirPlanoFromConcluidos_action() { Utilizador currentUser = getSessionBean1().getCurrentUser(); - int userType = currentUser == null ? -1 : currentUser.getTipo(); PlanoActuacao p = getTableConcluidosRowData(); - if ( !p.getConcluidoPorDesactivacao() || ( userType == Global.DIRECTOR_SIPRP ) ) + if ( canPrint( p, currentUser ) ) { createPdf( p.getId() ); } @@ -686,16 +685,22 @@ public class ListaPlanos extends AbstractPageBean public String goImprimirPlanoConcluidoPatrimoniais_action() { Utilizador currentUser = getSessionBean1().getCurrentUser(); - int userType = currentUser == null ? -1 : currentUser.getTipo(); PlanoActuacao p = getTableConcluidosRowData(); - if ( !p.getConcluidoPorDesactivacao() || ( userType == Global.DIRECTOR_SIPRP ) ) + if ( canPrint( p, currentUser ) ) { createPdf( p.getId(), true ); } return null; } + private boolean canPrint( PlanoActuacao p, Utilizador user ) + { + int userType = user == null ? -1 : user.getTipo(); + return ! p.getConcluidoPorDesactivacao() || ( userType == Global.DIRECTOR_SIPRP || userType == Global.TECNICO_HS ); + } + + private void createPdf( Integer pID ) { createPdf( pID, false );