![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 1 199 Pomógł: 31 Dołączył: 22.03.2004 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
tworze wlasnie modul rabatow dla grup klientow dla sklepu i pojawil sie przede mna problem.
zalozmy, ze firma moze dodawac dowolna ilosc rabatow dla grup: poczatkujacy_klienci aktywni_klienci przy czym: - rabat moze obowiazywac od - do - dodatkowo moze obejmowac jakis przedzial wartosci koszyka z calej historii zakupow w sklepie czyli wchodzimy sobie do ustawiania rabatow, ustawia nam sie data jutrzejsza bo chyba tak najlepiej zaczac naliczanie rabatow. Wybieramy grupe "poczatkujacy_klienci" i okreslamy przedzial od jutra +7dni. teraz pytanie, jak to zapisac w bazie, zeby potem ladnie przy zamowieniu i raportach wyciagnac wartosc rabatow ? myslalem zeby miec dwie tabele: discount id_discount spec_discount_group id_user_group ograniczam przy edycji zmiane pola: discount,i date_to (nie mniejsza niz data nastepna od jutra) nie wiem czy to jest dobre rozwiazanie. moge miec takze rabaty indywidualne dla uzytkownikow. Tutaj bez ograniczen czasowych. user id_user teraz jak zapisywac historie zmian tej wartosc rabatu dla uzytkownika ? zrobic nowa tabele user_discount_history id_user i przy kazdej zmianie robic insert do niej ? ale wtedy moge miec tak 1, 20, 01-01-2010 1, 30, 02-01-2010 1, 60, 10-01-2010 czyli zniakaja mi jakies tam dni, a tego wolabym uniknac, zeby przy generowaniu raportow sie nie pomylic mozecie mi doradzic ? Ten post edytował trucksweb 12.04.2011, 20:22:04 -------------------- Rozmawia dwóch dyrektorów:
- Jaki jest twój ideał sekretarki? - 20-letnia dziewczyna z 30-letnim doświadczeniem. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 18 Dołączył: 4.09.2010 Skąd: warszawa Ostrzeżenie: (0%) ![]() ![]() |
pisząc z palucha:
Rabat id rabat_wartosc rabat_typ (enum: wartosc,procent) rabat_nazwa (dla marketoidów) rabat_data_od (datatime) rabat_data_do rabat_wartosc_od rabat_wartosc_do aktywny (1/0) Rabat_User_Grupa id id_rabat id_user id_grupa sprawdzenie czy user ma prawo do jakiegoś rabatu, czy to z racji indywidualnego czy grupowego, to odwołanie się do Rabat_User_Grupa z id usera lub id grupy do jakiej należy oraz do Rabat gdzie sprawdzamy dodatkowo czy now() between rabat_data_od and between rabat_data_do oraz wartosc_koszyka_usera between rabat_wartosc_od and rabat_wartosc_do oraz oczywiście aktywny=1 aplikacja powinna zadbać o rozwiązanie konfliktów typu - user ma kilka rabatów indywidualnych i grupowych, o różnych wartościach i typach (np 50% i -50zł) |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 01:36 |