示例#1
0
        //Esta método es llamado para desplegar el dropdown de selección del proyecto al cual se le quiere consultar sus módulos
        public ActionResult Index()
        {
            var user  = User.Identity.GetUserName();
            var emple = new empleadosController().ExistEmail(user);
            var clien = new clientesController().ExistEmail(user);

            if (emple.Count() > 0)   //es empleado
            {
                //Se obtiene la cedula del empleado
                var cedula = emple[0].cedulaPK;
                //se buscan los proyectos donde participa el empleado con la cedula
                var proyectos = new proyectosController().ProyectsByEmployee(cedula);
                TempData["proyectos"] = proyectos;
                TempData.Keep();
                return(View());
            }
            else if (clien.Count() > 0) // es cliente
            {
                //Se obtiene la cedula del cliente
                var cedula = clien[0].cedulaPK;
                // buscamos un proyecto asignado al cliente pero ahora segun su cedula
                var proyectos = new proyectosController().ProyectsByClient(cedula);
                TempData["proyectos"] = proyectos;
                TempData.Keep();
                return(View());
            }
            else  //es jefe de desarrollo o soporte
            {
                List <proyectos> proyectos = new proyectosController().Pass();
                TempData["proyectos"] = proyectos;
                TempData.Keep();
                return(View());
            }
        }
示例#2
0
        /*
         * Efecto: Request GET de cuentaDeRequerimientos
         * Requiere: NA
         * Modifica: NA
         */
        public ActionResult cuentaDeRequerimientos()
        {
            var user   = User.Identity.GetUserName();
            var client = new clientesController().ExistEmail(user);

            if (client.Count() > 0)
            {
                TempData["clientId"] = client[0].cedulaPK;
                List <proyectos> proyectos = new proyectosController().ProyectsByClient(client[0].cedulaPK);
                TempData["projects"] = new SelectList(proyectos, "codigoPK", "nombre");
                TempData.Keep();
            }
            return(View());
        }
        // GET: requerimientos
        //Esta método es llamado para desplegar el dropdown de selección del proyecto y módulo al cual se le quiere consultar sus requerimientos
        public ActionResult Index()
        {
            var user  = User.Identity.GetUserName();
            var emple = new empleadosController().ExistEmail(user);
            var clien = new clientesController().ExistEmail(user);

            if (emple.Count() > 0)   //es empleado
            {
                var cedula = emple[0].cedulaPK;
                //se buscan los proyectos donde participa el empleado con la cedula
                var proyectos = new proyectosController().ProyectsByEmployee(cedula);
                ViewBag.ProyectList   = new SelectList(proyectos, "codigoPK", "nombre");
                TempData["proyectos"] = proyectos;
                TempData.Keep();
                return(View());
            }
            else if (clien.Count() > 0) // es cliente
            {
                //Se obtiene la cedula del cliente
                var cedula = clien[0].cedulaPK;
                // buscamos un proyecto asignado al cliente pero ahora segun su cedula
                var proyectos = new proyectosController().ProyectsByClient(cedula);
                ViewBag.ProyectList   = new SelectList(proyectos, "codigoPK", "nombre");
                TempData["proyectos"] = proyectos;
                TempData.Keep();
                return(View());
            }
            else  //es jefe de desarrollo o soporte
            {
                List <proyectos> proyectos = new proyectosController().Pass();
                ViewBag.ProyectList   = new SelectList(proyectos, "codigoPK", "nombre");
                TempData["proyectos"] = proyectos;
                TempData.Keep();
                return(View());
            }



            /*
             *
             * List<proyectos> proyectos = new proyectosController().Pass(); //se comunica con el controlador de proyectos para que le la lista de proyectos
             * ViewBag.ProyectList = new SelectList(proyectos, "codigoPK", "nombre"); //contiene la lista de proyectos
             * TempData["proyectos"] = proyectos; //se almacena en esa variable de datos temporales el proyecto seleccionado
             * TempData.Keep();//se le pide mantener esos datos temporales
             * return View(); //se envía a la vista*/
        }
        public ActionResult Index()
        {
            /*Para relacionar la persona loggeada con su respectiva instancia en la bd,
             * con esto sabemos a que Rol pertenece
             * y facilitamos el acceso correspondiente con los condicionales de abajo
             */
            var user  = User.Identity.GetUserName();
            var emple = new empleadosController().ExistEmail(user);
            var clien = new clientesController().ExistEmail(user);

            if (emple.Count() > 0)   //es empleado
            {
                //Se obtiene la cedula del empleado
                var cedula = emple[0].cedulaPK;
                //se buscan los proyectos donde participa el empleado con la cedula
                var proyectos = (from d in db.proyectos
                                 join f in db.roles
                                 on d.codigoPK equals f.codigoProyectoFK
                                 where f.cedulaFK == cedula
                                 select d).ToList();
                return(View(proyectos.ToList()));
            }
            else if (clien.Count() > 0) // es cliente
            {
                //Obtenemos al cliente segun el username dela bd clientes
                var existe = db.clientes.Where(w => w.correo == user);
                // buscamos un proyecto asignado al cliente pero ahora segun su cedula
                var proyectos = db.proyectos.Where(p => existe.Any(w => w.cedulaPK == p.cedulaClienteFK));
                //var proyectos = db.proyectos.Include(p => p.clientes).Where(p => p.cedulaClienteFK == clien[0].cedulaPK);
                //var proyectos = db.proyectos.Include(p => p.clientes);
                return(View(proyectos.ToList()));
            }
            else  //es jefe de desarrollo o soporte
            {
                var proyectos = db.proyectos.Include(p => p.clientes);
                return(View(proyectos.ToList()));
            }
        }
示例#5
0
        public ActionResult Index()
        {
            var user  = User.Identity.GetUserName();
            var emple = new empleadosController().ExistEmail(user);
            var clien = new clientesController().ExistEmail(user);

            if (emple.Count() > 0)   //es empleado, mostrar los reportes disponibles para los lideres
            {
                //obteniendo la cedula del empleado
                var cedula = emple[0].cedulaPK;

                List <StringModel> reportes = new List <StringModel>();
                reportes.Add(new StringModel {
                    Nombre = "Requerimientos de desarrollador"
                });
                reportes.Add(new StringModel {
                    Nombre = "Estado requerimientos de desarrollador"
                });
                reportes.Add(new StringModel {
                    Nombre = "Tiempos totales por proyecto"
                });
                reportes.Add(new StringModel {
                    Nombre = "Disponibilidad de desarrolladores"
                });
                TempData["reportes"] = reportes;
                TempData.Keep();


                // ajustar para mostrar solo los correpondientes
            }
            else if (clien.Count() > 0)     //es cliente, mostrar los reportes disponibles para los clientes
            {
                List <StringModel> reportes = new List <StringModel>();
                reportes.Add(new StringModel {
                    Nombre = "Requerimientos de desarrollador"
                });
                reportes.Add(new StringModel {
                    Nombre = "Disponibilidad de desarrolladores"
                });
                reportes.Add(new StringModel {
                    Nombre = "Estado y responsable de requerimientos de proyecto"
                });
                reportes.Add(new StringModel {
                    Nombre = "Cuenta de Requerimientos Finalizados y En Curso"
                });
                TempData["reportes"] = reportes;
                TempData.Keep();
            }
            else   // es de soporte o el jefe de desarrollo, desplegar todos los reportes
            {
                List <StringModel> reportes = new List <StringModel>();
                reportes.Add(new StringModel {
                    Nombre = "Requerimientos de desarrollador"
                });
                reportes.Add(new StringModel {
                    Nombre = "Información sobre conocimientos"
                });
                reportes.Add(new StringModel {
                    Nombre = "Disponibilidad de empleados entre fechas"
                });
                reportes.Add(new StringModel {
                    Nombre = "Estado requerimientos de desarrollador"
                });
                reportes.Add(new StringModel {
                    Nombre = "Tiempos totales por proyecto"
                });
                reportes.Add(new StringModel {
                    Nombre = "Disponibilidad de desarrolladores"
                });
                reportes.Add(new StringModel {
                    Nombre = "Historial de desarrollador"
                });
                reportes.Add(new StringModel {
                    Nombre = "Análisis de duraciones en requerimientos"
                });
                reportes.Add(new StringModel {
                    Nombre = "Diferencia entre fecha estimada y real"
                });
                TempData["reportes"] = reportes;
                TempData.Keep();
            }
            return(RedirectToAction("SelectReport", "reportes"));
        }