Skip to content

Karty podarunkowe - API #120

Description

@eengine-sync

OPIS FUNKCJONALNOŚCi: https://trello.com/c/SCy57tyC/616-issue-75-karty-podarunkowe

W opisie tej karty należy dodać zakres realizacji i opis techniczny zadania dla API-Perseids wg https://docs.google.com/document/d/1zoTCkr7flnjO0sw-8gpWINYIDZDNSQiLuroINPHZObw/edit?usp=sharing


Opis rozwiązania

Zakup karty podarunkowej

  • Krok 1. W Mongo karta podarunkowa istnieje jako zwyczajny produkt.
  • Krok 2. Gdy karta podarunkowa znajduje się w zamówieniu to nie może być rabatowana kuponami i jej wartość nie może liczyć się do darmowej wysyłki - niezależnie od innych obecnych w zamówieniu produktów.
  • Krok 3. Gdy klient składa zamówienie na kartę podarunkową API automatycznie generuje w Mongo, w kolekcji xx_xxx_giftcards (gdzie xx_xx to przedrostek od języka i waluty, jak w produktac) kod o odpowiedniej wartości, a następnie dodaje go do komentarza w zamówieniu, aby po wyeksportowaniu do Magento mógł być widoczny dla obsługi.

Do zrobienia:

  1. Przy tworzeniu zamówienia warunkowe uwzględnianie produktów w naliczaniu rabatów i darmowych wysyłek na podstawie obecnych w Mongo flag.
  2. Funkcja generująca automatycznie Giftcardy po złożeniu zamówienia na kartę podarunkową
  3. Funkcja dodająca kod wygenerowanego Giftcarda do komentarza w zamówieniu
  4. Model Giftcard pozwalający zapisywać automatycznie generowane karty podarunkowe w Mongo
  5. Dodanie nowego rodzaju wysyłki (np. "dostawa przez e-mail") dla kart podarunkowych

Płacenie przy użyciu karty podarunkowej

  • Krok 1. Karty podarunkowe mogą się dowolnie łączyć z kodami rabatowymi. Przy czym zawsze najpierw naliczany jest rabat jeśli istnieje, a dopiero potem odejmowana wartość z karty podarunkowej (ustalić z Kubą jak to wygląda w Magento)
  • Krok 2. Karta podarunkowa obniża o swoją wartość kwotę wynikającą z sumy wszystkich produktów w zamówieniu nie będących kartami podarunkowymi + kosztów wysyłki.
  • Krok 3. Podczas zapisywania zamówienia API przelicza odpowiednio sumę aby klient został przekierowany do PayU / PayPal z odpowiednią kwotą (lub nie został przekierowany w ogóle jeśli nic nie płaci) oraz dodaje wartość karty podarunkowej w pole gitfcard_code, aby Magento zrobiło z nim co trzeba.

** Do zrobienia: **

  1. Utworzenie endpointa dla frontu, który na podstawie przesłanej listy produktów, kodów rabatowych i kodów kart podarunkowych będzie zwracać kolekcję produktów z odpowiednio obniżonymi cenami oraz możliwe formy wysyłki i płatności wraz z ich cenami.
  2. Wykorzystanie elementów ficzera stworzonch w pkt 1 do obliczenia poprawnego order_total_price w zapisywanym zamówieniu
  3. Przekierowywanie do płatności PayU / PayPal tylko jeśli order_total_price > 0

Podsumowanie:

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions