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