| @@ 166-211 (lines=46) @@ | ||
| 163 | return $this; |
|
| 164 | } |
|
| 165 | ||
| 166 | public function setQueryOptionsFromRequestWithCustomFilter(Request $request = null, $filter) |
|
| 167 | { |
|
| 168 | $filters = $request->query->get('filtering', []); |
|
| 169 | $orFilters = $request->query->get('filtering_or', []); |
|
| 170 | $sorting = $request->query->get('sorting', []); |
|
| 171 | $printing = $request->query->get('printing', []); |
|
| 172 | $rel = $request->query->get('rel', ''); |
|
| 173 | $page = $request->query->get('page', ''); |
|
| 174 | $select = $request->query->get('select', $this->entityAlias); |
|
| 175 | $pageLength = $request->query->get('limit', 666); |
|
| 176 | $filtering = $request->query->get('filtering', ''); |
|
| 177 | $limit = $request->query->get('limit', ''); |
|
| 178 | ||
| 179 | $filters = array_merge($filters, $filter); |
|
| 180 | ||
| 181 | $filterOrCorrected = []; |
|
| 182 | ||
| 183 | $count = 0; |
|
| 184 | foreach ($orFilters as $key => $filter) { |
|
| 185 | if (is_array($filter)) { |
|
| 186 | foreach ($filter as $keyInternal => $internal) { |
|
| 187 | $filterOrCorrected[$keyInternal .'|' . $count] = $internal; |
|
| 188 | $count = $count + 1; |
|
| 189 | } |
|
| 190 | } else { |
|
| 191 | $filterOrCorrected[$key] = $filter; |
|
| 192 | } |
|
| 193 | } |
|
| 194 | ||
| 195 | $this->queryOptions = QueryBuilderOptions::fromArray([ |
|
| 196 | '_route' => $request->attributes->get('_route'), |
|
| 197 | 'customer_id' => $request->attributes->get('customer_id'), |
|
| 198 | 'id' => $request->attributes->get('id'), |
|
| 199 | 'filtering' => $filtering, |
|
| 200 | 'limit' => $limit, |
|
| 201 | 'page' => $page, |
|
| 202 | 'filters' => $filters, |
|
| 203 | 'orFilters' => $filterOrCorrected, |
|
| 204 | 'sorting' => $sorting, |
|
| 205 | 'rel' => $rel, |
|
| 206 | 'printing' => $printing, |
|
| 207 | 'select' => $select, |
|
| 208 | ]); |
|
| 209 | ||
| 210 | return $this; |
|
| 211 | } |
|
| 212 | ||
| 213 | public function setQueryOptionsFromRequestWithCustomOrFilter(Request $request = null, $orFilter) |
|
| 214 | { |
|
| @@ 213-258 (lines=46) @@ | ||
| 210 | return $this; |
|
| 211 | } |
|
| 212 | ||
| 213 | public function setQueryOptionsFromRequestWithCustomOrFilter(Request $request = null, $orFilter) |
|
| 214 | { |
|
| 215 | $filters = $request->query->get('filtering', []); |
|
| 216 | $orFilters = $request->query->get('filtering_or', []); |
|
| 217 | $sorting = $request->query->get('sorting', []); |
|
| 218 | $printing = $request->query->get('printing', []); |
|
| 219 | $rel = $request->query->get('rel', ''); |
|
| 220 | $page = $request->query->get('page', ''); |
|
| 221 | $select = $request->query->get('select', $this->entityAlias); |
|
| 222 | $pageLength = $request->query->get('limit', 666); |
|
| 223 | $filtering = $request->query->get('filtering', ''); |
|
| 224 | $limit = $request->query->get('limit', ''); |
|
| 225 | ||
| 226 | $orFilters = array_merge($orFilters, $orFilter); |
|
| 227 | ||
| 228 | $filterOrCorrected = []; |
|
| 229 | ||
| 230 | $count = 0; |
|
| 231 | foreach ($orFilters as $key => $filter) { |
|
| 232 | if (is_array($filter)) { |
|
| 233 | foreach ($filter as $keyInternal => $internal) { |
|
| 234 | $filterOrCorrected[$keyInternal .'|' . $count] = $internal; |
|
| 235 | $count = $count + 1; |
|
| 236 | } |
|
| 237 | } else { |
|
| 238 | $filterOrCorrected[$key] = $filter; |
|
| 239 | } |
|
| 240 | } |
|
| 241 | ||
| 242 | $this->queryOptions = QueryBuilderOptions::fromArray([ |
|
| 243 | '_route' => $request->attributes->get('_route'), |
|
| 244 | 'customer_id' => $request->attributes->get('customer_id'), |
|
| 245 | 'id' => $request->attributes->get('id'), |
|
| 246 | 'filtering' => $filtering, |
|
| 247 | 'limit' => $limit, |
|
| 248 | 'page' => $page, |
|
| 249 | 'filters' => $filters, |
|
| 250 | 'orFilters' => $filterOrCorrected, |
|
| 251 | 'sorting' => $sorting, |
|
| 252 | 'rel' => $rel, |
|
| 253 | 'printing' => $printing, |
|
| 254 | 'select' => $select, |
|
| 255 | ]); |
|
| 256 | ||
| 257 | return $this; |
|
| 258 | } |
|
| 259 | ||
| 260 | public function getRequest() |
|
| 261 | { |
|