Исправлено время заказов: переход на минский часовой пояс (Europe/Minsk)
- Изменён TIME_ZONE с Europe/Moscow на Europe/Minsk в settings.py - Исправлено создание заказов в POS: теперь используется timezone.localtime() для корректной конвертации UTC → Minsk - delivery_date и delivery_time_start/end теперь сохраняются в минском времени, а не UTC - Исправлена разница в 3 часа между временем создания заказа и фактическим временем - Удалено устаревшее поле payment_method из showcase_manager.py (поле было удалено из модели Order) Теперь все временные метки заказов соответствуют реальному минскому времени
This commit is contained in:
@@ -1408,16 +1408,19 @@ def pos_checkout(request):
|
||||
|
||||
# Атомарная операция
|
||||
with db_transaction.atomic():
|
||||
# 1. Создаём заказ с автоматическим проставлением текущей даты и времени
|
||||
now = timezone.now()
|
||||
current_time = now.time()
|
||||
# 1. Создаём заказ с текущей датой и временем в локальном часовом поясе (Europe/Minsk)
|
||||
from django.utils import timezone as tz
|
||||
now_utc = tz.now() # Текущее время в UTC
|
||||
now_local = tz.localtime(now_utc) # Конвертируем в локальный часовой пояс (Europe/Minsk)
|
||||
current_time = now_local.time() # Извлекаем время в минском часовом поясе
|
||||
|
||||
order = Order.objects.create(
|
||||
customer=customer,
|
||||
is_delivery=False, # POS - всегда самовывоз
|
||||
pickup_warehouse=warehouse,
|
||||
status=completed_status, # Сразу "Выполнен"
|
||||
delivery_date=now.date(), # Текущая дата
|
||||
delivery_time_start=current_time, # Текущее время
|
||||
delivery_date=now_local.date(), # Текущая дата в минском часовом поясе
|
||||
delivery_time_start=current_time, # Текущее время (Минск)
|
||||
delivery_time_end=current_time, # То же время (точное время)
|
||||
special_instructions=order_notes,
|
||||
modified_by=request.user
|
||||
|
||||
Reference in New Issue
Block a user