Exemple #1
0
        public ActionResult Cidadao_edt(CidadaoViewModel model, string action)
        {
            if (Session["hashid"] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }
            int _cep;

            Cidadao_bll      cidadaoRepository = new Cidadao_bll(_connection);
            List <Profissao> Lista             = cidadaoRepository.Lista_Profissao();

            ViewBag.Lista_Profissao = new SelectList(Lista, "Codigo", "Nome");
            List <Logradouro> Lista_LogradouroR  = new List <Logradouro>();
            List <Logradouro> Lista_LogradouroC  = new List <Logradouro>();
            Endereco_bll      enderecoRepository = new Endereco_bll(_connection);

            if (action == "btnCepR")
            {
                _cep = Convert.ToInt32(Functions.RetornaNumero(model.EnderecoR.Cep));
                var cepObj = GTI_Mvc.Classes.Cep.Busca_CepDB(_cep);
                if (cepObj.CEP != null)
                {
                    string rua = cepObj.Endereco;
                    if (rua.IndexOf('-') > 0)
                    {
                        rua = rua.Substring(0, rua.IndexOf('-'));
                    }

                    List <string> Lista_Tmp = enderecoRepository.Retorna_CepDB_Logradouro(_cep);
                    int           s         = 1;
                    foreach (string item in Lista_Tmp)
                    {
                        Lista_LogradouroR.Add(new Logradouro()
                        {
                            Codlogradouro = s, Endereco = item.ToUpper()
                        });
                        s++;
                    }
                    ViewBag.LogradouroR = new SelectList(Lista_LogradouroR, "Codlogradouro", "Endereco");

                    Bairro bairro = enderecoRepository.Retorna_CepDB_Bairro(_cep);
                    if (bairro != null)
                    {
                        model.EnderecoR.CodigoBairro = bairro.Codbairro;
                        model.EnderecoR.NomeBairro   = bairro.Descbairro;
                    }
                    Cidade cidade = enderecoRepository.Retorna_CepDB_Cidade(_cep);
                    if (cidade != null)
                    {
                        model.EnderecoR.CodigoCidade = cidade.Codcidade;
                        model.EnderecoR.NomeCidade   = cidade.Desccidade;
                    }
                    model.EnderecoR.UF = cepObj.Estado;
                }
                else
                {
                    model.EnderecoR.CodLogradouro = 0;
                    model.EnderecoR.Endereco      = "";
                    model.EnderecoR.CodigoBairro  = 0;
                    model.EnderecoR.NomeBairro    = "";
                    model.EnderecoR.CodigoCidade  = 0;
                    model.EnderecoR.NomeCidade    = "";
                    model.EnderecoR.Numero        = 0;
                    model.EnderecoR.Complemento   = "";
                    model.EnderecoR.UF            = "";

                    ViewBag.Error = "* Cep do endereço residencial não localizado.";
                    return(View(model));
                }
            }
            else
            {
                if (action == "btnCepC")
                {
                    _cep = Convert.ToInt32(Functions.RetornaNumero(model.EnderecoC.Cep));
                    var cepObjC = GTI_Mvc.Classes.Cep.Busca_CepDB(_cep);
                    if (cepObjC.CEP != null)
                    {
                        string rua = cepObjC.Endereco;
                        if (rua.IndexOf('-') > 0)
                        {
                            rua = rua.Substring(0, rua.IndexOf('-'));
                        }

                        Endereco_bll  EnderecoCepository = new Endereco_bll(_connection);
                        List <string> Lista_Tmp          = EnderecoCepository.Retorna_CepDB_Logradouro(_cep);
                        int           s = 1;
                        foreach (string item in Lista_Tmp)
                        {
                            Lista_LogradouroC.Add(new Logradouro()
                            {
                                Codlogradouro = s, Endereco = item.ToUpper()
                            });
                            s++;
                        }
                        ViewBag.LogradouroC = new SelectList(Lista_LogradouroC, "Codlogradouro", "Endereco");


                        Bairro bairro = EnderecoCepository.Retorna_CepDB_Bairro(_cep);
                        if (bairro != null)
                        {
                            model.EnderecoC.CodigoBairro = bairro.Codbairro;
                            model.EnderecoC.NomeBairro   = bairro.Descbairro;
                        }
                        Cidade cidade = EnderecoCepository.Retorna_CepDB_Cidade(_cep);
                        if (cidade != null)
                        {
                            model.EnderecoC.CodigoCidade = cidade.Codcidade;
                            model.EnderecoC.NomeCidade   = cidade.Desccidade;
                        }
                        model.EnderecoC.UF = cepObjC.Estado;
                    }
                    else
                    {
                        model.EnderecoC.CodLogradouro = 0;
                        model.EnderecoC.Endereco      = "";
                        model.EnderecoC.CodigoBairro  = 0;
                        model.EnderecoC.NomeBairro    = "";
                        model.EnderecoC.CodigoCidade  = 0;
                        model.EnderecoC.NomeCidade    = "";
                        model.EnderecoC.Numero        = 0;
                        model.EnderecoC.Complemento   = "";
                        model.EnderecoC.UF            = "";

                        ViewBag.Error = "* Cep do endereço comercial não localizado.";
                        return(View(model));
                    }
                }
                else
                {
                    if (action == "btnCancel")
                    {
                        return(RedirectToAction("Cidadao_menu"));
                    }
                    else
                    {
                        if (action == "btnValida" || action == "Cidadao_edt")
                        {
                            Grava_Cidadao(model, false);
                            TempData["cod"] = model.Codigo;
                            return(RedirectToAction("Cidadao_vw"));
                        }
                    }
                }
            }

            if (ViewBag.LogradouroR == null && !string.IsNullOrEmpty(model.EnderecoR.Cep))
            {
                _cep = Convert.ToInt32(Functions.RetornaNumero(model.EnderecoR.Cep));
                List <string> Lista_Tmp = enderecoRepository.Retorna_CepDB_Logradouro(_cep);
                int           s         = 1;
                foreach (string item in Lista_Tmp)
                {
                    Lista_LogradouroR.Add(new Logradouro()
                    {
                        Codlogradouro = s, Endereco = item.ToUpper()
                    });
                    s++;
                }
                ViewBag.LogradouroR = new SelectList(Lista_LogradouroR, "Codlogradouro", "Endereco");
            }
            else
            {
                ViewBag.LogradouroR = new SelectList(Lista_LogradouroR, "Codlogradouro", "Endereco");
            }
            if (ViewBag.LogradouroC == null && !string.IsNullOrEmpty(model.EnderecoC.Cep))
            {
                _cep = Convert.ToInt32(Functions.RetornaNumero(model.EnderecoC.Cep));
                List <string> Lista_Tmp = enderecoRepository.Retorna_CepDB_Logradouro(_cep);
                int           s         = 1;
                foreach (string item in Lista_Tmp)
                {
                    Lista_LogradouroC.Add(new Logradouro()
                    {
                        Codlogradouro = s, Endereco = item.ToUpper()
                    });
                    s++;
                }
                ViewBag.LogradouroC = new SelectList(Lista_LogradouroC, "Codlogradouro", "Endereco");
            }
            else
            {
                ViewBag.LogradouroC = new SelectList(Lista_LogradouroC, "Codlogradouro", "Endereco");
            }

            return(View(model));
        }