public ActionResult Login(ConsultarUsuarioViewModel model)
        {
            List <SelectListItem> Lista_sede    = new List <SelectListItem>();
            List <SelectListItem> Lista_Oficina = new List <SelectListItem>();

            Lista_sede.Add(new SelectListItem()
            {
                Text  = "SELECCIONAR SEDE",
                Value = "0"
            });

            Lista_Oficina.Add(new SelectListItem()
            {
                Text  = "SELECCIONAR OFICINA",
                Value = ""
            });

            if (HttpContext.Request.IsAuthenticated)
            {
                int val_perf = _AccountService.RecuperaDatos("20565429656", HttpContext.User.Identity.Name.Split('|')[1].Trim(), Convert.ToInt32(HttpContext.User.Identity.Name.Split('|')[4].Trim())).id_perfil;
                if (val_perf == 15)
                {
                    return(RedirectToAction("Consultar_HT_General", "HojaTramite"));
                }
                else
                {
                    if (val_perf == 18)
                    {
                        if (HttpContext.User.Identity.Name.Split('|')[4].Trim() == "18")
                        {
                            return(RedirectToAction("Documentos_por_recibir_x_evaluador", "Habilitaciones"));
                        }
                        else
                        {
                            return(RedirectToAction("Nuevo_Documento_dhcpa_Certificaciones", "Habilitaciones"));
                        }
                    }
                    else
                    {
                        return(RedirectToAction("Por_Recibir_Ht", "HojaTramite"));
                    }
                }
            }
            else
            {
                if (IsValid(model.persona_num_documento, model.clave))
                {
                    ViewBag.cond_ofi = "1";
                    if (model.persona.Split('|')[0].Trim() != null && model.persona.Split('|')[0].Trim() != "")
                    {
                        if (IsValid_oficina(model.persona_num_documento, model.clave, Convert.ToInt32(model.persona.Split('|')[0].Trim()), model.persona.Split('|')[1].Trim()))
                        {
                            int val_perf = _AccountService.RecuperaDatos("20565429656", model.persona_num_documento, Convert.ToInt32(model.persona.Split('|')[0].Trim())).id_perfil;

                            if (val_perf == 15)
                            {
                                return(RedirectToAction("Consultar_HT_General", "HojaTramite"));
                            }
                            else
                            {
                                if (val_perf == 18)
                                {
                                    if (Convert.ToInt32(model.persona.Split('|')[0].Trim()) == 18)
                                    {
                                        return(RedirectToAction("Documentos_por_recibir_x_evaluador", "Habilitaciones"));
                                    }
                                    else
                                    {
                                        return(RedirectToAction("Nuevo_Documento_dhcpa_Certificaciones", "Habilitaciones"));
                                    }
                                }
                                else
                                {
                                    return(RedirectToAction("Por_Recibir_Ht", "HojaTramite"));
                                }
                            }
                        }
                        else
                        {
                            return(View(model));
                        }
                    }
                    else
                    {
                        int s_ok        = 0;
                        var oficina_dir = _GeneralService.Consulta_Usuario("20565429656", model.persona_num_documento);

                        if (oficina_dir.Count() == 1)
                        {
                            if (IsValid_oficina(model.persona_num_documento, model.clave, oficina_dir.First().id_oficina_direccion, oficina_dir.First().nom_sede + "-" + oficina_dir.First().nom_ofi))
                            {
                                int val_perf = _AccountService.RecuperaDatos("20565429656", model.persona_num_documento, oficina_dir.First().id_oficina_direccion).id_perfil;

                                if (val_perf == 15)
                                {
                                    return(RedirectToAction("Consultar_HT_General", "HojaTramite"));
                                }
                                else
                                {
                                    if (val_perf == 18)
                                    {
                                        if (oficina_dir.First().id_oficina_direccion == 18)
                                        {
                                            return(RedirectToAction("Documentos_por_recibir_x_evaluador", "Habilitaciones"));
                                        }
                                        else
                                        {
                                            return(RedirectToAction("Nuevo_Documento_dhcpa_Certificaciones", "Habilitaciones"));
                                        }
                                    }
                                    else
                                    {
                                        return(RedirectToAction("Por_Recibir_Ht", "HojaTramite"));
                                    }
                                }
                            }
                            else
                            {
                                return(View(model));
                            }
                        }
                        else
                        {
                            foreach (var result in oficina_dir.OrderBy(x => x.nom_ofi))
                            {
                                s_ok = 0;
                                foreach (var result2 in Lista_sede.ToList())
                                {
                                    if (result.id_sede.ToString() == result2.Value.ToString())
                                    {
                                        s_ok = 1;
                                    }
                                }
                                if (s_ok == 0)
                                {
                                    Lista_sede.Add(new SelectListItem()
                                    {
                                        Text  = result.nom_sede,
                                        Value = result.id_sede.ToString()
                                    });
                                }
                            }
                            ;

                            ViewBag.lstSede    = Lista_sede;
                            ViewBag.lstOficina = Lista_Oficina;
                            return(View(model));
                        }
                    }
                }
                else
                {
                    ViewBag.cond_ofi   = "0";
                    ViewBag.lstSede    = Lista_sede;
                    ViewBag.lstOficina = Lista_Oficina;
                    ModelState.AddModelError("", "");
                    return(View(model));
                }
            }
        }