|
@@ -63,54 +63,45 @@ class User extends Backend
|
|
|
|
|
|
Db::startTrans();
|
|
|
|
|
|
- $user = Db::name('user')->where('id',$user_id)->lock(true)->find();
|
|
|
+ $user = Db::name('user')->where('id',$user_id)->find();
|
|
|
if(empty($user)){
|
|
|
Db::rollback();
|
|
|
$this->error('不存在的用户');
|
|
|
}
|
|
|
|
|
|
|
|
|
- $new_intro = Db::name('user')->where('id',$new_intro_uid)->lock(true)->find();
|
|
|
+ $new_intro = Db::name('user')->where('id',$new_intro_uid)->find();
|
|
|
if(empty($new_intro)){
|
|
|
Db::rollback();
|
|
|
$this->error('不存在的新上级用户');
|
|
|
}
|
|
|
|
|
|
|
|
|
- $commonuser = new \app\common\model\User;
|
|
|
|
|
|
//我的多个下级,的推荐人,改成新人
|
|
|
$my_down = Db::name('user')->where('intro_uid',$user['id'])->select();
|
|
|
-// dump($my_down);
|
|
|
+
|
|
|
if(!empty($my_down)){
|
|
|
- foreach($my_down as $key => $down_user){
|
|
|
- $rs_down = $commonuser->updateIntro($down_user['id'],$new_intro_uid);
|
|
|
- if($rs_down !== true){
|
|
|
- Db::rollback();
|
|
|
- $this->error($rs_down);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
+ $rs_down = Db::name('user')->where('intro_uid',$user['id'])->update(['intro_uid'=>$new_intro_uid]);
|
|
|
+ if($rs_down === false){
|
|
|
+ Db::rollback();
|
|
|
+ $this->error('操作失败');
|
|
|
+ }
|
|
|
|
|
|
- //理论上已经用不到了,预防万一又被查到
|
|
|
- //我被转移了,我的上级保持不变,下级都没了
|
|
|
- $my_update = [
|
|
|
- 'intro_num' => 0,
|
|
|
- 'intro_num_all' => 0,
|
|
|
- ];
|
|
|
- $rs2 = Db::name('user')->where('id',$user['id'])->update($my_update);
|
|
|
- if($rs2 === false){
|
|
|
- Db::rollback();
|
|
|
- $this->error('更新被转移用户错误');
|
|
|
}
|
|
|
|
|
|
+
|
|
|
//记录个日志
|
|
|
$log = [
|
|
|
- 'info' => '用户['.$user['id'].']关系被转移,其名下直推有['.implode(',',array_column($my_down,'id')).'],都改到['.$new_intro_uid.']名下',
|
|
|
+ 'info' => '用户['.$user['id'].']的关系被转移,其名下直推有['.implode(',',array_column($my_down,'id')).'],都改到['.$new_intro_uid.']名下',
|
|
|
'createtime' => time(),
|
|
|
];
|
|
|
- Db::name('intro_log')->insertGetId($log);
|
|
|
+ $log_id = Db::name('intro_log')->insertGetId($log);
|
|
|
+ if(!$log_id){
|
|
|
+ Db::rollback();
|
|
|
+ $this->error('操作失败');
|
|
|
+ }
|
|
|
|
|
|
|
|
|
//提交
|