本文整理汇总了PHP中Magento\Catalog\Model\Product::setOrigData方法的典型用法代码示例。如果您正苦于以下问题:PHP Product::setOrigData方法的具体用法?PHP Product::setOrigData怎么用?PHP Product::setOrigData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Catalog\Model\Product
的用法示例。
在下文中一共展示了Product::setOrigData方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testGetIdentities
/**
* @dataProvider getIdentitiesProvider
* @param array $expected
* @param array $origData
* @param array $data
* @param bool $isDeleted
*/
public function testGetIdentities($expected, $origData, $data, $isDeleted = false)
{
$this->model->setIdFieldName('id');
if (is_array($origData)) {
foreach ($origData as $key => $value) {
$this->model->setOrigData($key, $value);
}
}
$this->model->setData($data);
$this->model->isDeleted($isDeleted);
$this->assertEquals($expected, $this->model->getIdentities());
}
示例2: testReset
/**
* @magentoAppArea frontend
*/
public function testReset()
{
$model = $this->_model;
$this->_assertEmpty($model);
$this->_model->setData('key', 'value');
$this->_model->reset();
$this->_assertEmpty($model);
$this->_model->setOrigData('key', 'value');
$this->_model->reset();
$this->_assertEmpty($model);
$this->_model->addCustomOption('key', 'value');
$this->_model->reset();
$this->_assertEmpty($model);
$this->_model->canAffectOptions(true);
$this->_model->reset();
$this->_assertEmpty($model);
}
示例3: testReset
/**
* @magentoAppArea frontend
*/
public function testReset()
{
$model = $this->_model;
$this->_assertEmpty($model);
$this->_model->setData('key', 'value');
$this->_model->reset();
$this->_assertEmpty($model);
$this->_model->setOrigData('key', 'value');
$this->_model->reset();
$this->_assertEmpty($model);
$this->_model->addCustomOption('key', 'value');
$this->_model->reset();
$this->_assertEmpty($model);
$this->_model->addOption(\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\\Catalog\\Model\\Product\\Option'));
$this->_model->reset();
$this->_assertEmpty($model);
$this->_model->canAffectOptions(true);
$this->_model->reset();
$this->_assertEmpty($model);
}
示例4: afterLoad
/**
* Assign group prices to product data
*
* @param \Magento\Catalog\Model\Product $object
* @return $this
*/
public function afterLoad($object)
{
$storeId = $object->getStoreId();
$websiteId = null;
if ($this->getAttribute()->isScopeGlobal()) {
$websiteId = 0;
} else {
if ($storeId) {
$websiteId = $this->_storeManager->getStore($storeId)->getWebsiteId();
}
}
$data = $this->_getResource()->loadPriceData($object->getId(), $websiteId);
foreach ($data as $k => $v) {
$data[$k]['website_price'] = $v['price'];
if ($v['all_groups']) {
$data[$k]['cust_group'] = CustomerGroupServiceInterface::CUST_GROUP_ALL;
}
}
if (!$object->getData('_edit_mode') && $websiteId) {
$data = $this->preparePriceData($data, $object->getTypeId(), $websiteId);
}
$object->setData($this->getAttribute()->getName(), $data);
$object->setOrigData($this->getAttribute()->getName(), $data);
$valueChangedKey = $this->getAttribute()->getName() . '_changed';
$object->setOrigData($valueChangedKey, 0);
$object->setData($valueChangedKey, 0);
return $this;
}
示例5: afterLoad
/**
* Assign group prices to product data
*
* @param \Magento\Catalog\Model\Product $object
* @return $this
*/
public function afterLoad($object)
{
$storeId = $object->getStoreId();
$websiteId = null;
if ($this->getAttribute()->isScopeGlobal()) {
$websiteId = 0;
} elseif ($storeId) {
$websiteId = $this->_storeManager->getStore($storeId)->getWebsiteId();
}
$data = $this->_getResource()->loadPriceData($object->getData($this->metadataPool->getMetadata(ProductInterface::class)->getLinkField()), $websiteId);
foreach ($data as $k => $v) {
$data[$k]['website_price'] = $v['price'];
if ($v['all_groups']) {
$data[$k]['cust_group'] = $this->_groupManagement->getAllCustomersGroup()->getId();
}
}
if (!$object->getData('_edit_mode') && $websiteId) {
$data = $this->preparePriceData($data, $object->getTypeId(), $websiteId);
}
$object->setData($this->getAttribute()->getName(), $data);
$object->setOrigData($this->getAttribute()->getName(), $data);
$valueChangedKey = $this->getAttribute()->getName() . '_changed';
$object->setOrigData($valueChangedKey, 0);
$object->setData($valueChangedKey, 0);
return $this;
}
示例6: setOrigData
/**
* {@inheritdoc}
*/
public function setOrigData($key = null, $data = null)
{
$pluginInfo = $this->pluginList->getNext($this->subjectType, 'setOrigData');
if (!$pluginInfo) {
return parent::setOrigData($key, $data);
} else {
return $this->___callPlugins('setOrigData', func_get_args(), $pluginInfo);
}
}