public ActionResult IndexError()
        {
            TempData["ErrorPermiso"] = true;
            var filtro = _sesionBitacoras.Get <FiltroBitacoraModels>("filtro_bitacora");

            if (filtro == null)
            {
                filtro = new FiltroBitacoraModels();
            }
            return(View("Index", filtro));
        }
        public ActionResult Index(int CandidaturaId)
        {
            var filtro = _sesionBitacoras.Get <FiltroBitacoraModels>("filtro_bitacora");

            if (filtro == null)
            {
                //orden por defecto
                filtro = new FiltroBitacoraModels()
                {
                    SortColumn = "BitacoraId",
                    SortOrder  = Recruiting.Business.BaseClasses.DataTable.DataTableSortDirectionEnum.Descending
                };
            }
            _sesionBitacoras.Add("filtro_inicial_bitacora", filtro);

            PermisosMostrar();

            _sesionBitacoras.Add("CandidaturaId", CandidaturaId);

            filtro = GenerateViewElementsIndex(filtro);

            return(View(filtro));
        }
        private FiltroBitacoraModels GenerateViewElementsIndex(FiltroBitacoraModels model)
        {
            int CandidaturaId = Convert.ToInt32(_sesionBitacoras.Get <int>("CandidaturaId").ToString());

            model.CentroIdUsuarioLogueado = HttpContext.Session["CentroIdUsuario"] != null ? HttpContext.Session["CentroIdUsuario"].ToString() : string.Empty;


            var candidatura = _candidaturaRepository.GetByCriteria(x => x.CandidaturaId == CandidaturaId).FirstOrDefault();

            if (candidatura != null)
            {
                model.CandidaturaId         = candidatura.CandidaturaId;
                model.EstadoCandidatura     = candidatura.EstadoCandidatura != null ? candidatura.EstadoCandidatura.EstadoCandidatura : string.Empty;
                model.EtapaCandidatura      = candidatura.EtapaCandidatura != null ? candidatura.EtapaCandidatura.EtapaCandidatura : string.Empty;
                model.Perfil                = candidatura.Categoria != null ? candidatura.Categoria.Nombre : string.Empty;
                model.Entrevistador         = candidatura.Entrevistas.Count > 0 ? candidatura.Entrevistas.FirstOrDefault().Entrevistador.Nombre : string.Empty;
                model.NombreCandidato       = string.Concat(candidatura.Candidato.Nombre, " ", candidatura.Candidato.Apellidos);
                model.TipoTecnologia        = candidatura.TipoTecnologia != null ? candidatura.TipoTecnologia.Nombre : string.Empty;
                model.CentroUsuarioCreacion = candidatura.Usuario.Centro == null ? string.Empty : candidatura.Usuario.Centro.Nombre;
            }

            return(model);
        }
        public ActionResult Create(int?CandidaturaId, string MensajeSistema)
        {
            CandidaturaId = Convert.ToInt32(_sesionBitacoras.Get <int>("CandidaturaId").ToString());

            var response = _bitacoraService.GenerateBitacoraManual(CandidaturaId ?? 0, MensajeSistema);

            if (!response.IsValid)
            {
                CreateMessageError(response.ErrorMessage);
            }
            else
            {
                CreateMessageNotify("Bitacora guardada correctamente");
            }

            var filtro = _sesionBitacoras.Get <FiltroBitacoraModels>("filtro_bitacora");

            if (filtro == null)
            {
                filtro = new FiltroBitacoraModels();
            }
            return(RedirectToAction("Index", filtro));
        }
        private FiltroBitacoraModels MappertoFiltroBitacoras(IDictionary <string, string> filtro)
        {
            var FiltroBitacoraModels = new FiltroBitacoraModels();

            if (filtro.Count != 0)
            {
                string value;

                if (filtro.ContainsKey("BitacoraId"))
                {
                    value = filtro["BitacoraId"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.BitacoraId = Convert.ToInt32(value);
                    }
                }

                if (filtro.ContainsKey("CandidaturaId"))
                {
                    value = filtro["CandidaturaId"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.CandidaturaId = Convert.ToInt32(value);
                    }
                }

                if (filtro.ContainsKey("TipoCambio"))
                {
                    value = filtro["TipoCambio"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.TipoCambio = value;
                    }
                }

                if (filtro.ContainsKey("MensajeSistema"))
                {
                    value = filtro["MensajeSistema"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.MensajeSistema = value;
                    }
                }

                if (filtro.ContainsKey("Usuario"))
                {
                    value = filtro["Usuario"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.UsuarioCreacionId = Convert.ToInt32(value);
                    }
                }

                if (filtro.ContainsKey("FechaCreacion"))
                {
                    value = filtro["FechaCreacion"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.FechaCreacion = Convert.ToDateTime(value);
                    }
                }



                if (filtro.ContainsKey("CentroUsuarioId"))
                {
                    value = filtro["CentroUsuarioId"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.CentroIdUsuario = Convert.ToInt32(value);
                    }
                }

                if (filtro.ContainsKey("CentroSearch"))
                {
                    value = filtro["CentroSearch"];
                    if (!string.IsNullOrEmpty(value))
                    {
                        FiltroBitacoraModels.CentroIdUsuario = Convert.ToInt32(value);
                    }
                }
            }

            return(FiltroBitacoraModels);
        }