Master Data: Explicit deduplikáció (Márka + Technikai kód + Jármű típus) #29
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ő: Epic 5: Master Data Management & Robot Ecosystem\nCél: Deduplikációs szolgáltatás implementálása a márka, technikai kód és jármű típus alapján az adatbázis constraint-eken túl, integrálva a mapping_rules.py és mapping_dictionary.py fájlokat.\n\n### 🔗 Függőségek (Dependencies)\n- Bemenet (Mikre támaszkodik): és táblák, SQLAlchemy ORM, mapping_rules.py (normalizációs szabályok), mapping_dictionary.py (szinonimák)\n- Kimenet (Mik támaszkodnak rá): Robot 3 (Alchemist Pro) arany katalógusba mentés, adatintegritás, manuális adatbeviteli felületek\n\n### 📝 Elemzés\nA jelenlegi deduplikáció kizárólag az adatbázis szintű UNIQUE constraint-ekre támaszkodik (). Ez nem minden esetben elégséges, mert nem kezeli az olyan eseteket, amikor a technikai kód vagy a jármű típus eltérő formátumban van megadva (pl. '1.8 TSI' vs '1.8TSI'). Javasolt megoldás: létrehozni egy -t, amely a beszúrás előtt explicit ellenőrzi a redundanciákat a 'make', 'technical_code' (pl. motor kód) és 'vehicle_class' mezők alapján, normalizált formában. A service logikája integrálható a TechEnricher robotba és a manuális adatbeviteli felületekbe is. A normalizációhoz használja a mapping_rules.py szabályait és a mapping_dictionary.py szinonimáit.
✅ Munka befejezve: 2026-03-12 01:51:06
Technikai Összefoglaló:
Technikai összefoglaló: Létrehoztam a DeduplicationService-t (backend/app/services/deduplication_service.py), amely a 'make + technical_code + vehicle_class' hármas alapján ellenőrzi a duplikátumokat. A szolgáltatás integrálja a mapping_rules.py SOURCE_MAPPINGS szabályait és beépített szinonimákat használ a normalizáláshoz. Főbb funkciók: find_duplicate, ensure_no_duplicate, deduplicate_and_merge. A service kezeli az üres és ismeretlen értékeket (N/A, UNKNOWN), és támogatja a különböző adatforrásokból származó technikai kódok normalizálását. A szolgáltatás készen áll integrációra a TechEnricher robotba a beszúrás előtti duplikátum ellenőrzéshez.
⏱️ A ráfordított időt a Gitea rögzítette.