Интеграция библиотеки Quill.js для форматирования текста в поле
резюме заказа. Добавлено отображение резюме в списке заказов с
возможностью раскрытия длинного текста. Обновлен вид резюме
в детальной странице заказа для поддержки HTML-разметки.
Проблема:
При продаже витринного комплекта резервы оставались в статусе 'reserved'
вместо 'converted_to_sale'. Товары из состава комплекта не освобождались.
Причина:
В методе sell_showcase_items порядок операций был неправильный:
1. create_sale_from_reservation вызывался ПЕРВЫМ
2. reservation.order_item устанавливался ПОСЛЕ
В SaleProcessor.create_sale_from_reservation есть логика:
if order and reservation.order_item:
sale_price = reservation.order_item.price
else:
sale_price = reservation.product.actual_price
Так как order_item был None, цена бралась из product.actual_price,
а не из OrderItem, и резерв не конвертировался корректно.
Решение:
Правильный порядок операций:
1. Устанавливаем reservation.order_item = order_item
2. Сохраняем reservation
3. Вызываем create_sale_from_reservation (теперь order_item доступен)
4. Обновляем статус на 'converted_to_sale'
5. Сохраняем финальное состояние
Теперь резервы корректно преобразуются в продажи с правильной ценой
из позиции заказа, и товары освобождаются после продажи.
- Расширен календарь с 9 до 19 дней (±9 от центра)
- Календарь теперь занимает всю ширину страницы
- Исправлены метки "Вчера/Сегодня/Завтра" - теперь привязаны к реальным датам, а не к позициям в ленте
- Добавлена автоматическая отправка формы при выборе даты
- Обновлён дизайн:
* Сегодняшний день выделен светло-голубым цветом (более мягкий оттенок)
* Выбранная дата обведена красной рамкой (как на настенном календаре)
- Добавлен блок extra_css в base.html для подключения дополнительных стилей
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Реализовано:
- Создан набор переиспользуемых шаблонных тегов для отображения качества
- quality_badge_mini: маленький значок в углу фото
- quality_badge_full: полный индикатор с размером фото
- quality_indicator: включаемый тег с позиционированием
- quality_icon_only: только символ качества для списков
- Добавлены шаблонные теги в:
- product_detail.html: индикатор в углу миниатюр + в модальной галерее
- product_list.html: иконка качества в таблице товаров
- productkit_detail.html: индикатор в углу фото комплектов
- Создан CSS с ненавязчивыми стилями:
- Полупрозрачные индикаторы (opacity: 0.8)
- Компактные размеры (не отвлекает от фото)
- Отзывчивость на мобильных устройствах
- Анимации при наведении
- Обновлена админ панель:
- Добавлены 3 новых экшена для поиска товаров по качеству
- show_poor_quality_photos: фильтр на товары требующие обновления
- show_excellent_quality_photos: фильтр на товары с хорошим качеством
- show_all_quality_levels: статистика распределения качества
Интеграция в базу template tags:
- myproject/products/templatetags/quality_tags.py (новый файл)
- myproject/static/css/quality_indicator.css (новый файл)
- myproject/products/templates/products/includes/quality_badge.html (новый файл)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>