Commit 8f9a4b37 authored by Fares's avatar Fares

fix(cashier): show wife's name (recipient) for death_fee payments, not deceased

The cashier payment page was displaying the deceased husband's info
(name, form number, membership number). For death_fee payments, the
recipient is the wife — extracted from the notes JSON. Form/membership
numbers are hidden since the wife doesn't have them yet.
Co-Authored-By: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
parent 447dfbce
......@@ -71,6 +71,16 @@ class CashierController extends Controller
return $this->redirect('/cashier')->withError('طلب الدفع مكتمل بالفعل');
}
// For death_fee: override display name with the recipient (wife), not the deceased
if ($pr['payment_type'] === 'death_fee' && !empty($pr['notes'])) {
$notesData = json_decode($pr['notes'], true);
if (!empty($notesData['recipient_name'])) {
$pr['member_name'] = $notesData['recipient_name'];
$pr['form_number'] = null;
$pr['membership_number'] = null;
}
}
return $this->view('Cashier.Views.process', [
'pr' => $pr,
]);
......
......@@ -138,8 +138,15 @@
<tr<?= $r['status'] === 'cancelled' ? ' style="opacity:0.5;"' : '' ?><?= $urgent ? ' style="background:#FEF2F2;"' : '' ?>>
<td style="direction:ltr;text-align:right;font-weight:600;font-size:12px;"><?= e($r['request_number']) ?></td>
<td>
<?php
$displayName = $r['member_name'] ?? '—';
if ($r['payment_type'] === 'death_fee' && !empty($r['notes'])) {
$nd2 = json_decode($r['notes'], true);
if (!empty($nd2['recipient_name'])) $displayName = $nd2['recipient_name'];
}
?>
<?php if ((int)($r['member_id'] ?? 0) > 0): ?>
<a href="/members/<?= (int)$r['member_id'] ?>" style="color:#0D7377;font-weight:600;"><?= e($r['member_name'] ?? '—') ?></a>
<a href="/members/<?= (int)$r['member_id'] ?>" style="color:#0D7377;font-weight:600;"><?= e($displayName) ?></a>
<?php else: ?>
<span style="font-weight:600;"><?= e($r['description_ar'] ?? '—') ?></span>
<?php endif; ?>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment