开源的最土团购虽然在数据库中有积分的这个字段,但是只能是固定的一个数值。比如买个团购,固定100积分。

现在需要根据用户消费验证后,才能增加积分。具体的新增积分公式为新增积分 = 网站的价格 × 积分系数

我们先改能看得见外观的html代码。

/include/template/manage_team_edit.html中的虚拟购买

<label>虚拟购买</label>
<input id="team-create-pre_number" class="number" type="text" name="pre_number" value="${moneyit($team['pre_number'])}" datatype="number" size="10" />

后面添加

<label>返积分系数</label>
<input id="team-create-rate" class="number" type="text" name="rate" value="${moneyit($team['rate'])}" datatype="double" size="10" />

注意datatype="double",这样在js能自动先检查。先看看效果图

在修改了凡积分系数的输入框后的页面显示效果,红色为新增加的"返积分系数"

在下方的返利文字变成积分,并让输入框增加disabled,禁止人工手动修改。修改效果如下

禁止编辑具体积分,具体积分通过积分系数计算,所以禁止输入框输入。

在数据库中的team表添加字段rate double(3,2) 格式0.00,然后在/manage/team/edit.phpif ( is_post() )中的

$insert = array(
    'title', 'market_price', 'team_price', 'end_time',
    'begin_time', 'expire_time', 'min_number', 'max_number',
    'summary', 'notice', 'per_number','permin_number','allowrefund', 'product','image', 'image1', 'image2', 'flv', 'now_number',
    'detail', 'userreview', 'card', 'systemreview',
    'conduser', 'buyonce', 'bonus', 'sort_order',
    'delivery', 'mobile', 'address', 'fare',
    'express', 'credit', 'farefree', 'pre_number',
    'user_id', 'city_id', 'group_id','sub_id', 'partner_id',
    'team_type', 'sort_order', 'farefree', 'state',
    'condbuy','express_relate','city_ids'
);

最后添加一个'rate',结果如下

$insert = array(
    'title', 'market_price', 'team_price', 'end_time',
    'begin_time', 'expire_time', 'min_number', 'max_number',
    'summary', 'notice', 'per_number','permin_number','allowrefund', 'product','image', 'image1', 'image2', 'flv', 'now_number',
    'detail', 'userreview', 'card', 'systemreview',
    'conduser', 'buyonce', 'bonus', 'sort_order',
    'delivery', 'mobile', 'address', 'fare',
    'express', 'credit', 'farefree', 'pre_number',
    'user_id', 'city_id', 'group_id','sub_id', 'partner_id',
    'team_type', 'sort_order', 'farefree', 'state',
    'condbuy','express_relate','city_ids','rate'
);

在下面一行添加$team['credit'] = $team['rate']*$team['team_price'];。这样/manage/team/edit.php修改完毕。

我们要的是在商家验证用户消费后才给增加积分,而不是在购买了产品后就增加积分。 在/include/class/ZFlow.class.php中的 static public function CreateFromCoupon($coupon)方法添加

ZCredit::Create($coupon['credit'], $coupon['user_id'], 'xiaofei', 0);

这样商家验证消费后就给用户增加了积分

/include/class/ZCredit.class.php文件的末尾增加

else if('xiaofei' == $action){
    return '消费返积分';
}

如图

为消费返积分添加描述

在ZCredit.class.php中添加代码,为消费返积分添加描述。

这样在商家验证消费后,在积分记录中就会显示”消费返积分”了。

声明:未经允许禁止转载 东东东 陈煜东的博客 文章,谢谢。如经授权,转载请注明: 转载自东东东 陈煜东的博客

本文链接地址: 最土团购增加消费返积分功能 – https://www.chenyudong.com/archives/zuitu-add-consumer-return-credits-function.html