1 | <?php |
||
2 | /** |
||
3 | * Copyright © Getnet. All rights reserved. |
||
4 | * |
||
5 | * @author Bruno Elisei <[email protected]> |
||
6 | * See LICENSE for license details. |
||
7 | */ |
||
8 | |||
9 | declare(strict_types=1); |
||
10 | |||
11 | namespace Getnet\SubSellerMagento\Model; |
||
12 | |||
13 | use Getnet\SubSellerMagento\Api\Data\SubSellerInterface as SubSeller; |
||
14 | use Getnet\SubSellerMagento\Api\SubSellerRepositoryInterface; |
||
15 | use Magento\Framework\Api\AbstractServiceCollection; |
||
16 | use Magento\Framework\Api\FilterBuilder; |
||
17 | use Magento\Framework\Api\SearchCriteriaBuilder; |
||
18 | use Magento\Framework\Api\SortOrderBuilder; |
||
19 | use Magento\Framework\Data\Collection\EntityFactory; |
||
20 | |||
21 | /** |
||
22 | * Sub Seller collection for a grid backed by Services. |
||
23 | */ |
||
24 | class SubSellerCollection extends AbstractServiceCollection |
||
25 | { |
||
26 | /** |
||
27 | * @var SubSellerRepositoryInterface |
||
28 | */ |
||
29 | protected $subSellerRepository; |
||
30 | |||
31 | /** |
||
32 | * Initialize dependencies. |
||
33 | * |
||
34 | * @param EntityFactory $entityFactory |
||
35 | * @param FilterBuilder $filterBuilder |
||
36 | * @param SearchCriteriaBuilder $searchCriteriaBuilder |
||
37 | * @param SortOrderBuilder $sortOrderBuilder |
||
38 | * @param SubSellerRepositoryInterface $subSellerService |
||
39 | */ |
||
40 | public function __construct( |
||
41 | EntityFactory $entityFactory, |
||
42 | FilterBuilder $filterBuilder, |
||
43 | SearchCriteriaBuilder $searchCriteriaBuilder, |
||
44 | SortOrderBuilder $sortOrderBuilder, |
||
45 | SubSellerRepositoryInterface $subSellerService |
||
46 | ) { |
||
47 | parent::__construct($entityFactory, $filterBuilder, $searchCriteriaBuilder, $sortOrderBuilder); |
||
48 | $this->subSellerRepository = $subSellerService; |
||
49 | } |
||
50 | |||
51 | /** |
||
52 | * @inheritdoc |
||
53 | */ |
||
54 | public function loadData($printQuery = false, $logQuery = false) |
||
55 | { |
||
56 | if (!$this->isLoaded()) { |
||
57 | $searchCriteria = $this->getSearchCriteria(); |
||
58 | $searchResults = $this->subSellerRepository->getList($searchCriteria); |
||
59 | $this->_totalRecords = $searchResults->getTotalCount(); |
||
60 | foreach ($searchResults->getItems() as $subSeller) { |
||
61 | $this->_addItem($this->createSubSellerCollectionItem($subSeller)); |
||
62 | } |
||
63 | $this->_setIsLoaded(); |
||
64 | } |
||
65 | |||
66 | return $this; |
||
67 | } |
||
68 | |||
69 | /** |
||
70 | * Creates a subseller's collection item. |
||
71 | * |
||
72 | * @param SubSeller $subSeller Input data for creating the item. |
||
73 | * |
||
74 | * @return \Magento\Framework\DataObject Collection item a sub seller |
||
75 | */ |
||
76 | protected function createSubSellerCollectionItem(SubSeller $subSeller) |
||
77 | { |
||
78 | $collectionItem = new \Magento\Framework\DataObject(); |
||
79 | $collectionItem->setSubSellerId($subSeller->getId()); |
||
80 | $collectionItem->setMerchantId($subSeller->getMerchantId()); |
||
81 | $collectionItem->setCode($subSeller->getCode()); |
||
82 | $collectionItem->setIdExt($subSeller->getIdExt()); |
||
83 | $collectionItem->setEmail($subSeller->getEmail()); |
||
84 | $collectionItem->setLegalDocumentNumber($subSeller->getLegalDocumentNumber()); |
||
85 | $collectionItem->setType($subSeller->getType()); |
||
86 | $collectionItem->setLegalName($subSeller->getLegalName()); |
||
87 | $collectionItem->setBirthDate($subSeller->getBirthDate()); |
||
88 | $collectionItem->setAddresses($subSeller->getAddresses()); |
||
89 | $collectionItem->setTelephone($subSeller->getTelephone()); |
||
90 | $collectionItem->setBankAccounts($subSeller->getBankAccounts()); |
||
91 | $collectionItem->setPaymentPlan($subSeller->getPaymentPlan()); |
||
92 | $collectionItem->setAcceptedContract($subSeller->getAcceptedContract()); |
||
93 | $collectionItem->setMarketplaceStore($subSeller->getMarketplaceStore()); |
||
94 | $collectionItem->setOccupation($subSeller->getOccupation()); |
||
95 | $collectionItem->setMonthlyGrossIncome($subSeller->getMonthlyGrossIncome()); |
||
96 | $collectionItem->setGrossEquity($subSeller->getGrossEquity()); |
||
97 | $collectionItem->setTrade($subSeller->getTrade()); |
||
0 ignored issues
–
show
Bug
introduced
by
![]() |
|||
98 | $collectionItem->setStatus($subSeller->getStatus()); |
||
99 | $collectionItem->setStatusComment($subSeller->getStatusComment()); |
||
100 | |||
101 | return $collectionItem; |
||
102 | } |
||
103 | } |
||
104 |