Code Duplication    Length = 12-13 lines in 9 locations

src/Vortex.php 9 locations

@@ 2477-2489 (lines=13) @@
2474
     * @param string $alias
2475
     * @return mixed
2476
     */
2477
    private function stringContainsExpression($query, $field, $params, $alias)
2478
    {
2479
        $contains = $query->expr()->orX();
2480
2481
        $index = 0;
2482
        foreach ($params as $string) {
2483
            $contains->add($query->expr()->like($field, ":contains_{$alias}_{$index}"));
2484
            $query->setParameter("contains_{$alias}_{$index}", '%' . $string . '%');
2485
            $index++;
2486
        }
2487
2488
        return $contains;
2489
    }
2490
2491
    /**
2492
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2510-2521 (lines=12) @@
2507
     * @param string $alias
2508
     * @return mixed
2509
     */
2510
    private function dateLtExpression($query, $field, $params, $alias)
2511
    {
2512
        $lt = $query->expr()->orX();
2513
        $index = 0;
2514
        foreach ($params as $datetime) {
2515
            $lt->add($query->expr()->lt($field, ":lt_{$alias}_{$index}"));
2516
            $query->setParameter("lt_{$alias}_{$index}", $datetime);
2517
            $index++;
2518
        }
2519
2520
        return $lt;
2521
    }
2522
2523
    /**
2524
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2530-2541 (lines=12) @@
2527
     * @param string $alias
2528
     * @return mixed
2529
     */
2530
    private function integerLtExpression($query, $field, $params, $alias)
2531
    {
2532
        $lt = $query->expr()->orX();
2533
        $index = 0;
2534
        foreach ($params as $datetime) {
2535
            $lt->add($query->expr()->lt($field, ":lt_{$alias}_{$index}"));
2536
            $query->setParameter("lt_{$alias}_{$index}", $datetime);
2537
            $index++;
2538
        }
2539
2540
        return $lt;
2541
    }
2542
2543
    /**
2544
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2550-2561 (lines=12) @@
2547
     * @param string $alias
2548
     * @return mixed
2549
     */
2550
    private function integerLteExpression($query, $field, $params, $alias)
2551
    {
2552
        $lte = $query->expr()->orX();
2553
        $index = 0;
2554
        foreach ($params as $datetime) {
2555
            $lte->add($query->expr()->lte($field, ":lte_{$alias}_{$index}"));
2556
            $query->setParameter("lte_{$alias}_{$index}", $datetime);
2557
            $index++;
2558
        }
2559
2560
        return $lte;
2561
    }
2562
2563
    /**
2564
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2570-2581 (lines=12) @@
2567
     * @param string $alias
2568
     * @return mixed
2569
     */
2570
    private function dateLteExpression($query, $field, $params, $alias)
2571
    {
2572
        $lte = $query->expr()->orX();
2573
        $index = 0;
2574
        foreach ($params as $datetime) {
2575
            $lte->add($query->expr()->lte($field, ":lte_{$alias}_{$index}"));
2576
            $query->setParameter("lte_{$alias}_{$index}", $datetime);
2577
            $index++;
2578
        }
2579
2580
        return $lte;
2581
    }
2582
2583
    /**
2584
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2590-2601 (lines=12) @@
2587
     * @param string $alias
2588
     * @return mixed
2589
     */
2590
    private function dateGtExpression($query, $field, $params, $alias)
2591
    {
2592
        $gt = $query->expr()->orX();
2593
        $index = 0;
2594
        foreach ($params as $datetime) {
2595
            $gt->add($query->expr()->gt($field, ":gt_{$alias}_{$index}"));
2596
            $query->setParameter("gt_{$alias}_{$index}", $datetime);
2597
            $index++;
2598
        }
2599
2600
        return $gt;
2601
    }
2602
2603
    /**
2604
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2610-2621 (lines=12) @@
2607
     * @param string $alias
2608
     * @return mixed
2609
     */
2610
    private function integerGtExpression($query, $field, $params, $alias)
2611
    {
2612
        $gt = $query->expr()->orX();
2613
        $index = 0;
2614
        foreach ($params as $datetime) {
2615
            $gt->add($query->expr()->gt($field, ":gt_{$alias}_{$index}"));
2616
            $query->setParameter("gt_{$alias}_{$index}", $datetime);
2617
            $index++;
2618
        }
2619
2620
        return $gt;
2621
    }
2622
2623
    /**
2624
     * @return string
@@ 2646-2657 (lines=12) @@
2643
     * @param string $alias
2644
     * @return mixed
2645
     */
2646
    private function integerGteExpression($query, $field, $params, $alias)
2647
    {
2648
        $gte = $query->expr()->orX();
2649
        $index = 0;
2650
        foreach ($params as $datetime) {
2651
            $gte->add($query->expr()->gte($field, ":gte_{$alias}_{$index}"));
2652
            $query->setParameter("gte_{$alias}_{$index}", $datetime);
2653
            $index++;
2654
        }
2655
2656
        return $gte;
2657
    }
2658
2659
    /**
2660
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2666-2677 (lines=12) @@
2663
     * @param string $alias
2664
     * @return mixed
2665
     */
2666
    private function dateGteExpression($query, $field, $params, $alias)
2667
    {
2668
        $gte = $query->expr()->orX();
2669
        $index = 0;
2670
        foreach ($params as $datetime) {
2671
            $gte->add($query->expr()->gte($field, ":gte_{$alias}_{$index}"));
2672
            $query->setParameter("gte_{$alias}_{$index}", $datetime);
2673
            $index++;
2674
        }
2675
2676
        return $gte;
2677
    }
2678
2679
    /**
2680
     * Does some crazy things