/
owpk
/
back-compose
Обзор
Документация
Войти
/
owpk
/
back-compose
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
db.dbml
78 строк
2 KB
owpk
6 telegram auth (#15)
27 апр 2025, 18:52
Не верифицирован
27 апр 2025, 18:52
3c3b5cd
Код
Авторство
О чём код?
Table user { id bigserial [pk] name varchar last_name varchar middle_name varchar login varchar } Table telegram_user { user_id bigint [ref: > user.id] id BIGINT [not null] first_name VARCHAR(255) [NOT NULL] is_bot BOOLEAN last_name VARCHAR(255) username VARCHAR(255) language_code VARCHAR(255) is_premium BOOLEAN added_to_attachment_menu BOOLEAN allows_write_to_pm BOOLEAN photo_url VARCHAR(255) indexes { (user_id, id) [pk] } } Table user_role { user_id bigint [ref: > user.id] role_id bigint [ref: > role.id] indexes { (user_id, role_id) [pk] } } Table role { id bigserial [pk] name varchar // возможно нужно добавить табличку с authorities } Table service_info { id bigserial [pk] service_owner_id bigint [ref: > user.id] service_name varchar(75) editable boolean // показывает можно ли другим юзерам создавать рекорды в твоем графике service_description text record_limit int // record amount restriction (default 1) time_duration int // seconds indexes { (id, service_owner_id) [unique] } } Table record { id bigserial [pk] service_info_id bigint [ref: > service_info.id] record_owner_id bigint [ref: > user.id] // может быть любой юзер id тогда будет понятно что запись была инициирована от какого то юзера к текущему юзеру, если id совпадает то мы понимаем что эта запись была создана самим юзером для самого себя public boolean limit int indexes { (record_owner_id, service_info_id) } time_from timestamp time_to timestamp } Table record_pending { record_id bigint [ref: > record.id] client_id bigint [ref: > user.id] request_time timestamp confirmed boolean indexes { (client_id,record_id) [pk] } }