Subversion Repositories Integrator Subversion

Rev

Rev 631 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

package br.com.ec.domain.service;

import java.util.Date;
import java.util.List;

import br.com.ec.core.generic.GenericService;
import br.com.ec.domain.dto.AuditoriaVendaDTO;
import br.com.ec.domain.dto.FormaPagamentoDTO;
import br.com.ec.domain.dto.RankingComprasTransferenciasDTO;
import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloDTO;
import br.com.ec.domain.dto.RankingComprasTransferenciasEstiloPorLojaDTO;
import br.com.ec.domain.dto.RankingModeloDTO;
import br.com.ec.domain.dto.RankingProdutoDTO;
import br.com.ec.domain.dto.RankingProdutoDTONovo;
import br.com.ec.domain.dto.RankingTransferenciasModeloDTO;
import br.com.ec.domain.dto.VendaDTO;
import br.com.ec.domain.dto.consulta.ParametrosConsultaModelosMaisVendidosDTO;
import br.com.ec.domain.dto.consulta.ParametrosConsultaPorPeriodoDTO;
import br.com.ec.domain.dto.consulta.ParametrosConsultaProdutosVendidosDTO;
import br.com.ec.domain.dto.consulta.ParametrosConsultaVendasDTO;
import br.com.ec.domain.model.Venda;

public interface VendaService extends GenericService<Venda> {

        Double obterValorTotalBrutoDeVendas(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
        Double obterValorTotalBrutoDeVendasRetirandoValorCuponsUtilizados(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
        Integer obterQuantidadeDeVendasPorLojaEePeriodo(Long sequencialLoja, Date dataInicial, Date dataFinal);
       
        Integer obterQuantidadeDeVendasNovasPorLojaEePeriodo(Long sequencialLoja, Date dataInicial, Date dataFinal);
       
        Double obterValorTotalBrutoDeVendasPorLojaEePeriodoEeFormasDePagamento(ParametrosConsultaVendasDTO parametrosConsultaVendas, List<FormaPagamentoDTO> formasDePagamento);
       
        Double obterValorDeMaquinetasPorPessoa(Long sequencialPessoaMaquineta, Date dataInicio, Date dataFim);

        Double obterValorTotalLiquidoDeVendas(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
        Double obterValorProdutosUtilizadosEmVendas(ParametrosConsultaVendasDTO parametrosConsulta);

        List<AuditoriaVendaDTO> consultarAuditoriaVenda(Date dataSelecionada, Long sequencialLojaSelecionada);

        List<RankingComprasTransferenciasDTO> consultarRankingComprasTransferencias(Integer quantidadeDiasVendas, Integer quantidadeDiasParaAlerta, List<RankingModeloDTO> rankingModelosMaisVendidos, Boolean consultarPorLoja);

        List<RankingModeloDTO> consultarRankingModelos(ParametrosConsultaModelosMaisVendidosDTO parametrosConsulta, Boolean adicionarTodosModelosFavoritos);

        List<RankingComprasTransferenciasEstiloDTO> consultarRankingPorEstilo(Long sequencialModelo, ParametrosConsultaPorPeriodoDTO parametrosConsultaPorPeriodoDTO);

        List<RankingComprasTransferenciasEstiloPorLojaDTO> consultarRankingPorEstiloPorLoja(Long sequencialLoja, String tipoEstilo, ParametrosConsultaPorPeriodoDTO parametrosConsultaPorPeriodoDTO);

        List<RankingProdutoDTO> consultarProdutosVendidos(ParametrosConsultaProdutosVendidosDTO parametrosConsulta);
       
        List<RankingProdutoDTONovo> consultarProdutosDTOVendidos(ParametrosConsultaProdutosVendidosDTO parametrosConsulta);

        List<RankingTransferenciasModeloDTO> consultarModelosParaRedistribuicao();

        VendaDTO detalharPorSequencial(Long sequencialVenda);
       
        /*
        Venda detalharVenda(Venda venda);
       
        Venda detalharVendaCompleta(Venda venda);
       
        void excluirVenda(Venda venda, Usuario usuario);

        Venda cadastrarVendaPeloPDV(ParametrosVendaDTO parametrosVenda);

        void alterarVenda(ParametrosVendaDTO parametrosVenda, Usuario usuario, Boolean verificarJustificativa);
       
        List<Venda> consultarVendasDoDia(Long sequencialLoja, Date dataVendas);
       
        Integer obterQuantidadeDeVendasPorLojaEePeriodo(Venda venda, Date dataInicial, Date dataFinal);
       
        Double obterValorTotalBrutoDeVendasPorLojaEePeriodo(Loja loja, Date dataInicial, Date dataFinal);
       
        Double obterValorTotalBrutoDeVendasPorLojaEePeriodo(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
        Double obterValorTotalBrutoDeVendasPorLojaEePeriodoServicos(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
        Double obterValorTotalDeDescontosPorLojaEePeriodo(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
       
       
        Integer obterQuantidadeProdutosVendidosPorLojaEePeriodo(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
        Integer obterQuantidadeProdutosVendidosPorLojaEePeriodoNaoVivo(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
       

        List<Venda> consultarVendasPorDemanda(ParametrosConsulta<Venda> parametrosConsulta, Integer primeiroRegistro,
                        Integer tamanhoPagina, String sortField, String orderSort, Map<String, Object> filters);

        List<Venda> consultarVendaPorParametros(ParametrosConsultaVendasDTO parametrosConsultaVendas);
       
        GraficoAcumuladoDTO consultarGrafico(String mes, String ano);
       
        List<RankingVendedorDTO> consultarRankingVendedores(Date dataInicial, Date dataFinal, Boolean produtosComissionados, Loja lojaSelecionada);
       
        RankingVendedorDTO consultarRankingVendedor(Vendedor vendedor, Vigencia vigencia, Boolean produtosComissionados);
       
        RankingVendedorDTO consultarRankingVendedor(Vendedor vendedor, Date dataInicial, Date dataFinal, Boolean produtosComissionados);
       
        List<RankingLojaDTO> consultarRankingLojas(Date dataInicial, Date dataFinal);
       
        List<RankingLojaDTO> consultarRankingLojasCompleto(Date dataInicial, Date dataFinal);
       
        List<RankingLojaDTO> consultarRankingLojasExtras(Date dataInicial, Date dataFinal);
       
        List<RankingProdutoDTO> consultarProdutosVendidosResumido(ParametrosConsultaProdutosVendidosDTO parametrosConsulta);
       
        List<RankingProdutoDTO> consultarProdutosParaTransferir(ParametrosConsultaProdutosVendidosDTO parametrosConsulta);
       
        List<RankingProdutoDTO> consultarRankingProdutos(Date dataInicial, Date dataFinal, Integer quantidadeProdutos, String tipoOrdenacao, Long sequencialLoja, String tipoProduto, Produto produto, Marca marca);

        List<RankingModeloDTO> consultarRankingModelos(Date dataInicial, Date dataFinal, Integer quantidadeModelos, String tipoOrdenacao, String tipoProduto, Long sequencialLoja);
       
        List<RankingComprasTransferenciasDTO> consultarPlanejamentoParaCompras(ParametrosConsultaParaComprasTransferenciasDTO parametrosParaConsulta);
       
        List<RankingComprasTransferenciasEstiloDTO> consultarDetalhamentoPlanejamentoParaCompras(ParametrosConsultaParaComprasTransferenciasDTO parametrosParaConsulta, Modelo modelo);
       
        List<RankingVendedorDTO> consultarRankingPromocaoInterna(Date dataInicial, Date dataFinal, List<Produto> produtosPromocaoInterna);
       
        RankingVendedorDTO consultarRankingPromocaoInternaDoVendedor(Vendedor vendedor, Date dataInicial, Date dataFinal, List<Produto> produtosPromocaoInterna);
       
        List<VendasDTO> consultarVendas(ParametrosConsultaVendasDTO parametrosConsultaVendasDTO);

        Integer obterQuantidadeProdutosVendidosPorEstiloEeGenero(Date dataInicial, Date dataFinal, Long sequencialLoja, Long sequencialModelo, String tipoProduto, String estiloProduto, String tipoGenero);
        */

       
}