$deliveryModel->latitude = $gps->getLatitude();
$deliveryModel->longitude = $gps->getLongitude();
} else {
- // GPS координаты отсутствуют, устанавливаем значения по умолчанию
+ $deliveryModel->latitude = 0.0;
+ $deliveryModel->longitude = 0.0;
+ }
+ } else {
+ // Адрес не структурирован — парсим из текстовой строки delivery в raw_data
+ $rawData = json_decode($marketplaceOrder->raw_data, true);
+ $deliveryText = $rawData['delivery'] ?? null;
+ if ($deliveryText && is_string($deliveryText)) {
+ $parsed = self::parseAddressFromDeliveryText($deliveryText);
+ $deliveryModel->country = 'Россия';
+ $deliveryModel->city = $parsed['city'];
+ $deliveryModel->street = $parsed['street'];
+ $deliveryModel->house = $parsed['house'];
+ $deliveryModel->latitude = $parsed['latitude'];
+ $deliveryModel->longitude = $parsed['longitude'];
+ } else {
+ $deliveryModel->country = 'Уточняется';
+ $deliveryModel->city = 'Уточняется';
+ $deliveryModel->street = 'Уточняется';
+ $deliveryModel->house = 'Уточняется';
$deliveryModel->latitude = 0.0;
$deliveryModel->longitude = 0.0;
}
$deliveryModel->latitude = $gps->getLatitude();
$deliveryModel->longitude = $gps->getLongitude();
} else {
- // GPS координаты отсутствуют, устанавливаем значения по умолчанию
+ $deliveryModel->latitude = 0.0;
+ $deliveryModel->longitude = 0.0;
+ }
+ } else {
+ // Адрес не структурирован — парсим из текстовой строки delivery в raw_data
+ $rawData = json_decode($marketplaceOrder->raw_data, true);
+ $deliveryText = $rawData['delivery'] ?? null;
+ if ($deliveryText && is_string($deliveryText)) {
+ $parsed = self::parseAddressFromDeliveryText($deliveryText);
+ $deliveryModel->country = 'Россия';
+ $deliveryModel->city = $parsed['city'];
+ $deliveryModel->street = $parsed['street'];
+ $deliveryModel->house = $parsed['house'];
+ $deliveryModel->latitude = $parsed['latitude'];
+ $deliveryModel->longitude = $parsed['longitude'];
+ } else {
+ $deliveryModel->country = 'Уточняется';
+ $deliveryModel->city = 'Уточняется';
+ $deliveryModel->street = 'Уточняется';
+ $deliveryModel->house = 'Уточняется';
$deliveryModel->latitude = 0.0;
$deliveryModel->longitude = 0.0;
}
$deliveryModel->latitude = $gps->getLatitude();
$deliveryModel->longitude = $gps->getLongitude();
} else {
- // GPS координаты отсутствуют, устанавливаем значения по умолчанию
+ $deliveryModel->latitude = 0.0;
+ $deliveryModel->longitude = 0.0;
+ }
+ } else {
+ // Адрес не структурирован — парсим из текстовой строки delivery в raw_data
+ $rawData = json_decode($marketplaceOrder->raw_data, true);
+ $deliveryText = $rawData['delivery'] ?? null;
+ if ($deliveryText && is_string($deliveryText)) {
+ $parsed = self::parseAddressFromDeliveryText($deliveryText);
+ $deliveryModel->country = 'Россия';
+ $deliveryModel->city = $parsed['city'];
+ $deliveryModel->street = $parsed['street'];
+ $deliveryModel->house = $parsed['house'];
+ $deliveryModel->latitude = $parsed['latitude'];
+ $deliveryModel->longitude = $parsed['longitude'];
+ } else {
+ $deliveryModel->country = 'Уточняется';
+ $deliveryModel->city = 'Уточняется';
+ $deliveryModel->street = 'Уточняется';
+ $deliveryModel->house = 'Уточняется';
$deliveryModel->latitude = 0.0;
$deliveryModel->longitude = 0.0;
}