Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: konstrukcja logiczna
Forum PHP.pl > Forum > PHP
julia
Witam smile.gif
Stoję przed problemem określenia ceny produktu, gdzie cena jest zależna od tego ile sztuk konkretnego produktu dany klient kupił. Przykład: cena podstawowa książki wynosi 100 zł, jeśli jednak klient się zaloguje i kupi jedenastą z kolei książkę to otrzyma ją za 90 zł a za dwudziestą pierwszą zapłaci już tylko 80 zł. . Dodatkowym utrudnieniem jest to, że są dwie klasy produktów, dla jednych obniżka następuje tak jak dla owej książki - po 10 i 20 egzemplażach a dla innych produktów po 5 i 10-tym.
Największym problemem jest dla mnie obliczenie ceny w chwili gdy dany klient kupił już wdcześniej np. 8 książek a chce zamówić jeszcze trzy z czego dwie trzeba policzyć za 100 a jedną za 90 zł.

Próbowałam zmontować jakąś regułę, ale wychodzą mi koszmarne wynalazki. Nie dość, ze są mało eleganckie i olbrzymie (a zapewne da się to ująć w paru linijkach kodu) to w dodatku naprodukowałam całą masę tabelek w MySOL-u a i tak całość nie chce działać. Jestem jednak klasyczną babą, jak napotkam na problem natury logicznej to się gubię...
FiDO
php Poczatkujacy -> php
Bakus
musisz ustalić, że każda książka (cena) jest przetwarzana od początku do końca...
Co przez to rozumiem?
Koleś kupuje książkę w 3 sztukach...
1. Sprawdzasz, czy kupił już jakąś ilość książek
2. Wyliczasz w razie potrzeby cenę tego JEDNEGO egzemplaża
3. Dodajesz 1 do ilości zakupionych przez niego książek
4. Jeżeli w liście zakupów jest kolejna książka, to idziesz do punktu 1... W przeciwnym wypadku kończysz procedurę...
GeoS
Moim zdaniem najlepiej zrobic to tak:
1) liczysz ilosc juz kupionych
2) dodajesz do tego ilosc kupowanych
3) jesli zsumowana ilosc jest w przedziale okreslonym widelkami (powiedzmy 9<x<20) i ilosc wczesniej kupionych jest mniejsza od wartosci dla ktorej zachodzi promocja, to sprawdzasz ktora powinien potraktowac jako "promocyjna"
4) i robisz punkt 3) dla pozostalych "przedzialow"

Mam nadzieje, ze napisalem w miare logicznie tongue.gif
A teraz ide spac, bo rano kolos i jeszcze trzeba na niego dojechac (ten cholerny szczyt gospodarczy :/) sad.gif

PS Gdyby byly niejasnosci -> PW.
Bakus
kwestia sporna... snitch.gif Na dobrą sprawę oba rozwiązania dają ten sam efekt, ale trzeba jeszcez wziąść pod uwagę prędkość działania i łatwość implementacji... winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.