Wątek przeniesiony 2018-08-16 09:26 z PHP przez Patryk27.

Projekt bazy danych MySQL do kalendarza spotkań

0

Witajcie, siedzę i myślę nad najodpowiedniejszym rozwiązaniem, może mi podpowiecie.
Mam kalendarz w którym można rezerwować spotkania na określoną stałą godzinę co dziennie, tj 12, 15, 18, czyli każdy dzień ma 3 możliwości.
Zalogowany użytkownik rezerwuje spotkanie w ustalony dzień w ustaloną godzinę. I tyle, i teraz myślałem jak to upakować do bazy i wymyśliłem:
Jedną tabelę z userami z wierszami:** id, name, vorname** i tyle.
2gą ze spotkaniami z wierszami: id, id_user, tu jakieś do relacji z 3cią tabelą
i na podstawie 3 tabeli chciałem: 1. wyświetlać kalendarz, usatić tam flagę dostępności czy coś, 2. jakieś id które przypiszę do spotkania

I troche mi się zaczyna już wszystko mieszać te 3 relacje.
Wpadam na pomysły zawiłych relacji i flagowania dostępności po osobnych id każdego dnia, co jest bez sensu.

Chciałem żeby user miał spotkanie, które z kolei będzie warunkowane wierszem z 3 tabeli.

Takie user-spotkanie-data
Chyba że bez relacji po prostu tabela user - tabela spotkanie
I osobno tabela dostępne daty

Co wy na to?
Może ktoś ma bardziej efektywny pomysł?

0

Pytania, które się nasuwają:

  1. (chyba nie jest wiodące) siatka terminów pojawia się ze względu na pomieszczenie, czy na osobę (jakiegoś przełożeonego). Choćby na tym etapie projektu była to liczba "sztuk jeden"
  2. nie piszesz wyraźnie, mowa o dwóch osobach? Czy więcej? Któraś jest "trochę ważniejsza" (jest właścicielem / ownerem spotkania) czy są równoważne.
  3. Pojawia się jakieś "randez-vous", propozycja, które dojrzewa do "potwierdzone" ? Czy w jednej fazie się pojawia spotkanie?
0

Chodzi mi o coś takiego: http://www.automyjnia-krakow.pl/rezerwacje/2018/08/25
Każdej zalogowanej osobie wyświetla się ten sam kalendarz w którym mogą rezerwować spotkania, które stają się już niedostępne.
Teraz wpadłem na pomysł że zrobie wszystko w js jako symulacje i później przeniosę do bazy, bo pojawiają się wyjątki typu święta, niedziele i soboty.
Najprostsze by było zrobić tabelę z każdym dostępnym terminem ręcznie i potem po kliku usera go flagować, tylko to jest bez sensu, bo tabela będzie ograniczona i np za rok będę musiał ją rozszerzyć. Teraz już troche pomyślałem i myślę, że dobrym rozwiązaniem jest dodatkowa tabela wyjątków, wg której będzie wyświetlany kalendarz i wg której będzie ustalane spotkanie. Po kliku będzie dodane spotkanie do tabeli spotkania z id usera i to samo doda się do wyjątków, żeby wyświetlać w kalendarzu już jako niedostępne.

0

A może tak
tabela Klienci:

  • imię
    -nazwisko
    -telefon
    -e mail

tabela rezerwacje
-rok
-miesiąc
-dzień
-godzina
-minuta

tabela wyjątki
-rok
-miesiąc
-dzień
-godzina
-minuta

tabela sala/ stanowisko
-sala1
-sala2

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