Привет, я впервые сталкиваюсь с подобной задачей и не могу сдвинуться с мертвой точки, т.к. не понимаю с чего начать. По задаче стоят следующие условия:
1. Возможность указывать промокоды, которые работают на общую сумму в корзине или на один товар. Могут быть индивидуальными и общими.
2. Скидка на общую сумму в корзине, условия могут быть следующие:
1. от 5500 до 10000 скидка в 3%
2. от 10000 скидка в 5%
3. Скидка на один товар в 15% или в 350 рублей
4. Вместо скидки, подарок. Например, выдать игрушку при заказе товара.
5. Возможность запускать и останавливать акцию по датам.
Вижу следующие таблицы:
По главной таблице, следующие данные:
zone = 'cart' (cart, product) // К чему применить, к всей корзине или к продукту
conditions = [
0 => [
'operator' => '>='
'value' => '3500',
],
1 => [
'operator' => '<'
'value' => '5500',
]
]
bonus = [
'value' => '-3%' // вместо value, может быть product и его id, как подарок. Если процента нет, то отнимает рубли.
]
Заранее извините за кашу в голове, не могу пока лучше сформулировать свой вопрос. Как реализовать именно условия от и до, проверку к чему применяется и т.п? Работаю на Laravel