Subversion Repositories Integrator Subversion

Rev

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

package br.com.ec.domain.service;

import java.util.List;

import br.com.ec.core.generic.GenericService;
import br.com.ec.domain.dto.CompraProdutoDTO;
import br.com.ec.domain.dto.LojaDTO;
import br.com.ec.domain.dto.ProdutoDTO;
import br.com.ec.domain.dto.UsuarioDTO;
import br.com.ec.domain.model.Produto;

public interface ProdutoService extends GenericService<Produto> {
       
        Produto consultarProdutoPorCodigo(String codigoProduto);
       
        ProdutoDTO consultarProdutoDTOPorCodigoOuCodigoEAN(String codigoProduto);

        List<CompraProdutoDTO> consultarComprasDoProduto(Long sequencial);
       
        void realizarProducao(LojaDTO lojaDTO, ProdutoDTO produtoParaProduzir, ProdutoDTO produtoProduzido, Integer quantidadeParaProduzir, UsuarioDTO usuarioContagemDTO);

        List<ProdutoDTO> consultarProdutosDoFornecedor(Long sequencialFornecedor);
       
        /*
        List<Produto> consultarProdutoPorParametros(ParametrosConsultaProdutoDTO parametrosConsultaProduto);
       
        List<Produto> consultarCompativeis(Produto produto);
       
        Produto detalharProduto(Produto produto);

        Produto consultarProdutoPorCodigoRapidoOuCodigoEAN(String codigoRapidoOuCodigoEAN);
       
        Produto consultarProdutoPorCodigoEAN(String codigoEAN);
       
        Produto consultarProdutoPorCodigoOuCodigoEAN(String codigoProduto);
       
        Produto consultarProdutoPorCodigoRapido(String codigoProdutoRapido);

        Long consultarUltimoCodigo();
       
        Produto consultarProdutoPorCodigoParaContagem(String codigoProduto, Loja loja, Usuario usuario);
       
        void lancarAvaria(EstoqueAuditoria estoqueAuditoria, Loja loja, Produto produto, Usuario usuario);
       
        void lancarTroca(EstoqueAuditoria estoqueAuditoria, Loja loja, Produto produto, Usuario usuario);

        void desativarProduto(Produto entidade);

        void ativarProduto(Produto entidade);

        void realizarContagem(ProdutoLoja produtoLoja, Integer quantidadeEstoque, String localizacao, Usuario usuario, Boolean indicadorAvaria);
        void realizarContagemDireta(ProdutoLoja produtoLoja, Integer quantidadeEstoque, String localizacao, Usuario usuario, Boolean indicadorAvaria);
        @Deprecated
        void realizarContagem(Produto produto, Loja loja);

        void transferirEstoque(Loja lojaEntrada, Loja lojaSaida, Usuario obterUsuario, Produto entidade, Integer quantidadeEstoque);

        Integer quantidadeTotalEstoque(Loja loja);
       
        Double valorTotalEstoque(Loja loja, Modelo modelo);

        Integer quantidadeEstoque(ParametrosConsultaProdutoDTO parametrosConsulta);
       
        Integer quantidadeEstoque(ParametrosConsultaProdutoDTO parametrosConsulta, Long sequencialLoja);
       
        Integer quantidadeParaContagem(Loja loja);

        Integer solicitarContagem(ParametrosConsultaProdutoDTO parametrosConsulta);
       
        void cancelarContagem(ParametrosConsultaProdutoDTO parametrosConsulta);
       
        void zerarEstoque(ParametrosConsultaProdutoDTO parametrosConsulta, Usuario usuario);

        List<ProdutoHistoricoDTO> consultarHistorico(Produto produto, Integer ultimosMeses);

        List<ProdutoHistoricoDetalhesDTO> detalharHistorico(ProdutoHistoricoDTO produtoHistorico);

        Integer quantidadeProdutosParaRetirarDoOnline(Loja loja);
       
        Integer quantidadeProdutosParaRetirarDoOnlineMatriz();
       
        Integer quantidadeProdutosParaRetirarDoOnlineShoplog();
       
        Date dataUltimaVenda(Produto produto);

        Integer quantidadeProdutosAdicionadosSite(Date dataInicial, Date dataFinal);

        Integer quantidadeProdutosOnline();

        Integer quantidadeProdutosFavoritosOffline(Loja loja);

        void verificarPedidosProdutoParaEntrarEmContato(Produto produto, Long sequencialCompra);
        */

       
}