Comparando várias datas com criteria

Boa tarde pessoal!

Estou com um pequeno problema com meus códigos.
É o seguinte, preciso comparar datas de diferentes lugares com a data atual!
São três tabelas e preciso comparar as três juntas num mesmo metodo.

Segue ai o código:

@Entity
public class PlanejamentoPedagogicoAnual implements Serializable{

        @Temporal(TemporalType.DATE)
	private Date dataInicioAnoLetivo;
	
	@Temporal(TemporalType.DATE)
	private Date dataFimAnoLetivo;
	
	@Temporal(TemporalType.DATE)
	private Date dataInicioFerias;
	
	@Temporal(TemporalType.DATE)
	private Date dataFimFerias;
	
	@OneToMany (mappedBy="planejamento", cascade={CascadeType.ALL, CascadeType.REMOVE}, orphanRemoval=true)
	private List<PlanejamentoAnualDatasReuniao> datasReunioes = new ArrayList<PlanejamentoAnualDatasReuniao>();
	
	@OneToMany (mappedBy="planejamento", cascade={CascadeType.ALL, CascadeType.REMOVE}, orphanRemoval=true)
	private List<PlanejamentoAnualDataConselho> datasConselhos = new ArrayList<PlanejamentoAnualDataConselho>();
@Entity
public class PlanejamentoAnualDatasReuniao {
	
	@Temporal(TemporalType.DATE) 
	private Date dataReuniao;
	
	@ManyToOne
	private PlanejamentoPedagogicoAnual planejamento;
@Entity
public class PlanejamentoAnualDataConselho {
	
	@Temporal(TemporalType.DATE)
	private Date dataConselho;
	
	@ManyToOne
	private PlanejamentoPedagogicoAnual planejamento;

É aqui estou fazendo as comparações dentro da DAO

@SuppressWarnings("unchecked")
	public List<PlanejamentoAnualDatasReuniao> getAvisoDatasReunioes(){  
		        Criteria c = getSession().createCriteria(PlanejamentoAnualDatasReuniao.class);
			c.add(Restrictions.eq("dataReuniao", new Date()));
				
			return c.list();
	}

A comparação da data atual com a data de reunião funciona. Só preciso comparar as demais juntamente neste mesmo local!
É isso ai, obrigado!

Se passar um adm por aki pode fexa o forum, pois já foi encontraado uma solução!