This commit is contained in:
2025-05-27 01:57:08 +05:00
parent 1bd7035227
commit 5d32857472
7 changed files with 343 additions and 38 deletions

View File

@@ -12,27 +12,27 @@ class CardTransactionController extends Controller
{
public function show(CardTransaction $transaction)
{
$a = new DownloadCardTransaction;
// $a = new DownloadCardTransaction;
$start_date = Carbon::create(date('Y-m-d', strtotime('-12 months')));
$end_date = Carbon::create(date('Y-m-d'));
// $start_date = Carbon::create(date('Y-m-d', strtotime('-12 months')));
// $end_date = Carbon::create(date('Y-m-d'));
$response = $a->fetchApi(
passport_serie: $transaction->passport_serie,
passport_id: $transaction->passport_id,
card_number_masked: Str::mask($transaction->card_number, '*', 6, 6),
card_expire_date: $transaction->card_month.'/'.substr($transaction->card_year, 2),
start_date: $start_date->format('d.m.Y'),
end_date: $end_date->format('d.m.Y'),
);
// $response = $a->fetchApi(
// passport_serie: $transaction->passport_serie,
// passport_id: $transaction->passport_id,
// card_number_masked: Str::mask($transaction->card_number, '*', 6, 6),
// card_expire_date: $transaction->card_month.'/'.substr($transaction->card_year, 2),
// start_date: $start_date->format('d.m.Y'),
// end_date: $end_date->format('d.m.Y'),
// );
/** @var ResponseTypes\AzatApiClientInfoAllResponse */
$data = Str::isJson($response)
? json_decode($response)
: emptyClass(errCode: 1, message: 'Connection issue to VP');
// /** @var ResponseTypes\AzatApiClientInfoAllResponse */
// $data = Str::isJson($response)
// ? json_decode($response)
// : emptyClass(errCode: 1, message: 'Connection issue to VP');
return view('orders.cards.card-transaction.download-card-transaction', [
'transaction' => $data
]);
// return view('orders.cards.card-transaction.download-card-transaction', [
// 'transaction' => $data
// ]);
}
}

View File

@@ -6,12 +6,14 @@ use Carbon\Carbon;
use Illuminate\Bus\Queueable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Blade;
use Illuminate\Support\Str;
use Laravel\Nova\Actions\Action;
use Laravel\Nova\Actions\ActionResponse;
use Laravel\Nova\Fields\ActionFields;
use Laravel\Nova\Fields\Date;
use Laravel\Nova\Http\Requests\NovaRequest;
use Mpdf\Mpdf;
class DownloadCardTransaction extends Action
{
@@ -127,5 +129,18 @@ class DownloadCardTransaction extends Action
*
* @param ResponseTypes\AzatApiClientInfoAllResponse $data
*/
public function generateFile($data) {}
public function generateFile($data)
{
$mpdf = new Mpdf;
// Write HTML content
$html = Blade::render('orders.cards.card-transaction.download-card-transaction', [
'data' => $data,
]);
$mpdf->WriteHTML($html);
// Save the PDF to a file
$mpdf->Output(public_path('files/output.pdf'), \Mpdf\Output\Destination::FILE);
}
}