Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core Module und Plugins > agorum core client areas
Hinweis: Diese Dokumentation bezieht sich auf die aktuellste Version des Plugins agorum core client areas. Aktualisieren Sie das hier beschriebene Plugin, um die Dokumentation verwenden zu können.
Das Plugin agorum core client areas wird mit einer Bibliothek ausgeliefert, die für die Verwaltung von Mandanten verwendet wird. Diese Bibliothek bietet Funktionen zur Erstellung, Aktualisierung und Verwaltung von Mandanten und deren Benutzern.
Sie können mit agorum core client areas Mandanten in agorum core einrichten und dasselbe agorum core-System für Zugriffe von unterschiedlichen Einrichtungen oder Abteilungen benutzen. Die Benutzer und Daten der Mandanten werden dabei vollständig getrennt verwaltet. Mit der Tools-Bibliothek können Sie die Mandantenadministration automatisieren.
Binden Sie dazu die Bibliothek stets am Anfang eines Skripts ein:
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools');
Für die meisten Funktionen sind zwei Parameter erforderlich:
Parameter | Beschreibung | Pflicht | Standard |
---|---|---|---|
identifier | Definiert eine Kennung für den Mandantenbereich. Standardmäßig wird client-areas verwendet. Sie dürfen folgende Zeichen nicht verwenden: <, >, :, ", /, \, |, ?, * und Punkt am Ende. |
ja | client-areas |
number | Definiert die eindeutige Nummer des Mandanten. Sie dürfen folgende Zeichen nicht verwenden: <, >, :, ", /, \, |, ?, * und Punkt am Ende. Der Wert muss zwischen 1 und 8 Zeichen liegen. |
ja | - |
Die Funktion createArea erstellt einen neuen Mandanten.
Syntax
clientTools.createArea({
identifier: 'client-areas',
number: '123456',
name: 'client name',
});
Parameter
Zusätzlich zu den allgemeinen Parametern können Sie folgende Parameter angeben:
Parameter | Beschreibung | Pflicht | Standard |
---|---|---|---|
name | Der Name des Mandanten. | nein | - |
users | Eine Liste von Benutzerobjekten, die erstellt oder aktualisiert werden sollen. | nein | - |
addresses | Eine Liste von Adressobjekten, die erstellt oder aktualisiert werden sollen. | nein | - |
settings | Ein Objekt mit zusätzlichen Einstellungen. | nein | - |
Beispiel für das Anlegen eines neuen Mandanten mit Adressinformation und Benutzer
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools');
clientTools.createArea({
identifier: 'client-areas',
number: '99',
name: 'test client',
users: [
{
name: 'Max Mustermann',
password: 'agorum',
givenName: 'Max',
familyName: 'Mustermann',
emailaddress: 'max.mustermann@example.com',
language: 'de',
},
],
addresses: [
{
address_type: 'invoice',
company_name: 'agorum Software GmbH',
street: 'Vogelsangstr.',
house_number: '22',
zip: '73760',
city: 'Ostfildern',
country: 'de',
email: 'rechnung@agorum.com',
contact: 'Herr Ansprechpartner',
},
],
});
Beispiel für das Anlegen eines neuen Mandanten mit Adressinformation, Benutzer und zusätzlichen Einstellungen
Wenn Sie zusätzliche Einstellungen oder Benutzerfunktionen verwenden (siehe Mandantenverwaltung anpassen), können Sie die entsprechenden Informationen mit einem Aufruf nach folgendem Muster mitgeben:
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools');
clientTools.createArea({
identifier: 'client-areas',
number: '98',
name: 'test client',
users: [
{
name: 'Marion Musterfrau',
password: 'agorum',
givenName: 'Marion',
familyName: 'Musterfrau',
emailaddress: 'marion.musterfrau@example.com',
language: 'de',
features: ['feature1'],
},
],
settings: {
'agorum.client.areas.sampleClientSettings': {
sample_setting_1: 'Value 1',
sample_setting_2: 2,
},
},
addresses: [
{
address_type: 'invoice',
company_name: 'agorum Software GmbH',
street: 'Vogelsangstr.',
house_number: '22',
zip: '73760',
city: 'Ostfildern',
country: 'de',
email: 'rechnung@agorum.com',
contact: 'Herr Ansprechpartner',
settings: {
'agorum.client.areas.sampleAddressSettings': {
sample_setting_1: 'Value 1',
sample_setting_2: 2,
},
},
},
],
});
Rückgabewert
Wenn die angegebenen Daten nicht richtig sind, enthält die Rückgabe eine Fehlermeldung mit weiteren Informationen. Beispiel:
Error: User "Max Mustermann" already exists, please use another user name
Die Funktion modifyArea aktualisiert einen bestehenden Mandanten.
Der Aufruf entspricht ansonsten dem Aufruf von createArea.
Die Funktion deleteArea löscht einen Mandanten komplett, synchron mit allen Benutzern, Daten und Berechtigungen. Die Funktion ist erst beendet, wenn der Löschvorgang komplett abgeschlossen ist.
Achtung: Die Daten sind danach komplett gelöscht und können nicht wiederhergestellt werden.
Parameter
Siehe die allgemeinen Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); clientTools.deleteArea({ identifier: 'client-areas', number: '98', });
Die Funktion deleteAreaTask löscht einen Mandanten im Hintergrund, komplett, mit allen Benutzern, Daten und Berechtigungen. Die Funktion setzt das Löschen auch fort, wenn das System neu gestartet wird.
Achtung: Die Daten sind danach komplett gelöscht und können nicht wiederhergestellt werden.
Parameter
Siehe die allgemeinen Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); clientTools.deleteAreaTask({ identifier: 'client-areas', number: '98', });
Die Funktion listAreas fragt eine Liste aller vorhandenen Mandanten ab.
Parameter
Sie müssen für diese Funktion keine Parameter angeben.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); let clientList = clientTools.listAreas(); clientList;
Rückgabewert
Sie erhalten als Rückgabe ein Array mit Angaben zu den Mandaten nach folgendem Muster:
[ { "identifier" : "client-areas", "number" : "99", "name" : "test client" } ]
Die Funktion areaInfo fragt Informationen zu einem über die Mandantennummer angegebenen Mandanten ab.
Parameter
Siehe die allgemeinen Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); let info = clientTools.areaInfo({ identifier: 'client-areas', number: '99', }); info;
Rückgabewert
Sie erhalten ein Objekt mit Mandanteninformationen nach folgendem Muster zurück.
{ "identifier" : "client-areas", "number" : "99", "settings" : { "agorum.client.areas.sampleClientSettings" : { "sample_setting_1" : "Value 1", "sample_setting_2" : 2 } }, "addresses" : [ { "zip" : "73760", "country" : "de", "settings" : { }, "address_type" : "invoice", "city" : "Ostfildern", "street" : "Vogelsangstr.", "company_name" : "agorum Software GmbH", "contact" : "Herr Ansprechpartner", "house_number" : "22", "email" : "rechnung@agorum.com" } ], "name" : "test client" }
Die Funktion createUser erstellt einen Benutzer für einen Mandanten.
Zusätzlich zu den allgemeinen Parametern können Sie folgende Parameter angeben:
Parameter | Beschreibung | Pflicht | Standard |
---|---|---|---|
name | Definiert den eindeutigen Anmeldenamen des Benutzers. | Ja | - |
password | Definiert das Passwort des Benutzers. | Ja | - |
givenName | Vorname des Benutzers, mit dem der Benutzer in agorum core angezeigt wird. | Ja | - |
familyName | Nachname des Benutzers, mit dem der Benutzer in agorum core angezeigt wird. | Ja | - |
emailaddress | Definiert die E-Mail-Adresse des Benutzers. | Ja | - |
language | Definiert die initiale Sprachauswahl für den Benutzer. | nein | de (Systemstandard) |
readOnlyMode | Boolescher Wert, der angibt, ob der Benutzer nur Lesezugriff hat. | nein | false |
features | Möglichkeit zum Aktivieren optionaler Funktionen, siehe Zusätzliche Benutzerfunktionen aktivierbar machen. | nein | - |
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); clientTools.createUser({ identifier: 'client-areas', number: '99', name: 'user', password: 'agorum', givenName: 'User', familyName: 'FamilyName', emailaddress: 'user.FamilyName@agorum.com', language: 'de', readOnlyMode: 'false', features: ['feature1', 'feature2'], });
Rückgabewert
Wenn die angegebenen Daten nicht richtig sind, enthält die Rückgabe eine Fehlermeldung mit weiteren Informationen. Beispiel:
Error: User "Max Mustermann" already exists, please use another user name
Die Funktion modifyUser ändert die Daten eines vorhandenen Mandantenbenutzers.
Parameter
Siehe createUser-Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); clientTools.modifyUser('user.1', { identifier: 'client-areas', number: '123456', name: 'user.2', password: 'agorum', givenName: 'User', familyName: 'Two', emailaddress: 'user.2@agorum.com', language: 'de', });
Rückgabewert
Wenn die angegebenen Daten nicht richtig sind, enthält die Rückgabe eine Fehlermeldung mit weiteren Informationen. Beispiel:
Error: User not found: user.1
Die Funktion lockUser sperrt einen vorhandenen Mandantenbenutzer.
Parameter
Zusätzlich zum Benutzernamen siehe die allgemeinen Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); clientTools.lockUser('user.2', { identifier: 'client-areas', number: '123456', });
Rückgabewert
Wenn die angegebenen Daten nicht richtig sind, enthält die Rückgabe eine Fehlermeldung mit weiteren Informationen. Beispiel:
Error: User "user.1" not found.
Parameter
Zusätzlich zum Benutzernamen siehe die allgemeinen Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); clientTools.unlockUser('user.2', { identifier: 'client-areas', number: '123456', });
Rückgabewert
Wenn die angegebenen Daten nicht richtig sind, enthält die Rückgabe eine Fehlermeldung mit weiteren Informationen. Beispiel:
Error: User "user.1" not found.
Die Funktion listUsers fragt eine Liste aller Benutzer eines Mandanten ab.
Parameter
Siehe die allgemeinen Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); let users = clientTools.listUsers({ identifier: 'client-areas', number: '123456', }); users;
Rückgabewert
Die Funktion liefert ein Array von Benutzernamen zurück. Beispiel:
[ "user.2" ]
Die Funktion userInfo liest die Detailinformationen eines Benutzers und gibt diese zurück.
Parameter
Sie benötigen nur den Benutzernamen.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); let userInfo = clientTools.userInfo('user.2'); userInfo;
Rückgabewert
Sie erhalten als Rückgabe ein Objekt mit den Benutzerinformationen. Beispiel:
{ "features" : [ "feature1", "feature2" ], "clientIdentifier" : "client-areas", "givenName" : "User", "familyName" : "Two", "name" : "user.2", "emailaddress" : "user.2@agorum.com", "language" : "de", "clientNumber" : "123456", "locked" : false, "readOnlyMode" : false }
Die Funktion availableFeatures fragt eine Liste aller konfigurierten Benutzerfunktionen ab, siehe Zusätzliche Benutzerfunktionen aktivierbar machen.
Parameter
Sie benötigen keine Parameter.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); let features = clientTools.availableFeatures(); features;
Rückgabewert
Die Funktion liefert ein Array von Benutzerfunktionen zurück. Beispiel:
[ { "displayName" : "Client Administrator", "name" : "agorum.client.areas.admin", "description" : "This feature allows the user to manage users within their client." }, { "displayName" : "Weitere Einstellungen", "name" : "agorum.client.areas.clientExtraSettings", "description" : "Zugriff auf Weitere Einstellungen zulassen." } ]
Die Funktion saveSettings speichert zusätzliche Mandanteneinstellungen, vorausgesetzt Sie verwenden Zusatzeinstellungen.
Parameter
Siehe die allgemeinen Parameter. Die zusätzlichen Mandanteneinstellungen sind abhängig von Ihrer Konfiguration, siehe Mandanteneinstellungen.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); clientTools.saveSettings( // definition of the client { identifier: 'client-areas', number: '123456', }, // name of the settings to save, as defined in handler 'agorum.client.areas.sampleClientSettings', // the values that should be saved { sample_setting_1: 'Value 1', sample_setting_2: 2, } );
Die Funktion loadSettings fragt die zusätzlichen Mandanteneinstellungen ab, vorausgesetzt Sie verwenden Zusatzeinstellungen.
Parameter
Siehe die allgemeinen Parameter. Der Name der Zusatzeinstellungen ist abhängig von Ihrer Konfiguration, siehe Mandanteneinstellungen.
Beispiel
let clientTools = require('/agorum/roi/customers/agorum.client.areas/js/lib/tools'); let settings = clientTools.loadSettings( // definition of the client { identifier: 'client-areas', number: '123456', }, // name of the settings to load, as defined in handler 'agorum.client.areas.sampleClientSettings' ); settings;
Rückgabewert
Die Funktion liefert eine Liste der Benutzerfunktionen zurück. Beispiel:
{ "sample_setting_1" : "Value 1", "sample_setting_2" : 2 }