|
|
|
|
@ -25,6 +25,7 @@ import javax.swing.*;
|
|
|
|
|
import javax.swing.event.ChangeEvent;
|
|
|
|
|
import javax.swing.event.ChangeListener;
|
|
|
|
|
import siprp.medicina.MedicinaConstants;
|
|
|
|
|
import siprp.medicina.processo.ProcessoConstants;
|
|
|
|
|
import siprp.medicina.processo.ProcessoDataProvider;
|
|
|
|
|
import siprp.medicina.processo.ProcessoEvent;
|
|
|
|
|
import siprp.medicina.processo.ProcessoListener;
|
|
|
|
|
@ -123,8 +124,10 @@ public class ConsultaPanel extends JPanel
|
|
|
|
|
}
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
boolean nova = false;
|
|
|
|
|
if( consulta == null )
|
|
|
|
|
{
|
|
|
|
|
nova = true;
|
|
|
|
|
Integer consultaID = provider.getConsultaEmAbertoForProcesso( processoID );
|
|
|
|
|
if( consultaID == null )
|
|
|
|
|
{
|
|
|
|
|
@ -136,6 +139,7 @@ public class ConsultaPanel extends JPanel
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
consulta = provider.getConsultaByID( consultaID );
|
|
|
|
|
consulta.set( TrabalhadoresConsultasData.ESTADO, new Integer( MedicinaConstants.ESTADO_POR_REALIZAR ) );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
consulta.set( TrabalhadoresConsultasData.DATA, data );
|
|
|
|
|
@ -144,7 +148,7 @@ public class ConsultaPanel extends JPanel
|
|
|
|
|
{
|
|
|
|
|
Integer consultaID = ( Integer )consulta.get( TrabalhadoresConsultasDatasData.ID );
|
|
|
|
|
Integer consultaDataID = provider.getLastConsultaDataIDForConsulta( consultaID );
|
|
|
|
|
if( consultaDataID == null )
|
|
|
|
|
if( consultaDataID == null || nova )
|
|
|
|
|
{
|
|
|
|
|
consultaData = new TrabalhadoresConsultasDatasData();
|
|
|
|
|
consultaData.set( TrabalhadoresConsultasDatasData.TRABALHADORES_CONSULTAS_ID, consultaID );
|
|
|
|
|
@ -203,6 +207,39 @@ public class ConsultaPanel extends JPanel
|
|
|
|
|
|
|
|
|
|
protected void mudarEstado()
|
|
|
|
|
{
|
|
|
|
|
if( consulta == null )
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
Integer estado = ( Integer ) consulta.get( TrabalhadoresConsultasData.ESTADO );
|
|
|
|
|
EstadoChooser chooser =
|
|
|
|
|
new EstadoChooser( owner, ProcessoConstants.TIPO_CONSULTA,
|
|
|
|
|
estado != null ? estado.intValue() : MedicinaConstants.ESTADO_POR_REALIZAR );
|
|
|
|
|
chooser.setVisible( true );
|
|
|
|
|
int novoEstado = chooser.getEstado();
|
|
|
|
|
if( estado == null || estado.intValue() != novoEstado )
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
consulta.set( TrabalhadoresConsultasData.ESTADO, new Integer( novoEstado ) );
|
|
|
|
|
provider.saveConsulta( consulta );
|
|
|
|
|
if( consultaData == null )
|
|
|
|
|
{
|
|
|
|
|
Integer consultaID = ( Integer )consulta.get( TrabalhadoresConsultasDatasData.ID );
|
|
|
|
|
Integer consultaDataID = provider.getLastConsultaDataIDForConsulta( consultaID );
|
|
|
|
|
consultaData = provider.getConsultaDataByID( consultaDataID );
|
|
|
|
|
}
|
|
|
|
|
consultaData.set( TrabalhadoresConsultasDatasData.ESTADO, new Integer( novoEstado ) );
|
|
|
|
|
provider.saveConsultaData( consultaData );
|
|
|
|
|
|
|
|
|
|
notifyListeners( ProcessoEvent.ACCAO_MUDAR_ESTADO_MARCACAO );
|
|
|
|
|
}
|
|
|
|
|
catch( Exception ex )
|
|
|
|
|
{
|
|
|
|
|
DialogException.showExceptionMessage( ex, "Erro a gravar dados da consulta", true );
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void addProcessoListener( ProcessoListener listener )
|
|
|
|
|
|