'Updated EInvoice Request', 'message' => 'You have successfully updated company E-Invoice request' ]; } /** @var FetchesCompany */ private $fetchesCompany; /** @var UpdatesCompanyEInvoiceRequest */ private $updatesCompanyEInvoiceRequest; /** * UpdateCompanyEInvoiceRequestChangeLogic constructor. * @param FetchesCompany $fetchesCompany * @param UpdatesCompanyEInvoiceRequest $updatesCompanyEInvoiceRequest */ public function __construct(FetchesCompany $fetchesCompany, UpdatesCompanyEInvoiceRequest $updatesCompanyEInvoiceRequest) { $this->fetchesCompany = $fetchesCompany; $this->updatesCompanyEInvoiceRequest = $updatesCompanyEInvoiceRequest; } /** * @param Request $request * @return JsonResponse * @throws \App\Classes\Exceptions\AccessForbiddenException * @throws \App\Classes\Exceptions\MalformedRequestException * @throws \App\Classes\Exceptions\RequestValidationException */ public function logic(Request $request) : JsonResponse { $dto = new EInvoiceRequestDTO($request->all()); $company = $this->fetchesCompany->execute(['id' => $dto->companyId]); if($company->e_invoice === 1){ $this->updatesCompanyEInvoiceRequest->execute($company, $dto->eInvoiceRequest); } return $this->response([]); } }