3.7.2
What's Changed
- WeGIA 3.7.1 by @nilsonLazarin in #1588
- Adicionando a estrutura do banco de dados para o futuro módulo projeto by @hananvictor2008 in #1589
- Estrutura de banco para módulo projeto by @nilsonLazarin in #1590
New Contributors
- @hananvictor2008 made their first contribution in #1589
Full Changelog: 3.7.1...3.7.2
Script para atualização do banco de dados:
-- -----------------------------------------------------
-- Módulo Projetos (revisado)
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Table `wegia`.`projeto_status`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto_status` (
`id_status` INT NOT NULL AUTO_INCREMENT,
`descricao` VARCHAR(100) NOT NULL,
PRIMARY KEY (`id_status`),
UNIQUE INDEX `descricao_UNIQUE` (`descricao` ASC)
) ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `wegia`.`projeto_local`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto_local` (
`id_local` INT NOT NULL AUTO_INCREMENT,
`nome` VARCHAR(150) NOT NULL,
`descricao` TEXT NULL,
PRIMARY KEY (`id_local`)
) ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `wegia`.`projeto_tipo`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto_tipo` (
`id_tipo` INT NOT NULL AUTO_INCREMENT,
`descricao` VARCHAR(100) NOT NULL,
PRIMARY KEY (`id_tipo`),
UNIQUE INDEX `descricao_UNIQUE` (`descricao` ASC)
) ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `wegia`.`projeto_funcao`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto_funcao` (
`id_funcao` INT NOT NULL AUTO_INCREMENT,
`descricao` VARCHAR(100) NOT NULL,
PRIMARY KEY (`id_funcao`),
UNIQUE INDEX `descricao_UNIQUE` (`descricao` ASC)
) ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `wegia`.`projeto`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto` (
`id_projeto` INT NOT NULL AUTO_INCREMENT,
`nome` VARCHAR(150) NOT NULL,
`descricao` TEXT NULL,
`id_tipo` INT NOT NULL,
`id_local` INT NOT NULL,
`id_status` INT NOT NULL,
`data_inicio` DATE NOT NULL,
`data_fim` DATE NULL,
PRIMARY KEY (`id_projeto`),
INDEX `fk_projeto_tipo_idx` (`id_tipo` ASC),
INDEX `fk_projeto_local_idx` (`id_local` ASC),
INDEX `fk_projeto_status_idx` (`id_status` ASC),
CONSTRAINT `fk_projeto_tipo`
FOREIGN KEY (`id_tipo`)
REFERENCES `wegia`.`projeto_tipo` (`id_tipo`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_projeto_local`
FOREIGN KEY (`id_local`)
REFERENCES `wegia`.`projeto_local` (`id_local`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_projeto_status`
FOREIGN KEY (`id_status`)
REFERENCES `wegia`.`projeto_status` (`id_status`)
ON DELETE NO ACTION
ON UPDATE NO ACTION
) ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `wegia`.`projeto_executante`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto_executante` (
`id` INT NOT NULL AUTO_INCREMENT,
`id_projeto` INT NOT NULL,
`id_pessoa` INT NOT NULL,
`id_funcao` INT NOT NULL,
PRIMARY KEY (`id`),
UNIQUE INDEX `uq_projeto_executante` (`id_projeto` ASC, `id_pessoa` ASC),
INDEX `fk_pf_projeto_idx` (`id_projeto` ASC),
INDEX `fk_pf_pessoa_idx` (`id_pessoa` ASC),
INDEX `fk_pf_funcao_idx` (`id_funcao` ASC),
CONSTRAINT `fk_pf_projeto`
FOREIGN KEY (`id_projeto`)
REFERENCES `wegia`.`projeto` (`id_projeto`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_pf_pessoa`
FOREIGN KEY (`id_pessoa`)
REFERENCES `wegia`.`pessoa` (`id_pessoa`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_pf_funcao`
FOREIGN KEY (`id_funcao`)
REFERENCES `wegia`.`projeto_funcao` (`id_funcao`)
ON DELETE NO ACTION
ON UPDATE NO ACTION
) ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `wegia`.`projeto_atendido_status`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto_atendido_status` (
`id_status` INT NOT NULL AUTO_INCREMENT,
`descricao` VARCHAR(100) NOT NULL,
PRIMARY KEY (`id_status`),
UNIQUE INDEX `descricao_UNIQUE` (`descricao` ASC)
) ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `wegia`.`projeto_atendido`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `wegia`.`projeto_atendido` (
`id` INT NOT NULL AUTO_INCREMENT,
`id_projeto` INT NOT NULL,
`id_atendido` INT NOT NULL,
`id_status` INT NOT NULL,
PRIMARY KEY (`id`),
UNIQUE INDEX `uq_projeto_atendido` (`id_projeto` ASC, `id_atendido` ASC),
INDEX `fk_pa_projeto_idx` (`id_projeto` ASC),
INDEX `fk_pa_atendido_idx` (`id_atendido` ASC),
INDEX `fk_pa_status_idx` (`id_status` ASC),
CONSTRAINT `fk_pa_projeto`
FOREIGN KEY (`id_projeto`)
REFERENCES `wegia`.`projeto` (`id_projeto`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_pa_atendido`
FOREIGN KEY (`id_atendido`)
REFERENCES `wegia`.`atendido` (`idatendido`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_pa_status`
FOREIGN KEY (`id_status`)
REFERENCES `wegia`.`projeto_atendido_status` (`id_status`)
ON DELETE NO ACTION
ON UPDATE NO ACTION
) ENGINE = InnoDB;
-- ----------------------------------------------------
-- MÓDULO PROJETOS
-- ----------------------------------------------------
-- -----------------------------------------------------
-- Inserts iniciais projeto_tipo
-- -----------------------------------------------------
INSERT IGNORE INTO `wegia`.`projeto_tipo` (`descricao`) VALUES
('Esportivo'),
('Educacional'),
('Social');
-- -----------------------------------------------------
-- Inserts iniciais projeto_funcao
-- -----------------------------------------------------
INSERT IGNORE INTO `wegia`.`projeto_funcao` (`descricao`) VALUES
('Gestor'),
('Professor'),
('Assistente Social'),
('Monitor Social');
INSERT IGNORE INTO `wegia`.`projeto_local` (`nome`, `descricao`) VALUES
('Local não definido', 'Sem descrição');
INSERT IGNORE INTO `wegia`.`projeto_status` (`descricao`) VALUES
('Ativo'),
('Inativo');
INSERT IGNORE INTO `wegia`.`projeto_atendido_status` (`descricao`) VALUES
('Ativo'),
('Inativo');