修复用户数据获取、用户注册等接口

This commit is contained in:
monanxiao 2023-03-18 16:37:54 +08:00
parent 12cfc15482
commit 7d79a06517

View File

@ -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);
}