forked from Coded/SIPRP
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							72 lines
						
					
					
						
							2.1 KiB
						
					
					
				
			
		
		
	
	
							72 lines
						
					
					
						
							2.1 KiB
						
					
					
				/*
 | 
						|
 * RealizouAction.java
 | 
						|
 *
 | 
						|
 * Created on January 31, 2007, 6:20 PM
 | 
						|
 *
 | 
						|
 * To change this template, choose Tools | Template Manager
 | 
						|
 * and open the template in the editor.
 | 
						|
 */
 | 
						|
 | 
						|
package siprp.medicina.presencas.actions;
 | 
						|
 | 
						|
import com.evolute.utils.data.IDObject;
 | 
						|
import com.evolute.utils.ui.DialogException;
 | 
						|
import java.awt.event.ActionEvent;
 | 
						|
import java.util.Arrays;
 | 
						|
import java.util.Vector;
 | 
						|
import javax.swing.AbstractAction;
 | 
						|
import siprp.clientes.ClientesDataProvider;
 | 
						|
import siprp.medicina.MedicinaDataProvider;
 | 
						|
import siprp.medicina.presencas.Presenca;
 | 
						|
import siprp.medicina.presencas.PresencasDataProvider;
 | 
						|
 | 
						|
/**
 | 
						|
 *
 | 
						|
 * @author fpalma
 | 
						|
 */
 | 
						|
public class RealizouAction extends AbstractAction
 | 
						|
{
 | 
						|
	protected Presenca presenca;
 | 
						|
	
 | 
						|
	/** Creates a new instance of RealizouAction */
 | 
						|
	public RealizouAction( Presenca presenca )
 | 
						|
	{
 | 
						|
		super( "Realizou" );
 | 
						|
		this.presenca = presenca;
 | 
						|
	}
 | 
						|
 | 
						|
	public void actionPerformed(ActionEvent e)
 | 
						|
	{
 | 
						|
		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( id );
 | 
						|
				}
 | 
						|
			}
 | 
						|
			provider.marcarRealizado( presenca.getID(), ( Integer[] ) aRealizar.toArray( new Integer[ aRealizar.size() ] ) );
 | 
						|
			setEnabled( false );
 | 
						|
		}
 | 
						|
		catch( Exception ex )
 | 
						|
		{
 | 
						|
			DialogException.showExceptionMessage( ex, "Erro a marcar", true );
 | 
						|
		}
 | 
						|
	}
 | 
						|
	
 | 
						|
}
 |