| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 | 
							- <?php
 
- namespace App\Services\Statistics\Auth;
 
- /*use App\Models\StatisticsUser;*/
 
- use Encore\Admin\Auth\Database\Administrator;
 
- use Illuminate\Contracts\Auth\Authenticatable;
 
- use App\Repositories\Statistics\StatisticsUserRepository;
 
- use Illuminate\Database\Eloquent\Model;
 
- use Illuminate\Support\Facades\Auth;
 
- use Illuminate\Support\Facades\Cache;
 
- use Illuminate\Support\Facades\Hash;
 
- use App\Models\Admin\SubsiteAdminUser;
 
- class AuthService
 
- {
 
-     /**
 
-      * AuthService constructor.
 
-      */
 
-     protected $statisticsUserRepository;
 
-     protected $administrator;
 
-     public function __construct(StatisticsUserRepository $statisticsUserRepository, Administrator $administrator)
 
-     {
 
-         $this->statisticsUserRepository = $statisticsUserRepository;
 
-         $this->administrator = $administrator;
 
-     }
 
-     public function loginByAccount($account, $password = '', $isAutoLogin = 0)
 
-     {
 
-         $user=$this->checkUser($account, $password);
 
-         if (!$user) {
 
-             return false;
 
-         }
 
-         $this->login($user, $isAutoLogin);
 
-         return $user;
 
-     }
 
-     public function checkUser($username, $password)
 
-     {
 
-         $user=$this->administrator->where(['username'=>$username])->first();
 
-         if (!$user) {
 
-             return false;
 
-         }
 
-         if ($password && !Hash::check($password, $user->password)) {
 
-             return false;
 
-         }
 
-         return $user;
 
-     }
 
-     public function login($user, $isAutoLogin = 0)
 
-     {
 
-         $isAutoLogin=$isAutoLogin?true:false;
 
-         if ($user instanceof Administrator) {
 
-             Auth::guard('admin')->login($user, $isAutoLogin);
 
-         }
 
-     }
 
-     public function logout()
 
-     {
 
-         Auth::guard('admin')->logout();
 
-     }
 
-     public function getUserRelativeSubsites($user)
 
-     {
 
-         $where = ['admin_user_id'=>$user->id];
 
-         return SubsiteAdminUser::where($where)->pluck('subsite_id')->toArray();
 
-     }
 
- }
 
 
  |