wip
This commit is contained in:
@@ -2,13 +2,12 @@
|
|||||||
|
|
||||||
namespace App\Filament\Clusters\Cards\Cards;
|
namespace App\Filament\Clusters\Cards\Cards;
|
||||||
|
|
||||||
use App\Filament\Clusters\Cards\CardsCluster;
|
|
||||||
use App\Filament\Clusters\Cards\Cards\Pages\ManageCards;
|
use App\Filament\Clusters\Cards\Cards\Pages\ManageCards;
|
||||||
|
use App\Filament\Clusters\Cards\CardsCluster;
|
||||||
use App\Modules\AppHelpers\Repositories\DateHelper;
|
use App\Modules\AppHelpers\Repositories\DateHelper;
|
||||||
use App\Modules\CardBalance\Filament\Actions\ShowCardBalanceAction;
|
use App\Modules\Card\Models\Card;
|
||||||
use App\Modules\CardBalance\Repositories\CardBalanceRepository;
|
use App\Modules\CardBalance\Repositories\CardBalanceRepository;
|
||||||
use App\Modules\CardTransaction\Repositories\CardTransactionRepository;
|
use App\Modules\CardTransaction\Repositories\CardTransactionRepository;
|
||||||
use App\Modules\Card\Models\Card;
|
|
||||||
use BackedEnum;
|
use BackedEnum;
|
||||||
use Filament\Actions\Action;
|
use Filament\Actions\Action;
|
||||||
use Filament\Actions\BulkActionGroup;
|
use Filament\Actions\BulkActionGroup;
|
||||||
@@ -25,6 +24,7 @@ use Filament\Support\Icons\Heroicon;
|
|||||||
use Filament\Tables\Columns\TextColumn;
|
use Filament\Tables\Columns\TextColumn;
|
||||||
use Filament\Tables\Table;
|
use Filament\Tables\Table;
|
||||||
use Illuminate\Contracts\View\View;
|
use Illuminate\Contracts\View\View;
|
||||||
|
use Livewire\Component;
|
||||||
|
|
||||||
class CardResource extends Resource
|
class CardResource extends Resource
|
||||||
{
|
{
|
||||||
@@ -149,7 +149,7 @@ class CardResource extends Resource
|
|||||||
->beforeOrEqual('today'),
|
->beforeOrEqual('today'),
|
||||||
])
|
])
|
||||||
->openUrlInNewTab()
|
->openUrlInNewTab()
|
||||||
->action(fn (array $data, Card $record) => CardTransactionRepository::make()->downloadCardTransaction($data, $record)),
|
->url(fn (array $data, Card $record, Component $livewire) => CardTransactionRepository::make()->downloadCardTransaction($data, $record, $livewire)),
|
||||||
|
|
||||||
EditAction::make()
|
EditAction::make()
|
||||||
->label(''),
|
->label(''),
|
||||||
|
|||||||
@@ -2,13 +2,14 @@
|
|||||||
|
|
||||||
namespace App\Modules\CardTransaction\Repositories;
|
namespace App\Modules\CardTransaction\Repositories;
|
||||||
|
|
||||||
use App\Modules\CardTransaction\Types\CardTransactionResponse;
|
|
||||||
use App\Modules\Card\Models\Card;
|
use App\Modules\Card\Models\Card;
|
||||||
use App\Modules\Makeable;
|
use App\Modules\Makeable;
|
||||||
|
use Illuminate\Queue\Events\JobRetryRequested;
|
||||||
use Illuminate\Support\Carbon;
|
use Illuminate\Support\Carbon;
|
||||||
use Illuminate\Support\Facades\Blade;
|
use Illuminate\Support\Facades\Blade;
|
||||||
use Illuminate\Support\Facades\File;
|
use Illuminate\Support\Facades\File;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
|
use Livewire\Component;
|
||||||
use Mpdf\Mpdf;
|
use Mpdf\Mpdf;
|
||||||
use Mpdf\Output\Destination;
|
use Mpdf\Output\Destination;
|
||||||
|
|
||||||
@@ -21,7 +22,7 @@ class CardTransactionRepository
|
|||||||
*
|
*
|
||||||
* @param array{start_date: string, end_date: string} $data
|
* @param array{start_date: string, end_date: string} $data
|
||||||
*/
|
*/
|
||||||
public function downloadCardTransaction(array $data, Card $record)
|
public function downloadCardTransaction(array $data, Card $record, Component $livewire)
|
||||||
{
|
{
|
||||||
$start_date = Carbon::create($data['start_date']);
|
$start_date = Carbon::create($data['start_date']);
|
||||||
$end_date = Carbon::create($data['end_date']);
|
$end_date = Carbon::create($data['end_date']);
|
||||||
@@ -44,7 +45,12 @@ class CardTransactionRepository
|
|||||||
return view('module.card-transaction::error-response', ['data' => $response]);
|
return view('module.card-transaction::error-response', ['data' => $response]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return redirect($this->handleFiles($record, $response));
|
$url = $this->handleFiles($record, $response);
|
||||||
|
|
||||||
|
// Tell Livewire to open it in a new tab
|
||||||
|
$livewire->js("window.open('{$url}', '_blank')");
|
||||||
|
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -88,8 +94,7 @@ class CardTransactionRepository
|
|||||||
/**
|
/**
|
||||||
* Handles all file stuff
|
* Handles all file stuff
|
||||||
*
|
*
|
||||||
* @param Card $model
|
* @param \App\Modules\CardTransaction\Types\CardTransactionResponse $response
|
||||||
* @param \App\Modules\CardTransaction\Types\CardTransactionResponse $response
|
|
||||||
*/
|
*/
|
||||||
public function handleFiles(Card $model, object $response): string
|
public function handleFiles(Card $model, object $response): string
|
||||||
{
|
{
|
||||||
@@ -109,7 +114,6 @@ class CardTransactionRepository
|
|||||||
* Generate file
|
* Generate file
|
||||||
*
|
*
|
||||||
* @param \App\Modules\CardTransaction\Types\CardTransactionResponse $data
|
* @param \App\Modules\CardTransaction\Types\CardTransactionResponse $data
|
||||||
* @param string $fileDest
|
|
||||||
*/
|
*/
|
||||||
public function generateFile(object $response, string $fileDest): void
|
public function generateFile(object $response, string $fileDest): void
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user