Skip to content

Commit

Permalink
Code optimierung (#285)
Browse files Browse the repository at this point in the history
* Zwischenstand

* Auch freie Formulare
  • Loading branch information
JohannMaierhofer authored Aug 9, 2024
1 parent de1638c commit 8572874
Show file tree
Hide file tree
Showing 7 changed files with 270 additions and 463 deletions.
34 changes: 5 additions & 29 deletions src/de/jost_net/JVerein/gui/action/MailVorlageZuweisenAction.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,7 @@
package de.jost_net.JVerein.gui.action;

import de.jost_net.JVerein.gui.control.MailVorlageControl;
import de.jost_net.JVerein.gui.control.MitgliedskontoControl;
import de.jost_net.JVerein.gui.control.SpendenbescheinigungControl;
import de.jost_net.JVerein.gui.control.PreNotificationControl;
import de.jost_net.JVerein.gui.control.FreieFormulareControl;
import de.jost_net.JVerein.gui.control.DruckMailControl;
import de.jost_net.JVerein.gui.control.MailControl;
import de.jost_net.JVerein.gui.dialogs.MailVorlagenAuswahlDialog;
import de.jost_net.JVerein.rmi.MailVorlage;
Expand All @@ -39,11 +36,8 @@ public void handleAction(Object context) throws ApplicationException
try
{
if (context != null &&
(context instanceof MitgliedskontoControl ||
context instanceof SpendenbescheinigungControl ||
context instanceof PreNotificationControl ||
context instanceof MailControl ||
context instanceof FreieFormulareControl))
(context instanceof DruckMailControl ||
context instanceof MailControl))
{
MailVorlagenAuswahlDialog mvad = new MailVorlagenAuswahlDialog(
new MailVorlageControl(null),
Expand All @@ -52,36 +46,18 @@ public void handleAction(Object context) throws ApplicationException
MailVorlage mv = mvad.open();
if (!mvad.getAbort() && mv != null)
{
if (context instanceof MitgliedskontoControl)
if (context instanceof DruckMailControl)
{
MitgliedskontoControl kto = (MitgliedskontoControl) context;
DruckMailControl kto = (DruckMailControl) context;
kto.getBetreff().setValue(mv.getBetreff());
kto.getTxt().setValue(mv.getTxt());
}
else if (context instanceof SpendenbescheinigungControl)
{
SpendenbescheinigungControl kto = (SpendenbescheinigungControl) context;
kto.getBetreff().setValue(mv.getBetreff());
kto.getTxt().setValue(mv.getTxt());
}
else if (context instanceof PreNotificationControl)
{
PreNotificationControl kto = (PreNotificationControl) context;
kto.getMailSubject().setValue(mv.getBetreff());
kto.getMailBody().setValue(mv.getTxt());
}
else if (context instanceof MailControl)
{
MailControl kto = (MailControl) context;
kto.getBetreff().setValue(mv.getBetreff());
kto.getTxt().setValue(mv.getTxt());
}
else if (context instanceof FreieFormulareControl)
{
FreieFormulareControl kto = (FreieFormulareControl) context;
kto.getBetreff().setValue(mv.getBetreff());
kto.getTxt().setValue(mv.getTxt());
}
}
}
else
Expand Down
230 changes: 230 additions & 0 deletions src/de/jost_net/JVerein/gui/control/DruckMailControl.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,230 @@
package de.jost_net.JVerein.gui.control;

import java.rmi.RemoteException;

import de.jost_net.JVerein.gui.input.FormularInput;
import de.jost_net.JVerein.keys.Ausgabeart;
import de.jost_net.JVerein.keys.Ausgabesortierung;
import de.jost_net.JVerein.keys.FormularArt;
import de.willuhn.jameica.gui.AbstractView;
import de.willuhn.jameica.gui.input.SelectInput;
import de.willuhn.jameica.gui.input.TextAreaInput;
import de.willuhn.jameica.gui.input.TextInput;

public class DruckMailControl extends FilterControl
{
public DruckMailControl(AbstractView view)
{
super(view);
}

public static final String EMAIL = "EMail";

public static final String PDF1 = "PDF (Lastschriften ohne Mailadresse)";

public static final String PDF2 = "PDF (Alle)";

public static final String NICHT_EINZELN = "Eine PDF-Datei";

public static final String EINZELN_NUMMERIERT = "Einzelne PDF-Dateien, nummeriert";

public static final String EINZELN_MITGLIEDSNUMMER = "Einzelne PDF-Dateien, mit Mitgliedsnummer";

public static final String EINZELN_NUMMERIERT_UND_MNR = "Einzelne PDF-Dateien, nummeriert mit Mitgliedsnummer";

protected TextAreaInput info = null;

protected FormularInput formular = null;

protected SelectInput ausgabeart = null;

protected SelectInput ausgabesortierung = null;

protected SelectInput art = null;

protected SelectInput adressblatt = null;

protected SelectInput output = null;

protected SelectInput pdfModus = null;

protected TextInput mailbetreff = null;

protected TextAreaInput mailtext = null;


public String getInfoText(Object selection)
{
return "";
}

public TextAreaInput getInfo() throws RemoteException
{
if (info != null)
{
return info;
}
info = new TextAreaInput(getInfoText(getCurrentObject()), 10000);
info.setHeight(100);
info.setEnabled(false);
return info;
}

public FormularInput getFormular(FormularArt formulartyp)
throws RemoteException
{
if (formular != null)
{
return formular;
}
formular = new FormularInput(formulartyp);
return formular;
}

public SelectInput getAusgabeart()
{
if (ausgabeart != null)
{
return ausgabeart;
}
ausgabeart = new SelectInput(Ausgabeart.values(),
Ausgabeart.valueOf(settings.getString(settingsprefix + "ausgabeart", "DRUCK")));
ausgabeart.setName("Ausgabe");
return ausgabeart;
}

public SelectInput getAusgabesortierung()
{
if (ausgabesortierung != null)
{
return ausgabesortierung;
}
ausgabesortierung = new SelectInput(Ausgabesortierung.values(),
Ausgabesortierung.getByKey(settings.getInt(settingsprefix + "ausgabesortierung", 1)));
ausgabesortierung.setName("Sortierung");
return ausgabesortierung;
}

public SelectInput getArt()
{
if (art != null)
{
return art;
}
art = new SelectInput(
new String[] { "Standard", "Individuell" },
settings.getString(settingsprefix + "art", "Standard"));
art.setName("Ausgabeart");
return art;
}

public SelectInput getAdressblatt()
{
if (adressblatt != null)
{
return adressblatt;
}
adressblatt = new SelectInput(
new String[] { "Ohne", "Mit" },
settings.getString(settingsprefix + "adressblatt", "Ohne"));
adressblatt.setName("Adressblatt");
return adressblatt;
}

public SelectInput getOutput()
{
if (output != null)
{
return output;
}
Object[] values = new Object[] { EMAIL, PDF1, PDF2 };
output = new SelectInput(values, settings.getString("output", PDF1));
output.setName("Ausgabe");
return output;
}

public SelectInput getPdfModus()
{
if (pdfModus != null)
{
return pdfModus;
}
Object[] values = new Object[] { NICHT_EINZELN, EINZELN_NUMMERIERT,
EINZELN_MITGLIEDSNUMMER, EINZELN_NUMMERIERT_UND_MNR };
pdfModus = new SelectInput(values,
settings.getString("pdfModus", NICHT_EINZELN));
pdfModus.setName("PDF als");
return pdfModus;
}

public TextInput getBetreff()
{
if (mailbetreff != null)
{
return mailbetreff;
}
mailbetreff = new TextInput(settings.
getString(settingsprefix + "mail.betreff", ""), 100);
mailbetreff.setName("Betreff");
return mailbetreff;
}

public TextAreaInput getTxt()
{
if (mailtext != null)
{
return mailtext;
}
mailtext = new TextAreaInput(settings.
getString(settingsprefix + "mail.text", ""), 10000);
mailtext.setName("Text");
return mailtext;
}

protected void saveDruckMailSettings() throws RemoteException
{
if (ausgabeart != null )
{
Ausgabeart aa = (Ausgabeart) getAusgabeart().getValue();
settings.setAttribute(settingsprefix + "ausgabeart", aa.toString());
}
if (art != null)
{
String ar = (String) getArt().getValue();
settings.setAttribute(settingsprefix + "art", ar);
}
if (adressblatt != null)
{
String ab = (String) getAdressblatt().getValue();
settings.setAttribute(settingsprefix + "adressblatt", ab);
}
if (ausgabesortierung != null)
{
Ausgabesortierung as = (Ausgabesortierung) getAusgabesortierung()
.getValue();
settings.setAttribute(settingsprefix + "ausgabesortierung", as.getKey());
}
if (output != null)
{
String val = (String) getOutput().getValue();
settings.setAttribute(settingsprefix + "output", val);
}
if (pdfModus != null)
{
String pdfMode = (String) getPdfModus().getValue();;
settings.setAttribute(settingsprefix + "pdfModus", pdfMode);
}
if (mailbetreff != null)
{
settings.setAttribute(settingsprefix + "mail.betreff",
(String) getBetreff().getValue());
}
if (mailtext != null)
{
settings.setAttribute(settingsprefix + "mail.text",
(String) getTxt().getValue());
}
saveFilterSettings();
}

}
Loading

0 comments on commit 8572874

Please sign in to comment.