From c4a42666057adc865ad50b17a694fd37856fa67f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tiago=20Sim=C3=A3o?= Date: Mon, 4 Aug 2008 17:19:50 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@742 bb69d46d-e84e-40c8-a05a-06db0d633741 --- trunk/SIPRPSoft/src/SIPRPNode.driver.xml | 4 +- .../SIPRPSoft/src/leaf/ui/LeafInputField.java | 3 +- .../companydataloaders/SIPRPDataLoader.java | 16 +-- .../objects/TrabalhadoresFichasAptidao.java | 44 ++++--- .../SIPRPSoft/src/siprp/ficha/ExamePanel.java | 27 +---- .../src/siprp/ficha/FichaWindow.java | 18 +++ .../lembretes/LembretesDataProvider.java | 103 +++++++++-------- .../src/siprp/lembretes/LembretesDemon.java | 1 - .../externos/actions/TratarExternoAction.java | 9 +- .../marcacoes/MarcacoesDataProvider.java | 4 +- ...ratarCriacaoProcessoTrabalhadorAction.java | 11 +- .../TratarMarcacaoEstabelecimentoAction.java | 7 ++ .../TratarMarcacaoTrabalhadorAction.java | 109 ++++++++++-------- .../processo/logic/MedicinaProcessoLogic.java | 10 +- .../processo/ui/ProcessoAccoesPanel.java | 69 ++++++++--- .../processo/ui/ProcessoDadosPanel.java | 22 +++- .../processo/ui/ProcessoTreePanel.java | 20 +++- 17 files changed, 298 insertions(+), 179 deletions(-) diff --git a/trunk/SIPRPSoft/src/SIPRPNode.driver.xml b/trunk/SIPRPSoft/src/SIPRPNode.driver.xml index 897b3592..31d88c5d 100644 --- a/trunk/SIPRPSoft/src/SIPRPNode.driver.xml +++ b/trunk/SIPRPSoft/src/SIPRPNode.driver.xml @@ -1,7 +1,7 @@ - - + + diff --git a/trunk/SIPRPSoft/src/leaf/ui/LeafInputField.java b/trunk/SIPRPSoft/src/leaf/ui/LeafInputField.java index 01fc5938..5ac269f6 100644 --- a/trunk/SIPRPSoft/src/leaf/ui/LeafInputField.java +++ b/trunk/SIPRPSoft/src/leaf/ui/LeafInputField.java @@ -429,7 +429,8 @@ public class LeafInputField extends JPanel implements F { if( object instanceof Date ) { - thiz = new JTextArea( sdf.format( object ) ); + Date date = (Date) object; + thiz = new JTextArea( date.getTime() == 0 ? "" : sdf.format( object ) ); } else if( object instanceof Map ) { diff --git a/trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPDataLoader.java b/trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPDataLoader.java index 9768aad5..da5972ed 100644 --- a/trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPDataLoader.java +++ b/trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPDataLoader.java @@ -98,20 +98,20 @@ public class SIPRPDataLoader implements CompanyDataLoader // Singleton.setInstance( SingletonConstants.LOCAL_DB_NAME, "siprp_local_3" ); // Singleton.setInstance( SingletonConstants.LOCAL_DRIVER_NAME, "org.postgresql.Driver" ); - Singleton.setInstance( SingletonConstants.LOCAL_USER, "postgres" ); - Singleton.setInstance( SingletonConstants.LOCAL_PASSWORD, "Typein" ); - Singleton.setInstance( SingletonConstants.LOCAL_URL_PREFIX, "jdbc:postgresql://" ); - Singleton.setInstance( SingletonConstants.LOCAL_URL, "10.158.2.2:5432" ); - Singleton.setInstance( SingletonConstants.LOCAL_DB_NAME, "siprp_local" ); - Singleton.setInstance( SingletonConstants.LOCAL_DRIVER_NAME, "org.postgresql.Driver" ); - // Singleton.setInstance( SingletonConstants.LOCAL_USER, "postgres" ); // Singleton.setInstance( SingletonConstants.LOCAL_PASSWORD, "Typein" ); // Singleton.setInstance( SingletonConstants.LOCAL_URL_PREFIX, "jdbc:postgresql://" ); -// Singleton.setInstance( SingletonConstants.LOCAL_URL, "dbserver:5432" ); +// Singleton.setInstance( SingletonConstants.LOCAL_URL, "10.158.2.2:5432" ); // Singleton.setInstance( SingletonConstants.LOCAL_DB_NAME, "siprp_local" ); // Singleton.setInstance( SingletonConstants.LOCAL_DRIVER_NAME, "org.postgresql.Driver" ); + Singleton.setInstance( SingletonConstants.LOCAL_USER, "postgres" ); + Singleton.setInstance( SingletonConstants.LOCAL_PASSWORD, "Typein" ); + Singleton.setInstance( SingletonConstants.LOCAL_URL_PREFIX, "jdbc:postgresql://" ); + Singleton.setInstance( SingletonConstants.LOCAL_URL, "dbserver:5432" ); + Singleton.setInstance( SingletonConstants.LOCAL_DB_NAME, "siprp_local" ); + Singleton.setInstance( SingletonConstants.LOCAL_DRIVER_NAME, "org.postgresql.Driver" ); + // // Singleton.setInstance( SingletonConstants.LOCAL_USER, "postgres" ); // Singleton.setInstance( SingletonConstants.LOCAL_PASSWORD, "Typein" ); diff --git a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresFichasAptidao.java b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresFichasAptidao.java index e88c1b8d..2e35b7b7 100755 --- a/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresFichasAptidao.java +++ b/trunk/SIPRPSoft/src/siprp/database/cayenne/objects/TrabalhadoresFichasAptidao.java @@ -12,10 +12,14 @@ public class TrabalhadoresFichasAptidao extends _TrabalhadoresFichasAptidao { public String toString() { String result = ""; - Date data = getToExames().getProximoExame(); - if( data != null ) + Exames exame = getToExames(); + if( exame != null ) { - result = sdf.format( data ); + Date data = exame.getProximoExame(); + if( data != null ) + { + result = sdf.format( data ); + } } return result + ": " + getEstadoString(); } @@ -23,23 +27,27 @@ public class TrabalhadoresFichasAptidao extends _TrabalhadoresFichasAptidao { private String getEstadoString() { String result = ""; - Integer resultadoCodigo = getToExames().getResultado(); - if( resultadoCodigo != null ) + Exames exame = getToExames(); + if( exame != null ) { - switch( resultadoCodigo.intValue() ) + Integer resultadoCodigo = exame.getResultado(); + if( resultadoCodigo != null ) { - case 1: - result += "Apto"; - break; - case 2: - result += "Apto (cond)"; - break; - case 3: - result += "Inapto (temp)"; - break; - case 4: - result += "Inapto (def)"; - break; + switch( resultadoCodigo.intValue() ) + { + case 1: + result += "Apto"; + break; + case 2: + result += "Apto (cond)"; + break; + case 3: + result += "Inapto (temp)"; + break; + case 4: + result += "Inapto (def)"; + break; + } } } return result; diff --git a/trunk/SIPRPSoft/src/siprp/ficha/ExamePanel.java b/trunk/SIPRPSoft/src/siprp/ficha/ExamePanel.java index 42218ecd..7b574bb5 100644 --- a/trunk/SIPRPSoft/src/siprp/ficha/ExamePanel.java +++ b/trunk/SIPRPSoft/src/siprp/ficha/ExamePanel.java @@ -37,6 +37,7 @@ import siprp.data.DisableDeleteHandler; import siprp.data.ExameData; import siprp.data.Marcacao; import siprp.data.MarcacaoTrabalhadorData; +import siprp.lembretes.LembretesDataProvider; import siprp.medicina.MedicinaConstants; import com.evolute.utils.Singleton; @@ -64,6 +65,7 @@ public class ExamePanel extends JPanel } private JDOProvider JDO; + private JCalendarPanel dataExamePanel; private BetterButtonGroup tipoGroup; private JRadioButton admissaoRadio; @@ -500,31 +502,6 @@ public class ExamePanel extends JPanel { throw new ValuesException( msg.toString() ); } - String meses = (String) JOptionPane.showInputDialog( - this, - "Quantos meses at"+eacute+" a pr"+oacute+"xima consulta", - "", - JOptionPane.QUESTION_MESSAGE, - null, - null, - "22" ); - if( meses != null ) - { - try - { - Integer numMeses = new Integer( meses ); - if( numMeses > 0 ) - { - Calendar proxData = Calendar.getInstance(); - proxData.add( Calendar.MONTH, numMeses ); - exame.set( ExameData.PROXIMO_EXAME, proxData.getTime() ); - } - } - catch ( NumberFormatException e ) - { - e.printStackTrace(); - } - } return exame; } diff --git a/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java b/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java index 563c8461..6a8eaf82 100644 --- a/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java +++ b/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java @@ -38,6 +38,7 @@ import siprp.data.ExameData; import siprp.data.MedicoData; import siprp.data.TrabalhadorData; import siprp.importer.Importer; +import siprp.lembretes.LembretesDataProvider; import siprp.medicina.MarcacoesMedicinaHandler; import siprp.printer.Printer; @@ -68,6 +69,7 @@ public class FichaWindow extends TabbedWindow private ObservacoesPanel observacoesPanel; private ExamePanel examePanel; + private LembretesDataProvider lembretesProvider; private FichaDataProvider fdpProvider; private MarcacoesMedicinaHandler marcacoesHandler; private Integer empresaID; @@ -98,6 +100,7 @@ public class FichaWindow extends TabbedWindow fdpProvider = ( FichaDataProvider ) FichaDataProvider.getProvider(); JDO = ( JDOProvider ) Singleton.getInstance( Singleton.DEFAULT_JDO_PROVIDER ); marcacoesHandler = new MarcacoesMedicinaHandler(); + lembretesProvider = LembretesDataProvider.getProvider(); setupComponents(); } @@ -386,6 +389,21 @@ public class FichaWindow extends TabbedWindow { iex.printStackTrace(); } + Integer motivoProximoExame = (Integer) exame.get( ExameData.TIPO ); + if ( motivoProximoExame != null && motivoProximoExame.equals( new Integer( FichaAptidaoConstants.CODIGO_TIPO_OCASIONAL ) ) ) + { + Date proximoExameDate = (Date) exame.get( ExameData.PROXIMO_EXAME ); + if( proximoExameDate != null && proximoExameDate.getTime() > 0 ) + { + Calendar whenCal = Calendar.getInstance(); + whenCal.setTime( proximoExameDate ); + whenCal.add( Calendar.MONTH, -2 ); + Date now = new Date(); + Date when = whenCal.getTime(); + lembretesProvider.criarLembreteFicha( exame, now.after( when ) ? now : when ); + System.out.println(new Date() + ": A criar lembrete"); + } + } // createPDF( exame ); // print(); } diff --git a/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDataProvider.java b/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDataProvider.java index 8feefe9c..54f15dd2 100644 --- a/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDataProvider.java +++ b/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDataProvider.java @@ -15,10 +15,12 @@ import java.util.HashMap; import java.util.LinkedList; import java.util.List; +import siprp.data.ExameData; import siprp.database.cayenne.objects.Empresas; import siprp.database.cayenne.objects.Estabelecimentos; import siprp.database.cayenne.objects.Trabalhadores; import siprp.database.cayenne.providers.MedicinaDAO; +import siprp.ficha.FichaAptidaoConstants; import siprp.medicina.MedicinaConstants; import com.evolute.utils.Singleton; @@ -348,7 +350,8 @@ public class LembretesDataProvider null, null, new String[]{ "id" }, - new Field( "proximo_exame" ).isEqual( nowDate.getTime() ), + new Field( "proximo_exame" ).isEqual( nowDate.getTime() ). + and( new Field( "tipo" ).isEqual( FichaAptidaoConstants.CODIGO_TIPO_PERIODICO ) ), null, null, null, null); Virtual2DArray array = EXECUTER.executeQuery( query ); for( int i = 0; i < array.columnLength(); fichasExpiradas.add( (Integer) array.get( i, 0 ) ), ++i ); @@ -360,55 +363,35 @@ public class LembretesDataProvider } - public List getFichasExpiradasSemData() - { - List fichasExpiradas = new LinkedList(); - try - { - Calendar date = makeDateCalendar(); - date.add( Calendar.MONTH, -22 ); - Select2 query = new Select2( - new String[]{ "exames" }, - null, - null, - new String[]{ "id" }, - new Field( "proximo_exame" ).isEqual( null ).and( new Field( "data" ).isEqual( date.getTime() ) ), - null, null, null, null); - Virtual2DArray array = EXECUTER.executeQuery( query ); - for( int i = 0; i < array.columnLength(); fichasExpiradas.add( (Integer) array.get( i, 0 ) ), ++i ); - } catch( DBException e ) - { - e.printStackTrace(); - } - return fichasExpiradas; - } +// public List getFichasExpiradasSemData() +// { +// List fichasExpiradas = new LinkedList(); +// try +// { +// Calendar date = makeDateCalendar(); +// date.add( Calendar.MONTH, -22 ); +// Select2 query = new Select2( +// new String[]{ "exames" }, +// null, +// null, +// new String[]{ "id" }, +// new Field( "proximo_exame" ).isEqual( null ).and( new Field( "data" ).isEqual( date.getTime() ) ), +// null, null, null, null); +// Virtual2DArray array = EXECUTER.executeQuery( query ); +// for( int i = 0; i < array.columnLength(); fichasExpiradas.add( (Integer) array.get( i, 0 ) ), ++i ); +// } catch( DBException e ) +// { +// e.printStackTrace(); +// } +// return fichasExpiradas; +// } public void createLembretesForFichas( List fichas ) { + Integer tipoID = getTipoLembreteIDByCodigo( LembretesConstants.CODE_MARCACOES ); for( Integer fichaID : fichas ) { - Integer tipoID = getTipoLembreteIDByCodigo( LembretesConstants.CODE_MARCACOES ); - try - { - Integer trabalhadorID = getTrabalhadorIDForFichaID( fichaID ); - Trabalhadores trabalhador = medicinaDAO.getTrabalhadorByID( trabalhadorID ); - Estabelecimentos estabelecimento = trabalhador.getToEstabelecimentos(); - Empresas empresa = estabelecimento.getToEmpresas(); - criarLembreteConsulta( tipoID, - new Date(), - MedicinaConstants.LEMBRETE_RENOVACAO_FICHA_APTIDAO_STRING, - null, - empresa.getId(), - estabelecimento.getId(), - trabalhador.getId(), - null - ); - } - catch(Exception e) - { - System.out.println(e); - } - + createLembreteForFicha( fichaID, tipoID, new Date() ); } } @@ -433,4 +416,34 @@ public class LembretesDataProvider return result; } + private void createLembreteForFicha( Integer fichaID, Integer tipoID, Date when ) + { + try + { + Integer trabalhadorID = getTrabalhadorIDForFichaID( fichaID ); + Trabalhadores trabalhador = medicinaDAO.getTrabalhadorByID( trabalhadorID ); + Estabelecimentos estabelecimento = trabalhador.getToEstabelecimentos(); + Empresas empresa = estabelecimento.getToEmpresas(); + criarLembreteConsulta( tipoID, + when == null ? new Date() : when, + MedicinaConstants.LEMBRETE_RENOVACAO_FICHA_APTIDAO_STRING, + null, + empresa.getId(), + estabelecimento.getId(), + trabalhador.getId(), + null + ); + } + catch(Exception e) + { + System.out.println(e); + } + } + + public void criarLembreteFicha( ExameData exame, Date when ) + { + Integer tipoID = getTipoLembreteIDByCodigo( LembretesConstants.CODE_MARCACOES ); + createLembreteForFicha( (Integer) exame.get( ExameData.ID ), tipoID, when ); + } + } diff --git a/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDemon.java b/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDemon.java index 438f4ab7..9d890954 100644 --- a/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDemon.java +++ b/trunk/SIPRPSoft/src/siprp/lembretes/LembretesDemon.java @@ -96,7 +96,6 @@ public class LembretesDemon extends Thread private void doStuff() { List fichasExpiradas = lembretesProvider.getFichasExpiradasID(); - fichasExpiradas.addAll( lembretesProvider.getFichasExpiradasSemData() ); lembretesProvider.createLembretesForFichas( fichasExpiradas ); } diff --git a/trunk/SIPRPSoft/src/siprp/lembretes/externos/actions/TratarExternoAction.java b/trunk/SIPRPSoft/src/siprp/lembretes/externos/actions/TratarExternoAction.java index 2247bea8..4156dbdf 100755 --- a/trunk/SIPRPSoft/src/siprp/lembretes/externos/actions/TratarExternoAction.java +++ b/trunk/SIPRPSoft/src/siprp/lembretes/externos/actions/TratarExternoAction.java @@ -9,6 +9,7 @@ package siprp.lembretes.externos.actions; +import java.awt.Component; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; @@ -68,7 +69,6 @@ public class TratarExternoAction extends AbstractAction if( lembrete == null ) { JOptionPane.showMessageDialog( null, "Este lembrete j\u00e1 foi tratado.", "J\u00e1 tratado", JOptionPane.WARNING_MESSAGE ); - return; } else { @@ -86,8 +86,13 @@ public class TratarExternoAction extends AbstractAction window.runActionLater( MedicinaProcessoLogic.SELECT_TRABALHADOR, trabalhador ); window.runPendingActions(); window.setVisible( true ); + lembretesProvider.apagarLembreteByID( lembreteID ); + } + Object source = e.getSource(); + if( source instanceof Component ) + { + ((Component) source).setEnabled( false ); } - lembretesProvider.apagarLembreteByID( lembreteID ); } catch( Exception ex ) { DialogException.showExceptionMessage( ex, "Erro a tratar", true ); diff --git a/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/MarcacoesDataProvider.java b/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/MarcacoesDataProvider.java index 8bb98340..a564c3ea 100755 --- a/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/MarcacoesDataProvider.java +++ b/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/MarcacoesDataProvider.java @@ -126,8 +126,8 @@ public class MarcacoesDataProvider Date data = ( Date ) array.get( n, 3 ); Calendar c = Calendar.getInstance(); c.setTime( data ); - c.add( Calendar.MONTH, 2 ); - +// c.add( Calendar.MONTH, 2 ); +// String trabalhador = ( String ) array.get( n, 4 ); String split[] = trabalhador.split( " " ); trabalhador = split[ 0 ] + " " + ( split.length > 2 ? split[ 1 ].charAt( 0 ) + ". " : " " ) + diff --git a/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/actions/TratarCriacaoProcessoTrabalhadorAction.java b/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/actions/TratarCriacaoProcessoTrabalhadorAction.java index 14971182..a38122bb 100644 --- a/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/actions/TratarCriacaoProcessoTrabalhadorAction.java +++ b/trunk/SIPRPSoft/src/siprp/lembretes/marcacoes/actions/TratarCriacaoProcessoTrabalhadorAction.java @@ -13,6 +13,8 @@ import com.evolute.utils.Singleton; import com.evolute.utils.data.IDObject; import com.evolute.utils.jdo.JDOProvider; import com.evolute.utils.ui.DialogException; + +import java.awt.Component; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.JOptionPane; @@ -79,8 +81,9 @@ public class TratarCriacaoProcessoTrabalhadorAction extends AbstractAction { JOptionPane.showMessageDialog( null, "Este lembrete j\u00e1 foi tratado.", "J\u00e1 tratado", JOptionPane.WARNING_MESSAGE ); - return; } + else + { Trabalhadores trabalhador = null; Estabelecimentos estabelecimento = null; Empresas empresa = null; @@ -96,6 +99,12 @@ public class TratarCriacaoProcessoTrabalhadorAction extends AbstractAction window.runPendingActions(); window.setVisible( true ); lembretesProvider.apagarLembreteByID( lembreteID ); + } + Object source = e.getSource(); + if( source instanceof Component ) + { + ((Component) source).setEnabled( false ); + } } catch( Exception ex ) { diff --git a/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoEstabelecimentoAction.java b/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoEstabelecimentoAction.java index 58047330..8f4b8ef0 100644 --- a/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoEstabelecimentoAction.java +++ b/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoEstabelecimentoAction.java @@ -11,6 +11,8 @@ package siprp.lembretes.remarcacoes.actions; import com.evolute.utils.data.IDObject; import com.evolute.utils.ui.DialogException; + +import java.awt.Component; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; @@ -32,6 +34,11 @@ public class TratarMarcacaoEstabelecimentoAction extends AbstractAction { try { + Object source = e.getSource(); + if( source instanceof Component ) + { + ((Component) source).setEnabled( false ); + } } catch( Exception ex ) { diff --git a/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoTrabalhadorAction.java b/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoTrabalhadorAction.java index 43246656..17706673 100644 --- a/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoTrabalhadorAction.java +++ b/trunk/SIPRPSoft/src/siprp/lembretes/remarcacoes/actions/TratarMarcacaoTrabalhadorAction.java @@ -13,6 +13,8 @@ import com.evolute.utils.Singleton; import com.evolute.utils.data.IDObject; import com.evolute.utils.jdo.JDOProvider; import com.evolute.utils.ui.DialogException; + +import java.awt.Component; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.JOptionPane; @@ -79,63 +81,70 @@ public class TratarMarcacaoTrabalhadorAction extends AbstractAction { JOptionPane.showMessageDialog( null, "Este lembrete j\u00e1 foi tratado.", "J\u00e1 tratado", JOptionPane.WARNING_MESSAGE ); - return; - } - if( lembrete.getMarcacaoTrabalhadorID() != null ) - { - // old model - MarcacaoTrabalhadorData marcacao = ( MarcacaoTrabalhadorData ) JDO.load( MarcacaoTrabalhadorData.class, lembrete.getMarcacaoTrabalhadorID() ); - TrabalhadorData trabalhador = ( TrabalhadorData ) marcacao.get( MarcacaoTrabalhadorData.TRABALHADOR ); - EstabelecimentoData estabelecimento = ( EstabelecimentoData ) trabalhador.get( TrabalhadorData.ESTABELECIMENTO ); - EmpresaData empresa = ( EmpresaData ) estabelecimento.get( EstabelecimentoData.EMPRESA ); - - lembretesProvider.apagarLembreteByID( lembreteID ); - setEnabled( false ); - tracker.getMedicinaWindow().setVisible( true ); - tracker.getMedicinaWindow().setEmpresaAndEstabelecimentoAndTrabalhador( (Integer) empresa.get( EmpresaData.ID ), - ( Integer ) estabelecimento.get( EstabelecimentoData.ID ), - ( Integer ) trabalhador.get( TrabalhadorData.ID ) ); } else { - // new model - Integer consultaID = lembrete.getConsultaDataID(); - Integer exameID = lembrete.getExameDataID(); - TrabalhadoresConsultasDatas consultaMarcacao = null; - TrabalhadoresConsultas consulta = null; - TrabalhadoresEcdsDatas exameMarcacao = null; - TrabalhadoresEcds exame = null; - TrabalhadoresProcesso processo = null; - Trabalhadores trabalhador = null; - Estabelecimentos estabelecimento = null; - Empresas empresa = null; - if( consultaID != null ) + if( lembrete.getMarcacaoTrabalhadorID() != null ) { - consultaMarcacao = medicinaDAO.getConsultaMarcacaoByID( consultaID ); - consulta = consultaMarcacao.getToTrabalhadoresConsultas(); - processo = consulta.getToTrabalhadoresProcesso(); + // old model + MarcacaoTrabalhadorData marcacao = ( MarcacaoTrabalhadorData ) JDO.load( MarcacaoTrabalhadorData.class, lembrete.getMarcacaoTrabalhadorID() ); + TrabalhadorData trabalhador = ( TrabalhadorData ) marcacao.get( MarcacaoTrabalhadorData.TRABALHADOR ); + EstabelecimentoData estabelecimento = ( EstabelecimentoData ) trabalhador.get( TrabalhadorData.ESTABELECIMENTO ); + EmpresaData empresa = ( EmpresaData ) estabelecimento.get( EstabelecimentoData.EMPRESA ); + + lembretesProvider.apagarLembreteByID( lembreteID ); + setEnabled( false ); + tracker.getMedicinaWindow().setVisible( true ); + tracker.getMedicinaWindow().setEmpresaAndEstabelecimentoAndTrabalhador( (Integer) empresa.get( EmpresaData.ID ), + ( Integer ) estabelecimento.get( EstabelecimentoData.ID ), + ( Integer ) trabalhador.get( TrabalhadorData.ID ) ); } - else if( exameID != null ) + else { - exameMarcacao = medicinaDAO.getExameMarcacaoByID( exameID ); - exame = exameMarcacao.getToTrabalhadoresEcds(); - processo = exame.getToTrabalhadoresProcesso(); + // new model + Integer consultaID = lembrete.getConsultaDataID(); + Integer exameID = lembrete.getExameDataID(); + TrabalhadoresConsultasDatas consultaMarcacao = null; + TrabalhadoresConsultas consulta = null; + TrabalhadoresEcdsDatas exameMarcacao = null; + TrabalhadoresEcds exame = null; + TrabalhadoresProcesso processo = null; + Trabalhadores trabalhador = null; + Estabelecimentos estabelecimento = null; + Empresas empresa = null; + if( consultaID != null ) + { + consultaMarcacao = medicinaDAO.getConsultaMarcacaoByID( consultaID ); + consulta = consultaMarcacao.getToTrabalhadoresConsultas(); + processo = consulta.getToTrabalhadoresProcesso(); + } + else if( exameID != null ) + { + exameMarcacao = medicinaDAO.getExameMarcacaoByID( exameID ); + exame = exameMarcacao.getToTrabalhadoresEcds(); + processo = exame.getToTrabalhadoresProcesso(); + } + trabalhador = processo.getToTrabalhadores(); + estabelecimento = trabalhador.getToEstabelecimentos(); + empresa = estabelecimento.getToEmpresas(); + MedicinaProcessoWindow window = tracker.getMedicinaProcessoWindow(); + + window.runActionLater( MedicinaProcessoLogic.SELECT_EMPRESA, empresa ); + window.runActionLater( MedicinaProcessoLogic.SELECT_ESTABELECIMENTO, estabelecimento ); + window.runActionLater( MedicinaProcessoLogic.LOAD_TRABALHADOR, trabalhador ); + window.runActionLater( MedicinaProcessoLogic.SELECT_TRABALHADOR, trabalhador ); + window.runActionLater( MedicinaProcessoLogic.SELECT_PROCESSO, processo ); + window.runActionLater( consulta == null ? MedicinaProcessoLogic.SELECT_EXAME : MedicinaProcessoLogic.SELECT_CONSULTA, consulta == null ? exame : consulta ); + window.runActionLater( consulta == null ? MedicinaProcessoLogic.CREATE_EXAME_MARCACAO : MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO, null ); + window.runPendingActions(); + window.setVisible( true ); + lembretesProvider.apagarLembreteByID( lembreteID ); } - trabalhador = processo.getToTrabalhadores(); - estabelecimento = trabalhador.getToEstabelecimentos(); - empresa = estabelecimento.getToEmpresas(); - MedicinaProcessoWindow window = tracker.getMedicinaProcessoWindow(); - - window.runActionLater( MedicinaProcessoLogic.SELECT_EMPRESA, empresa ); - window.runActionLater( MedicinaProcessoLogic.SELECT_ESTABELECIMENTO, estabelecimento ); - window.runActionLater( MedicinaProcessoLogic.LOAD_TRABALHADOR, trabalhador ); - window.runActionLater( MedicinaProcessoLogic.SELECT_TRABALHADOR, trabalhador ); - window.runActionLater( MedicinaProcessoLogic.SELECT_PROCESSO, processo ); - window.runActionLater( consulta == null ? MedicinaProcessoLogic.SELECT_EXAME : MedicinaProcessoLogic.SELECT_CONSULTA, consulta == null ? exame : consulta ); - window.runActionLater( consulta == null ? MedicinaProcessoLogic.CREATE_EXAME_MARCACAO : MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO, null ); - window.runPendingActions(); - window.setVisible( true ); - lembretesProvider.apagarLembreteByID( lembreteID ); + } + Object source = e.getSource(); + if( source instanceof Component ) + { + ((Component) source).setEnabled( false ); } } catch( Exception ex ) diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java index 32ca6546..50c7bd8e 100755 --- a/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/logic/MedicinaProcessoLogic.java @@ -158,9 +158,15 @@ public class MedicinaProcessoLogic extends LeafLogic @Action(isSave = false) public static final String APAGAR_CONSULTA = "APAGAR_CONSULTA"; + + @Action(isSave = false) + public static final String APAGAR_CONSULTA_MARCACAO = "APAGAR_CONSULTA_MARCACAO"; @Action(isSave = false) public static final String APAGAR_EXAME = "APAGAR_EXAME"; + + @Action(isSave = false) + public static final String APAGAR_EXAME_MARCACAO = "APAGAR_EXAME_MARCACAO"; @Action(isSave = false) public static final String REFRESH = "REFRESH"; @@ -219,7 +225,7 @@ public class MedicinaProcessoLogic extends LeafLogic }) public TrabalhadoresConsultas currentConsulta = null; - @LeafObject(useWith = SAVE_CONSULTA_MARCACAO) + @LeafObject(useWith = { SAVE_CONSULTA_MARCACAO, APAGAR_CONSULTA_MARCACAO } ) public TrabalhadoresConsultasDatas currentConsultaMarcacao = null; @LeafObject(useWith = SAVE_CONSULTA_MARCACAO_EMAIL) @@ -238,7 +244,7 @@ public class MedicinaProcessoLogic extends LeafLogic public TrabalhadoresEcdsDatasEmails currentExameMarcacaoEmail = null; @LeafObject(useWith = { - SAVE_EXAME_MARCACAO, REALIZAR_PARCIAL_EXAME_MARCACAO + SAVE_EXAME_MARCACAO, REALIZAR_PARCIAL_EXAME_MARCACAO, APAGAR_EXAME_MARCACAO }) public TrabalhadoresEcdsDatas currentExameMarcacao = null; diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java index 03e0543f..550315db 100755 --- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoAccoesPanel.java @@ -5,10 +5,36 @@ import static com.evolute.utils.strings.UnicodeLatin1Map.ccedil; import static com.evolute.utils.strings.UnicodeLatin1Map.otilde; import static info.clearthought.layout.TableLayoutConstants.FILL; import static info.clearthought.layout.TableLayoutConstants.MINIMUM; -import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CLOSE; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.ANULAR_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_CONSULTA; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_CONSULTA_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_EXAME; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_PROCESSO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA; +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_EMAIL_VACINAS; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO_OBSERVACOES; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME; -import static siprp.medicina.processo.logic.MedicinaProcessoLogic.*; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME_MARCACAO_EMAIL; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME_MARCACAO_OBSERVACOES; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_FICHA; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_LEMBRETE; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_PROCESSO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.DESMARCAR_SIPRP_CONSULTA_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.DESMARCAR_SIPRP_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.DESMARCAR_TRABALHADOR_CONSULTA_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.DESMARCAR_TRABALHADOR_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.FALTOU_CONSULTA_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.FALTOU_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.FECHAR_PROCESSO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.LOAD_TRABALHADOR; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.REALIZAR_CONSULTA_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.REALIZAR_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.REALIZAR_PARCIAL_EXAME_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA_MARCACAO_OBSERVACAO; @@ -16,8 +42,9 @@ import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME_MARCACAO_OBSERVACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_FICHA; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_PROCESSO; -import static siprp.medicina.processo.logic.MedicinaProcessoLogic.LOAD_TRABALHADOR; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_TRABALHADOR; import info.clearthought.layout.TableLayout; import info.clearthought.layout.TableLayoutConstraints; @@ -26,15 +53,12 @@ import java.util.List; import javax.swing.BorderFactory; import javax.swing.JComponent; -import javax.swing.JFrame; import javax.swing.JPanel; import leaf.ui.LeafButton; import leaf.ui.LeafWindow; +import leaf.ui.LeafLogic.LeafUIActionBinding; import leaf.ui.LeafWindow.ActionActivation; - -import org.apache.cayenne.conf.Configuration; - import siprp.database.cayenne.objects.Trabalhadores; import siprp.database.cayenne.objects.TrabalhadoresConsultas; import siprp.database.cayenne.objects.TrabalhadoresConsultasDatas; @@ -118,17 +142,24 @@ public class ProcessoAccoesPanel extends JPanel public final LeafButton buttonApagarProcesso = new LeafButton( "Remover Processo" ); // consulta - @ActionActivation(onSelect = CREATE_CONSULTA_MARCACAO, onChange = "") - public final LeafButton buttonNovoConsultaMarcacao = new LeafButton( "Nova Marca" + ccedil + atilde + "o" ); @ActionActivation(onSelect = APAGAR_CONSULTA, onChange = "") - public final LeafButton buttonApagarConsulta = new LeafButton( "Apagar Marca" + ccedil + atilde + "o" ); - + public final LeafButton buttonApagarConsulta = new LeafButton( "Apagar Consulta" ); + // marcacao consulta + + @ActionActivation(onSelect = CREATE_CONSULTA_MARCACAO, onChange = "") + public final LeafButton buttonNovoConsultaMarcacao = new LeafButton( "Nova Marca" + ccedil + atilde + "o" ); + + @ActionActivation(onSelect = APAGAR_CONSULTA_MARCACAO, onChange = "") + public final LeafButton buttonApagarConsultaMarcacao = new LeafButton( "Apagar Marca" + ccedil + atilde + "o" ); + @ActionActivation(onSelect = CREATE_CONSULTA_MARCACAO_EMAIL, onChange = "") public final LeafButton buttonNovoConsultaMarcacaoEmail = new LeafButton( "e-Mail" ); + @ActionActivation(onSelect = CREATE_CONSULTA_MARCACAO_EMAIL_VACINAS, onChange = "") public final LeafButton buttonNovoConsultaMarcacaoEmailVacinas = new LeafButton( "e-Mail: Boletim" ); + @ActionActivation(onSelect = CREATE_CONSULTA_MARCACAO_OBSERVACOES, onChange = "") public final LeafButton buttonNovoConsultaMarcacaoObservacoes = new LeafButton( "Adicionar Observa" + ccedil + atilde + "o" ); @@ -149,13 +180,17 @@ 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" ); - @ActionActivation(onSelect = APAGAR_EXAME, onChange = "") public final LeafButton buttonApagarExame = new LeafButton( "Apagar Exame" ); // marcacao exame + + @ActionActivation(onSelect = CREATE_EXAME_MARCACAO, onChange = "") + public final LeafButton buttonNovoExameMarcacao = new LeafButton( "Nova Marca" + ccedil + atilde + "o" ); + + @ActionActivation(onSelect = APAGAR_EXAME_MARCACAO, onChange = "") + public final LeafButton buttonApagarExameMarcacao = new LeafButton( "Apagar Marca" + ccedil + atilde + "o" ); + @ActionActivation(onSelect = CREATE_EXAME_MARCACAO_EMAIL, onChange = "") public final LeafButton buttonNovoExameMarcacaoEmail = new LeafButton( "e-Mail" ); @ActionActivation(onSelect = CREATE_EXAME_MARCACAO_OBSERVACOES, onChange = "") @@ -334,6 +369,7 @@ public class ProcessoAccoesPanel extends JPanel buttonConsultaMarcacaoRealizar.setEnabled( porRealizar ); buttonNovoConsultaMarcacaoObservacoes.setEnabled( noObservacoes ); buttonNovoConsultaMarcacaoEmailVacinas.setEnabled( realizada ); + buttonApagarConsultaMarcacao.setEnabled( porRealizar ); cardLayout.show( cardPanel, PANEL_CONSULTA_MARCACAO_NAME ); } else @@ -399,6 +435,7 @@ public class ProcessoAccoesPanel extends JPanel buttonExameMarcacaoRealizar.setEnabled( porRealizar ); buttonExameMarcacaoRealizarParcial.setEnabled( porRealizar ); buttonExameMarcacaoAnular.setEnabled( porRealizar ); + buttonApagarExameMarcacao.setEnabled( porRealizar ); buttonNovoExameMarcacaoObservacoes.setEnabled( noObservacoes ); cardLayout.show( cardPanel, PANEL_EXAME_MARCACAO_NAME ); } @@ -467,7 +504,7 @@ public class ProcessoAccoesPanel extends JPanel JPanel consultaMarcacaoUpperPanel = new JPanel(); JPanel consultaMarcacaoLowerPanel = new JPanel(); setupSimpleActionsPanel( consultaMarcacaoUpperPanel, buttonNovoConsultaMarcacaoEmail, buttonNovoConsultaMarcacaoEmailVacinas, buttonNovoConsultaMarcacaoObservacoes ); - setupSimpleActionsPanel( consultaMarcacaoLowerPanel, buttonConsultaMarcacaoRealizar, buttonConsultaMarcacaoDesmarcarSiprp, buttonConsultaMarcacaoDesmarcarTrabalhador, buttonConsultaMarcacaoFaltou); + setupSimpleActionsPanel( consultaMarcacaoLowerPanel, buttonConsultaMarcacaoRealizar, buttonConsultaMarcacaoDesmarcarSiprp, buttonConsultaMarcacaoDesmarcarTrabalhador, buttonConsultaMarcacaoFaltou, buttonApagarConsultaMarcacao); setupTopBottomSimpleActionsPanel(panelConsultaMarcacao, consultaMarcacaoUpperPanel, consultaMarcacaoLowerPanel); } @@ -476,7 +513,7 @@ public class ProcessoAccoesPanel extends JPanel JPanel exameMarcacaoUpperPanel = new JPanel(); JPanel exameMarcacaoLowerPanel = new JPanel(); setupSimpleActionsPanel( exameMarcacaoUpperPanel, buttonNovoExameMarcacaoEmail, buttonNovoExameMarcacaoObservacoes, new JPanel() ); - setupSimpleActionsPanel( exameMarcacaoLowerPanel, buttonExameMarcacaoRealizar, buttonExameMarcacaoRealizarParcial, buttonExameMarcacaoFaltou, buttonExameMarcacaoAnular, buttonExameMarcacaoDesmarcarTrabalhador, buttonExameMarcacaoDesmarcarSiprp ); + setupSimpleActionsPanel( exameMarcacaoLowerPanel, buttonExameMarcacaoRealizar, buttonExameMarcacaoRealizarParcial, buttonExameMarcacaoFaltou, buttonExameMarcacaoAnular, buttonExameMarcacaoDesmarcarTrabalhador, buttonExameMarcacaoDesmarcarSiprp, buttonApagarExameMarcacao ); setupTopBottomSimpleActionsPanel(panelExameMarcacao, exameMarcacaoUpperPanel, exameMarcacaoLowerPanel); } diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java index 46f36b0a..27e94200 100755 --- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoDadosPanel.java @@ -72,6 +72,7 @@ import siprp.database.cayenne.objects.TrabalhadoresEcdsDatasObservacoes; import siprp.database.cayenne.objects.TrabalhadoresFichasAptidao; import siprp.database.cayenne.objects.TrabalhadoresProcesso; import siprp.medicina.MedicinaConstants; +import siprp.medicina.processo.ProcessoConstants; import siprp.medicina.processo.mail.MailDialog; import com.evolute.utils.Singleton; @@ -197,9 +198,12 @@ public class ProcessoDadosPanel extends JPanel private final JLabel labelExameMarcacaoGruposEcds = new JLabel( "ECDs" ); private final JLabel labelExameMarcacaoPrestador = new JLabel( "Prestador" ); private final JLabel labelExameMarcacaoAnalisador = new JLabel( "Analisadores" ); + private final JLabel labelExameMarcacaoDataRecepcao = new JLabel( "Data de recep" + ccedil + atilde + "o" ); public final LeafInputField> inputExameMarcacaoEstado = new LeafInputField>(); public final LeafInputField inputExameMarcacaoData = new LeafInputField(); + @ActionActivation(onSelect = "", onChange = SAVE_EXAME_MARCACAO) + public final LeafInputField inputExameMarcacaoDataRecepcao = new LeafInputField(); public final LeafInputField> inputExameMarcacaoGruposEcds = new LeafInputField>(); @ActionActivation(onSelect = "", onChange = SAVE_EXAME_MARCACAO) public final LeafInputField> inputExameMarcacaoPrestador = new LeafInputField>(); @@ -316,12 +320,12 @@ public class ProcessoDadosPanel extends JPanel { if( processo != null ) { + boolean isFechado = ProcessoConstants.PROCESSO_FECHADO_CODE.equals( processo.getEstado() ); inputProcessoDataFim.setObject( processo.getDataFim() ); inputProcessoDataInicio.setObject( processo.getDataInicio() ); inputProcessoEstado.setObject( processo.getEstados(), processo.getEstado() ); - inputProcessoMotivo.setEditable( true ); + inputProcessoMotivo.setEditable( !isFechado ); inputProcessoMotivo.setObject( processo.getMotivos(), processo.getMotivo() ); - cardLayout.show( this, PANEL_PROCESSO_NAME ); } else @@ -437,6 +441,9 @@ public class ProcessoDadosPanel extends JPanel if( exameMarcacao != null ) { inputExameMarcacaoData.setObject( exameMarcacao.getData() ); + Date dataRecepcao = exameMarcacao.getDataRecepcao(); + inputExameMarcacaoDataRecepcao.setObject( dataRecepcao == null ? new Date(0) : dataRecepcao ); + inputExameMarcacaoDataRecepcao.setEditable( true ); inputExameMarcacaoEstado.setObject( exameMarcacao.getEstados(), exameMarcacao.getEstado() ); OrderedMap grupos = exameMarcacao.getStatesForeGruposExames(); inputExameMarcacaoGruposEcds.setCollapseOptions( false ); @@ -770,6 +777,15 @@ public class ProcessoDadosPanel extends JPanel @LeafUIActionBinding(action = SAVE_EXAME_MARCACAO) public void updateToSaveExameMarcacao( TrabalhadoresEcdsDatas marcacao ) { + Date dataRecepcao = inputExameMarcacaoDataRecepcao.getObject(); + if( dataRecepcao == null || dataRecepcao.getTime() == 0l ) + { + marcacao.setDataRecepcao( null ); + } + else + { + marcacao.setDataRecepcao( dataRecepcao ); + } Prestadores prestador = (Prestadores) inputExameMarcacaoPrestador.getSelectedObject(); prestador = Prestadores.prestadorNulo.equals( prestador ) ? null : prestador; marcacao.setToPrestadores( prestador ); @@ -868,7 +884,7 @@ public class ProcessoDadosPanel extends JPanel private void setupExameMarcacaoPanel() { - setupSimpleDataPanel( panelExameMarcacao, "Marca" + ccedil + atilde + "o de Exame", labelExameMarcacaoEstado, inputExameMarcacaoEstado, labelExameMarcacaoData, inputExameMarcacaoData, labelExameMarcacaoGruposEcds, inputExameMarcacaoGruposEcds, labelExameMarcacaoPrestador, inputExameMarcacaoPrestador, labelExameMarcacaoAnalisador, inputExameMarcacaoAnalisador, new JPanel() ); + setupSimpleDataPanel( panelExameMarcacao, "Marca" + ccedil + atilde + "o de Exame", labelExameMarcacaoEstado, inputExameMarcacaoEstado, labelExameMarcacaoData, inputExameMarcacaoData, labelExameMarcacaoGruposEcds, inputExameMarcacaoGruposEcds, labelExameMarcacaoPrestador, inputExameMarcacaoPrestador, labelExameMarcacaoAnalisador, inputExameMarcacaoAnalisador, labelExameMarcacaoDataRecepcao, inputExameMarcacaoDataRecepcao, new JPanel() ); } private void setupExameMarcacaoEmailPanel() diff --git a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java index 152b25fa..b3763f50 100755 --- a/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/processo/ui/ProcessoTreePanel.java @@ -1,7 +1,8 @@ package siprp.medicina.processo.ui; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_CONSULTA; -import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_EXAME; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_CONSULTA_MARCACAO; +import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_EXAME_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.APAGAR_PROCESSO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO; @@ -200,8 +201,21 @@ public class ProcessoTreePanel extends JPanel } } - @LeafUIActionBinding(action = APAGAR_EXAME) - public void apagarExameNode( TrabalhadoresEcds exame ) + @LeafUIActionBinding(action = APAGAR_CONSULTA_MARCACAO) + public void apagarConsultaMarcacaoNode( TrabalhadoresConsultasDatas consulta ) + { + if( consulta != null ) + { + DefaultMutableTreeNode node = nodeByObject.get( consulta ); + if( node != null ) + { + removeNode( node ); + } + } + } + + @LeafUIActionBinding(action = APAGAR_EXAME_MARCACAO) + public void apagarExameMarcacaoNode( TrabalhadoresEcdsDatas exame ) { if( exame != null ) {