git-svn-id: https://svn.coded.pt/svn/SIPRP@742 bb69d46d-e84e-40c8-a05a-06db0d633741

0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
Tiago Simão 17 years ago
parent 5cf33e5a02
commit c4a4266605

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<driver project-version="3.0" class="org.postgresql.Driver">
<url value="jdbc:postgresql://10.158.2.2:5432/siprp_local"/>
<!--url value="jdbc:postgresql://storage:5432/siprp_local"/-->
<!--url value="jdbc:postgresql://10.158.2.2:5432/siprp_local"/-->
<url value="jdbc:postgresql://storage:5432/siprp_local"/>
<!--url value="jdbc:postgresql://localhost:5432/siprp_local"/-->
<connectionPool min="1" max="1"/>
<login userName="postgres" password="Typein" encoderClass="org.apache.cayenne.conf.PlainTextPasswordEncoder" passwordLocation="model" passwordSource="Not Applicable"/>

@ -429,7 +429,8 @@ public class LeafInputField<ObjClass extends Object> 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 )
{

@ -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" );

@ -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;

@ -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;
}

@ -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();
}

@ -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<Integer> getFichasExpiradasSemData()
{
List<Integer> fichasExpiradas = new LinkedList<Integer>();
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<Integer> getFichasExpiradasSemData()
// {
// List<Integer> fichasExpiradas = new LinkedList<Integer>();
// 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<Integer> 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 );
}
}

@ -96,7 +96,6 @@ public class LembretesDemon extends Thread
private void doStuff()
{
List<Integer> fichasExpiradas = lembretesProvider.getFichasExpiradasID();
fichasExpiradas.addAll( lembretesProvider.getFichasExpiradasSemData() );
lembretesProvider.createLembretesForFichas( fichasExpiradas );
}

@ -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 );

@ -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 ) + ". " : " " ) +

@ -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 )
{

@ -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 )
{

@ -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 )

@ -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;

@ -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);
}

@ -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<HashMap<Integer, String>> inputExameMarcacaoEstado = new LeafInputField<HashMap<Integer, String>>();
public final LeafInputField<Date> inputExameMarcacaoData = new LeafInputField<Date>();
@ActionActivation(onSelect = "", onChange = SAVE_EXAME_MARCACAO)
public final LeafInputField<Date> inputExameMarcacaoDataRecepcao = new LeafInputField<Date>();
public final LeafInputField<OrderedMap<PrtGruposProtocolo>> inputExameMarcacaoGruposEcds = new LeafInputField<OrderedMap<PrtGruposProtocolo>>();
@ActionActivation(onSelect = "", onChange = SAVE_EXAME_MARCACAO)
public final LeafInputField<OrderedMap<Prestadores>> inputExameMarcacaoPrestador = new LeafInputField<OrderedMap<Prestadores>>();
@ -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<PrtGruposProtocolo> 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()

@ -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 )
{

Loading…
Cancel
Save