Code Duplication    Length = 12-13 lines in 9 locations

src/Vortex.php 9 locations

@@ 2126-2138 (lines=13) @@
2123
     * @param string $alias
2124
     * @return mixed
2125
     */
2126
    private function stringContainsExpression($query, $field, $params, $alias)
2127
    {
2128
        $contains = $query->expr()->orX();
2129
2130
        $index = 0;
2131
        foreach ($params as $string) {
2132
            $contains->add($query->expr()->like($field, ":contains_{$alias}_{$index}"));
2133
            $query->setParameter("contains_{$alias}_{$index}", '%' . $string . '%');
2134
            $index++;
2135
        }
2136
2137
        return $contains;
2138
    }
2139
2140
    /**
2141
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2159-2170 (lines=12) @@
2156
     * @param string $alias
2157
     * @return mixed
2158
     */
2159
    private function dateLtExpression($query, $field, $params, $alias)
2160
    {
2161
        $lt = $query->expr()->orX();
2162
        $index = 0;
2163
        foreach ($params as $datetime) {
2164
            $lt->add($query->expr()->lt($field, ":lt_{$alias}_{$index}"));
2165
            $query->setParameter("lt_{$alias}_{$index}", $datetime);
2166
            $index++;
2167
        }
2168
2169
        return $lt;
2170
    }
2171
2172
    /**
2173
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2179-2190 (lines=12) @@
2176
     * @param string $alias
2177
     * @return mixed
2178
     */
2179
    private function integerLtExpression($query, $field, $params, $alias)
2180
    {
2181
        $lt = $query->expr()->orX();
2182
        $index = 0;
2183
        foreach ($params as $datetime) {
2184
            $lt->add($query->expr()->lt($field, ":lt_{$alias}_{$index}"));
2185
            $query->setParameter("lt_{$alias}_{$index}", $datetime);
2186
            $index++;
2187
        }
2188
2189
        return $lt;
2190
    }
2191
2192
    /**
2193
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2199-2210 (lines=12) @@
2196
     * @param string $alias
2197
     * @return mixed
2198
     */
2199
    private function integerLteExpression($query, $field, $params, $alias)
2200
    {
2201
        $lte = $query->expr()->orX();
2202
        $index = 0;
2203
        foreach ($params as $datetime) {
2204
            $lte->add($query->expr()->lte($field, ":lte_{$alias}_{$index}"));
2205
            $query->setParameter("lte_{$alias}_{$index}", $datetime);
2206
            $index++;
2207
        }
2208
2209
        return $lte;
2210
    }
2211
2212
    /**
2213
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2219-2230 (lines=12) @@
2216
     * @param string $alias
2217
     * @return mixed
2218
     */
2219
    private function dateLteExpression($query, $field, $params, $alias)
2220
    {
2221
        $lte = $query->expr()->orX();
2222
        $index = 0;
2223
        foreach ($params as $datetime) {
2224
            $lte->add($query->expr()->lte($field, ":lte_{$alias}_{$index}"));
2225
            $query->setParameter("lte_{$alias}_{$index}", $datetime);
2226
            $index++;
2227
        }
2228
2229
        return $lte;
2230
    }
2231
2232
    /**
2233
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2239-2250 (lines=12) @@
2236
     * @param string $alias
2237
     * @return mixed
2238
     */
2239
    private function dateGtExpression($query, $field, $params, $alias)
2240
    {
2241
        $gt = $query->expr()->orX();
2242
        $index = 0;
2243
        foreach ($params as $datetime) {
2244
            $gt->add($query->expr()->gt($field, ":gt_{$alias}_{$index}"));
2245
            $query->setParameter("gt_{$alias}_{$index}", $datetime);
2246
            $index++;
2247
        }
2248
2249
        return $gt;
2250
    }
2251
2252
    /**
2253
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2259-2270 (lines=12) @@
2256
     * @param string $alias
2257
     * @return mixed
2258
     */
2259
    private function integerGtExpression($query, $field, $params, $alias)
2260
    {
2261
        $gt = $query->expr()->orX();
2262
        $index = 0;
2263
        foreach ($params as $datetime) {
2264
            $gt->add($query->expr()->gt($field, ":gt_{$alias}_{$index}"));
2265
            $query->setParameter("gt_{$alias}_{$index}", $datetime);
2266
            $index++;
2267
        }
2268
2269
        return $gt;
2270
    }
2271
2272
    /**
2273
     * @return string
@@ 2295-2306 (lines=12) @@
2292
     * @param string $alias
2293
     * @return mixed
2294
     */
2295
    private function integerGteExpression($query, $field, $params, $alias)
2296
    {
2297
        $gte = $query->expr()->orX();
2298
        $index = 0;
2299
        foreach ($params as $datetime) {
2300
            $gte->add($query->expr()->gte($field, ":gte_{$alias}_{$index}"));
2301
            $query->setParameter("gte_{$alias}_{$index}", $datetime);
2302
            $index++;
2303
        }
2304
2305
        return $gte;
2306
    }
2307
2308
    /**
2309
     * @param \Doctrine\ORM\QueryBuilder $query
@@ 2315-2326 (lines=12) @@
2312
     * @param string $alias
2313
     * @return mixed
2314
     */
2315
    private function dateGteExpression($query, $field, $params, $alias)
2316
    {
2317
        $gte = $query->expr()->orX();
2318
        $index = 0;
2319
        foreach ($params as $datetime) {
2320
            $gte->add($query->expr()->gte($field, ":gte_{$alias}_{$index}"));
2321
            $query->setParameter("gte_{$alias}_{$index}", $datetime);
2322
            $index++;
2323
        }
2324
2325
        return $gte;
2326
    }
2327
2328
    /**
2329
     * Does some crazy things