Completed
Push — master ( 8b42e4...9e2162 )
by Joachim
12:37
created

PaymentRequest::populateFromRequest()   D

Complexity

Conditions 16
Paths 68

Size

Total Lines 89
Code Lines 77

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 89
rs 4.8736
cc 16
eloc 77
nc 68
nop 1

How to fix   Long Method    Complexity   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

1
<?php
2
3
namespace Loevgaard\Dandomain\Pay;
4
5
use Loevgaard\Dandomain\Pay\PaymentRequest\OrderLine;
6
use Psr\Http\Message\ServerRequestInterface;
7
8
class PaymentRequest
9
{
10
    /**
11
     * @var string
12
     */
13
    protected $apiKey;
14
15
    /**
16
     * @var string
17
     */
18
    protected $merchant;
19
20
    /**
21
     * @var int
22
     */
23
    protected $orderId;
24
25
    /**
26
     * @var string
27
     */
28
    protected $sessionId;
29
30
    /**
31
     * @var string
32
     */
33
    protected $currencySymbol;
34
35
    /**
36
     * @var float
37
     */
38
    protected $totalAmount;
39
40
    /**
41
     * @var string
42
     */
43
    protected $callBackUrl;
44
45
    /**
46
     * @var string
47
     */
48
    protected $fullCallBackOkUrl;
49
50
    /**
51
     * @var string
52
     */
53
    protected $callBackOkUrl;
54
55
    /**
56
     * @var string
57
     */
58
    protected $callBackServerUrl;
59
60
    /**
61
     * @var int
62
     */
63
    protected $languageId;
64
65
    /**
66
     * @var boolean
67
     */
68
    protected $testMode;
69
70
    /**
71
     * @var int
72
     */
73
    protected $paymentGatewayCurrencyCode;
74
75
    /**
76
     * @var int
77
     */
78
    protected $cardTypeId;
79
80
    /**
81
     * @var string
82
     */
83
    protected $customerRekvNr;
84
85
    /**
86
     * @var string
87
     */
88
    protected $customerName;
89
90
    /**
91
     * @var string
92
     */
93
    protected $customerCompany;
94
95
    /**
96
     * @var string
97
     */
98
    protected $customerAddress;
99
100
    /**
101
     * @var string
102
     */
103
    protected $customerAddress2;
104
105
    /**
106
     * @var string
107
     */
108
    protected $customerZipCode;
109
110
    /**
111
     * @var string
112
     */
113
    protected $customerCity;
114
115
    /**
116
     * @var int
117
     */
118
    protected $customerCountryId;
119
120
    /**
121
     * @var string
122
     */
123
    protected $customerCountry;
124
125
    /**
126
     * @var string
127
     */
128
    protected $customerPhone;
129
130
    /**
131
     * @var string
132
     */
133
    protected $customerFax;
134
135
    /**
136
     * @var string
137
     */
138
    protected $customerEmail;
139
140
    /**
141
     * @var string
142
     */
143
    protected $customerNote;
144
145
    /**
146
     * @var string
147
     */
148
    protected $customerCvrnr;
149
150
    /**
151
     * @var int
152
     */
153
    protected $customerCustTypeId;
154
155
    /**
156
     * @var string
157
     */
158
    protected $customerEan;
159
160
    /**
161
     * @var string
162
     */
163
    protected $customerRes1;
164
165
    /**
166
     * @var string
167
     */
168
    protected $customerRes2;
169
170
    /**
171
     * @var string
172
     */
173
    protected $customerRes3;
174
175
    /**
176
     * @var string
177
     */
178
    protected $customerRes4;
179
180
    /**
181
     * @var string
182
     */
183
    protected $customerRes5;
184
185
    /**
186
     * @var string
187
     */
188
    protected $customerIp;
189
190
    /**
191
     * @var string
192
     */
193
    protected $deliveryName;
194
195
    /**
196
     * @var string
197
     */
198
    protected $deliveryCompany;
199
200
    /**
201
     * @var string
202
     */
203
    protected $deliveryAddress;
204
205
    /**
206
     * @var string
207
     */
208
    protected $deliveryAddress2;
209
210
    /**
211
     * @var string
212
     */
213
    protected $deliveryZipCode;
214
215
    /**
216
     * @var string
217
     */
218
    protected $deliveryCity;
219
220
    /**
221
     * @var int
222
     */
223
    protected $deliveryCountryID;
224
225
    /**
226
     * @var string
227
     */
228
    protected $deliveryCountry;
229
230
    /**
231
     * @var string
232
     */
233
    protected $deliveryPhone;
234
235
    /**
236
     * @var string
237
     */
238
    protected $deliveryFax;
239
240
    /**
241
     * @var string
242
     */
243
    protected $deliveryEmail;
244
245
    /**
246
     * @var string
247
     */
248
    protected $deliveryEan;
249
250
    /**
251
     * @var string
252
     */
253
    protected $shippingMethod;
254
255
    /**
256
     * @var float
257
     */
258
    protected $shippingFee;
259
260
    /**
261
     * @var string
262
     */
263
    protected $paymentMethod;
264
265
    /**
266
     * @var float
267
     */
268
    protected $paymentFee;
269
270
    /**
271
     * @var string
272
     */
273
    protected $loadBalancerRealIp;
274
275
    /**
276
     * @var OrderLine[]
277
     */
278
    protected $orderLines;
279
280
    public function __construct()
281
    {
282
        $this->orderLines = [];
283
    }
284
285
    public function populateFromRequest(ServerRequestInterface $request)
286
    {
287
        $body = $request->getParsedBody();
288
        $body = is_array($body) ? $body : [];
289
290
        $this->setApiKey($body['APIkey'] ?? '');
291
        $this->setMerchant($body['APIMerchant'] ?? '');
292
        $this->setOrderId($body['APIOrderID'] ?? 0);
293
        $this->setSessionId($body['APISessionID'] ?? '');
294
        $this->setCurrencySymbol($body['APICurrencySymbol'] ?? '');
295
        $this->setTotalAmount(static::currencyStringToFloat($body['APITotalAmount'] ?? '0.00'));
296
        $this->setCallBackUrl($body['APICallBackUrl'] ?? '');
297
        $this->setFullCallBackOkUrl($body['APIFullCallBackOKUrl'] ?? '');
298
        $this->setCallBackOkUrl($body['APICallBackOKUrl'] ?? '');
299
        $this->setCallBackServerUrl($body['APICallBackServerUrl'] ?? '');
300
        $this->setLanguageId(isset($body['APILanguageID']) ? (int)$body['APILanguageID'] :  0);
301
        $this->setTestMode(isset($body['APITestMode']) && $body['APITestMode'] === 'True');
302
        $this->setPaymentGatewayCurrencyCode(
303
            isset($body['APIPayGatewayCurrCode']) ? (int)$body['APIPayGatewayCurrCode'] : 0
304
        );
305
        $this->setCardTypeId(isset($body['APICardTypeID']) ? (int)$body['APICardTypeID'] : 0);
306
        $this->setCustomerRekvNr($body['APICRekvNr'] ?? '');
307
        $this->setCustomerName($body['APICName'] ?? '');
308
        $this->setCustomerCompany($body['APICCompany'] ?? '');
309
        $this->setCustomerAddress($body['APICAddress'] ?? '');
310
        $this->setCustomerAddress2($body['APICAddress2'] ?? '');
311
        $this->setCustomerZipCode($body['APICZipCode'] ?? '');
312
        $this->setCustomerCity($body['APICCity'] ?? '');
313
        $this->setCustomerCountryId(isset($body['APICCountryID']) ? (int)$body['APICCountryID'] : 0);
314
        $this->setCustomerCountry($body['APICCountry'] ?? '');
315
        $this->setCustomerPhone($body['APICPhone'] ?? '');
316
        $this->setCustomerFax($body['APICFax'] ?? '');
317
        $this->setCustomerEmail($body['APICEmail'] ?? '');
318
        $this->setCustomerNote($body['APICNote'] ?? '');
319
        $this->setCustomerCvrnr($body['APICcvrnr'] ?? '');
320
        $this->setCustomerCustTypeId(isset($body['APICCustTypeID']) ? (int)$body['APICCustTypeID'] : 0);
321
        $this->setCustomerEan($body['APICEAN'] ?? '');
322
        $this->setCustomerRes1($body['APICres1'] ?? '');
323
        $this->setCustomerRes2($body['APICres2'] ?? '');
324
        $this->setCustomerRes3($body['APICres3'] ?? '');
325
        $this->setCustomerRes4($body['APICres4'] ?? '');
326
        $this->setCustomerRes5($body['APICres5'] ?? '');
327
        $this->setDeliveryName($body['APIDName'] ?? '');
328
        $this->setDeliveryCompany($body['APIDCompany'] ?? '');
329
        $this->setDeliveryAddress($body['APIDAddress'] ?? '');
330
        $this->setDeliveryAddress2($body['APIDAddress2'] ?? '');
331
        $this->setDeliveryZipCode($body['APIDZipCode'] ?? '');
332
        $this->setDeliveryCity($body['APIDCity'] ?? '');
333
        $this->setDeliveryCountryID(isset($body['APIDCountryID']) ? (int)$body['APIDCountryID'] : 0);
334
        $this->setDeliveryCountry($body['APIDCountry'] ?? '');
335
        $this->setDeliveryPhone($body['APIDPhone'] ?? '');
336
        $this->setDeliveryFax($body['APIDFax'] ?? '');
337
        $this->setDeliveryEmail($body['APIDEmail'] ?? '');
338
        $this->setDeliveryEan($body['APIDean'] ?? '');
339
        $this->setShippingMethod($body['APIShippingMethod'] ?? '');
340
        $this->setShippingFee(static::currencyStringToFloat($body['APIShippingFee'] ?? '0.00'));
341
        $this->setPaymentMethod($body['APIPayMethod'] ?? '');
342
        $this->setPaymentFee(static::currencyStringToFloat($body['APIPayFee'] ?? '0.00'));
343
        $this->setCustomerIp($body['APICIP'] ?? '');
344
        $this->setLoadBalancerRealIp($body['APILoadBalancerRealIP'] ?? '');
345
346
        // populate order lines
347
        $i = 1;
348
        while (true) {
349
            $exists = isset($body['APIBasketProdAmount'.$i]);
350
            if ($exists === false) {
351
                break;
352
            }
353
354
            $qty = isset($body['APIBasketProdAmount'.$i]) ? (int)$body['APIBasketProdAmount'.$i] : 0;
355
            $productNumber = isset($body['APIBasketProdNumber'.$i]) ? $body['APIBasketProdNumber'.$i] : '';
356
            $name = isset($body['APIBasketProdName'.$i]) ? $body['APIBasketProdName'.$i] : '';
357
            $price = isset($body['APIBasketProdPrice'.$i]) ?
358
                static::currencyStringToFloat($body['APIBasketProdPrice'.$i]) : 0.00;
359
            $vat = isset($body['APIBasketProdVAT'.$i]) ? (int)$body['APIBasketProdVAT'.$i] : 0;
360
361
            $orderLine = new OrderLine();
362
            $orderLine
363
                ->setQuantity($qty)
364
                ->setProductNumber($productNumber)
365
                ->setName($name)
366
                ->setPrice($price)
367
                ->setVat($vat)
368
            ;
369
            $this->addOrderLine($orderLine);
370
371
            $i++;
372
        }
373
    }
374
375
    /**
376
     * Takes strings like
377
     * - 1.000,50
378
     * - 1,000.50
379
     * - 1000.50
380
     * - 1000,50
381
     *
382
     * and returns 1000.50
383
     *
384
     * @param string $str
385
     * @return float
386
     */
387
    public static function currencyStringToFloat(string $str) : float
388
    {
389
        // verify format of string
390
        if (!preg_match('/(\.|,)[0-9]{2}$/', $str)) {
391
            throw new \InvalidArgumentException($str.' does not match the currency string format');
392
        }
393
        $str = preg_replace('/[^0-9]+/', '', $str);
394
        return intval($str) / 100;
395
    }
396
397
    /**
398
     * @return string
399
     */
400
    public function getApiKey() : string
401
    {
402
        return $this->apiKey;
403
    }
404
405
    /**
406
     * @param string $apiKey
407
     * @return PaymentRequest
408
     */
409
    public function setApiKey(string $apiKey) : self
410
    {
411
        $this->apiKey = $apiKey;
412
        return $this;
413
    }
414
415
    /**
416
     * @return string
417
     */
418
    public function getMerchant() : string
419
    {
420
        return $this->merchant;
421
    }
422
423
    /**
424
     * @param string $merchant
425
     * @return PaymentRequest
426
     */
427
    public function setMerchant(string $merchant) : self
428
    {
429
        $this->merchant = $merchant;
430
        return $this;
431
    }
432
433
    /**
434
     * @return int
435
     */
436
    public function getOrderId() : int
437
    {
438
        return $this->orderId;
439
    }
440
441
    /**
442
     * @param int $orderId
443
     * @return PaymentRequest
444
     */
445
    public function setOrderId(int $orderId) : self
446
    {
447
        $this->orderId = $orderId;
448
        return $this;
449
    }
450
451
    /**
452
     * @return string
453
     */
454
    public function getSessionId() : string
455
    {
456
        return $this->sessionId;
457
    }
458
459
    /**
460
     * @param string $sessionId
461
     * @return PaymentRequest
462
     */
463
    public function setSessionId(string $sessionId) : self
464
    {
465
        $this->sessionId = $sessionId;
466
        return $this;
467
    }
468
469
    /**
470
     * @return string
471
     */
472
    public function getCurrencySymbol() : string
473
    {
474
        return $this->currencySymbol;
475
    }
476
477
    /**
478
     * @param string $currencySymbol
479
     * @return PaymentRequest
480
     */
481
    public function setCurrencySymbol(string $currencySymbol) : self
482
    {
483
        $this->currencySymbol = $currencySymbol;
484
        return $this;
485
    }
486
487
    /**
488
     * @return float
489
     */
490
    public function getTotalAmount() : float
491
    {
492
        return $this->totalAmount;
493
    }
494
495
    /**
496
     * @param float $totalAmount
497
     * @return PaymentRequest
498
     */
499
    public function setTotalAmount(float $totalAmount) : self
500
    {
501
        $this->totalAmount = $totalAmount;
502
        return $this;
503
    }
504
505
    /**
506
     * @return string
507
     */
508
    public function getCallBackUrl() : string
509
    {
510
        return $this->callBackUrl;
511
    }
512
513
    /**
514
     * @param string $callBackUrl
515
     * @return PaymentRequest
516
     */
517
    public function setCallBackUrl(string $callBackUrl) : self
518
    {
519
        $this->callBackUrl = $callBackUrl;
520
        return $this;
521
    }
522
523
    /**
524
     * @return string
525
     */
526
    public function getFullCallBackOkUrl() : string
527
    {
528
        return $this->fullCallBackOkUrl;
529
    }
530
531
    /**
532
     * @param string $fullCallBackOkUrl
533
     * @return PaymentRequest
534
     */
535
    public function setFullCallBackOkUrl(string $fullCallBackOkUrl) : self
536
    {
537
        $this->fullCallBackOkUrl = $fullCallBackOkUrl;
538
        return $this;
539
    }
540
541
    /**
542
     * @return string
543
     */
544
    public function getCallBackOkUrl() : string
545
    {
546
        return $this->callBackOkUrl;
547
    }
548
549
    /**
550
     * @param string $callBackOkUrl
551
     * @return PaymentRequest
552
     */
553
    public function setCallBackOkUrl(string $callBackOkUrl) : self
554
    {
555
        $this->callBackOkUrl = $callBackOkUrl;
556
        return $this;
557
    }
558
559
    /**
560
     * @return string
561
     */
562
    public function getCallBackServerUrl() : string
563
    {
564
        return $this->callBackServerUrl;
565
    }
566
567
    /**
568
     * @param string $callBackServerUrl
569
     * @return PaymentRequest
570
     */
571
    public function setCallBackServerUrl(string $callBackServerUrl) : self
572
    {
573
        $this->callBackServerUrl = $callBackServerUrl;
574
        return $this;
575
    }
576
577
    /**
578
     * @return int
579
     */
580
    public function getLanguageId() : int
581
    {
582
        return $this->languageId;
583
    }
584
585
    /**
586
     * @param int $languageId
587
     * @return PaymentRequest
588
     */
589
    public function setLanguageId(int $languageId) : self
590
    {
591
        $this->languageId = $languageId;
592
        return $this;
593
    }
594
595
    /**
596
     * @return bool
597
     */
598
    public function isTestMode(): bool
599
    {
600
        return $this->testMode;
601
    }
602
603
    /**
604
     * @param bool $testMode
605
     * @return PaymentRequest
606
     */
607
    public function setTestMode(bool $testMode) : self
608
    {
609
        $this->testMode = $testMode;
610
        return $this;
611
    }
612
613
    /**
614
     * @return int
615
     */
616
    public function getPaymentGatewayCurrencyCode()
617
    {
618
        return $this->paymentGatewayCurrencyCode;
619
    }
620
621
    /**
622
     * @param int $paymentGatewayCurrencyCode
623
     * @return PaymentRequest
624
     */
625
    public function setPaymentGatewayCurrencyCode(int $paymentGatewayCurrencyCode) : self
626
    {
627
        $this->paymentGatewayCurrencyCode = $paymentGatewayCurrencyCode;
628
        return $this;
629
    }
630
631
    /**
632
     * @return int
633
     */
634
    public function getCardTypeId()
635
    {
636
        return $this->cardTypeId;
637
    }
638
639
    /**
640
     * @param int $cardTypeId
641
     * @return PaymentRequest
642
     */
643
    public function setCardTypeId(int $cardTypeId) : self
644
    {
645
        $this->cardTypeId = $cardTypeId;
646
        return $this;
647
    }
648
649
    /**
650
     * @return string
651
     */
652
    public function getCustomerRekvNr() : string
653
    {
654
        return $this->customerRekvNr;
655
    }
656
657
    /**
658
     * @param string $customerRekvNr
659
     * @return PaymentRequest
660
     */
661
    public function setCustomerRekvNr(string $customerRekvNr) : self
662
    {
663
        $this->customerRekvNr = $customerRekvNr;
664
        return $this;
665
    }
666
667
    /**
668
     * @return string
669
     */
670
    public function getCustomerName() : string
671
    {
672
        return $this->customerName;
673
    }
674
675
    /**
676
     * @param string $customerName
677
     * @return PaymentRequest
678
     */
679
    public function setCustomerName(string $customerName) : self
680
    {
681
        $this->customerName = $customerName;
682
        return $this;
683
    }
684
685
    /**
686
     * @return string
687
     */
688
    public function getCustomerCompany() : string
689
    {
690
        return $this->customerCompany;
691
    }
692
693
    /**
694
     * @param string $customerCompany
695
     * @return PaymentRequest
696
     */
697
    public function setCustomerCompany(string $customerCompany) : self
698
    {
699
        $this->customerCompany = $customerCompany;
700
        return $this;
701
    }
702
703
    /**
704
     * @return string
705
     */
706
    public function getCustomerAddress() : string
707
    {
708
        return $this->customerAddress;
709
    }
710
711
    /**
712
     * @param string $customerAddress
713
     * @return PaymentRequest
714
     */
715
    public function setCustomerAddress(string $customerAddress) : self
716
    {
717
        $this->customerAddress = $customerAddress;
718
        return $this;
719
    }
720
721
    /**
722
     * @return string
723
     */
724
    public function getCustomerAddress2() : string
725
    {
726
        return $this->customerAddress2;
727
    }
728
729
    /**
730
     * @param string $customerAddress2
731
     * @return PaymentRequest
732
     */
733
    public function setCustomerAddress2(string $customerAddress2) : self
734
    {
735
        $this->customerAddress2 = $customerAddress2;
736
        return $this;
737
    }
738
739
    /**
740
     * @return string
741
     */
742
    public function getCustomerZipCode() : string
743
    {
744
        return $this->customerZipCode;
745
    }
746
747
    /**
748
     * @param string $customerZipCode
749
     * @return PaymentRequest
750
     */
751
    public function setCustomerZipCode(string $customerZipCode) : self
752
    {
753
        $this->customerZipCode = $customerZipCode;
754
        return $this;
755
    }
756
757
    /**
758
     * @return string
759
     */
760
    public function getCustomerCity() : string
761
    {
762
        return $this->customerCity;
763
    }
764
765
    /**
766
     * @param string $customerCity
767
     * @return PaymentRequest
768
     */
769
    public function setCustomerCity(string $customerCity) : self
770
    {
771
        $this->customerCity = $customerCity;
772
        return $this;
773
    }
774
775
    /**
776
     * @return int
777
     */
778
    public function getCustomerCountryId()
779
    {
780
        return $this->customerCountryId;
781
    }
782
783
    /**
784
     * @param int $customerCountryId
785
     * @return PaymentRequest
786
     */
787
    public function setCustomerCountryId(int $customerCountryId) : self
788
    {
789
        $this->customerCountryId = $customerCountryId;
790
        return $this;
791
    }
792
793
    /**
794
     * @return string
795
     */
796
    public function getCustomerCountry() : string
797
    {
798
        return $this->customerCountry;
799
    }
800
801
    /**
802
     * @param string $customerCountry
803
     * @return PaymentRequest
804
     */
805
    public function setCustomerCountry(string $customerCountry) : self
806
    {
807
        $this->customerCountry = $customerCountry;
808
        return $this;
809
    }
810
811
    /**
812
     * @return string
813
     */
814
    public function getCustomerPhone() : string
815
    {
816
        return $this->customerPhone;
817
    }
818
819
    /**
820
     * @param string $customerPhone
821
     * @return PaymentRequest
822
     */
823
    public function setCustomerPhone(string $customerPhone) : self
824
    {
825
        $this->customerPhone = $customerPhone;
826
        return $this;
827
    }
828
829
    /**
830
     * @return string
831
     */
832
    public function getCustomerFax() : string
833
    {
834
        return $this->customerFax;
835
    }
836
837
    /**
838
     * @param string $customerFax
839
     * @return PaymentRequest
840
     */
841
    public function setCustomerFax(string $customerFax) : self
842
    {
843
        $this->customerFax = $customerFax;
844
        return $this;
845
    }
846
847
    /**
848
     * @return string
849
     */
850
    public function getCustomerEmail() : string
851
    {
852
        return $this->customerEmail;
853
    }
854
855
    /**
856
     * @param string $customerEmail
857
     * @return PaymentRequest
858
     */
859
    public function setCustomerEmail(string $customerEmail) : self
860
    {
861
        $this->customerEmail = $customerEmail;
862
        return $this;
863
    }
864
865
    /**
866
     * @return string
867
     */
868
    public function getCustomerNote() : string
869
    {
870
        return $this->customerNote;
871
    }
872
873
    /**
874
     * @param string $customerNote
875
     * @return PaymentRequest
876
     */
877
    public function setCustomerNote(string $customerNote) : self
878
    {
879
        $this->customerNote = $customerNote;
880
        return $this;
881
    }
882
883
    /**
884
     * @return string
885
     */
886
    public function getCustomerCvrnr() : string
887
    {
888
        return $this->customerCvrnr;
889
    }
890
891
    /**
892
     * @param string $customerCvrnr
893
     * @return PaymentRequest
894
     */
895
    public function setCustomerCvrnr(string $customerCvrnr) : self
896
    {
897
        $this->customerCvrnr = $customerCvrnr;
898
        return $this;
899
    }
900
901
    /**
902
     * @return int
903
     */
904
    public function getCustomerCustTypeId() : int
905
    {
906
        return $this->customerCustTypeId;
907
    }
908
909
    /**
910
     * @param int $customerCustTypeId
911
     * @return PaymentRequest
912
     */
913
    public function setCustomerCustTypeId(int $customerCustTypeId) : self
914
    {
915
        $this->customerCustTypeId = $customerCustTypeId;
916
        return $this;
917
    }
918
919
    /**
920
     * @return string
921
     */
922
    public function getCustomerEan() : string
923
    {
924
        return $this->customerEan;
925
    }
926
927
    /**
928
     * @param string $customerEan
929
     * @return PaymentRequest
930
     */
931
    public function setCustomerEan(string $customerEan) : self
932
    {
933
        $this->customerEan = $customerEan;
934
        return $this;
935
    }
936
937
    /**
938
     * @return string
939
     */
940
    public function getCustomerRes1() : string
941
    {
942
        return $this->customerRes1;
943
    }
944
945
    /**
946
     * @param string $customerRes1
947
     * @return PaymentRequest
948
     */
949
    public function setCustomerRes1(string $customerRes1) : self
950
    {
951
        $this->customerRes1 = $customerRes1;
952
        return $this;
953
    }
954
955
    /**
956
     * @return string
957
     */
958
    public function getCustomerRes2() : string
959
    {
960
        return $this->customerRes2;
961
    }
962
963
    /**
964
     * @param string $customerRes2
965
     * @return PaymentRequest
966
     */
967
    public function setCustomerRes2(string $customerRes2) : self
968
    {
969
        $this->customerRes2 = $customerRes2;
970
        return $this;
971
    }
972
973
    /**
974
     * @return string
975
     */
976
    public function getCustomerRes3() : string
977
    {
978
        return $this->customerRes3;
979
    }
980
981
    /**
982
     * @param string $customerRes3
983
     * @return PaymentRequest
984
     */
985
    public function setCustomerRes3(string $customerRes3) : self
986
    {
987
        $this->customerRes3 = $customerRes3;
988
        return $this;
989
    }
990
991
    /**
992
     * @return string
993
     */
994
    public function getCustomerRes4() : string
995
    {
996
        return $this->customerRes4;
997
    }
998
999
    /**
1000
     * @param string $customerRes4
1001
     * @return PaymentRequest
1002
     */
1003
    public function setCustomerRes4(string $customerRes4) : self
1004
    {
1005
        $this->customerRes4 = $customerRes4;
1006
        return $this;
1007
    }
1008
1009
    /**
1010
     * @return string
1011
     */
1012
    public function getCustomerRes5() : string
1013
    {
1014
        return $this->customerRes5;
1015
    }
1016
1017
    /**
1018
     * @param string $customerRes5
1019
     * @return PaymentRequest
1020
     */
1021
    public function setCustomerRes5(string $customerRes5) : self
1022
    {
1023
        $this->customerRes5 = $customerRes5;
1024
        return $this;
1025
    }
1026
1027
    /**
1028
     * @return string
1029
     */
1030
    public function getCustomerIp() : string
1031
    {
1032
        return $this->customerIp;
1033
    }
1034
1035
    /**
1036
     * @param string $customerIp
1037
     * @return PaymentRequest
1038
     */
1039
    public function setCustomerIp(string $customerIp) : self
1040
    {
1041
        $this->customerIp = $customerIp;
1042
        return $this;
1043
    }
1044
1045
    /**
1046
     * @return string
1047
     */
1048
    public function getDeliveryName() : string
1049
    {
1050
        return $this->deliveryName;
1051
    }
1052
1053
    /**
1054
     * @param string $deliveryName
1055
     * @return PaymentRequest
1056
     */
1057
    public function setDeliveryName(string $deliveryName) : self
1058
    {
1059
        $this->deliveryName = $deliveryName;
1060
        return $this;
1061
    }
1062
1063
    /**
1064
     * @return string
1065
     */
1066
    public function getDeliveryCompany() : string
1067
    {
1068
        return $this->deliveryCompany;
1069
    }
1070
1071
    /**
1072
     * @param string $deliveryCompany
1073
     * @return PaymentRequest
1074
     */
1075
    public function setDeliveryCompany(string $deliveryCompany) : self
1076
    {
1077
        $this->deliveryCompany = $deliveryCompany;
1078
        return $this;
1079
    }
1080
1081
    /**
1082
     * @return string
1083
     */
1084
    public function getDeliveryAddress() : string
1085
    {
1086
        return $this->deliveryAddress;
1087
    }
1088
1089
    /**
1090
     * @param string $deliveryAddress
1091
     * @return PaymentRequest
1092
     */
1093
    public function setDeliveryAddress(string $deliveryAddress) : self
1094
    {
1095
        $this->deliveryAddress = $deliveryAddress;
1096
        return $this;
1097
    }
1098
1099
    /**
1100
     * @return string
1101
     */
1102
    public function getDeliveryAddress2() : string
1103
    {
1104
        return $this->deliveryAddress2;
1105
    }
1106
1107
    /**
1108
     * @param string $deliveryAddress2
1109
     * @return PaymentRequest
1110
     */
1111
    public function setDeliveryAddress2(string $deliveryAddress2) : self
1112
    {
1113
        $this->deliveryAddress2 = $deliveryAddress2;
1114
        return $this;
1115
    }
1116
1117
    /**
1118
     * @return string
1119
     */
1120
    public function getDeliveryZipCode() : string
1121
    {
1122
        return $this->deliveryZipCode;
1123
    }
1124
1125
    /**
1126
     * @param string $deliveryZipCode
1127
     * @return PaymentRequest
1128
     */
1129
    public function setDeliveryZipCode(string $deliveryZipCode) : self
1130
    {
1131
        $this->deliveryZipCode = $deliveryZipCode;
1132
        return $this;
1133
    }
1134
1135
    /**
1136
     * @return string
1137
     */
1138
    public function getDeliveryCity() : string
1139
    {
1140
        return $this->deliveryCity;
1141
    }
1142
1143
    /**
1144
     * @param string $deliveryCity
1145
     * @return PaymentRequest
1146
     */
1147
    public function setDeliveryCity(string $deliveryCity) : self
1148
    {
1149
        $this->deliveryCity = $deliveryCity;
1150
        return $this;
1151
    }
1152
1153
    /**
1154
     * @return int
1155
     */
1156
    public function getDeliveryCountryID()
1157
    {
1158
        return $this->deliveryCountryID;
1159
    }
1160
1161
    /**
1162
     * @param int $deliveryCountryID
1163
     * @return PaymentRequest
1164
     */
1165
    public function setDeliveryCountryID(int $deliveryCountryID) : self
1166
    {
1167
        $this->deliveryCountryID = $deliveryCountryID;
1168
        return $this;
1169
    }
1170
1171
    /**
1172
     * @return string
1173
     */
1174
    public function getDeliveryCountry() : string
1175
    {
1176
        return $this->deliveryCountry;
1177
    }
1178
1179
    /**
1180
     * @param string $deliveryCountry
1181
     * @return PaymentRequest
1182
     */
1183
    public function setDeliveryCountry(string $deliveryCountry) : self
1184
    {
1185
        $this->deliveryCountry = $deliveryCountry;
1186
        return $this;
1187
    }
1188
1189
    /**
1190
     * @return string
1191
     */
1192
    public function getDeliveryPhone() : string
1193
    {
1194
        return $this->deliveryPhone;
1195
    }
1196
1197
    /**
1198
     * @param string $deliveryPhone
1199
     * @return PaymentRequest
1200
     */
1201
    public function setDeliveryPhone(string $deliveryPhone) : self
1202
    {
1203
        $this->deliveryPhone = $deliveryPhone;
1204
        return $this;
1205
    }
1206
1207
    /**
1208
     * @return string
1209
     */
1210
    public function getDeliveryFax() : string
1211
    {
1212
        return $this->deliveryFax;
1213
    }
1214
1215
    /**
1216
     * @param string $deliveryFax
1217
     * @return PaymentRequest
1218
     */
1219
    public function setDeliveryFax(string $deliveryFax) : self
1220
    {
1221
        $this->deliveryFax = $deliveryFax;
1222
        return $this;
1223
    }
1224
1225
    /**
1226
     * @return string
1227
     */
1228
    public function getDeliveryEmail() : string
1229
    {
1230
        return $this->deliveryEmail;
1231
    }
1232
1233
    /**
1234
     * @param string $deliveryEmail
1235
     * @return PaymentRequest
1236
     */
1237
    public function setDeliveryEmail(string $deliveryEmail) : self
1238
    {
1239
        $this->deliveryEmail = $deliveryEmail;
1240
        return $this;
1241
    }
1242
1243
    /**
1244
     * @return string
1245
     */
1246
    public function getDeliveryEan() : string
1247
    {
1248
        return $this->deliveryEan;
1249
    }
1250
1251
    /**
1252
     * @param string $deliveryEan
1253
     * @return PaymentRequest
1254
     */
1255
    public function setDeliveryEan(string $deliveryEan) : self
1256
    {
1257
        $this->deliveryEan = $deliveryEan;
1258
        return $this;
1259
    }
1260
1261
    /**
1262
     * @return string
1263
     */
1264
    public function getShippingMethod() : string
1265
    {
1266
        return $this->shippingMethod;
1267
    }
1268
1269
    /**
1270
     * @param string $shippingMethod
1271
     * @return PaymentRequest
1272
     */
1273
    public function setShippingMethod(string $shippingMethod) : self
1274
    {
1275
        $this->shippingMethod = $shippingMethod;
1276
        return $this;
1277
    }
1278
1279
    /**
1280
     * @return float
1281
     */
1282
    public function getShippingFee() : float
1283
    {
1284
        return $this->shippingFee;
1285
    }
1286
1287
    /**
1288
     * @param float $shippingFee
1289
     * @return PaymentRequest
1290
     */
1291
    public function setShippingFee(float $shippingFee) : self
1292
    {
1293
        $this->shippingFee = $shippingFee;
1294
        return $this;
1295
    }
1296
1297
    /**
1298
     * @return string
1299
     */
1300
    public function getPaymentMethod() : string
1301
    {
1302
        return $this->paymentMethod;
1303
    }
1304
1305
    /**
1306
     * @param string $paymentMethod
1307
     * @return PaymentRequest
1308
     */
1309
    public function setPaymentMethod(string $paymentMethod) : self
1310
    {
1311
        $this->paymentMethod = $paymentMethod;
1312
        return $this;
1313
    }
1314
1315
    /**
1316
     * @return float
1317
     */
1318
    public function getPaymentFee() : float
1319
    {
1320
        return $this->paymentFee;
1321
    }
1322
1323
    /**
1324
     * @param float $paymentFee
1325
     * @return PaymentRequest
1326
     */
1327
    public function setPaymentFee(float $paymentFee) : self
1328
    {
1329
        $this->paymentFee = $paymentFee;
1330
        return $this;
1331
    }
1332
1333
    /**
1334
     * @return string
1335
     */
1336
    public function getLoadBalancerRealIp() : string
1337
    {
1338
        return $this->loadBalancerRealIp;
1339
    }
1340
1341
    /**
1342
     * @param string $loadBalancerRealIp
1343
     * @return PaymentRequest
1344
     */
1345
    public function setLoadBalancerRealIp(string $loadBalancerRealIp) : self
1346
    {
1347
        $this->loadBalancerRealIp = $loadBalancerRealIp;
1348
        return $this;
1349
    }
1350
1351
    /**
1352
     * @return OrderLine[]
1353
     */
1354
    public function getOrderLines() : array
1355
    {
1356
        return $this->orderLines;
1357
    }
1358
1359
    /**
1360
     * @param OrderLine[] $orderLines
1361
     * @return PaymentRequest
1362
     */
1363
    public function setOrderLines(array $orderLines) : self
1364
    {
1365
        $this->orderLines = $orderLines;
1366
        return $this;
1367
    }
1368
1369
    /**
1370
     * @param OrderLine $orderLine
1371
     * @return PaymentRequest
1372
     */
1373
    public function addOrderLine(OrderLine $orderLine) : self
1374
    {
1375
        $this->orderLines[] = $orderLine;
1376
        return $this;
1377
    }
1378
}
1379