- Добавить display_name в CustomUser (name или email)
- Исправить get_showcase_kits_api: заменить username на display_name
- Использовать Case/When с output_field для выбора имени на уровне БД
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Добавить модалку редактирования товара в корзине (edit_cart_item_modal.html)
- Создать JS модуль cart-item-editor.js для логики редактирования
- При клике на строку товара открывается модалка с возможностью изменения цены и количества
- Добавить визуальную индикацию изменённой цены (оранжевый цвет и звёздочка)
- Экспортировать корзину в window.cart для доступа из других модулей
- Добавить авто-выделение текста при фокусе в полях ввода
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Убрать -webkit-line-clamp для полного отображения резюме заказа
- Убрать клик для раскрытия/сворачивания текста
- Добавить vertical-align: middle для центровки содержимого ячеек
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Добавить name="submit" к кнопке формы
- Запретить PlatformAdmin доступ к CRUD операций UnitOfMeasure
- Исправить запрос sales_units_using через ProductSalesUnit.objects.filter
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Заменить Product.all_objects.all() на super().get_queryset(request),
так как у модели Product нет менеджера all_objects (нет soft delete).
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Исправлено чтение полей доставки из request.POST вместо form.cleaned_data,
так как они не включены в Meta.fields формы OrderForm.
Удалена отладочная информация.
- Исправлена логика удаления inline-форм для позиций заказа
- Добавлена обработка удаления сохранённых и новых форм
- Добавлено поле id и DELETE в OrderItemForm для корректной работы формсета
- Добавлена проверка на null для created_by на странице отладки
- Расширены права доступа к отладочной странице: теперь доступна owner и manager
- Добавлено логирование для отладки процесса обновления заказа
Добавляет обработчик события keydown для поля поиска. При нажатии
клавиши Enter вызывается метод blur(), чтобы скрыть виртуальную
клавиатуру на мобильных устройствах.
Добавлен параметр skip_stock_filter для отключения фильтрации по остаткам,
опция excludeKits для исключения комплектов из поиска, а также
добавлено явное указание API URL и расширенное логирование для отладки.
Добавлена кнопка выпадающего меню в мобильный интерфейс для доступа
к дополнительным функциям: "Отложенный заказ" и "На витрину".
Обновлен шаблон terminal.html с добавлением структуры дропдауна.
Добавлены стили в terminal.css для адаптивного отображения.
Реализована логика в terminal.js для обработки кликов по мобильным
кнопкам и вызова соответствующих десктопных действий.
- Добавить фиксированную панель корзины внизу экрана на мобильных
- Отображение количества товаров и суммы
- Кнопки "Продать" и "Очистить" всегда доступны
- Тап на панель открывает корзину как overlay
- Фиксировать поиск и категории сверху на мобильных
- Поиск всегда виден при скролле
- Категории в collapsible-блоке (сворачиваются)
- Категории в 3 колонки на мобильных
- Улучшить поиск по токенам (разбивает фразу на слова)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Добавить inline-редактирование цен в списке товаров
- Оптимизировать карточки товаров в POS-терминале
- Рефакторинг моделей единиц измерения
- Миграция unit -> base_unit в SalesUnit
- Улучшить UI форм создания/редактирования товаров
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Изменить брейкпоинт для 5 колонок с 992px на 1100px
- Увеличить ширину правой панели с 4/12 до 5/12 колонок
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Добавлено определение мобильных устройств через User-Agent и ширину экрана.
Фокус на поле поиска и поле ввода количества теперь устанавливается только
на десктопах, чтобы избежать появления экранной клавиатуры на мобильных.
Интеграция библиотеки Quill.js для форматирования текста в поле
резюме заказа. Добавлено отображение резюме в списке заказов с
возможностью раскрытия длинного текста. Обновлен вид резюме
в детальной странице заказа для поддержки HTML-разметки.
Добавлено текстовое поле `summary` в модель `Order` для хранения краткого
описания заказа на естественном языке.
Обновлена форма `OrderForm` с добавлением виджета textarea, плейсхолдера и
стилей. В шаблоны `order_form.html` и `order_detail.html` добавлены элементы
для ввода и отображения резюме заказа. Создана соответствующая миграция.
- Убрана фильтрация системного клиента из результатов поиска (api_search_customers)
- Добавлен флаг is_system_customer в результаты API поиска
- Создан новый API endpoint api_get_system_customer для быстрого получения системного клиента
- Добавлена кнопка 'Аноним' для быстрого выбора системного клиента
- Системный клиент выделяется жёлтым цветом и иконкой инкогнито в выпадающем списке
- Улучшена компактность результатов поиска (уменьшен шрифт до 13px)
- Изменены пропорции полей: клиент 9 колонок, статус 3 колонки (было 6:6)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Объединены изменения из промежуточных миграций в начальные миграции для упрощения истории базы данных.
Удалены миграции: accounts/0002, discounts/0002, orders/0003-0004, products/0002-0005, user_roles/0002, system_settings/0001-0002, integrations/0001-0002.
Добавлена автоматическая creation пользователя при установке пароля.
Обновлен UI страницы установки пароля с кастомным стилем.
Добавлен conditional rendering для кнопки синхронизации Recommerce.
Исправлены редиректы с 'index' на '/' в accounts views.
Добавлена проверка request.tenant в navbar и authenticate метод в auth backend.
Добавлена поддержка выбора основной категории (primary_category) для товаров и наборов, а также новая модель IntegrationCategoryMapping для связи категорий с внешними площадками. Теперь можно указать категорию товара, которая будет использоваться при экспорте на внешние площадки (Recommerce, WooCommerce и др.), с возможностью настройки маппинга категорий для каждого типа интеграции.