neue KReditorenverwaltung mit IBAN BIC unerstützung

This commit is contained in:
Ralph Soika 2022-05-11 16:20:59 +02:00
parent 6364d3facb
commit eee7a96913
6 changed files with 70 additions and 17 deletions

View file

@ -1,5 +1,10 @@
# Versionen
### 1.2.6 (Development)
Übernahme von IBAN BIC aus kreditoren verwaltung
### 1.1.1
- Cargosoft Splitbuchungen - Es können zu einer Rechnung mehrere Cargosoft Exporte erzeugt werden. Die Sub Rechnungsnummern stehen im Feld numsequencenumber_sub

View file

@ -5,7 +5,7 @@
<parent>
<artifactId>office-alexander-logistics</artifactId>
<groupId>com.alexander-logistics</groupId>
<version>1.2.5</version>
<version>1.2.6</version>
</parent>
<artifactId>office-alexander-logistics-app</artifactId>
<packaging>war</packaging>

View file

@ -90,16 +90,15 @@ public class CargosoftController implements Serializable {
if (result != null) {
for (ItemCollection cdtr : result) {
String cdtrNo = cdtr.getItemValueString("_VENDOR_NUM");
// Aenderugn 22. Jun wir geben das K/D direkt witer
// if (cdtrNo.startsWith("K")) {
// wir entfernen das führende K
// cdtrNo=cdtrNo.substring(1);
// }
searchResult.add(cdtrNo + " - " + cdtr.getItemValueString("_VENDOR_Name") + " - "
+ cdtr.getItemValueString("cdtr.creditperiod"));
// logger.finest("...add: " + cdtr.getItemValueString("_VENDOR_NUM") + " -
// "+cdtr.getItemValueString("_VENDOR_Name"));
String cdtrNo = cdtr.getItemValueString("_VENDOR_NUM");
String data=cdtrNo + " - " + cdtr.getItemValueString("_VENDOR_Name");
// Aenderung 11. Mai - wir geben nun creditperiod iban und bic mit | Zeichen getrennt weieter
data=data + " |"+cdtr.getItemValueString("cdtr.creditperiod");
data=data + "|"+cdtr.getItemValueString("cdtr.iban");
data=data + "|"+cdtr.getItemValueString("cdtr.bic");
searchResult.add(data);
}
}
} catch (QueryException e) {
@ -131,11 +130,16 @@ public class CargosoftController implements Serializable {
this.kreditor = kreditor;
}
/**
* Diese Method überträgt die geänderten Daten in das Kreidtoren Objekt (cdtr.creditperiod,cdtr.iban,cdtr.bic)
*/
public void updateZahlungsziel() {
String cdtrNumber = kreditor.getItemValueString("cdtr.number");
String period = kreditor.getItemValueString("cdtr.creditperiod");
logger.info("Zahlungsziel = " + cdtrNumber + " / " + period);
String iban = kreditor.getItemValueString("cdtr.iban");
String bic = kreditor.getItemValueString("cdtr.bic");
logger.fine("Zahlungsziel = " + cdtrNumber + " / " + period);
// search workitem
String query = "(type:" + TYPE_CARGOSOFTKREDITOR + ") AND (name:" + cdtrNumber + ")";
@ -145,10 +149,16 @@ public class CargosoftController implements Serializable {
result = documentService.find(query, 1, 0);
if (result.size() == 1) {
ItemCollection cargoCreditor = result.get(0);
cargoCreditor.setItemValue("cdtr.creditperiod", Integer.parseInt(period));
try {
cargoCreditor.setItemValue("cdtr.creditperiod", Integer.parseInt(period));
} catch (NumberFormatException nfe) {
// no op
}
cargoCreditor.setItemValue("cdtr.iban", iban);
cargoCreditor.setItemValue("cdtr.bic", bic);
documentService.save(cargoCreditor);
}
} catch (QueryException | NumberFormatException e) {
} catch (QueryException e) {
logger.severe("Unable to find cargosoft kreditor "+e.getMessage());
}

View file

@ -60,6 +60,28 @@
</dl>
</h:panelGroup>
<div class="imixs-form-section-2">
<dl>
<dt>IBAN:</dt>
<dd>
<h:inputText
value="#{cargosoftController.kreditor.item['cdtr.iban']}" pt:data-item="cdtr.iban" />
</dd>
</dl>
<dl>
<dt>BIC:</dt>
<dd>
<h:inputText
value="#{cargosoftController.kreditor.item['cdtr.bic']}" pt:data-item="cdtr.bic" />
</dd>
</dl>
</div>
</div>

View file

@ -53,20 +53,29 @@
function selectCdtrCallback(selection) {
// extract the number between start and ' - '
var cdtrNo=selection.substring(0,selection.indexOf(' - '));
var cdtrName=selection.substring(selection.indexOf(' - ')+3);
var cdtrName=selection.substring(selection.indexOf(' - ')+3,selection.indexOf('|') );
var inputElement=$("input[data-item='cdtr.number']");
inputElement.val(cdtrNo);
inputElement.val(cdtrNo);
// remove old cdtr.name
$('#cdtr-name-id').remove();
// append span with cdtr.name....
inputElement.after( "<span id='cdtr-name-id' class='small'>" + cdtrName + "</p>" );
// Data format
// K00000 - Kreditorenname |3|00000IBAN|000BIC
// zahlungsziel
var cdtrPaymentPeriod=selection.substring(selection.lastIndexOf(' - ')+3);
var paramsData=selection.substring(selection.indexOf('|')+1);
var params=paramsData.split('|');
var cdtrPaymentPeriod=params[0];
var cdtrIBAN=params[1];
var cdtrBIC=params[2];
var inputElementZahlungsziel=$("input[data-item='cdtr.creditperiod']");
var inputElementZahlungszielCdtr=$("input[id$='cdtr_creditperiod']");
var inputElementInvoiceDate=$("input[id$='date_invoice']");
var inputElementIban=$("input[data-item='cdtr.iban']");
var inputElementBic=$("input[data-item='cdtr.bic']");
if (inputElementZahlungszielCdtr && cdtrPaymentPeriod!='') {
inputElementZahlungszielCdtr.val(cdtrPaymentPeriod);
}
@ -78,6 +87,13 @@
$("input[data-item='invoice.number']").focus().select();
}
// update iban/bic
if (inputElementIban && cdtrIBAN!='') {
inputElementIban.val(cdtrIBAN);
}
if (inputElementBic && cdtrBIC!='') {
inputElementBic.val(cdtrBIC);
}
}
/*]]>*/

View file

@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.alexander-logistics</groupId>
<artifactId>office-alexander-logistics</artifactId>
<version>1.2.5</version>
<version>1.2.6</version>
<packaging>pom</packaging>
<name>Imixs Office Workflow - Custom Build</name>