Исправлены две критические проблемы с автосохранением и восстановлением данных при перезагрузке страницы редактирования заказа: 1. ПРОБЛЕМА: Адрес доставки не восстанавливался после перезагрузки РЕШЕНИЕ (forms.py): - Добавлена инициализация полей адреса в OrderForm.__init__() - Поля заполняются из order.delivery_address при редактировании - Инициализируются все поля: улица, дом, квартира, подъезд, этаж, домофон, инструкции 2. ПРОБЛЕМА: Цены и количество товаров не сохранялись через автосохранение РЕШЕНИЕ (draft_service.py): - Добавлена обработка items в DraftOrderService.update_draft() - Автосохранение теперь обновляет/создаёт/удаляет позиции заказа - Сохраняются: product/product_kit, quantity, price, is_custom_price - Корректно определяется is_custom_price через сравнение с оригинальной ценой Логика обработки items: - Существующие позиции обновляются (product, quantity, price) - Новые позиции создаются - Лишние позиции удаляются - Поддержка как товаров (product_id), так и комплектов (product_kit_id) Теперь при перезагрузке страницы: ✅ Адрес доставки полностью восстанавливается во всех полях ✅ Товары сохраняются с правильными ценами и количествами ✅ Изменённые цены корректно отмечаются бейджем "Изменена" ✅ Все данные синхронизируются между автосохранением и базой данных 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
19 KiB
19 KiB