$productsRaw = Products1c::find()
->where(['in', 'parent_id', $subQuery])
+ ->limit(10)
->all();
$marketplaceService = new MarketplaceService();
$products = [];
foreach ($productsRaw as $product) {
- $check = $marketplaceService->checkProducts($product);
+ $check = $marketplaceService->checkProducts($product, true);
$products[] = [
'id' => $product->id,
'name' => $product->name,
];
}
-
$dataProvider = new ArrayDataProvider([
'allModels' => $products,
'pagination' => ['pageSize' => 20],
return $result;
}
-
- public function checkProducts($product): array|false {
+
+ public function checkProducts($product, $isView = false): array|false
+ {
$properties = MarketplaceService::getProductPropertiesByGuid($product->id);
if (!$properties) {
- $message = "Товар с GUID {$product->id} не имеет свойств в MatrixErpProperty и был исключен из фида.";
- Yii::error($message, __METHOD__);
- InfoLogService::setInfoLog(__FILE__, __LINE__, $message, 'Missing properties error');
+ if ($isView) {
+ $message = "Товар с GUID {$product->id} не имеет свойств в MatrixErpProperty и был исключен из фида.";
+ Yii::error($message, __METHOD__);
+ InfoLogService::setInfoLog(__FILE__, __LINE__, $message, 'Missing properties error');
+ }
return false;
}
$price = MarketplaceService::getProductPrice($product->id);
if ($price == 0) {
- $message = "У товара {$product->id} отсутствует цена и он будет исключен из фида.";
- Yii::error($message, __METHOD__);
- InfoLogService::setInfoLog(__FILE__, __LINE__, $message, 'Zero price error');
+ if ($isView) {
+ $message = "У товара {$product->id} отсутствует цена и он будет исключен из фида.";
+ Yii::error($message, __METHOD__);
+ InfoLogService::setInfoLog(__FILE__, __LINE__, $message, 'Zero price error');
+ }
return false;
}