get('code',''); $wechatUser = $this->service->getUserInfo($code); $wechatUser['login_at'] = getDateFull(); $wechatUser['login_ip']= $request->getRealIp(); // $wechatUser = [ // "session_key" => "wEtGL27l7JoZrpnvk7EaQQ==", // "openid" => "o2Y1o11UVFinpoU8SyJ7l6RhiO-w", // "unionid" => "oH31T2dy6EtP3tQYUoY9ZGmbxIvM", // "login_at" => "2026-04-29 19:01:00", // "login_ip" => "192.168.2.64", // ]; $user = $this->userService->getUserInfo($wechatUser); return successTrans("success.login",get_object_vars((new Auth)->guard("user")->login($user))); } catch (\Throwable $throwable) { return error($throwable->getMessage()); } } /** * 登陆 * @param Request $request * @return Response */ #[Route(path: "testlogin",methods: "post")] public function setLogin2(Request $request): Response { try { // $param = $this->_valid([ // "username.require" => trans("empty.user"), // "password.require" => trans("empty.passwd"), // "code.require" => trans("empty.code"), // "key.require" => trans("empty.data"), // ],"post"); // if (!is_array($param)) return error($param); // if (Captcha::check($param['code'],$param['key']) === false) return errorTrans("error.captcha"); // $map = ["is_deleted" => 0,"username" => $param['username']]; // [$state,$msg,$user] = $this->checkLogin($map,2,$param); $user = (new User)->where('uid',1)->findOrEmpty(); // if (!$state) return error($msg); return successTrans("success.login",get_object_vars((new Auth)->guard("user")->login($user))); } catch (\Throwable $throwable) { return error($throwable->getMessage()); } } /** * 登录验证处理 * @param array $map * @param int $type * @param array $param * @return array */ protected function checkLogin(array $map = [],int $type = 1,array $param = []): array { $user = (new SystemUser)->where($map)->findOrEmpty(); if ($user->isEmpty()) return [0,trans("error.user-empty"),[]]; if ($user['status'] <> 1) return [0,trans("error.user-status"),[]]; if ($type == 2) { // if (md5($param['password'].$user['salt']) <> $user['password']) return [0,trans("error.passwd"),[]]; } $user->login_at = getDateFull(); $user->login_ip = request()->getRealIp(); $user->login_num = Db::raw("login_num+1"); $user->save(); return [1,'success',$user->toArray()]; } /** * @return Response */ #[Route(path: "profile",methods: "get"),Middleware(AuthMiddleware::class)] public function getLoginUser(): Response { try { $userData = (new Auth)->guard("admin")->user()->toArray(); if (isset($userData['password'])) unset($userData['password']); return successTrans("success.data",[ "username" => $userData['username'], "truename" => $userData['truename'], "agent_id" => $userData['agent_id'], "super" => $userData['is_super'], "type" => $userData['type'] ]); } catch (\Throwable $exception){ return error($exception->getMessage()); } } }