-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtry-transfer-generator.php
73 lines (59 loc) · 2.44 KB
/
try-transfer-generator.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?php
declare(strict_types=1);
use Picamator\Doc\Samples\TransferObject\Enum\CountryEnum;
use Picamator\Doc\Samples\TransferObject\Generated\TransferGenerator\AgentTransfer;
use Picamator\Doc\Samples\TransferObject\Generated\TransferGenerator\CustomerTransfer;
use Picamator\Doc\Samples\TransferObject\Generated\TransferGenerator\MerchantTransfer;
use Picamator\TransferObject\TransferGenerator\TransferGeneratorFacade;
require_once __DIR__ . '/../../vendor/autoload.php';
echo <<<'STORY'
==============================================================
Generate Transfer Objects
with notice
for demonstration exception handling was skipped
==============================================================
STORY;
$configPath = __DIR__ . '/config/transfer-generator/generator.config.yml';
new TransferGeneratorFacade()->generateTransfersOrFail($configPath);
echo <<<'STORY'
======================================================
Try newly Generated Transfer Objects
======================================================
STORY;
$customerTransfer = new CustomerTransfer();
$customerTransfer->firstName = 'Jan';
$customerTransfer->lastName = 'Kowalski';
foreach ($customerTransfer as $key => $value) {
echo "key: $key, value: $value\n";
}
echo "CustomerTransfer properties count: {$customerTransfer->count()}\n}.";
$merchantTransfer = new MerchantTransfer();
$merchantTransfer->merchantReference = 'PL-234-567';
$merchantTransfer->country = CountryEnum::PL;
$merchantTransfer->isActive = true;
var_dump($merchantTransfer->toArray());
echo <<<'STORY'
======================================================
Try how fromArray() works
======================================================
STORY;
$agentTransfer = new AgentTransfer()
->fromArray([
AgentTransfer::CUSTOMER => [
CustomerTransfer::FIRST_NAME => 'Max',
CustomerTransfer::LAST_NAME => 'Mustermann',
],
AgentTransfer::MERCHANTS => [
[
MerchantTransfer::COUNTRY => 'DE',
MerchantTransfer::MERCHANT_REFERENCE => 'DE-234-567',
MerchantTransfer::IS_ACTIVE => false,
], [
MerchantTransfer::COUNTRY => 'PL',
MerchantTransfer::MERCHANT_REFERENCE => 'PL-774-444',
MerchantTransfer::IS_ACTIVE => true,
],
],
'uuid' => '123-123-123-123',
]);
var_dump($agentTransfer->toArray());