Mam taką strukturkę bazy: 1. clients: - id - password .... 2. businesses: -id - name 3. clientprofiles - id - clientid - businessid - email - phone .....
- Klient tworzy konto sam i wtedy mamy wpis w tabeli clients oraz clientprofiles z businessid = null - Klient jest tworzony przez konto biznesu i wtedy mamy wpis w tabeli clients oraz clientprofiles z odpowiednim businessid - klient po złożeniu rezerwacji w odrębie danego biznesu jest widoczny na liście klientów przez uzytkownika danego biznesu. - biznes może "edytować" dane klienta ale są one widoczne tylko dla niego. W bazie w takim przypadku jest tworzony drugi profil klienta z odpowiednim businessid. Wtedy dany klient ma 2 profile - jeden dla siebie a drugi dla biznesu. Analogicznie moze mieć wiele profili dla różnych biznesów ale zasada jest taka, że klient widzi profil z business_id = null a biznes widzi swój (ewentualnie też profil klienta żeby zobaczyc czy nie ma różnic).
Pytanie czy można to jakoś lepiej zrobić bo będzie sie pojawiał problem np. przy sortowaniu takiej listy na widoku biznesu. Dodatkowo też pewnie dojdą kwestie wydajnościowe przy przechodzeniu/sortowaniu/filtrowaniu po takiej liście.
Mam taką strukturkę bazy:
1. clients:
- id
- password
....
2. businesses:
-id
- name
3. clientprofiles
- id
- clientid
- businessid
- email
- phone
.....
- Klient tworzy konto sam i wtedy mamy wpis w tabeli clients oraz clientprofiles z businessid = null
- Klient jest tworzony przez konto biznesu i wtedy mamy wpis w tabeli clients oraz clientprofiles z odpowiednim businessid
- klient po złożeniu rezerwacji w odrębie danego biznesu jest widoczny na liście klientów przez uzytkownika danego biznesu.
- biznes może "edytować" dane klienta ale są one widoczne tylko dla niego. W bazie w takim przypadku jest tworzony drugi profil klienta z odpowiednim businessid. Wtedy dany klient ma 2 profile - jeden dla siebie a drugi dla biznesu. Analogicznie moze mieć wiele profili dla różnych biznesów ale zasada jest taka, że klient widzi profil z business_id = null a biznes widzi swój (ewentualnie też profil klienta żeby zobaczyc czy nie ma różnic).
Pytanie czy można to jakoś lepiej zrobić bo będzie sie pojawiał problem np. przy sortowaniu takiej listy na widoku biznesu. Dodatkowo też pewnie dojdą kwestie wydajnościowe przy przechodzeniu/sortowaniu/filtrowaniu po takiej liście.