Commit 1fd14fc932e241de938b28e1e0d6ff48bd8235a1

Authored by Mihail
1 parent 6f678cad

fixed errors with parsing

backend/controllers/ParserController.php
@@ -291,4 +291,5 @@ class ParserController extends BaseController @@ -291,4 +291,5 @@ class ParserController extends BaseController
291 } 291 }
292 292
293 293
  294 +
294 } 295 }
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 );