Issues (104)

Model/SubSellerCollection.php (1 issue)

Labels
Severity
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
The method getTrade() does not exist on Getnet\SubSellerMagento\...Data\SubSellerInterface. Since it exists in all sub-types, consider adding an abstract or default implementation to Getnet\SubSellerMagento\...Data\SubSellerInterface. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

97
        $collectionItem->setTrade($subSeller->/** @scrutinizer ignore-call */ getTrade());
Loading history...
98
        $collectionItem->setStatus($subSeller->getStatus());
99
        $collectionItem->setStatusComment($subSeller->getStatusComment());
100
101
        return $collectionItem;
102
    }
103
}
104