package br.com.ec.infrastructure.repository;
import java.util.List;
import br.com.ec.core.generic.GenericRepository;
import br.com.ec.domain.dto.ParametrosConsultaNotaFiscalDTO;
import br.com.ec.domain.model.NotaFiscal;
import br.com.ec.domain.model.Pessoa;
import br.com.ec.domain.model.Venda;
public interface NotaFiscalRepository
extends GenericRepository
<NotaFiscal
> {
NotaFiscal consultarPelaChaveEeTipo
(String chave,
String tipoNotaFiscal
);
NotaFiscal consultarPeloNumeroEeTipo
(Long numeroNotaFiscal,
String tipoNotaFiscal
);
NotaFiscal consultarPelaChave
(String chave
);
NotaFiscal detalhar
(NotaFiscal notaFiscal
);
Long consultarProximoNumeroNotaFiscal
(String tipoNotaFiscal, Pessoa pessoaJuridicaEmitente
);
List<NotaFiscal
> consultarNotasFiscais
(Venda venda
);
List<NotaFiscal
> consultarNotasFiscais
(ParametrosConsultaNotaFiscalDTO parametros
);
void desvincularVenda
(NotaFiscal notaFiscal
);
Boolean verificarSeNotaFiscalJaVinculadaComVenda
(Venda venda,
String tipoModeloNotaFiscal,
String tipoNotaFiscal
);
}