|
@@ -189,6 +189,19 @@ class Auth
|
|
// $params['password'] = $this->getEncryptPassword($password, $params['salt']);
|
|
// $params['password'] = $this->getEncryptPassword($password, $params['salt']);
|
|
$params = array_merge($params, $extend);
|
|
$params = array_merge($params, $extend);
|
|
|
|
|
|
|
|
+ //安排关系网体
|
|
|
|
+ if(!empty($extend['intro_uid'])){
|
|
|
|
+ $intro = Db::name('user')->where(['id' => $extend['intro_uid']])->field('id,intro_level,intro_uid,intro_ids')->find();
|
|
|
|
+
|
|
|
|
+ $params['intro_ids'] = $intro['intro_ids'] ? ($intro['intro_ids'].','.$intro['id']) : $intro['id']; //所有上级
|
|
|
|
+ if(!empty($params['intro_ids'])) {
|
|
|
|
+ $params['intro_ids_new'] = ','.$params['intro_ids'].','; //便于查询所有下级
|
|
|
|
+ }
|
|
|
|
+ $params['intro_level'] = $intro['intro_level'] + 1; //推荐网层数
|
|
|
|
+ //更新直推数和团队数
|
|
|
|
+ $this->addIntroNum($intro['id'], 1, 1);
|
|
|
|
+ }
|
|
|
|
+
|
|
//账号注册时需要开启事务,避免出现垃圾数据
|
|
//账号注册时需要开启事务,避免出现垃圾数据
|
|
Db::startTrans();
|
|
Db::startTrans();
|
|
try {
|
|
try {
|
|
@@ -209,9 +222,9 @@ class Auth
|
|
Db::name('user_wallet')->insertGetId(['user_id'=>$user->id]);
|
|
Db::name('user_wallet')->insertGetId(['user_id'=>$user->id]);
|
|
|
|
|
|
//上级的直推人数+1
|
|
//上级的直推人数+1
|
|
- if($extend['intro_uid']){
|
|
|
|
|
|
+ /*if($extend['intro_uid']){
|
|
Db::name('user')->where('id',$extend['intro_uid'])->setInc('intro_num');
|
|
Db::name('user')->where('id',$extend['intro_uid'])->setInc('intro_num');
|
|
- }
|
|
|
|
|
|
+ }*/
|
|
|
|
|
|
//注册成功的事件
|
|
//注册成功的事件
|
|
Hook::listen("user_register_successed", $this->_user, $data);
|
|
Hook::listen("user_register_successed", $this->_user, $data);
|
|
@@ -225,6 +238,36 @@ class Auth
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
|
|
+ * 更新邀请码数和推荐团队人数
|
|
|
|
+ * @param string $tjrname 用户id
|
|
|
|
+ * @param integer $num 直推增减人数
|
|
|
|
+ * @param integer $team 团队增减人数
|
|
|
|
+ */
|
|
|
|
+ public function addIntroNum($tjrname, $num, $team)
|
|
|
|
+ {
|
|
|
|
+ //更新直推人数
|
|
|
|
+ if($num < 0) {
|
|
|
|
+ Db::name('user')->where(['id' => $tjrname])->setDec('intro_num', abs($num));
|
|
|
|
+ } else {
|
|
|
|
+ Db::name('user')->where(['id' => $tjrname])->setInc('intro_num', $num);
|
|
|
|
+ }
|
|
|
|
+ //更新团队
|
|
|
|
+ $rstjr = Db::name('user')->where(['id' => $tjrname])->field('id,intro_ids')->find();
|
|
|
|
+ if($rstjr) {
|
|
|
|
+ $tjstr = $rstjr['intro_ids'] ? ($rstjr['intro_ids'] . ',' . $rstjr['id']) : $rstjr['id'];
|
|
|
|
+ $tjstr = trim($tjstr, ',');
|
|
|
|
+ $arr_intro = explode(',', $tjstr);
|
|
|
|
+
|
|
|
|
+ if($team < 0) {
|
|
|
|
+ Db::name('user')->where(['id' => ['in', $arr_intro]])->setDec('intro_num_all', abs($team));
|
|
|
|
+ } else {
|
|
|
|
+ Db::name('user')->where(['id' => ['in', $arr_intro]])->setInc('intro_num_all', $team);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
* 用户登录
|
|
* 用户登录
|
|
*
|
|
*
|
|
* @param string $account 账号,用户名、邮箱、手机号
|
|
* @param string $account 账号,用户名、邮箱、手机号
|