揭秘《双11星秀猫巅峰时刻》功能设计


前言

为大家提供更好的设计思路,一起看透助力拉人头,坑多多砍一刀等等功能~~

2020-11-10晚9点再看浙江卫视直播,某宝APP手机摇一摇抽红包。进去活动以后发现,这功能我去年在某公司设计过类似的功能。所以今天拿来分享给大家~~~

某宝图片

一个人头1块钱,某宝成本价真的低哦,那坑多多岂不是更低?

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

某宝功能逻辑

大佬勿喷,肉眼可见能想到的逻辑简单的描述一下。

  • 每个用户只能帮一位好友助力
  • 每拉一位用户,则助力一次
  • 1人、3人、再邀3人、50人为目标,引导客户去拉活跃用户(有机会赢取清空购物车活动)
  • 参与用户淘气值在401分及叭上,被邀请助力者淘气值501分及上。
  • 参与次数:用户每场仅可参与1沉,6场启计可参与6次。(让你在短时间内,拉取50名好友,还是有难度的、套路也挺深的。)
  • 直接点取领取时,会提示是否放弃膨胀机会(套路)

    功能需求背景

    好友助力需求来源于下定金送优惠券功能
    拉人助力是一种拉新活动,使活动来曝光公司产品,提高知名度
    比如支付1元定金送一个10元优惠券,然后通过助理让一个10元的优惠券金额扩展到20、30甚至更多。

助力结束后,助力者也会获得等额的优惠券,所以说这样会促进更多的用户来参加活动,

助力规则

由于助力没有要求小数点金额,所以需求就会简单很多。

好友助力随机规则:上限-基本 / 人数 = 均值(直接取整,舍弃小数,保留整数)
随机:(均值,均值 X 2),最后一个人直接获取剩余的钱
可以助力1位好友不同课程发起的膨胀,但是只能为同一好友
人数是后台设置的需要几个人助力

生成助力记录的话,会有一个基本金额和一个上限金额,还会设定助力人数

在这里插入图片描述

需要考虑的因素:

  1. 发起助力记录是否存在
  2. 判断是否 是自己给自己助力
  3. 查询是否有助力过的记录(只能帮一个好友助力)
    1. 查询是帮哪位好友助力的
    2. 如果不是同一个人,则提示:只能帮一个好友助力
    3. 好友的一个课程只能助力一次
  4. 最后一个人直接获取剩余的钱

切记:一定要开事物,不然当多个人同时助力的时候会出现问题。

SQL数据表设计

结合自己需求设计就好了,大同小异。

部分代码实现

/**
 * $limit_amount 上限金额
 * $start_amount 基本金额
 * $assist_num 设定的助力人数
 * $sale_amount 券的总金额
 * $help_amount 好友助力的金额
 * $mean_value 随机金额的左区间
 * $mean_value_max 随机金额的右区间
 */
 // count_help_users需要结合自己的场景去获取是第几个人助力
 $count_help_users = 0;
// 最后一个人直接获取剩余的钱
if ($diff == 1) {
    $help_amount = $limit_amount - $amount;
    $sale_amount = $limit_amount;
} else {
    //上限-基本 / 人数  = 均值(直接取整,舍弃小数,保留整数)
    $mean_value = intval(($limit_amount - $start_amount) / $assist_num);
    $mean_value_max = intval($mean_value) * 2;
    // 第一个人
    if ($count_help_users == 0) {
        $help_amount = mt_rand($mean_value, $mean_value_max);
        $sale_amount = $info['amount'] + $help_amount;
    } else {
        $help_amount = mt_rand(1, $mean_value - 1);
        $sale_amount = $info['amount'] + $help_amount;
    }
}

// 数据都知道了,下面就把助力的金额之类的信息存入数据表吧

结束语

如果功能设计有什么漏洞,欢迎大家提供更好的建议,希望本文可以帮助你们实现”好友助力”功能👍
图片来源于网络

某宝宣传图

在这里插入图片描述


 上一篇
laravel下安装laravels以及websocket的使用 laravel下安装laravels以及websocket的使用
laravel下安装laravels以及websocket的使用 🚀 LaravelS 是 Swoole 和 Laravel/Lumen 之间开箱即用的适配器。 环境要求 依赖 说明 PHP >= 5.5.9 推荐
2020-12-10
下一篇 
Mac下golang环境安装以及新手入门 Mac下golang环境安装以及新手入门
Mac下golang环境安装以及新手入门 go 菜鸟教程 环境安装mac 环境 首先安装brew brew install go 执行完命令后,如下显示: Updating Homebrew... ==> Auto-upda
2020-11-06
  目录