package siprp.database.cayenne.objects;

import java.util.HashMap;

import siprp.database.cayenne.objects.auto._TrabalhadoresProcesso;
import siprp.medicina.MedicinaConstants;
import siprp.medicina.MedicinaDataProvider;
import siprp.medicina.processo.ProcessoConstants;

public class TrabalhadoresProcesso extends _TrabalhadoresProcesso implements ProcessoConstants {

	private static final long serialVersionUID = 1L;
	
	private String getDescricaoEstadoProcessoByCodigo()
	{
		return ESTADO_PROCESSO_BY_CODE.get( getEstado() );
	}
	
	public String getMotivoString()
	{
		return getMotivo() == null ? "" : MedicinaDataProvider.MOTIVOS_BY_ID.get( getMotivo() );
	}
	
	public String getEstadoString()
	{
		return getEstado() == null ? "" : getDescricaoEstadoProcessoByCodigo();
	}
	
	public String getDataInicioString()
	{
		return getDataInicio() == null ? "" : sdf.format( getDataInicio() );
	}
	
	public String getDataFimString()
	{
		return getDataFim() == null ? "" : sdf.format( getDataFim() );
	}
	
	@Override
	public String toString()
	{
		return getDataInicioString()  + ": " + getMotivoString() + " : " + getDescricaoEstadoProcessoByCodigo();
	}
	
	public HashMap<String, String> getEstados()
	{
		HashMap<String,String> result = new HashMap<String, String>();
		result.put( PROCESSO_ABERTO_CODE, PROCESSO_ABERTO_DESCRIPTION );
		result.put( PROCESSO_CANCELADO_CODE, PROCESSO_CANCELADO_DESCRIPTION );
		result.put( PROCESSO_FECHADO_CODE, PROCESSO_FECHADO_DESCRIPTION );
		return result;
	}
	
	public HashMap<Integer, String> getMotivos()
	{
		HashMap<Integer,String> result = new HashMap<Integer, String>();
		result.put( MedicinaConstants.MOTIVO_ADMISSAO_INTEGER, MedicinaConstants.MOTIVO_ADMISSAO_STR);
		result.put( MedicinaConstants.MOTIVO_OCASIONAL_INTEGER, MedicinaConstants.MOTIVO_OCASIONAL_STR);
		result.put( MedicinaConstants.MOTIVO_PERIODICO_INICIAL_INTEGER, MedicinaConstants.MOTIVO_PERIODICO_INICIAL_STR);
		result.put( MedicinaConstants.MOTIVO_PERIODICO_INTEGER, MedicinaConstants.MOTIVO_PERIODICO_STR);
		return result;
	}
}



