Skip to content

Commit ddf3c62

Browse files
Merge pull request #6097 from magento-performance/MC-37193
[Performance] Fix B2B performance toolkit profile generation on cloud
2 parents 05fce8b + 7fd2c34 commit ddf3c62

File tree

1 file changed

+28
-2
lines changed

1 file changed

+28
-2
lines changed

setup/src/Magento/Setup/Model/FixtureGenerator/CustomerTemplateGenerator.php

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@
1010
use Magento\Customer\Model\AddressFactory;
1111
use Magento\Customer\Model\Customer;
1212
use Magento\Customer\Model\CustomerFactory;
13+
use Magento\Directory\Model\ResourceModel\Region\CollectionFactory as RegionCollectionFactory;
14+
use Magento\Framework\App\ObjectManager;
1315
use Magento\Store\Model\StoreManagerInterface;
1416

1517
/**
@@ -32,19 +34,29 @@ class CustomerTemplateGenerator implements TemplateEntityGeneratorInterface
3234
*/
3335
private $storeManager;
3436

37+
/**
38+
* @var RegionCollectionFactory
39+
*/
40+
private $regionsCollectionFactory;
41+
3542
/**
3643
* @param CustomerFactory $customerFactory
3744
* @param AddressFactory $addressFactory
3845
* @param StoreManagerInterface $storeManager
46+
* @param RegionCollectionFactory|null $regionsCollectionFactory
3947
*/
4048
public function __construct(
4149
CustomerFactory $customerFactory,
4250
AddressFactory $addressFactory,
43-
StoreManagerInterface $storeManager
51+
StoreManagerInterface $storeManager,
52+
RegionCollectionFactory $regionsCollectionFactory = null
4453
) {
4554
$this->customerFactory = $customerFactory;
4655
$this->addressFactory = $addressFactory;
4756
$this->storeManager = $storeManager;
57+
$this->regionsCollectionFactory = $regionsCollectionFactory ?: ObjectManager::getInstance()->get(
58+
RegionCollectionFactory::class
59+
);
4860
}
4961

5062
/**
@@ -119,7 +131,7 @@ private function getAddressTemplate($customerId)
119131
'street' => 'Green str, 67',
120132
'lastname' => 'Smith',
121133
'firstname' => 'John',
122-
'region_id' => 1,
134+
'region_id' => $this->getFirstRegionId(),
123135
'fax' => '04040404',
124136
'middlename' => '',
125137
'prefix' => '',
@@ -131,4 +143,18 @@ private function getAddressTemplate($customerId)
131143
]
132144
]);
133145
}
146+
147+
/**
148+
* Get first region id.
149+
*
150+
* @return mixed
151+
*/
152+
private function getFirstRegionId()
153+
{
154+
$regionsCollection = $this->regionsCollectionFactory->create();
155+
$regionsCollection->unshiftOrder('region_id', 'ASC');
156+
$region = $regionsCollection->getFirstItem();
157+
158+
return $region->getRegionId();
159+
}
134160
}

0 commit comments

Comments
 (0)