Koszyk rezerwacji pokojów

0

Zaimplementowałem coś na styl koszyka internetowego w swoim programie. W tym koszyku przechowuję informacje o pokoju, ilosci, data_od,data_do, koszt. Nie wiem czy jest sens trzymania informacji o datach i koszcie w koszyku. Ponieważ mam inna tabele która przechowuję informację **od do ** kiedy jest złozona rezerwacja oraz tabele platnosc w której mam informacje jaka osoba i ile zaplacila (koszt). Nie jestem pewny czy w dwoch tabelach takie powtarzające się pola mają sens. Co sądzicie?

1

Sądze, że nie ma to sensu. IMO, powinny być dwie tabele: Koszyk - to co jest w koszyku i Metakoszyk - informacje o koszyku.
Tak będzie przejrzyściej.

0

a czy sens ma mieć tabele SzczególyPlatnosci (Jaki pokoj i ile za ten pokoj) i Platnosci (w platnosciach mam infomacje jaka osoba ile zaplacila) ? Szczegoly platnosci to tabela posrednia miedzy Platnosc a Pokoj.

0
lion137 napisał(a):

Sądze, że nie ma to sensu. IMO, powinny być dwie tabele: Koszyk - to co jest w koszyku i Metakoszyk - informacje o koszyku.
Tak będzie przejrzyściej.

Jeżeli mam tabele rezerwacja gdzie mam informacje o dacie rezerwacji, to w koszyku w takim razie powinny się znależć jedynie pokoje jakie ma dany użytkownik?

0

To zależy. Koszyk jeszcze nie jest rezerwacja tylko takim tymczasowym zbiorem. Dopiero po zatwierdzwniu i ewentualnym opłaceniu staje się rezerwacja. Ja bym przechowywać wszystko w koszyku (pokoje,ceny,terminy) a po zatwierdzeniu zapisywać to dopiero jako rezerwacja.
Przechowywanie koszyka to rzecz wtórna. Mogą być 2 tabele. Jedna z id sesji i jakimiś podsumowaniem a druga z pokojami, datami,cenami w koszyku

0
jacek.placek napisał(a):

To zależy. Koszyk jeszcze nie jest rezerwacja tylko takim tymczasowym zbiorem. Dopiero po zatwierdzwniu i ewentualnym opłaceniu staje się rezerwacja. Ja bym przechowywać wszystko w koszyku (pokoje,ceny,terminy) a po zatwierdzeniu zapisywać to dopiero jako rezerwacja.
Przechowywanie koszyka to rzecz wtórna. Mogą być 2 tabele. Jedna z id sesji i jakimiś podsumowaniem a druga z pokojami, datami,cenami w koszyku

Mam tabele Pokoj 1:N KoszykRezerwacji, Pokoj 1:N PlatnoscSzczegoly, Platnosc 1:N PlatnoscSzczegoly. Zastanawia mnei czy nie popełniłem głupoty odnośnie dania tabeli Pokoj klucza obcego do PlatnoscSzczegoły (W celu pozniejszej rezerwacji pokojów) ? Próbowałem zaimplementować coś na wzór koszyka internetowego. Jeżeli mam mam np wpis w tabeli płatność czyli z koszyka przeszedłem do płatności to nastepnie bedę tworzyć wpis odpowiedzialny za rezerwacje.

0

Płatność to raczej powiazalbym z rezerwacja bo zakładam, że rezerwacja od jednego klienta może zawierać kilka pokoi i będzie miała jedna płatność.

Tak generalnie to spróbuj nie myśleć o tabelach w db tylko jak aplikacja ma działać co i kiedy robi klient, jakich danych i kiedy potrzebuje, jakie akcje może wykonać. Teraz masz taki Table Driven Design i nie widać akcji. Trudno powiedzieć co i jak zamodelowac bo model db jest efektem analizy działań obiektów i przejść jednych obiektów w inne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1