EN · DE · RU · FR · ES

#164: LiquidityForecastForm.java

plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java Java-класс, plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java 123 строки · 90 кода · 23 комментария · 10 пустых
Назначение: Исходный файл: projectforge/plugins/liquidityplanning/LiquidityForecastForm.java. LiquidityForecastForm.java является частью приложения управления проектами с открытым исходным кодом ProjectForge.

Исходный код (первые 100 строк)

/////////////////////////////////////////////////////////////////////////////
//
// Project ProjectForge Community Edition
//         www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge распространяется по двойной лицензии.
//
// Эта версия для сообщества является бесплатным программным обеспечением; вы можете распространять и/или
// изменять ее в соответствии с условиями Стандартной общественной лицензии GNU (GNU General Public License) версии 3,
// опубликованной Фондом свободного программного обеспечения (Free Software Foundation).
//
// Эта версия для сообщества распространяется в надежде, что она будет полезной,
// но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; даже без подразумеваемой гарантии
// КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См. Стандартную общественную
// лицензию GNU для получения более подробной информации.
//
// Вы должны были получить копию Стандартной общественной лицензии GNU вместе
// с этой программой; если нет, см. http://www.gnu.org/licenses/.
//
/////////////////////////////////////////////////////////////////////////////

package org.projectforge.plugins.liquidityplanning;

import org.apache.wicket.markup.html.form.Button;
import org.apache.wicket.model.Model;
import org.apache.wicket.model.PropertyModel;
import org.apache.wicket.util.convert.IConverter;
import org.projectforge.Constants;
import org.projectforge.web.wicket.AbstractStandardForm;
import org.projectforge.web.wicket.WicketUtils;
import org.projectforge.web.wicket.bootstrap.GridSize;
import org.projectforge.web.wicket.components.LocalDateModel;
import org.projectforge.web.wicket.components.LocalDatePanel;
import org.projectforge.web.wicket.components.RequiredMinMaxNumberField;
import org.projectforge.web.wicket.components.SingleButtonPanel;
import org.projectforge.web.wicket.converter.CurrencyConverter;
import org.projectforge.web.wicket.flowlayout.FieldProperties;
import org.projectforge.web.wicket.flowlayout.FieldsetPanel;

import java.math.BigDecimal;
import java.time.LocalDate;

public class LiquidityForecastForm extends AbstractStandardForm<Object, LiquidityForecastPage> {
  private static final long serialVersionUID = -4518924991100703065L;

  private static final String USER_PREF_KEY_SETTINGS = LiquidityForecastSettings.class.getName();

  LiquidityForecastSettings settings;

  public LiquidityForecastForm(final LiquidityForecastPage parentPage) {
    super(parentPage);
  }

  @SuppressWarnings("serial")
  @Override
  protected void init() {
    super.init();
    gridBuilder.newSplitPanel(GridSize.COL33);
    {
      final FieldsetPanel fs = gridBuilder.newFieldset(getString("plugins.liquidityplanning.forecast.startAmount"));
      final RequiredMinMaxNumberField<BigDecimal> amount = new RequiredMinMaxNumberField<BigDecimal>(
          fs.getTextFieldId(),
          new PropertyModel<>(getSettings(), "startAmount"), Constants.TEN_BILLION_NEGATIVE,
          Constants.TEN_BILLION) {
        @SuppressWarnings({"rawtypes", "unchecked"})
        @Override
        public IConverter getConverter(final Class type) {
          return new CurrencyConverter();
        }
      };
      WicketUtils.setSize(amount, 8);
      fs.add(amount);
    }
    gridBuilder.newSplitPanel(GridSize.COL33);
    {
      final FieldsetPanel fs = gridBuilder.newFieldset(getString("plugins.liquidityplanning.forecast.baseDate"));
      final FieldProperties<LocalDate> props = getBaseDateProperties();
      LocalDatePanel baseDatePanel = new LocalDatePanel(fs.newChildId(), new LocalDateModel(props.getModel()));
      baseDatePanel.setRequired(false);
      fs.add(baseDatePanel);
      fs.addHelpIcon(getString("plugins.liquidityplanning.forecast.baseDate.tooltip"));
    }
    gridBuilder.newSplitPanel(GridSize.COL33);
    {
      final FieldsetPanel fs = gridBuilder.newFieldset(getString("plugins.liquidityplanning.forecast"))
          .setUnit(getString("days"));
      final RequiredMinMaxNumberField<Integer> nextDays = new RequiredMinMaxNumberField<>(fs.getTextFieldId(),
          new PropertyModel<>(getSettings(), "nextDays"), 3, LiquidityForecastSettings.MAX_FORECAST_DAYS);
      WicketUtils.setSize(nextDays, 4);
      fs.add(nextDays);
    }
    {
      final Button callButton = new Button(SingleButtonPanel.WICKET_ID, new Model<>("execute")) {
        @Override
        public final void onSubmit() {
          // parentPage.call();
        }
      };

История Git

868d6abb7 2025 -> 2026
63081666f Заголовки исходных файлов: 2024 -> 2025.
b6092df09 Авторские права 2023 -> 2024
ab45d51fa Авторские права 2001-2022 -> 2001-2023.
ef89f322f Константы (Const) рефакторинг.

868d6abb7

2025 -> 2026
868d6abb75cd191a892911ac8e45058932cf9074
diff --git a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
index 253ad2eda..cd6a367e5 100644
--- a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
+++ b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.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 is dual-licensed.
 //

63081666f

Заголовки исходных файлов: 2024 -> 2025.
63081666f620fb87315f01b817e560e0b2f6a33a
diff --git a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
index 407b2619c..253ad2eda 100644
--- a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
+++ b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.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 is dual-licensed.
 //

b6092df09

Авторские права 2023 -> 2024
b6092df0927c4a3b161e888445f31dcab57493f2
diff --git a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
index b14f1a363..407b2619c 100644
--- a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
+++ b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2023 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

ab45d51fa

Авторские права 2001-2022 -> 2001-2023.
ab45d51fa419ede6174b31d69987f96d4b841ff9
diff --git a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
index a0cd9468f..b14f1a363 100644
--- a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
+++ b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2022 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2023 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

ef89f322f

Константы (Const) рефакторинг.
ef89f322f239f5c47518f5b0a65a2d292ba64329
diff --git a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
index 017195ee7..a0cd9468f 100644
--- a/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
+++ b/plugins/org.projectforge.plugins.liquidityplanning/src/main/java/org/projectforge/plugins/liquidityplanning/LiquidityForecastForm.java
@@ -27,7 +27,7 @@ import org.apache.wicket.markup.html.form.Button;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.util.convert.IConverter;
-import org.projectforge.framework.utils.Constants;
+import org.projectforge.Constants;
 import org.projectforge.web.wicket.AbstractStandardForm;
 import org.projectforge.web.wicket.WicketUtils;
 import org.projectforge.web.wicket.bootstrap.GridSize;
@@ -42,23 +42,20 @@ import org.projectforge.web.wicket.flowlayout.FieldsetPanel;
 import java.math.BigDecimal;
 import java.time.LocalDate;
 
-public class LiquidityForecastForm extends AbstractStandardForm<Object, LiquidityForecastPage>
-{
+public class LiquidityForecastForm extends AbstractStandardForm<Object, LiquidityForecastPage> {
   private static final long serialVersionUID = -4518924991100703065L;
 
   private static final String USER_PREF_KEY_SETTINGS = LiquidityForecastSettings.class.getName();
 
   LiquidityForecastSettings settings;
 
-  public LiquidityForecastForm(final LiquidityForecastPage parentPage)
-  {
+  public LiquidityForecastForm(final LiquidityForecastPage parentPage) {
     super(parentPage);
   }
 
   @SuppressWarnings("serial")
   @Override
-  protected void init()
-  {
+  protected void init() {
     super.init();
     gridBuilder.newSplitPanel(GridSize.COL33);
     {
@@ -66,12 +63,10 @@ public class LiquidityForecastForm extends AbstractStandardForm<Object, Liquidit
       final RequiredMinMaxNumberField<BigDecimal> amount = new RequiredMinMaxNumberField<BigDecimal>(
           fs.getTextFieldId(),
           new PropertyModel<>(getSettings(), "startAmount"), Constants.TEN_BILLION_NEGATIVE,
-          Constants.TEN_BILLION)
-      {
-        @SuppressWarnings({ "rawtypes", "unchecked" })
+          Constants.TEN_BILLION) {
+        @SuppressWarnings({"rawtypes", "unchecked"})
         @Override
-        public IConverter getConverter(final Class type)
-        {
+        public IConverter getConverter(final Class type) {
           return new CurrencyConverter();
         }
       };
@@ -97,11 +92,9 @@ public class LiquidityForecastForm extends AbstractStandardForm<Object, Liquidit
       fs.add(nextDays);
     }