Baza danych: Użytkownicy

Z DrRobert DOCS
Przejdź do nawigacji Przejdź do wyszukiwania

Tabela użytkowników: `sg_users`

Tabela z podstawowymi danymi użytkowników.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
status_id int 0 id statusu użytkownika
uuid char(36) UUID() wygenerowany identyfikator UUID
name varchar(200) NULL nazwa
email varchar(200) NULL adres email
phone varchar(20) NULL nr telefonu
data json NULL json z danymi niezaszyfrowanymi
data_encrypted longtext NULL zaszyfrowana tablica z danymi niejawnymi
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia
Statusy użytkowników:
id nazwa klucz
0 nowy STATUS_NEW
1 aktywny STATUS_ACTIVE
91 nieaktywny STATUS_INACTIVE
92 zawieszony STATUS_SUSPENDED
99 usunięty STATUS_DELETED

Tabela autoryzacji: `sg_user_auth`

Tabela z metodami autoryzacji użytkownika, możliwość przechowywania loginów, haseł i tokenów.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
user_id int 0 id użytkownika
type_id int 0 id typu
auth_login text NULL login w plaintext
auth_hash text NULL hash (np hasła)
auth_token text NULL token logowania
dt_expire datetime NULL data i czas utraty ważności w przypadku czasowego sposobu logowania, lub historycznej pary login/hasło
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia
Typy autoryzacji:
id nazwa klucz opis
0 login i hasło TYPE_LOGIN_PASSWORD domyślny sposób logowania przy pomocy loginu i hasła
1 token url TYPE_URL_TOKEN token w adresie url, wysyłany przy pomocy emaila
2 token api TYPE_API_TOKEN token do autoryzacji przy pomocy api, przechowywany w aplikacji
3 centrum monitoringu TYPE_CM_LOGIN login i hasło dostępu do centrum monitoringu

Możliwe dodanie kolejnych typów autoryzacji wraz z rozwojem.

Tabela wydarzeń: `sg_user_events`

Tabela z wydarzeniami kalendarza użytkowników.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
uuid char(36) UUID() wygenerowany identyfikator UUID
user_id int 0 id użytkownika
type_id int 0 id typu
name text NULL nazwa do wyświetlania na listach
date_start date NULL data wydarzenia
date_stop date NULL data zakończenia gdy trwa więcej niż jeden dzień, w innym przypadku NULL
time_start time NULL czas wydarzenia gdy planowane na konkretną godzinę, w innym przypadku NULL
time_stop time NULL czas zakończenia gdy planowane, w innym przypadku NULL
data json NULL json z danymi dodatkowymi
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia

Tabela relacji między użytkownikami: `sg_user_relationships`

Tabela z relacjami między użytkownikami, czyli które konto ma przypisanych wiele profili do zarządzania.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
uuid char(36) UUID() wygenerowany identyfikator UUID
parent_user_id int 0 id użytkownika rodzica
children_user_id int 0 id użytkownika dziecka
type_id int 0 id typu relacji
date_start date NULL data rozpoczęcia relacji
date_stop date NULL data zakończenia lub NULL w przypadku dostępu ciągłego
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia

Tabela ankiet użytkowników: `sg_user_surveys`

Tabela z przypisanymi do wypełnienia i wypełnionymi ankietami.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
uuid char(36) UUID() wygenerowany identyfikator UUID
user_id int 0 id użytkownika
survey_id int 0 id ankiety
date_start date NULL data planowanego rozpoczęcia
date_stop date NULL data zakończenia gdy trwa więcej niż jeden dzień, w innym przypadku NULL
time_start time NULL czas planowanego rozpoczęcia gdy na konkretną godzinę, w innym przypadku NULL
time_stop time NULL czas zakończenia gdy planowane, w innym przypadku NULL
responded bool 0 flaga stanu 0-planowana 1-wypełniona
responses json NULL json z odpowiedziami
dt_responded datetime CURRENT_TIMESTAMP data i czas wypełnienia
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia

Tabela odpowiedzi ankiet użytkowników: `sg_user_surveys_answers`

Tabela z odpowiedziami udzielonymi na ankiety.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
uuid char(36) UUID() wygenerowany identyfikator UUID
user_survey_id int 0 id wpisu przypisania ankiety, tabela sg_user_surveys
survey_id int 0 id ankiety
answer_id int 0 id odpowiedzi
answer_int int NULL wartość int odpowiedzi
answer_float float NULL wartość float odpowiedzi
answer_text text NULL wartość string odpowiedzi
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia

Tabela organizacji użytkowników: `sg_user_organisations`

Tabela organizacji grupujących użytkowników.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
uuid char(36) UUID() wygenerowany identyfikator UUID
name text NULL nazwa organizacji
data json NULL json z danymi dodatkowymi
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia

Tabela przypisań użytkowników do organizacji: `sg_user_organisations_membership`

Tabela z przypisaniem do organizacji, w danym okresie i danego typu roli.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
uuid char(36) UUID() wygenerowany identyfikator UUID
user_id int 0 id użytkownika
organization_id int 0 id organizacji
type_id int 0 id typu członkostwa
date_start date NULL data rozpoczęcia członkostwa
date_stop date NULL data zakończenia lub NULL w przypadku dostępu ciągłego
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia
Typy członkostwa:
id nazwa klucz
0 brak TYPE_NONE
1 zwykły TYPE_ORDINARY
2 koordynator TYPE_COORDINATOR
99 admin TYPE_ADMIN

Tabela rekomendacji użytkowników: `sg_user_recommendations`

Tabela z rekomendacjami przypisanymi do użytkownika.

nazwa typ domyślnie klucz lub właściwości opis
id int $auto_increment primary_key
uuid char(36) UUID() wygenerowany identyfikator UUID
user_id int 0 id użytkownika
recommendation_id int 0 id rekomendacji
frequency varchar(10) NULL częstotliwość wykonywania rekomendacji
due_date varchar(200) NULL data zaplanowana
date_done varchar(200) NULL data wykonania
data json NULL json z danymi niezaszyfrowanymi
dt_created datetime CURRENT_TIMESTAMP data i czas utworzenia
dt_updated datetime NULL on update CURRENT_TIMESTAMP data i czas modyfikacji
deleted bool 0 flaga usunięcia
dt_deleted datetime NULL data i czas usunięcia