From 1fd14fc932e241de938b28e1e0d6ff48bd8235a1 Mon Sep 17 00:00:00 2001 From: Mihail Date: Fri, 6 Nov 2015 15:12:18 +0200 Subject: [PATCH] fixed errors with parsing --- backend/controllers/ParserController.php | 1 + backend/controllers/RgGrupController.php | 12 ++++++------ backend/models/Details.php | 4 +--- backend/models/ImportersPrefix.php | 5 +++++ backend/models/UploadFileCrossingForm.php | 4 ++-- backend/models/UploadFileParsingForm.php | 3 ++- backend/views/rg-grup/index.php | 1 - common/components/parsers/CustomCsvParser.php | 21 ++------------------- console/config/main.php | 4 ++-- console/controllers/ParserController.php | 12 ++++++++---- 10 files changed, 29 insertions(+), 38 deletions(-) diff --git a/backend/controllers/ParserController.php b/backend/controllers/ParserController.php index c1dd09c..8fef224 100644 --- a/backend/controllers/ParserController.php +++ b/backend/controllers/ParserController.php @@ -291,4 +291,5 @@ class ParserController extends BaseController } + } diff --git a/backend/controllers/RgGrupController.php b/backend/controllers/RgGrupController.php index 3b15494..eb09621 100644 --- a/backend/controllers/RgGrupController.php +++ b/backend/controllers/RgGrupController.php @@ -193,11 +193,11 @@ class RgGrupController extends BaseController } - public function actionMail() - { - $mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'tsurkanovm@gmail.com', 'Wtvr@2000'); - //$mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'price@italauto.com.ua', '67853562'); - $mail_saver->saveAttachmentsTo(); - } +// public function actionMail() +// { +// $mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'tsurkanovm@gmail.com', 'Wtvr@2000'); +// //$mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'price@italauto.com.ua', '67853562'); +// $mail_saver->saveAttachmentsTo(); +// } } diff --git a/backend/models/Details.php b/backend/models/Details.php index 3e37ab7..d2c040a 100644 --- a/backend/models/Details.php +++ b/backend/models/Details.php @@ -132,9 +132,7 @@ class Details extends BaseActiveRecord //воспользуемся пакетной вставкой от фреймворка $query_insert = Yii::$app->db->createCommand()->batchInsert($table_name, $keys_arr, $current_batch_array)->sql; - if ($this->delete_prefix) { - $query_insert = $this->prepareArticul( $query_insert ); - } + // добавим фрагмент с апдейтом при дубляже $query = "{$query_insert} {$query_update}"; // \common\components\CustomVarDamp::dumpAndDie($query); diff --git a/backend/models/ImportersPrefix.php b/backend/models/ImportersPrefix.php index 7436416..f997e4c 100644 --- a/backend/models/ImportersPrefix.php +++ b/backend/models/ImportersPrefix.php @@ -17,6 +17,11 @@ use backend\models\Importers; class ImportersPrefix extends \backend\components\base\BaseActiveRecord { + public static function tableName() + { + return 'w_importers_prefix'; + } + /** * @inheritdoc */ diff --git a/backend/models/UploadFileCrossingForm.php b/backend/models/UploadFileCrossingForm.php index 6c4239c..b2077e5 100644 --- a/backend/models/UploadFileCrossingForm.php +++ b/backend/models/UploadFileCrossingForm.php @@ -49,8 +49,8 @@ class UploadFileCrossingForm extends Model throw new ErrorException("Ошибка чтения из файла кроссов {$this->file_path}"); } // файл больше не нужен - данные прочитаны и сохранены в кеш - if( file_exists($this->file_path) ) - unlink($this->file_path); +// if( file_exists($this->file_path) ) +// unlink($this->file_path); return $data; } diff --git a/backend/models/UploadFileParsingForm.php b/backend/models/UploadFileParsingForm.php index f0a58d2..e433ef0 100644 --- a/backend/models/UploadFileParsingForm.php +++ b/backend/models/UploadFileParsingForm.php @@ -78,7 +78,7 @@ class UploadFileParsingForm extends Model // файл больше не нужен - данные прочитаны и сохранены в кеш if( file_exists($this->file_path) ) //@ todo - перестало работать - нет доступа на удалениев этом сеансе, в следующем - файл удаляется - разобраться - //unlink( $this->file_path ); + // unlink( $this->file_path ); return $data; @@ -99,4 +99,5 @@ class UploadFileParsingForm extends Model } + } \ No newline at end of file diff --git a/backend/views/rg-grup/index.php b/backend/views/rg-grup/index.php index 09c4ac8..47addb0 100644 --- a/backend/views/rg-grup/index.php +++ b/backend/views/rg-grup/index.php @@ -29,6 +29,5 @@ $button_label = 'Прочитать'; - 'btn btn-primary', 'name' => 'Mail',]) ?> diff --git a/common/components/parsers/CustomCsvParser.php b/common/components/parsers/CustomCsvParser.php index 2f352a1..e5f185b 100644 --- a/common/components/parsers/CustomCsvParser.php +++ b/common/components/parsers/CustomCsvParser.php @@ -8,29 +8,12 @@ namespace common\components\parsers; - -use common\components\CustomVarDamp; - -use yii\base\ErrorException; - - class CustomCsvParser extends \yii\multiparser\CsvParser { - public $last_line = 10; + // public $last_line = 10; //public $hasHeaderRow = true; // public $keys = ['first','second', 'third', 'forth', 'fifth']; -// public function setupConverter() -// { -// if (!count($this->converter_conf)) { -// if ($this->hasHeaderRow) { -// // если у файла есть заголовок, то в результате имеем ассоциативный массив -// $this->converter_conf['hasKey'] = 1; -// -// } -// -// } -//// $this->converter = \Yii::createObject( $this->converter_conf ); -// } + diff --git a/console/config/main.php b/console/config/main.php index 3060c92..5107867 100644 --- a/console/config/main.php +++ b/console/config/main.php @@ -22,13 +22,13 @@ return [ 'class' => 'yii\log\FileTarget', 'logFile' => __DIR__ . '/../runtime/logs/parser.log', 'levels' => ['info', 'error'], - 'categories' => ['yii\base\ErrorException:*', 'parser'], + 'categories' => ['parser'], 'logVars' => [], ], [ 'class' => 'yii\log\FileTarget', 'logFile' => __DIR__ . '/../runtime/logs/mail.log', - 'levels' => ['info', 'error'], + 'levels' => ['info', 'error', 'warning'], 'categories' => ['yii\base\ErrorException:*', 'mail'], 'logVars' => [], ], diff --git a/console/controllers/ParserController.php b/console/controllers/ParserController.php index c45e410..30035be 100644 --- a/console/controllers/ParserController.php +++ b/console/controllers/ParserController.php @@ -133,19 +133,23 @@ class ParserController extends Controller $mail_reader = new ImapMailReader( '{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'tsurkanovm@gmail.com', 'Wtvr@2000' ); // 1. получим все вложения + \Yii::info('Начало сохранения файлов почты', 'mail'); $files = $this->getMailAttachments( $mail_reader, $importer_id_prefix ); - // 2. если в вложениях есть архивы - распакуем их и дополним итоговый массив - $this->UnpackFiles( $files ); - if ( !$files ) { // нет файлов в ящиках (не было вложений в письмах) - \Yii::info('Вложений не найдено', 'mail'); + \Yii::warning('Вложений не найдено', 'mail'); return; } + // 2. если в вложениях есть архивы - распакуем их и дополним итоговый массив + \Yii::info('Запуск распаковки архивов...', 'mail'); + $this->UnpackFiles( $files ); + + // 3. переименуем, зарегистрируем прайсы и перенесем извлеченные файлы // укажем папку куда нужно перенести все извлеченные вложения + \Yii::info('Запуск перемещения и регистрации прайсов...', 'mail'); $new_destination = \Yii::getAlias('@auto_upload') . '/'; $this->registerAndReplaceFiles( $files, $new_destination ); -- libgit2 0.21.4