コード例 #1
0
        public static APIAnswer ExecGenericStandardAnswer(Database db, string proc, params KeyValuePair <string, object>[] parms)
        {
            if (!proc.HasContent())
            {
                return(APIAnswer.Error(-2000, "proc invalida"));
            }

            if (parms != null && parms.Length > 0)
            {
                proc = proc.FormatWith(parms.ToDictionaryStringObject());
            }

            try
            {
                var retlist = db.SqlQuery <APIAnswer>(proc).ToArray();

                if (retlist.Length == 0)
                {
                    return(APIAnswer.Error(-2001, proc + ":retorno zerado"));
                }

                if (retlist.Length > 1)
                {
                    return(APIAnswer.Error(-2002, proc + ":retorno de mais de um"));
                }

                return(retlist[0]);
            }
            catch (Exception ex)
            {
                return(APIAnswer.Error(-2001, proc + ":" + ex.ToString()));
            }
        }
コード例 #2
0
        public static APIAnswer ConsultaCEP(string cep, out Address addr)
        {
            //TODO: colocar tratamento de serviço com PARAMETRIZAÇÃO DE URL, ERRO, TIMEOUT
            //TODO: trazer para cá todos os serviços de consulta

            addr = null;
            try
            {
                var oEnder = new ECTService.AtendeClienteClient();
                var ret    = oEnder.consultaCEP(cep);

                if (ret == null)
                {
                    return(APIAnswer.Error(-1, "Nao encontrado."));
                }

                addr = new Address()
                {
                    CEP          = ret.cep,
                    Bairro       = ret.bairro,
                    Cidade       = ret.cidade,
                    Complemento2 = ret.complemento2,
                    Endereco     = ret.end,
                    UF           = ret.uf
                };
                return(APIAnswer.Returns(addr));
            }
            catch (Exception ex)
            {
                if (ex.ToString().ToUpper().Contains("CEP INV"))
                {
                    return(APIAnswer.Error(-1, ex.ToString(), "CEP INVALIDO"));
                }
                return(APIAnswer.Error(-10, ex.ToString()));
            }
        }