- Модуль: catalog
- Путь к файлу: ~/bitrix/modules/catalog/lib/document/action/barcode/addstorebarcodeaction.php
- Класс: BitrixCatalogDocumentActionBarcodeAddStoreBarcodeAction
- Вызов: AddStoreBarcodeAction::execute
public function execute(): Result
{
$result = new Result();
$row = $this->getBarcodeRow();
if ($row)
{
if ($this->storeId === (int)$row['STORE_ID'])
{
// no changes - no action
return $result;
}
$id = CCatalogStoreBarCode::Update($row['ID'], [
'STORE_ID' => $this->storeId,
'MODIFIED_BY' => $this->userId,
]);
}
else
{
$id = CCatalogStoreBarCode::add([
'PRODUCT_ID' => $this->productId,
'STORE_ID' => $this->storeId,
'BARCODE' => $this->barcode,
'MODIFIED_BY' => $this->userId,
'CREATED_BY' => $this->userId,
]);
}
if (!$id)
{
$result->addError(new Error('Can't save barcode'));
}
return $result;
}