Correct export of Delivery Unit EON_XSJSFRAMEWORK (36 files, replaces incomplete initial export)

This commit is contained in:
Thorsten Schmitz
2026-07-09 02:02:07 +02:00
parent 997ad1c8f6
commit e5d9482cf1
35 changed files with 3067 additions and 918 deletions
+23 -23
View File
@@ -1,4 +1,4 @@
var slib = $.import("uniorg.ServiceLayer", "B1SLLogic");
var slib = $.import("uniorg.ServiceLayer", "B1SLLogic");
var slDest = $.import("uniorg.destinations", "uodestlib");
var copybplib = $.import("uniorg.eon.libs", "copybp");
var dateTimeLib = $.import("uniorg.libs", "datetime");
@@ -27,23 +27,23 @@ var cmpprivate_b2m = "cCompany";
var service_version = '5.2';
// 03.11.2020 U_ORDER_ID (262)
// last changes: 31.03.2020 eoperate Felder
// Mapping Verträge 19.05.2020
// Mapping Verträge 19.05.2020
// Mapping evdriver undefined 12.08.2020
//17.08.2020 Parameter können nun auch ohne evdriver gesnedet werden.
//16.09.2020 Erweiterung Aktivierungsgebühr
//Mazda 6 monatige RabattGebühr
//19.01.2021 duplicatebp lib Implementierung bei BFV Verträgen
//17.08.2020 Parameter können nun auch ohne evdriver gesnedet werden.
//16.09.2020 Erweiterung Aktivierungsgebühr
//Mazda 6 monatige RabattGebühr
//19.01.2021 duplicatebp lib Implementierung bei BFV Verträgen
//06.10.2021 GP_DISCOUNT_MONTH
//22.11.2021 Factor für BFV Verträge in Price Kollektion implementiert
//29.11.2022 EMPEPI1-145: Erweiterung Contract SST/ Prüfung alte Projektnummern
//23.06.2023 EMPEPI1-277: Validierungsprüfung BV ohne Chargepoint Parameter / Paramater ohne valid_from
//18.09.2023 EMPEPI1-316: zeitl. Abgrenzung für AG Flag
//22.11.2021 Factor für BFV Verträge in Price Kollektion implementiert
//29.11.2022 EMPEPI1-145: Erweiterung Contract SST/ Prüfung alte Projektnummern
//23.06.2023 EMPEPI1-277: Validierungsprüfung BV ohne Chargepoint Parameter / Paramater ohne valid_from
//18.09.2023 EMPEPI1-316: zeitl. Abgrenzung für AG Flag
//15.12.2023 EMPEPI1-327: Fehlerbehandlung bei leerem valid_from in prices
//05.03.2024 EMPEPI1-347: BMW: PO-No. Zeitscheibensystem
//19.07.2024 BUS-7346: Error message for contract transmission to B1
//19.07.2024 BUS-7579: BMW-CCA-Abrechnung eoperate_valid_to < eoperate_valid_from
//01.08.2024 Implementierung Rechnungsadresse
//13.12.2024 BUS-9963: Bestellnummern am E.ON-Vertrag "einfach" überschreiben
//13.12.2024 BUS-9963: Bestellnummern am E.ON-Vertrag "einfach" überschreiben
//11.02.2025 BUS-10922: RFID_CARD ohne Text1 und Text2 ablehnen
var debugLevel = 0;
@@ -97,7 +97,7 @@ function convertToISODate(dateString) {
function getProductId(prodID) {
/* switch (prodID) {
case "E.ON Drive Business ohne Grundgebühr":
case "E.ON Drive Business ohne Grundgebühr":
prodID='E.ON Drive Business Comfort';
break;
@@ -368,7 +368,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
}
// Sonderpreise für Rabattmonate
// Sonderpreise für Rabattmonate
prodComponentsGP_DISCOUNT_MONTH.concat(prodComponentsTP_DISCOUNT_MONTH).forEach(function(pc) {
if (SBOOBJ.EON_CONTRACT_PRICECollection === undefined || SBOOBJ.EON_CONTRACT_PRICECollection.findIndex(function(x) {
return x.U_ITEM === pc.U_ITEM;
@@ -385,7 +385,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
}
});
// Sonderpreise für kostenfreie Monate BFV BFV_BILLING
// Sonderpreise für kostenfreie Monate BFV BFV_BILLING
if (InObj.costfree_months && InObj.costfree_months > 0) {
prodComponentsBFV_BILLING.forEach(function(pc) {
var connection = $.hdb.getConnection();
@@ -412,7 +412,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
}
});
}
// bestehenden Sonderpreis entfernen, falls kostenfreie Monate auf 0 geändert werden
// bestehenden Sonderpreis entfernen, falls kostenfreie Monate auf 0 geändert werden
if (InObj.hasOwnProperty('costfree_months') && InObj.costfree_months === 0 && UDOObj.EON_CONTRACT_PRICECollection.length > 0) {
prodComponentsBFV_BILLING.forEach(function(pc) {
for (var x = UDOObj.EON_CONTRACT_PRICECollection.length - 1; x >= 0; x--) {
@@ -424,7 +424,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
});
}
//Suche ob Objekte vorhanden wenn nicht ergänzen
//Suche ob Objekte vorhanden wenn nicht ergänzen
for (var h in InObj.prices) {
var myfound = false;
@@ -492,7 +492,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
}
//Suche ob Objekte vorhanden wenn nicht ergänzen
//Suche ob Objekte vorhanden wenn nicht ergänzen
for (var h in InObj.ev_drivers) {
var myfound = false;
@@ -599,7 +599,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
UDOObj.EON_CONTRACT_PARAMCollection.push(myParam2);
}
// neue Aktivierungsgebühr hinzufügen
// neue Aktivierungsgebühr hinzufügen
if (prodComponentsAG.length > 0 && (SBOOBJ.EON_CONTRACT_PARAMCollection === undefined || SBOOBJ.EON_CONTRACT_PARAMCollection.findIndex(
function(x) {
return x.U_COMPONENT === "AG";
@@ -614,7 +614,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
});
}
// neue Rabattmonate hinzufügen
// neue Rabattmonate hinzufügen
prodComponentsTP_DISCOUNT_MONTH.forEach(function(pc) {
if (SBOOBJ.EON_CONTRACT_PARAMCollection === undefined || SBOOBJ.EON_CONTRACT_PARAMCollection.findIndex(function(x) {
return x.U_COMPONENT === pc.U_DATA_TEXT;
@@ -633,7 +633,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
}
});
// neue Grundpreis Rabattmonate hinzufügen
// neue Grundpreis Rabattmonate hinzufügen
prodComponentsGP_DISCOUNT_MONTH.forEach(function(pc) {
if (SBOOBJ.EON_CONTRACT_PARAMCollection === undefined || SBOOBJ.EON_CONTRACT_PARAMCollection.findIndex(function(x) {
return x.U_COMPONENT === pc.U_DATA_TEXT;
@@ -652,7 +652,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
}
});
// neue Parameter aus ev_drivers.parameters hinzufügen
// neue Parameter aus ev_drivers.parameters hinzufügen
for (var h in InObj.ev_drivers) {
for (var k in InObj.ev_drivers[h].parameters) {
var myfound2 = false;
@@ -684,7 +684,7 @@ function buildContractObj(InObj, SBOOBJ, billingMode) {
}
}
}
// neue Parameter aus Kopfebene hinzufügen
// neue Parameter aus Kopfebene hinzufügen
for (var k in InObj.parameters) {
var myfound3 = false;
for (var l in SBOOBJ.EON_CONTRACT_PARAMCollection) {
@@ -1317,4 +1317,4 @@ if (!req){
//updBP(JSON.stringify(bpObj));
//GetOrders(req);
}
*/
*/