fix(partner): 修复paid_time获取器时间戳解析并完善上线前收益终审验收脚本
这个提交包含在:
@@ -39,7 +39,15 @@ class Partner
|
||||
$userId = $order['user_id'] ?? ($params['user']['id'] ?? 0);
|
||||
if ($userId) {
|
||||
// 自购与直推订单双向保活(自购更新买家,直推更新一级推荐人)
|
||||
$paidTime = !empty($order['paid_time']) ? intval($order['paid_time']) : time();
|
||||
$rawPaid = is_object($order) ? ($order->getData('paid_time') ?: $order['paid_time']) : ($order['paid_time'] ?? null);
|
||||
if (is_numeric($rawPaid) && intval($rawPaid) > 100000000) {
|
||||
$paidTime = intval($rawPaid);
|
||||
} elseif (!empty($rawPaid)) {
|
||||
$parsed = strtotime((string)$rawPaid);
|
||||
$paidTime = ($parsed && $parsed > 100000000) ? $parsed : time();
|
||||
} else {
|
||||
$paidTime = time();
|
||||
}
|
||||
$service->touchOrderTimes($userId, $paidTime);
|
||||
}
|
||||
Queue::push('\addons\shopro\job\PartnerSettle@order', [
|
||||
|
||||
@@ -36,7 +36,15 @@ class PartnerRewardService
|
||||
|
||||
$buyerId = intval($order['user_id']);
|
||||
// 确保双向保活已更新(即使钩子丢失或补偿场景也能准确刷新)
|
||||
$paidTime = !empty($order['paid_time']) ? intval($order['paid_time']) : time();
|
||||
$rawPaid = is_object($order) ? ($order->getData('paid_time') ?: $order['paid_time']) : ($order['paid_time'] ?? null);
|
||||
if (is_numeric($rawPaid) && intval($rawPaid) > 100000000) {
|
||||
$paidTime = intval($rawPaid);
|
||||
} elseif (!empty($rawPaid)) {
|
||||
$parsed = strtotime((string)$rawPaid);
|
||||
$paidTime = ($parsed && $parsed > 100000000) ? $parsed : time();
|
||||
} else {
|
||||
$paidTime = time();
|
||||
}
|
||||
$this->touchOrderTimes($buyerId, $paidTime);
|
||||
|
||||
$active = new ActiveService();
|
||||
|
||||
在新工单中引用
屏蔽一个用户