package com.rjconsultores.ventaboletos.service; import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.Map; import com.rjconsultores.ventaboletos.entidad.Conferencia; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.LogConferencia; import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.enums.IndStatusBoleto; import com.rjconsultores.ventaboletos.enums.comissao.BoletoStatusComissao; import com.rjconsultores.ventaboletos.exception.BusinessException; import com.rjconsultores.ventaboletos.vo.comissao.BoletoComissao; import com.rjconsultores.ventaboletos.vo.comissao.ConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.DiaConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.EtiquetaMalote; import com.rjconsultores.ventaboletos.vo.comissao.EventosFinanceirosVO; import com.rjconsultores.ventaboletos.vo.comissao.LogConferenciaVO; import com.rjconsultores.ventaboletos.vo.comissao.OcdVO; import com.rjconsultores.ventaboletos.vo.comissao.ResumoComissao; public interface ConferenciaComissaoService extends GenericService { public Conferencia suscribirOrActualizacion(Conferencia entidad); public List carregarConferenciaComissao(String competencia, Empresa empresa, PuntoVenta puntoVenta, Date dataMovimento) throws BusinessException; public List carregarConferenciaComissao(Date dataInicial, Date dataFinal, Empresa empresa, PuntoVenta puntoVenta, Date dataMovimento) throws BusinessException; public Conferencia confirmarChegadaMalote(Conferencia conferencia) throws BusinessException; public Conferencia cancelarChegadaMalote(Conferencia conferencia); public Conferencia encerrarMovimentoDiario(Conferencia conferencia) throws BusinessException; public List carregarEventosFinanceiros(Conferencia conferencia) throws BusinessException; public List carregarLogConferencia(Conferencia conferencia) throws BusinessException; public LogConferencia suscribirLogConferencia(LogConferencia logConferencia) throws BusinessException; public void borrarLogConferencia(LogConferencia logConferencia) throws BusinessException; public LogConferencia obtenerLogConferenciaID(Long logconferenciaId); public List carregarBilhetesComissao(List boletoComissaos, Conferencia conferencia, BoletoStatusComissao boletoStatusComissao, boolean carregarDadosFaltantes) throws BusinessException; public List carregarBilhetesComissao(List boletoComissaos, List conferencias, BoletoStatusComissao boletoStatusComissao, boolean carregarDadosFaltantes) throws BusinessException; public List carregarOcds(Conferencia conferencia) throws BusinessException; public Conferencia reabrirMovimentoDiario(Conferencia conferencia) throws BusinessException; public Conferencia obtenerConferenciaDataMovimento(Date datamovimento, Integer puntoventaId, Integer empresaId) throws BusinessException; public boolean isBilhetesSemConferencia(List lsBoletoComissao) throws BusinessException; public boolean isEventosFinanceirosSemConferencia(List lsEventosFinanceiros) throws BusinessException; public boolean isOcdSemConferencia(List lsOcd) throws BusinessException; public BigDecimal totalizarBoletoComissao(List lsBoletoComissao, IndStatusBoleto... statusBilhete) throws BusinessException; public BigDecimal totalizarEventosFinanceiros(List lsEventosFinanceiros) throws BusinessException; public OcdVO totalizarOcd(List lsOcd) throws BusinessException; public ResumoComissao gerarResumo(Conferencia conferencia, List boletoComissaos, List lsEventosFinanceiros, BigDecimal totalBilhetesManual, BigDecimal totalBilhetesVendidos, BigDecimal totalBilhetesCancelados, BigDecimal totalBilhetesDevolvidos, BigDecimal totalBilhetesGap, BigDecimal totalBilhetesGapCancelados, BigDecimal totalBilhetesGapDevolvidos, BigDecimal totalCreditosEventoFinanceiros, BigDecimal totalDebitosEventoFinanceiros, OcdVO totalOcd, BigDecimal totalBilhetesTrocados, BigDecimal totalBilhetesGapTrocados) throws BusinessException; public EtiquetaMalote decodificarEtiquetaMalote(String codigoBarras) throws BusinessException; public void confirmarChegadaMalote(EtiquetaMalote etiquetaMalote ) throws BusinessException; public boolean isConferenciaCompetenciaEncerrada(String competencia, Empresa empresa, PuntoVenta puntoVenta) throws BusinessException; public Map totalizarBoletoComissaoDevolvidosTrocaOcd(List lsBoletoComissao) throws BusinessException; public DiaConferenciaComissaoVO carregarConferenciaRegistrada(Date datamovimento, Empresa empresa, PuntoVenta puntoVenta) throws BusinessException; public List quantidadeECFPorPuntoVenta(Conferencia conferencia); public void enviarEmailIrregularidadeECF(String email, String msg,String assunto)throws Exception ; public void generacionAutomaticaConferencia(); }