'Verify Transactions', 'message' => 'You have successfully verified submitted transactions' ]; } /** @var CheckStorageInvoiceTransactionProcessor */ private $checkStorageInvoiceTransactionProcessor; public function __construct( CheckStorageInvoiceTransactionProcessor $checkStorageInvoiceTransactionProcessor ) { $this->checkStorageInvoiceTransactionProcessor = $checkStorageInvoiceTransactionProcessor; } public function logic(Request $request) : JsonResponse { $invoice_ids = json_decode($request->route('transaction_ids')); $invoices = Transaction::whereIn('id', $invoice_ids)->get(); $result = $this->processInvoices($invoices); return $this->collectionResponse(TransactionVerifyResource::collection($result)); } private function processInvoices($invoices){ foreach ($invoices as $invoice) { $storages = $this->checkStorageInvoiceTransactionProcessor->executeShippingTransaction($invoice); $invoice['storages'] = $storages; } return $invoices; } }