EN · DE · RU · FR · ES

#3021 : ProjektListPage.java

projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java Classe Java, projectforge-wicket/src/main/java/org/projectforge/web/fibu/ProjektListPage.java 241 lignes · 192 code · 39 commentaires · 10 vides
Objectif : Fichier source : projectforge/web/fibu/ProjektListPage.java. ProjektListPage.java fait partie de l'application open-source de gestion de projet ProjectForge.

Source (100 premières lignes)

/////////////////////////////////////////////////////////////////////////////
//
// Projet ProjectForge Community Edition
//         www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Allemagne (www.micromata.com)
//
// ProjectForge est sous double licence.
//
// Cette édition communautaire est un logiciel libre ; vous pouvez la redistribuer et/ou
// la modifier selon les termes de la GNU General Public License telle que publiée
// par la Free Software Foundation ; version 3 de la Licence.
//
// Cette édition communautaire est distribuée dans l'espoir qu'elle sera utile,
// mais SANS AUCUNE GARANTIE ; sans même la garantie implicite de
// QUALITÉ MARCHANDE ou D'ADÉQUATION À UN USAGE PARTICULIER. Voir la GNU General
// Public License pour plus de détails.
//
// Vous devriez avoir reçu une copie de la GNU General Public License avec
// ce programme ; sinon, consultez 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) {
          // Ne devrait pas se produire :
          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,

Historique Git

868d6abb7 2025 -> 2026
63081666f En-têtes des fichiers source : 2024 -> 2025.
db2599ab8 Historique dans le carnet d'ordres, factures entrantes/sortantes et projets.
8c0b82f21 Importations inutilisées supprimées.
d6d3d176f Migration en cours...

868d6abb7

2025 -> 2026
868d6abb75cd191a892911ac8e45058932cf9074
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 @@
 // Projet ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2025 Micromata GmbH, Allemagne (www.micromata.com)
+// Copyright (C) 2001-2026 Micromata GmbH, Allemagne (www.micromata.com)
 //
 // ProjectForge est sous double licence.
 //

63081666f

En-têtes des fichiers source : 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 @@
 // Projet ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2024 Micromata GmbH, Allemagne (www.micromata.com)
+// Copyright (C) 2001-2025 Micromata GmbH, Allemagne (www.micromata.com)
 //
 // ProjectForge est sous double licence.
 //

db2599ab8

Historique dans le carnet d'ordres, factures entrantes/sortantes et projets.
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

Importations inutilisées supprimées.
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 en cours...
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