'Payment Proof Document', 'message' => 'You have successfully submitted your payment proof document' ]; } /** @var FetchesTransaction */ private $fetchesTransaction; /** @var CreatePaymentProofDocumentProcessor */ private $createPaymentProofDocumentProcessor; /** * CreatePaymentProofDocumentLogic constructor. * @param CreatePaymentProofDocumentProcessor $createPaymentProofDocumentProcessor * @param FetchesTransaction $fetchesTransaction */ public function __construct(CreatePaymentProofDocumentProcessor $createPaymentProofDocumentProcessor, FetchesTransaction $fetchesTransaction) { $this->createPaymentProofDocumentProcessor = $createPaymentProofDocumentProcessor; $this->fetchesTransaction = $fetchesTransaction; } /** * @param Request $request * @return JsonResponse * @throws \App\Classes\Exceptions\MalformedRequestException */ public function logic(Request $request) : JsonResponse { $transaction = $this->fetchesTransaction->execute(['id' => $request->route('id')]); $this->createPaymentProofDocumentProcessor->execute($transaction, $request->input('files')); return $this->response([]); } }