Ejemplo n.º 1
0
        public static List <USUARIO> ObtenerMiemrosHabilitados(Actividad_proyecto actividad)
        {
            List <USUARIO> miembros = ObtenerMiembrosIndirectos(BuscarPorId(actividad.id_subproyecto.Value));
            List <Tuple <USUARIO, Tuple <int, decimal> > > listaMiembros = new List <Tuple <USUARIO, Tuple <int, decimal> > >();

            foreach (var item in miembros)
            {
                if (!ControladorUsuarios.EstaHabilitadoParaActividad(item, actividad))
                {
                    listaMiembros.Add(new Tuple <USUARIO, Tuple <int, decimal> >(item, new Tuple <int, decimal>(ControladorUsuarios.ObtenerCantidadCalificaciones(item), ControladorActividades.ObtenerTipoActividadUsuario(ControladorActividades.ObtenerActividad(actividad).id_tipo_actividad, item.id_usuario).calificacion.Value)));
                }
            }

            return(listaMiembros.OrderByDescending(x => x.Item2.Item2).ThenBy(x => x.Item2.Item1).Select(x => x.Item1).ToList());
        }
        private void CrearRecursos()
        {
            IXLWorksheet   _worksheetProyecto = _xlworkbook.Worksheet("Tabla_Recursos");
            List <USUARIO> usuarios           = ControladorUsuarios.ObtenerTodosUsuarios().Where(x => x.activo == true).ToList();

            int fila = 2;

            foreach (var item in usuarios)
            {
                _worksheetProyecto.Cell(fila, 1).Value  = fila - 1;
                _worksheetProyecto.Cell(fila, 2).Value  = item.FullName;
                _worksheetProyecto.Cell(fila, 3).Value  = item.nombre.ToCharArray().ElementAt(0).ToString().ToUpper() + item.apellido.ToCharArray().ElementAt(0).ToString().ToUpper();
                _worksheetProyecto.Cell(fila, 4).Value  = "Trabajo";
                _worksheetProyecto.Cell(fila, 5).Value  = "";
                _worksheetProyecto.Cell(fila, 6).Value  = "Descar";
                _worksheetProyecto.Cell(fila, 9).Value  = "100%";
                _worksheetProyecto.Cell(fila, 10).Value = "$ 0.00/h";
                _worksheetProyecto.Cell(fila, 10).Value = 0;

                fila++;
            }
        }
        private void ActualizarDesdeBaseDatos()
        {
            IXLWorksheet _worksheetProyecto = _xlworkbook.Worksheet("SOPORTE");

            List <USUARIO>               usuarios             = ControladorUsuarios.ObtenerTodosUsuarios();
            List <TIPO_SUBPROYECTO>      tipoSubproyectos     = ControladorSubproyecto.ObtenerTiposSubproyecto();
            List <HORA_TIPO_SUBPROYECTO> horaTipoSubproyectos = ControladorSubproyecto.ObtenerHorasTipoUnidad();
            List <Control>               _controles           = new ControladorControles().ObtenerTodos();

            int fila = 2;

            foreach (USUARIO usuario in usuarios)
            {
                _worksheetProyecto.Cell(fila, 3).Value = usuario.nombre + " " + usuario.apellido;
                fila++;
            }
            fila = 2;
            foreach (TIPO_SUBPROYECTO tipoSub in tipoSubproyectos)
            {
                _worksheetProyecto.Cell(fila, 4).Value = tipoSub.nombre_tipo_subproyecto;
                fila++;
            }
            fila = 2;
            foreach (HORA_TIPO_SUBPROYECTO horaUnidad in horaTipoSubproyectos)
            {
                _worksheetProyecto.Cell(fila, 5).Value = horaUnidad.nombre;
                _worksheetProyecto.Cell(fila, 6).Value = horaUnidad.horas;
                fila++;
            }

            fila = 2;
            foreach (Control control in _controles)
            {
                _worksheetProyecto.Cell(fila, 7).Value = control.nombre_control;
                fila++;
            }
            //_xlworkbook.Save();
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Obtiene la estructura de todo el proyecto, incluyendo las actividades que la involucran, y las asignaciones.
        /// </summary>
        /// <param name="lista"></param>
        /// <param name="sub"></param>
        /// <param name="nivel"></param>
        /// <returns></returns>
        public static List <ClaseExpGantt> ObtenerEstructuraSubproyectosConActividades(List <ClaseExpGantt> lista, SUBPROYECTO sub, int nivel)
        {
            List <SUBPROYECTO>        listaSubproyectos = ObtenerSubproyectosHijos(subpro: sub);
            List <Actividad_proyecto> actividades       = ControladorActividades.ObtenerActividadesProyectoDeSubproyecto(sub);

            ClaseExpGantt estructura = new ClaseExpGantt()
            {
                subproyecto = sub, nivel = nivel
            };

            lista.Add(estructura);
            nivel = nivel + 1;

            foreach (var actividad in actividades)
            {
                Detalle_recurso tarea        = ControladorTareas.ObtenerPorActividad(actividad);
                ClaseExpGantt   ExpoActivida = new ClaseExpGantt()
                {
                    actividadProy = actividad, nivel = nivel, tarea = tarea, subproyecto = null, actividad = ControladorActividades.ObtenerActividad(actividad), usuario = tarea != null?ControladorUsuarios.ObtenerUsuario(tarea.id_usuario.Value) : null
                };
                lista.Add(ExpoActivida);
            }

            foreach (SUBPROYECTO subpro in listaSubproyectos)
            {
                ObtenerEstructuraSubproyectosConActividades(lista, subpro, nivel);
            }
            return(lista);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Agrega una tarea en la base de datos para el usuario seleccionado.
        /// Se asigna con estado Pendiente.
        /// Si el usuaro ya tiene ese
        /// </summary>
        /// <param name="idActividadProyectoSolicitar"></param>
        /// <param name="idUsuario"></param>
        /// <returns></returns>
        public static Detalle_recurso RequerirTarea(int idActividadProyectoSolicitar, int idUsuario)
        {
            Detalle_recurso tarea = new Detalle_recurso();

            tarea.id_actividad_proyecto = idActividadProyectoSolicitar;
            tarea.forzada              = false;
            tarea.id_usuario           = idUsuario;
            tarea.motivo               = "solicitud";
            tarea.tipo                 = "";
            tarea.porcentaje_avance    = 0;
            tarea.realizada            = false;
            tarea.cantidad_hora        = Convert.ToDecimal(ControladorActividades.ObtenerHorasTotalesActividad(ControladorActividades.ObtenerActividadProyecto(idActividadProyectoSolicitar)));
            tarea.id_estado            = ObtenerEstadoPorNombre("Pendiente").IdEstadoTarea;
            tarea.fecha_inicio         = DateTime.Now;
            tarea.fecha_fin            = ControladorCalendario.CalcularFechaFin(ControladorActividades.ObtenerActividadProyecto(idActividadProyectoSolicitar), ControladorUsuarios.ObtenerUsuario(idUsuario), tarea.fecha_inicio.Value, ControladorActividades.ObtenerHorasTotalesActividad(ControladorActividades.ObtenerActividadProyecto(idActividadProyectoSolicitar)));
            tarea.duracion_cadista     = (decimal)ControladorActividades.ObtenerHorasOrdenCompraParaCadista(ControladorActividades.ObtenerActividadProyecto(idActividadProyectoSolicitar));
            tarea.fecha_inicio_cadista = tarea.fecha_inicio;
            tarea.fecha_fin_cadista    = tarea.fecha_fin;


            if (ControladorTareas.EstaAsignadaAUsuario(idActividadProyectoSolicitar, idUsuario) == null)
            {
                return(Insertar(tarea));
            }
            return(null);
        }