salix/db/versions/10841-orangeGalax/00-entryDms.sql

88 lines
2.5 KiB
SQL

CREATE OR REPLACE TABLE `vn`.`entryDms` (
`entryFk` int(11) NOT NULL,
`dmsFk` int(11) NOT NULL,
`editorFk` int(10) unsigned DEFAULT NULL,
PRIMARY KEY (`entryFk`,`dmsFk`),
KEY `gestdoc_id` (`dmsFk`),
KEY `entryDms_editor` (`editorFk`),
CONSTRAINT `entryDms_dms` FOREIGN KEY (`dmsFk`) REFERENCES `dms` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `entryDms_editor` FOREIGN KEY (`editorFk`) REFERENCES `account`.`user` (`id`),
CONSTRAINT `entryDms_entry` FOREIGN KEY (`entryFk`) REFERENCES `entry` (`id`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci;
-- DROP TRIGGER IF EXISTS `vn`.`entryDms_beforeInsert`;
-- USE `vn`;
-- DELIMITER $$
-- $$
-- CREATE DEFINER=`root`@`localhost` TRIGGER `vn`.`entryDms_beforeInsert`
-- BEFORE INSERT ON `entryDms`
-- FOR EACH ROW
-- BEGIN
-- SET NEW.editorFk = account.myUser_getId();
-- END $$
-- DELIMITER ;
-- DROP TRIGGER IF EXISTS `vn`.`entryDms_beforeUpdate`;
-- USE `vn`;
-- DELIMITER $$
-- $$
-- CREATE DEFINER=`root`@`localhost` TRIGGER `vn`.`entryDms_beforeUpdate`
-- BEFORE UPDATE ON `entryDms`
-- FOR EACH ROW
-- BEGIN
-- SET NEW.editorFk = account.myUser_getId();
-- END $$
-- DELIMITER ;
-- DROP TRIGGER IF EXISTS `vn`.`entryDms_beforeDelete`;
-- USE `vn`;
-- DELIMITER $$
-- $$
-- CREATE DEFINER=`root`@`localhost` TRIGGER `vn`.`entryDms_beforeDelete`
-- BEFORE DELETE ON `entryDms`
-- FOR EACH ROW
-- BEGIN
-- UPDATE dms
-- SET dmsTypeFk = (SELECT id
-- FROM dmsType
-- WHERE `code` = 'trash'
-- )
-- WHERE id = OLD.dmsFk AND ( SELECT IF(COUNT(*) > 0, FALSE, TRUE)
-- FROM entryDms
-- WHERE dmsFk = OLD.dmsFk
-- ) ;
-- END $$
-- DELIMITER ;
-- DROP TRIGGER IF EXISTS `vn`.`entryDms_afterDelete`;
-- USE `vn`;
-- DELIMITER $$
-- $$
-- CREATE DEFINER=`root`@`localhost` TRIGGER `vn`.`entryDms_afterDelete`
-- AFTER DELETE ON `entryDms`
-- FOR EACH ROW
-- BEGIN
-- INSERT INTO entryLog
-- SET `action` = 'delete',
-- `changedModel` = 'entryDms',
-- `changedModelId` = OLD.entryFk,
-- `userFk` = account.myUser_getId();
-- END $$
-- DELIMITER ;
INSERT INTO `salix`.`ACL` (`model`, `property`, `accessType`, `permission`, `principalType`, `principalId`)
VALUES
('WorkerDms', '*', '*', 'ALLOW', 'ROLE', 'employee'),
('EntryDms', '*', '*', 'ALLOW', 'ROLE', 'employee'),
('Entry', 'uploadFile', 'WRITE', 'ALLOW', 'ROLE', 'employee');
-- UPDATE `salix`.`ACL`
-- SET accessType = '*'
-- WHERE model = 'ClientDms'
-- AND property = '*';