コード例 #1
0
        public string pesquisarProduto(string dtoChave, string parametros)
        {
            JavaScriptSerializer js = new JavaScriptSerializer();
            DtoRetorno retorno;
            DtoProduto param = js.Deserialize<DtoProduto>(parametros);

            if (param.nome.Length < 3 &&
                param.tipoCodigoDeBarras.Length < 3 &&
                (param.tipo == null || param.tipo.tipo.Length < 3) &&
                (param.fabricante == null || param.fabricante.fabricante.Length < 3))
            {
                retorno = (new DtoExcecao(DTO.Enum.CriteriosDeBuscaInsuficientes)).ToDto();
                return js.Serialize(retorno);
            }

            DtoChave chave = js.Deserialize<DtoChave>(dtoChave);
            Chave mChave = new Chave();

            try
            {
                mChave.validarChave(chave);
                Produto mProduto = new Produto();
                DtoProduto[] produtos = mProduto.pesquisarProduto(param);
                chave = mChave.atualizarChave(chave);
                retorno = new DtoRetornoObjeto(chave, produtos);
            }
            catch (DtoExcecao ex)
            {
                retorno = ex.ToDto();
            }
            catch (Exception ex)
            {
                retorno = new DtoRetornoErro(ex.Message);
            }

            /*Objeto: Array de DtoProdutos com DtoTipoProduto e DtoFabricante*/
            return js.Serialize(retorno);
        }