2 attribute domain

This commit is contained in:
2026-02-25 11:24:20 +03:00
parent c729835abc
commit 97a9695e5b

View File

@ -53,13 +53,9 @@ Master и Client наследуются через отношение полно
## Анализ альтернативных ключей.
Person / E0
- ФИО - text
Client / E1
- номер телефона
- email
- платежный счет
Master / E2
- паспорт
@ -71,13 +67,138 @@ Studio / E3
# таблица атрибутов и доменов;
| Домен | Тип |
|-|-|
| ФИО | text |
| номер телефона | text |
| email | text |
| платежный счет | text |
| паспорт | text |
| адрес | text |
## Person / E0
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| ФИО | text | |
## Client / E1
| Атрибут | Домен | Ограничения |
|-|-|-|
| phone | text | UNIQUE |
| email | text | UNIQUE |
| billing_account | text | |
## Master / E2
| Атрибут | Домен | Ограничения |
|-|-|-|
| passport | text | UNIQUE |
| readme | text | |
## Studio / E3
| Атрибут | Домен | Ограничения |
|-|-|-|
| address | text | UNIQUE |
| capacity | int | CHECK (capacity > 0) |
| begin_date | timestamptz | |
| duration | interval | |
## Class / E4
| Атрибут | Домен | Ограничения |
|-|-|-|
| begin_date | timestamptz | PRIMARY KEY |
| Course_id | int | PRIMARY FOREIGN KEY (Course_id) REFERENCES Course (id) |
| Studio_id | int | FOREIGN KEY (Studio_id) REFERENCES Studio (id) |
| name | text | |
| type | int | |
| duration | interval | |
## Course / E5
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| Master_id | int | FOREIGN KEY (Master_id) REFERENCES Master (id) |
| name | text | |
| duration | interval | |
## Registration / E6
| Атрибут | Домен | Ограничения |
|-|-|-|
| Client_id | int | PRIMARY FOREIGN KEY (Client_id) REFERENCES Client (id) |
| Course_id | int | PRIMARY FOREIGN KEY (Course_id) REFERENCES Course (id) |
| date | timestamptz | |
| status | int | |
## FoodProduct / E7
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| FoodProductEnum_id | int | PRIMARY FOREIGN KEY (FoodProductEnum_id) REFERENCES FoodProductEnum (id) |
| ClassId | int | FOREIGN KEY (Class_id) REFERENCES Class (id) |
| buy_price | real | |
| buy_date | timestamptz | |
| delivery_price | real | |
| delivery_date | timestamptz | |
| expires_date | timestamptz | |
## Equipment / E8
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| Studio_id | int | FOREIGN KEY (Studio_id) REFERENCES Studio (id) |
| name | text | |
| usage_price | real | |
| usage_type | int | |
| delivery_price | real | |
| delivery_date | timestamptz | |
## FirstAidKit / E9
| Атрибут | Домен | Ограничения |
|-|-|-|
| Course_id | int | FOREIGN KEY (Course_id) REFERENCES Course (id) |
## Drug / E10
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| DrugEnum_id | int | PRIMARY FOREIGN KEY |
| FirstAidKit_id | int | FOREIGN KEY |
| buy_price | real | |
| buy_date | timestamptz | |
| delivery_price | real | |
| delivery_date | timestamptz | |
| expires_date | timestamptz | |
## DrugIntolerance / E11
| Атрибут | Домен | Ограничения |
|-|-|-|
| Person_id | int | PRIMARY FOREIGN KEY |
| DrugEnum_id | int | PRIMARY FOREIGN KEY |
## DrugEnum / E12
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| name | text | |
| avg_price | text | |
## FoodProductEnum / E13
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| name | text | |
| avg_price | text | |
## ActivityLog / E14
| Атрибут | Домен | Ограничения |
|-|-|-|
| id | int | PRIMARY KEY |
| Person_id | int | PRIMARY FOREIGN KEY |
| action | text | |