diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java index c55b6f2..6c17903 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java @@ -62,16 +62,22 @@ public class OPListController implements Serializable { protected DocumentService documentService; /** - * Diese Methode liefert die Rechnungen zur gegebenen dbtrNumber. Die Methode - * nutzt einen lokalen cache um die Zugriffe zu beschleunigen. + * Diese Methode wird für Zahlungseingänge und Mahnläufe verwendet. *
- * Befindet sich der Zahlungseingang in Erstellung (Task=1000) werden alle - * offenen Rechnungen geholt. Zusätzlich werden auch alle diese Rechnungen - * vorselektiert (Anforderung von Mary Mwangi). D.h. man muss ggf. Rechnungen - * manuell delselktieren wenn man diese nicht im Mahnlauf haben will. + * Die Metho liefert die Rechnungen zur gegebenen dbtrNumber. Die Methode nutzt + * einen lokalen cache um die Zugriffe zu beschleunigen. *
- * Befindet sich der Zahlungseingang nicht mehr in erstellung werden nur die + * Befindet sich ein Zahlungseingang in Erstellung (Task=1000) werden alle + * offenen Rechnungen geholt. + *
+ * Befindet sich ein Zahlungseingang nicht mehr in erstellung werden nur die * Rechnugnen aus $workitemRef geholt! + *
+ * Bei verwendung im Mahnlauf werden zusätzlich auch alle diese Rechnungen
+ * vorselektiert (Anforderung von Mary Mwangi). D.h. es werden alle Checkboxen
+ * in der Maske 'selection_opliste_Mahnluaf' angewählt. D.h auch man muss ggf.
+ * Rechnungen manuell delselktieren wenn man diese nicht im Mahnlauf haben will.
+ *
*
* @param _dbtrNumber
* @return
@@ -114,16 +120,32 @@ public class OPListController implements Serializable {
} catch (QueryException e) {
logger.severe("Failed to get op liste:" + e.getMessage());
}
- // wir selektieren hier alle fälligen Rechnungen vor, falls der Mahnlauf gerade
- // erstellt
- // wird.
+
+ // Zahlugnseingang?
+ if (workflowController.getWorkitem().getModelVersion().startsWith("zahlungseingang")) {
+ // berechnung des Basisumsatzes bei Fremdwährungen
+ for (ItemCollection invoice : invoiceList) {
+ float rate=invoice.getItemValueFloat("invoice.rate");
+ float maxSaldo=invoice.getItemValueFloat("invoice.saldo");
+ if (rate!=0) {
+ maxSaldo=maxSaldo/rate;
+ invoice.setItemValue("invoice.saldo.byrate",maxSaldo);
+ }
+
+ }
+
+ }
+
+ // Mahnlauf ?
if (workflowController.getWorkitem().getModelVersion().startsWith("mahnlauf")) {
+ // wir selektieren hier alle fälligen Rechnungen vor, falls der Mahnlauf gerade
+ // erstellt wird.
if (workflowController.getWorkitem().getItemValueInteger("$version") == 0
|| (workflowController.getWorkitem().getItemValueInteger("$version") == 1
&& workflowController.getWorkitem().getItemValueInteger("$lastevent") == 100)) {
List