Der Endpunkt zum Herausnehmen aus der Vermittlung und seine Wirkungen

Parameter und Rechte des Endpunkts brokerend, die Abschlussmethode des Vertragsmodells mit Filter nach Grund, der Datenraum-Abgleich, die Benachrichtigung der Makler und die Protokollierung.

Der Endpunkt masterdata/property.brokerend (Recht masterdata/property + brokerend, BASE) schließt aus der Immobilienliste die aktiven Vermittlungszeilen aller Verträge über die öffentliche Methode des Vertragsmodells; die Immobilie selbst hat kein eigenes Vermittlungsstatusfeld.

Ablauf

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

  1. POST: property_id, reason (sold_by_other, rented_by_other, withdrawn), date. Ohne Recht error_permission; unbekannte Immobilie: error_warning. Bei ungültigem Datum nimmt das Modell den heutigen Tag.
  2. contract/contract::endPropertyBrokerages() schließt die aktiven Zeilen in contract_property (state = 'ended', end_reason, date_ended): bei Verkauf und Rückzug alle aktiven Zeilen, bei Vermietung nur Zeilen mit deal_type = 'rent' (eine Zeile sale_rent bleibt). Gab es keine: „This property has no active brokerage of the chosen kind.“
  3. Für jeden betroffenen Vertrag Dlbtroomaccess::syncContract(): Der Ordner ist ab dem Beendigungstag nicht sichtbar.
  4. Dlbtroomaccess::notifyEnded(): Systemnachricht an die Makler (Vorlagenereignis room_property_withdrawn); Mailfehler kommen in warning zurück.
  5. Protokoll: ein dlbtlog-Infoeintrag. Erfolg: Zahl der geschlossenen Zeilen und Verträge sowie der gesendeten Nachrichten.

Oberfläche

Im ⋮-Menü der Liste erscheint der Punkt nur mit brokerend und bei aktiver Vermittlungszeile (countActiveBrokerages() größer null). Das Fenster (#modal-bkend, modal-fullscreen-md-down) bietet Gründe als Schaltflächen und ein Datumsfeld (min 1900-01-01, max 9999-12-31); der Fokus liegt auf dem Datum.

Beziehung zum Vertrag

Der vertragsseitige gemeinsame Abschluss (closerow) behandelt ein über den Makler zustande gekommenes Geschäft; das immobilienseitige Herausnehmen behandelt Verkauf oder Vermietung durch Dritte und den Rückzug. Beide nutzen denselben Status in contract_property und denselben Datenraum-Abgleich.