-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathLinkPaymentCreateRequest.php
More file actions
63 lines (58 loc) · 2.25 KB
/
LinkPaymentCreateRequest.php
File metadata and controls
63 lines (58 loc) · 2.25 KB
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
<?php
class LinkPaymentCreateRequest extends BaseRequest
{
// LinkPayment create servisi body parametreleri
private $name;
private $surname;
private $tcCertificate;
private $taxNumber;
private $email;
private $gsm;
private $amount;
private $threeD;
private $expireDate;
private $installmentList;
private $sendEmail;
private $commissionType;
private $clientIp;
public function __construct($requestData)
{
$this->name = $requestData['name'];
$this->surname = $requestData['surname'];
$this->tcCertificate = $requestData['tcCertificate'];
$this->taxNumber = $requestData['taxNumber'];
$this->email = $requestData['email'];
$this->gsm = $requestData['gsm'];
$this->amount = $requestData['amount'];
$this->threeD = $requestData['threeD'];
$this->expireDate = $requestData['expireDate'];
$this->installmentList = $requestData['installmentList'];
$this->sendEmail = $requestData['sendEmail'];
$this->commissionType = $requestData['commissionType'];
$this->clientIp = Helper::get_client_ip();
}
public function execute(Settings $settings)
{
$settings->transactionDate = Helper::GetTransactionDateString();
$settings->HashString = $settings->PrivateKey . $this->name . $this->surname . $this->email . $this->amount . $this->clientIp . $settings->transactionDate;
return restHttpCaller::post($settings->BaseUrl . "/corporate/merchant/linkpayment/create", Helper::GetHttpHeaders($settings, "application/json"), $this->toJsonString());
}
public function toJsonString()
{
return json_encode([
"name" => $this->name,
"surname" => $this->surname,
"tcCertificate" => $this->tcCertificate,
"taxNumber" => $this->taxNumber,
"email" => $this->email,
"gsm" => $this->gsm,
"amount" => $this->amount,
"threeD" => $this->threeD,
"expireDate" => $this->expireDate,
"installmentList" => $this->installmentList,
"sendEmail" => $this->sendEmail,
"commissionType" => $this->commissionType,
"clientIp" => $this->clientIp
]);
}
}