0){ $totalWeight = 0; $rate = \mt\Parameter::getVal('circuit_reward_rate',''); $count = floor(count($rows) * $rate) ; foreach ($rows as $k=>$value){ $ranking = $k+1; $rewardWeight = \mt\CircuitReward::getRewardWeight($ranking); if ($ranking <= $count){ $totalWeight += $rewardWeight; } } $cecPool = $prevStageMeta['cec_pool']; foreach ($rows as $k=>$value){ $cec = 0; $ranking = $k+1; $rewardWeight = \mt\CircuitReward::getRewardWeight($ranking); if ($ranking <= $count){ $cec = ($rewardWeight / $totalWeight) * $cecPool; } $user = User::find($value['account_id']); CircuitReward::add( $user['account_id'], $user['address'], $prevStageMeta['circuit_season'], $prevStageMeta['circuit_phase'], $ranking, $cec ); } } $this->_rspOk(); return; } $this->_rspErr(1,'未满足结算条件'); } }