LoginController.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Service\EmployeeService;
  4. use App\Service\LoginService;
  5. use App\Service\TokenService;
  6. use Illuminate\Http\Request;
  7. //登录
  8. class LoginController extends BaseController
  9. {
  10. const MOBILE = '[mobile]';// 手机端
  11. const PERSONAL_COMPUTER = '[personalComputer]';// 电脑端
  12. public static $port = [
  13. self::MOBILE => '',
  14. self::PERSONAL_COMPUTER => '',
  15. ];
  16. public function login(Request $request){
  17. $data = $request->only("account","password");
  18. //ip 校验
  19. $return = (new LoginService())->loginRule($data);
  20. if(! $return) return $this->json_return(201,'','IP不在允许登录范围!');
  21. //登录
  22. $result = (new EmployeeService())->loginRule($data);
  23. list($bool, $return) = $result;
  24. if(! $bool) return $this->json_return(201,'',$return);
  25. //生成token
  26. $jwtToken = TokenService::getToken($return['id']);
  27. $jwtToken = self::PERSONAL_COMPUTER . $jwtToken;
  28. return $this->json_return(200,'', ['token' => $jwtToken, 'emp_name'=>$return['name']]);
  29. }
  30. public function loginMobile(Request $request){
  31. $data = $request->only("account","password");
  32. //ip 校验
  33. $return = (new LoginService())->loginRule($data);
  34. if(! $return) return $this->json_return(201,'','IP不在允许登录范围!');
  35. //登录
  36. $result = (new EmployeeService())->loginRule($data);
  37. list($bool, $return) = $result;
  38. if(! $bool) return $this->json_return(201,'',$return);
  39. //生成token
  40. $jwtToken = TokenService::getToken($return['id']);
  41. $jwtToken = self::MOBILE . $jwtToken;
  42. return $this->json_return(200,'', ['token' => $jwtToken]);
  43. }
  44. }