Added use of projects tree. Split page builder code.
This commit is contained in:
parent
e95c7459bd
commit
1b2969a1eb
3 changed files with 49 additions and 22 deletions
|
@ -183,24 +183,11 @@ public class AgirStatool
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
// Copy CSS file.
|
||||||
FileUtils.copyURLToFile(AgirStatool.class.getResource("/org/april/agirstatool/core/pages/agirstatool.css"), new File(this.targetDirectory, "agirstatool.css"));
|
FileUtils.copyURLToFile(AgirStatool.class.getResource("/org/april/agirstatool/core/pages/agirstatool.css"), new File(this.targetDirectory, "agirstatool.css"));
|
||||||
|
|
||||||
Projects projects = listProjectsWithSubStats();
|
//
|
||||||
|
Projects projects = listProjectsFullFull();
|
||||||
// Add parent projects with alone statistics.
|
|
||||||
for (Project project : listProjectsWithRawStats())
|
|
||||||
{
|
|
||||||
if (project.hasChild())
|
|
||||||
{
|
|
||||||
project.setName("#" + project.getName());
|
|
||||||
project.setParentId(project.getId());
|
|
||||||
project.setChildCount(0);
|
|
||||||
projects.add(project);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Project all = getRootProject();
|
|
||||||
projects.add(all);
|
|
||||||
|
|
||||||
// Create welcome page.
|
// Create welcome page.
|
||||||
String lines = ProjectsRawPageBuilder.build(projects);
|
String lines = ProjectsRawPageBuilder.build(projects);
|
||||||
|
@ -384,6 +371,50 @@ public class AgirStatool
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Projects listProjectsFullFull() throws AgirStatoolException
|
||||||
|
{
|
||||||
|
Projects result;
|
||||||
|
|
||||||
|
result = new Projects();
|
||||||
|
|
||||||
|
//
|
||||||
|
Projects projects = listProjectsWithSubStats();
|
||||||
|
|
||||||
|
// Add parent projects with alone statistics.
|
||||||
|
for (Project project : listProjectsWithRawStats())
|
||||||
|
{
|
||||||
|
if (project.hasChild())
|
||||||
|
{
|
||||||
|
project.setName("#" + project.getName());
|
||||||
|
project.setParentId(project.getId());
|
||||||
|
project.setChildCount(0);
|
||||||
|
projects.add(project);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create a root project.
|
||||||
|
Project all = getRootProject();
|
||||||
|
projects.add(all);
|
||||||
|
|
||||||
|
// Transform as tree.
|
||||||
|
for (Project project : projects)
|
||||||
|
{
|
||||||
|
if ((project.hasChild()) || (project.getId() == 0))
|
||||||
|
{
|
||||||
|
result.add(project);
|
||||||
|
|
||||||
|
Projects subProjects = projects.getByParent(project.getId());
|
||||||
|
subProjects.sortByName();
|
||||||
|
project.subProjects().addAll(subProjects);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
result.sortByName();
|
||||||
|
|
||||||
|
//
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* List projects extended.
|
* List projects extended.
|
||||||
*
|
*
|
||||||
|
|
|
@ -56,8 +56,6 @@ public class ProjectsGroupedPageBuilder
|
||||||
{
|
{
|
||||||
System.out.println("Building welcome page (2)…");
|
System.out.println("Building welcome page (2)…");
|
||||||
|
|
||||||
projects.sortByName();
|
|
||||||
|
|
||||||
TagDataManager data = new TagDataManager();
|
TagDataManager data = new TagDataManager();
|
||||||
int index = 0;
|
int index = 0;
|
||||||
for (Project project : projects)
|
for (Project project : projects)
|
||||||
|
@ -85,7 +83,7 @@ public class ProjectsGroupedPageBuilder
|
||||||
|
|
||||||
if (project.hasChild())
|
if (project.hasChild())
|
||||||
{
|
{
|
||||||
for (Project subProject : projects.getByParent(project.getId()).sortByName())
|
for (Project subProject : project.subProjects())
|
||||||
{
|
{
|
||||||
data.setContent("projectLine", index, "projectId", subProject.getId());
|
data.setContent("projectLine", index, "projectId", subProject.getId());
|
||||||
data.setAttribute("projectLine", index, "projectName", "style", "padding-left: 25px;");
|
data.setAttribute("projectLine", index, "projectName", "style", "padding-left: 25px;");
|
||||||
|
|
|
@ -54,8 +54,6 @@ public class ProjectsRawPageBuilder
|
||||||
{
|
{
|
||||||
System.out.println("Building welcome page…");
|
System.out.println("Building welcome page…");
|
||||||
|
|
||||||
projects.sortByName();
|
|
||||||
|
|
||||||
TagDataManager data = new TagDataManager();
|
TagDataManager data = new TagDataManager();
|
||||||
int index = 0;
|
int index = 0;
|
||||||
for (Project project : projects)
|
for (Project project : projects)
|
||||||
|
@ -91,7 +89,7 @@ public class ProjectsRawPageBuilder
|
||||||
|
|
||||||
if (project.hasChild())
|
if (project.hasChild())
|
||||||
{
|
{
|
||||||
for (Project subProject : projects.getByParent(project.getId()).sortByName())
|
for (Project subProject : project.subProjects())
|
||||||
{
|
{
|
||||||
data.setContent("projectLine", index, "projectId", subProject.getId());
|
data.setContent("projectLine", index, "projectId", subProject.getId());
|
||||||
data.setAttribute("projectLine", index, "projectName", "style", "padding-left: 25px;");
|
data.setAttribute("projectLine", index, "projectName", "style", "padding-left: 25px;");
|
||||||
|
|
Loading…
Reference in a new issue