在直播代码功能开发时,我们可以通过创建家族或加入家族来获得家族的分成以此来增加自己的收益,接下来我们就讲解一下用户是如何通过家族的分成来获得收益的。
1、首先我们通过传递的用户的$liveuid来判断用户是否加入了家族
$users_family=DI()->notorm->users_family
->select("familyid,divide_family")
->where('uid=? and state=2',$liveuid) //用户的id用来判断用户的家族
->fetchOne();
2、然后我们获取用户加入的家族的信息
$familyinfo=DI()->notorm->family
->select("uid,divide_family")
->where('id=?',$users_family['familyid']) //用户家族的id,获取家族信息
->fetchOne();
3、我们通过家族的信息获得家族的分成比例,然后通过传递的分成金额和分成比例计算出用户获得的分成金额
$divide_family=$familyinfo['divide_family']; //家族分成比例
$family_total=$total * $divide_family * 0.01; //分成金额
4、接下来需要对本次分成的记录和信息进行存储到数据库中方便后期的查看对账
DI()->notorm->family_profit
->insert(array("uid"=>$liveuid,"time"=>$time,"addtime"=>$addtime,"profit"=>$family_total,"total"=>$total,"familyid"=>$users_family['familyid']));
最后一步也就是将用户获得的收益添加到用户的可提现金额中,之后用户就可以对这些收益进行变现了
DI()->notorm->users //用户获得收益
->where('id = ?', $familyinfo['uid'])
->update( array( 'votes' => new NotORM_Literal("votes + {$family_total}") ));
以上的直播代码可以实现家族分成功能的实现,从传达信息到获取信息在对信息进行分析计算,最后对信息进行整理记录汇总储存。
声明:文章来源:云豹短视频 转载请注明作者