3.4 KiB
DATA-MODEL — Known Issues
Companion to
README.md. TopicDMODEL, prefixFBANKAPP→ entry IDsFBANKAPP-DMODEL-I-<RAND>(issue) /-B-(bug). ID format, Status vocabulary, type codes, archival →../../../.github/TOPIC_CODES.md(→ framework registry).
Scope: a FruitBank entitások adatmodell-normalizálási teendői (nopCommerce referencia-FK-k, azonosító-szétválasztások).
Active entries
FBANKAPP-DMODEL-I-K3D9: A Partner-entitások nopCommerce referencia-mezői szabad string-ek, FK helyett
Status: Open · Priority: P3 · Type: I (adatmodell / normalizálás)
A PartnerBase (és így Partner / CargoPartner) + a CargoTruck a nopCommerce referencia-adatait szabad string-ként tárolja, ahelyett hogy a megfelelő nopCommerce tábla Id-jára FK-zna:
| Mező | Jelenlegi | Helyes (hosszú táv) |
|---|---|---|
CountryCode (string) |
szabad szöveg (pl. "HU") |
nopCommerce Country.Id FK; a megjelenített kód a Country.TwoLetterIsoCode-ból — PartnerBase + CargoTruck |
Currency (string) |
szabad szöveg (pl. "EUR") |
nopCommerce Currency.Id FK; a megjelenített kód a Currency.CurrencyCode-ból — PartnerBase |
Hatás: működik (a string-eket kézzel töltjük), de nincs hivatkozás-integritás, és a kódok elgépelhetők / inkonzisztensek lehetnek. Az EKÁER-leképezés a string pontosságára támaszkodik (seller/destination/vehicle Country, és a value→HUF deviza forrás-pénzneme).
Javítási irány: FK-oszlop (CountryId, CurrencyId) + navigation a nopCommerce táblákra; a megjelenített/exportált kód a referencia-entitásból.
Affected:
FruitBank.Common/Entities/PartnerBase.cs→CountryCode,CurrencyFruitBank.Common/Entities/CargoTruck.cs→CountryCode- felhasználó:
FruitBank.Common/Services/Ekaer/ShippingToEkaerMapper.cs(a*Country+ a deviza-konverzió pontossága)
FBANKAPP-DMODEL-I-P6X4: A Product.Gtin átmenetileg a VTSZ-t tárolja — szétválasztandó
Status: Open · Priority: P3 · Type: I (adatmodell / átmeneti megoldás)
Supersedes
MGFBANKPLUG-EKAER-I-T3X8— áthelyezve az EKÁER-topicból ide, mert a GTIN/VTSZ szétválasztás általános adatmodell-kérdés (a GTIN globális termékazonosító, a VTSZ vámtarifaszám), nem EKÁER-specifikus.
Az EKÁER tradeCardItem.productVtsz (kötelező, 8 jegyű vámtarifaszám) forrása jelenleg a nopCommerce Product.Gtin oszlop (a ProductDto.Gtin-en keresztül). A GTIN és a VTSZ fogalmilag különböző:
- GTIN — globális kereskedelmi cikkszám (vonalkód-azonosító, EAN/UPC).
- VTSZ — vámtarifaszám (a termék vám-/statisztikai besorolása).
Egy termékhez a kettő nem azonos; a Gtin oszlop VTSZ-ként való használata átmeneti megoldás az EKÁER-integráció beindításához.
Hatás: jelenleg nincs üzemszerű gond (a Gtin mező szabad, és a VTSZ-t tölthetjük bele). Hosszú távon viszont, ha a valódi GTIN-re is szükség lesz, a kettő ütközik.
Javítási irány: külön Vtsz mező/GenericAttribute a Product-on, és a ShippingToEkaerMapper onnan olvasson — a Gtin maradjon a valódi GTIN.
Affected:
FruitBank.Common/Dtos/ProductDto.cs→Gtinproperty (a[Column(nameof(Product.Gtin))]jelöléssel, summary-ban megjelölve)FruitBank.Common/Services/Ekaer/ShippingToEkaerMapper.cs→ aproductVtszforrása