diff --git a/trunk/siprp/ficha/TrabalhadorPanel.java b/trunk/siprp/ficha/TrabalhadorPanel.java index 42fcbe65..6da2de35 100644 --- a/trunk/siprp/ficha/TrabalhadorPanel.java +++ b/trunk/siprp/ficha/TrabalhadorPanel.java @@ -277,6 +277,8 @@ public class TrabalhadorPanel extends JPanel public Object save() { + StringBuffer msg = new StringBuffer(); + boolean hasMsg = false; try { if( trabalhador == null ) @@ -297,13 +299,27 @@ public class TrabalhadorPanel extends JPanel String name = ( String )enum.nextElement(); trabalhador.setProperty( name, hash.get( name ) ); } - return trabalhador; + if( ((String)trabalhador.getProperty( provider.NOME )).trim().length() == 0 ) + { + msg.append( "O trabalhador tem de ter nome\n" ); + hasMsg = true; + } + if( trabalhador.getProperty( provider.SEXO ) == null ) + { + msg.append( "O trabalhador tem de ter um sexo definido\n" ); + hasMsg = true; + } } catch( Exception ex ) { ex.printStackTrace(); + return null; + } + if( hasMsg ) + { + throw new ValuesException( msg.toString() ); } - return null; + return trabalhador; } public void clear()