@extends('web.layouts.subpage') @php $mypageActive = $mypageActive ?? 'usage'; $filters = $filters ?? ['q'=>'','method'=>'','status'=>'','from'=>'','to'=>'']; $listQuery = request()->only(['q', 'method', 'status', 'from', 'to', 'page']); $listQuery = array_filter($listQuery, fn($v) => $v !== null && $v !== ''); $methodLabel = function ($m) { $m = (string)$m; return match ($m) { 'card' => '카드', 'phone' => '휴대폰', 'wire' => '계좌이체', 'vact' => '가상계좌', default => $m ?: '-', }; }; // 상태는 "결제완료/결제취소" 중심 + 화면 깨짐 방지 최소 처리 $payStatusLabel = function ($r) { $aCancel = (string)($r->attempt_cancel_status ?? 'none'); $oCancel = (string)($r->order_cancel_status ?? 'none'); if ($aCancel === 'success' || $oCancel === 'success') return '결제취소'; $aStatus = (string)($r->attempt_status ?? ''); $oPay = (string)($r->order_stat_pay ?? ''); if ($aStatus === 'paid' || $oPay === 'p') return '결제완료'; if ($aStatus === 'failed' || $oPay === 'f') return '결제실패'; if ($aStatus === 'issued' || $oPay === 'w') return '입금대기'; return '진행중'; }; $issueStatusLabel = function ($r) use ($payStatusLabel) { $pay = $payStatusLabel($r); // 결제취소면 발행 상태는 의미 없음 if ($pay === '결제취소') return '-'; $issuedCount = (int)($r->issued_count ?? 0); return $issuedCount > 0 ? '발행완료' : '발행대기'; }; $payStatusClass = function ($label) { return match ($label) { '결제취소' => 'pill--danger', '결제완료' => 'pill--ok', '결제실패' => 'pill--danger', '입금대기' => 'pill--wait', default => 'pill--muted', }; }; $issueStatusClass = function ($label) { return match ($label) { '발행완료' => 'pill--ok', '발행대기' => 'pill--wait', default => 'pill--muted', }; }; $formatDate = function ($v) { $s = (string)$v; if ($s === '') return '-'; try { return \Carbon\Carbon::parse($s)->format('Y-m-d H:i'); // 분까지 } catch (\Throwable $e) { return mb_substr($s, 0, 16); } }; @endphp @section('title', $pageTitle ?? '구매내역d') @section('subcontent')
| No. | 상품명 | 결제수단 | 수량 | 금액 | 결제 | 상태 | 일시 |
|---|---|---|---|---|---|---|---|
| {{ $no }} | {{ $name !== '' ? $name : '-' }} - {{ $item !== '' ? $item : '-' }} | {{ $methodLabel($method) }} | {{ $qty }} | {{ number_format($money) }} 원 | {{ $paySt }} | {{ $issueSt }} | {{ $dt }} |
| 구매내역이 없습니다. | |||||||