From: fomichev Date: Thu, 21 Nov 2024 08:13:52 +0000 (+0300) Subject: Добавление выпадающего списка товаров в группе X-Git-Tag: 1.7~212^2~17 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=0126e9e832172e330e085d05f754189f5f25cfc9;p=erp24_rep%2Fyii-erp24%2F.git Добавление выпадающего списка товаров в группе --- diff --git a/erp24/controllers/ProductsController.php b/erp24/controllers/ProductsController.php index 417f4cad..bcef9dc9 100755 --- a/erp24/controllers/ProductsController.php +++ b/erp24/controllers/ProductsController.php @@ -5,6 +5,7 @@ namespace app\controllers; use Yii; use yii\helpers\Html; use yii\web\Controller; +use yii_app\records\ExportImportTable; use yii_app\records\Prices; use yii_app\records\Products1c; use yii_app\records\Products1cOptions; @@ -129,8 +130,10 @@ class ProductsController extends Controller $data = Products1c::find() ->alias('p') - ->select(['p.id', 'p.name', 'e.entity_id', 'p.view']) - ->leftJoin('export_import_table e', "e.export_iD = p.id AND e.export_val = '1' AND e.entity = 'products'") + ->select(['p.id', 'p.name', 'alias.entity_id', 'p.view']) + ->leftJoin(['alias' => ExportImportTable::find() + ->select(['export_id', 'export_val', 'entity', 'entity_id' ])], + "alias.export_id::text = p.id AND alias.export_val = '1' AND alias.entity = 'products'") ->where(['p.tip' => 'products', 'p.parent_id' => $parent_id]) ->orderBy(['p.name' => SORT_ASC]) ->asArray() @@ -163,13 +166,80 @@ class ProductsController extends Controller ->select(['product_id', 'color', 'name']) ->orderBy(['posit' => SORT_DESC]) ->all(); - + $dataResponse = ''; $products_varieties = []; foreach ($varietiesData as $variety) { $products_varieties[$variety->product_id][$variety->color][] = $variety->name; } + $dataResponse .= ''; + foreach ($data as $row) { + + $dataResponse .= "скрыто"; + } + + $dataResponse .= '
+ поставщика '.($providers[$row['id']]??'').'
'; + + if(!empty($colorsProducts[$row["id"]])) { + $s=0; + foreach($colorsProducts[$row["id"]] as $color) { + $color=trim($color); + if(!empty($color)) { + $s++; + $dataResponse .= "
$color"; + + if(!empty($products_varieties[$row["id"]][$color])) { + $dataResponse .= "сорта "; + foreach($products_varieties[$row["id"]][$color] as $varieties => $nameV) { + + $dataResponse .= ' '.$nameV.' '; + } + } + } + } + + if($s>0) { + $dataResponse .= "+ добавить сорта"; + } + } + $dataResponse .= " GUID ".$row["id"]."
"; + + + if(!empty($row["entity_id"])) { + + } + + } + $dataResponse .= '
"; + + if(!empty($prices[$row['id']]) and empty($row["entity_id"])) + $dataResponse .= '
внести цена '.$prices[$row['id']].'
'; + else { + $dataResponse .= '
внести цена '.($prices[$row['id']]??'').'
'; + } + + $dataResponse .= "
".$row["entity_id"].""; + + if(!empty($row["entity_id"])) { + $dataResponse .= '
удалить продукт
+
+ удалить только связь
'; + } + + $dataResponse .= "
'; + + + } + + return $dataResponse; /* return $this->renderPartial('ajax-products-in-group', [ 'data' => $data, 'prices' => $prices, @@ -177,7 +247,7 @@ class ProductsController extends Controller 'colorsProducts' => $colorsProducts, 'products_varieties' => $products_varieties, ]);*/ - } + } // Возвращаем пустой ответ, если запрос не AJAX или parent_id пустой