{{-- ===================================================== Etebarit - by Gisoo Web Solutions ------------------------------------------------------ Gisoo.net ------------------------------------------------------ Copyright (c) 2026 Gisoo Web Solutions ===================================================== This code is protected by copyright ===================================================== File: cards.blade.php ------------------------------------------------------ Use: Admin physical-card review queue: the filterable list, the delivery-detail modal, and the issue / reject decisions. Issuing re-cuts the card; rejecting refunds the fee to the user's cash wallet. ===================================================== --}} @extends('layouts.admin') @section('title', __('admin.requests.cards.title')) @section('breadcrumb') @endsection @php use App\Models\PhysicalCardRequest; use App\Support\Format; @endphp @section('page') @php $canReview = auth('admin')->user()->allowed('requests.cards_review'); @endphp

{{ __('admin.requests.cards.title') }}

{{ __('admin.requests.cards.subtitle') }}

{{ __('admin.requests.cards.info') }}
@foreach (__('admin.requests.cards.filters') as $key => $label) $status === $key, 'text-ink-muted hover:text-primary-600' => $status !== $key, ])>{{ $label }} @endforeach
@if ($status !== 'all') @endif
@forelse ($requests as $card) @php $payload = [ 'code' => $card->code, 'user' => $card->user->fullName(), 'mobile' => Format::persianDigits($card->user->mobile), 'userUrl' => route('admin.users.show', $card->user), 'initials' => mb_substr($card->user->first_name, 0, 1).'.'.mb_substr($card->user->last_name, 0, 1), 'province' => $card->province, 'city' => $card->city, 'address' => $card->address, 'postal' => Format::persianDigits($card->postal_code), 'phone' => Format::persianDigits($card->phone), 'feeFa' => Format::persianDigits(Format::tomanFa($card->fee_amount)), 'mapUrl' => ($card->lat !== null && $card->lng !== null) ? 'https://www.openstreetmap.org/?mlat='.$card->lat.'&mlon='.$card->lng.'#map=16/'.$card->lat.'/'.$card->lng : null, 'pending' => $card->isPending(), 'issueUrl' => route('admin.requests.cards.issue', $card), 'rejectUrl' => route('admin.requests.cards.reject', $card), 'confirmIssue' => __('admin.requests.cards.modal.confirm_issue'), 'confirmReject' => __('admin.requests.cards.modal.confirm_reject'), ]; @endphp @empty @endforelse
{{ __('admin.requests.cards.columns.code') }} {{ __('admin.requests.cards.columns.user') }} {{ __('admin.requests.cards.columns.destination') }} {{ __('admin.requests.cards.columns.fee') }} {{ __('admin.requests.cards.columns.date') }} {{ __('admin.requests.cards.columns.status') }} {{ __('admin.requests.cards.columns.actions') }}
{{ $card->code }} {{ $card->user->fullName() }} {{ $card->destination() }} @toman($card->fee_amount) {{ __('admin.toman') }} @jalali($card->created_at) $card->status === PhysicalCardRequest::STATUS_PENDING, 'bg-[#e7f7ee] text-green-600' => $card->status === PhysicalCardRequest::STATUS_ISSUED, 'bg-secondary-50 text-secondary-500' => $card->status === PhysicalCardRequest::STATUS_REJECTED, ])>{{ __('admin.requests.cards.statuses.'.$card->status) }} {{ __('admin.requests.cards.details_button') }}
{{ __('admin.requests.cards.empty') }}
@if ($requests->hasPages())
{{ $requests->links() }}
@endif
{{-- ===== Review modal ===== --}}
@endsection