first commit
Some checks failed
Build / run (push) Has been cancelled

This commit is contained in:
maher
2025-10-29 11:42:25 +01:00
commit 703f50a09d
4595 changed files with 385164 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
<?php
namespace Common\Csv;
use Auth;
use Carbon\Carbon;
use Common\Core\BaseController;
use Illuminate\Http\Request;
use Storage;
use Symfony\Component\HttpFoundation\StreamedResponse;
class BaseCsvExportController extends BaseController
{
public function __construct(protected Request $request)
{
$this->middleware('auth');
}
public function download(CsvExport $csvExport): StreamedResponse
{
if (
!Auth::user()->hasPermission('admin') &&
$csvExport->user_id !== Auth::id()
) {
abort(403);
}
return Storage::download(
$csvExport->filePath(),
$csvExport->download_name,
);
}
protected function exportUsing(BaseCsvExportJob $exportJob)
{
$csvExport = CsvExport::where(
'cache_name',
$exportJob->cacheName(),
)->first();
if (
$csvExport &&
$csvExport->created_at->greaterThan(Carbon::now()->addMinutes(-30))
) {
return $this->success([
'downloadPath' => $csvExport->downloadLink(),
]);
}
$this->dispatch($exportJob);
return $this->success(['result' => 'jobQueued']);
}
}