]);
}
+ public function actionSetOrderLink()
+ {
+ $orders = MarketplaceOrders::find()->where(['order_link' => null])->all();
+
+ foreach ($orders as $order) {
+ if ($order->marketplace_id == 1) {
+ $baseUrl = "https://flowwow.com/admin/order/index?Order%5Bid%5D=";
+ $order->order_link = $baseUrl . $order->marketplace_order_id;
+ if(!$order->save()) {
+ Yii::error('Ошибка сохранения ссылки' . json_encode($order->getErrors(), JSON_UNESCAPED_UNICODE), __METHOD__);
+ }
+// $data = json_decode($order->raw_data, true);
+// if (isset($data['orderLink'])) {
+// $order->order_link = $data['orderLink'];
+// if(!$order->save()) {
+// Yii::error('Ошибка сохранения ссылки' . json_encode($order->getErrors(), JSON_UNESCAPED_UNICODE), __METHOD__);
+// }
+// }
+ } elseif ($order->marketplace_id == 2) {
+ $baseUrl = "https://partner.market.yandex.ru/order/";
+ $order->order_link = $baseUrl . $order->marketplace_order_id . "?tld=ru&partnerId=197274828";
+ if(!$order->save()) {
+ Yii::error('Ошибка сохранения ссылки' . json_encode($order->getErrors(), JSON_UNESCAPED_UNICODE), __METHOD__);
+ }
+ } else {
+ continue;
+ }
+
+ }
+
+ $this->redirect(['/marketplace-orders/index']);
+
+ }
+
public function actionUpdateToReadyStatus($id)
{
$model = $this->findModel($id);
--- /dev/null
+<?php
+
+use yii\db\Migration;
+
+/**
+ * Handles adding columns to table `{{%marketlplace_orders}}`.
+ */
+class m250417_074545_add_order_link_column_to_marketlplace_orders_table extends Migration
+{
+ const TABLE_NAME = 'erp24.marketplace_orders';
+ /**
+ * {@inheritdoc}
+ */
+ public function safeUp()
+ {
+ $table = $this->db->schema->getTableSchema(self::TABLE_NAME);
+ if ($table === null) {
+ return;
+ }
+
+ if (!$this->db->schema->getTableSchema(self::TABLE_NAME, true)->getColumn('order_link')) {
+ $this->addColumn(
+ self::TABLE_NAME,
+ 'order_link',
+ $this->text()->null()->comment('Ссылка на заказ в МП')
+ );
+ }
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function safeDown()
+ {
+ if ($this->db->schema->getTableSchema(self::TABLE_NAME, true)->getColumn('order_link')) {
+ $this->dropColumn(self::TABLE_NAME, 'order_link');
+ }
+ }
+}
* @property string|null $number_1c Название документа в 1с
* @property string|null $telegram_error ошибка телеграмма
* @property string|null $status_processing_1c Статус обработки заказа в 1С
+ * @property string|null $order_link Ссылка на заказ в МП
*/
class MarketplaceOrders extends \yii\db\ActiveRecord
{
[['store_id', 'warehouse_guid', 'returned_at', 'return_data', 'raw_data', 'guid'], 'default', 'value' => null],
[['cancel_requested', 'status_telegram'], 'default', 'value' => 0],
[['marketplace_order_id', 'marketplace_id', 'marketplace_name', 'status_id', 'substatus_id', 'creation_date', 'updated_at', 'total', 'delivery_total', 'buyer_total_before_discount', 'tax_system', 'payment_type', 'payment_method'], 'required'],
- [['store_id', 'status_id', 'substatus_id', 'fake', 'cancel_requested', 'status_1c', 'status_processing_1c'], 'default', 'value' => null],
+ [['store_id', 'status_id', 'substatus_id', 'fake', 'cancel_requested', 'status_1c', 'status_processing_1c', 'order_link'], 'default', 'value' => null],
[[ 'fake'], 'default', 'value' => 0],
[['store_id', 'status_id', 'substatus_id', 'fake', 'cancel_requested', 'status_1c', 'marketplace_id', 'status_telegram', 'status_processing_1c'], 'integer'],
[['creation_date', 'updated_at', 'returned_at'], 'safe'],
- [['return_data', 'raw_data', 'marketplace_name', 'telegram_error'], 'string'],
+ [['return_data', 'raw_data', 'marketplace_name', 'telegram_error', 'order_link'], 'string'],
[['total', 'delivery_total', 'buyer_total_before_discount'], 'number'],
[['marketplace_order_id'], 'string', 'max' => 64],
[['number_1c'], 'string', 'max' => 100],
'status_telegram' => 'Статус отправки в телеграм',
'telegram_error' => 'Ошибка телеграмма',
'status_processing_1c' => 'Статус обработки заказа в 1С',
+ 'order_link' => 'Ссылка на заказ в МП',
];
}
$marketplaceOrder->substatus_id = (int)$substatusId;
$marketplaceOrder->raw_data = $newRawData;
$marketplaceOrder->status_1c = MarketplaceOrders::STATUSES_1C_CREATED_IN_ERP;
+ $baseUrl = "https://partner.market.yandex.ru/order/";
+ $marketplaceOrder->order_link = $baseUrl . $marketplaceOrder->marketplace_order_id . "?tld=ru&partnerId=197274828";
if ($marketplaceOrder->save()) {
self::sendMessageToTelegram($marketplaceOrder->guid, "Тестовое сообщение для https://tracker.yandex.ru/ERP-326 из [1]");
$marketplaceOrder->marketplace_id = 1;
$marketplaceOrder->store_id = $store->store_id;
$marketplaceOrder->status_1c = MarketplaceOrders::STATUSES_1C_CREATED_IN_ERP;
+ //$marketplaceOrder->order_link = $order['orderLink'];
+ $baseUrl = "https://flowwow.com/admin/order/index?Order%5Bid%5D=";
+ $marketplaceOrder->order_link = $baseUrl . $marketplaceOrder->marketplace_order_id;
return $marketplaceOrder;
}