Commit 1fd14fc932e241de938b28e1e0d6ff48bd8235a1
1 parent
6f678cad
fixed errors with parsing
Showing
10 changed files
with
29 additions
and
38 deletions
Show diff stats
backend/controllers/ParserController.php
backend/controllers/RgGrupController.php
@@ -193,11 +193,11 @@ class RgGrupController extends BaseController | @@ -193,11 +193,11 @@ class RgGrupController extends BaseController | ||
193 | 193 | ||
194 | } | 194 | } |
195 | 195 | ||
196 | - public function actionMail() | ||
197 | - { | ||
198 | - $mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'tsurkanovm@gmail.com', 'Wtvr@2000'); | ||
199 | - //$mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'price@italauto.com.ua', '67853562'); | ||
200 | - $mail_saver->saveAttachmentsTo(); | ||
201 | - } | 196 | +// public function actionMail() |
197 | +// { | ||
198 | +// $mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'tsurkanovm@gmail.com', 'Wtvr@2000'); | ||
199 | +// //$mail_saver = new MailAttachmentsSaver('{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'price@italauto.com.ua', '67853562'); | ||
200 | +// $mail_saver->saveAttachmentsTo(); | ||
201 | +// } | ||
202 | 202 | ||
203 | } | 203 | } |
backend/models/Details.php
@@ -132,9 +132,7 @@ class Details extends BaseActiveRecord | @@ -132,9 +132,7 @@ class Details extends BaseActiveRecord | ||
132 | 132 | ||
133 | //воспользуемся пакетной вставкой от фреймворка | 133 | //воспользуемся пакетной вставкой от фреймворка |
134 | $query_insert = Yii::$app->db->createCommand()->batchInsert($table_name, $keys_arr, $current_batch_array)->sql; | 134 | $query_insert = Yii::$app->db->createCommand()->batchInsert($table_name, $keys_arr, $current_batch_array)->sql; |
135 | - if ($this->delete_prefix) { | ||
136 | - $query_insert = $this->prepareArticul( $query_insert ); | ||
137 | - } | 135 | + |
138 | // добавим фрагмент с апдейтом при дубляже | 136 | // добавим фрагмент с апдейтом при дубляже |
139 | $query = "{$query_insert} {$query_update}"; | 137 | $query = "{$query_insert} {$query_update}"; |
140 | // \common\components\CustomVarDamp::dumpAndDie($query); | 138 | // \common\components\CustomVarDamp::dumpAndDie($query); |
backend/models/ImportersPrefix.php
@@ -17,6 +17,11 @@ use backend\models\Importers; | @@ -17,6 +17,11 @@ use backend\models\Importers; | ||
17 | class ImportersPrefix extends \backend\components\base\BaseActiveRecord | 17 | class ImportersPrefix extends \backend\components\base\BaseActiveRecord |
18 | { | 18 | { |
19 | 19 | ||
20 | + public static function tableName() | ||
21 | + { | ||
22 | + return 'w_importers_prefix'; | ||
23 | + } | ||
24 | + | ||
20 | /** | 25 | /** |
21 | * @inheritdoc | 26 | * @inheritdoc |
22 | */ | 27 | */ |
backend/models/UploadFileCrossingForm.php
@@ -49,8 +49,8 @@ class UploadFileCrossingForm extends Model | @@ -49,8 +49,8 @@ class UploadFileCrossingForm extends Model | ||
49 | throw new ErrorException("Ошибка чтения из файла кроссов {$this->file_path}"); | 49 | throw new ErrorException("Ошибка чтения из файла кроссов {$this->file_path}"); |
50 | } | 50 | } |
51 | // файл больше не нужен - данные прочитаны и сохранены в кеш | 51 | // файл больше не нужен - данные прочитаны и сохранены в кеш |
52 | - if( file_exists($this->file_path) ) | ||
53 | - unlink($this->file_path); | 52 | +// if( file_exists($this->file_path) ) |
53 | +// unlink($this->file_path); | ||
54 | 54 | ||
55 | return $data; | 55 | return $data; |
56 | } | 56 | } |
backend/models/UploadFileParsingForm.php
@@ -78,7 +78,7 @@ class UploadFileParsingForm extends Model | @@ -78,7 +78,7 @@ class UploadFileParsingForm extends Model | ||
78 | // файл больше не нужен - данные прочитаны и сохранены в кеш | 78 | // файл больше не нужен - данные прочитаны и сохранены в кеш |
79 | if( file_exists($this->file_path) ) | 79 | if( file_exists($this->file_path) ) |
80 | //@ todo - перестало работать - нет доступа на удалениев этом сеансе, в следующем - файл удаляется - разобраться | 80 | //@ todo - перестало работать - нет доступа на удалениев этом сеансе, в следующем - файл удаляется - разобраться |
81 | - //unlink( $this->file_path ); | 81 | + // unlink( $this->file_path ); |
82 | 82 | ||
83 | 83 | ||
84 | return $data; | 84 | return $data; |
@@ -99,4 +99,5 @@ class UploadFileParsingForm extends Model | @@ -99,4 +99,5 @@ class UploadFileParsingForm extends Model | ||
99 | } | 99 | } |
100 | 100 | ||
101 | 101 | ||
102 | + | ||
102 | } | 103 | } |
103 | \ No newline at end of file | 104 | \ No newline at end of file |
backend/views/rg-grup/index.php
@@ -29,6 +29,5 @@ $button_label = 'Прочитать'; | @@ -29,6 +29,5 @@ $button_label = 'Прочитать'; | ||
29 | 29 | ||
30 | <?php ActiveForm::end() ?> | 30 | <?php ActiveForm::end() ?> |
31 | </div> | 31 | </div> |
32 | - <?= Html::a('Почта', ['rg-grup/mail'], ['class' => 'btn btn-primary', 'name' => 'Mail',]) ?> | ||
33 | </div> | 32 | </div> |
34 | 33 |
common/components/parsers/CustomCsvParser.php
@@ -8,29 +8,12 @@ | @@ -8,29 +8,12 @@ | ||
8 | 8 | ||
9 | namespace common\components\parsers; | 9 | namespace common\components\parsers; |
10 | 10 | ||
11 | - | ||
12 | -use common\components\CustomVarDamp; | ||
13 | - | ||
14 | -use yii\base\ErrorException; | ||
15 | - | ||
16 | - | ||
17 | class CustomCsvParser extends \yii\multiparser\CsvParser { | 11 | class CustomCsvParser extends \yii\multiparser\CsvParser { |
18 | 12 | ||
19 | - public $last_line = 10; | 13 | + // public $last_line = 10; |
20 | //public $hasHeaderRow = true; | 14 | //public $hasHeaderRow = true; |
21 | // public $keys = ['first','second', 'third', 'forth', 'fifth']; | 15 | // public $keys = ['first','second', 'third', 'forth', 'fifth']; |
22 | -// public function setupConverter() | ||
23 | -// { | ||
24 | -// if (!count($this->converter_conf)) { | ||
25 | -// if ($this->hasHeaderRow) { | ||
26 | -// // если у файла есть заголовок, то в результате имеем ассоциативный массив | ||
27 | -// $this->converter_conf['hasKey'] = 1; | ||
28 | -// | ||
29 | -// } | ||
30 | -// | ||
31 | -// } | ||
32 | -//// $this->converter = \Yii::createObject( $this->converter_conf ); | ||
33 | -// } | 16 | + |
34 | 17 | ||
35 | 18 | ||
36 | 19 |
console/config/main.php
@@ -22,13 +22,13 @@ return [ | @@ -22,13 +22,13 @@ return [ | ||
22 | 'class' => 'yii\log\FileTarget', | 22 | 'class' => 'yii\log\FileTarget', |
23 | 'logFile' => __DIR__ . '/../runtime/logs/parser.log', | 23 | 'logFile' => __DIR__ . '/../runtime/logs/parser.log', |
24 | 'levels' => ['info', 'error'], | 24 | 'levels' => ['info', 'error'], |
25 | - 'categories' => ['yii\base\ErrorException:*', 'parser'], | 25 | + 'categories' => ['parser'], |
26 | 'logVars' => [], | 26 | 'logVars' => [], |
27 | ], | 27 | ], |
28 | [ | 28 | [ |
29 | 'class' => 'yii\log\FileTarget', | 29 | 'class' => 'yii\log\FileTarget', |
30 | 'logFile' => __DIR__ . '/../runtime/logs/mail.log', | 30 | 'logFile' => __DIR__ . '/../runtime/logs/mail.log', |
31 | - 'levels' => ['info', 'error'], | 31 | + 'levels' => ['info', 'error', 'warning'], |
32 | 'categories' => ['yii\base\ErrorException:*', 'mail'], | 32 | 'categories' => ['yii\base\ErrorException:*', 'mail'], |
33 | 'logVars' => [], | 33 | 'logVars' => [], |
34 | ], | 34 | ], |
console/controllers/ParserController.php
@@ -133,19 +133,23 @@ class ParserController extends Controller | @@ -133,19 +133,23 @@ class ParserController extends Controller | ||
133 | $mail_reader = new ImapMailReader( '{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'tsurkanovm@gmail.com', 'Wtvr@2000' ); | 133 | $mail_reader = new ImapMailReader( '{imap.gmail.com:993/imap/ssl/novalidate-cert}', 'tsurkanovm@gmail.com', 'Wtvr@2000' ); |
134 | 134 | ||
135 | // 1. получим все вложения | 135 | // 1. получим все вложения |
136 | + \Yii::info('Начало сохранения файлов почты', 'mail'); | ||
136 | $files = $this->getMailAttachments( $mail_reader, $importer_id_prefix ); | 137 | $files = $this->getMailAttachments( $mail_reader, $importer_id_prefix ); |
137 | 138 | ||
138 | - // 2. если в вложениях есть архивы - распакуем их и дополним итоговый массив | ||
139 | - $this->UnpackFiles( $files ); | ||
140 | - | ||
141 | if ( !$files ) { | 139 | if ( !$files ) { |
142 | // нет файлов в ящиках (не было вложений в письмах) | 140 | // нет файлов в ящиках (не было вложений в письмах) |
143 | - \Yii::info('Вложений не найдено', 'mail'); | 141 | + \Yii::warning('Вложений не найдено', 'mail'); |
144 | return; | 142 | return; |
145 | } | 143 | } |
146 | 144 | ||
145 | + // 2. если в вложениях есть архивы - распакуем их и дополним итоговый массив | ||
146 | + \Yii::info('Запуск распаковки архивов...', 'mail'); | ||
147 | + $this->UnpackFiles( $files ); | ||
148 | + | ||
149 | + | ||
147 | // 3. переименуем, зарегистрируем прайсы и перенесем извлеченные файлы | 150 | // 3. переименуем, зарегистрируем прайсы и перенесем извлеченные файлы |
148 | // укажем папку куда нужно перенести все извлеченные вложения | 151 | // укажем папку куда нужно перенести все извлеченные вложения |
152 | + \Yii::info('Запуск перемещения и регистрации прайсов...', 'mail'); | ||
149 | $new_destination = \Yii::getAlias('@auto_upload') . '/'; | 153 | $new_destination = \Yii::getAlias('@auto_upload') . '/'; |
150 | 154 | ||
151 | $this->registerAndReplaceFiles( $files, $new_destination ); | 155 | $this->registerAndReplaceFiles( $files, $new_destination ); |