package br.com.ec.repository;
import java.util.Date;
import java.util.List;
import br.com.ec.core.generic.GenericRepository;
import br.com.ec.domain.dto.ParcelaDTO;
import br.com.ec.domain.dto.consulta.ParametrosConsultaParcelasDTO;
import br.com.ec.domain.model.Parcela;
import br.com.ec.domain.model.tipos.TipoCartao;
public interface ParcelaRepository
extends GenericRepository
<Parcela
> {
List<ParcelaDTO
> consultarParcelas
(ParametrosConsultaParcelasDTO parametrosConsultaParcelasDTO
);
List<ParcelaDTO
> consultarParcelasAReceber
(Long sequencialContaBancaria,
Date dataRecebimento, TipoCartao tipoCartao
);
List<ParcelaDTO
> consultarParcelasRecebidas
(Long sequencialContaBancaria,
Date dataRecebimento, TipoCartao tipoCartao
);
/*
List<Parcela> consultarParcelas(ParametrosConsultaLancamentosDTO parcelaConsulta);
List<Parcela> consultarParcelasAVencer(Conta conta);
List<Parcela> consultarParcelasDaVenda(Long sequencialVenda);
Boolean verificarPossuiParcelaAberta(Venda venda);
Boolean verificarPossuiParcelaAbertaParaPagamento(Conta conta);
Boolean verificarPossuiParcela(Venda venda);
List<Parcela> consultarParcelasDaConta(Conta conta);
Double obterValorPassandoParametrosConsulta(ParametrosConsulta<Parcela> parametrosConsulta);
*/
/*
List<Parcela> consultarParcelasPorPeriodo(Parcela parcela, Boolean pagamentoRealizado, Boolean ehContaAReceber, Date dataInicial, Date dataFinal, String ordenacao, int first, int pageSize);
Integer obterQuantidadeRegistrosConsultarParcelasPorPeriodo(Parcela parcela, Boolean pagamentoRealizado, Boolean ehContaAReceber, Date dataInicial, Date dataFinal);
*/
}