Partner anlegen und Datenblatt – Systembeschreibung

Die Schritte beim Speichern eines Partners: Prüfung, Kontingent, Mandantenzuordnung, Personen und Unterzeichner, Steuerbehörden- und Integrationsdaten, Bankkonten; die Kachel-Endpunkte.

Anlegen und Ändern eines Partners laufen über einen Speicher-Endpunkt; die Kacheln (Adresse, Bankkonto, Person, Speicherregel) nutzen eigene AJAX-Endpunkte. Das Speichern leitet nicht weiter und liefert die neue ID.

Datenmodell

Die Tabellennamen tragen in der Datenbank das eigene Präfix der Installation.

TabelleRolle
companyPartner
permission_scopeInhaltsrecht des Anlegenden
subscription_accountHeimmandant des Benutzers
person_companyPersonen, Rolle, Unterzeichnerkennzeichen
navtechnischer Benutzer und Schlüssel der Steuerbehörde
user_api_key, company_authQUiCK-API-Schlüssel
foxpostFoxPost-Konto
company_bankaccount, bankaccountBankkonten
company_objstorageSpeicherregel je Objekttyp (local / gdrive / onedrive)

Speicherschritte

  1. Recht: canSave(company, id) – bei 0 add (ohne add-Zeile entscheidet edit), bei bestehenden edit und companyInScope().
  2. Prüfung: Name 1–255; exakte Dublettenprüfung auf den 8-stelligen Steuernummernstamm (getCompanyIdByTaxhu8); statistische Nummer leer oder 17 Ziffern.
  3. Kontingent bei neuem Partner: Dlbtquota::checkAction(user, company, add); need_credit/need_plan liefert Fehler mit Angebotsdaten. addCompany(), Inhaltsrecht für den Anlegenden (grantCompanyScopeToCreator); mit Heimmandant kommt das neue Unternehmen zu dessen Abonnementinhaber (assignToOwner), sonst wird es Heimmandant (attachUserToClient); nach erfolgreichem Speichern Kontingentverbrauch (consumeAction).
  4. Personen (mit masterdata/person edit): nur Hinzufügen; Rollen, dann der gesamte Unterzeichnerkreis in einem Schritt (setCompanySignatories).
  5. Mit navapi: Steuerbehördenzeile (Löschen + Neuschreiben, nur mit technischem Benutzer), QUiCK-API-Schlüssel (leer = unverändert, mit eigenem Kennzeichen löschbar), FoxPost-Konto.
  6. Bankkonten: saveCompanyBankaccounts, normalisiert. Datenbankfehler als DB: ….

Formular-Endpunkte

  • checkduplicate (edit): exakter Steuernummernstamm; Name: aktives Unternehmen gleichen Namens, nur Warnung.
  • autocomplete (list), companygroup (list, bereichsgefiltert), companygroupadd (edit).
  • addresslist / addresssave / addressdelete (list / edit, Bereich; Prüfung von Postleitzahl und Land).
  • bankidentify (edit): Normalisierung und Bankermittlung (GIRO / openiban); bankaccounts (list); syncAddresses, syncBankaccounts (edit).
  • persontile (list + Personen-list; bearbeitbar mit Personen-edit); statements (Auszugsdokumente, max. 50).
  • objstoragelist / objstoragesave / objstoragedelete (edit + Bereich); die alten Drive- und lokalen Ordnerrouten leiten nur an die kanonischen Speicher-Endpunkte der Dokumentenzentrale weiter.

Berechtigungen

Funktionsrechte: add (nicht im Katalog; Kopfschaltfläche), edit, navapi; verwandt: masterdata/person edit, mail/notify list, document/document list. taxpayerupdate prüft den Bereich nicht.

Related topics: Partner Abonnement Bankkonto