From: fomichev Date: Tue, 6 May 2025 10:00:53 +0000 (+0300) Subject: Добавление created_at и фильтрация по marketplace_name X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=4e2293f47af7c5286f1f9018e6ea1e2f376e5a89;p=erp24_rep%2Fyii-erp24%2F.git Добавление created_at и фильтрация по marketplace_name --- diff --git a/erp24/migrations/m250506_091013_add_created_at_column_to_marketplace_orders_table.php b/erp24/migrations/m250506_091013_add_created_at_column_to_marketplace_orders_table.php new file mode 100644 index 00000000..7a162c34 --- /dev/null +++ b/erp24/migrations/m250506_091013_add_created_at_column_to_marketplace_orders_table.php @@ -0,0 +1,39 @@ +db->schema->getTableSchema(self::TABLE_NAME); + if ($table === null) { + return; + } + + if (!$this->db->schema->getTableSchema(self::TABLE_NAME, true)->getColumn('created_at')) { + $this->addColumn( + self::TABLE_NAME, + 'created_at', + $this->timestamp()->null()->defaultExpression('CURRENT_TIMESTAMP')->comment('Время создания заказа в ERP'), + ); + } + } + + /** + * {@inheritdoc} + */ + public function safeDown() + { + if ($this->db->schema->getTableSchema(self::TABLE_NAME, true)->getColumn('created_at')) { + $this->dropColumn(self::TABLE_NAME, 'created_at'); + } + } +} diff --git a/erp24/records/MarketplaceOrders.php b/erp24/records/MarketplaceOrders.php index 91971a4e..d2152a88 100644 --- a/erp24/records/MarketplaceOrders.php +++ b/erp24/records/MarketplaceOrders.php @@ -3,6 +3,8 @@ namespace yii_app\records; use Yii; +use yii\behaviors\TimestampBehavior; +use yii\db\Expression; /** * This is the model class for table "marketplace_orders". @@ -38,6 +40,7 @@ use Yii; * @property string|null $delivery_to Сроки доставки заказа * @property int $readyto_1c Готовность к отправке в 1С: 0 - не готов, 1 - готов. Зависит от наполения $delivery_to * @property string|null $order_photo Ссылка на фото собранного заказа для МП + * @property string|null $created_at Время создания заказа в ERP */ class MarketplaceOrders extends \yii\db\ActiveRecord { @@ -71,8 +74,15 @@ class MarketplaceOrders extends \yii\db\ActiveRecord 'Отказ' => ["CANCELLED", "SHOP_FAILED"], ]; - - + public function behaviors() + { + return [ + [ + 'class' => TimestampBehavior::class, + 'value' => new Expression('CURRENT_TIMESTAMP'), + ], + ]; + } /** * {@inheritdoc} */ @@ -131,7 +141,7 @@ class MarketplaceOrders extends \yii\db\ActiveRecord 'raw_data' => 'Полный сырой ответ API', 'guid' => 'GUID заказа в 1С', 'status_1c' => 'Статус заказа в 1С', - 'marketplace_name' => 'Наименование маркетплейса', + 'marketplace_name' => 'Наименование маркетплейса: ФлауВау ЯндексМаркет', 'marketplace_id' => 'ID маркетплейса: 1 - Flowwow, 2 - YandexMarket', 'error_text' => 'Ошибка', 'number_1c' => 'Номер документа в 1с', @@ -142,6 +152,7 @@ class MarketplaceOrders extends \yii\db\ActiveRecord 'delivery_to' => 'Сроки доставки заказа', 'readyto_1c' => 'Готовность к отправке в 1С', 'order_photo' => 'Ссылка на фото собранного заказа для МП', + 'created_at' => 'Время создания заказа в ERP', ]; } diff --git a/erp24/records/MarketplaceOrdersSearch.php b/erp24/records/MarketplaceOrdersSearch.php index b5b1a819..1bd1a2a8 100644 --- a/erp24/records/MarketplaceOrdersSearch.php +++ b/erp24/records/MarketplaceOrdersSearch.php @@ -23,7 +23,19 @@ class MarketplaceOrdersSearch extends MarketplaceOrders { return [ [['id', 'store_id', 'status_id', 'substatus_id', 'cancel_requested', 'status_1c'], 'integer'], - [['marketplace_order_id', 'warehouse_guid', 'creation_date', 'updated_at', 'tax_system', 'payment_type', 'payment_method', 'raw_data', 'guid','store_name', 'status_code', 'substatus_code'], 'safe'], + [['marketplace_order_id', + 'warehouse_guid', + 'creation_date', + 'updated_at', + 'tax_system', + 'payment_type', + 'payment_method', + 'raw_data', + 'guid', + 'marketplace_name', + 'store_name', + 'status_code', + 'substatus_code'], 'safe'], [['total', 'delivery_total', 'buyer_total_before_discount'], 'number'], ]; } @@ -73,6 +85,7 @@ class MarketplaceOrdersSearch extends MarketplaceOrders 'buyer_total_before_discount' => $this->buyer_total_before_discount, 'cancel_requested' => $this->cancel_requested, 'status_1c' => $this->status_1c, + 'marketplace_name' => $this->marketplace_name, ]); // Фильтрация по строковым полям diff --git a/erp24/views/marketplace-orders/index.php b/erp24/views/marketplace-orders/index.php index e0d38e72..2807dd07 100644 --- a/erp24/views/marketplace-orders/index.php +++ b/erp24/views/marketplace-orders/index.php @@ -132,7 +132,7 @@ YiiAsset::register($this); 'warehouse_guid', 'marketplace_name', 'creation_date', - 'updated_at', + 'created_at', 'total', 'delivery_total', 'buyer_total_before_discount', diff --git a/erp24/views/marketplace-orders/view.php b/erp24/views/marketplace-orders/view.php index 65a0c2a0..6a79c359 100644 --- a/erp24/views/marketplace-orders/view.php +++ b/erp24/views/marketplace-orders/view.php @@ -57,6 +57,7 @@ $this->params['breadcrumbs'][] = $this->title; ], 'warehouse_guid', 'creation_date', + 'created_at', 'updated_at', 'delivery_to', 'total',