Kettős Védelem (Double-Shield) Organization Assignment for Assets #257

Closed
opened 2026-06-12 03:35:12 +02:00 by kincses · 2 comments
Owner

Mérföldkő: Backend & Frontend Integráció
Cél: B2C járművek létrehozásakor a owner_org_id soha ne kerüljön NULL értékkel az adatbázisba. Kétvédelmes architektúra: frontend Silent injekció + backend Iron Door fallback.

🔗 Függőségek (Dependencies)

  • Bemenet (Mikre támaszkodik): Database (fleet.organization_members), Auth Store (authStore.user.active_organization_id)
  • Kimenet (Mik támaszkodnak rá): AssetService.create_or_claim_vehicle(), VehicleFormModal.vue

📝 Elemzés

A Double-Shield architektúra két rétegben védi a NULL org_id-t:

  1. Frontend: VehicleFormModal.vue handleSave()-ben authStore-ból olvassa a felhasználó default organization-jét és csendesen csatolja a payloadhoz
  2. Backend: assets.py create_or_claim_vehicle végpontban 3-szintű fallback: payload.org_id → scope_id → organization_members tábla lekérdezése
  3. AssetCreate schema organization_id mezője már Optional[int] = Field(None) volt, nem kellett módosítani
**Mérföldkő:** Backend & Frontend Integráció **Cél:** B2C járművek létrehozásakor a owner_org_id soha ne kerüljön NULL értékkel az adatbázisba. Kétvédelmes architektúra: frontend Silent injekció + backend Iron Door fallback. ### 🔗 Függőségek (Dependencies) - **Bemenet (Mikre támaszkodik):** Database (fleet.organization_members), Auth Store (authStore.user.active_organization_id) - **Kimenet (Mik támaszkodnak rá):** AssetService.create_or_claim_vehicle(), VehicleFormModal.vue ### 📝 Elemzés A Double-Shield architektúra két rétegben védi a NULL org_id-t: 1. Frontend: VehicleFormModal.vue handleSave()-ben authStore-ból olvassa a felhasználó default organization-jét és csendesen csatolja a payloadhoz 2. Backend: assets.py create_or_claim_vehicle végpontban 3-szintű fallback: payload.org_id → scope_id → organization_members tábla lekérdezése 3. AssetCreate schema organization_id mezője már Optional[int] = Field(None) volt, nem kellett módosítani
kincses added the Type: FeatureStatus: In Progress labels 2026-06-12 03:35:19 +02:00
kincses started working 2026-06-12 03:35:19 +02:00
Author
Owner

▶️ Munka megkezdve: 2026-06-12 03:35:19

▶️ **Munka megkezdve:** 2026-06-12 03:35:19
kincses added Status: Done and removed Status: In Progress labels 2026-06-12 03:35:27 +02:00
kincses worked for 8 seconds 2026-06-12 03:35:27 +02:00
Author
Owner

Munka befejezve: 2026-06-12 03:35:27

Technikai Összefoglaló:
Implementáltuk a Kettős Védelem (Double-Shield) architektúrát a B2C járművek organization assignment-jéhez. Backend: assets.py 3-szintű org_id fallback (payload → scope_id → organization_members). Frontend: VehicleFormModal.vue silent org_id injekció authStore-ból. AssetCreate schema már opcionális organization_id-val rendelkezett. Verifikáció: backend syntax , sync_engine 1026/1026

⏱️ Az idő rögzítve.

✅ **Munka befejezve:** 2026-06-12 03:35:27 **Technikai Összefoglaló:** Implementáltuk a Kettős Védelem (Double-Shield) architektúrát a B2C járművek organization assignment-jéhez. Backend: assets.py 3-szintű org_id fallback (payload → scope_id → organization_members). Frontend: VehicleFormModal.vue silent org_id injekció authStore-ból. AssetCreate schema már opcionális organization_id-val rendelkezett. Verifikáció: backend syntax ✅, sync_engine 1026/1026 ✅ ⏱️ *Az idő rögzítve.*
Sign in to join this conversation.