Backend: social_service.py hardcoded XP javítása dinamikus pontszabály lookup-ra #361
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ő: Service Provider Discovery & Gamification Integration
Cél: A social_service.py create_service_provider() metódusában lévő hardcoded 50 XP kicserélése dinamikus _award_provider_points(action_key='ADD_NEW_PROVIDER') hívásra, valamint a RATE_PROVIDER pontszabály bekötése a vote_for_provider() metódusba.
🔗 Függőségek (Dependencies)
📝 Elemzés
Két javítás szükséges:
create_service_provider() (26. sor):
vote_for_provider() (31. sor):
Hivatkozás: docs/gamification_provider_connection_analysis.md (6.3, 6.4 szekció)
✅ Munka befejezve: 2026-06-30 14:55:36
Technikai Összefoglaló:
Backend: social_service.py hardcoded XP javítva. create_service_provider(): hardcoded 50 XP → dinamikus _award_provider_points('ADD_NEW_PROVIDER') (500 pont). vote_for_provider(): RATE_PROVIDER (250 pont) bekötve sikeres szavazat után. Sync engine: 1292 OK. Point rules verifikálva: ADD_NEW_PROVIDER=500, RATE_PROVIDER=250 aktív.
⏱️ Az idő rögzítve.
✅ #361 - Backend: social_service.py hardcoded XP javítása — KÉSZ
Végrehajtott módosítások
Módosított fájl:
backend/app/services/social_service.py1.
create_service_provider()— 26. sorgamification_service.process_activity(db, user_id, 50, 10, f"New Provider: {new_provider.name}")— hardcoded 50 XP_award_provider_points(db, user_id, "ADD_NEW_PROVIDER")— dinamikus lookup agamification.point_rulestáblából → 500 pont2.
vote_for_provider()— 57. sor_award_provider_points(db, voter_id, "RATE_PROVIDER")— sikeres szavazat után → 250 pontEllenőrzési eredmények
social_serviceimport_award_provider_pointsimportADD_NEW_PROVIDERpontszabályRATE_PROVIDERpontszabályArchitektúra
A pontok NINCSENEK beégetve a kódba. Mindkét action_key (
ADD_NEW_PROVIDER,RATE_PROVIDER) agamification.point_rulestáblából olvasódik ki futásidőben aprovider_service.py-ben lévő_award_provider_points()függvényen keresztül, amely agamification_service.award_points()-t hívja meg. Az admin felületről bármikor módosíthatók.