示例#1
0
 /*Crea empleado
  * @param atributos para crear empleado
  * @return vista de empleados
  */
 public ActionResult Create([Bind(Include = "cedulaED,nombreED,apellido1ED,apellido2ED,fechaInicio,fechaNacimiento,edad,telefono,correo,disponibilidad,direccionExacta,distrito,canton,provincia,flg")] EmpleadoDesarrollador empleadoDesarrollador)
 {
     //Para válidar
     if (ModelState.IsValid)
     {
         //Valida si la cédula eno existe
         if (!db.EmpleadoDesarrollador.Any(model => model.cedulaED == empleadoDesarrollador.cedulaED))
         {
             if (empleadoDesarrollador.fechaNacimiento != null)                //verifica si introdujeron fecha de nacimiento
             {
                 DateTime fecha = empleadoDesarrollador.fechaNacimiento.Value; //Saca el valor de la fecha introducida
                 int      edad  = System.DateTime.Now.Year - fecha.Year;       //Calcula la edad
                 empleadoDesarrollador.edad = (byte)edad;                      //La guarda en el atributo edad, convertida en bytes
             }
             db.EmpleadoDesarrollador.Add(empleadoDesarrollador);
             db.SaveChanges();
             return(RedirectToAction("Index"));
         }
         else                                                                                                          //Si la cédula ya existe, muestra mensaje de error
         {
             Response.Write("<script>alert('La cédula de este empleado ya existe. Intente con una nueva');</script>"); //Si la cédula ya existe, muestra mensaje de error)
         }
     }
     return(View(empleadoDesarrollador));
 }
示例#2
0
        /*Crea empleado
         * @param atributos para crear habilidad
         * @return vista de habilidades
         */
        public ActionResult Create([Bind(Include = "cedulaEmpleadoPK_FK,conocimientos")] Habilidades habilidades)
        {
            if (ModelState.IsValid)//Para válidar
            {
                db.Habilidades.Add(habilidades);
                db.SaveChanges();
                return(RedirectToAction("Index", new { id = habilidades.cedulaEmpleadoPK_FK }));
            }

            ViewBag.cedulaEmpleadoPK_FK = new SelectList(db.EmpleadoDesarrollador, "cedulaED", "nombreED", habilidades.cedulaEmpleadoPK_FK);
            return(View(habilidades));
        }
示例#3
0
        public ActionResult Edit([Bind(Include = "nombreProyecto_FK,nombre,complejidad,duracionEstimada,duracionReal,cedulaResponsable_FK,estado")] Requerimiento requerimiento, string nombreProyecto, string miembros)
        {
            string usuario = System.Web.HttpContext.Current.Session["rol"] as string;

            ViewBag.user = usuario;
            using (Gr02Proy3Entities db = new Gr02Proy3Entities())
            {
                if (ModelState.IsValid)
                {
                    //encuentro el id respectivo para modificarlo en requerimimiento
                    //encuentro el usuario respectivo
                    var desarrollador = from a in db.Equipo
                                        where a.EmpleadoDesarrollador.nombreED == miembros &&
                                        a.nombreProy_FK == requerimiento.nombreProyecto_FK
                                        select a.cedulaEM_FK;
                    //los modifico
                    requerimiento.idModulo_FK          = modId;
                    requerimiento.cedulaResponsable_FK = desarrollador.FirstOrDefault();
                    //guardo el cambio en la base
                    db.Entry(requerimiento).State = EntityState.Modified;
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                return(View(requerimiento));
            }
        }
示例#4
0
        public ActionResult DeleteConfirmed(string nombreProyecto, int modID, string nombreReq)
        {
            Requerimiento requerimiento = db.Requerimiento.Find(nombreProyecto, modID, nombreReq);

            db.Requerimiento.Remove(requerimiento);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#5
0
        public ActionResult Create([Bind(Include = "cedula,nombre,apellido1,apellido2,telefono,direccionExacta,distrito,canton,provincia")] Cliente cliente)
        {
            if (ModelState.IsValid)                                           //Para validar la cédula de cada cliente
            {
                if (!db.Cliente.Any(model => model.cedula == cliente.cedula)) //Si es una cédula que no existe, lo guarda con normalidad
                {
                    db.Cliente.Add(cliente);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                else //Si ya esa cédula existe, muestra un mensaje de error
                {
                    Response.Write("<script>alert('La cédula de este cliente ya existe. Intente con una nueva');</script>");
                }
            }

            return(View(cliente));
        }
示例#6
0
        public ActionResult Create([Bind(Include = "nombre,duracionEstimada,costoTrabajo,costoEstimado,objetivo,fechaFinalizacion,fechaInicio,cedulaCliente")] Proyecto.Models.Proyecto proyecto, string lider)
        {
            if (ModelState.IsValid)
            {
                if (!db.Proyecto.Any(model => model.nombre == proyecto.nombre))
                {
                    /*  SqlConnection con = new SqlConnection("data source=172.16.202.23;user id=Gr02Proy3;password=Orion24!!!;MultipleActiveResultSets=True;App=EntityFramework");
                     * SqlCommand cmd = new SqlCommand("SELECT * FROM Proyecto WHERE nombre=@nombre AND objetivo=@objetivo", con);
                     * /* Convertimos en literal estos parámetros, por lo que no podrán hacer la inyección */
                    /* cmd.Parameters.Add("@nombre", SqlDbType.VarChar, 15).Value = proyecto.nombre;
                     * cmd.Parameters.Add("@objetivo", SqlDbType.VarChar, 256).Value = proyecto.objetivo;*/
                    var person = from b in db.EmpleadoDesarrollador
                                 where (b.nombreED.Equals(lider))
                                 select b.cedulaED;
                    db.Equipo.Add(new Equipo
                    {
                        cedulaEM_FK   = person.FirstOrDefault(),
                        nombreProy_FK = proyecto.nombre,
                        rol           = true
                    });

                    var item = from a in db.EmpleadoDesarrollador
                               where a.cedulaED == person.FirstOrDefault()
                               select a;
                    item.FirstOrDefault().disponibilidad = false;

                    db.Proyecto.Add(proyecto);
                    db.SaveChanges();
                    return(RedirectToAction(""));
                }
                else
                {
                    Response.Write("<script>alert('El nombre del proyecto ya existe. Intente con uno nuevo');</script>");
                }
            }


            ViewBag.cedulaCliente = new SelectList(db.Cliente, "cedula", "nombre", proyecto.cedulaCliente);
            return(View(proyecto));
            //registro no existe
        }
示例#7
0
        [ValidateAntiForgeryToken] //no me valida si existen en el mismo proyecto de ves en cuando
        public ActionResult Create(Modulo modulo)
        {
            if (ModelState.IsValid)                                              //Valida si Id y Proyecto esten correctos
            {
                if (db.Proyecto.Any(model => model.nombre == modulo.NombreProy)) //Reviso que el proyecto seleccionado sea valido
                {
                    var queryCheck =
                        from a in db.Modulo
                        where (a.NombreProy == modulo.NombreProy && a.Nombre == modulo.Nombre)
                        select a.Nombre;


                    if (!(queryCheck.Any()))

                    {
                        string input  = modulo.Nombre;
                        string output = input.Replace("or 1=1", " ");
                        output        = output.Replace("modulo", "_");
                        modulo.Nombre = output;


                        db.Modulo.Add(modulo);
                        db.SaveChanges();
                        return(RedirectToAction("index"));
                    }
                    else
                    {
                        Response.Write("<script>alert('El nombre de este modulo ya existe en este proyecto. Intente con uno nuevo');</script>");
                    }
                }
                else    //Si la cédula ya existe, muestra mensaje de error
                {
                    Response.Write("<script>alert('Este proyecto no existe. Intente con otro');</script>");
                }
            }
            ViewBag.NombreProy = new SelectList(db.Proyecto, "nombre", "objetivo", modulo.NombreProy);

            return(View(modulo));
        }
示例#8
0
 public ActionResult Asignar(string Miembros, string Proyecto)
 {
     //condicion para ver si al menos se agrego un empleado y se coloco un proyecto en el dropdown
     if (Proyecto != "" && Miembros != "")
     {
         //separa el string Miembros en un array de string donde cada casilla es una cedula de desarrollador
         string[] eachMember = Miembros.Split(',');
         foreach (var itemId in eachMember)
         {
             var empleado = from a in db.EmpleadoDesarrollador
                            where a.cedulaED == itemId
                            select a.disponibilidad;
             //como en la lista se muestran empleados que ya estan asignados en el momento esto toma en cuenta solo los nuevos
             if (empleado.FirstOrDefault() == true)
             {
                 //es el equipo con la tupla que se va a agregar a la base
                 db.Equipo.Add(new Equipo
                 {
                     cedulaEM_FK   = itemId,
                     nombreProy_FK = Proyecto,
                     rol           = false
                 });
             }
             try
             {
                 new EmpleadoDesarrolladorController().modificarEstado(itemId); //para que ese empleado deje de estar disponible
                 db.SaveChanges();
             }
             catch (Exception)
             {
             }
         }
         //retorna al script al success
         return(Json(new
         {
             redirectUrl = Url.Action("Index", "Equipo"),
             isRedirect = true, //se redireccionara
             error = false      //no paso ningun error
         }));
     }
     else
     {
         return(Json(new
         {
             redirectUrl = Url.Action("Index", "Equipo"),
             error = true,      //paso un error
             isRedirect = false //como es falso no se va a redirigir
         }));
     }
 }
示例#9
0
        public ActionResult Create(string nombreProyecto, string nombreModulo, string nombre, string miembro, string complejidad, string estado, [Bind(Include = "nombreProyecto_FK,idModulo_FK,nombre,complejidad,duracionEstimada,duracionReal,cedulaResponsable_FK,estado")] Requerimiento requerimiento)
        {
            using (Gr02Proy3Entities db = new Gr02Proy3Entities())
            {
                if (ModelState.IsValid)
                {
                    var queryCheck =
                        from a in db.Requerimiento
                        where (a.nombre == nombre && a.nombreProyecto_FK == nombreProyecto)
                        select a.nombre;



                    if (!(queryCheck.Any()))
                    {
                        if (nombreModulo == "Seleccione un modulo" || nombreModulo == null || nombreProyecto == "Seleccione Proyecto" || nombreProyecto == null || miembro == "Miembro responsable" || miembro == null)
                        {
                            Response.Write("<script>alert('Le falta ingresar informacion importante');</script>");
                        }
                        else
                        {
                            var queryMod = from a in db.Modulo
                                           where a.NombreProy.Equals(nombreProyecto) && (a.Nombre.Equals(nombreModulo))
                                           select a.Id;
                            var queryResponsable = from b in db.EmpleadoDesarrollador
                                                   where (b.nombreED.Equals(miembro))
                                                   select b.cedulaED;
                            string input  = requerimiento.nombre;
                            string output = input.Replace("requerimiento", "");
                            requerimiento.nombre               = output;
                            requerimiento.nombreProyecto_FK    = nombreProyecto;
                            requerimiento.idModulo_FK          = queryMod.FirstOrDefault();
                            requerimiento.cedulaResponsable_FK = queryResponsable.FirstOrDefault();
                            db.Requerimiento.Add(requerimiento);
                            db.SaveChanges();
                            return(RedirectToAction("Index"));
                        }
                    }
                    else
                    {
                        Response.Write("<script>alert('El nombre de este Requerimiento ya existe en este proyecto. Intente con uno nuevo');</script>");
                    }
                }

                ViewBag.cedulaResponsable_FK = new SelectList(db.EmpleadoDesarrollador, "cedulaED", "nombreED", requerimiento.cedulaResponsable_FK);
                ViewBag.nombreProyecto_FK    = new SelectList(db.Modulo, "NombreProy", "Nombre", requerimiento.nombreProyecto_FK);
                return(View(requerimiento));
            }
        }