// GET: Tbl_Planeacion_Etapa_Productiva/Create
        /// <param name="id">Resive el Id del aprendiz, para ser guardado en el modelo
        /// </param>
        /// <returns>Se devuelve la vista mas el modelo</returns>
        public ActionResult Create(int?id)
        {
            Tbl_Planeacion_Etapa_Productiva tbl_Planeacion_Etapa_Productiva = new Tbl_Planeacion_Etapa_Productiva();

            tbl_Planeacion_Etapa_Productiva.Id_Aprendiz = id;
            return(View(tbl_Planeacion_Etapa_Productiva));
        }
        // GET: Tbl_Planeacion_Etapa_Productiva/Edit/5
        /// <summary>
        /// Se crea el modelo con la informacion obtenida atraves del id, y se da valor al Id_Aprendiz,
        /// ya que este campo no se puede cambiar
        /// </summary>
        /// <param name="id">Obtiene el Id de la empresa para mostrar la informacion</param>
        /// <returns>Devuelve la vista mas el modelo</returns>
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Tbl_Planeacion_Etapa_Productiva tbl_Planeacion_Etapa_Productiva = db.Tbl_Planeacion_Etapa_Productiva.Find(id);

            tbl_Planeacion_Etapa_Productiva.Id_Aprendiz = tbl_Planeacion_Etapa_Productiva.Id_Aprendiz;
            if (tbl_Planeacion_Etapa_Productiva == null)
            {
                return(HttpNotFound());
            }
            return(View(tbl_Planeacion_Etapa_Productiva));
        }
        public ActionResult Create([Bind(Include = "Id_Planeacion,Actividades_A_Desarrollar,Evidencias_Aprendizaje,Fecha,Lugar,Observaciones,Id_Aprendiz")] Tbl_Planeacion_Etapa_Productiva tbl_Planeacion_Etapa_Productiva)
        {
            if (ModelState.IsValid)
            {
                var ficha = (from f in db.Tbl_Aprendices where f.Numero_Identificacion == tbl_Planeacion_Etapa_Productiva.Id_Aprendiz select f.Id_Ficha).First();
                db.Tbl_Planeacion_Etapa_Productiva.Add(tbl_Planeacion_Etapa_Productiva);
                db.SaveChanges();

                if (Session["Rol"].ToString() != "1" || Session["Rol"].ToString() != "2")
                {
                    return(RedirectToAction("Index", "Tbl_Aprendices", new { ficha }));
                }
                else
                {
                    return(RedirectToAction("Index", "Login"));
                }
            }
            return(View(tbl_Planeacion_Etapa_Productiva));
        }
        // GET: Tbl_Planeacion_Etapa_Productiva/Details/5
        /// <summary>Se crea un ViewBag con la etapa en la que se encuentra, para continuar
        /// con el correcto direccionamiento</summary>
        /// <param name="id">Resive el id que contiene la informacion del registro</param>
        /// <returns>El modelo con la informacion correspondiente al id</returns>
        public ActionResult Details(int?id, int etapa)
        {
            if (Session["Rol"].ToString() == "3")
            {
                return(RedirectToAction("Index", "Home"));
            }
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Tbl_Planeacion_Etapa_Productiva tbl_Planeacion_Etapa_Productiva = db.Tbl_Planeacion_Etapa_Productiva.Find(id);

            if (tbl_Planeacion_Etapa_Productiva == null)
            {
                return(HttpNotFound());
            }
            ViewBag.etapa = etapa;
            return(View(tbl_Planeacion_Etapa_Productiva));
        }