diff --git a/app/controller/api/Auth.php b/app/controller/api/Auth.php index a36364bd..89daa31a 100644 --- a/app/controller/api/Auth.php +++ b/app/controller/api/Auth.php @@ -157,10 +157,13 @@ class Auth extends BaseController $data['extension_status'] = systemConfig('extension_status'); if (systemConfig('member_status')) $data['member_icon'] = $this->request->userInfo()->member->brokerage_icon ?? ''; if ($data['is_svip'] == 3) $data['svip_endtime'] = date('Y-m-d H:i:s',strtotime("+100 year")); - $find=Db::name('nk_user')->where('user_id',$user['uid'])->find(); - $data['no_update']=1; + + $find = Db::name('user')->find($user['uid']); + + $data['no_update'] = 1; + if ($find){ - $msg=Db::connect('nongke')->table('fa_szxc_information_usermsg')->where('user_id',$find['n_user_id'])->find(); + $msg = Db::connect('nongke')->table('fa_szxc_information_usermsg')->where('user_id', $user['uid'])->find(); if ($msg){ $data['no_update']=0; } @@ -168,10 +171,13 @@ class Auth extends BaseController }else{ $data['group_id']=1; } -// 新增返回商户后台登录地址 + + // 新增返回商户后台登录地址 $data['merchant_login'] = $this->request->domain().'/merchant'; -// 判断是否是商户,并且有没有完善信息 + + // 判断是否是商户,并且有没有完善信息 $mer_arr = Db::name('merchant_intention')->alias('a')->join('merchant b','a.mer_id=b.mer_id')->where('a.uid',$data['uid'])->where('a.is_del',0)->where('a.status',1)->field('b.mer_avatar,b.mer_banner,b.mer_info,b.service_phone,b.mer_address')->find(); + if($mer_arr){ if (!$mer_arr['mer_avatar'] || !$mer_arr['mer_banner'] || !$mer_arr['mer_info'] || !$mer_arr['service_phone'] || !$mer_arr['mer_address']) { $data['is_wsxx'] = 0; @@ -181,6 +187,7 @@ class Auth extends BaseController }else{ $data['is_wsxx'] = 0; } + return app('json')->success($data); } @@ -374,56 +381,82 @@ class Auth extends BaseController // if (!$sms_code) return app('json')->fail('验证码不正确'); $user = $repository->accountByUser($data['phone']); $auth = $this->parseAuthToken($data['auth_token']); + Db::startTrans(); try { if (!$user) { + $user = $repository->registr($data['phone'], null, $data['user_type']); - $msg = Db::connect('nongke')->table('fa_szxc_information_usermsg')->where('phone', $data['phone'])->find(); + + // 获取当前用户是否已经录入信息 + $msg = Db::connect('nongke') + ->table('fa_szxc_information_usermsg') + ->where('phone', $data['phone']) + ->find(); + + // 如果已经存在信息 if ($msg) { - $nk_user = Db::name('nk_user')->where('n_user_id', $msg['user_id'])->find(); - $users = Db::connect('nongke')->table('fa_user')->where('id', $msg['user_id'])->find(); - if (!$nk_user) { - $datas = [ - 'user_id' => $user['uid'], - 'n_user_id' => $msg['user_id'], - 'group_id' => $users['group_id'] - ]; - Db::name('nk_user')->insert($datas); - } else { - Db::name('user')->where('uid',$user['uid'])->update(['nickname'=>$msg['name']]); - Db::name('nk_user')->where('id', $nk_user['id'])->update(['user_id' => $user['uid'], 'group_id' => $users['group_id']]); - } - } else { - $time = time(); - $user_data = [ - 'openid' => 'wx' . $time, - 'group_id' => 1, - 'username' => 'wx' . $time, - 'nickname' => '微信用户' . $time, - 'avatar' => 'https://lihai001.oss-cn-chengdu.aliyuncs.com/uploads/20230111/58c84995456bc63b2660d9526f7062fc.png', - 'level' => 1, - 'prevtime' => $time, - 'jointime' => $time, - 'createtime' => $time, - 'updatetime' => $time, - 'status' => 'normal', - 'mobile' => $data['phone'], - ]; - $n_user_id = Db::connect('nongke')->table('fa_user')->insertGetId($user_data); - $datas = [ - 'user_id' => $user['uid'], - 'n_user_id' => $n_user_id, - 'group_id' => 1 - ]; - Db::name('nk_user')->insert($datas); - } + + // 假如已被录入过信息,那么就更新用户的user_id,绑定用户信息 + $msg = Db::connect('nongke') + ->table('fa_szxc_information_usermsg') + ->where('phone', $data['phone']) + ->update([ + 'user_id' => $user['uid'] + ]); + + // $nk_user = Db::name('nk_user')->where('n_user_id', $msg['user_id'])->find(); // -- 不需要写入农科用户表,所以暂时去除 + // $users = Db::connect('nongke')->table('fa_user')->where('id', $msg['user_id'])->find();// -- 不需要写入农科用户表,所以暂时去除 + + // -- 不需要写入农科用户表,所以暂时去除 + // if (!$nk_user) { + // $datas = [ + // 'user_id' => $user['uid'], + // 'n_user_id' => $msg['user_id'], + // 'group_id' => $users['group_id'] + // ]; + // Db::name('nk_user')->insert($datas); + // } else { + // Db::name('user')->where('uid',$user['uid'])->update(['nickname'=>$msg['name']]); + // Db::name('nk_user')->where('id', $nk_user['id'])->update(['user_id' => $user['uid'], 'group_id' => $users['group_id']]); + // } + + } + // else { // 假如存在用户的操作-- 不需要写入农科用户表,所以暂时去除 + + // $time = time(); + // $user_data = [ + // 'openid' => 'wx' . $time, + // 'group_id' => 1, + // 'username' => 'wx' . $time, + // 'nickname' => '微信用户' . $time, + // 'avatar' => 'https://lihai001.oss-cn-chengdu.aliyuncs.com/uploads/20230111/58c84995456bc63b2660d9526f7062fc.png', + // 'level' => 1, + // 'prevtime' => $time, + // 'jointime' => $time, + // 'createtime' => $time, + // 'updatetime' => $time, + // 'status' => 'normal', + // 'mobile' => $data['phone'], + // ]; + // $n_user_id = Db::connect('nongke')->table('fa_user')->insertGetId($user_data); + // $datas = [ + // 'user_id' => $user['uid'], + // 'n_user_id' => $n_user_id, + // 'group_id' => 1 + // ]; + // Db::name('nk_user')->insert($datas); + + // } } + Db::commit(); } catch (\Exception $e) { // 回滚事务 Db::rollback(); return app('json')->error($e->getMessage()); } + if ($auth && !$user['wechat_user_id']){ $repository->syncBaseAuth($auth, $user); }