Анализ и расширение структуры таблиц #12
This commit is contained in:
@@ -10,6 +10,13 @@
|
||||
role :: user | bot,
|
||||
status :: active | frozen | deleted,
|
||||
reason :: binary() | undefined,
|
||||
nickname :: binary() | undefined,
|
||||
avatar_url :: binary() | undefined,
|
||||
timezone :: binary() | undefined,
|
||||
language :: binary() | undefined,
|
||||
social_links :: [binary()] | undefined,
|
||||
phone :: binary() | undefined,
|
||||
preferences :: map() | undefined,
|
||||
created_at :: calendar:datetime(),
|
||||
updated_at :: calendar:datetime()
|
||||
}).
|
||||
@@ -28,6 +35,12 @@
|
||||
password_hash :: binary(),
|
||||
role :: superadmin | admin | moderator | support,
|
||||
status :: active | blocked,
|
||||
nickname :: binary() | undefined,
|
||||
avatar_url :: binary() | undefined,
|
||||
timezone :: binary() | undefined,
|
||||
language :: binary() | undefined,
|
||||
phone :: binary() | undefined,
|
||||
preferences :: map() | undefined,
|
||||
created_at :: calendar:datetime(),
|
||||
updated_at :: calendar:datetime()
|
||||
}).
|
||||
@@ -46,6 +59,11 @@
|
||||
owner_id :: binary(),
|
||||
title :: binary(),
|
||||
description :: binary(),
|
||||
short_name :: binary() | undefined,
|
||||
category :: binary() | undefined,
|
||||
color :: binary() | undefined,
|
||||
image_url :: binary() | undefined,
|
||||
settings :: map() | undefined,
|
||||
tags :: [binary()],
|
||||
type :: personal | commercial,
|
||||
confirmation :: auto | manual | {timeout, integer()}, % секунд
|
||||
@@ -63,6 +81,17 @@
|
||||
rights :: read | write | admin
|
||||
}).
|
||||
|
||||
%% ------------------- Специалисты календаря ---------------------------
|
||||
-record(calendar_specialist, {
|
||||
calendar_id :: binary(),
|
||||
user_id :: binary(), % id пользователя-специалиста
|
||||
name :: binary(), % отображаемое имя в этом календаре
|
||||
specialization :: [binary()] | undefined, % список специализаций (услуг)
|
||||
status :: active | inactive,
|
||||
added_at :: calendar:datetime(),
|
||||
updated_at :: calendar:datetime()
|
||||
}).
|
||||
|
||||
-record(location, {
|
||||
address :: binary(),
|
||||
lat :: float(),
|
||||
@@ -90,6 +119,8 @@
|
||||
reason :: binary() | undefined,
|
||||
rating_avg :: float(),
|
||||
rating_count :: non_neg_integer(),
|
||||
attachments :: [binary()] | undefined,
|
||||
edit_history :: [map()] | undefined,
|
||||
created_at :: calendar:datetime(),
|
||||
updated_at :: calendar:datetime()
|
||||
}).
|
||||
@@ -107,6 +138,8 @@
|
||||
event_id :: binary(), % ссылка на конкретный экземпляр события
|
||||
user_id :: binary(),
|
||||
status :: pending | confirmed | cancelled,
|
||||
notes :: binary() | undefined,
|
||||
reminder_sent :: boolean(),
|
||||
confirmed_at :: calendar:datetime() | undefined,
|
||||
created_at :: calendar:datetime(),
|
||||
updated_at :: calendar:datetime()
|
||||
@@ -122,6 +155,8 @@
|
||||
comment :: binary(),
|
||||
status :: visible | hidden | deleted,
|
||||
reason :: binary() | undefined,
|
||||
likes :: non_neg_integer(),
|
||||
dislikes :: non_neg_integer(),
|
||||
created_at :: calendar:datetime(),
|
||||
updated_at :: calendar:datetime()
|
||||
}).
|
||||
@@ -188,3 +223,14 @@
|
||||
ip :: binary(),
|
||||
reason :: binary() | undefined
|
||||
}).
|
||||
|
||||
%% ------------------- Уведомления (задача #12) ------------------------
|
||||
-record(notification, {
|
||||
id :: binary(),
|
||||
user_id :: binary(),
|
||||
type :: booking_confirmed | event_reminder | event_cancelled | custom,
|
||||
title :: binary(),
|
||||
body :: binary(),
|
||||
is_read :: boolean(),
|
||||
created_at :: calendar:datetime()
|
||||
}).
|
||||
Reference in New Issue
Block a user