parseDataTableQuery($request); $status = $request->string('status')->toString(); $subjectType = $request->string('subject_type')->toString(); $action = $request->string('action')->toString(); return Inertia::render('admin/manage/owner-verifications/Index', [ 'verificationRequests' => $this->ownerVerificationService->paginateForIndex( $request->user(), $tableQuery, $status, $subjectType, $action, ), 'filters' => $this->dataTableFilters($tableQuery, [ 'status' => $status, 'subject_type' => $subjectType, 'action' => $action, ]), 'statusOptions' => OwnerVerificationStatus::selectOptions(), 'subjectOptions' => $this->ownerVerificationService->subjectTypeOptions($request->user()), 'actionOptions' => OwnerVerificationAction::selectOptions(), ]); } public function approveCutting(ApproveVerificationRequest $request, Cutting $cutting): RedirectResponse { $this->stockService->approveVerification( $cutting, $request->user(), $request->validated('approval_note'), ); $this->flashSuccess('Verifikasi cutting berhasil disetujui. Stok produk telah ditambahkan ke toko.'); $fallback = route('admin.manage.owner_verifications.index'); return back(302, [], $fallback); } public function rejectCutting(RejectVerificationRequest $request, Cutting $cutting): RedirectResponse { $this->stockService->rejectVerification( $cutting, $request->user(), $request->validated('reason'), ); $this->flashSuccess('Verifikasi cutting berhasil ditolak.'); $fallback = route('admin.manage.owner_verifications.index'); return back(302, [], $fallback); } public function approveRequest( ApproveVerificationRequest $request, OwnerVerificationRequest $ownerVerificationRequest, ): RedirectResponse { $this->ownerVerificationService->approveRequest( $ownerVerificationRequest, $request->user(), $request->validated('approval_note'), ); $this->flashSuccess('Verifikasi berhasil disetujui.'); $fallback = route('admin.manage.owner_verifications.index'); return back(302, [], $fallback); } public function rejectRequest( RejectVerificationRequest $request, OwnerVerificationRequest $ownerVerificationRequest, ): RedirectResponse { $this->ownerVerificationService->rejectRequest( $ownerVerificationRequest, $request->user(), $request->validated('reason'), ); $this->flashSuccess('Verifikasi berhasil ditolak.'); $fallback = route('admin.manage.owner_verifications.index'); return back(302, [], $fallback); } }