分账核验更新
这个提交包含在:
@@ -351,14 +351,14 @@ function diagnoseOrderSplitBlockers($orderId)
|
||||
}
|
||||
if (empty($calcItems)) {
|
||||
$reasons[] = 'SplitCalculator 结果为空(最常见:推广员/区域无 channel=huifu 的分账接收方)';
|
||||
$rewards = Db::name('shopro_commission_reward')->alias('r')
|
||||
->join('shopro_commission_agent a', 'a.id = r.agent_id')
|
||||
->where('r.order_id', $orderId)
|
||||
->where('r.status', '>=', 0)
|
||||
->field('r.id, r.commission, a.user_id')
|
||||
$rewards = Db::name('shopro_commission_reward')
|
||||
->where('order_id', $orderId)
|
||||
->where('status', '>=', 0)
|
||||
->field('id, commission, agent_id')
|
||||
->select();
|
||||
foreach ($rewards as $rw) {
|
||||
$uid = $rw['user_id'];
|
||||
// shopro_commission_agent 主键为 user_id,reward.agent_id 即分销商 user_id
|
||||
$uid = intval($rw['agent_id']);
|
||||
$recv = Db::name('shopro_split_receiver')
|
||||
->where('role_type', 'promoter')
|
||||
->where('role_id', $uid)
|
||||
|
||||
@@ -308,11 +308,10 @@ SELECT DISTINCT
|
||||
sr.id AS split_receiver_id
|
||||
FROM fa_shopro_commission_reward r
|
||||
INNER JOIN fa_shopro_order o ON o.id = r.order_id
|
||||
INNER JOIN fa_shopro_commission_agent a ON a.id = r.agent_id
|
||||
INNER JOIN fa_user u ON u.id = a.user_id
|
||||
LEFT JOIN fa_shopro_huifu_onboard ho ON ho.user_id = a.user_id AND ho.onboard_status = 'approved'
|
||||
INNER JOIN fa_user u ON u.id = r.agent_id
|
||||
LEFT JOIN fa_shopro_huifu_onboard ho ON ho.user_id = r.agent_id AND ho.onboard_status = 'approved'
|
||||
LEFT JOIN fa_shopro_split_receiver sr ON sr.role_type = 'promoter'
|
||||
AND sr.role_id = a.user_id AND sr.channel = 'huifu' AND sr.status = 'normal'
|
||||
AND sr.role_id = r.agent_id AND sr.channel = 'huifu' AND sr.status = 'normal'
|
||||
WHERE r.status >= 0
|
||||
AND o.pay_type = 'huifu_wechat'
|
||||
AND o.paytime >= UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 90 DAY))
|
||||
|
||||
在新工单中引用
屏蔽一个用户