# Retail Pricing Test Тестовое задание по расчету розничной цены товара. ## Что внутри - `src/Pricing.php` — классы для складских партий, предложений поставщиков, расчета розничной цены и выходной цены поставщиков типа `c`. - `src/ProductFilterQuery.php` — SQL и Yii Query Builder для фильтра по производителям, категориям и масштабу. - `tests/run.php` — минимальная проверка ключевых сценариев. - `public/index.html` — страница для просмотра решения на домене. ## Проверка ```bash cd /root/retail-pricing-test php tests/run.php ``` ## Принятые допущения - Деньги считаются в копейках, без `float` в доменной логике. - Если по поставщикам нет данных вообще, приоритет имеет явно заданная складская выходная цена, но она валидируется как `sale >= purchase * minMarkup`. - Для товара на нашем складе нижняя граница цены считается по минимальной доступной складской партии: `purchasePrice * minMarkup`. - Для поставщиков типа `c` отдельная наценка `discountless` имеет приоритет над диапазонами цен.