From bf017ccc8a68fa5a1c98be4dc49a2c56d31404bc Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Tue, 28 Dec 2021 17:55:03 +0200 Subject: [PATCH] mass action cleanup --- .../Espo/Classes/Cleanup/MassActions.php | 73 +++++++++++++++++++ .../Espo/Resources/metadata/app/cleanup.json | 3 + 2 files changed, 76 insertions(+) create mode 100644 application/Espo/Classes/Cleanup/MassActions.php diff --git a/application/Espo/Classes/Cleanup/MassActions.php b/application/Espo/Classes/Cleanup/MassActions.php new file mode 100644 index 0000000000..792f9fe8dd --- /dev/null +++ b/application/Espo/Classes/Cleanup/MassActions.php @@ -0,0 +1,73 @@ +config = $config; + $this->entityManager = $entityManager; + } + + public function process(): void + { + $period = '-' . $this->config->get('cleanupMassActionsPeriod', $this->cleanupPeriod); + + $before = DateTime::createNow() + ->modify($period) + ->getString(); + + $delete = $this->entityManager + ->getQueryBuilder() + ->delete() + ->from('MassAction') + ->where([ + 'createdAt<' => $before, + ]) + ->build(); + + $this->entityManager->getQueryExecutor()->execute($delete); + } +} diff --git a/application/Espo/Resources/metadata/app/cleanup.json b/application/Espo/Resources/metadata/app/cleanup.json index e031a00925..3e9da79df6 100644 --- a/application/Espo/Resources/metadata/app/cleanup.json +++ b/application/Espo/Resources/metadata/app/cleanup.json @@ -9,5 +9,8 @@ }, "twoFactorCodes": { "className": "Espo\\Classes\\Cleanup\\TwoFactorCodes" + }, + "massActions": { + "className": "Espo\\Classes\\Cleanup\\MassActions" } }