This commit is contained in:
Ralph Soika 2022-11-01 12:01:10 +01:00
parent da9f4c7c0e
commit 15e0d86fb7
2 changed files with 214 additions and 201 deletions

View file

@ -66,7 +66,9 @@ public class OPListController implements Serializable {
* nutzt einen lokalen cache um die Zugriffe zu beschleunigen. * nutzt einen lokalen cache um die Zugriffe zu beschleunigen.
* <p> * <p>
* Befindet sich der Zahlungseingang in Erstellung (Task=1000) werden alle * Befindet sich der Zahlungseingang in Erstellung (Task=1000) werden alle
* offenen Rechnungen geholt * 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.
* <p> * <p>
* Befindet sich der Zahlungseingang nicht mehr in erstellung werden nur die * Befindet sich der Zahlungseingang nicht mehr in erstellung werden nur die
* Rechnugnen aus $workitemRef geholt! * Rechnugnen aus $workitemRef geholt!
@ -92,7 +94,6 @@ public class OPListController implements Serializable {
} }
// load new invoice list.... // load new invoice list....
lastDbtrNumber = _dbtrNumber; lastDbtrNumber = _dbtrNumber;
invoiceList = new ArrayList<ItemCollection>(); invoiceList = new ArrayList<ItemCollection>();
logger.info("....loading open Invoices for " + _dbtrNumber); logger.info("....loading open Invoices for " + _dbtrNumber);
@ -113,6 +114,18 @@ public class OPListController implements Serializable {
} catch (QueryException e) { } catch (QueryException e) {
logger.severe("Failed to get op liste:" + e.getMessage()); logger.severe("Failed to get op liste:" + e.getMessage());
} }
// wir selektieren hier alle 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<String> intialSelection = new ArrayList<String>();
for (ItemCollection invoice : invoiceList) {
intialSelection.add(invoice.getUniqueID());
}
workflowController.getWorkitem().setItemValue("$workitemref", intialSelection);
}
} else { } else {
// We are no longer in TASK_ERSTELLUNG, so // We are no longer in TASK_ERSTELLUNG, so
@ -279,16 +292,16 @@ public class OPListController implements Serializable {
} }
/** /**
* Returns true if the reminder date is today or in the past * Returns true if the reminder date is today or in the past
*
* @param uniqueid * @param uniqueid
* @return * @return
*/ */
public boolean isInDue(String uniqueid) { public boolean isInDue(String uniqueid) {
ItemCollection invoice=workflowService.getWorkItem(uniqueid); ItemCollection invoice = workflowService.getWorkItem(uniqueid);
LocalDate date = invoice.getItemValueLocalDate("invoice.reminder"); LocalDate date = invoice.getItemValueLocalDate("invoice.reminder");
return date.compareTo(LocalDate.now())<=0; return date.compareTo(LocalDate.now()) <= 0;
} }
} }

View file

@ -282,7 +282,7 @@ th { font-weight: bold;}
<imixs:value><![CDATA[]]></imixs:value> <imixs:value><![CDATA[]]></imixs:value>
</imixs:item> </imixs:item>
<imixs:item name="txtactivityresult" type="xs:string"> <imixs:item name="txtactivityresult" type="xs:string">
<imixs:value><![CDATA[<item name="comment" ignore="true"/>]]></imixs:value> <imixs:value><![CDATA[]]></imixs:value>
</imixs:item> </imixs:item>
<imixs:item name="txtname" type="xs:string"> <imixs:item name="txtname" type="xs:string">
<imixs:value><![CDATA[Speichern]]></imixs:value> <imixs:value><![CDATA[Speichern]]></imixs:value>
@ -291,7 +291,7 @@ th { font-weight: bold;}
<imixs:value><![CDATA[0]]></imixs:value> <imixs:value><![CDATA[0]]></imixs:value>
</imixs:item> </imixs:item>
<imixs:item name="rtfresultlog" type="xs:string"> <imixs:item name="rtfresultlog" type="xs:string">
<imixs:value><![CDATA[]]></imixs:value> <imixs:value><![CDATA[Mahnlauf aktualisiert.]]></imixs:value>
</imixs:item> </imixs:item>
<imixs:item name="keyupdateacl" type="xs:boolean"> <imixs:item name="keyupdateacl" type="xs:boolean">
<imixs:value>false</imixs:value> <imixs:value>false</imixs:value>