post('id'); $nickname = $request->post('nickname'); $avatar = $request->post('avatar'); $dev = $request->post('dev'); $pay = $request->post('pay'); $status = $request->post('status'); $user = User::where('id', $id)->where('del', 2)->first(); if (!$user) Yo::error_echo(100000, ['用户']); $user->nickname = $nickname; $user->avatar = $avatar ?? ''; $user->dev = $dev; $user->pay = $pay; $user->status = $status; $user->save(); return Yo::update_echo($id); } public function info(Request $request) { Login::user(); $id = $request->post('id'); $user_person = UserPerson::where('id', $id) ->where('user', Login::$info->id) ->where('del', 2)->first(); if (!$user_person) { $user_person = UserPerson::where('user', Login::$info->id) ->where('del', 2)->where('default', 1)->first(); } if (!$user_person) { $user_person = UserPerson::where('user', Login::$info->id) ->where('del', 2)->orderBy('id', 'desc')->first(); } if (!$user_person) { $user_person = [ 'id' => 0, 'name' => '', 'phone' => '' ]; } return Yo::echo([ 'info' => [ 'id' => Login::$info->id, 'nickname' => Login::$info->nickname, 'avatar' => Login::$info->avatar, 'person' => $user_person, 'dev' => Login::$info->dev, ] ]); } public function admin_list() { Login::admin([19]); $status = request()->post('status'); $user_list = User::select('*') ->selectRaw("IFNULL((select account from user_accounts where users.id = user_accounts.user and type = 1 and del = 2),'') as openid") ->where(function ($query) use ($status) { if ($status != 0) $query->where('status', $status); }) ->where('del', 2) ->paginate(15); return Yo::echo($user_list); } public function status() { Login::user(); return Yo::echo(); } public function create_token($user, $type = 1) { if ($user->status != 1) Yo::error_echo(100002); if ($user->del != 2) Yo::error_echo(100002); $token = Str::orderedUuid(); $user_token = new UserToken(); $user_token->user = $user->id; $user_token->token = $token; // $type 1-微信登录 $user_token->type = $type; $user_token->save(); return $token; } public function login() { $code = request()->post('code'); $wx_login_info = WeiXin::codeLogin($code); if (!isset($wx_login_info['openid'])) Yo::error_echo(100002); $user_account = UserAccount::where('account', $wx_login_info['openid'])->where('del', '2')->where('type', '1')->first(); if (!$user_account) { $user = new User(); $user->nickname = ''; $user->avatar = ''; $user->status = 1; $user->save(); $user->nickname = '用户#' . $user->id; $user->save(); $user_account = new UserAccount(); $user_account->user = $user->id; $user_account->account = $wx_login_info['openid']; $user_account->type = 1; } else { $user = User::find($user_account->user); if (!$user) Yo::error_echo(100002); } $user = User::find($user->id); $user_account->secret = $wx_login_info['session_key']; $user_account->save(); return Yo::echo([ 'token' => $this->create_token($user), 'id'=>$user->id ]); } }