Есть в еластике продукты, к продуктам прикреплены разные цены для каждого продукта.
1) есть цена продукта регулярная,
2) есть цена продукта по скидке, которая наступает в определенный день(может отсутствовать),
3) есть цена, у этого же продукта в результате торга(может отсутствовать).
{
"name": "product1",
"price": 3000,
"product_discount": {
"start_discount": "2018-02-21",
"discount": 1500
},
"torg": {
"min_price": 120,
"cur_price": 300,
"start_torg": "2018-01-21",
"end_torg" : "2018-02-05"
}
}
Как написать запрос формата "range", который будет ориентироваться на даты по торгу, если торга нет или текущая дата не входит в интервал то по скидке, если нет скидки или скидака пока ещё не актуальна, то по цене ?