예제 #1
0
        public static List <Municipio> ObterListaDeMunicipio(string Estado)
        {
            var listaDeMunicipios = new List <Municipio>();
            var cmd = new SpartacusMin.Database.Command();

            if (Estado.Length == 2)
            {
                cmd.v_text = "select m.* from Municipios m  " +
                             "inner join Estados e " +
                             "on e.codigo = m.codigoestado" +
                             "  where e.sigla = #sigla#";


                cmd.AddParameter("sigla", SpartacusMin.Database.Type.STRING);

                cmd.SetValue("sigla", Estado);
            }
            else
            {
                cmd.v_text = "select m.* from Municipios m  " +
                             "inner join Estados e " +
                             "on e.codigo = m.codigoestado" +
                             " where e.nome = #nome#";

                cmd.AddParameter("nome", SpartacusMin.Database.Type.STRING);

                cmd.SetValue("nome", Estado);
            }
            listaDeMunicipios = ObterListaDoBanco(cmd.GetUpdatedText());

            return(listaDeMunicipios);
        }
예제 #2
0
파일: Cache.cs 프로젝트: dougahasu/DotCEP
        internal static void Criar(string CEP, string Resultado, string IDConsulta)
        {
            SpartacusMin.Database.Generic database;
            var cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "insert into cache values(#cep#,#retorno#,#dataconsulta#,#idconsultandereco#)";

            cmd.AddParameter("cep", SpartacusMin.Database.Type.STRING);
            cmd.AddParameter("retorno", SpartacusMin.Database.Type.STRING);
            cmd.AddParameter("dataconsulta", SpartacusMin.Database.Type.STRING);
            cmd.AddParameter("idconsultandereco", SpartacusMin.Database.Type.INTEGER);

            cmd.SetValue("cep", CEP);
            cmd.SetValue("retorno", Resultado, false);
            cmd.SetValue("dataconsulta", DateTime.Now.ObterDataFormatada());
            cmd.SetValue("idconsultandereco", IDConsulta);

            try
            {
                database = new SpartacusMin.Database.Sqlite(BancosDeDados.ObterCaminhoBancoCache());

                database.SetExecuteSecurity(false);

                database.Execute(cmd.GetUpdatedText());
            }
            catch (SpartacusMin.Database.Exception ex)
            {
                throw new Exception($"Erro no banco: {ex.v_message}");
            }
        }
예제 #3
0
        public static string ObterCodigoDoEstado(string p_SiglaOuNome)
        {
            var saida = "Código não encontrado, verifique o nome!";
            var cmd   = new SpartacusMin.Database.Command();

            if (p_SiglaOuNome.Length == 2) //Se tiver 2 caracteres é uma sigla
            {
                cmd.v_text = "select t.codigo from ESTADOS t where t.sigla = #parametro#";

                p_SiglaOuNome = p_SiglaOuNome.ToUpper();
            }
            else
            {
                cmd.v_text = "select t.codigo from ESTADOS t where t.Nome = #parametro#";
            }

            cmd.AddParameter("parametro", SpartacusMin.Database.Type.STRING);
            cmd.SetValue("parametro", p_SiglaOuNome);

            var tabelaResultado = BancosDeDados.ObterTabelaDoBanco(cmd.GetUpdatedText());

            if (tabelaResultado.Rows.Count != 0)
            {
                saida = tabelaResultado.Rows[0]["Codigo"].ToString();
            }

            return(saida);
        }
예제 #4
0
        public static int ObterCodigoDoMunicipio(string NomeMunicipio, string Estado)
        {
            var cmd = new SpartacusMin.Database.Command();

            if (Estado.Length == 2)
            {
                cmd.v_text = "select t.Codigo from Municipios t " +
                             "inner join estados e " +
                             "on e.codigo = t.codigoestado " +
                             "where t.nome = #nome# and e.sigla = #estado#";
            }
            else
            {
                cmd.v_text = "select t.Codigo from Municipios t " +
                             "inner join estados e " +
                             "on e.codigo = t.codigoestado " +
                             "where t.nome = #nome# and e.nome = #estado#";
            }

            cmd.AddParameter("nome", SpartacusMin.Database.Type.STRING);
            cmd.AddParameter("estado", SpartacusMin.Database.Type.STRING);

            cmd.SetValue("nome", NomeMunicipio);
            cmd.SetValue("estado", Estado);

            return(BuscarCodigoNoBanco(cmd.GetUpdatedText()));
        }
예제 #5
0
        public static List <Municipio> ObterListaDeMunicipio()
        {
            var listaDeMunicipios = new List <Municipio>();
            var cmd = new SpartacusMin.Database.Command();

            cmd.v_text        = "select t.* from Municipios t";
            listaDeMunicipios = ObterListaDoBanco(cmd.GetUpdatedText());

            return(listaDeMunicipios);
        }
예제 #6
0
        internal static void Criar(UF p_UF, string p_Localidade, string p_Logradouro, string p_ResultadoJSON)
        {
            var parametros = Formatacao.FormatarStrParametros(p_UF, p_Localidade, p_Logradouro);

            SpartacusMin.Database.Generic database;
            var cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "insert into ConsultaEndereco (Parametros,DataConsulta) values(#parametros#,#dataconsulta#)";

            cmd.AddParameter("parametros", SpartacusMin.Database.Type.STRING);
            cmd.AddParameter("dataconsulta", SpartacusMin.Database.Type.STRING);

            cmd.SetValue("dataconsulta", DateTime.Now.ObterDataFormatada(), false);
            cmd.SetValue("parametros", parametros, false);

            database = new SpartacusMin.Database.Sqlite(BancosDeDados.ObterCaminhoBancoCache());

            try
            {
                #region Inserindo informações sobre consulta de endereços no banco

                database.Open();

                database = new SpartacusMin.Database.Sqlite(BancosDeDados.ObterCaminhoBancoCache());
                database.SetExecuteSecurity(false);

                database.Execute(cmd.GetUpdatedText());

                #endregion

                #region Formatando e inserindo enderecos no banco

                List <string> EnderecosJSON = ManipulacaoJSON.SepararArrayJSON(p_ResultadoJSON);
                var           IDInsercao    = ObterIDultimaInsercao();


                foreach (string item in EnderecosJSON)
                {
                    Criar(ManipulacaoJSON.ObterCEPdaStrJSON(item), item, IDInsercao);
                }

                #endregion
            }
            catch (SpartacusMin.Database.Exception ex)
            {
                throw new Exception($"Erro:{ex.v_message} ");
            }
            finally
            {
                database.Close();
            }
        }
예제 #7
0
        public static int ObterCodigoDoMunicipio(string NomeMunicipio, int CodigoEstado)
        {
            var cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "select t.Codigo from Municipios t where t.nome = #nome# and t.CodigoEstado = #estado#";
            cmd.AddParameter("nome", SpartacusMin.Database.Type.STRING);
            cmd.AddParameter("estado", SpartacusMin.Database.Type.INTEGER);

            cmd.SetValue("nome", NomeMunicipio);
            cmd.SetValue("estado", CodigoEstado.ToString());

            return(BuscarCodigoNoBanco(cmd.GetUpdatedText()));
        }
예제 #8
0
        public static List <Municipio> ObterListaDeMunicipio(UF SiglaEstado)
        {
            var listaDeMunicipios = new List <Municipio>();
            var cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "select t.* from Municipios t where t.CodigoEstado = #codigo#";
            cmd.AddParameter("codigo", SpartacusMin.Database.Type.INTEGER);
            cmd.SetValue("codigo", Convert.ToInt16(SiglaEstado).ToString());

            listaDeMunicipios = ObterListaDoBanco(cmd.GetUpdatedText());

            return(listaDeMunicipios);
        }
예제 #9
0
        public static Municipio ObterInformacoesDoMunicipio(uint CodigoMunicipio)
        {
            Municipio municipioBase = new Municipio();

            SpartacusMin.Database.Command cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "Select * from Municipios m where m.Codigo = #codigo#";
            cmd.AddParameter("codigo", SpartacusMin.Database.Type.INTEGER);
            cmd.SetValue("codigo", CodigoMunicipio.ToString());

            municipioBase = ObterListaDoBanco(cmd.GetUpdatedText())[0];

            return(municipioBase);
        }
예제 #10
0
        internal static List <Endereco> ObterCache(UF p_UF, string Localidade, string Logradouro)
        {
            List <string>   listaCaheJSON  = new List <string>();
            List <Endereco> listaEnderecos = new List <Endereco>();

            SpartacusMin.Database.Generic database;
            SpartacusMin.Database.Command cmd = new SpartacusMin.Database.Command();
            DataTable tabela = new DataTable();

            cmd.v_text = @"select c.retorno, x.DataConsulta, c.idconsultaendereco from cache c 
						  inner join ConsultaEndereco x on x.ID = c.idconsultaendereco 
			              where x.Parametros = #parametros#"            ;

            cmd.AddParameter("parametros", SpartacusMin.Database.Type.STRING);

            cmd.SetValue("parametros", Formatacao.FormatarStrParametros(p_UF, Localidade, Logradouro), false);

            try
            {
                database = new SpartacusMin.Database.Sqlite(BancosDeDados.ObterCaminhoBancoCache());
                database.SetExecuteSecurity(false);

                tabela = database.Query(cmd.GetUpdatedText(), "Resultado");

                if (tabela.Rows.Count != 0)
                {
                    if (DateTime.Now.ValidarIntervaloDeTempo(tabela.Rows[0]["DataConsulta"].ToString()))
                    {
                        foreach (DataRow item in tabela.Rows)
                        {
                            listaCaheJSON.Add(item[0].ToString());
                        }

                        listaEnderecos = ManipulacaoJSON.ObterEnderecos(listaCaheJSON);
                    }
                    else
                    {
                        Cache.Deletar(Convert.ToInt16(tabela.Rows[0][2]));
                    }
                }
            }
            catch (SpartacusMin.Database.Exception ex)
            {
                throw new Exception($"Erro no banco: {ex.v_message}");
            }


            return(listaEnderecos);
        }
예제 #11
0
        public static List <Estado> ObterListaDeEstados()
        {
            var listaDeEstados = new List <Estado>();
            var cmd            = new SpartacusMin.Database.Command();

            cmd.v_text = "select t.* from ESTADOS t order by t.Nome";

            try
            {
                listaDeEstados = ObterListaDoBanco(cmd.GetUpdatedText());
            }
            catch (SpartacusMin.Database.Exception ex)
            {
                throw new Exception(ex.v_message);
            }

            return(listaDeEstados);
        }
예제 #12
0
        public static string ObterSiglaDoEstado(int p_Codigo)
        {
            var Saida = "Estado não encontrado, verifique o codigo";
            var cmd   = new SpartacusMin.Database.Command();

            cmd.v_text = "select t.Sigla from ESTADOS t where t.codigo = #codigo#";
            cmd.AddParameter("codigo", SpartacusMin.Database.Type.INTEGER);
            cmd.SetValue("codigo", p_Codigo.ToString());

            var tabelaResultado = BancosDeDados.ObterTabelaDoBanco(cmd.GetUpdatedText());

            if (tabelaResultado.Rows.Count != 0)
            {
                Saida = tabelaResultado.Rows[0]["Sigla"].ToString();
            }

            return(Saida);
        }
예제 #13
0
        public static string ObterNomeDoEstado(string p_Sigla)
        {
            String Saida = "Estado não encontrado, verifique a sigla";
            var    cmd   = new SpartacusMin.Database.Command();

            cmd.v_text = "select t.nome from ESTADOS t where t.sigla = #sigla#";
            cmd.AddParameter("sigla", SpartacusMin.Database.Type.STRING);
            cmd.SetValue("sigla", p_Sigla.ToUpper());

            var tabelaResultado = BancosDeDados.ObterTabelaDoBanco(cmd.GetUpdatedText());

            if (tabelaResultado.Rows.Count != 0)
            {
                Saida = tabelaResultado.Rows[0]["Nome"].ToString();
            }

            return(Saida);
        }
예제 #14
0
        public static string ObterNomeDoMunicipio(uint CodigoMunicipio)
        {
            var       saida = String.Empty;
            var       cmd   = new SpartacusMin.Database.Command();
            DataTable tabelaResultado;

            cmd.v_text = "select t.nome from Municipios t where t.codigo = #codigo#";
            cmd.AddParameter("codigo", SpartacusMin.Database.Type.INTEGER);
            cmd.SetValue("codigo", CodigoMunicipio.ToString());

            tabelaResultado = BancosDeDados.ObterTabelaDoBanco(cmd.GetUpdatedText());

            if (tabelaResultado.Rows.Count != 0)
            {
                saida = tabelaResultado.Rows[0]["nome"].ToString();
            }

            return(saida);
        }
예제 #15
0
        private static void deletarConsulta(int IDConsulta)
        {
            SpartacusMin.Database.Generic database;
            SpartacusMin.Database.Command cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "delete from ConsultaEndereco where Id = #id#";

            cmd.AddParameter("id", SpartacusMin.Database.Type.INTEGER);
            cmd.SetValue("id", IDConsulta.ToString());

            try
            {
                database = new SpartacusMin.Database.Sqlite(BancosDeDados.ObterCaminhoBancoCache());

                database.Execute(cmd.GetUpdatedText());
            }
            catch (SpartacusMin.Database.Exception ex)
            {
                throw new Exception($"Erro no banco: {ex.v_message}");
            }
        }
예제 #16
0
        public static Municipio ObterInformacoesDoMunicipio(string NomeMunicipio, string Estado)
        {
            Municipio municipioBase = new Municipio();

            SpartacusMin.Database.Command cmd = new SpartacusMin.Database.Command();

            if (Estado.Length == 2)
            {
                cmd.v_text = "select m.* from estados e " +
                             "inner join municipios m " +
                             "on m.codigoestado = e.codigo " +
                             "where m.nome = #nome# and e.sigla = #sigla#";

                cmd.AddParameter("nome", SpartacusMin.Database.Type.STRING);
                cmd.AddParameter("sigla", SpartacusMin.Database.Type.STRING);

                cmd.SetValue("nome", NomeMunicipio);
                cmd.SetValue("sigla", Estado);
            }
            else
            {
                cmd.v_text = "select m.* from estados e " +
                             "inner join municipios m " +
                             "on m.codigoestado = e.codigo " +
                             "where m.nome = #nomemunicipio# and e.nome = #nomeestado#";

                cmd.AddParameter("nomemunicipio", SpartacusMin.Database.Type.STRING);
                cmd.AddParameter("nomeestado", SpartacusMin.Database.Type.STRING);

                cmd.SetValue("nomemunicipio", NomeMunicipio);
                cmd.SetValue("nomeestado", Estado);
            }

            //E retornado apenas o primeiro valor da lista caso ele tenha mais de um.
            municipioBase = ObterListaDoBanco(cmd.GetUpdatedText())[0];

            return(municipioBase);
        }
예제 #17
0
        public static Municipio ObterInformacoesDoMunicipio(string NomeMunicipio, UF SiglaEstado)
        {
            Municipio municipioBase = new Municipio();

            SpartacusMin.Database.Command cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "select m.* from estados e " +
                         "inner join municipios m " +
                         "on m.codigoestado = e.codigo " +
                         "where m.nome = #nome# and e.codigo = #codigo#";


            cmd.AddParameter("nome", SpartacusMin.Database.Type.STRING);
            cmd.AddParameter("codigo", SpartacusMin.Database.Type.INTEGER);

            cmd.SetValue("nome", NomeMunicipio);
            cmd.SetValue("codigo", Convert.ToInt16(SiglaEstado).ToString());

            //E retornado apenas o primeiro valor da lista caso ele tenha mais de um.
            municipioBase = ObterListaDoBanco(cmd.GetUpdatedText())[0];

            return(municipioBase);
        }
예제 #18
0
파일: Cache.cs 프로젝트: dougahasu/DotCEP
        internal static void Deletar(string CEP)
        {
            SpartacusMin.Database.Generic database;
            var cmd = new SpartacusMin.Database.Command();

            cmd.v_text = "delete from cache where CEP = #cep#";

            cmd.AddParameter("cep", SpartacusMin.Database.Type.STRING);

            cmd.SetValue("cep", CEP);


            try
            {
                database = new SpartacusMin.Database.Sqlite(BancosDeDados.ObterCaminhoBancoCache());

                database.Execute(cmd.GetUpdatedText());
            }
            catch (SpartacusMin.Database.Exception ex)
            {
                throw new Exception($"Erro no banco: {ex.v_message}");
            }
        }
예제 #19
0
파일: Cache.cs 프로젝트: dougahasu/DotCEP
        internal static Endereco ObterCache(string CEP)
        {
            var enderecoBase = new Endereco();

            SpartacusMin.Database.Generic database;
            var cmd    = new SpartacusMin.Database.Command();
            var tabela = new DataTable();

            cmd.v_text = "select * from cache where CEP = #cep#";

            cmd.AddParameter("cep", SpartacusMin.Database.Type.STRING);

            cmd.SetValue("cep", CEP);


            try
            {
                database = new SpartacusMin.Database.Sqlite(BancosDeDados.ObterCaminhoBancoCache());
                database.SetExecuteSecurity(false);

                tabela = database.Query(cmd.GetUpdatedText(), "Saida");

                if (tabela.Rows.Count != 0)
                {
                    var strJSON = tabela.Rows[0]["Retorno"].ToString();

                    enderecoBase = ManipulacaoJSON.ObterEndereco(strJSON);
                }
            }
            catch (SpartacusMin.Database.Exception ex)
            {
                throw new Exception($"Erro no banco: {ex.v_message}");
            }

            return(enderecoBase);
        }
 /// <summary>
 /// Transfere dados do banco de dados atual para um banco de dados de destino.
 /// Conexão com o banco de destino precisa estar aberta.
 /// Não pára a execução se der um problema num comando de inserção específico.
 /// </summary>
 /// <returns>Número de linhas transferidas.</returns>
 /// <param name="p_query">Consulta SQL para buscar os dados no banco atual.</param>
 /// <param name="p_insert">Comando de inserção para inserir cada linha no banco de destino.</param>
 /// <param name="p_destdatabase">Conexão com o banco de destino.</param>
 /// <param name="p_progress">Evento de progresso.</param>
 /// <param name="p_error">Evento de erro.</param>
 public abstract uint Transfer(string p_query, SpartacusMin.Database.Command p_insert, SpartacusMin.Database.Generic p_destdatabase, SpartacusMin.Utils.ProgressEventClass p_progress, SpartacusMin.Utils.ErrorEventClass p_error);
 /// <summary>
 /// Transfere dados do banco de dados atual para um banco de dados de destino.
 /// Conexão com o banco de destino precisa estar aberta.
 /// Não pára a execução se der um problema num comando de inserção específico.
 /// </summary>
 /// <returns>Número de linhas transferidas.</returns>
 /// <param name="p_query">Consulta SQL para buscar os dados no banco atual.</param>
 /// <param name="p_table">Nome da tabela de destino.</param>
 /// <param name="p_columns">Lista de colunas da tabela de destino.</param>
 /// <param name="p_insert">Comando de inserção para inserir cada linha no banco de destino.</param>
 /// <param name="p_destdatabase">Conexão com o banco de destino.</param>
 /// <param name="p_log">Log de inserção.</param>
 /// <param name='p_startrow'>Número da linha inicial.</param>
 /// <param name='p_endrow'>Número da linha final.</param>
 /// <param name='p_hasmoredata'>Indica se ainda há mais dados a serem lidos.</param>
 public abstract uint Transfer(string p_query, string p_table, string p_columns, SpartacusMin.Database.Command p_insert, SpartacusMin.Database.Generic p_destdatabase, ref string p_log, uint p_startrow, uint p_endrow, out bool p_hasmoredata);
 /// <summary>
 /// Transfere dados do banco de dados atual para um banco de dados de destino.
 /// Conexão com o banco de destino precisa estar aberta.
 /// Não pára a execução se der um problema num comando de inserção específico.
 /// </summary>
 /// <returns>Número de linhas transferidas.</returns>
 /// <param name="p_query">Consulta SQL para buscar os dados no banco atual.</param>
 /// <param name="p_insert">Comando de inserção para inserir cada linha no banco de destino.</param>
 /// <param name="p_destdatabase">Conexão com o banco de destino.</param>
 /// <param name="p_log">Log de inserção.</param>
 public abstract uint Transfer(string p_query, SpartacusMin.Database.Command p_insert, SpartacusMin.Database.Generic p_destdatabase, out string p_log);