169 похожих чатов

Парни, привет. Нужен совет или сказать, что на верном пути.

Есть код (на скрине), продукт. Согласно условию, если товар один из 3х типов, то на не него не применять акцию. Подобных мест несколько.

Как это возможно обойти?

В продукт положить полиморфный клас относительно типа, задача которого расчитать процент скидки?

Не знаю как пока по другому подойти к этому.

10 ответов

6 просмотров

Вынеси в тот же app/Actions/ProductCanHasDiscountAction.php

Внутри экшна делаешь возврат true/false Потом что-то типа if(!ProductCanHasDiscountAction::handle($product)) { $salesPercent = 0 } А ещё лучше скомбинировать с return через тернарный оператор

А модели разные?

Oleksandr-🌵 Автор вопроса
Oleksandr-🌵 Автор вопроса
PSYTRGLES
А модели разные?

Нет, одна и та же.

Oleksandr 🌵
Нет, одна и та же.

Метод у модели, че не 😊

Oleksandr-🌵 Автор вопроса
PSYTRGLES
Метод у модели, че не 😊

Изначально так думал, а потом такой, а вдруг есть ещо другой вариант.

Я бы так оставил.

Похожие вопросы

Обсуждают сегодня

подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
есть тут кто-то , кто только начал изучать си? если проходите курс на степике или как-то сами изучаете, пишите, может, скооперируемся?..
Eule
25
Скажите, тут нет проблемы? IMyInterface1 = interface function GetInterface2: IInterface2; ... function TMyInterface.GetInterface2: IInterface2; begin Result := TI...
Ruslan aka DUDE
9
Добрый день. Абракадабра в 12-й студии ввела новый тип поля БД TSQLTimeStampOffset, использую в постгресе timestampz и вот с 12-й версии начались чудеса! До этого поля times...
Delphi Photo
9
Коллеги, здравствуйте! А можно узнать ваше мнение относительно Wolfram Mathematica vs Julia? Просто у меня стоит выбор между тем, чтобы продолжить преподавать Wolfram Mathemat...
Илья Гаража
10
Обновленный chat тестили уже господа? Готовимся на заводы ? Простой проект на ларавель собирает за 1 ответ..
Jacov Borisov
14
А если без шуток, на чем десктоп сейчас пишут кроссплатформенный (ну чтобы с минимальным допиливанием под каждую платформу) и чтобы хорошая производительность софта была. Толь...
🐈
9
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
кому не сложно распишите пожалуйста для какой цели тут вот эти скобки и в них пихается указатель?
Михаил Helper
15
На одной бирже предложили обновить modx evo 1.0.1 Как думаете, стоит браться?
Artem
9
Карта сайта