Skip to content

3.8.4

Choose a tag to compare

@nilsonLazarin nilsonLazarin released this 15 May 18:55
· 174 commits to master since this release

What's Changed

Full Changelog: 3.8.3...3.8.4

ALTERAÇÕES NO BANCO DE DADOS

ALTER TABLE estoque
ADD COLUMN qtd_minima INT NOT NULL DEFAULT 0 AFTER qtd;

CREATE TABLE IF NOT EXISTS notificacao (
id_notificacao INT NOT NULL AUTO_INCREMENT,
id_recurso INT NOT NULL,
titulo VARCHAR(150) NOT NULL,
mensagem TEXT NOT NULL,
tipo VARCHAR(50) NULL,
link VARCHAR(255) NULL,
data_criacao DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id_notificacao),
INDEX fk_notificacao_recurso_idx (id_recurso),
CONSTRAINT fk_notificacao_recurso
FOREIGN KEY (id_recurso)
REFERENCES recurso (id_recurso)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE = InnoDB;

CREATE TABLE IF NOT EXISTS notificacao_destinatario (
id_notificacao_destinatario INT NOT NULL AUTO_INCREMENT,
id_notificacao INT NOT NULL,
id_pessoa INT NOT NULL,
visualizada TINYINT(1) NOT NULL DEFAULT 0,
data_visualizacao DATETIME NULL,
PRIMARY KEY (id_notificacao_destinatario),
UNIQUE KEY uq_notificacao_destinatario (id_notificacao, id_pessoa),
INDEX idx_notificacao_destinatario_pessoa (id_pessoa, visualizada),
CONSTRAINT fk_notificacao_destinatario_notificacao
FOREIGN KEY (id_notificacao)
REFERENCES notificacao (id_notificacao)
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT fk_notificacao_destinatario_pessoa
FOREIGN KEY (id_pessoa)
REFERENCES pessoa (id_pessoa)
ON DELETE CASCADE
ON UPDATE CASCADE
) ENGINE = InnoDB;

Alterações no Banco de dados

Criação da tabela para múltiplos horários de medicação

-- Migration 001: Cria tabela saude_medicacao_horario
CREATE TABLE IF NOT EXISTS wegia.saude_medicacao_horario (
id_horario INT NOT NULL AUTO_INCREMENT,
id_medicacao INT NOT NULL,
horario TIME NOT NULL,
PRIMARY KEY (id_horario),
INDEX fk_medicacao_horario_medicacao_idx (id_medicacao ASC),
CONSTRAINT fk_medicacao_horario_medicacao
FOREIGN KEY (id_medicacao)
REFERENCES wegia.saude_medicacao (id_medicacao)
ON DELETE CASCADE
ON UPDATE NO ACTION
) ENGINE = InnoDB;

Migração dos dados da coluna depreciada

-- Migration 002: Migração dos dados
START TRANSACTION;
INSERT INTO wegia.saude_medicacao_horario (id_medicacao, horario)
SELECT id_medicacao, STR_TO_DATE(horario, '%H:%i')
FROM wegia.saude_medicacao
WHERE horario IS NOT NULL
AND horario != '';
COMMIT;

Remoção da coluna horário

-- Migration 003: Remove campo horario de saude_medicacao
ALTER TABLE wegia.saude_medicacao
DROP COLUMN horario;