where('app_id', $appId)->where('openid', $responseData['openid'])->first(); if(empty($userInfo)) { $userModel = new self(); } else { $userModel = $userInfo; } $userModel->app_id = $appId; $userModel->session_key = $responseData['session_key'] ?? ''; $userModel->openid = $responseData['openid']; $userModel->unionid = $responseData['unionid'] ?? ''; $userModel->anonymous_openid = $responseData['anonymous_openid'] ?? ''; return $userModel->save(); } public static function getUserInfo($appId, $openId) { return self::query()->where('app_id', $appId)->where('openid', $openId)->where('enable', 1)->first(); } public static function updateData($id, $updateData) { $userModel = Users::query()->where('id', $id)->first(); if(isset($updateData['mobile'])) { $userModel->mobile = $updateData['mobile']; } if(isset($updateData['avatar_url'])) { $userModel->avatar_url = $updateData['avatar_url']; } if(isset($updateData['nick_name'])) { $userModel->nick_name = $updateData['nick_name']; } if(isset($updateData['gender'])) { $userModel->gender = $updateData['gender']; } if(isset($updateData['city'])) { $userModel->city = $updateData['city']; } if(isset($updateData['province'])) { $userModel->province = $updateData['province']; } if(isset($updateData['country'])) { $userModel->country = $updateData['country']; } if(isset($updateData['language'])) { $userModel->language = $updateData['language']; } $userModel->save(); return $userModel; } }