- Data de entrega 09/12/2019
CREATE TABLE pessoa (id SERIAL PRIMARY KEY, nome VARCHAR(100) NOT NULL, email VARCHAR(45) NOT NULL, senha VARCHAR(45), cidade_estado VARCHAR(45) NOT NULL, foto bytea, UNIQUE(email));
CREATE TABLE post (id SERIAL PRIMARY KEY, texto VARCHAR(140) NOT NULL, imagem bytea, pessoa_id int, FOREIGN KEY (pessoa_id) REFERENCES pessoa(id), data TIMESTAMP);
CREATE TABLE like_post (id SERIAL PRIMARY KEY NOT NULL, pessoa_id int, post_id int, data TIMESTAMP, FOREIGN KEY (pessoa_id) REFERENCES pessoa(id), FOREIGN KEY (post_id) REFERENCES post(id), UNIQUE(pessoa_id, post_id));
-
O sistema deve permitir que, por meio de uma tela inicial, o usuário possa escolher se quer acessar o sistema ou cadastrar-se.
-
O sistema deve permitir que o usuário possa alterar seus dados.
-
O sistema deve permitir que, após feito o login, o usuário possa visualizar uma tela com seus 03(três) últimos posts.
-
A tela pode ter os contêineres fixos dos posts, mudando apenas os valores de acordo com os dados do banco de dados.
-
O sistema deve permitir que o usuário possa criar um post. Um post poderá ser composto somente de texto, ou de texto e imagem.
-
O sistema deverá mostrar o total de “likes” de cada post.
-
O sistema deve tratar as mensagens de erro e devolvê-las de forma amigável ao usuário.
-
E-mails devem ser únicos. O acesso ao sistema deve ser feito por meio do endereço de e-mail.
-
O usuário não poderá alterar seu e-mail.
-
Cada post não poderá ter mais que 140 caracteres.
-
Um post pode conter somente uma imagem.
-
Somente usuários logados podem criar e “dar like” em posts.
-
As fotos dos posts podem ser fixas e obtidas diretamente do
disco rígidobanco de dados. -
{EXTRA} Gravar as imagens no banco de dados ao invés do disco rígido.
-
{EXTRA} Permitir que o usuário possa, em seu cadastro, inserir sua foto.
-
{EXTRA} Ao invés de utilizar contêineres fixos, construí-los de forma dinâmica de acordo com a lista buscada do banco de dados.
-
{EXTRA} Ao clicar nos “likes”, deve ser aberta uma tela que liste as pessoas que deram os referidos “likes”.