Radosław Zadroga

Radosław Zadroga
Programista/projekta
nt - młodszy adept

Temat: Projektant/programista obiektowe modelowanie pod Magento

Witam,
Szukam osób które rozumieją modelowanie/projektowanie obiektowe i stosują je w Magento.

Mam taki problem, sklep ma sprzedawać mąkę (coś innego ale mąka wiernie odwzorowuje problematykę).
Mąka ma być sprzedawana w różnych opakowaniach 2kG, 1KG, 0,5KG (ale to może się kiedyś zmienić, każdy produkt może mieć inne opakowania).
Są różne typy 'mąki' ;) pod względem przemiału ziarna zboża 550, 650, 750, 1400, 2100, i inne (trwałe założenie - wymaganie funkcjonalne: tylko z pszenicy będzie sprzedawana mąka).

W Magento Community 1.8 istnieją typy produktu Simple, Configurable, Bundle, Grouped,
Najlepszy okazał się Configurable do tego celu ale Configurable nie ma swojego magazynu więc trzeba było utworzyć atrybut i podłączyć do Configurabla (attribute set: Maka).
Niestety trzeba było zrezygnować ze standardowego magazynu w całości i utworzyć poniższą konstrukcję produktu:
Mąka 550 (Configurable) (attribute set: Maka: new attributes: Nowy magazyn (jednostka w gramy) )
->Mąka 550 500gr (Simple dodatkowy atrybut tylko dla Simpla: Opakowanie, attribute set: Maka)
->Mąka 550 1000gr (Simple -||-)
->Mąka 550 2000gr (Simple -||-)

Jak byście po stronie PHP kierując się obiektowością (hermetyzacja, dziedziczenie, polimorfizm, abstrakcja i dodałbym spójność) zaprojektowali zarządzanie 'własnym', 'customowym' magazynem, dostępnością produktu?
W tym sklepie mogą kiedyś być sprzedawane inne produkty niż mąką.

Mam swój pomysł na to ale chciałbym żeby inni się wypowiedzieli najpierw.Ten post został edytowany przez Autora dnia 10.02.14 o godzinie 21:23
Łukasz Linczewski

Łukasz Linczewski Członek zarządu -
współzałożyciel,
Alekseon Sp.z.o.o.

Temat: Projektant/programista obiektowe modelowanie pod Magento

Czesc,

Nie idz ta droga kolego :) Pisanie wlasnego zarzadzania magazynem jest zupelnie niepotrzebne. Jestem pewien ze mozesz sobie poradzic dobierajac odpowiednie typy produktów.

Z twojej wiadomosci nie wynika jasno dlaczego chcesz uzyc configurabli. Jezeli masz rozne rozmiary opakowan i rozne przemialy to tworzysz 2 atrybuty dodatkowy "rozmiar opakowania" i "typ przemialu" i uzupelniasz opcje tych atrybutow o wartosci ktore podales.
Moge sie mylic ale z tego co napisales powyzszy model powinien odpowiadac wymaganiom.

Co innego jezeli ma to byc jeden produkt i to klient wypelnia na stronie produktu opcje tej "mąki". W tym wypadku powinienes zglebic CUSTOM OPTIONS w magento.

BTW: Popytaj tez Gnyska albo Jakuba. Oni maja spora wiedze :)
Pozdrowienia z AlekseonuTen post został edytowany przez Autora dnia 19.02.14 o godzinie 12:30
Radosław Zadroga

Radosław Zadroga
Programista/projekta
nt - młodszy adept

Temat: Projektant/programista obiektowe modelowanie pod Magento

Łukasz L.:
Czesc,
...
BTW: Popytaj tez Gnyska albo Jakuba. Oni maja spora wiedze :)
Pozdrowienia z Alekseonu
Dzięki, oni zgadzają się z Tobą. Czy znasz kogo kto modeluje obiektowo w Magento?
Piotr Lewandowski

Piotr Lewandowski Programista
aplikacji
internetowych (PHP,
MySQL, SF2, Mag...

Temat: Projektant/programista obiektowe modelowanie pod Magento

Radosław Z.:
Niestety trzeba było zrezygnować ze standardowego magazynu w całości i utworzyć poniższą konstrukcję produktu:
Mąka 550 (Configurable) (attribute set: Maka: new attributes: Nowy magazyn (jednostka w gramy) )
->Mąka 550 500gr (Simple dodatkowy atrybut tylko dla Simpla: Opakowanie, attribute set: Maka)
->Mąka 550 1000gr (Simple -||-)
->Mąka 550 2000gr (Simple -||-)

Nie rozumiem w jakim punkcie standardowy magazyn nie spełnia swojej roli? Powyższy przykład to jest właśnie dokładne odwzorowanie koncepcji produktu konfigurowalnego, który tworzy opcje z połączonych produktów prostych, gdzie każdy produkt prosty reprezentuje fizyczny produkt na magazynie. Każdy produkt prosty ma swój stan magazynowy, co też chyba odpowiada sytuacji w rzeczywistości?

Nie widzę powodu tworzenia nowego magazynu... no chyba że mąka jest kupowana "na tony" i rozsypywana w momencie zakupu ;-)
Piotr G.

Piotr G. Programista gier i
aplikacji
internetowych

Temat: Projektant/programista obiektowe modelowanie pod Magento

Radosław Z.:
Czy znasz kogo kto modeluje obiektowo w Magento?

A to da się w Magento inaczej niż obiektowo? ;)

@UP: Myślę, że mniej więcej o to chodzi, masz duży worek np. 1 tona, a kupując configurable zostanie odjęte z worka 0.5, 1 czy 2kg. I z góry nie wiesz, których opakowań ile będzie, więc nie można założyć ilości simpli do sprzedaży, bo trzeba dynamicznie odejmować z 1 tony.
Piotr Lewandowski

Piotr Lewandowski Programista
aplikacji
internetowych (PHP,
MySQL, SF2, Mag...

Temat: Projektant/programista obiektowe modelowanie pod Magento

Piotr G.:
Radosław Z.:
Czy znasz kogo kto modeluje obiektowo w Magento?

A to da się w Magento inaczej niż obiektowo? ;)

@UP: Myślę, że mniej więcej o to chodzi, masz duży worek np. 1 tona, a kupując configurable zostanie odjęte z worka 0.5, 1 czy 2kg. I z góry nie wiesz, których opakowań ile będzie, więc nie można założyć ilości simpli do sprzedaży, bo trzeba dynamicznie odejmować z 1 tony.

No ok, to produkt jest dalej konfigurowalnym produktem... tutaj mamy konwersje jednostek. Ja bym to widział produkt konfigurowalny + extra produkt "wewnętrzny" który jest np toną mąki leżącą na magazynie i liczymy dostępność z produktu bazowego dla simpli configa (tutaj można przyjąć różne polityki rozdzielania tej tony). Ewentualnie dla zachowania szyku i elegancji kodu można zamknąć to w nowym typie produktu :-)

To takie rozwiązanie na szybko, a inne... na prawdę zależy od wymagań, architektury systemów trzecich, itp... często takie rzeczy to robota ERP a nie engine sklepu ;-)

Następna dyskusja:

Projektant Programista PHP ...




Wyślij zaproszenie do