Zhouzhendong 4 лет назад
Родитель
Сommit
9734d6edb0

+ 3 - 1
app/Http/ApiControllers/LoginController.php

@@ -40,7 +40,9 @@ class LoginController
     {
         $userName = $request->get('username','');
         $password = $request->get('password','');
-        $user = User::query()->where("name",$userName)->first();
+        $user = User::query()->where("name",$userName)->orWhereHas("userDetail",function ($query)use($userName){
+            $query->where("mobile_phone",$userName);
+        })->first();
         $response = [
             'message' => '请求成功',
             'status_code' => 200,

+ 15 - 0
app/Http/Controllers/Auth/LoginController.php

@@ -3,6 +3,7 @@
 namespace App\Http\Controllers\Auth;
 
 use App\Http\Controllers\Controller;
+use App\User;
 use Illuminate\Foundation\Auth\AuthenticatesUsers;
 use Illuminate\Http\JsonResponse;
 use Illuminate\Http\RedirectResponse;
@@ -93,6 +94,20 @@ class LoginController extends Controller
             }
             return $this->sendLoginResponse($request)->header('Cache-Control','no-store');
         }
+        if (is_numeric($request->input("name"))){
+            $user = User::query()->select("name")->whereHas("userDetail",function ($query){
+                $query->where("mobile_phone",\request("username"));
+            })->first();
+            if ($user){
+                $request->offsetSet("name",$user->name);
+                if ($this->attemptLogin($request)) {
+                    if($request['is_json']){
+                        return ['success'=>true,'url'=>url($redirectTo),'menus'=>app("MenuService")->getVisibleFunctionList()];
+                    }
+                    return $this->sendLoginResponse($request)->header('Cache-Control','no-store');
+                }
+            }
+        }
 
         $this->incrementLoginAttempts($request);
         if(env('DB_USERNAME')!='developer')