]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
Проверка сроков доставки
authorfomichev <vladimir.fomichev@erp-flowers.ru>
Wed, 30 Apr 2025 12:02:50 +0000 (15:02 +0300)
committerfomichev <vladimir.fomichev@erp-flowers.ru>
Wed, 30 Apr 2025 12:02:50 +0000 (15:02 +0300)
erp24/services/MarketplaceService.php

index 3fa3a3fea06a08616e28b2f2aa38796411b036c2..9fe9157eb26d2bd174490b07d5015f48356d2099 100644 (file)
@@ -1366,6 +1366,37 @@ class MarketplaceService
                             $marketplaceOrder->save();
                             $updatedOrdersCount += 1;
                         }
+                        if (!$marketplaceOrder->delivery_to && $marketplaceOrder->readyto_1c === 0) {
+                            $delivery = $order->getDelivery();
+                            $shipments = $delivery->getShipments();
+                            if ($shipments) {
+                                foreach ($shipments as $index => $shipment) {
+                                    Yii::error("срок доставки: {$index}" . json_encode($shipment, JSON_UNESCAPED_UNICODE));
+                                }
+
+                                $deliveryDateTo = ($shipments[0])->getShipmentDate() ?? null;
+                                $deliveryTimeTo = ($shipments[0])->getShipmentTime() ?? '';
+
+                                if ($deliveryDateTo) {
+                                    $datetimeString = str_replace('-', '.', $deliveryDateTo) . ' ' . $deliveryTimeTo;
+                                    $timestamp = strtotime($datetimeString);
+
+                                    if ($timestamp) {
+                                        $marketplaceOrder->delivery_to = date('Y-m-d H:i:s', $timestamp);
+
+                                        if (!$marketplaceOrder->save()) {
+                                            Yii::error('Ошибка сохранения сроков доставки: ' . json_encode($marketplaceOrder->getErrors(), JSON_UNESCAPED_UNICODE));
+                                        } else {
+                                            $updatedOrdersCount += 1;
+                                        }
+                                    } else {
+                                        Yii::error('Ошибка преобразования даты и времени: ' . $datetimeString);
+                                    }
+                                } else {
+                                    Yii::error('Отсутствует shipmentDate у первого элемента shipments');
+                                }
+                            }
+                        }
                     }
                     self::setReadyMarketplaceOrders($marketplaceOrder);
                 }