Техническое задание: Дробные количества товаров в OpenCart 3
Цель проекта
Модифицировать стандартный функционал интернет-магазина на OpenCart 3, чтобы позволить покупателям и администраторам оперировать товарами не только в штучных, но и в дробных (весовых) единицах с точным шагом прибавления.
Основные требования к функционалу
1. Административная часть
- В карточке товара в админ-панели добавить настройки для работы с дробными количествами.
- Возможность указать минимальный шаг изменения количества (например, 0.250 для 250 граммов).
- Возможность указать минимальное и максимальное количество для заказа.
- Настройка единицы измерения (кг, гр, л, мл и т.д.) для отображения на витрине.
2. Публичная часть (витрина магазина)
- Замена стандартного поля ввода количества на поле, учитывающее заданный шаг.
- Кнопки "+" и "-" должны увеличивать/уменьшать количество на указанный шаг (например, +0.500 кг).
- Корректное отображение единиц измерения в карточке товара, корзине и заказе.
- Валидация вводимых значений на соответствие шагу и допустимым пределам.
3. Общие требования
- Решение должно быть реализовано с минимальным вмешательством в ядро системы, предпочтительно через модификаторы (OCMOD) или расширение (extension).
- Обеспечить корректную работу с ценами и итоговыми суммами при дробных значениях.
- Функционал должен работать как для весовых товаров, так и для штучных (с шагом 1).
- Сохранение обратной совместимости с существующими заказами и данными.
Ожидаемый результат
Готовое рабочее решение, интегрированное в OpenCart 3, позволяющее продавать товары на развес/разлив с точным шагом измерения, с полным функционалом управления из админ-панели и удобным интерфейсом для покупателя.