Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Customer.php
Go to the documentation of this file.
1 <?php
8 
12 
16 class Customer extends \Magento\Eav\Model\Entity\Attribute\Source\AbstractSource
17 {
22 
27 
31  protected $filterBuilder;
32 
40  public function __construct(
43  \Magento\Framework\Api\FilterBuilder $filterBuilder
44  ) {
45  $this->taxClassRepository = $taxClassRepository;
46  $this->searchCriteriaBuilder = $searchCriteriaBuilder;
47  $this->filterBuilder = $filterBuilder;
48  }
49 
56  public function getAllOptions()
57  {
58  if (empty($this->_options)) {
59  $options = [];
60  $filter = $this->filterBuilder->setField(ClassModel::KEY_TYPE)
62  ->create();
63  $searchCriteria = $this->searchCriteriaBuilder->addFilters([$filter])->create();
64  $searchResults = $this->taxClassRepository->getList($searchCriteria);
65  foreach ($searchResults->getItems() as $taxClass) {
66  $options[] = [
67  'value' => $taxClass->getClassId(),
68  'label' => $taxClass->getClassName(),
69  ];
70  }
71  $this->_options = $options;
72  }
73 
74  return $this->_options;
75  }
76 }
__construct(\Magento\Tax\Api\TaxClassRepositoryInterface $taxClassRepository, \Magento\Framework\Api\SearchCriteriaBuilder $searchCriteriaBuilder, \Magento\Framework\Api\FilterBuilder $filterBuilder)
Definition: Customer.php:40
$searchCriteria