1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
restrictionpersontypetrait.php
См. документацию.
1<?php
2
3namespace Bitrix\Sale\Services\PaySystem\Restrictions;
4
5use Bitrix\Sale\BusinessValue;
6use Bitrix\Sale\PersonType;
7use Bitrix\Sale\Services\Base\RestrictionInfo;
8use Bitrix\Sale\Services\Base\RestrictionInfoCollection;
9
10trait RestrictionPersonTypeTrait
11{
12 protected function getRestrictionEntityPersonType(RestrictionInfoCollection $collection): void
13 {
14 $this->getDomainRestrictions($collection, BusinessValue::ENTITY_DOMAIN);
15 }
16
17 protected function getRestrictionIndividualPersonType(RestrictionInfoCollection $collection): void
18 {
19 $this->getDomainRestrictions($collection, BusinessValue::INDIVIDUAL_DOMAIN);
20 }
21
22 private function getDomainRestrictions(RestrictionInfoCollection $collection, string $domain): void
23 {
24 $personTypes = PersonType::getIdsByDomain($domain);
25 if (!empty($personTypes))
26 {
27 $personTypeRestrictionContainer = new RestrictionInfo(
28 'PersonType',
29 [
30 'PERSON_TYPE_ID' => $personTypes,
31 ]
32 );
33
34 $collection->add($personTypeRestrictionContainer);
35 }
36 }
37}
const INDIVIDUAL_DOMAIN
Определения businessvalue.php:17
const ENTITY_DOMAIN
Определения businessvalue.php:16
static getIdsByDomain(string $domain)
Определения persontype.php:207