[关闭]
@AliceXT 2016-01-05T02:50:22.000000Z 字数 2111 阅读 446

积分|三级分销

分销系统



需求

原始资料

代码文件

模型

修改积分配置模型的name字段的是否显示状态为始终显示
此处输入图片的描述

增加积分说明

1.首先在积分配置中新增一条积分配置
此处输入图片的描述

例如:
此处输入图片的描述

2.找到代码中需要增加积分的地方,增加积分
此处输入图片的描述

购买商品增加积分

给shop_product列表增加字段

增加使用add_credit函数的地方

add_credit函数
此处输入图片的描述

在Addons\Shop\Model\OrderMode.class.php turnOrderStatusByOTN函数里增加代码段

/**
*   @author AliceXT
*   2015-10-21 for 积分增加
**/
$p = json_decode($x['product_field'],true);
empty($p['experience']) || $credit['experience'] = $p['experience']*$x['count'];
empty($p['score']) || $credit['score'] = $p['score']*$x['count'];
if(empty($credit)){
    	add_credit('shop_buy',0);
    }else{
    	add_credit('shop_buy',0,$credit);
}
/*change end*/

增加下线增加积分

在积分配置添加一项

此处输入图片的描述

在QrcodeModel中增加代码

此处输入图片的描述
另外增加函数add_leader_credit 每天上限设置为3

/**
*   @author AliceXT 2015-10-22 for 增加下线给予积分
**/
/** 
*   给增加下线的人增加积分
*   @param openid string 下线标识
*   @param fopenid string 上线标识
*   @param max int 每日增加下线给予积分的上限
*   @param credit_name string 积分配置中的积分标识
**/
public function add_leader_credit($openid,$fopenid,$max = 3,$credit_name = 'qrcode'){
    // 保存mid
    $uid = session('mid');

    // 得到fopenid的mid
    $map['openid'] = $fopenid;
    $map['token'] = get_token();
		$father = M('follow')->where($map)->find();

    session('mid',$father['id']);

    $max = $max;//吸粉上限
    $now = time();
		$yesterday = $now - 3600*24;
		$map = null;
    $map['token'] = get_token();
		$map['credit_name'] = $credit_name;
		$map['uid'] = $father['id'];
		$map['cTime'] = array('LT',$now);
		$map['cTime'] = array('GT',$yesterday);
		$data = M('credit_data')->where($map)->select();
		if(count($data) < $max){
			// 增加积分
			add_credit($credit_name,0);
    }

    // 返回改变的mid
    session('mid',$uid);
}

使用积分说明

模型更改

商品shop_product增加一个属性,说明这个商品多少钱可以换积分
此处输入图片的描述
内容这样填
此处输入图片的描述

增加积分配置项

此处输入图片的描述

要修改的地方

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注