diff --git a/src/de/jost_net/JVerein/Variable/MitgliedMap.java b/src/de/jost_net/JVerein/Variable/MitgliedMap.java index 7ee9d0d12..a69f1fd6f 100644 --- a/src/de/jost_net/JVerein/Variable/MitgliedMap.java +++ b/src/de/jost_net/JVerein/Variable/MitgliedMap.java @@ -180,8 +180,15 @@ public Map getMap(Mitglied m, Map inma, VarTools.maskieren(m.getIban())); map.put(MitgliedVar.IBAN.getName(), m.getIban()); map.put(MitgliedVar.ID.getName(), m.getID()); + if (m.getIndividuellerBeitrag() != null) + { map.put(MitgliedVar.INDIVIDUELLERBEITRAG.getName(), Einstellungen.DECIMALFORMAT.format(m.getIndividuellerBeitrag())); + } + else + { + map.put(MitgliedVar.INDIVIDUELLERBEITRAG.getName(), null); + } map.put(MitgliedVar.BANKNAME.getName(), getBankname(m)); map.put(MitgliedVar.KONTOINHABER_ADRESSIERUNGSZUSATZ.getName(), m.getKtoiAdressierungszusatz()); diff --git a/src/de/jost_net/JVerein/gui/action/PersonalbogenAction.java b/src/de/jost_net/JVerein/gui/action/PersonalbogenAction.java index 3d3fc9419..1c18421d9 100644 --- a/src/de/jost_net/JVerein/gui/action/PersonalbogenAction.java +++ b/src/de/jost_net/JVerein/gui/action/PersonalbogenAction.java @@ -310,7 +310,7 @@ private void generiereMitglied(Reporter rpt, Mitglied m) if (Einstellungen.getEinstellung().getIndividuelleBeitraege()) { rpt.addColumn("Individueller Beitrag", Element.ALIGN_LEFT); - if (m.getIndividuellerBeitrag() > 0) + if (m.getIndividuellerBeitrag() != null) { rpt.addColumn( Einstellungen.DECIMALFORMAT.format(m.getIndividuellerBeitrag()) diff --git a/src/de/jost_net/JVerein/gui/control/MitgliedControl.java b/src/de/jost_net/JVerein/gui/control/MitgliedControl.java index 712f0f6e4..364b3412e 100644 --- a/src/de/jost_net/JVerein/gui/control/MitgliedControl.java +++ b/src/de/jost_net/JVerein/gui/control/MitgliedControl.java @@ -1193,7 +1193,7 @@ public DecimalInput getIndividuellerBeitrag() throws RemoteException } individuellerbeitrag = new DecimalInput( getMitglied().getIndividuellerBeitrag(), Einstellungen.DECIMALFORMAT); - individuellerbeitrag.setName("individueller Beitrag"); + individuellerbeitrag.setName("Individueller Beitrag"); return individuellerbeitrag; } diff --git a/src/de/jost_net/JVerein/io/AbrechnungSEPA.java b/src/de/jost_net/JVerein/io/AbrechnungSEPA.java index 16bcaeb97..5aa265fd5 100644 --- a/src/de/jost_net/JVerein/io/AbrechnungSEPA.java +++ b/src/de/jost_net/JVerein/io/AbrechnungSEPA.java @@ -71,7 +71,6 @@ import de.jost_net.OBanToo.SEPA.Basislastschrift.Zahler; import de.jost_net.OBanToo.StringLatin.Zeichen; import de.willuhn.datasource.rmi.DBIterator; -import de.willuhn.datasource.rmi.DBObject; import de.willuhn.jameica.gui.GUI; import de.willuhn.jameica.gui.internal.action.Program; import de.willuhn.jameica.hbci.HBCIProperties; @@ -413,7 +412,7 @@ private JVereinZahler abrechnungMitgliederSub(AbrechnungSEPAParam param, Progres if (primaer) { if (Einstellungen.getEinstellung().getIndividuelleBeitraege() - && m.getIndividuellerBeitrag() > 0) + && m.getIndividuellerBeitrag() != null) { betr = m.getIndividuellerBeitrag(); } diff --git a/src/de/jost_net/JVerein/server/DDLTool/Updates/Update0442.java b/src/de/jost_net/JVerein/server/DDLTool/Updates/Update0442.java new file mode 100644 index 000000000..627dd9391 --- /dev/null +++ b/src/de/jost_net/JVerein/server/DDLTool/Updates/Update0442.java @@ -0,0 +1,34 @@ +/********************************************************************** + * This program is free software: you can redistribute it and/or modify it under the terms of the + * GNU General Public License as published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + * even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See + * the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along with this program. If not, + * see . + * + **********************************************************************/ +package de.jost_net.JVerein.server.DDLTool.Updates; + +import de.jost_net.JVerein.server.DDLTool.AbstractDDLUpdate; +import de.willuhn.util.ApplicationException; +import de.willuhn.util.ProgressMonitor; + +import java.sql.Connection; + +public class Update0442 extends AbstractDDLUpdate +{ + public Update0442(String driver, ProgressMonitor monitor, Connection conn) + { + super(driver, monitor, conn); + } + + @Override + public void run() throws ApplicationException + { + execute("update mitglied set individuellerbeitrag = NULL where individuellerbeitrag <= 0"); + } +} diff --git a/src/de/jost_net/JVerein/server/MitgliedImpl.java b/src/de/jost_net/JVerein/server/MitgliedImpl.java index 3be8bfdfb..0e62ce8f0 100644 --- a/src/de/jost_net/JVerein/server/MitgliedImpl.java +++ b/src/de/jost_net/JVerein/server/MitgliedImpl.java @@ -287,6 +287,12 @@ && getZahlerID() == null) { throw new ApplicationException("Bitte Zahler auswählen!"); } + + // Individueller Beitrag darf nicht kleiner als 0 sein + if (getIndividuellerBeitrag() != null && getIndividuellerBeitrag() < 0) + { + throw new ApplicationException("Individueller Beitrag darf nicht negativ sein!"); + } } /*** @@ -1047,12 +1053,7 @@ public void setBeitragsgruppe(Integer beitragsgruppe) throws RemoteException @Override public Double getIndividuellerBeitrag() throws RemoteException { - Double d = (Double) getAttribute("individuellerbeitrag"); - if (d == null) - { - return Double.valueOf(0); - } - return d; + return (Double) getAttribute("individuellerbeitrag"); } @Override