PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4.8
Booking for Appointments and Events Calendar – Amelia v2.4.8
2.4.9 2.4.8 2.4.7 2.4.6 2.4.5 2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Application / Commands / Settings / ProcessImportDataTransferCommandHandler.php
ameliabooking / src / Application / Commands / Settings Last commit date
FeaturesIntegrations 1 week ago ExportDataTransferCommand.php 1 month ago ExportDataTransferCommandHandler.php 1 month ago GetSettingsCommand.php 1 year ago GetSettingsCommandHandler.php 1 week ago ProcessImportDataTransferCommand.php 1 month ago ProcessImportDataTransferCommandHandler.php 1 month ago StartImportDataTransferCommand.php 1 month ago StartImportDataTransferCommandHandler.php 1 month ago UpdateSettingsCategoriesCommand.php 7 months ago UpdateSettingsCategoriesCommandHandler.php 1 week ago UpdateSettingsCommand.php 1 year ago UpdateSettingsCommandHandler.php 1 week ago
ProcessImportDataTransferCommandHandler.php
38 lines
1 <?php
2
3 namespace AmeliaBooking\Application\Commands\Settings;
4
5 use AmeliaBooking\Application\Commands\CommandHandler;
6 use AmeliaBooking\Application\Commands\CommandResult;
7 use AmeliaBooking\Application\Common\Exceptions\AccessDeniedException;
8 use AmeliaBooking\Domain\Entity\Entities;
9 use AmeliaBooking\Infrastructure\Services\DataTransfer\DataTransferService;
10
11 class ProcessImportDataTransferCommandHandler extends CommandHandler
12 {
13 protected $mandatoryFields = [
14 'jobId',
15 ];
16
17 public function handle(ProcessImportDataTransferCommand $command): CommandResult
18 {
19 if (!$command->getPermissionService()->currentUserCanWrite(Entities::SETTINGS)) {
20 throw new AccessDeniedException('You are not allowed to import Amelia settings and data.');
21 }
22
23 $this->checkMandatoryFields($command);
24
25 /** @var DataTransferService $dataTransferService */
26 $dataTransferService = $this->container->get('infrastructure.dataTransfer.service');
27
28 $result = new CommandResult();
29 $result->setResult(CommandResult::RESULT_SUCCESS);
30 $result->setMessage('Successfully processed the Amelia import step.');
31 $result->setData([
32 'importData' => $dataTransferService->processImportJob($command->getField('jobId'))
33 ]);
34
35 return $result;
36 }
37 }
38