PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 2.4
Booking for Appointments and Events Calendar – Amelia v2.4
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 / Controller / Payment / AddPaymentController.php
ameliabooking / src / Application / Controller / Payment Last commit date
AddPaymentController.php 6 months ago CalculatePaymentAmountController.php 2 years ago DeletePaymentController.php 6 months ago GetPaymentController.php 6 months ago GetPaymentsController.php 6 months ago UpdatePaymentController.php 6 months ago
AddPaymentController.php
70 lines
1 <?php
2
3 /**
4 * @copyright © Melograno Ventures. All rights reserved.
5 * @licence See LICENCE.md for license details.
6 */
7
8 namespace AmeliaBooking\Application\Controller\Payment;
9
10 use AmeliaBooking\Application\Commands\Payment\AddPaymentCommand;
11 use AmeliaBooking\Application\Commands\CommandResult;
12 use AmeliaBooking\Application\Controller\Controller;
13 use AmeliaBooking\Domain\Events\DomainEventBus;
14 use Slim\Http\Request;
15
16 /**
17 * Class AddPaymentController
18 *
19 * @package AmeliaBooking\Application\Controller\Payment
20 */
21 class AddPaymentController extends Controller
22 {
23 /**
24 * @var array
25 */
26 protected $allowedFields = [
27 'customerBookingId',
28 'dateTime',
29 'status',
30 'gateway',
31 'gatewayTitle',
32 'data',
33 'packageCustomerId',
34 'amount',
35 'entity',
36 'actionsCompleted',
37 'wcOrderId',
38 'transactionId'
39 ];
40
41 /**
42 * Instantiates the Add Payment command to hand it over to the Command Handler
43 *
44 * @param Request $request
45 * @param $args
46 *
47 * @return AddPaymentCommand
48 * @throws \RuntimeException
49 */
50 protected function instantiateCommand(Request $request, $args)
51 {
52 $command = new AddPaymentCommand($args);
53 $requestBody = $request->getParsedBody();
54 $this->setCommandFields($command, $requestBody);
55
56 return $command;
57 }
58
59 /**
60 * @param DomainEventBus $eventBus
61 * @param CommandResult $result
62 *
63 * @return void
64 */
65 protected function emitSuccessEvent(DomainEventBus $eventBus, CommandResult $result)
66 {
67 $eventBus->emit('payment.added', $result);
68 }
69 }
70