feat(platform-orders): 列表展示最近批量生效信息
This commit is contained in:
@@ -301,6 +301,7 @@
|
||||
<th>同步时间</th>
|
||||
<th>失败原因</th>
|
||||
<th>最近批量同步</th>
|
||||
<th>最近批量生效</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@@ -390,6 +391,37 @@
|
||||
<span class="muted">-</span>
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
@php
|
||||
// 优先使用扁平字段 meta.batch_mark_activated(便于筛选/统计,也避免遍历 audit)
|
||||
$batchMarkActivated = (array) (data_get($order->meta, 'batch_mark_activated', []) ?? []);
|
||||
$batchMarkAt = (string) (data_get($batchMarkActivated, 'at') ?? '');
|
||||
$batchMarkAdminId = data_get($batchMarkActivated, 'admin_id');
|
||||
|
||||
// 兼容旧数据:若尚未写入 batch_mark_activated,则回退从 meta.audit[] 中取最近一次批量生效记录
|
||||
$audit2 = (array) (data_get($order->meta, 'audit', []) ?? []);
|
||||
$lastBatchMark = null;
|
||||
if ($batchMarkAt === '' && count($audit2) > 0) {
|
||||
foreach (array_reverse($audit2) as $item) {
|
||||
if ((string) data_get($item, 'action') === 'batch_mark_activated') {
|
||||
$lastBatchMark = $item;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($batchMarkAt === '' && $lastBatchMark) {
|
||||
$batchMarkAt = (string) (data_get($lastBatchMark, 'at') ?? '');
|
||||
$batchMarkAdminId = data_get($lastBatchMark, 'admin_id');
|
||||
}
|
||||
@endphp
|
||||
@if($batchMarkAt !== '')
|
||||
<div>{{ $batchMarkAt }}</div>
|
||||
<div class="muted">管理员:{{ $batchMarkAdminId ?: '-' }}</div>
|
||||
@else
|
||||
<span class="muted">-</span>
|
||||
@endif
|
||||
</td>
|
||||
<td>
|
||||
@php
|
||||
$canActivate = ($order->payment_status === 'paid') && ($order->status === 'activated');
|
||||
|
||||
Reference in New Issue
Block a user