Исправление ошибок для импорта из 1С
This commit is contained in:
parent
b50049eb67
commit
874d5c3f55
|
@ -134,7 +134,7 @@ class Notification extends Document
|
|||
*/
|
||||
public function write(): self|array|null
|
||||
{
|
||||
return $this::_write($this->text, $this->html, $this->account, $this->type);
|
||||
return $this::_write($this->text, $this->html, $this->account ?? null, $this->type);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -442,7 +442,7 @@ class Product extends Document
|
|||
$date = date('H:i d.m.Y', time());
|
||||
|
||||
// Настройка
|
||||
$model->text = yii::$app->controller->renderPartial('/notification/system/afterImportExcel', compact('amount', 'date'));
|
||||
$model->text = yii::$app->controller->renderPartial('@app/views/notification/system/afterImportExcel', compact('amount', 'date'));
|
||||
$model->type = $model::TYPE_NOTICE;
|
||||
|
||||
// Отправка
|
||||
|
@ -451,8 +451,6 @@ class Product extends Document
|
|||
|
||||
/**
|
||||
* Вызывается после загрузки поставок из 1С
|
||||
*
|
||||
* @param int $amount Количество
|
||||
*/
|
||||
public static function afterImport1c(): bool
|
||||
{
|
||||
|
@ -461,7 +459,7 @@ class Product extends Document
|
|||
$date = date('H:i d.m.Y', time());
|
||||
|
||||
// Настройка
|
||||
$model->text = yii::$app->controller->renderPartial('/notification/system/afterImport1c', compact('amount', 'date'));
|
||||
$model->text = yii::$app->controller->renderPartial('@app/views/notification/system/afterImport1c', compact('date'));
|
||||
$model->type = $model::TYPE_NOTICE;
|
||||
|
||||
// Отправка
|
||||
|
|
|
@ -213,8 +213,8 @@ class Supply extends Product implements ProductInterface
|
|||
// if ($property['Ид'] === $account->opts['import_sections_oem']) {
|
||||
// // Если идентификатор свойства совпадает с указанным в настройках свойства хранящего OEM номера
|
||||
|
||||
// Настройка
|
||||
$model->catn = $property['Значение'];
|
||||
// Настройка
|
||||
$model->catn = $property['Значение'];
|
||||
// }
|
||||
}
|
||||
}
|
||||
|
@ -275,7 +275,7 @@ class Supply extends Product implements ProductInterface
|
|||
$this->imgs ?? [],
|
||||
[
|
||||
[
|
||||
'desc' => $caption,
|
||||
'dscr' => $caption,
|
||||
'path' => $path_local,
|
||||
'sorc' => $path
|
||||
]
|
||||
|
@ -301,55 +301,62 @@ class Supply extends Product implements ProductInterface
|
|||
return new SupplyEdgeProduct;
|
||||
}
|
||||
|
||||
// Создание продукта (временно заблокировано)
|
||||
if (
|
||||
!yii::$app->user->isGuest
|
||||
&& yii::$app->user->identity->agnt
|
||||
&& (yii::$app->user->identity->type === 'administrator'
|
||||
|| yii::$app->user->identity->type === 'moderator')
|
||||
) {
|
||||
// Пользователь аутентифицирован и авторизован
|
||||
|
||||
// // Инициализация п̸̨͇͑͋͠р̷̬̂́̀̊о̸̜̯̹̅͒͘͝д̴̨̨̨̟̈́̆у̴̨̭̮̠́͋̈́к̴̭͊̋̎т̵̛̣͈̔̐͆а̵̨͖͑
|
||||
// $product = self::initEmpty($this->catn);
|
||||
// Инициализация п̸̨͇͑͋͠р̷̬̂́̀̊о̸̜̯̹̅͒͘͝д̴̨̨̨̟̈́̆у̴̨̭̮̠́͋̈́к̴̭͊̋̎т̵̛̣͈̔̐͆а̵̨͖͑
|
||||
$product = self::initEmpty($this->catn);
|
||||
|
||||
// if (!is_array($product)) {
|
||||
// // Создался только один товар и вернулся в виде модели
|
||||
if (!is_array($product)) {
|
||||
// Создался только один товар и вернулся в виде модели
|
||||
|
||||
// $product = [$product];
|
||||
// }
|
||||
$product = [$product];
|
||||
}
|
||||
|
||||
// if (is_array($this->oemn)) {
|
||||
// // Значение OEM было инициализировано
|
||||
if (is_array($this->oemn)) {
|
||||
// Значение OEM было инициализировано
|
||||
|
||||
// foreach ($this->oemn as $oem) {
|
||||
// // Перебор артикулов из массива ОЕМ-номеров
|
||||
foreach ($this->oemn as $oem) {
|
||||
// Перебор артикулов из массива ОЕМ-номеров
|
||||
|
||||
// // Инициализация и запись
|
||||
// $product[] = self::initEmpty($oem);
|
||||
// }
|
||||
// }
|
||||
// Инициализация и запись
|
||||
$product[] = self::initEmpty($oem);
|
||||
}
|
||||
}
|
||||
|
||||
// foreach ($product as $product) {
|
||||
// // Перебор всех инициализированных продуктов
|
||||
foreach ($product as $product) {
|
||||
// Перебор всех инициализированных продуктов
|
||||
|
||||
// if ($this->catn !== $product->catn) {
|
||||
// // Каталожные номера не соответствуют друг другу
|
||||
if ($this->catn !== $product->catn) {
|
||||
// Каталожные номера не соответствуют друг другу
|
||||
|
||||
// continue;
|
||||
// }
|
||||
continue;
|
||||
}
|
||||
|
||||
// // Код ниже скорее всего устарел
|
||||
// Код ниже скорее всего устарел
|
||||
|
||||
// if (SupplyEdgeProduct::searchByVertex($this->readId(), $product->readId())) {
|
||||
// // Ребро уже существует
|
||||
if (SupplyEdgeProduct::searchByVertex($this->readId(), $product->readId())) {
|
||||
// Ребро уже существует
|
||||
|
||||
// continue;
|
||||
// }
|
||||
continue;
|
||||
}
|
||||
|
||||
// // Запись ребра: ПОСТАВКА -> ПРОДУКТ
|
||||
// $return = (new SupplyEdgeProduct)->write(
|
||||
// $this->readId(),
|
||||
// $product->readId(),
|
||||
// 'connect',
|
||||
// [
|
||||
// 'onec' => self::xml2array($offer->xml)
|
||||
// ]
|
||||
// );
|
||||
// }
|
||||
// Запись ребра: ПОСТАВКА -> ПРОДУКТ
|
||||
$return = (new SupplyEdgeProduct)->write(
|
||||
$this->readId(),
|
||||
$product->readId(),
|
||||
'connect',
|
||||
[
|
||||
'onec' => self::xml2array($offer->xml)
|
||||
]
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// Возвращает последнее сохранённое ребро
|
||||
// Надо будет с этим разобраться
|
||||
|
@ -373,7 +380,7 @@ class Supply extends Product implements ProductInterface
|
|||
// Настройка
|
||||
$model->ocid = $id ?? null;
|
||||
$model->catn = (string) $product->Артикул;
|
||||
$model->desc = (string) $product->Описание;
|
||||
$model->dscr = (string) $product->Описание;
|
||||
$model->onec = self::xml2array($product->xml);
|
||||
|
||||
if (isset($model->onec['ЗначенияСвойств'])) {
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
<?php
|
||||
|
||||
// NOTE: Make sure this file is not accessible when deployed to production
|
||||
if (!in_array(@$_SERVER['REMOTE_ADDR'], ['127.0.0.1', '::1'])) {
|
||||
die('You are not allowed to access this file.');
|
||||
}
|
||||
// if (!in_array(@$_SERVER['REMOTE_ADDR'], ['127.0.0.1', '::1'])) {
|
||||
// die('You are not allowed to access this file.');
|
||||
// }
|
||||
|
||||
defined('YII_DEBUG') or define('YII_DEBUG', true);
|
||||
defined('YII_ENV') or define('YII_ENV', 'test');
|
||||
|
|
Reference in New Issue