Skip to content

Commit 7cc51dc

Browse files
committed
Merge branch 'YP-1269__nulle_email_bugfix' into 'main'
YP 1269 null email fix See merge request ypmn-public/php-api-client!7
2 parents 2556cc6 + a452ad7 commit 7cc51dc

6 files changed

+51
-48
lines changed

src/Billing.php

+14-13
Original file line numberDiff line numberDiff line change
@@ -13,38 +13,38 @@ class Billing implements BillingInterface
1313
/** @var ?string Фамилия */
1414
private string $lastName;
1515

16-
/** @var string Email */
17-
private string $email;
16+
/** @var ?string Email */
17+
private ?string $email = null;
1818

1919
/** @var ?string Номер телефона */
20-
private ?string $phone;
20+
private ?string $phone = null;
2121

2222
/** @var ?string Код Страны */
23-
private ?string $countryCode;
23+
private ?string $countryCode = null;
2424

2525
/** @var ?string Город */
26-
private ?string $city;
26+
private ?string $city = null;
2727

2828
/** @var ?string Регион */
29-
private ?string $state;
29+
private ?string $state = null;
3030

3131
/** @var ?string Название Компании */
32-
private ?string $companyName;
32+
private ?string $companyName = null;
3333

3434
/** @var ?string Налоговый Идентификатор */
35-
private ?string $taxId;
35+
private ?string $taxId = null;
3636

3737
/** @var ?string Первая строка адреса */
38-
private ?string $addressLine1;
38+
private ?string $addressLine1 = null;
3939

4040
/** @var ?string Вторая строка адреса */
41-
private ?string $addressLine2;
41+
private ?string $addressLine2 = null;
4242

4343
/** @var ?string Почтовый индекс */
44-
private ?string $zipCode;
44+
private ?string $zipCode = null;
4545

4646
/** @var ?IdentityDocumentInterface удостоверение личности */
47-
private ?IdentityDocumentInterface $identityDocument;
47+
private ?IdentityDocumentInterface $identityDocument = null;
4848

4949
/** @inheritDoc */
5050
public function getFirstName(): string
@@ -73,14 +73,15 @@ public function setLastName(string $lastName): self
7373
}
7474

7575
/** @inheritDoc */
76-
public function getEmail(): string
76+
public function getEmail(): ?string
7777
{
7878
return $this->email;
7979
}
8080

8181
/** @inheritDoc */
8282
public function setEmail(string $email): self
8383
{
84+
8485
$this->email = $email;
8586
return $this;
8687
}

src/BillingInterface.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ public function setEmail(string $email) : self;
3939

4040
/**
4141
* Получить Email
42-
* @return string
42+
* @return ?string
4343
*/
44-
public function getEmail() : string;
44+
public function getEmail() : ?string;
4545

4646
/**
4747
* Установить Номер Телефона

src/Delivery.php

+31-26
Original file line numberDiff line numberDiff line change
@@ -11,41 +11,41 @@
1111
*/
1212
class Delivery implements DeliveryInterface
1313
{
14-
/** @var string Имя */
15-
private string $firstName;
14+
/** @var ?string Имя */
15+
private ?string $firstName = null;
1616

17-
/** @var string Фамилия */
18-
private string $lastName;
17+
/** @var ?string Фамилия */
18+
private ?string $lastName = null;
1919

20-
/** @var string Email */
21-
private string $email;
20+
/** @var ?string Email */
21+
private ?string $email = null;
2222

23-
/** @var string Номер телефона */
24-
private string $phone;
23+
/** @var ?string Номер телефона */
24+
private ?string $phone = null;
2525

26-
/** @var string Код Страны */
27-
private string $countryCode;
26+
/** @var ?string Код Страны */
27+
private ?string $countryCode = null;
2828

29-
/** @var string Регион */
30-
private string $state;
29+
/** @var ?string Регион */
30+
private ?string $state = null;
3131

32-
/** @var string Город */
33-
private string $city;
32+
/** @var ?string Город */
33+
private ?string $city = null;
3434

35-
/** @var string Адрес - Первая Строка */
36-
private string $addressLine1;
35+
/** @var ?string Адрес - Первая Строка */
36+
private ?string $addressLine1 = null;
3737

38-
/** @var string Адрес - Вторая Строка */
39-
private string $addressLine2;
38+
/** @var ?string Адрес - Вторая Строка */
39+
private ?string $addressLine2 = null;
4040

41-
/** @var string Почтовый Индекс */
42-
private string $zipCode;
41+
/** @var ?string Почтовый Индекс */
42+
private ?string $zipCode = null;
4343

44-
/** @var string Наименование Компании */
45-
private string $companyName;
44+
/** @var ?string Наименование Компании */
45+
private ?string $companyName = null;
4646

47-
/** @var IdentityDocumentInterface Удостоверение Личности */
48-
private IdentityDocumentInterface $identityDocument;
47+
/** @var ?IdentityDocumentInterface Удостоверение Личности */
48+
private ?IdentityDocumentInterface $identityDocument = null;
4949

5050
/** @inheritDoc */
5151
public function getFirstName(): ?string
@@ -80,9 +80,14 @@ public function getEmail(): ?string
8080
}
8181

8282
/** @inheritDoc */
83-
public function setEmail(string $email): self
83+
public function setEmail(?string $email): self
8484
{
85-
$this->email = $email;
85+
if (empty($email)) {
86+
$this->email = null;
87+
} else {
88+
$this->email = $email;
89+
}
90+
8691
return $this;
8792
}
8893

src/DeliveryInterface.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,10 @@ public function getLastName() : ?string;
3232

3333
/**
3434
* Установить Email Получателя
35-
* @param string $email Email Получателя
35+
* @param ?string $email Email Получателя
3636
* @return $this
3737
*/
38-
public function setEmail(string $email) : self;
38+
public function setEmail(?string $email) : self;
3939

4040
/**
4141
* Получить Email Получателя

src/Examples/simpleGetPaymentLink.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
$billing->setFirstName('Иван');
3737
// Установим Фамилия Плательщика
3838
$billing->setLastName('Петров');
39-
// Установим Email Плательщика
39+
// Установим Email Плательщика (необязательно)
4040
$billing->setEmail('test1@ypmn.ru');
4141
// Установим Телефон Плательщика
4242
$billing->setPhone('+7-800-555-35-35');

src/PaymentException.php

+1-4
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,7 @@ class PaymentException extends \Exception
77
/** @var string Подробности для логирования */
88
private string $logText;
99

10-
/**
11-
* Ошибка в формате Bootstrap
12-
* @return string текст ошибки
13-
*/
10+
/** @return string Ошибка в формате Bootstrap */
1411
public function getHtmlMessage(): string
1512
{
1613
return '

0 commit comments

Comments
 (0)