File indexing completed on 2024-04-21 06:00:36

0001 DROP PROCEDURE IF EXISTS `generate_stat_project_ids`;
0002 
0003 DELIMITER $$
0004 CREATE PROCEDURE `generate_stat_project_ids`()
0005 BEGIN
0006     DROP TABLE IF EXISTS `tmp_stat_project_tagids`;
0007     CREATE TABLE `tmp_stat_project_tagids`
0008     (
0009         INDEX `idx_tag_id` (`tag_id`),
0010         INDEX `idx_project_id` (`project_id`)
0011     )
0012         ENGINE MyISAM
0013     AS
0014 
0015     SELECT DISTINCT `tag_id`, `project_id`
0016     FROM (
0017              SELECT DISTINCT `tag`.`tag_id`, `tgo`.`tag_object_id` AS `project_id`
0018              FROM `tag_object` AS `tgo`
0019                       JOIN `tag` ON `tag`.`tag_id` = `tgo`.`tag_id`
0020              WHERE `tag_type_id` = 1 #project
0021                AND `tgo`.`is_deleted` = 0
0022              UNION ALL
0023              SELECT DISTINCT `tag`.`tag_id`, `tgo`.`tag_parent_object_id` AS `project_id`
0024              FROM `tag_object` AS `tgo`
0025                       JOIN `tag` ON `tag`.`tag_id` = `tgo`.`tag_id`
0026                       JOIN `ppload`.`ppload_files` `files` ON `files`.`id` = `tgo`.`tag_object_id`
0027              WHERE `tag_type_id` = 3 #file
0028                AND `files`.`active` = 1
0029                AND `tgo`.`is_deleted` = 0
0030          ) `A`;
0031     RENAME TABLE `stat_project_tagids` TO `old_stat_project_tagids`, `tmp_stat_project_tagids` TO `stat_project_tagids`;
0032     DROP TABLE IF EXISTS `old_stat_project_tagids`;
0033 
0034 END$$
0035 
0036 DELIMITER ;
0037 
0038 CREATE EVENT `e_generate_stat_project_ids`
0039     ON SCHEDULE
0040         EVERY 15 MINUTE STARTS '2019-01-23 15:43:00'
0041     ON COMPLETION NOT PRESERVE
0042     ENABLE
0043     COMMENT ''
0044     DO
0045     BEGIN
0046         CALL generate_stat_project_ids();
0047     END