public static function addInvite($uid, $plan = 'A', $isTransfer = false)
{
$inviteStr = substr(hash("sha256", $uid . Utils::randomChar(10)), 0, 26) . $uid;
$obj = new self();
$obj->inviteIp = Utils::getUserIP();
$obj->invite = $inviteStr;
$obj->plan = $plan;
$obj->uid = $uid;
if ($isTransfer) {
$user = User::getUserByUserId($uid);
$user->transfer = $user->transfer - Utils::GB * 10;
$user->invite_num = $user->invite_num - 1;
$user->save();
}
$result = $obj->save();
return $obj;
}
/** * 生成邀请码,必要权限检查 * * @JSON * @Authorization */ public function create() { $user = User::getUserByUserId(User::getCurrent()->uid); $result = array('error' => 1, 'message' => '创建邀请码失败,您没有再次创建邀请码的次数了。当然,你可以用流量购买次数。(10GB/个)'); if ($user->invite_num > 0) { $invite = InviteModel::addInvite($user->uid, 'A', false); $result = array('error' => 0, 'message' => '创建邀请码成功,刷新后可见', 'invite_num' => $user->invite_num - 1, 'invite' => $invite); $user->invite_num = $user->invite_num - 1; $user->save(); } return $result; }