namespace app\controllers;
-use Matrix\Matrix;
use Yii;
-use yii\grid\GridView;
use yii\helpers\ArrayHelper;
use yii\rest\Controller;
use OpenAPI\Client\Configuration;
use OpenAPI\Client\Api;
use OpenAPI\Client\Model;
use GuzzleHttp;
-use yii_app\records\MarketplaceStore;
use yii_app\records\MatrixErp;
use yii_app\records\Products1c;
use yii_app\records\ProductsClass;
$output = '';
- $config = Configuration::getDefaultConfiguration()->setApiKey('Api-Key', 'ACMA:r3sa2VyjkgcO0aOxGoyAWuGH15g5mWAqXRMuylVA:a0bccb7e');
+ $config = Configuration::getDefaultConfiguration()->setApiKey('Api-Key', Yii::$app->params['YANDEX_MARKET_API_KEY']);
// $apiInstance = new Api\CampaignsApi(
// new GuzzleHttp\Client(),
namespace yii_app\commands;
+use Yii;
use yii\console\Controller;
use yii\helpers\ArrayHelper;
use yii_app\records\MarketplaceStore;
public function actionYandex() {
$infoForMarketplace = MarketplaceService::infoForMarketplace(2);
- $config = Configuration::getDefaultConfiguration()->setApiKey('Api-Key', 'ACMA:r3sa2VyjkgcO0aOxGoyAWuGH15g5mWAqXRMuylVA:a0bccb7e');
+ $config = Configuration::getDefaultConfiguration()->setApiKey('Api-Key', Yii::$app->params['YANDEX_MARKET_API_KEY']);
$products = Products1c::find()->alias('p')->leftJoin('products_class pc', 'p.parent_id = pc.category_id')
->where(['pc.tip' => [ProductsClass::MARKETPLACE, ProductsClass::MARKETPLACE_ADDITIONAL]])->all();
<?php
+$params = require __DIR__ . '/params.php';
+
Yii::setAlias('@yii_app/commands', 'commands');
Yii::setAlias('@yii_app', dirname(__DIR__));
'db' => require dirname(__DIR__) . '/config/db.php',
//'db2' => require dirname(__DIR__) . '/config/db2.php',
],
+ 'params' => $params,
];
if (YII_ENV_DEV) {
['Login' => 'ipbelo-n2-ci', 'Password' => '8h09h42q38'],
],
'SWITCH_USER_COOKIE_PASSWORD' => '123pass@WORD',
+ 'YANDEX_MARKET_API_KEY' => 'ACMA:r3sa2VyjkgcO0aOxGoyAWuGH15g5mWAqXRMuylVA:a0bccb7e',
];
<?php
namespace app\controllers;
+
use Yii;
use yii\data\ActiveDataProvider;
-use yii\helpers\ArrayHelper;
use yii\web\Controller;
use yii\web\NotFoundHttpException;
-use yii_app\records\Admin;
use yii_app\records\CityStore;
use yii_app\records\Firms;
use yii_app\records\MarketplaceStore;
+use OpenAPI\Client\Configuration;
+use OpenAPI\Client\Api;
+use OpenAPI\Client\Model;
+use GuzzleHttp;
class MarketplaceStoreController extends Controller
{
return $this->redirect(['view', 'id' => $model->id]);
}
+ $campaignNameById = [];
+
+ $config = Configuration::getDefaultConfiguration()->setApiKey('Api-Key', Yii::$app->params['YANDEX_MARKET_API_KEY']);
+ $apiInstance = new Api\CampaignsApi(new GuzzleHttp\Client(), $config);
+ $campaigns = $apiInstance->getCampaigns();
+ /* @var $campaigns Model\GetCampaignsResponse */
+ foreach ($campaigns->getCampaigns() as $campaign) {
+ /* @var $campaign Model\CampaignDTO */
+ $campaignNameById[$campaign->getId()] = $campaign->getDomain();
+ }
+
return $this->render('create', [
'model' => $model,
'stores' => $stores,
'storesGuid' => $storesGuid,
'firms' => $firms,
- 'warehouses' => $warehouses
+ 'warehouses' => $warehouses,
+ 'campaignNameById' => $campaignNameById,
]);
}
<?= $form->field($model, 'guid')->textInput(['maxlength' => true, 'value' => $model->guid, 'readonly' => true, 'id' => 'guid-input']) ?>
<?= $form->field($model, 'name')->textInput(['maxlength' => true, 'value' => $model->name, 'readonly' => true, 'id' => 'name-input']) ?>
<?= $form->field($model, 'warehouse_id')->dropDownList($warehouses, [
- 'prompt' => 'Выберите маркетплейс'
+ 'prompt' => 'Выберите маркетплейс',
+ 'onchange' => 'document.getElementById("yandexMarketplaces").style.display = this.value == 2 ? "block" : "none";',
]) ?>
+ <div id="yandexMarketplaces" class="mb-2" style="display: <?= $model->warehouse_id == 2 ? 'block' : 'none' ?>">
+ <?= Html::dropDownList('Выберите склад для яндекс маркетплейса', null, $campaignNameById,
+ [
+ 'prompt' => 'Выберите склад для яндекс маркетплейса',
+ 'onchange' => 'document.getElementById("marketplacestore-warehouse_guid").value = this.value;'
+ ]) ?>
+ </div>
<?= $form->field($model, 'warehouse_guid')->textInput(['type' => 'integer']) ?>
<?= $form->field($model, 'firm')->dropDownList($firms, ['prompt' => 'Выберите юр лицо']) ?>
$this->params['breadcrumbs'][] = $this->title;
?>
-<div class="marketplace-store-create">
+<div class="marketplace-store-create m-5">
<h1><?= Html::encode($this->title) ?></h1>
'stores' => $stores,
'storesGuid' => $storesGuid,
'firms' => $firms,
- 'warehouses' => $warehouses
+ 'warehouses' => $warehouses,
+ 'campaignNameById' => $campaignNameById,
]) ?>
</div>