Я хотел бы реализовать механизм, в котором конечные пользователи создают службы, и для этих служб они определяют правила, которые применяются к определенному диапазону дат, но другие правила могут преобладать в случае, если правило применяется и имеет более высокий приоритет.
Например, допустим, я создаю услугу, и я создаю правило, которое определяет цену на эту услугу с помощью «с понедельника по воскресенье цена составляет 1 $». Затем я создаю второе правило, которое гласит: «День 24 декабря - 2 доллара», и я устанавливаю это правило как более важное, чем первое, которое я упомянул.
В этом случае, если диапазон дат, которые я вычисляю, включает 24 декабря, двигатель должен указать, что стоимость составляет 2 $ за этот день.
То, что я пытаюсь найти, - это лучший способ реализовать этот движок, и как придумать что-то, что могло бы эффективно рассчитать общую стоимость, которая будет стоить услуга за данный диапазон дат.
У меня есть некоторые идеи, но, возможно, более очевидные, поэтому я пытаюсь понять, есть ли какой-то способ, о котором я не думал. Это более общий вопрос архитектуры программного обеспечения, но, если поможет, я реализую его на Python / Django в реляционной базе данных.
Спасибо