diff --git a/trunk/SIPRPSoft/src/SIPRPMap.map.xml b/trunk/SIPRPSoft/src/SIPRPMap.map.xml
index f4124962..b12f3e94 100644
--- a/trunk/SIPRPSoft/src/SIPRPMap.map.xml
+++ b/trunk/SIPRPSoft/src/SIPRPMap.map.xml
@@ -286,6 +286,7 @@
+
ORACLE
prestadores_id_seq
@@ -335,6 +336,7 @@
+
@@ -477,6 +479,7 @@
+
@@ -705,6 +708,7 @@
+
@@ -732,6 +736,7 @@
+
@@ -802,6 +807,7 @@
+
diff --git a/trunk/SIPRPSoft/src/leaf/LeafInputField.java b/trunk/SIPRPSoft/src/leaf/LeafInputField.java
index 4f7203b0..6d2d936b 100644
--- a/trunk/SIPRPSoft/src/leaf/LeafInputField.java
+++ b/trunk/SIPRPSoft/src/leaf/LeafInputField.java
@@ -31,7 +31,6 @@ import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
-import siprp.medicina.processo.ui.OrderedMap;
public class LeafInputField extends JPanel implements FocusListener, MouseListener, PropertyChangeListener
{
@@ -411,7 +410,7 @@ public class LeafInputField extends JPanel implements F
{
if( object instanceof Date )
{
- thiz = new JLabel( ((Date) object).getTime() <= 0 ? " " : sdf.format( object ) );
+ thiz = new JLabel( sdf.format( object ) );
}
else if( object instanceof Map )
{
diff --git a/trunk/SIPRPSoft/src/leaf/LeafOptionDialog.java b/trunk/SIPRPSoft/src/leaf/LeafOptionDialog.java
index 43f8b93f..8d62c053 100644
--- a/trunk/SIPRPSoft/src/leaf/LeafOptionDialog.java
+++ b/trunk/SIPRPSoft/src/leaf/LeafOptionDialog.java
@@ -23,7 +23,6 @@ import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.ScrollPaneConstants;
-import siprp.medicina.processo.ui.OrderedMap;
public class LeafOptionDialog extends JDialog
{
diff --git a/trunk/SIPRPSoft/src/leaf/LeafTableModel.java b/trunk/SIPRPSoft/src/leaf/LeafTableModel.java
index 93e4cb99..afe3a6d8 100644
--- a/trunk/SIPRPSoft/src/leaf/LeafTableModel.java
+++ b/trunk/SIPRPSoft/src/leaf/LeafTableModel.java
@@ -4,7 +4,6 @@ import java.util.Collection;
import java.util.Iterator;
import java.util.List;
-import siprp.medicina.processo.ui.OrderedMap;
import com.evolute.utils.tables.BaseTableModel;
diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/OrderedMap.java b/trunk/SIPRPSoft/src/leaf/OrderedMap.java
similarity index 99%
rename from trunk/SIPRPSoft/src/siprp/medicina/processo/ui/OrderedMap.java
rename to trunk/SIPRPSoft/src/leaf/OrderedMap.java
index 97fdde34..24aeb47a 100644
--- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/OrderedMap.java
+++ b/trunk/SIPRPSoft/src/leaf/OrderedMap.java
@@ -1,4 +1,4 @@
-package siprp.medicina.processo.ui;
+package leaf;
import java.util.ArrayList;
import java.util.Collection;
diff --git a/trunk/SIPRPSoft/src/siprp/clientes/TrabalhadorPanel.java b/trunk/SIPRPSoft/src/siprp/clientes/TrabalhadorPanel.java
index 4b9f630a..506a29a1 100644
--- a/trunk/SIPRPSoft/src/siprp/clientes/TrabalhadorPanel.java
+++ b/trunk/SIPRPSoft/src/siprp/clientes/TrabalhadorPanel.java
@@ -6,6 +6,9 @@
package siprp.clientes;
+import info.clearthought.layout.TableLayout;
+import info.clearthought.layout.TableLayoutConstraints;
+
import javax.swing.*;
import java.awt.*;
@@ -48,6 +51,7 @@ public class TrabalhadorPanel extends JPanel
private JTextField nomeText;
private RadioButtonFixedPanel sexoPanel;
+ private JTextField biText;
private JCalendarPanel dataNascimentoPanel;
private JTextField nacionalidadeText;
private JTextField numeroMecanograficoText;
@@ -99,6 +103,8 @@ public class TrabalhadorPanel extends JPanel
new IDObject[]{ new MappableObject( new Integer( 1 ), "M" ),
new MappableObject( new Integer( 2 ), "F" ) },
1, 2, RadioButtonPanel.ORIENTATION_HORIZONTAL, false );
+ JLabel biLabel = new JLabel("B.I.");
+ biText = new JTextField();
JLabel dataNascimentoLabel = new JLabel( "Data de Nascimento" );
dataNascimentoPanel = new JCalendarPanel( null );
JLabel nacionalidadeLabel = new JLabel( "Nacionalidade" );
@@ -141,154 +147,56 @@ public class TrabalhadorPanel extends JPanel
JPanel pad;
- GridBagLayout gridbag = new GridBagLayout();
- dadosTrabalhadorPanel.setLayout( gridbag );
- GridBagConstraints constraints = new GridBagConstraints();
- constraints.insets = new Insets( 1, 1, 1, 1 );
- constraints.fill = GridBagConstraints.HORIZONTAL;
- constraints.weighty = 0;
- constraints.gridheight = 1;
- constraints.gridwidth = 1;
- constraints.weightx = 0;
-
- gridbag.setConstraints( nomeLabel, constraints );
- dadosTrabalhadorPanel.add( nomeLabel );
-
- constraints.weightx = 1;
- constraints.gridwidth = 3;
- gridbag.setConstraints( nomeText, constraints );
- dadosTrabalhadorPanel.add( nomeText );
-
- constraints.gridwidth = 1;
- constraints.weightx = 0;
- gridbag.setConstraints( sexoLabel, constraints );
- dadosTrabalhadorPanel.add( sexoLabel );
-
- constraints.weightx = 0;
- //constraints.gridwidth = 1;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
+ double [] cols = new double[]{TableLayout.MINIMUM,TableLayout.FILL,TableLayout.MINIMUM,TableLayout.FILL};
+ double [] rows = new double[]{TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.FILL,
+ TableLayout.MINIMUM,};
+
+ TableLayout layout = new TableLayout(cols,rows);
+ layout.setHGap( 5 );
+ layout.setVGap( 5 );
+ dadosTrabalhadorPanel.setLayout( layout );
+ dadosTrabalhadorPanel.add( nomeLabel, new TableLayoutConstraints( 0,0 ) );
+ dadosTrabalhadorPanel.add( nomeText, new TableLayoutConstraints( 1,0,3,0 ) );
+ dadosTrabalhadorPanel.add( sexoLabel, new TableLayoutConstraints( 0,1 ) );
JPanel sexoOuterPanel = new JPanel();
sexoOuterPanel.setLayout( new GridLayout( 1, 2 ) );
sexoOuterPanel.add( sexoPanel );
sexoOuterPanel.add( new JPanel() );
- gridbag.setConstraints( sexoOuterPanel, constraints );
- dadosTrabalhadorPanel.add( sexoOuterPanel );
-
- constraints.weightx = 0;
- constraints.gridwidth = 2;
- gridbag.setConstraints( nacionalidadeLabel, constraints );
- dadosTrabalhadorPanel.add( nacionalidadeLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = 1;
- gridbag.setConstraints( nacionalidadeText, constraints );
- dadosTrabalhadorPanel.add( nacionalidadeText );
-
- constraints.weightx = 0;
- constraints.gridwidth = 1;
- gridbag.setConstraints( dataNascimentoLabel, constraints );
- dadosTrabalhadorPanel.add( dataNascimentoLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
- gridbag.setConstraints( dataNascimentoPanel, constraints );
- dadosTrabalhadorPanel.add( dataNascimentoPanel );
-
- constraints.weightx = 0;
- constraints.gridwidth = 2;
- gridbag.setConstraints( numeroMecanograficoLabel, constraints );
- dadosTrabalhadorPanel.add( numeroMecanograficoLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = 1;
- gridbag.setConstraints( numeroMecanograficoText, constraints );
- dadosTrabalhadorPanel.add( numeroMecanograficoText );
-
- constraints.weightx = 0;
- constraints.gridwidth = 1;
- gridbag.setConstraints( dataAdmissaoLabel, constraints );
- dadosTrabalhadorPanel.add( dataAdmissaoLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
- gridbag.setConstraints( dataAdmissaoPanel, constraints );
- dadosTrabalhadorPanel.add( dataAdmissaoPanel );
-
- constraints.weightx = 0;
- constraints.gridwidth = 2;
- gridbag.setConstraints( categoriaLabel, constraints );
- dadosTrabalhadorPanel.add( categoriaLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = 1;
- gridbag.setConstraints( categoriaText, constraints );
- dadosTrabalhadorPanel.add( categoriaText );
-
- constraints.weightx = 0;
- gridbag.setConstraints( localLabel, constraints );
- dadosTrabalhadorPanel.add( localLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
- gridbag.setConstraints( localText, constraints );
- dadosTrabalhadorPanel.add( localText );
-
- constraints.weightx = 0;
- constraints.gridwidth = 2;
- gridbag.setConstraints( funcaoLabel, constraints );
- dadosTrabalhadorPanel.add( funcaoLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = 1;
- gridbag.setConstraints( funcaoText, constraints );
- dadosTrabalhadorPanel.add( funcaoText );
-
- constraints.weightx = 0;
- constraints.gridwidth = 1;
- gridbag.setConstraints( dataAdmissaoFuncaoLabel, constraints );
- dadosTrabalhadorPanel.add( dataAdmissaoFuncaoLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
- gridbag.setConstraints( dataAdmissaoFuncaoPanel, constraints );
- dadosTrabalhadorPanel.add( dataAdmissaoFuncaoPanel );
-
- constraints.weightx = 0;
- constraints.gridwidth = 2;
- gridbag.setConstraints( perfilLabel, constraints );
- dadosTrabalhadorPanel.add( perfilLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = 1;
-// gridbag.setConstraints( perfilCombo, constraints );
-// dadosTrabalhadorPanel.add( perfilCombo );
- gridbag.setConstraints( perfilPanel, constraints );
- dadosTrabalhadorPanel.add( perfilPanel );
-
- constraints.weightx = 0;
- constraints.gridwidth = 1;
- gridbag.setConstraints( dataDemissaoLabel, constraints );
- dadosTrabalhadorPanel.add( dataDemissaoLabel );
-
- constraints.weightx = 0.5;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
- gridbag.setConstraints( dataDemissaoPanel, constraints );
- dadosTrabalhadorPanel.add( dataDemissaoPanel );
-
- constraints.weightx = 0;
- constraints.gridwidth = 1;
- gridbag.setConstraints( observacoesLabel, constraints );
- dadosTrabalhadorPanel.add( observacoesLabel );
-
- constraints.weightx = 1;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
- gridbag.setConstraints( observacoesText, constraints );
- dadosTrabalhadorPanel.add( observacoesText );
-
- constraints.weightx = 1;
- constraints.gridwidth = GridBagConstraints.REMAINDER;
- gridbag.setConstraints( marcacoesButton, constraints );
- dadosTrabalhadorPanel.add( marcacoesButton );
+ dadosTrabalhadorPanel.add( sexoOuterPanel, new TableLayoutConstraints( 1,1 ) );
+ dadosTrabalhadorPanel.add( biLabel, new TableLayoutConstraints( 2,1 ) );
+ dadosTrabalhadorPanel.add( biText, new TableLayoutConstraints( 3,1 ) );
+ dadosTrabalhadorPanel.add( nacionalidadeLabel, new TableLayoutConstraints( 0,2 ) );
+ dadosTrabalhadorPanel.add( nacionalidadeText, new TableLayoutConstraints( 1,2 ) );
+ dadosTrabalhadorPanel.add( dataNascimentoLabel, new TableLayoutConstraints( 2,2 ) );
+ dadosTrabalhadorPanel.add( dataNascimentoPanel, new TableLayoutConstraints( 3,2 ) );
+
+ dadosTrabalhadorPanel.add( numeroMecanograficoLabel, new TableLayoutConstraints( 0,3 ) );
+ dadosTrabalhadorPanel.add( numeroMecanograficoText, new TableLayoutConstraints( 1,3 ) );
+ dadosTrabalhadorPanel.add( dataAdmissaoLabel, new TableLayoutConstraints( 2,3 ) );
+ dadosTrabalhadorPanel.add( dataAdmissaoPanel, new TableLayoutConstraints( 3,3 ));
+ dadosTrabalhadorPanel.add( categoriaLabel, new TableLayoutConstraints( 0,4 ) );
+ dadosTrabalhadorPanel.add( categoriaText, new TableLayoutConstraints( 1,4 ) );
+ dadosTrabalhadorPanel.add( localLabel, new TableLayoutConstraints( 2,4 ) );
+ dadosTrabalhadorPanel.add( localText, new TableLayoutConstraints( 3,4 ));
+ dadosTrabalhadorPanel.add( funcaoLabel, new TableLayoutConstraints( 0,5 ) );
+ dadosTrabalhadorPanel.add( funcaoText, new TableLayoutConstraints( 1,5 ) );
+ dadosTrabalhadorPanel.add( dataAdmissaoFuncaoLabel, new TableLayoutConstraints( 2,5 ) );
+ dadosTrabalhadorPanel.add( dataAdmissaoFuncaoPanel, new TableLayoutConstraints( 3,5 ) );
+ dadosTrabalhadorPanel.add( perfilLabel, new TableLayoutConstraints( 0,6 ) );
+ dadosTrabalhadorPanel.add( perfilPanel, new TableLayoutConstraints( 1,6 ) );
+ dadosTrabalhadorPanel.add( dataDemissaoLabel, new TableLayoutConstraints( 2,6 ) );
+ dadosTrabalhadorPanel.add( dataDemissaoPanel, new TableLayoutConstraints( 3,6 ) );
+ dadosTrabalhadorPanel.add( observacoesLabel, new TableLayoutConstraints( 0,7 ) );
+ dadosTrabalhadorPanel.add( observacoesText, new TableLayoutConstraints( 0,8, 3, 8 ) );
+ dadosTrabalhadorPanel.add( marcacoesButton, new TableLayoutConstraints( 0,9,3,9 ) );
// examesPanel = new MarcacaoPanel( false, "Realizados", "", Marcacao.TIPO_MARCACAO_TRABALHADOR_EXAMES );
// examesPanel.setCalendarDialogOrientation( JCalendarDialog.ABOVE, JCalendarDialog.RIGHT );
@@ -364,6 +272,7 @@ public class TrabalhadorPanel extends JPanel
sexoPanel.setEnabled( enable );
}
} );
+ components.putComponent( TrabalhadorData.BI , biText );
components.putComponent( TrabalhadorData.DATA_NASCIMENTO, dataNascimentoPanel );
components.putComponent( TrabalhadorData.NACIONALIDADE, nacionalidadeText );
components.putComponent( TrabalhadorData.NUMERO_MECANOGRAFICO, numeroMecanograficoText );
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/BaseObject.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/BaseObject.java
index b69b252f..7fd0769d 100644
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/BaseObject.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/BaseObject.java
@@ -21,7 +21,7 @@ public class BaseObject extends CayenneDataObject
protected static final DateFormat sdf = DateFormat.getDateInstance( DateFormat.SHORT, new Locale( "pt", "PT" ) );
- protected static final String isNewMessage = "Em Edi"+ccedil+atilde+"o";
+ protected static final String isNewMessage = " ";
public boolean isNew()
{
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java
index 4d8c295b..0fb6c346 100755
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Empresas.java
@@ -62,6 +62,7 @@ public class Empresas extends _Empresas {
if( current == null || "y".equals(current.getInactivo()))
{
result.remove( i );
+ --i;
}
}
Collections.sort(result);
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java
index 8bd6fc5f..323ecb9b 100755
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/Estabelecimentos.java
@@ -65,6 +65,7 @@ public class Estabelecimentos extends _Estabelecimentos implements Comparable getTrabalhadoresProcessoArray()
+ {
+ List allProcessos = super.getTrabalhadoresProcessoArray();
+ List result = new ArrayList();
+ for( TrabalhadoresProcesso current : allProcessos )
+ {
+ if("y".equals( current.getActivo() ))
+ {
+ result.add( current );
+ }
+ }
+ return result;
+ }
+
@Override
public String getNome()
{
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresConsultasDatasObservacoes.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresConsultasDatasObservacoes.java
index 14b20db0..c0a02fa7 100755
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresConsultasDatasObservacoes.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresConsultasDatasObservacoes.java
@@ -1,20 +1,54 @@
package siprp.database.cayenne.objects;
+import com.evolute.utils.strings.UnicodeChecker;
+
import siprp.database.cayenne.objects.auto._TrabalhadoresConsultasDatasObservacoes;
public class TrabalhadoresConsultasDatasObservacoes extends _TrabalhadoresConsultasDatasObservacoes {
private static final long serialVersionUID = 1L;
+ private String name = null;
+
+ private String convertedName = null;
+
@Override
public String toString()
{
- String result = getObservacao() == null ? "" : getObservacao();
- if( result.indexOf( '\n' ) > 0 )
+ return getObservacao();
+ }
+
+ @Override
+ public String getObservacao()
+ {
+ String currentName = super.getObservacao();
+ if( name == null || !name.equals( currentName ))
{
- result = result.substring( 0, result.indexOf( '\n', 1) );
+ name = currentName;
+ convertedName = null;
}
- return result;
+ return convertName();
}
+
+ @Override
+ public void setObservacao( String nome )
+ {
+ super.setObservacao( UnicodeChecker.parseToUnicode( name ) );
+ getObservacao();
+ }
+
+ private String convertName()
+ {
+ if( name == null )
+ {
+ convertedName = null;
+ }
+ else
+ {
+ convertedName = UnicodeChecker.parseFromUnicode( name );
+ }
+ return convertedName;
+ }
+
}
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java
index 61a6c02b..c8daf401 100755
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java
@@ -4,9 +4,10 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
+import leaf.OrderedMap;
+
import siprp.database.cayenne.objects.auto._TrabalhadoresEcds;
import siprp.medicina.MedicinaConstants;
-import siprp.medicina.processo.ui.OrderedMap;
public class TrabalhadoresEcds extends _TrabalhadoresEcds implements MedicinaConstants
{
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java
index 2e7c2e2d..365c85df 100755
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java
@@ -5,9 +5,10 @@ import java.util.Date;
import java.util.HashMap;
import java.util.List;
+import leaf.OrderedMap;
+
import siprp.database.cayenne.objects.auto._TrabalhadoresEcdsDatas;
import siprp.medicina.MedicinaConstants;
-import siprp.medicina.processo.ui.OrderedMap;
public class TrabalhadoresEcdsDatas extends _TrabalhadoresEcdsDatas implements MedicinaConstants
{
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatasObservacoes.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatasObservacoes.java
index cdf866b0..012fd654 100755
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatasObservacoes.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatasObservacoes.java
@@ -1,16 +1,54 @@
package siprp.database.cayenne.objects;
+import com.evolute.utils.strings.UnicodeChecker;
+
import siprp.database.cayenne.objects.auto._TrabalhadoresEcdsDatasObservacoes;
public class TrabalhadoresEcdsDatasObservacoes extends _TrabalhadoresEcdsDatasObservacoes {
private static final long serialVersionUID = 1L;
+ private String name = null;
+
+ private String convertedName = null;
+
@Override
public String toString()
{
return getObservacao();
}
+
+ @Override
+ public String getObservacao()
+ {
+ String currentName = super.getObservacao();
+ if( name == null || !name.equals( currentName ))
+ {
+ name = currentName;
+ convertedName = null;
+ }
+ return convertName();
+ }
+
+ @Override
+ public void setObservacao( String nome )
+ {
+ super.setObservacao( UnicodeChecker.parseToUnicode( name ) );
+ getObservacao();
+ }
+
+ private String convertName()
+ {
+ if( name == null )
+ {
+ convertedName = null;
+ }
+ else
+ {
+ convertedName = UnicodeChecker.parseFromUnicode( name );
+ }
+ return convertedName;
+ }
}
diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresProcesso.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresProcesso.java
index 7c99d5e1..25af494b 100755
--- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresProcesso.java
+++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresProcesso.java
@@ -60,6 +60,14 @@ public class TrabalhadoresProcesso extends _TrabalhadoresProcesso implements Pro
result.put( MedicinaConstants.MOTIVO_PERIODICO_INTEGER, MedicinaConstants.MOTIVO_PERIODICO_STR);
return result;
}
+
+ public boolean isEmpty()
+ {
+ boolean noConsultas = (getTrabalhadoresConsultasArray() == null || getTrabalhadoresConsultasArray().size() == 0);
+ boolean noExames= ( getTrabalhadoresEcdsArray() == null || getTrabalhadoresEcdsArray().size() == 0);
+ boolean noFicha = ( getTrabalhadoresFichasAptidaoArray() == null || getTrabalhadoresFichasAptidaoArray().size() == 0);
+ return noConsultas && noExames && noFicha;
+ }
}
diff --git a/trunk/SIPRPSoft/src/siprp/medicina/prestadores/PrestadoresWindow.java b/trunk/SIPRPSoft/src/siprp/medicina/prestadores/PrestadoresWindow.java
index fe847dda..ab4a5dac 100644
--- a/trunk/SIPRPSoft/src/siprp/medicina/prestadores/PrestadoresWindow.java
+++ b/trunk/SIPRPSoft/src/siprp/medicina/prestadores/PrestadoresWindow.java
@@ -10,6 +10,7 @@
package siprp.medicina.prestadores;
import com.evolute.utils.Singleton;
+import static com.evolute.utils.strings.UnicodeLatin1Map.*;
import com.evolute.utils.data.IDObject;
import com.evolute.utils.dataui.ComponentController;
import com.evolute.utils.dataui.ComponentsHashtable;
@@ -73,6 +74,9 @@ public class PrestadoresWindow extends EditorWindow
protected JTextField localidadeText;
protected ContactoPanel contactoPanel;
protected JTextField contribuinteText;
+
+ private final JLabel labelObservacoes = new JLabel("Observa"+ccedil+otilde+"es");
+ private final JTextArea textObservacoes = new JTextArea();
protected PrestadoresDataProvider provider;
protected ClientesDataProvider clientesProvider;
@@ -86,8 +90,8 @@ public class PrestadoresWindow extends EditorWindow
private final JPanel prestadoresPanel = new JPanel();
private final JPanel analisadoresPanel = new JPanel();
- private final JLabel labelGrupos = new JLabel( "Grupos:" );
- private final JLabel labelAnalisador = new JLabel( "Analisador:" );
+ private final JLabel labelGrupos = new JLabel( "Tipos de ECDs" );
+ private final JLabel labelAnalisador = new JLabel( "Analisadores" );
private final JLabel labelMessage = new JLabel( " " );
private final Map mapLabel = new HashMap();
@@ -112,88 +116,111 @@ public class PrestadoresWindow extends EditorWindow
setupComponentsHashtable();
}
- private void setupComponents() throws Exception
+ private void setupComponents()
{
setTitle( TITLE );
+ setSize( 800, 600);
tabbedPane.addTab( "Prestadores", prestadoresPanel );
tabbedPane.addTab( "Analisadores", analisadoresPanel );
setupAnalisadoresTab();
+ setupPrestadoresTab();
+// pack();
+ }
- JLabel nomeLabel = new JLabel( "Designa\u00e7\u00e3o" );
- nomeText = new JTextField();
- nomeText.setPreferredSize( new Dimension( 500, 20 ) );
- activoCheck = new JCheckBox( "Activo (actualmente fornece servi\u00e7os \u00e0 SIPRP)" );
- consultasCheck = new JCheckBox( "Faz consultas" );
- ecdsCheck = new JCheckBox( "Faz ecds" );
- List gruposProtocolo = new Vector();
- IDObject gruposProtocoloReais[] = clientesProvider.getAllGruposProtocoloReais();
- if( gruposProtocoloReais != null && gruposProtocoloReais.length > 0 )
+ private void setupPrestadoresTab()
+ {
+ try
{
- gruposProtocolo.addAll( Arrays.asList( gruposProtocoloReais ) );
- }
- IDObject gruposProtocoloFalsos[] = clientesProvider.getAllGruposProtocoloFalsos();
- if( gruposProtocoloFalsos != null && gruposProtocoloFalsos.length > 0 )
+ JLabel nomeLabel = new JLabel( "Designa\u00e7\u00e3o" );
+ nomeText = new JTextField();
+ nomeText.setPreferredSize( new Dimension( 500, 20 ) );
+ activoCheck = new JCheckBox( "Activo (actualmente fornece servi\u00e7os \u00e0 SIPRP)" );
+ consultasCheck = new JCheckBox( "Faz consultas" );
+ ecdsCheck = new JCheckBox( "Faz ecds" );
+ List gruposProtocolo = new Vector();
+ IDObject gruposProtocoloReais[] = clientesProvider.getAllGruposProtocoloReais();
+ if( gruposProtocoloReais != null && gruposProtocoloReais.length > 0 )
+ {
+ gruposProtocolo.addAll( Arrays.asList( gruposProtocoloReais ) );
+ }
+ IDObject gruposProtocoloFalsos[] = clientesProvider.getAllGruposProtocoloFalsos();
+ if( gruposProtocoloFalsos != null && gruposProtocoloFalsos.length > 0 )
+ {
+ gruposProtocolo.addAll( Arrays.asList( gruposProtocoloFalsos ) );
+ }
+ ecdsPanel = new CheckBoxPanel( gruposProtocolo.toArray( new IDObject[gruposProtocolo.size()] ) );
+ JLabel contactoLabel = new JLabel( "Contacto" );
+ contactoPanel = new ContactoPanel();
+ contactoPanel.setPreferredSize( new Dimension( 350, 120 ) );
+ contactoPanel.setBorder( BorderFactory.createEtchedBorder() );
+ JLabel moradaLabel = new JLabel( "Morada" );
+ moradaText = new JTextArea();
+ moradaText.setLineWrap( true );
+ moradaText.setWrapStyleWord( true );
+ JScrollPane moradaScroll = new JScrollPane( moradaText, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
+ moradaScroll.setPreferredSize( new Dimension( 500, 50 ) );
+ JLabel codigoPostalLabel = new JLabel( "C\u00f3digo Postal" );
+ codigoPostalText = new JTextField();
+ codigoPostalText.setPreferredSize( new Dimension( 100, 50 ) );
+ localidadeCodigoPostalText = new JTextField();
+ localidadeCodigoPostalText.setPreferredSize( new Dimension( 150, 50 ) );
+ JLabel localidadeLabel = new JLabel( "Localidade" );
+ localidadeText = new JTextField();
+ JLabel contribuinteLabel = new JLabel( "Contribuinte" );
+ contribuinteText = new JTextField();
+ contribuinteText.setPreferredSize( new Dimension( 100, 50 ) );
+
+ double cols[] = new double[] {
+ TableLayout.MINIMUM, TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.FILL
+ };
+ double rows[] = new double[] {
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.FILL,
+ TableLayout.PREFERRED,
+ TableLayout.PREFERRED,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.MINIMUM,
+ TableLayout.FILL
+ };
+ TableLayout tableLayout = new TableLayout( cols, rows );
+ prestadoresPanel.setLayout( tableLayout );
+
+ tableLayout = new TableLayout( new double[] {
+ TableLayout.FILL
+ }, new double[] {
+ TableLayout.FILL
+ } );
+ getContentPane().setLayout( tableLayout );
+ getContentPane().add( tabbedPane, new TableLayoutConstraints( 0, 0 ) );
+
+ prestadoresPanel.add( nomeLabel, new TableLayoutConstraints( 0, 0 ) );
+ prestadoresPanel.add( nomeText, new TableLayoutConstraints( 1, 0, 3, 0 ) );
+ prestadoresPanel.add( activoCheck, new TableLayoutConstraints( 0, 1, 2, 1 ) );
+ prestadoresPanel.add( consultasCheck, new TableLayoutConstraints( 0, 2 ) );
+ prestadoresPanel.add( ecdsCheck, new TableLayoutConstraints( 0, 3 ) );
+ prestadoresPanel.add( ecdsPanel, new TableLayoutConstraints( 1, 3, 2, 3 ) );
+ prestadoresPanel.add( contactoLabel, new TableLayoutConstraints( 0, 4 ) );
+ prestadoresPanel.add( contactoPanel, new TableLayoutConstraints( 1, 4, 2, 4 ) );
+ prestadoresPanel.add( moradaLabel, new TableLayoutConstraints( 0, 5 ) );
+ prestadoresPanel.add( moradaScroll, new TableLayoutConstraints( 1, 5, 3, 5 ) );
+ prestadoresPanel.add( codigoPostalLabel, new TableLayoutConstraints( 0, 6 ) );
+ prestadoresPanel.add( codigoPostalText, new TableLayoutConstraints( 1, 6 ) );
+ prestadoresPanel.add( localidadeCodigoPostalText, new TableLayoutConstraints( 2, 6, 3, 6 ) );
+ prestadoresPanel.add( localidadeLabel, new TableLayoutConstraints( 0, 7 ) );
+ prestadoresPanel.add( localidadeText, new TableLayoutConstraints( 1, 7, 3, 7 ) );
+ prestadoresPanel.add( contribuinteLabel, new TableLayoutConstraints( 0, 8 ) );
+ prestadoresPanel.add( contribuinteText, new TableLayoutConstraints( 1, 8 ) );
+ prestadoresPanel.add( labelObservacoes, new TableLayoutConstraints( 0, 9 ) );
+ prestadoresPanel.add( textObservacoes, new TableLayoutConstraints( 0, 10,3,10 ) );
+ } catch( Exception e )
{
- gruposProtocolo.addAll( Arrays.asList( gruposProtocoloFalsos ) );
+ e.printStackTrace();
}
- ecdsPanel = new CheckBoxPanel( gruposProtocolo.toArray( new IDObject[gruposProtocolo.size()] ) );
- JLabel contactoLabel = new JLabel( "Contacto" );
- contactoPanel = new ContactoPanel();
- contactoPanel.setPreferredSize( new Dimension( 350, 120 ) );
- contactoPanel.setBorder( BorderFactory.createEtchedBorder() );
- JLabel moradaLabel = new JLabel( "Morada" );
- moradaText = new JTextArea();
- moradaText.setLineWrap( true );
- moradaText.setWrapStyleWord( true );
- JScrollPane moradaScroll = new JScrollPane( moradaText, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
- moradaScroll.setPreferredSize( new Dimension( 500, 50 ) );
- JLabel codigoPostalLabel = new JLabel( "C\u00f3digo Postal" );
- codigoPostalText = new JTextField();
- codigoPostalText.setPreferredSize( new Dimension( 100, 50 ) );
- localidadeCodigoPostalText = new JTextField();
- localidadeCodigoPostalText.setPreferredSize( new Dimension( 150, 50 ) );
- JLabel localidadeLabel = new JLabel( "Localidade" );
- localidadeText = new JTextField();
- JLabel contribuinteLabel = new JLabel( "Contribuinte" );
- contribuinteText = new JTextField();
- contribuinteText.setPreferredSize( new Dimension( 100, 50 ) );
-
- double cols[] = new double[] {
- TableLayout.MINIMUM, TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.FILL
- };
- double rows[] = new double[] {
- TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.FILL, TableLayout.PREFERRED, TableLayout.PREFERRED, TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.MINIMUM
- };
- TableLayout tableLayout = new TableLayout( cols, rows );
- prestadoresPanel.setLayout( tableLayout );
-
- tableLayout = new TableLayout( new double[] {
- TableLayout.FILL
- }, new double[] {
- TableLayout.FILL
- } );
- getContentPane().setLayout( tableLayout );
- getContentPane().add( tabbedPane, new TableLayoutConstraints( 0, 0 ) );
-
- prestadoresPanel.add( nomeLabel, new TableLayoutConstraints( 0, 0 ) );
- prestadoresPanel.add( nomeText, new TableLayoutConstraints( 1, 0, 3, 0 ) );
- prestadoresPanel.add( activoCheck, new TableLayoutConstraints( 0, 1, 2, 1 ) );
- prestadoresPanel.add( consultasCheck, new TableLayoutConstraints( 0, 2 ) );
- prestadoresPanel.add( ecdsCheck, new TableLayoutConstraints( 0, 3 ) );
- prestadoresPanel.add( ecdsPanel, new TableLayoutConstraints( 1, 3, 2, 3 ) );
- prestadoresPanel.add( contactoLabel, new TableLayoutConstraints( 0, 4 ) );
- prestadoresPanel.add( contactoPanel, new TableLayoutConstraints( 1, 4, 2, 4 ) );
- prestadoresPanel.add( moradaLabel, new TableLayoutConstraints( 0, 5 ) );
- prestadoresPanel.add( moradaScroll, new TableLayoutConstraints( 1, 5, 3, 5 ) );
- prestadoresPanel.add( codigoPostalLabel, new TableLayoutConstraints( 0, 6 ) );
- prestadoresPanel.add( codigoPostalText, new TableLayoutConstraints( 1, 6 ) );
- prestadoresPanel.add( localidadeCodigoPostalText, new TableLayoutConstraints( 2, 6, 3, 6 ) );
- prestadoresPanel.add( localidadeLabel, new TableLayoutConstraints( 0, 7 ) );
- prestadoresPanel.add( localidadeText, new TableLayoutConstraints( 1, 7, 3, 7 ) );
- prestadoresPanel.add( contribuinteLabel, new TableLayoutConstraints( 0, 8 ) );
- prestadoresPanel.add( contribuinteText, new TableLayoutConstraints( 1, 8 ) );
- pack();
}
private void setupComponentsHashtable()
@@ -206,6 +233,7 @@ public class PrestadoresWindow extends EditorWindow
components.putComponent( PrestadoresData.LOCALIDADE_CP, localidadeCodigoPostalText );
components.putComponent( PrestadoresData.LOCALIDADE, localidadeText );
components.putComponent( PrestadoresData.CONTRIBUINTE, contribuinteText );
+ components.putComponent( PrestadoresData.OBSERVACOES, textObservacoes );
components.putComponent( PrestadoresData.ACTIVO, activoCheck );
components.putComponent( PrestadoresData.FAZ_CONSULTAS, consultasCheck );
components.putComponent( PrestadoresData.FAZ_ECDS, ecdsCheck );
@@ -317,15 +345,15 @@ public class PrestadoresWindow extends EditorWindow
mapLabel.clear();
listGrupos.clear();
listAnalisadores.clear();
- shout(null);
+ shout( null );
}
private void setupAnalisadoresTabLayout()
{
double[] cols = new double[] {
- TableLayout.FILL, TableLayout.FILL
+ TableLayout.MINIMUM, TableLayout.FILL
};
- double[] rows = new double[1 + listGrupos.size() + 2 ];
+ double[] rows = new double[1 + listGrupos.size() + 2];
for( int i = 0; i < rows.length; ++i )
{
rows[i] = TableLayout.MINIMUM;
@@ -364,9 +392,9 @@ public class PrestadoresWindow extends EditorWindow
analisadoresPanel.add( combo, new TableLayoutConstraints( 1, i + 1 ) );
}
int line = listGrupos.size() + 1;
- analisadoresPanel.add( new JSeparator(), new TableLayoutConstraints( 0, line,1,line ) );
+ analisadoresPanel.add( new JSeparator(), new TableLayoutConstraints( 0, line, 1, line ) );
++line;
- analisadoresPanel.add( labelMessage, new TableLayoutConstraints( 0, line,1,line ) );
+ analisadoresPanel.add( labelMessage, new TableLayoutConstraints( 0, line, 1, line ) );
}
private void setupAnalisadoresTabListeners()
@@ -396,7 +424,7 @@ public class PrestadoresWindow extends EditorWindow
Prestadores analisador = (Prestadores) combo.getSelectedItem();
grupo.setToAnalisador( Prestadores.prestadorNulo.equals( analisador ) ? null : analisador );
medicinaCayenneDAO.saveObject( grupo );
- shout( "Grupo: " + grupo.getDescricao() + " -> Analisador: " + analisador.getNome() + " (guardado)" );
+ shout( "Tipo de ECD: " + grupo.getDescricao() + " -> Analisador: " + analisador.getNome() + " [guardado]" );
}
}
}
diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java
index 5e57b4a0..e1701134 100755
--- a/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java
+++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java
@@ -2,13 +2,11 @@ package siprp.medicina.processo.logic;
import java.util.Date;
import java.util.List;
-import java.util.Vector;
import javax.swing.tree.DefaultMutableTreeNode;
import leaf.LeafLogic;
import leaf.LeafWindow.LeafObject;
-
import siprp.database.cayenne.objects.BaseObject;
import siprp.database.cayenne.objects.Empresas;
import siprp.database.cayenne.objects.Estabelecimentos;
@@ -18,7 +16,6 @@ import siprp.database.cayenne.objects.TrabalhadoresConsultas;
import siprp.database.cayenne.objects.TrabalhadoresConsultasDatas;
import siprp.database.cayenne.objects.TrabalhadoresConsultasDatasEmails;
import siprp.database.cayenne.objects.TrabalhadoresConsultasDatasObservacoes;
-import siprp.database.cayenne.objects.TrabalhadoresEcd;
import siprp.database.cayenne.objects.TrabalhadoresEcds;
import siprp.database.cayenne.objects.TrabalhadoresEcdsDatas;
import siprp.database.cayenne.objects.TrabalhadoresEcdsDatasEmails;
@@ -27,11 +24,8 @@ import siprp.database.cayenne.objects.TrabalhadoresProcesso;
import siprp.database.cayenne.providers.MedicinaDAO;
import siprp.medicina.MedicinaConstants;
import siprp.medicina.processo.ProcessoConstants;
-import siprp.medicina.processo.detalhes.EstadoChooser;
import siprp.medicina.processo.estrutura.FichaAptidaoMutableTreeNode;
-import com.evolute.utils.tables.ColumnizedMappable;
-
public class MedicinaProcessoLogic extends LeafLogic
{
@Action(isSave = false)
@@ -138,6 +132,9 @@ public class MedicinaProcessoLogic extends LeafLogic
@Action(isSave = true)
public static final String FECHAR_PROCESSO = "FECHAR_PROCESSO";
+
+ @Action(isSave = false)
+ public static final String APAGAR_PROCESSO = "APAGAR_PROCESSO";
@Action(isSave = false)
public static final String REFRESH = "REFRESH";
@@ -184,7 +181,7 @@ public class MedicinaProcessoLogic extends LeafLogic
@LeafObject (useWith=LOAD_TRABALHADOR)
public Trabalhadores currentTrabalhador = null;
- @LeafObject(useWith = SAVE_PROCESSO)
+ @LeafObject(useWith = { SAVE_PROCESSO, APAGAR_PROCESSO })
public TrabalhadoresProcesso currentProcesso = null;
@LeafObject(useWith = SAVE_CONSULTA)
@@ -275,6 +272,16 @@ public class MedicinaProcessoLogic extends LeafLogic
runActionLater( SAVE_PROCESSO );
}
}
+
+ @LeafLogicActionBinding(actions = APAGAR_PROCESSO)
+ public void apagarProcesso()
+ {
+ if( currentProcesso != null && currentProcesso.isEmpty() )
+ {
+ currentProcesso.setActivo( "n" );
+ runActionLater( SAVE_PROCESSO );
+ }
+ }
@LeafLogicActionBinding(actions = DESMARCAR_SIPRP_CONSULTA_MARCACAO)
public void desmarcarConsultaSiprp()
diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/MedicinaProcessoWindow.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/MedicinaProcessoWindow.java
index 54abf01a..a9e54e3e 100755
--- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/MedicinaProcessoWindow.java
+++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/MedicinaProcessoWindow.java
@@ -12,6 +12,7 @@ import javax.swing.JSeparator;
import leaf.LeafOptionDialog;
import leaf.LeafWindow;
+import leaf.OrderedMap;
import leaf.LeafLogic.LeafUIActionBinding;
import siprp.database.cayenne.objects.PrtGruposProtocolo;
import siprp.database.cayenne.objects.TrabalhadoresEcd;
diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java
index cff59476..08299b7e 100755
--- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java
+++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java
@@ -100,6 +100,9 @@ public class ProcessoAccoesPanel extends JPanel
CREATE_EXAME, CREATE_EXAME_MARCACAO
}, onChange = "")
public final LeafButton buttonNovoProcessoExame = new LeafButton( "Novo Exame" );
+
+ @ActionActivation(onSelect = APAGAR_PROCESSO, onChange = "")
+ public final LeafButton buttonApagarProcesso = new LeafButton( "Remover Processo" );
// consulta
@ActionActivation(onSelect = CREATE_CONSULTA_MARCACAO, onChange = "")
@@ -235,6 +238,7 @@ public class ProcessoAccoesPanel extends JPanel
if( processo != null )
{
buttonFecharProcesso.setEnabled( !ProcessoConstants.PROCESSO_FECHADO_CODE.equals( processo.getEstado() ) );
+ buttonApagarProcesso.setEnabled( processo.isEmpty() );
boolean consultaAberta = false;
for( TrabalhadoresConsultas consulta : (List) processo.getTrabalhadoresConsultasArray() )
{
@@ -399,7 +403,11 @@ public class ProcessoAccoesPanel extends JPanel
private void setupProcessoPanel()
{
- setupSimpleActionsPanel( panelProcesso, buttonFecharProcesso, buttonNovoProcessoConsulta, buttonNovoProcessoExame, new JPanel() );
+ JPanel panelTopProcesso = new JPanel();
+ JPanel panelBottomProcesso = new JPanel();
+ setupSimpleActionsPanel( panelTopProcesso, buttonNovoProcessoConsulta, buttonNovoProcessoExame );
+ setupSimpleActionsPanel( panelBottomProcesso, buttonFecharProcesso, buttonApagarProcesso );
+ setupTopBottomSimpleActionsPanel( panelProcesso, panelTopProcesso, panelBottomProcesso );
}
private void setupConsultaPanel()
@@ -413,11 +421,7 @@ public class ProcessoAccoesPanel extends JPanel
JPanel consultaMarcacaoLowerPanel = new JPanel();
setupSimpleActionsPanel( consultaMarcacaoUpperPanel, buttonNovoConsultaMarcacaoEmail, buttonNovoConsultaMarcacaoObservacoes );
setupSimpleActionsPanel( consultaMarcacaoLowerPanel, buttonConsultaMarcacaoRealizar, buttonConsultaMarcacaoDesmarcarSiprp, buttonConsultaMarcacaoDesmarcarTrabalhador, buttonConsultaMarcacaoFaltou);
- TableLayout consultaMarcacaoLayout = new TableLayout(new double[]{TableLayout.FILL}, new double[]{TableLayout.MINIMUM, TableLayout.FILL,TableLayout.MINIMUM});
- panelConsultaMarcacao.setLayout( consultaMarcacaoLayout );
- panelConsultaMarcacao.add( consultaMarcacaoUpperPanel, new TableLayoutConstraints(0,0) );
- panelConsultaMarcacao.add( new JPanel(), new TableLayoutConstraints(0,1) );
- panelConsultaMarcacao.add( consultaMarcacaoLowerPanel, new TableLayoutConstraints(0,2) );
+ setupTopBottomSimpleActionsPanel(panelConsultaMarcacao, consultaMarcacaoUpperPanel, consultaMarcacaoLowerPanel);
}
private void setupExameMarcacaoPanel()
@@ -426,17 +430,22 @@ public class ProcessoAccoesPanel extends JPanel
JPanel exameMarcacaoLowerPanel = new JPanel();
setupSimpleActionsPanel( exameMarcacaoUpperPanel, buttonNovoExameMarcacaoEmail, buttonNovoExameMarcacaoObservacoes, new JPanel() );
setupSimpleActionsPanel( exameMarcacaoLowerPanel, buttonExameMarcacaoRealizar, buttonExameMarcacaoRealizarParcial, buttonExameMarcacaoFaltou, buttonExameMarcacaoAnular, buttonExameMarcacaoDesmarcarTrabalhador, buttonExameMarcacaoDesmarcarSiprp );
- TableLayout exameMarcacaoLayout = new TableLayout(new double[]{TableLayout.FILL}, new double[]{TableLayout.MINIMUM, TableLayout.FILL,TableLayout.MINIMUM});
- panelExameMarcacao.setLayout( exameMarcacaoLayout );
- panelExameMarcacao.add( exameMarcacaoUpperPanel, new TableLayoutConstraints(0,0) );
- panelExameMarcacao.add( new JPanel(), new TableLayoutConstraints(0,1) );
- panelExameMarcacao.add( exameMarcacaoLowerPanel, new TableLayoutConstraints(0,2) );
+ setupTopBottomSimpleActionsPanel(panelExameMarcacao, exameMarcacaoUpperPanel, exameMarcacaoLowerPanel);
}
private void setupExamePanel()
{
setupSimpleActionsPanel( panelExame, buttonNovoExameMarcacao, new JPanel() );
}
+
+ private void setupTopBottomSimpleActionsPanel(JPanel panel, JPanel top, JPanel bottom)
+ {
+ TableLayout layout = new TableLayout(new double[]{TableLayout.FILL}, new double[]{TableLayout.MINIMUM, TableLayout.FILL,TableLayout.MINIMUM});
+ panel.setLayout( layout );
+ panel.add( top, new TableLayoutConstraints(0,0) );
+ panel.add( new JPanel(), new TableLayoutConstraints(0,1) );
+ panel.add( bottom, new TableLayoutConstraints(0,2) );
+ }
private void setupSimpleActionsPanel( JPanel panel, JComponent... field )
{
diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java
index 428dd34b..73f4b4a4 100755
--- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java
+++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java
@@ -5,7 +5,7 @@ import static com.evolute.utils.strings.UnicodeLatin1Map.ccedil;
import static com.evolute.utils.strings.UnicodeLatin1Map.iacute;
import static com.evolute.utils.strings.UnicodeLatin1Map.otilde;
import static info.clearthought.layout.TableLayoutConstants.FILL;
-import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA;
+import static siprp.medicina.processo.logic.MedicinaProcessoLogic.*;
import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO;
import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO_EMAIL;
import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO_OBSERVACOES;
@@ -37,6 +37,7 @@ import info.clearthought.layout.TableLayout;
import info.clearthought.layout.TableLayoutConstraints;
import java.awt.CardLayout;
+import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -53,6 +54,7 @@ import leaf.LeafInputField;
import leaf.LeafOptionDialog;
import leaf.LeafTextDialog;
import leaf.LeafWindow;
+import leaf.OrderedMap;
import leaf.LeafLogic.LeafUIActionBinding;
import leaf.LeafWindow.ActionActivation;
@@ -117,13 +119,17 @@ public class ProcessoDadosPanel extends JPanel
private final JLabel labelTrabalhadorSexo = new JLabel( "Sexo" );
private final JLabel labelTrabalhadorDataNascimento = new JLabel( "Data de Nascimento" );
private final JLabel labelTrabalhadorNacionalidade = new JLabel( "Nacionalidade" );
+ private final JLabel labelTrabalhadorBI = new JLabel( "B.I." );
private final JLabel labelTrabalhadorObservacoes = new JLabel( "Observa" + ccedil + otilde + "es" );
+ private final JLabel labelTrabalhadorDataAdmissao = new JLabel( "Data de Admiss" + atilde + "o" );
public final LeafInputField inputTrabalhadorNome = new LeafInputField();
public final LeafInputField> inputTrabalhadorSexo = new LeafInputField>();
public final LeafInputField inputTrabalhadorDataNascimento = new LeafInputField();
public final LeafInputField inputTrabalhadorNacionalidade = new LeafInputField();
+ public final LeafInputField inputTrabalhadorBI = new LeafInputField();
public final LeafInputField inputTrabalhadorObservacoes = new LeafInputField();
+ public final LeafInputField inputTrabalhadorDataAdmissao = new LeafInputField();
// processo
@@ -135,6 +141,7 @@ public class ProcessoDadosPanel extends JPanel
public final LeafInputField> inputProcessoEstado = new LeafInputField>();
public final LeafInputField inputProcessoDataInicio = new LeafInputField();
public final LeafInputField inputProcessoDataFim = new LeafInputField();
+ @ActionActivation(onSelect = "", onChange = SAVE_PROCESSO)
public final LeafInputField> inputProcessoMotivo = new LeafInputField>();
// consulta
@@ -248,6 +255,29 @@ public class ProcessoDadosPanel extends JPanel
add( panelExameMarcacaoEmail, PANEL_EXAME_MARCACAO_EMAIL_NAME );
add( panelExameMarcacaoObservacao, PANEL_EXAME_MARCACAO_OBSERVACAO_NAME );
}
+
+ private int getIdade( Date nascimento )
+ {
+ int result = 0;
+ if(nascimento != null)
+ {
+ Calendar now = Calendar.getInstance();
+ Calendar birth = Calendar.getInstance();
+ birth.setTime( nascimento );
+ int birthYear = birth.get( Calendar.YEAR );
+ int currentYear = now.get( Calendar.YEAR );
+ if( birthYear < currentYear )
+ {
+ result = currentYear - birthYear;
+ birth.add( Calendar.YEAR, result );
+ if( birth.after( now ) )
+ {
+ --result;
+ }
+ }
+ }
+ return result;
+ }
@LeafUIActionBinding(action = {
LOAD_TRABALHADOR, SELECT_TRABALHADOR
@@ -260,8 +290,11 @@ public class ProcessoDadosPanel extends JPanel
inputTrabalhadorSexo.setObject( trabalhador.getSexos(), trabalhador.getSexo() );
inputTrabalhadorNome.setObject( trabalhador.getNome() );
inputTrabalhadorNacionalidade.setObject( trabalhador.getNacionalidade() );
- inputTrabalhadorObservacoes.setObject( trabalhador.getObservacoes() );
-
+ inputTrabalhadorBI.setObject( trabalhador.getBi() );
+ inputTrabalhadorObservacoes.setObject( trabalhador.getObservacoesGestao() );
+ inputTrabalhadorDataAdmissao.setObject(trabalhador.getDataAdmissao());
+ labelTrabalhadorDataNascimento.setText( "Data de Nascimento (" + getIdade( trabalhador.getDataNascimento() ) + " anos)" );
+
cardLayout.show( this, PANEL_TRABALHADOR_NAME );
}
else
@@ -278,6 +311,7 @@ public class ProcessoDadosPanel extends JPanel
inputProcessoDataFim.setObject( processo.getDataFim() );
inputProcessoDataInicio.setObject( processo.getDataInicio() );
inputProcessoEstado.setObject( processo.getEstados(), processo.getEstado() );
+ inputProcessoMotivo.setEditable( true );
inputProcessoMotivo.setObject( processo.getMotivos(), processo.getMotivo() );
cardLayout.show( this, PANEL_PROCESSO_NAME );
@@ -577,6 +611,12 @@ public class ProcessoDadosPanel extends JPanel
observacoes.setObservacao( text );
inputExameMarcacaoObsMensagem.setEditable( true );
}
+
+ @LeafUIActionBinding(action = SAVE_PROCESSO)
+ public void updateToSaveProcesso( TrabalhadoresProcesso processo)
+ {
+ processo.setMotivo( (Integer) inputProcessoMotivo.getSelectedObject() );
+ }
@LeafUIActionBinding(action = SAVE_CONSULTA_MARCACAO)
public void updateToSaveConsultaMarcacao( TrabalhadoresConsultasDatas marcacao )
@@ -651,7 +691,7 @@ public class ProcessoDadosPanel extends JPanel
private void setupTrabalhadorPanel()
{
- setupSimpleDataPanel( panelTrabalhador, "Trabalhador", labelTrabalhadorNome, inputTrabalhadorNome, labelTrabalhadorSexo, inputTrabalhadorSexo, labelTrabalhadorNacionalidade, inputTrabalhadorNacionalidade, labelTrabalhadorDataNascimento, inputTrabalhadorDataNascimento, labelTrabalhadorObservacoes, inputTrabalhadorObservacoes );
+ setupSimpleDataPanel( panelTrabalhador, "Trabalhador", labelTrabalhadorNome, inputTrabalhadorNome, labelTrabalhadorSexo, inputTrabalhadorSexo, labelTrabalhadorBI, inputTrabalhadorBI,labelTrabalhadorNacionalidade, inputTrabalhadorNacionalidade, labelTrabalhadorDataNascimento, inputTrabalhadorDataNascimento, labelTrabalhadorDataAdmissao, inputTrabalhadorDataAdmissao, labelTrabalhadorObservacoes, inputTrabalhadorObservacoes );
}
private void setupProcessoPanel()
diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java
index 8fa5522f..83190b5a 100755
--- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java
+++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java
@@ -73,7 +73,7 @@ public class ProcessoTreePanel extends JPanel
try
{
provider = ProcessoDataProvider.getProvider();
-
+
} catch( Exception e )
{
provider = null;
@@ -134,17 +134,27 @@ public class ProcessoTreePanel extends JPanel
mainTree.expandRow( n );
}
}
-
+
@LeafUIActionBinding(action = CREATE_PROCESSO)
- public void createConsultaNode( TrabalhadoresProcesso processo)
+ public void createProcessoNode( TrabalhadoresProcesso processo )
{
- if( processo!= null )
+ if( processo != null )
{
ProcessoMutableTreeNode node = new ProcessoMutableTreeNode( processo );
addAndRefresh( node, rootNode );
}
}
+ @LeafUIActionBinding(action = APAGAR_PROCESSO)
+ public void removeProcessoNode( TrabalhadoresProcesso processo )
+ {
+ if( processo != null )
+ {
+ ProcessoMutableTreeNode node = new ProcessoMutableTreeNode( processo );
+ removeNode( node );
+ }
+ }
+
@LeafUIActionBinding(action = CREATE_CONSULTA)
public void createConsultaNode( TrabalhadoresConsultas consulta )
{
@@ -160,11 +170,11 @@ public class ProcessoTreePanel extends JPanel
@LeafUIActionBinding(action = CREATE_CONSULTA_MARCACAO)
public void createConsultaMarcacaoNode( TrabalhadoresConsultasDatas marcacao )
{
- if( marcacao != null)
+ if( marcacao != null )
{
DefaultMutableTreeNode parentNode = nodeByObject.get( marcacao.getToTrabalhadoresConsultas() );
DataMutableTreeNode node = new DataMutableTreeNode( marcacao );
- addAndRefresh( node, parentNode );
+ addAndRefresh( node, parentNode );
}
}
@@ -195,10 +205,10 @@ public class ProcessoTreePanel extends JPanel
@LeafUIActionBinding(action = CREATE_EXAME)
public void createExameNode( TrabalhadoresEcds exame )
{
- if( exame!= null )
+ if( exame != null )
{
DefaultMutableTreeNode parentNode = nodeByObject.get( exame.getToTrabalhadoresProcesso() );
- ECDsMutableTreeNode node = new ECDsMutableTreeNode( exame);
+ ECDsMutableTreeNode node = new ECDsMutableTreeNode( exame );
node.setData( exame.getData() );
addAndRefresh( node, parentNode );
}
@@ -207,11 +217,11 @@ public class ProcessoTreePanel extends JPanel
@LeafUIActionBinding(action = CREATE_EXAME_MARCACAO)
public void createExameMarcacaoNode( TrabalhadoresEcdsDatas marcacao )
{
- if( marcacao != null)
+ if( marcacao != null )
{
DefaultMutableTreeNode parentNode = nodeByObject.get( marcacao.getToTrabalhadoresEcds() );
DataMutableTreeNode node = new DataMutableTreeNode( marcacao );
- addAndRefresh( node, parentNode );
+ addAndRefresh( node, parentNode );
}
}
@@ -238,22 +248,22 @@ public class ProcessoTreePanel extends JPanel
mainTree.setSelectionPath( new TreePath( node.getPath() ) );
}
}
-
- @LeafUIActionBinding(action = REFRESH )
+
+ @LeafUIActionBinding(action = REFRESH)
public void refresh()
{
DefaultMutableTreeNode selected = getSelectedNode();
if( selected != null )
{
-// ((DefaultTreeModel) mainTree.getModel()).nodeStructureChanged( rootNode );
+ // ((DefaultTreeModel) mainTree.getModel()).nodeStructureChanged(
+ // rootNode );
mainTree.setSelectionPath( new TreePath( rootNode.getPath() ) );
mainTree.setSelectionPath( new TreePath( selected.getPath() ) );
}
revalidate();
repaint();
}
-
-
+
protected List loadProcessos( Trabalhadores trabalhador )
{
List result = new ArrayList();
@@ -347,20 +357,25 @@ public class ProcessoTreePanel extends JPanel
private void addAndRefresh( DefaultMutableTreeNode node, DefaultMutableTreeNode parentNode )
{
addNodeTo( node, parentNode );
- refresh(node, parentNode);
+ refresh( node, parentNode );
}
-
-// private void removeNode( DefaultMutableTreeNode node )
-// {
-// if( node != null && !node.equals( rootNode ) && node.getParent() != null && node.getParent() instanceof DefaultMutableTreeNode)
-// {
-// DefaultMutableTreeNode parent = (DefaultMutableTreeNode) node.getParent();
-// node.removeFromParent();
-// refresh(parent, rootNode);
-// }
-// }
-
- private void refresh(DefaultMutableTreeNode newSelection, DefaultMutableTreeNode parentNode)
+
+ private void removeNode( DefaultMutableTreeNode node )
+ {
+ if( node != null )
+ {
+ DefaultMutableTreeNode parent = (DefaultMutableTreeNode) node.getParent();
+ if( parent == null )
+ {
+ parent = rootNode;
+ }
+ node.removeFromParent();
+ nodeByObject.remove( node.getUserObject() );
+ refresh( parent, rootNode );
+ }
+ }
+
+ private void refresh( DefaultMutableTreeNode newSelection, DefaultMutableTreeNode parentNode )
{
((DefaultTreeModel) mainTree.getModel()).nodeStructureChanged( parentNode );
mainTree.setSelectionPath( new TreePath( newSelection.getPath() ) );