Zum Hauptinhalt springen

Produkty

Ogólny model produktu wygląda następująco:


Głównym modelem jest Product. Każdy Product może zawierać wiele MarketplaceProduct powiązanych z konkretnym marketplace. Produkty mogą być grupowane razem w modelu BaseProduct.

Model produktu bazowego (grupy) wygląda tak:


Modele

Product

Product określa wariant produktu bazowego (najczęściej zawierający się w BaseProduct). Jest to główne miejsce danych produktu w systemie i są one kluczowe dla wielu funkcji wewnętrznych. Ze względu na ograniczenie miejsca zajmowanego przez te dane część z nich jest współdzielona z platformami sprzedażowymi (np. zdjęcia lub tytuły i opisy).

Znaczna większość operacji na wybranym produkcie opiera się właśnie o ten model lub jest od niego zależna.

Każdy z produktów powinien posiadać unikalny, jednoznacznie opisujący dany produkt kod SKU. Zasady tworzenia poprawnych kodów SKU dostępne są pod tym linkiem: SKU Guidelines - 4mybaby

BaseProduct

Model BaseProduct (produkt bazowy) jest grupą tego samego rodzaju produktów. Zawiera w sobie wiele modeli Product, które są wariantami danego produktu. Służy głównie do grupowania produktów do wykonywania na nich działań masowych oraz do rozpoznawania produktów grupowanych na marketplace.

info

W późniejszym etapie aplikacji będzie to model do wykonywania działań na wielu produktach na raz (np. zmiana cen / opisów itp.), jednak na wczesnym etapie jeszcze nie daje zbyt wielu możliwości.

Przykładowe połączenie SKU:

  • BaseProduct: KARO-K14-TRINITY-PARENT
  • Product: KARO-K14-TRINITY-140x200-TRQ-LAE
  • Product: KARO-K14-TRINITY-160x200-BLK-L
  • Product: KARO-K14-TRINITy-200x200-PNK

Marketplace Product

MarketplaceProduct reprezentuje stan produktu na połączonym z nim marketplace (np. amazon_de / amazon_fr / otto_de). Zawiera informacje zmienne względem marketplace takie jak ceny, aktywne promocje czy stan magazynowy (dostępność produktu na marketplace, nie w magazynie). Synchronizacja danych z marketplace odbywa się na tym poziomie.

info

Zmiany wprowadzane na MarketplaceProduct zazwyczaj nie mają wpływu na Product. W związku z tym nie powinno się zmieniać kluczowych informacji o produkcie na modelu MarketplaceProduct.

Identyfikatorem tego modelu jest marketplace_reference, który jest niezmienialny i jednoznacznie określa produkt na wybranym marketplace. Zależy zatem od sposobu komunikacji aplikacji z API marketplace. Przykładowo: dla Amazon będzie to ASIN, dla Otto SKU a dla Ebay - id produktu w ebay.

Zależności i wzajemny wpływ modeli

Akcje wykonywane na wybranych modelach produktowych mogą mieć wpływ na inne modele. W zależności od akcji wpływ może się różnić, jednak zwykle zachowany będzie porządek kolejności: BaseProduct -> Product -> MarketplaceProduct.

BaseProduct może wpływać bezpośrednio na połączone z nim modele Product.

Product może wpływać bezpośrednio na połączone z nim modele MarketplaceProduct.

MarketplaceProduct może wpływać pośrednio na korespondujący Product.

Analogicznie BaseProduct może wpływać na pośrednio powiązane poprzez Product modele MarketplaceProduct. Przykładem może być podniesienie ceny na BaseProduct o 5% - cena wszystkich MarketplaceProduct zostanie podniesiona o 5% (przykład zakłada przyszłościowy wpływ i zarządzanie z poziomu grupy produktów).


Widoki

Widok produktu