Commit c790ef0991bb344cedd89cb9a969bb078c4e0313
1 parent
0b8441f2
Karnovsky-04052016-1200
Showing
4 changed files
with
78 additions
and
13 deletions
Show diff stats
backend/views/layouts/main-sidebar.php
@@ -25,14 +25,15 @@ use yii\widgets\Menu; | @@ -25,14 +25,15 @@ use yii\widgets\Menu; | ||
25 | ['label' => 'MAIN NAVIGATION', 'options'=>['class'=>'header']], | 25 | ['label' => 'MAIN NAVIGATION', 'options'=>['class'=>'header']], |
26 | ['label' => 'Заказы', 'url' => ['/orders/index'], 'template'=>'<a href="{url}"> <i class="glyphicon glyphicon-shopping-cart"></i> <span>{label}</span></a>'], | 26 | ['label' => 'Заказы', 'url' => ['/orders/index'], 'template'=>'<a href="{url}"> <i class="glyphicon glyphicon-shopping-cart"></i> <span>{label}</span></a>'], |
27 | [ | 27 | [ |
28 | - 'label' => 'Products', | 28 | + 'label' => 'eCommerce', |
29 | 'template'=>'<a href="{url}"> <i class="glyphicon glyphicon-barcode"></i> <span>{label}</span></a>', | 29 | 'template'=>'<a href="{url}"> <i class="glyphicon glyphicon-barcode"></i> <span>{label}</span></a>', |
30 | 'url' => ['/product/manage'], | 30 | 'url' => ['/product/manage'], |
31 | 'items' => [ | 31 | 'items' => [ |
32 | ['label' => 'Товары', 'url' => ['/product/manage']], | 32 | ['label' => 'Товары', 'url' => ['/product/manage']], |
33 | - ['label' => 'Импорт товаров', 'url' => ['/product/manage/import']], | ||
34 | ['label' => 'Категории', 'url' => ['/category']], | 33 | ['label' => 'Категории', 'url' => ['/category']], |
35 | ['label' => 'Бренды', 'url' => ['/brand']], | 34 | ['label' => 'Бренды', 'url' => ['/brand']], |
35 | + ['label' => 'Характеристики', 'url' => ['/rubrication/tax-group']], | ||
36 | + ['label' => 'Статистика импорта', 'url' => ['/product/manage/import-stat']], | ||
36 | ] | 37 | ] |
37 | ], | 38 | ], |
38 | [ | 39 | [ |
@@ -43,15 +44,7 @@ use yii\widgets\Menu; | @@ -43,15 +44,7 @@ use yii\widgets\Menu; | ||
43 | ['label' => 'Банер', 'url' => ['/banner/index']], | 44 | ['label' => 'Банер', 'url' => ['/banner/index']], |
44 | ] | 45 | ] |
45 | ], | 46 | ], |
46 | - [ | ||
47 | - 'label' => 'Характеристики', | ||
48 | - 'template'=>'<a href="{url}"> <i class="glyphicon glyphicon-search"></i> <span>{label}</span></a>', | ||
49 | - 'url' => ['/rubrication/tax-group'], | ||
50 | - 'items' => [ | ||
51 | - ['label' => 'Характеристики', 'url' => ['/rubrication/tax-group']], | ||
52 | - ['label' => 'Зависимости', 'url' => ['/relation/manage']] | ||
53 | - ] | ||
54 | - ], | 47 | + |
55 | ['label' => 'Статические страницы', 'url' => ['/page/index']], | 48 | ['label' => 'Статические страницы', 'url' => ['/page/index']], |
56 | ['label' => 'Акции', 'url' => ['/event/index']], | 49 | ['label' => 'Акции', 'url' => ['/event/index']], |
57 | ['label' => 'Услуги', 'url' => ['/service/index']], | 50 | ['label' => 'Услуги', 'url' => ['/service/index']], |
common/modules/product/controllers/ManageController.php
@@ -12,6 +12,9 @@ use common\modules\product\models\ProductSearch; | @@ -12,6 +12,9 @@ use common\modules\product\models\ProductSearch; | ||
12 | use yii\web\Controller; | 12 | use yii\web\Controller; |
13 | use yii\web\NotFoundHttpException; | 13 | use yii\web\NotFoundHttpException; |
14 | use yii\filters\VerbFilter; | 14 | use yii\filters\VerbFilter; |
15 | +use common\modules\product\models\Brand; | ||
16 | +use common\modules\product\models\BrandName; | ||
17 | +use common\modules\product\models\RemoteProducts; | ||
15 | 18 | ||
16 | /** | 19 | /** |
17 | * ManageController implements the CRUD actions for Product model. | 20 | * ManageController implements the CRUD actions for Product model. |
@@ -173,6 +176,47 @@ class ManageController extends Controller | @@ -173,6 +176,47 @@ class ManageController extends Controller | ||
173 | ]); | 176 | ]); |
174 | } | 177 | } |
175 | 178 | ||
179 | + public function actionImportStat() { | ||
180 | + $all_products = $new_products = $linked_products = $orpahed_products = 0; | ||
181 | + $remoteProducts = RemoteProducts::find()->all(); | ||
182 | + | ||
183 | + $not_linked_cats = []; | ||
184 | + | ||
185 | + foreach($remoteProducts as $product) { | ||
186 | + if (!empty($product->product->product_id)) { | ||
187 | + $linked_products++; | ||
188 | + } elseif (!empty($product->remoteCategory) && !empty($product->remoteCategory->category) && !empty($product->remoteCategory->category->category_id)) { | ||
189 | + $new_products++; | ||
190 | + } else { | ||
191 | + if (!empty($product->remoteCategory)) { | ||
192 | + if (empty($not_linked_cats[$product->remoteCategory->ID])) { | ||
193 | + $not_linked_cats[$product->remoteCategory->ID] = $product->remoteCategory->Name ." (". $product->remoteCategory->ID .")"; | ||
194 | + } | ||
195 | + } | ||
196 | + $orpahed_products++; | ||
197 | + } | ||
198 | + $all_products++; | ||
199 | + } | ||
200 | + | ||
201 | + $op = []; | ||
202 | + | ||
203 | + $op[] = "Всего $all_products товаров, $new_products новых и $linked_products уже связанных."; | ||
204 | + if (!empty($not_linked_cats)) { | ||
205 | + $op[] = "$orpahed_products товаров не привязаны к категориям:"; | ||
206 | + foreach ($not_linked_cats as $not_linked_cat) { | ||
207 | + $op[] = "$not_linked_cat"; | ||
208 | + } | ||
209 | + } | ||
210 | + | ||
211 | + return $this->render('import-stat', [ | ||
212 | + 'all_products' => $all_products, | ||
213 | + 'new_products' => $new_products, | ||
214 | + 'linked_products' => $linked_products, | ||
215 | + 'orpahed_products' => $orpahed_products, | ||
216 | + 'not_linked_cats' => $not_linked_cats, | ||
217 | + ]); | ||
218 | + } | ||
219 | + | ||
176 | /** | 220 | /** |
177 | * Finds the Product model based on its primary key value. | 221 | * Finds the Product model based on its primary key value. |
178 | * If the model is not found, a 404 HTTP exception will be thrown. | 222 | * If the model is not found, a 404 HTTP exception will be thrown. |
common/modules/product/views/manage/import-stat.php
0 → 100644
1 | +<?php | ||
2 | + | ||
3 | +use yii\helpers\Html; | ||
4 | + | ||
5 | + | ||
6 | +/* @var $this yii\web\View */ | ||
7 | +/* @var $model common\modules\product\models\Product */ | ||
8 | + | ||
9 | +$this->title = Yii::t('product', 'Import statistics'); | ||
10 | +$this->params['breadcrumbs'][] = ['label' => Yii::t('product', 'Products'), 'url' => ['index']]; | ||
11 | +$this->params['breadcrumbs'][] = $this->title; | ||
12 | +?> | ||
13 | +<div class="product-create"> | ||
14 | + | ||
15 | + <h1><?= Html::encode($this->title) ?></h1> | ||
16 | + | ||
17 | + <h2>Всего <?= $all_products?> товаров, <?= $new_products?> новых и <?= $linked_products?> уже связанных.</h2> | ||
18 | + <?php if (!empty($not_linked_cats)) :?> | ||
19 | + <p><?= $orpahed_products?> товаров не привязаны к категориям:</p> | ||
20 | + <ul > | ||
21 | + <?php foreach ($not_linked_cats as $not_linked_cat) :?> | ||
22 | + <li><?= $not_linked_cat?></li> | ||
23 | + <?php endforeach?> | ||
24 | + </ul> | ||
25 | + | ||
26 | + <?php endif?> | ||
27 | + | ||
28 | +</div> | ||
0 | \ No newline at end of file | 29 | \ No newline at end of file |
common/modules/rubrication/views/tax-group/_form.php
@@ -15,10 +15,10 @@ use common\components\artboxtree\ArtboxTreeHelper; | @@ -15,10 +15,10 @@ use common\components\artboxtree\ArtboxTreeHelper; | ||
15 | 15 | ||
16 | <?php $form = ActiveForm::begin(); ?> | 16 | <?php $form = ActiveForm::begin(); ?> |
17 | 17 | ||
18 | - <?= $form->field($model, 'alias')->textInput(['maxlength' => true]) ?> | ||
19 | - | ||
20 | <?= $form->field($model, 'name')->textInput(['maxlength' => true]) ?> | 18 | <?= $form->field($model, 'name')->textInput(['maxlength' => true]) ?> |
21 | 19 | ||
20 | + <?= $form->field($model, 'alias')->textInput(['maxlength' => true]) ?> | ||
21 | + | ||
22 | <?= $form->field($model, 'description')->textarea(['rows' => 6]) ?> | 22 | <?= $form->field($model, 'description')->textarea(['rows' => 6]) ?> |
23 | 23 | ||
24 | <?= $form->field($model, 'module')->dropDownList(RubricationHelper::OptionTypes(), [ | 24 | <?= $form->field($model, 'module')->dropDownList(RubricationHelper::OptionTypes(), [ |