| @@ 234-242 (lines=9) @@ | ||
| 231 | * @link https://www.elastic.co/guide/en/elasticsearch/reference/5.0/query-dsl-range-query.html |
|
| 232 | * @return $this; |
|
| 233 | */ |
|
| 234 | public function whereBetween($field, $min, $max, $dateFormat = null) |
|
| 235 | { |
|
| 236 | $params = ['gte' => $min, 'lte' => $max]; |
|
| 237 | if ($dateFormat) { |
|
| 238 | $params['format'] = $dateFormat; |
|
| 239 | } |
|
| 240 | $this->filters[] = ['range' => [$field => $params]]; |
|
| 241 | return $this; |
|
| 242 | } |
|
| 243 | ||
| 244 | /** |
|
| 245 | * Добавить в фильтр сложное условие с вычислениями, на скриптовом языке painless или groovy |
|
| @@ 282-290 (lines=9) @@ | ||
| 279 | * @param null $dateFormat |
|
| 280 | * @return $this |
|
| 281 | */ |
|
| 282 | public function whereGreaterOrEqual($field, $value, $dateFormat = null) |
|
| 283 | { |
|
| 284 | $params = ['gte' => $value]; |
|
| 285 | if ($dateFormat) { |
|
| 286 | $params['format'] = $dateFormat; |
|
| 287 | } |
|
| 288 | $this->filters[] = ['range' => [$field => $params]]; |
|
| 289 | return $this; |
|
| 290 | } |
|
| 291 | ||
| 292 | /** |
|
| 293 | * добавить фильтр "больше чем" |
|
| @@ 299-307 (lines=9) @@ | ||
| 296 | * @param null $dateFormat |
|
| 297 | * @return $this |
|
| 298 | */ |
|
| 299 | public function whereGreater($field, $value, $dateFormat = null) |
|
| 300 | { |
|
| 301 | $params = ['gt' => $value]; |
|
| 302 | if ($dateFormat) { |
|
| 303 | $params['format'] = $dateFormat; |
|
| 304 | } |
|
| 305 | $this->filters[] = ['range' => [$field => $params]]; |
|
| 306 | return $this; |
|
| 307 | } |
|
| 308 | ||
| 309 | /** |
|
| 310 | * добавить фильтр "меньше или равно" |
|
| @@ 316-324 (lines=9) @@ | ||
| 313 | * @param null $dateFormat |
|
| 314 | * @return $this |
|
| 315 | */ |
|
| 316 | public function whereLessOrEqual($field, $value, $dateFormat = null) |
|
| 317 | { |
|
| 318 | $params = ['lte' => $value]; |
|
| 319 | if ($dateFormat) { |
|
| 320 | $params['format'] = $dateFormat; |
|
| 321 | } |
|
| 322 | $this->filters[] = ['range' => [$field => $params]]; |
|
| 323 | return $this; |
|
| 324 | } |
|
| 325 | ||
| 326 | /** |
|
| 327 | * добавить фильтр "меньше чем" |
|
| @@ 333-341 (lines=9) @@ | ||
| 330 | * @param null $dateFormat |
|
| 331 | * @return $this |
|
| 332 | */ |
|
| 333 | public function whereLess($field, $value, $dateFormat = null) |
|
| 334 | { |
|
| 335 | $params = ['lt' => $value]; |
|
| 336 | if ($dateFormat) { |
|
| 337 | $params['format'] = $dateFormat; |
|
| 338 | } |
|
| 339 | $this->filters[] = ['range' => [$field => $params]]; |
|
| 340 | return $this; |
|
| 341 | } |
|
| 342 | ||
| 343 | ||
| 344 | /** |
|