Ejemplo n.º 1
0
        public static bool EliminarSubproyecto(SUBPROYECTO subproyecto)
        {
            var lista     = new List <Tuple <SUBPROYECTO, int> >();
            var subpHijos = ObtenerEstructuraSubproyectos(lista, subproyecto, 1);

            foreach (var subp in subpHijos)
            {
                List <Actividad_proyecto> actividades = ControladorActividades.ObtenerActividadesProyectoDeSubproyecto(subp.Item1);
                foreach (var item in actividades)
                {
                    if (ControladorActividades.TieneHorasLogueadas(item))
                    {
                        return(false);
                    }
                }
            }

            foreach (var subp in subpHijos)
            {
                List <Actividad_proyecto> actividades = ControladorActividades.ObtenerActividadesProyectoDeSubproyecto(subp.Item1);
                foreach (var item in actividades)
                {
                    ControladorActividades.EliminarActividad(item);
                }
                SubproyectoBD.EliminarSubproyecto(subp.Item1);
            }

            return(true);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Asigna una OT al subproyecto.
 /// </summary>
 /// <param name="idSubproyecto"></param>
 /// <returns></returns>
 public static bool AsignarOT(int idSubproyecto)
 {
     if (ControladorSubproyecto.BuscarPorId(idSubproyecto).ot == null || ControladorSubproyecto.BuscarPorId(idSubproyecto).ot == 0)
     {
         return(SubproyectoBD.AsignarOt(idSubproyecto));
     }
     return(false);
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Obtiene el objeto Hora_Tipo_Subproyecto con el id indicado.
 /// </summary>
 /// <param name="id_hora_tipo_subproyecto"></param>
 /// <returns></returns>
 internal static HORA_TIPO_SUBPROYECTO ObtenerHoraTipoSubproyecto(int?id_hora_tipo_subproyecto)
 {
     if (id_hora_tipo_subproyecto == null || id_hora_tipo_subproyecto <= 0)
     {
         return(null);
     }
     return(SubproyectoBD.ObtenerHoraTipoSubproyecto(id_hora_tipo_subproyecto));
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Obtiene el objeto Hora_Tipo_Subproyecto con le nombre indicado.
 /// </summary>
 /// <param name="hora_tipo_subproyecto"></param>
 /// <returns></returns>
 public static HORA_TIPO_SUBPROYECTO ObtenerHoraTipoSubproyecto(string hora_tipo_subproyecto)
 {
     if (hora_tipo_subproyecto == null || hora_tipo_subproyecto == "")
     {
         return(null);
     }
     return(SubproyectoBD.ObtenerHoraTipoSubproyecto(hora_tipo_subproyecto));
 }
Ejemplo n.º 5
0
        /// <summary>
        /// Actualiza el valor de asignacion automatica al subproyecto indicado y sus hijos.
        /// </summary>
        /// <param name="subproyecto"></param>
        /// <param name="nuevoValor"></param>
        public static void ActualizarAsignacionAutomatica(SUBPROYECTO subproyecto, bool nuevoValor)
        {
            SUBPROYECTO        sub      = subproyecto;
            List <SUBPROYECTO> subHijos = ObtenerSubproyectosHijos(sub);

            foreach (var item in subHijos)
            {
                SubproyectoBD.ActualizarAsignacionAutomatica(item, nuevoValor);
                ActualizarAsignacionAutomatica(item, nuevoValor);
            }
        }
Ejemplo n.º 6
0
        public static List <Tuple <USUARIO, double> > ObtenerHorasTrabajadasPorUsuario(SUBPROYECTO sUBPROYECTO)
        {
            var lista = new List <Tuple <SUBPROYECTO, int> >();
            List <Tuple <USUARIO, double> > listaReturn = new List <Tuple <USUARIO, double> >();
            List <SUBPROYECTO> subproyectos             = ObtenerEstructuraSubproyectos(lista, sUBPROYECTO, 1).Select(x => x.Item1).ToList();

            foreach (var item in subproyectos)
            {
                listaReturn.AddRange(SubproyectoBD.ObtenerHorasTrabajadasPorUsuario(item));
            }

            return(listaReturn.GroupBy(x => x.Item1.id_usuario).ToList().Select(cl => new Tuple <USUARIO, double>(cl.First().Item1, cl.Sum(x => x.Item2))).ToList());
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Verifica si el subproyecto ya tiene un hijo con ese nombre.
 /// </summary>
 /// <param name="nombreHijo">Nombre del hijo</param>
 /// <param name="idSubproyectoPadre">Subproyecto a buscar</param>
 /// <returns></returns>
 public static SUBPROYECTO YaExisteHijo(string nombreHijo, int idSubproyectoPadre)
 {
     return(SubproyectoBD.YaExisteHijo(nombreHijo, idSubproyectoPadre));
 }
Ejemplo n.º 8
0
 public static Actividad_proyecto ObtenerActividaHijaDeTipo(SUBPROYECTO subproyecto, Tipo_actividad tipo)
 {
     return(SubproyectoBD.ObtenerActividaHijaDeTipo(subproyecto, tipo));
 }
Ejemplo n.º 9
0
 /// <summary>
 /// Busca un subproyecto por OT del cliente.
 /// </summary>
 /// <param name="ot"></param>
 /// <param name="idUsuario"></param>
 /// <param name="validaMiembro"></param>
 /// <returns></returns>
 public static SUBPROYECTO BuscarPorOTCliente(string ot, int idUsuario, bool validaMiembro)
 {
     return(SubproyectoBD.BuscarPorOTCliente(ot, idUsuario, validaMiembro));
 }
Ejemplo n.º 10
0
 /// <summary>
 /// Obtiene la lista de miembros que fueron explicitamente asignados a ese subproyecto
 /// </summary>
 /// <param name="subproyecto">El subproyecto a buscar sus miembros</param>
 /// <returns>Lista de miembros que explicitamente pueden trabajar en ese subproyecto</returns>
 public static List <USUARIO> ObtenerMiembrosDirectos(SUBPROYECTO subproyecto)
 {
     return(SubproyectoBD.ObtenerMiembrosDirectos(subproyecto));
 }
Ejemplo n.º 11
0
 /// <summary>
 /// Obtiene una lista de todos los Tipos de Subproyecto en la base de datos
 /// </summary>
 /// <returns></returns>
 internal static List <TIPO_SUBPROYECTO> ObtenerTiposSubproyecto()
 {
     return(SubproyectoBD.ObtenerTipoSubproyectos());
 }
Ejemplo n.º 12
0
 /// <summary>
 /// Obtiene una lista de las Horas_Tipo_Unidad, que contiene la descripcion y las horas
 /// de los tipos de subproyecto.
 /// </summary>
 /// <returns></returns>
 internal static List <HORA_TIPO_SUBPROYECTO> ObtenerHorasTipoUnidad()
 {
     return(SubproyectoBD.ObtenerHorasTipoUnidad().OrderBy(x => x.nombre).ToList());
 }
Ejemplo n.º 13
0
 /// <summary>
 /// Obtiene el subproyecto padre, null si es proyecto.
 /// </summary>
 /// <param name="subpro"></param>
 /// <returns></returns>
 public static SUBPROYECTO ObtenerSubproyectoPadre(SUBPROYECTO subpro)
 {
     return(SubproyectoBD.ObtenerSubproyectoPadre(subpro));
 }
Ejemplo n.º 14
0
 /// <summary>
 /// Obtiene los subproyectos hijos directos del subproyecto indicado.
 /// </summary>
 /// <param name="subpro"></param>
 /// <returns></returns>
 public static List <SUBPROYECTO> ObtenerSubproyectosHijos(SUBPROYECTO subpro)
 {
     return(SubproyectoBD.ObtenerSubproyectosHijos(subpro));
 }
Ejemplo n.º 15
0
 /// <summary>
 /// Busca un subproyecto por su ID.
 /// </summary>
 /// <param name="id_subproyecto"></param>
 /// <returns></returns>
 public static SUBPROYECTO BuscarPorId(int id_subproyecto)
 {
     return(SubproyectoBD.BuscarPorId(id_subproyecto));
 }
Ejemplo n.º 16
0
 /// <summary>
 /// Inserta un subproyecto en la base de datos.
 /// </summary>
 /// <param name="subproyecto"></param>
 /// <returns></returns>
 public static SUBPROYECTO InsertarSubproyecto(SUBPROYECTO subproyecto)
 {
     return(SubproyectoBD.Insertar(subproyecto));
 }
Ejemplo n.º 17
0
 public static List <SUBPROYECTO> ObtenerSubproyectosConActividadesActivos()
 {
     return(SubproyectoBD.ObtenerSubproyectosConActividadesActivos());
 }
Ejemplo n.º 18
0
 /// <summary>
 /// Obtiene el TIpo de Subproyecto del Subproyecto indicado.
 /// </summary>
 /// <param name="subproyecto"></param>
 /// <returns></returns>
 public static TIPO_SUBPROYECTO ObtenerTipoSubproyecto(SUBPROYECTO subproyecto)
 {
     return(SubproyectoBD.ObtenerTipoSubproyecto(subproyecto));
 }
Ejemplo n.º 19
0
 public static List <AvanceSubproyecto> ObtenerAvanceConcepto(SUBPROYECTO subpr, Tipo_actividad tipo_actividad)
 {
     return(SubproyectoBD.ObtenerAvanceConcepto(subpr, tipo_actividad));
 }
Ejemplo n.º 20
0
 /// <summary>
 /// Obtiene Tipo_Subproyecto por nombre
 /// </summary>
 /// <param name="subproyecto"></param>
 /// <returns></returns>
 public static TIPO_SUBPROYECTO ObtenerTipoSubproyectoPorNombre(string subproyecto)
 {
     return(SubproyectoBD.ObtenerTipoSubproyecto(subproyecto));
 }
Ejemplo n.º 21
0
 /// <summary>
 /// Obtiene la lista de miembros que fueron explicitamente asignados a ese subproyecto
 /// </summary>
 /// <param name="subproyecto">El subproyecto a buscar sus miembros</param>
 /// <returns>Lista de miembros que explicitamente pueden trabajar en ese subproyecto</returns>
 public static List <USUARIO> ObtenerMiembrosDirectosOrdenMenorCalificaciones(SUBPROYECTO subproyecto)
 {
     return(SubproyectoBD.ObtenerMiembrosDirectosOrdenMenorCalificaciones(subproyecto));
 }
Ejemplo n.º 22
0
 /// <summary>
 /// Obtiene una lista de los subproyectos de un proyecto o subroyecto.
 /// </summary>
 /// <param name="id_proyecto">Id del proyecto</param>
 /// <param name="id_subproyecto">Id del subproyecto. Si es 1 busca los hijos directos del proyecto</param>
 /// <returns></returns>
 public static List <SUBPROYECTO> ObtenerPorProyecto(int id_proyecto, int?id_subproyecto)
 {
     return(SubproyectoBD.ObtenerPorProyecto(id_proyecto, id_subproyecto > 1 ? id_subproyecto : 1));
 }
Ejemplo n.º 23
0
 /// <summary>
 /// Busca un subproyecto por su nombre, si validaMiembro es true, valida que el usuario indicado
 /// sea miembro del mismo, de lo contrario no devuelve.
 /// </summary>
 /// <param name="nombre">Nombre a buscar</param>
 /// <param name="idUsuario">Id del usuario que hace la busqueda</param>
 /// <param name="validarMiembro">Booleano para indicar si valida el usuario o muestra todos</param>
 /// <returns></returns>
 public static SUBPROYECTO BuscarPorNombre(string nombre, int idUsuario, bool validarMiembro)
 {
     return(SubproyectoBD.BuscarPorNombre(nombre, idUsuario, validarMiembro));
 }
Ejemplo n.º 24
0
 /// <summary>
 /// Obtiene una lista de Actividades_Proyecto que pertenecen a un subproyecto.
 /// </summary>
 /// <param name="subproyecto"></param>
 /// <returns></returns>
 public static List <Actividad_proyecto> ObtenerActividades(SUBPROYECTO subproyecto)
 {
     return(SubproyectoBD.ObtenerActividades(subproyecto));
 }
Ejemplo n.º 25
0
 /// <summary>
 /// Actualiza los datos del subproyecto.
 /// </summary>
 /// <param name="subproyecto"></param>
 /// <returns></returns>
 public static SUBPROYECTO ActualizarSubproyecto(SUBPROYECTO subproyecto)
 {
     return(SubproyectoBD.UpdateSubproyecto(subproyecto));
 }
Ejemplo n.º 26
0
 /// <summary>
 /// El formato de las hojas de EXcel para la exportacion es: [ot] - Nombre.
 /// Este método toma ese String y devuelve el Subproyecto que tiene esa OT en ese proyecto.
 /// </summary>
 /// <param name="nombre"></param>
 /// <param name="idProyecto"></param>
 /// <returns></returns>
 public static SUBPROYECTO BuscarPorOTDeExportacion(string nombre, int idProyecto)
 {
     return(SubproyectoBD.BuscarPorOTDeExportacion(nombre, idProyecto));
 }