Conditions | 2 |
Paths | 1 |
Total Lines | 16 |
Code Lines | 9 |
Lines | 0 |
Ratio | 0 % |
Changes | 1 | ||
Bugs | 0 | Features | 0 |
1 | <?php |
||
20 | public function batchUpdate(BatchUpdateRequest $request) |
||
21 | { |
||
22 | // Validation rules and auth capabilities handled in BatchUpdateApplicationReview. |
||
23 | $validatedRequest = $request->validated(); |
||
24 | $inputData = collect($validatedRequest); |
||
|
|||
25 | $applicationReviews = ApplicationReview::whereIn('id', $inputData->pluck('id')->all())->get(); |
||
26 | |||
27 | DB::transaction(function () use ($applicationReviews, $inputData) { |
||
28 | foreach ($applicationReviews as $applicationReview) { |
||
29 | $updatedApplicationReview = $inputData->firstWhere('id', $applicationReview->id); |
||
30 | $applicationReview->fill($updatedApplicationReview); |
||
31 | $applicationReview->save(); |
||
32 | } |
||
33 | }, 3); // Retry transaction up to three times if deadlock occurs. |
||
34 | |||
35 | return JsonResource::collection($applicationReviews->fresh()); |
||
36 | } |
||
38 |