|
|
|
@ -9,10 +9,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
package siprp.medicina.presencas.actions;
|
|
|
|
package siprp.medicina.presencas.actions;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import com.evolute.utils.data.IDObject;
|
|
|
|
|
|
|
|
import com.evolute.utils.ui.DialogException;
|
|
|
|
import java.awt.event.ActionEvent;
|
|
|
|
import java.awt.event.ActionEvent;
|
|
|
|
|
|
|
|
import java.util.Arrays;
|
|
|
|
|
|
|
|
import java.util.Vector;
|
|
|
|
import javax.swing.AbstractAction;
|
|
|
|
import javax.swing.AbstractAction;
|
|
|
|
|
|
|
|
import javax.swing.JOptionPane;
|
|
|
|
|
|
|
|
import siprp.clientes.ClientesDataProvider;
|
|
|
|
import siprp.data.Marcacao;
|
|
|
|
import siprp.data.Marcacao;
|
|
|
|
|
|
|
|
import siprp.medicina.MedicinaDataProvider;
|
|
|
|
|
|
|
|
import siprp.medicina.presencas.DetalhesRealizacaoDialog;
|
|
|
|
import siprp.medicina.presencas.Presenca;
|
|
|
|
import siprp.medicina.presencas.Presenca;
|
|
|
|
|
|
|
|
import siprp.medicina.presencas.PresencasDataProvider;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
*
|
|
|
|
*
|
|
|
|
@ -35,6 +44,42 @@ public class RealizouParcialmenteAction extends AbstractAction
|
|
|
|
|
|
|
|
|
|
|
|
public void actionPerformed(ActionEvent e)
|
|
|
|
public void actionPerformed(ActionEvent e)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
JOptionPane.showMessageDialog( null, "", "", JOptionPane.ERROR_MESSAGE );
|
|
|
|
|
|
|
|
try
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
PresencasDataProvider provider = PresencasDataProvider.getProvider();
|
|
|
|
|
|
|
|
ClientesDataProvider clientesProvider =
|
|
|
|
|
|
|
|
( ClientesDataProvider ) ClientesDataProvider.getProvider();
|
|
|
|
|
|
|
|
MedicinaDataProvider medicinaProvider =
|
|
|
|
|
|
|
|
( MedicinaDataProvider ) MedicinaDataProvider.getProvider();
|
|
|
|
|
|
|
|
Integer trabalhadorID = medicinaProvider.getTrabalhadorIDByMarcacaoID( presenca.getID() );
|
|
|
|
|
|
|
|
Integer empresaID = clientesProvider.getEmpresaIDByTrabalhadorID( trabalhadorID );
|
|
|
|
|
|
|
|
Integer realizados[] = medicinaProvider.getDetalhesRealizadosForEstadosMarcacao( presenca.getID() );
|
|
|
|
|
|
|
|
Vector realizadosVector = new Vector();
|
|
|
|
|
|
|
|
realizadosVector.addAll( Arrays.asList( realizados ) );
|
|
|
|
|
|
|
|
IDObject validos[] = medicinaProvider.getDetalhesValidosTrabalhador( empresaID, trabalhadorID );
|
|
|
|
|
|
|
|
Vector aRealizar = new Vector();
|
|
|
|
|
|
|
|
for( int n = 0; n < validos.length; n++ )
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
Integer id = validos[ n ].getID();
|
|
|
|
|
|
|
|
if( !realizadosVector.contains( id ) )
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
aRealizar.add( validos[ n ] );
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
DetalhesRealizacaoDialog dialog =
|
|
|
|
|
|
|
|
new DetalhesRealizacaoDialog( null, ( IDObject[] ) aRealizar.toArray( new IDObject[ aRealizar.size() ] ) );
|
|
|
|
|
|
|
|
Integer escolhidos[] = dialog.getSelected();
|
|
|
|
|
|
|
|
if( escolhidos != null )
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
provider.marcarRealizado( presenca.getID(), escolhidos );
|
|
|
|
|
|
|
|
setEnabled( false );
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
catch( Exception ex )
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
DialogException.showExceptionMessage( ex, "Erro a marcar", true );
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|