#3021: ProjektListPage.java
projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java Java-Klasse, projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java 241 Zeilen · 192 Code · 39 Kommentare · 10 leer
Zweck: Quelldatei: projectforge/web/fibu/ProjektListPage.java. ProjektListPage.java ist Teil der Open-Source-Projektmanagement-Anwendung ProjectForge.
Quellcode (erste 100 Zeilen)
/////////////////////////////////////////////////////////////////////////////
//
// Project ProjectForge Community Edition
// www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge ist dual-lizenziert.
//
// Diese Community Edition ist freie Software; Sie können es weiterverteilen und/oder
// modifizieren unter den Bedingungen der GNU General Public License, wie veröffentlicht
// von der Free Software Foundation; Version 3 der Lizenz.
//
// Diese Community Edition wird in der Hoffnung verteilt, dass sie nützlich sein wird,
// aber OHNE JEGLICHE GEWÄHRLEISTUNG; ohne sogar die stillschweigende Garantie der
// MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Siehe die GNU General
// Public License für weitere Details.
//
// Sie sollten eine Kopie der GNU General Public License zusammen mit
// diesem Programm erhalten haben; falls nicht, siehe http://www.gnu.org/licenses/.
//
/////////////////////////////////////////////////////////////////////////////
package org.projectforge.web.fibu;
import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
import org.apache.wicket.extensions.markup.html.repeater.data.sort.SortOrder;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.html.link.BookmarkablePageLink;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.projectforge.business.fibu.KontoCache;
import org.projectforge.business.fibu.KontoDO;
import org.projectforge.business.fibu.ProjektDO;
import org.projectforge.business.fibu.ProjektDao;
import org.projectforge.business.fibu.kost.KostCache;
import org.projectforge.business.group.service.GroupService;
import org.projectforge.framework.persistence.user.api.UserPrefArea;
import org.projectforge.framework.persistence.user.entities.GroupDO;
import org.projectforge.reporting.Kost2Art;
import org.projectforge.reporting.impl.ProjektImpl;
import org.projectforge.web.WicketSupport;
import org.projectforge.web.task.TaskPropertyColumn;
import org.projectforge.web.user.UserPrefListPage;
import org.projectforge.web.wicket.*;
import org.projectforge.web.wicket.components.ContentMenuEntryPanel;
import java.util.ArrayList;
import java.util.List;
@ListPage(editPage = ProjektEditPage.class)
public class ProjektListPage extends AbstractListPage<ProjektListForm, ProjektDao, ProjektDO>
implements IListPageColumnsCreator<ProjektDO>
{
private static final long serialVersionUID = -8406452960003792763L;
public ProjektListPage(final PageParameters parameters)
{
super(parameters, "fibu.projekt");
}
public ProjektListPage(final ISelectCallerPage caller, final String selectProperty)
{
super(caller, selectProperty, "fibu.projekt");
}
@SuppressWarnings("serial")
@Override
public List<IColumn<ProjektDO, String>> createColumns(final WebPage returnToPage, final boolean sortable)
{
final List<IColumn<ProjektDO, String>> columns = new ArrayList<IColumn<ProjektDO, String>>();
final CellItemListener<ProjektDO> cellItemListener = new CellItemListener<ProjektDO>()
{
@Override
public void populateItem(final Item<ICellPopulator<ProjektDO>> item, final String componentId,
final IModel<ProjektDO> rowModel)
{
final ProjektDO projekt = rowModel.getObject();
if (projekt.getStatus() == null) {
// Sollte nicht vorkommen:
return;
}
appendCssClasses(item, projekt.getId(), projekt.getDeleted());
}
};
columns.add(new CellItemListenerPropertyColumn<ProjektDO>(new Model<String>(getString("fibu.projekt.nummer")),
getSortable("kost",
sortable),
"kost", cellItemListener)
{
/**
* @see org.projectforge.web.wicket.CellItemListenerPropertyColumn#populateItem(org.apache.wicket.markup.repeater.Item,
* java.lang.String, org.apache.wicket.model.IModel)
*/
@Override
public void populateItem(final Item<ICellPopulator<ProjektDO>> item, final String componentId,
Git-Verlauf
868d6abb7 2025 -> 2026
63081666f Quellcode-Dateiköpfe: 2024 -> 2025.
db2599ab8 Verlauf im Orderbuch, eingehende/ausgehende Rechnungen und Projekte.
8c0b82f21 Nicht verwendete Importe entfernt.
d6d3d176f Migration in Arbeit...
868d6abb7
2025 -> 2026868d6abb75cd191a892911ac8e45058932cf9074
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
index f9408cfab..3e3c7fe36 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
@@ -3,7 +3,7 @@
// Project ProjectForge Community Edition
// www.projectforge.org
//
-// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge ist dual-lizenziert.
//
63081666f
Quellcode-Dateiköpfe: 2024 -> 2025.63081666f620fb87315f01b817e560e0b2f6a33a
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
index 4d6d409fc..f9408cfab 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
@@ -3,7 +3,7 @@
// Project ProjectForge Community Edition
// www.projectforge.org
//
-// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge ist dual-lizenziert.
//
db2599ab8
Verlauf im Orderbuch, eingehende/ausgehende Rechnungen und Projekte.db2599ab88a347e0ff9ad66a479f9b14577a17e2
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
index c1e4f4079..4d6d409fc 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
@@ -180,7 +180,7 @@ public class ProjektListPage extends AbstractListPage<ProjektListForm, ProjektDa
{
final ProjektDO projektDO = rowModel.getObject();
final ProjektImpl projekt = new ProjektImpl(projektDO);
- final List<Kost2Art> kost2Arts = WicketSupport.get(KostCache.class).getAllKost2Arts(projektDO.getId());
+ final List<Kost2Art> kost2Arts = WicketSupport.get(KostCache.class).getAllKost2ArtsForProjekt(projektDO.getId());
projekt.setKost2Arts(kost2Arts);
final Label label = new Label(componentId, new Model<String>(projekt.getKost2ArtsAsHtml()));
label.setEscapeModelStrings(false); 8c0b82f21
Nicht verwendete Importe entfernt.8c0b82f212543f1da4a56ab523e8e599850e8338
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
index 809958ef6..c1e4f4079 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
@@ -33,7 +33,6 @@ import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.spring.injection.annot.SpringBean;
import org.projectforge.business.fibu.KontoCache;
import org.projectforge.business.fibu.KontoDO;
import org.projectforge.business.fibu.ProjektDO;
d6d3d176f
Migration in Arbeit...d6d3d176f5e9fedcfb02fda5b5ce426db9fec7ea
diff --git a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
index 3275bf571..809958ef6 100644
--- a/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
+++ b/projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java
@@ -44,6 +44,7 @@ import org.projectforge.framework.persistence.user.api.UserPrefArea;
import org.projectforge.framework.persistence.user.entities.GroupDO;
import org.projectforge.reporting.Kost2Art;
import org.projectforge.reporting.impl.ProjektImpl;
+import org.projectforge.web.WicketSupport;
import org.projectforge.web.task.TaskPropertyColumn;
import org.projectforge.web.user.UserPrefListPage;
import org.projectforge.web.wicket.*;
@@ -58,18 +59,6 @@ public class ProjektListPage extends AbstractListPage<ProjektListForm, ProjektDa
{
private static final long serialVersionUID = -8406452960003792763L;
- @SpringBean
- private ProjektDao projektDao;
-
- @SpringBean
- private KontoCache kontoCache;
-
- @SpringBean
- private KostCache kostCache;
-
- @SpringBean
- private GroupService groupService;
-
public ProjektListPage(final PageParameters parameters)
{
super(parameters, "fibu.projekt");
@@ -168,7 +157,7 @@ public class ProjektListPage extends AbstractListPage<ProjektListForm, ProjektDa
final ProjektDO projektDO = rowModel.getObject();
String groupName = "";
if (projektDO.getProjektManagerGroupId() != null) {
- final GroupDO group = groupService.getGroup(projektDO.getProjektManagerGroupId());
+ final GroupDO group = WicketSupport.get(GroupService.class).getGroup(projektDO.getProjektManagerGroupId());
if (group != null) {
groupName = group.getName();
}
@@ -192,7 +181,7 @@ public class ProjektListPage extends AbstractListPage<ProjektListForm, ProjektDa
{
final ProjektDO projektDO = rowModel.getObject();
final ProjektImpl projekt = new ProjektImpl(projektDO);
- final List<Kost2Art> kost2Arts = kostCache.getAllKost2Arts(projektDO.getId());
+ final List<Kost2Art> kost2Arts = WicketSupport.get(KostCache.class).getAllKost2Arts(projektDO.getId());
projekt.setKost2Arts(kost2Arts);
final Label label = new Label(componentId, new Model<String>(projekt.getKost2ArtsAsHtml()));
label.setEscapeModelStrings(false);
@@ -204,7 +193,7 @@ public class ProjektListPage extends AbstractListPage<ProjektListForm, ProjektDa
getSortable("description",
sortable),
"description", cellItemListener));
- if (kontoCache.isEmpty() == false) {
+ if (WicketSupport.get(KontoCache.class).isEmpty() == false) {
columns
.add(new CellItemListenerPropertyColumn<ProjektDO>(new Model<String>(getString("fibu.konto")), null, "konto",
cellItemListener)
@@ -218,7 +207,7 @@ public class ProjektListPage extends AbstractListPage<ProjektListForm, ProjektDa