Skip to content

feat(settings): allow negative delivery and payment costs#246

Open
Ibochkarev wants to merge 1 commit intomodx-pro:betafrom
Ibochkarev:feature/negative-delivery-payment-cost-211
Open

feat(settings): allow negative delivery and payment costs#246
Ibochkarev wants to merge 1 commit intomodx-pro:betafrom
Ibochkarev:feature/negative-delivery-payment-cost-211

Conversation

@Ibochkarev
Copy link
Copy Markdown
Member

Описание

Добавляет поддержку отрицательной дополнительной стоимости для способов доставки и оплаты.

Поле price теперь может хранить фиксированные скидки (-10) и процентные скидки (-10%) так же, как положительные наценки. Для сохранения настроек добавлен общий нормализатор PriceAdjustment, чтобы manager API и legacy processors одинаково обрабатывали значения с запятыми, процентами и лишними символами.

Тип изменений

  • Исправление бага (non-breaking change)
  • Новая функциональность (non-breaking change)
  • Breaking change (изменение, ломающее обратную совместимость)
  • Рефакторинг (без изменения функциональности)
  • Документация
  • Другое (опишите):

Связанные Issues

Closes #211

Как это было протестировано?

Проверены синтаксис изменённых PHP-файлов, diff на whitespace-ошибки и smoke-кейсы нормализации/расчёта для PriceAdjustment (10, -10, 10%, -10%, 1,5%, 101%).

  • Ручное тестирование
  • Автоматические тесты (php -l, git diff --check, PHP smoke test)
  • Тестирование на разных версиях PHP/MODX

Конфигурация тестирования:

  • MiniShop3: текущая ветка beta
  • MODX: не запускался локально
  • PHP: локальный CLI, требование проекта >=8.2

Скриншоты (если применимо)

Не применимо.

Чеклист

  • Код соответствует стилю проекта
  • Добавлены/обновлены комментарии в сложных местах
  • Изменения не ломают существующую функциональность
  • Лексиконы добавлены на двух языках (ru/en)
  • PHPStan проходит без новых ошибок
  • ESLint проходит без ошибок (для JS/Vue изменений)
  • Обновлён CHANGELOG.md (для значимых изменений)

Дополнительные заметки

Перед PR проведён code review текущего diff: старые положительные сценарии 10 и 10% сохраняют прежний расчёт, новые отрицательные значения работают как скидки. Отдельный PHPUnit-набор в репозитории не найден.

@Ibochkarev Ibochkarev requested a review from biz87 May 8, 2026 06:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] Отрицательная стоимость доставки и оплаты

1 participant