public List <ClaseExpGantt> ObtenerEstructuraProyectoConActividades(Proyecto proyecto) { List <ClaseExpGantt> estrucutaProyecto = new List <ClaseExpGantt>(); List <SUBPROYECTO> listaSubproyecto = ObtenerSubproyectosHijos(proyecto); foreach (var subpro in listaSubproyecto) { ControladorSubproyecto.ObtenerEstructuraSubproyectosConActividades(estrucutaProyecto, subpro, 1); } return(estrucutaProyecto); }
public static DateTime?CalcularFechaFinSubproyecto(SUBPROYECTO subproyecto) { List <ClaseExpGantt> exp = new List <ClaseExpGantt>(); ControladorSubproyecto.ObtenerEstructuraSubproyectosConActividades(exp, subproyecto, 1); List <DateTime?> fecha = new List <DateTime?>(); foreach (var item in exp) { if (item.actividad != null) { Detalle_recurso tarea = ObtenerPorActividad(item.actividadProy); if (tarea != null && tarea.fecha_fin.HasValue) { fecha.Add(tarea.fecha_fin.Value); } } } fecha.Sort((a, b) => a.Value.CompareTo(b.Value)); return(fecha.Count > 0 ? fecha.ElementAt(fecha.Count - 1) : subproyecto.fecha_inicio_estimada.Value); }