From e866e51427099c1aa7532141d88ab5d1a9af89f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tiago=20Sim=C3=A3o?= Date: Tue, 18 Dec 2007 12:05:59 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@609 bb69d46d-e84e-40c8-a05a-06db0d633741 --- .../cayenne/objects/TrabalhadoresEcds.java | 15 +++++ .../objects/TrabalhadoresEcdsDatas.java | 36 ++++++++++ .../processo/ui/ProcessoAccoesPanel.java | 5 +- .../processo/ui/ProcessoDadosPanel.java | 66 +++++++++++++++---- .../processo/ui/ProcessoTreePanel.java | 39 ++++++++++- 5 files changed, 147 insertions(+), 14 deletions(-) diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java index 59009029..c7342885 100755 --- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java +++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcds.java @@ -1,5 +1,7 @@ package siprp.database.cayenne.objects; +import java.util.HashMap; + import siprp.database.cayenne.objects.auto._TrabalhadoresEcds; import siprp.medicina.MedicinaConstants; @@ -17,6 +19,19 @@ public class TrabalhadoresEcds extends _TrabalhadoresEcds implements MedicinaCon return isNew() ? isNewMessage : (getEstado() == null || getEstado() >= ESTADOS_EXAME_STR.length ? "" : ESTADOS_EXAME_STR[getEstado()]); } + public HashMap getEstados() + { + HashMap result = new HashMap(); + for( int i = 0; i < ESTADOS_EXAME_STR.length; ++i ) + { + if( ESTADOS_EXAME_STR[i] != null ) + { + result.put( new Integer( i ), ESTADOS_EXAME_STR[i] ); + } + } + return result; + } + @Override public String toString() { diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java index 29ea39c5..5cfe90ad 100755 --- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java +++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresEcdsDatas.java @@ -1,5 +1,8 @@ package siprp.database.cayenne.objects; +import java.util.Date; +import java.util.HashMap; + import siprp.database.cayenne.objects.auto._TrabalhadoresEcdsDatas; import siprp.medicina.MedicinaConstants; @@ -15,6 +18,39 @@ public class TrabalhadoresEcdsDatas extends _TrabalhadoresEcdsDatas implements M { return getEstado() == null || getEstado() >= ESTADOS_EXAME_STR.length ? "" : ESTADOS_EXAME_STR[ getEstado() ]; } + + public HashMap getEstados() + { + HashMap result = new HashMap(); + for( int i = 0; i < ESTADOS_EXAME_STR.length; ++i ) + { + if( ESTADOS_EXAME_STR[i] != null ) + { + result.put( new Integer( i ), ESTADOS_EXAME_STR[i] ); + } + } + return result; + } + + @Override + public void setData( Date date ) + { + if( date != null && this.getToTrabalhadoresEcds() != null && this.getEstado() != null && new Integer(ESTADO_POR_REALIZAR).equals(this.getEstado())) + { + this.getToTrabalhadoresEcds().setData( date ); + } + super.setData( date ); + } + + @Override + public void setEstado( Integer estado ) + { + if( estado != null && this.getToTrabalhadoresEcds() != null && (new Integer(ESTADO_POR_REALIZAR).equals( this.getEstado() ) || new Integer(ESTADO_POR_REALIZAR).equals( estado ))) + { + this.getToTrabalhadoresEcds().setEstado( estado ); + } + super.setEstado( estado ); + } } diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java index 2eadb74c..2790586a 100755 --- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java @@ -92,7 +92,7 @@ public class ProcessoAccoesPanel extends JPanel CREATE_CONSULTA, CREATE_CONSULTA_MARCACAO }, onChange = "") public final LeafButton buttonNovoProcessoConsulta = new LeafButton( "Nova Consulta" ); - @ActionActivation(onSelect = CREATE_EXAME, onChange = "") + @ActionActivation(onSelect = { CREATE_EXAME,CREATE_EXAME_MARCACAO }, onChange = "") public final LeafButton buttonNovoProcessoExame = new LeafButton( "Novo Exame" ); // consulta @@ -119,10 +119,13 @@ public class ProcessoAccoesPanel extends JPanel // observacoes marcacao consulta // exame + @ActionActivation(onSelect = CREATE_EXAME_MARCACAO, onChange = "") public final LeafButton buttonNovoExameMarcacao = new LeafButton( "Nova Marca" + ccedil + atilde + "o" ); // marcacao exame + @ActionActivation(onSelect = CREATE_EXAME_MARCACAO_OBSERVACOES, onChange = "") public final LeafButton buttonNovoExameMarcacaoEmail = new LeafButton( "Enviar e-Mail" ); + @ActionActivation(onSelect = CREATE_EXAME_MARCACAO_OBSERVACOES, onChange = "") public final LeafButton buttonNovoExameMarcacaoObservacoes = new LeafButton( "Adicionar Observa" + ccedil + atilde + "o" ); // email marcacao exame diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java index b47538ef..49ca07e6 100755 --- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java @@ -145,14 +145,14 @@ public class ProcessoDadosPanel extends JPanel private final JLabel labelExameEstado = new JLabel( "Estado" ); private final JLabel labelExameData = new JLabel( "Data" ); - public final LeafInputField inputExameEstado = new LeafInputField(); + public final LeafInputField> inputExameEstado = new LeafInputField>(); public final LeafInputField inputExameData = new LeafInputField(); // marcacao exame private final JLabel labelExameMarcacaoEstado = new JLabel( "Estado" ); private final JLabel labelExameMarcacaoData = new JLabel( "Data" ); - public final LeafInputField inputExameMarcacaoEstado = new LeafInputField(); + public final LeafInputField> inputExameMarcacaoEstado = new LeafInputField>(); public final LeafInputField inputExameMarcacaoData = new LeafInputField(); // email marcacao exame @@ -323,7 +323,8 @@ public class ProcessoDadosPanel extends JPanel if( exame != null ) { inputExameData.setObject( exame.getData() ); - inputExameEstado.setObject( exame.getEstadoString() ); + inputExameEstado.setObject( exame.getEstados() ); + inputExameEstado.setSelectedObject( exame.getEstado() ); cardLayout.show( this, PANEL_EXAME_NAME ); } else @@ -338,7 +339,8 @@ public class ProcessoDadosPanel extends JPanel if( exameMarcacao != null ) { inputExameMarcacaoData.setObject( exameMarcacao.getData() ); - inputExameMarcacaoEstado.setObject( exameMarcacao.getEstadoString() ); + inputExameMarcacaoEstado.setObject( exameMarcacao.getEstados() ); + inputExameMarcacaoEstado.setSelectedObject( exameMarcacao.getEstado() ); cardLayout.show( this, PANEL_EXAME_MARCACAO_NAME ); } else @@ -404,6 +406,33 @@ public class ProcessoDadosPanel extends JPanel inputConsultaMarcacaoObsMensagem.setEditable( true ); } + @LeafUIActionBinding(action = CREATE_EXAME) + public void setForNewExame( TrabalhadoresEcdsDatas exame ) + { + } + + @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO) + public void setForNewExameMarcacao( TrabalhadoresEcdsDatas marcacao ) + { + LeafCalendarDialog calendar = new LeafCalendarDialog( getParentFrame(), this, false, false); + Date date = calendar.getDate(); + marcacao.setData( date ); + } + + @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO_EMAIL) + public void setForNewExameMarcacaoEmail( TrabalhadoresEcdsDatasEmails email ) + { + } + + @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO_OBSERVACOES) + public void setForNewExameMarcacaoObservacoes( TrabalhadoresEcdsDatasObservacoes observacoes ) + { + LeafTextDialog textDialog = new LeafTextDialog( getParentFrame(), this, ""); + String text = textDialog.getText(); + observacoes.setObservacao( text ); + inputExameMarcacaoObsMensagem.setEditable( true ); + } + @LeafUIActionBinding(action = SAVE_CONSULTA) public void updateToSaveConsulta( TrabalhadoresConsultas consulta ) { @@ -421,9 +450,6 @@ public class ProcessoDadosPanel extends JPanel @LeafUIActionBinding(action = SAVE_CONSULTA_MARCACAO_EMAIL) public void updateToSaveConsultaMarcacaoEmail( TrabalhadoresConsultasDatasEmails email ) { - email.setBody( inputConsultaMarcacaoEmailBody.getText() ); - email.setData( inputConsultaMarcacaoEmailData.getObject() ); - email.setSubject( inputConsultaMarcacaoEmailSubject.getText() ); } @LeafUIActionBinding(action = SAVE_CONSULTA_MARCACAO_OBSERVACOES) @@ -431,12 +457,30 @@ public class ProcessoDadosPanel extends JPanel { observacoes.setObservacao( inputConsultaMarcacaoObsMensagem.getText() ); } + + @LeafUIActionBinding(action = SAVE_EXAME) + public void updateToSaveExame( TrabalhadoresEcds exame ) + { + exame.setData( inputExameData.getObject() ); + exame.setEstado( (Integer) inputExameEstado.getSelectedObject() ); + } - @LeafUIActionBinding(action = CREATE_EXAME) - public void setForNewExame( TrabalhadoresEcds exame ) + @LeafUIActionBinding(action = SAVE_EXAME_MARCACAO) + public void updateToSaveExameMarcacao( TrabalhadoresEcdsDatas marcacao ) + { + marcacao.setData( inputExameMarcacaoData.getObject() ); + marcacao.setEstado( (Integer) inputExameMarcacaoEstado.getSelectedObject() ); + } + + @LeafUIActionBinding(action = SAVE_EXAME_MARCACAO_EMAIL) + public void updateToSaveExameMarcacaoEmail( TrabalhadoresEcdsDatasEmails email ) + { + } + + @LeafUIActionBinding(action = SAVE_EXAME_MARCACAO_OBSERVACOES) + public void updateToSaveExameMarcacaoObservacoes( TrabalhadoresEcdsDatasObservacoes observacoes ) { - inputExameData.setEditable( true ); - inputExameEstado.setEditable( true ); + observacoes.setObservacao( inputExameMarcacaoObsMensagem.getText() ); } private void setupStartPanel() diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java index 613be069..1e448c04 100755 --- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java @@ -195,11 +195,46 @@ 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 ); + } + } + + @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO) + public void createExameMarcacaoNode( TrabalhadoresEcdsDatas marcacao ) + { + if( marcacao != null) + { + DefaultMutableTreeNode parentNode = nodeByObject.get( marcacao.getToTrabalhadoresEcds() ); + DataMutableTreeNode node = new DataMutableTreeNode( marcacao ); + addAndRefresh( node, parentNode ); + } + } + + + + @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO_EMAIL) + public void createExameMarcacaoEmailNode( TrabalhadoresEcdsDatasEmails email ) + { + if( email != null ) + { + DefaultMutableTreeNode parentNode = nodeByObject.get( email.getToTrabalhadoresEcdsDatas() ); + MailMutableTreeNode node = new MailMutableTreeNode( email ); + addAndRefresh( node, parentNode ); + } + } + + @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO_OBSERVACOES) + public void createConsultaMarcacaoObservacoesNode( TrabalhadoresEcdsDatasObservacoes observacoes ) + { + if( observacoes != null ) + { + DefaultMutableTreeNode parentNode = nodeByObject.get( observacoes.getToTrabalhadoresEcdsDatas() ); + ObservacoesMutableTreeNode node = new ObservacoesMutableTreeNode( observacoes ); addNodeTo( node, parentNode ); ((DefaultTreeModel) mainTree.getModel()).nodeStructureChanged( parentNode ); mainTree.setSelectionPath( new TreePath( node.getPath() ) );