Shopping Manager – jadłospis, produkt, przepis

Do usystematyzowania pracy nad projektem Shopping Manager, należy w tym momencie sprecyzować, jak będą wyglądać kluczowe elementy naszego systemu. W tym krótkim wpisie zastanowię się jakie pola powinien mieć jadłospis produkt oraz przepis.

Planowanie

Aplikacja Shopping Manager powinna pozwolić użytkownikowi na określenie budżetu tygodniowego. Na tej podstawie powinien być generowany jadłospis. Jadłospis zawiera zbiór przepisów, a każdy przepis zawiera listę produktów potrzebnych do jego sporządzenia.

Jadłospis – Menu

Tutaj sytuacja jest najprostsza. Jak wspomniałem wyżej, jadłospis, to zbiór przepisów. W jadłospisie kluczowe pola id, date oraz recipes.

Przepis – Recipe

Budując przepis miałem sporo wątpliwości jak powinna wyglądać jego struktura. Naturalne wydało się, by przepis zawierał listę produktów, ale oprócz tego powinien mieć informację,  ile poszczególnych produktów powinno się użyć. Sposób przyrządzenia dania to kolejna zagwozdka. Poszedłem na spore uproszczenia w tym temacie.

Pole sposób przyrządzenia, to zwykły string.

Składnik – Ingredient

Zamiast produktu stworzymy nowy byt o nazwie składnik (ingredient), który będzie mieć informację o produkcie oraz dodatkowo będzie posiadać informację o jednostce miary oraz ilości potrzebnej do skomponowania przepisu.

Produkt – Product

Produkt to rdzeń naszego systemu. Jakie pola będzie posiadać, będę weryfikować na bieżąco. Na ten moment na pewno będzie id, nazwa produktu (name), nazwę producent (manufacturer), kod kreskowy (ean), wartość energetyczna (energy), masę netto (net_weight) oraz jednostkę miary (unit_of_measure).

Dodatkowo będziemy zbierać informacje o cenie w postaci kolekcji.

Podsumowanie

Przygotowana struktura pozwoli spełnić minimalne założenia projektu. Niewątpliwym plusem jest wybór MongoDB, który zapewnia mi komfort w tym temacie i oferuje mi sporą elastyczność w ewentualnej rozbudowie. Ma to również swoje minusy, ale jak zawsze, myślmy pozytywnie.

 

Dawid Ryłko

Lubię dobre filmy, gry oraz kawę. W pracy front-end, po godzinach wszystko inne.

 
Współpraca:
Polski Front-End