From 7021e52705b057d3bf88144e3c4760b43049b8cb Mon Sep 17 00:00:00 2001 From: alexm Date: Tue, 9 May 2023 07:11:21 +0200 Subject: [PATCH] correct folder --- db/changes/232001/00-authCode.sql | 27 +++++++++++++++++++++++ db/changes/232001/00-department.sql | 24 ++++++++++++++++++++ db/changes/{231801 => 232001}/00-user.sql | 0 3 files changed, 51 insertions(+) create mode 100644 db/changes/232001/00-authCode.sql create mode 100644 db/changes/232001/00-department.sql rename db/changes/{231801 => 232001}/00-user.sql (100%) diff --git a/db/changes/232001/00-authCode.sql b/db/changes/232001/00-authCode.sql new file mode 100644 index 0000000000..0415c90f05 --- /dev/null +++ b/db/changes/232001/00-authCode.sql @@ -0,0 +1,27 @@ +create table `salix`.`authCode` +( + userFk int UNSIGNED not null, + code int not null, + expires TIMESTAMP not null, + constraint authCode_pk + primary key (userFk), + constraint authCode_unique + unique (code), + constraint authCode_user_id_fk + foreign key (userFk) references `account`.`user` (id) + on update cascade on delete cascade +); + +create table `salix`.`userAccess` +( + userFk int UNSIGNED not null, + ip VARCHAR(25) not null, + agent text null, + platform VARCHAR(25) null, + browser VARCHAR(25) null, + constraint userAccess_pk + primary key (userFk), + constraint userAccess_user_null_fk + foreign key (userFk) references `account`.`user` (id) +) + auto_increment = 0; \ No newline at end of file diff --git a/db/changes/232001/00-department.sql b/db/changes/232001/00-department.sql new file mode 100644 index 0000000000..d9a91ee30b --- /dev/null +++ b/db/changes/232001/00-department.sql @@ -0,0 +1,24 @@ +alter table `vn`.`department` + add `twoFactor` ENUM ('email') null comment 'Default user two-factor auth type'; + +drop trigger `vn`.`department_afterUpdate`; + +DELIMITER $$ +$$ +create definer = root@localhost trigger department_afterUpdate + after update + on department + for each row +BEGIN + IF !(OLD.parentFk <=> NEW.parentFk) THEN + UPDATE vn.department_recalc SET isChanged = TRUE; + END IF; + + IF !(OLD.twoFactor <=> NEW.twoFactor) THEN + UPDATE account.user u + JOIN vn.workerDepartment wd ON wd.workerFk = u.id + SET u.twoFactor = NEW.twoFactor + WHERE wd.departmentFk = NEW.id; + END IF; +END;$$ +DELIMITER ; diff --git a/db/changes/231801/00-user.sql b/db/changes/232001/00-user.sql similarity index 100% rename from db/changes/231801/00-user.sql rename to db/changes/232001/00-user.sql