/// <summary> /// Método busca por um produto a partir do EAN informado /// </summary> /// <param name="EAN">EAN sendo verificado dígito verificado, permitido somente com 13 dígitos</param> /// <returns>Produto localizado a partir do EAN informado</returns> public NetProduto BuscaProduto(String EAN) { ///Validação dos dados. if (EAN.Trim().Equals("")) { throw new Exception("EAN não informado."); } Ean13Barcode2005.Ean13 ean = new Ean13Barcode2005.Ean13(); if (EAN.Length > 13) { throw new Exception("EAN só pode conter 13 dígitos."); } if (EAN.Length < 13) { EAN = "0000000000000" + EAN; EAN = new Uteis().direita(EAN, 13); } if (!ean.chekDigitoEAN(EAN)) { throw new Exception("Código EAN inválido."); } //Busca NetProduto resporta = _daoProduto.BuscaEAN(EAN); if (resporta == null) { throw new Exception("Não foi localizado nenhum produto com o EAN informado."); } return(resporta); }
/// <summary> /// Método verifica se há itens sem estoque no orçamento e já atauliza a lista de itens sobre sua disponibilidade. /// </summary> /// <returns>Booleano de confirmação</returns> private bool ItensSemEstoque() { Boolean resposta = false; foreach (var item in _itens) { //Atualizando a disponibilidade NetProduto produto = _daoProduto.Buscar(item.Id_produto); if (produto.QuantEstoque == 0) { item.Status = Class.Orcamento.Status.FALTA; resposta = true; } else if (produto.QuantEstoque < item.Quantidade) { item.Status = Class.Orcamento.Status.INSUFICIENTE; resposta = true; } else if (produto.Descontinuado) { item.Status = Class.Orcamento.Status.DISCONTINUADO; resposta = true; } else { item.Status = Class.Orcamento.Status.DISPONIVEL; } } return(resposta); }
/// <summary> /// Método efetua a busca por um produto a partir do código informado no paramentro. O mesmo deve ser positivo maior que zero. /// </summary> /// <param name="cod">Inteiro positivo maior que zero.</param> /// <returns>Produto localizado a aprtir do código informado.</returns> public NetProduto BuscaProduto(Int64 cod) { if (cod <= 0) { throw new Exception("Código do produto inválido."); } NetProduto resposta = _daoProduto.Buscar(cod); if (resposta == null) { throw new Exception("Produto não localizado com o código informado. Favor verificar o código."); } return(resposta); }