namespace app\controllers;
use Yii;
+use yii\helpers\ArrayHelper;
use yii\helpers\Html;
use yii\web\Controller;
use yii_app\records\ExportImportTable;
}
- public function actionAjaxProductProvider() { return $this->renderPartial('ajax-product-provider'); }
+ public function actionAjaxProductProvider()
+ {
+ $id = Yii::$app->request->post('id');
+ if (!empty($id)) {
+ $id = htmlentities($id);
+
+
+ $providers = ShipmentProviders::find()
+ ->select(['id', 'name'])
+ ->indexBy('id')
+ // ->asArray()
+ ->all();
+ $providers = ArrayHelper::map($providers, 'id', 'name');
+// var_dump($providers); die();
+
+ $data = Products1cOptions::find()
+ ->where(['id' => $id])
+ ->one();
+
+
+ $view = Products1c::find()
+ ->select('view')
+ ->where(['id' => $id])
+ ->scalar();
+
+
+ $productColorsArray = explode(';', $data->colors ?? '');
+
+ // Определение массива групп продуктов
+ $productGroups = [
+ "1" => "Голландия/Израиль",
+ 2 => "Кения",
+ 3 => "Эквадор/Колумбия",
+ 4 => "Россия",
+ 5 => "Горшечка",
+ 6 => "Сопутка",
+ 7 => "Фейерверки",
+ 10 => "Матрица"
+ ];
+
+
+
+ $dataResponse = '<div id=result_prov></div><form method=post class="row" action="">';
+ $dataResponse .= '<div class="col-6 text-right">Поставщик</div>
+<div class="col-6"><select class="form-control" id=provider_id name=provider_id>';
+ foreach($providers as $idv =>$name) {
+ $dataResponse .= "<option value=".$idv."";
+ if(($data['provider_id'] ??'')==$idv) $dataResponse .= " selected"; $dataResponse .= ">".$name."</option>";
+ }
+
+ $dataResponse .= "<option value=dell ";
+ if(($data['provider_id']??'')=="dell") $dataResponse .= " selected";
+
+ $dataResponse .= ">удалить поставщика</option></select></div>";
+
+
+ $dataResponse .= '<div class="col-6 text-right">Группа</div>
+<div class="col-6"><select class="form-control" id=group_id name=group_id><option value=0 '; if(empty($data['group_id'])) $dataResponse .= " selected"; $dataResponse .= '>-без группы-</option>';
+ foreach($productGroups as $idv =>$name) {
+ $dataResponse .= "<option value=".$idv.""; if(($data['group_id']??'')==$idv) $dataResponse .= " selected"; $dataResponse .= ">".$name."</option>";
+ }
+ $dataResponse .= "</select></div>";
+
+
+ $dataResponse .= '<div class="col-6 text-right">Основной товар?</div>
+<div class="col-6"><select class="form-control" id=main name=main>
+<option value=0 '; if(empty($data['main'])) $dataResponse .= " selected"; $dataResponse .= '>нет</option>
+<option value=1 '; if(!empty($data['main'])) $dataResponse .= " selected"; $dataResponse .= '>да</option>';
+ $dataResponse .= "</select></div>";
+
+
+ $dataResponse .= '
+<div class="col-6 text-right">срок хранения в днях</div><div class="col-6"> <input type=number style="width:70px;" name=expiration_days id=expiration_days class="form-control" value="'. ($data['expiration_days']??'') .'"></div>
+<div class="col-6 text-right">минимальный лот деления в шт. (кол-во шт в месте)
+</div><div class="col-6"> <input type=number style="width:70px;" name=min_lot id=min_lot class="form-control" value="'. ($data['min_lot']??'') .'"></div>
+<div class="col-6 text-right">минимальный заказ в шт.</div><div class="col-6"> <input type=number style="width:70px;" name=min_order id=min_order class="form-control" value="'. ($data['min_order']??'') .'"></div>
+<div class="col-6 text-right">Цена закупки в долл. или евро (зависит от поставщика) пример 1.25</div><div class="col-6"> <input type=number style="width:70px;" name=price_zakup id=price_zakup class="form-control" value="'. ($data['price_zakup']??'') .'"></div>
+<div class="col-12">Цвета разделитель ;<textarea row=2 name=colors id=colors class="form-control">'. ($data['colors']??'') .'</textarea></div>
+<div class="col-12">Опции <textarea row=2 name=options id=options class="form-control">'. ($data['options']??'') .'</textarea></div>
+
+
+<div class="col-12">
+
+Сорта по цветам';
+
+ foreach($productColorsArray as $color) {
+ $color=trim($color);
+ if(!empty($color)) {
+ $dataResponse .= "<br><span class=\"btn btn-sm btn-info me-1\">$color</span>";
+ }
+
+
+ }
+
+
+ $dataResponse .= '</div><div class="col-12">';
+
+ $dataResponse .= "<input type=checkbox name=view id=view ";
+ if($view==1) $dataResponse .= ' value=2 checked';
+ else $dataResponse .= " valiue=0";
+ $dataResponse .= '> показыввать товар в автозаказе';
+
+ $dataResponse .= '</div>
+<div class="col-12">
+<span class="btn btn-lg btn-success m-2" onclick="save_providerder();return false" name=sv value=1>сохранить</span></div></form>';
+
+ return $dataResponse;
+ }
+
+
+ return '';
+ }
+
+
+
public function actionAjaxGroupConfig() {
if (Yii::$app->request->isAjax) {
});
}
+function save_providerder(){
+
+const param3 = $('meta[name=csrf-param]').attr('content');
+const token3 = $('meta[name=csrf-token]').attr('content');
+
+$.ajax({
+ url: '/products/ajax-product-provider-add/',
+ method: 'post',
+ dataType: 'html',
+ data: {id: '<?=$id?>', provider_id: $('#provider_id').val(),
+ options: $('#options').val(), expiration_days: $('#expiration_days').val(),
+ min_lot: $('#min_lot').val(), colors: $('#colors').val(), min_order: $('#min_order').val(), price_zakup: $('#price_zakup').val(), group_id: $('#group_id').val() , main: $('#main').val() , view: $('#view').val(), [param3]:token3 },
+ success: function(data){
+ $('#result_prov').html(data);
+ }});
+}
+
// Добавьте остальные функции JavaScript аналогично
JS
, \yii\web\View::POS_END);