예제 #1
0
파일: Util.svc.cs 프로젝트: Zilioli/WMS
        public string ConsultarCep(string pJSONCEP)
        {
            IDataReader          objResultado;
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            CEP objCEP = serializer.Deserialize <CEP>(pJSONCEP);

            try
            {
                // Abre conexão com o DB
                objDATA.Open();

                // Indica o tipo de comando
                objDATA.COMMAND_TYPE = CommandType.StoredProcedure;

                // Comando a ser executado no DB
                objDATA.COMMAND = PKG_NAME + "CEP.dbo.PR_CONSULTA_CEP";

                // Adiciona os parametros a chamada da procedure
                objDATA.AddParameter("CEP", WMSDBTypes.WMSDBType.VARCHAR2, 20, objCEP.Cep, ParameterDirection.Input);

                if (!SQL)
                {
                    objDATA.AddParameter("C_CUR", WMSDBTypes.WMSDBType.RefCursor, 0, null, ParameterDirection.Output);

                    // Executa a procedure
                    objDATA.ExecuteNonQuery();
                }

                // Recupera o Cursor de Saída
                objResultado = (!SQL) ? ((OracleRefCursor)objDATA.GetParameter("C_CUR")).GetDataReader() : objDATA.ExecuteQuery();

                // Percorre o resultado do cursor e adiciona os itens na lista
                while (objResultado.Read())
                {
                    // Preenche o objeto

                    objCEP.Bairro    = objResultado["BAIRRO"].ToString();
                    objCEP.Endereco  = objResultado["LOGRADOURO"].ToString();
                    objCEP.Estado    = objResultado["UF"].ToString();
                    objCEP.Municipio = objResultado["CIDADE"].ToString();
                    objCEP.UF        = objResultado["UF"].ToString();
                }

                // Fecha o objeto
                objResultado.Close();

                // Retorna a lista de perfil
                return(JsonConvert.SerializeObject(objCEP));
            }
            catch (Exception ex)
            {
                // Tratamento de Exceção
                throw ex;
            }
            finally
            {
                // Verifica se existe conexão aberta e fecha
                if (objDATA != null)
                {
                    objDATA.Close();
                }

                // Finaliza os objetos
                objResultado = null;
                objCEP       = null;
            }
        }
예제 #2
0
        public string ListarPerfil(string pJSONPerfil)
        {
            Perfil               objPerfil;
            List <Perfil>        lstPerfil = new List <Perfil>();
            IDataReader          objResultado;
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            Perfil               pPerfil    = serializer.Deserialize <Perfil>(pJSONPerfil);

            try
            {
                // Abre conexão com o DB
                objDATA.Open();

                // Indica o tipo de comando
                objDATA.COMMAND_TYPE = CommandType.StoredProcedure;

                // Comando a ser executado no DB
                objDATA.COMMAND = PKG_NAME + "LISTAR_PERFIL";

                // Adiciona os parametros a chamada da procedure
                objDATA.AddParameter("pIDPERFIL", WMSDBTypes.WMSDBType.INT32, 3, pPerfil.idPerfil, ParameterDirection.Input);
                objDATA.AddParameter("pDESPERFIL", WMSDBTypes.WMSDBType.VARCHAR2, 255, pPerfil.desPerfil, ParameterDirection.Input);

                if (!SQL)
                {
                    objDATA.AddParameter("C_CUR", WMSDBTypes.WMSDBType.RefCursor, 0, null, ParameterDirection.Output);

                    // Executa a procedure
                    objDATA.ExecuteNonQuery();
                }

                // Recupera o Cursor de Saída
                objResultado = (!SQL) ? ((OracleRefCursor)objDATA.GetParameter("C_CUR")).GetDataReader() : objDATA.ExecuteQuery();

                // Percorre o resultado do cursor e adiciona os itens na lista
                while (objResultado.Read())
                {
                    // Preenche o objeto
                    objPerfil           = new Perfil();
                    objPerfil.idPerfil  = int.Parse(objResultado["IDPERFIL"].ToString());
                    objPerfil.desPerfil = objResultado["DESPERFIL"].ToString();

                    // Adiciona o item na lista
                    lstPerfil.Add(objPerfil);

                    // Finaliza o objeto
                    objPerfil = null;
                }

                // Fecha o objeto
                objResultado.Close();

                // Retorna a lista de perfil
                return(JsonConvert.SerializeObject(lstPerfil));
            }
            catch (Exception ex)
            {
                // Tratamento de Exceção
                throw ex;
            }
            finally
            {
                // Verifica se existe conexão aberta e fecha
                if (objDATA != null)
                {
                    objDATA.Close();
                }

                // Finaliza os objetos
                objResultado = null;
                objPerfil    = null;
                lstPerfil    = null;
            }
        }