Code Duplication    Length = 12-13 lines in 9 locations

src/Vortex.php 9 locations

@@ 2598-2610 (lines=13) @@
2595
     * @param string $alias
2596
     * @return mixed
2597
     */
2598
    private function stringContainsExpression($query, $field, $params, $alias)
2599
    {
2600
        $contains = $query->expr()->orX();
2601
2602
        $index = 0;
2603
        foreach ($params as $string) {
2604
            $contains->add($query->expr()->like($field, ":contains_{$alias}_{$index}"));
2605
            $query->setParameter("contains_{$alias}_{$index}", '%' . $string . '%');
2606
            $index++;
2607
        }
2608
2609
        return $contains;
2610
    }
2611
2612
    /**
2613
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2631-2642 (lines=12) @@
2628
     * @param string $alias
2629
     * @return mixed
2630
     */
2631
    private function dateLtExpression($query, $field, $params, $alias)
2632
    {
2633
        $lt = $query->expr()->orX();
2634
        $index = 0;
2635
        foreach ($params as $datetime) {
2636
            $lt->add($query->expr()->lt($field, ":lt_{$alias}_{$index}"));
2637
            $query->setParameter("lt_{$alias}_{$index}", $datetime);
2638
            $index++;
2639
        }
2640
2641
        return $lt;
2642
    }
2643
2644
    /**
2645
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2651-2662 (lines=12) @@
2648
     * @param string $alias
2649
     * @return mixed
2650
     */
2651
    private function integerLtExpression($query, $field, $params, $alias)
2652
    {
2653
        $lt = $query->expr()->orX();
2654
        $index = 0;
2655
        foreach ($params as $datetime) {
2656
            $lt->add($query->expr()->lt($field, ":lt_{$alias}_{$index}"));
2657
            $query->setParameter("lt_{$alias}_{$index}", $datetime);
2658
            $index++;
2659
        }
2660
2661
        return $lt;
2662
    }
2663
2664
    /**
2665
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2671-2682 (lines=12) @@
2668
     * @param string $alias
2669
     * @return mixed
2670
     */
2671
    private function integerLteExpression($query, $field, $params, $alias)
2672
    {
2673
        $lte = $query->expr()->orX();
2674
        $index = 0;
2675
        foreach ($params as $datetime) {
2676
            $lte->add($query->expr()->lte($field, ":lte_{$alias}_{$index}"));
2677
            $query->setParameter("lte_{$alias}_{$index}", $datetime);
2678
            $index++;
2679
        }
2680
2681
        return $lte;
2682
    }
2683
2684
    /**
2685
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2691-2702 (lines=12) @@
2688
     * @param string $alias
2689
     * @return mixed
2690
     */
2691
    private function dateLteExpression($query, $field, $params, $alias)
2692
    {
2693
        $lte = $query->expr()->orX();
2694
        $index = 0;
2695
        foreach ($params as $datetime) {
2696
            $lte->add($query->expr()->lte($field, ":lte_{$alias}_{$index}"));
2697
            $query->setParameter("lte_{$alias}_{$index}", $datetime);
2698
            $index++;
2699
        }
2700
2701
        return $lte;
2702
    }
2703
2704
    /**
2705
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2711-2722 (lines=12) @@
2708
     * @param string $alias
2709
     * @return mixed
2710
     */
2711
    private function dateGtExpression($query, $field, $params, $alias)
2712
    {
2713
        $gt = $query->expr()->orX();
2714
        $index = 0;
2715
        foreach ($params as $datetime) {
2716
            $gt->add($query->expr()->gt($field, ":gt_{$alias}_{$index}"));
2717
            $query->setParameter("gt_{$alias}_{$index}", $datetime);
2718
            $index++;
2719
        }
2720
2721
        return $gt;
2722
    }
2723
2724
    /**
2725
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2731-2742 (lines=12) @@
2728
     * @param string $alias
2729
     * @return mixed
2730
     */
2731
    private function integerGtExpression($query, $field, $params, $alias)
2732
    {
2733
        $gt = $query->expr()->orX();
2734
        $index = 0;
2735
        foreach ($params as $datetime) {
2736
            $gt->add($query->expr()->gt($field, ":gt_{$alias}_{$index}"));
2737
            $query->setParameter("gt_{$alias}_{$index}", $datetime);
2738
            $index++;
2739
        }
2740
2741
        return $gt;
2742
    }
2743
2744
    /**
2745
     * @return string
@@ 2767-2778 (lines=12) @@
2764
     * @param string $alias
2765
     * @return mixed
2766
     */
2767
    private function integerGteExpression($query, $field, $params, $alias)
2768
    {
2769
        $gte = $query->expr()->orX();
2770
        $index = 0;
2771
        foreach ($params as $datetime) {
2772
            $gte->add($query->expr()->gte($field, ":gte_{$alias}_{$index}"));
2773
            $query->setParameter("gte_{$alias}_{$index}", $datetime);
2774
            $index++;
2775
        }
2776
2777
        return $gte;
2778
    }
2779
2780
    /**
2781
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2787-2798 (lines=12) @@
2784
     * @param string $alias
2785
     * @return mixed
2786
     */
2787
    private function dateGteExpression($query, $field, $params, $alias)
2788
    {
2789
        $gte = $query->expr()->orX();
2790
        $index = 0;
2791
        foreach ($params as $datetime) {
2792
            $gte->add($query->expr()->gte($field, ":gte_{$alias}_{$index}"));
2793
            $query->setParameter("gte_{$alias}_{$index}", $datetime);
2794
            $index++;
2795
        }
2796
2797
        return $gte;
2798
    }
2799
2800
    /**
2801
     * Does some crazy things