@extends('layouts.layout-2') @section('content')
Zurück Zahlungs-Übersicht ShoppingPayments mit Transaktionen und Bestellung
{{-- Stat-Karten --}}
Zahlungen gesamt
{{ $paymentStats['total'] }}
{{ $paymentStats['days'] }} Tage
Bezahlt
{{ $paymentStats['paid'] }}
Mit Fehler
{{ $paymentStats['failed'] }}
Ausstehend
{{ $paymentStats['pending'] }}
Volumen gesamt
{{ number_format($paymentStats['total_amount'], 2, ',', '.') }} €
Fehlvolumen
{{ number_format($paymentStats['failed_amount'], 2, ',', '.') }} €
{{-- Filter --}}
{{-- Zahlungs-Tabelle --}}
@forelse($payments as $payment) @php $hasFailed = $payment->payment_transactions->where('txaction', 'failed')->count() > 0; $isPaid = $payment->txaction === 'paid'; $rowClass = $hasFailed ? 'table-danger' : ($isPaid ? 'table-success' : ''); @endphp {{-- Aufklappbare Transaktions-Sub-Tabelle --}} @if($payment->payment_transactions->count() > 0) @endif @empty @endforelse
Payment ID Bestellung Kunde Zahlart Betrag Status Modus Transaktionen Datum
@if($payment->payment_transactions->count() > 0) @endif {{ $payment->reference }} @if($payment->shopping_order) @php $isCustomerOrder = in_array($payment->shopping_order->payment_for, [6, 7]); $orderRoute = $isCustomerOrder ? route('admin_sales_customers_detail', $payment->shopping_order->id) : route('admin_sales_users_detail', $payment->shopping_order->id); @endphp #{{ $payment->shopping_order->id }} @if($payment->shopping_order->paid) @endif
{{ number_format($payment->shopping_order->total ?? 0, 2, ',', '.') }} €
@else @endif
@if($payment->shopping_order?->auth_user_id && $payment->shopping_order->auth_user) {{-- Berater-Bestellung --}} Berater
{{ $payment->shopping_order->auth_user->name }}
{{ $payment->shopping_order->auth_user->email }}
@elseif($payment->shopping_order?->shopping_user) {{-- Kunden-Bestellung --}} @php $su = $payment->shopping_order->shopping_user; @endphp Kunde
{{ trim($su->billing_firstname . ' ' . $su->billing_lastname) ?: '—' }}
{{ $su->billing_email }}
@else @endif
{{ $payment->getPaymentType() }} @if($payment->clearingtype) {{ $payment->clearingtype }} @endif {{ number_format($payment->amount / 100, 2, ',', '.') }} {{ $payment->currency }} @php $txColor = match($payment->txaction) { 'paid' => 'success', 'failed' => 'danger', 'appointed' => 'info', 'pending' => 'warning', default => 'secondary', }; @endphp {{ $payment->txaction ?? '—' }} @if($hasFailed && $isPaid) @endif @if($payment->mode) {{ $payment->mode }} @endif @if($payment->payment_transactions->count() > 0) {{ $payment->payment_transactions->count() }} @else 0 @endif {{ $payment->created_at->format('d.m.Y H:i') }}
Transaktionen zu Payment #{{ $payment->id }} / Referenz {{ $payment->reference }}
@foreach($payment->payment_transactions as $tx) @if($tx->transmitted_data) @endif @endforeach
TX-ID Aktion Status Fehlercode Fehlermeldung Kundennachricht Modus Datum
{{ $tx->txid ?? '—' }} @php $txaColor = match($tx->txaction) { 'paid' => 'success', 'failed' => 'danger', 'appointed' => 'info', 'pending' => 'warning', default => 'secondary', }; @endphp {{ $tx->txaction ?? '—' }} {{ $tx->status ?? '—' }} @if($tx->errorcode) {{ $tx->errorcode }} @else @endif {{ \Illuminate\Support\Str::limit($tx->errormessage, 60) }} {{ \Illuminate\Support\Str::limit($tx->customermessage, 50) }} @if($tx->mode) {{ $tx->mode }} @endif {{ $tx->created_at->format('d.m.Y H:i') }} @if($tx->transmitted_data) @endif
{{ json_encode($tx->transmitted_data, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) }}
Keine Zahlungen im gewählten Zeitraum gefunden.
{{ $payments->links() }}
@endsection