Movimento: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
(Criou página com '=Movimento= ==Objetivo== Facilitar o encontro de informação unificada e completa sobre locais para a prática de esportes em uma cidade.<br> Criar uma plataforma colaborati...')
 
Linha 44: Linha 44:
;Diagrama de Entidade e Relacionamento
;Diagrama de Entidade e Relacionamento
[[Arquivo:ER_Gee.png|600px]]<br>
[[Arquivo:ER_Gee.png|600px]]<br>
;Script SQL
<syntaxhighlight lang="SQL">
CREATE SCHEMA gee;
ALTER SCHEMA gee OWNER TO postgres;
SET search_path TO pg_catalog,public,gee;
CREATE TABLE gee.categoria(
id serial NOT NULL,
nome varchar(255) NOT NULL,
cor varchar(7) NOT NULL,
CONSTRAINT pkcategoria PRIMARY KEY (id)
);
ALTER TABLE gee.categoria OWNER TO postgres;
CREATE TABLE gee.local(
id_usuario integer,
nome varchar(255) NOT NULL,
descricao varchar(255) NOT NULL,
privado boolean NOT NULL DEFAULT false,
ativo boolean NOT NULL DEFAULT false,
ponto point NOT NULL,
id serial NOT NULL,
CONSTRAINT pklocal PRIMARY KEY (id)
);
ALTER TABLE gee.local OWNER TO postgres;
CREATE TABLE gee.historico(
id serial NOT NULL,
campo smallint NOT NULL,
valor varchar(255),
data timestamp NOT NULL,
id_local integer NOT NULL,
CONSTRAINT pkhistorico PRIMARY KEY (id)
);
ALTER TABLE gee.historico OWNER TO postgres;
CREATE TABLE gee.agendamento(
id serial NOT NULL,
data_inicio timestamp NOT NULL,
data_fim timestamp NOT NULL,
id_usuario integer NOT NULL,
id_ambiente integer NOT NULL,
CONSTRAINT pkagendamento PRIMARY KEY (id)
);
ALTER TABLE gee.agendamento OWNER TO postgres;
CREATE TABLE gee.imagem(
id serial NOT NULL,
arquivo bytea NOT NULL,
id_ambiente integer NOT NULL,
CONSTRAINT pkimagem PRIMARY KEY (id)
);
ALTER TABLE gee.imagem OWNER TO postgres;
CREATE TABLE gee.ambiente(
id serial NOT NULL,
nome varchar(255) NOT NULL,
valor float NOT NULL,
divisor_horas smallint NOT NULL,
ativo boolean NOT NULL DEFAULT true,
CONSTRAINT pkambiente PRIMARY KEY (id)
);
ALTER TABLE gee.ambiente OWNER TO postgres;
CREATE TABLE gee.usuario(
id serial NOT NULL,
nome varchar(255) NOT NULL,
login varchar(255) NOT NULL,
senha varchar(255) NOT NULL,
email varchar(255) NOT NULL,
tipo smallint NOT NULL,
CONSTRAINT pkusuario PRIMARY KEY (id)
);
ALTER TABLE gee.usuario OWNER TO postgres;
CREATE TABLE gee.local_categoria(
id_categoria integer NOT NULL,
id_local integer NOT NULL,
CONSTRAINT pk_local_categoria PRIMARY KEY (id_categoria,id_local)
);
ALTER TABLE gee.local_categoria OWNER TO postgres;
ALTER TABLE gee.local ADD CONSTRAINT fk_local_usuario FOREIGN KEY (id_usuario)
REFERENCES gee.usuario (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE gee.agendamento ADD CONSTRAINT fk_agendamento_usuario FOREIGN KEY (id_usuario)
REFERENCES gee.usuario (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE gee.agendamento ADD CONSTRAINT fk_agendamento_ambiente FOREIGN KEY (id_ambiente)
REFERENCES gee.ambiente (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE gee.imagem ADD CONSTRAINT fk_imagem_ambiente FOREIGN KEY (id_ambiente)
REFERENCES gee.ambiente (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE gee.local_categoria ADD CONSTRAINT fk_local_categoria_categoria FOREIGN KEY (id_categoria)
REFERENCES gee.categoria (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE gee.local_categoria ADD CONSTRAINT fk_local_categoria_local FOREIGN KEY (id_local)
REFERENCES gee.local (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;
ALTER TABLE gee.historico ADD CONSTRAINT fk_historico_local FOREIGN KEY (id_local)
REFERENCES gee.local (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;
</syntaxhighlight>


[[Mídia:Diagramas_Gee.zip]]
[[Mídia:Diagramas_Gee.zip]]

Edição das 00h48min de 1 de setembro de 2017

Movimento

Objetivo

Facilitar o encontro de informação unificada e completa sobre locais para a prática de esportes em uma cidade.
Criar uma plataforma colaborativa onde pessoas poderão contribuir indicando espaços disponíveis na sua cidade, para que outras pessoas possam encontrar e conhecer esses locais.
Todos os usuários poderão alimentar a plataforma com locais novos ou adicionando informação à locais existentes.

Ano: 2017

Equipe

Orientadores
  • Estevan Brandt Braz Costa
  • Alcione Benacchio
Alunos
  • Thiago Cesar Alvares
  • Thiago Henry Antunes Ribeiro

Problema

  • Encontrar de informação sobre locais para prática de esportes de forma unificada e com informação completa;
  • Dificuldade na comunicação com proprietários de locais privados para prática de esportes;

Principais Funcionalidades

  • Pesquisa de locais para qualquer usuário sem a necessidade de cadastro;
  • Colaboração de usuários com informações dos locais;
  • Realizar agendamento de horários em locais privados;
  • Gestão de agendamentos para o proprietário;
  • Histórico de alterações dos locais cadastrados;

Público Alvo

  • Praticantes de atividades físicas;
  • Proprietários de locais privados para prática de esportes;

Tecnologias

  • HTML5, CSS3, JS;
  • JQuery 3;
  • Bootstrap 4;
  • Gson;
  • PostgreSQL 9.6;

Modelagem

Diagrama de Classes


Diagrama de Casos de Uso


Diagrama de Entidade e Relacionamento


Script SQL
CREATE SCHEMA gee;
ALTER SCHEMA gee OWNER TO postgres;
SET search_path TO pg_catalog,public,gee;

CREATE TABLE gee.categoria(
	id serial NOT NULL,
	nome varchar(255) NOT NULL,
	cor varchar(7) NOT NULL,
	CONSTRAINT pkcategoria PRIMARY KEY (id)

);
ALTER TABLE gee.categoria OWNER TO postgres;

CREATE TABLE gee.local(
	id_usuario integer,
	nome varchar(255) NOT NULL,
	descricao varchar(255) NOT NULL,
	privado boolean NOT NULL DEFAULT false,
	ativo boolean NOT NULL DEFAULT false,
	ponto point NOT NULL,
	id serial NOT NULL,
	CONSTRAINT pklocal PRIMARY KEY (id)

);
ALTER TABLE gee.local OWNER TO postgres;

CREATE TABLE gee.historico(
	id serial NOT NULL,
	campo smallint NOT NULL,
	valor varchar(255),
	data timestamp NOT NULL,
	id_local integer NOT NULL,
	CONSTRAINT pkhistorico PRIMARY KEY (id)

);
ALTER TABLE gee.historico OWNER TO postgres;

CREATE TABLE gee.agendamento(
	id serial NOT NULL,
	data_inicio timestamp NOT NULL,
	data_fim timestamp NOT NULL,
	id_usuario integer NOT NULL,
	id_ambiente integer NOT NULL,
	CONSTRAINT pkagendamento PRIMARY KEY (id)

);
ALTER TABLE gee.agendamento OWNER TO postgres;

CREATE TABLE gee.imagem(
	id serial NOT NULL,
	arquivo bytea NOT NULL,
	id_ambiente integer NOT NULL,
	CONSTRAINT pkimagem PRIMARY KEY (id)

);
ALTER TABLE gee.imagem OWNER TO postgres;

CREATE TABLE gee.ambiente(
	id serial NOT NULL,
	nome varchar(255) NOT NULL,
	valor float NOT NULL,
	divisor_horas smallint NOT NULL,
	ativo boolean NOT NULL DEFAULT true,
	CONSTRAINT pkambiente PRIMARY KEY (id)

);
ALTER TABLE gee.ambiente OWNER TO postgres;

CREATE TABLE gee.usuario(
	id serial NOT NULL,
	nome varchar(255) NOT NULL,
	login varchar(255) NOT NULL,
	senha varchar(255) NOT NULL,
	email varchar(255) NOT NULL,
	tipo smallint NOT NULL,
	CONSTRAINT pkusuario PRIMARY KEY (id)

);
ALTER TABLE gee.usuario OWNER TO postgres;

CREATE TABLE gee.local_categoria(
	id_categoria integer NOT NULL,
	id_local integer NOT NULL,
	CONSTRAINT pk_local_categoria PRIMARY KEY (id_categoria,id_local)

);
ALTER TABLE gee.local_categoria OWNER TO postgres;

ALTER TABLE gee.local ADD CONSTRAINT fk_local_usuario FOREIGN KEY (id_usuario)
REFERENCES gee.usuario (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;

ALTER TABLE gee.agendamento ADD CONSTRAINT fk_agendamento_usuario FOREIGN KEY (id_usuario)
REFERENCES gee.usuario (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;

ALTER TABLE gee.agendamento ADD CONSTRAINT fk_agendamento_ambiente FOREIGN KEY (id_ambiente)
REFERENCES gee.ambiente (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;

ALTER TABLE gee.imagem ADD CONSTRAINT fk_imagem_ambiente FOREIGN KEY (id_ambiente)
REFERENCES gee.ambiente (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;

ALTER TABLE gee.local_categoria ADD CONSTRAINT fk_local_categoria_categoria FOREIGN KEY (id_categoria)
REFERENCES gee.categoria (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;

ALTER TABLE gee.local_categoria ADD CONSTRAINT fk_local_categoria_local FOREIGN KEY (id_local)
REFERENCES gee.local (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;

ALTER TABLE gee.historico ADD CONSTRAINT fk_historico_local FOREIGN KEY (id_local)
REFERENCES gee.local (id) MATCH FULL
ON DELETE NO ACTION ON UPDATE NO ACTION;

Mídia:Diagramas_Gee.zip

Referências