[BUG] Quick-add provider cégek megjelennek a Cégeim menüben; státusz és tulajdonos probléma #266
Notifications
Total Time Spent: 15 minutes
kincses
15 minutes
No due date set.
Dependencies
No dependencies set.
Reference: kincses/service-finder#266
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Mérföldkő: Szolgáltató Rendszer Javítások
Cél: A gyors szolgáltató felvételnél (quick-add provider) létrejövő szervezetek hibásan jelennek meg a felhasználó Cégeim menüjében, nincs megfelelő tulajdonosuk, és a státuszuk eltér a vártól.
🔗 Függőségek (Dependencies)
📝 Elemzés
Három összefonódó hiba:
Cégeim menüben való megjelenés: A GET /organizations/my endpoint (organizations.py:183-186) minden szervezetet visszaad, ahol a user tag az OrganizationMember táblában. Nincs org_type szűrés. A frontend HeaderCompanySwitcher.vue (142-146. sor) csak az 'individual' típust szűri ki, a 'service_provider' típusú szervezeteket nem. Így a quick-add providerrel létrehozott service_provider típusú szervezetek a user Cégeim listájában jelennek meg.
Tulajdonos probléma: A quick_add_provider() beállítja az owner_id=user_id-t (541. sor) és létrehoz OrganizationMember-et OWNER szerepkörrel (638-646. sor). Azonban a GET /my endpoint response-ában (193-206. sor) NINCS visszaadva az owner_id mező. Emellett a legal_owner_id (Person rekordra mutató FK) nincs beállítva.
Státusz probléma: A kód explicit beállítja a status='pending_verification'-t (528. sor), de az Organization modellben (99. sor) nincs server_default a status mezőre. Vizsgálandó, hogy az adatbázisban mi a default érték.
🛠️ Javítási javaslat
▶️ Munka megkezdve: 2026-06-17 21:26:05
✅ Munka befejezve: 2026-06-17 21:28:56
Technikai Összefoglaló:
Bug investigation completed. Found 3 root causes: 1) GET /organizations/my endpoint has no org_type filter - returns all orgs where user is member 2) HeaderCompanySwitcher.vue only filters out 'individual' type, not 'service_provider' 3) quick_add_provider() creates OrganizationMember with OWNER role. Fix proposal saved in plans/logic_spec_provider_cegeim_bugfix.md
⏱️ Az idő rögzítve.
✅ Munka befejezve: 2026-06-17 21:45:29
Technikai Összefoglaló:
Javítás v2: A GET /my endpoint org_type szűrése whitelist-ről (in_) blacklist-re (notin_) változott. Korábban csak business, fleet_owner, individual típusok voltak láthatóak, ami kizárta a valódi cégeket (pl. club). Most csak a service_provider és service típusok vannak kiszűrve, minden más megjelenik a Cégeim menüben.
⏱️ Az idő rögzítve.
▶️ Munka megkezdve: 2026-06-17 22:02:11
✅ Munka befejezve: 2026-06-17 22:15:01
Technikai Összefoglaló:
Backend es frontend javitas: A GET /api/v1/organizations/my endpoint most mar a OrganizationMember.role-t is lekerdezi, es a service_provider/service tipusu orgokat CSAK akkor szuri ki, ha a user role NEM OWNER. A valaszban user_role mezo is szerepel. Frontenden a HeaderCompanySwitcher.vue es az OrganizationItem tipus is frissitve. API teszt sikeres: admin user 4 orgot lat (1 individual + 3 service_provider OWNER).
⏱️ Az idő rögzítve.
✅ Munka befejezve: 2026-06-17 22:24:59
Technikai Összefoglaló:
Root cause fix: quick_add_provider crowdsourcingból felvett szolgáltatóknál owner_id=None és role=ADMIN (nem OWNER). Backend/frontend szűrés visszaállítva: service_provider/service típusú org-ok kizárva a Cégeim listából. A meglévő adatok (org #57, #58, #62 owner_id=2, role=OWNER) a régi kóddal jöttek létre, az új kód már helyesen hozza létre az új provider-eket.
⏱️ Az idő rögzítve.
✅ Munka befejezve: 2026-06-17 23:40:28
Technikai Összefoglaló:
P0 Garage Selector fix + Team Management API implementálva. Javítások: (1) GET /organizations/my DISTINCT hiba javítva subquery approach-pal (JSON oszlopok miatt). (2) MissingGreenlet hiba javítva selectinload hozzáadásával. (3) OrgUserRole enum szinkronizálva DB-vel (OWNER,ADMIN,MANAGER,MEMBER,AGENT). (4) invited_email és expires_at oszlopok hozzáadva OrganizationMember-hez. (5) 4 új Team Management API végpont: GET/POST/PATCH/DELETE members/invitations. (6) display_name→email javítás. Mind a 5 API teszt sikeresen lefutott.
⏱️ Az idő rögzítve.