... | ... | @@ -12,4 +12,146 @@ A modelagem, documentação e organização do banco de dados se situará nessa |
|
|
## Modelagem
|
|
|
**Modelo Lógico**
|
|
|
|
|
|
![free-from-club](uploads/2ad296c64b7eb9f6f1a075312892cd07/free-from-club.png) |
|
|
\ No newline at end of file |
|
|
![free-from-club](uploads/2ad296c64b7eb9f6f1a075312892cd07/free-from-club.png)
|
|
|
|
|
|
### Comunidades
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| ------------- | ---------- | --------------- |
|
|
|
| community_id | INT(10) | 🔑PK, NOT NULL |
|
|
|
| name | VARCHAR(255) | |
|
|
|
| description | VARCHAR(255) | |
|
|
|
|
|
|
### Restaurantes
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| restaurant_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| name | VARCHAR(255) | |
|
|
|
| corporate_name | VARCHAR(255) | |
|
|
|
| cnpj | CHAR(14) | |
|
|
|
| email | VARCHAR(255) | |
|
|
|
| password | VARCHAR(255) | |
|
|
|
| business_phone | CHAR(11) | |
|
|
|
| admin_phone | CHAR(11) | |
|
|
|
| admin_name | CHAR(11) | |
|
|
|
| profile_photo | BYTEA | |
|
|
|
| background_photo| BYTEA | |
|
|
|
|
|
|
### Fotos de Restaurantes
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| rp_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| restaurant_id | CHAR(10) | 🔗FK,NOT NULL |
|
|
|
| order | TINYINT | NOT NULL |
|
|
|
| file | BYTEA | |
|
|
|
|
|
|
### Restrições
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| restriction_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| name | VARCHAR(255) | |
|
|
|
|
|
|
### Usuários
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| user_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| name | VARCHAR(255) | |
|
|
|
| email | VARCHAR(255) | |
|
|
|
| password | VARCHAR(255) | |
|
|
|
| birthdate | DATE | |
|
|
|
| city | VARCHAR(255) | |
|
|
|
| uf | CHAR(2) | |
|
|
|
| phone | CHAR(11) | |
|
|
|
| profile_photo | BYTEA | |
|
|
|
|
|
|
### Endereços
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| address_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| restaurant_id | CHAR(10) | 🔗FK,NOT NULL |
|
|
|
| street | VARCHAR(255) | |
|
|
|
| number | VARCHAR(55) | |
|
|
|
| complement | VARCHAR(255) | |
|
|
|
| cep | CHAR(8) | |
|
|
|
| city | VARCHAR(255) | |
|
|
|
| uf | CHAR(2) | |
|
|
|
| latitude | VARCHAR(255) | |
|
|
|
| longitude | VARCHAR(255) | |
|
|
|
|
|
|
### Restrições da Comunidade
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| cr_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| community_id | CHAR(10) | 🔗FK,NOT NULL |
|
|
|
| restriction_id | CHAR(10) | 🔗FK,NOT NULL |
|
|
|
|
|
|
### Restrições Personalizadas do Usuário
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| cur_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| user_id | CHAR(10) | 🔗FK,NOT NULL |
|
|
|
| category | CATEGORY | NOT NULL |
|
|
|
| restriction | VARCHAR(255) | |
|
|
|
|
|
|
### Posts
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| post_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| user_id | CHAR(10) | 🔗FK,NOT NULL |
|
|
|
| title | VARCHAR(255) | |
|
|
|
| text | VARCHAR(255) | |
|
|
|
| community_id | CHAR(10) | 🔗FK,NOT NULL |
|
|
|
| link | VARCHAR(255) | |
|
|
|
|
|
|
### Restrições do Restaurante
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| rr_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| restaurant_id | CHAR(10) | 🔗FK, NOT NULL |
|
|
|
| restriction_id | CHAR(10) | 🔗FK, NOT NULL |
|
|
|
|
|
|
### Categorias de Restrição
|
|
|
|
|
|
| Valor | Descrição |
|
|
|
| -------------- | ----------- |
|
|
|
| Sensibilidade | |
|
|
|
| Intolerância | |
|
|
|
| Alergia | |
|
|
|
| Autoimune | |
|
|
|
| Opcional | |
|
|
|
|
|
|
### Restrições do Usuário
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| ur_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| user_id | CHAR(10) | 🔗FK, NOT NULL |
|
|
|
| restriction_id | CHAR(10) | 🔗FK, NOT NULL |
|
|
|
| category | CATEGORY | NOT NULL |
|
|
|
|
|
|
### Comentários de Posts
|
|
|
|
|
|
| Atributo | Tipo | Restrições |
|
|
|
| --------------- | ---------- | --------------- |
|
|
|
| pc_id | CHAR(10) | 🔑PK, NOT NULL |
|
|
|
| user_id | CHAR(10) | 🔗FK, NOT NULL |
|
|
|
| post_id | CHAR(10) | 🔗FK, NOT NULL |
|
|
|
| text | VARCHAR(255) | |
|
|
|
| response_to | CHAR(10) | NULL |
|
|
|
|
|
|
## Cardinalidades
|
|
|
1. Restaurantes - Fotos de Restaurantes: Um restaurante possui várias fotos, e cada foto pertence a um restaurante.
|
|
|
2. Restaurantes - Endereços: Um restaurante possui um endereço, e cada endereço pertence a um restaurante.
|
|
|
3. Comunidades - Restrições da Comunidade: Uma comunidade possui várias restrições, e cada restrição da comunidade pertence a uma comunidade.
|
|
|
4. Restrições - Restrições da Comunidade: Uma restrição pode estar associada a várias comunidades, e cada restrição da comunidade pertence a uma restrição.
|
|
|
5. Usuários - Restrições Personalizadas do Usuário: Um usuário possui várias restrições personalizadas, e cada restrição personalizada pertence a um usuário.
|
|
|
6. Usuários - Posts: Um usuário pode criar vários posts |
|
|
\ No newline at end of file |