BaseController.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace pt\controllers;
  3. use bizHd\saas\services\StaffService;
  4. use common\components\jwt;
  5. use Yii;
  6. use yii\web\Controller;
  7. /**
  8. * 平台次级基类,次于PublicController
  9. */
  10. class BaseController extends PublicController
  11. {
  12. public $staff, $staffId, $userId, $user;
  13. public $isLogin = false;
  14. public $guestAccessAction = [];//不需要登陆的方法名
  15. public $validate = true;
  16. public function beforeAction($action)
  17. {
  18. //6表示总后台
  19. Yii::$app->params['ptStyle'] = 6;
  20. $staffId = jwt::getLoginId();
  21. if (empty($staffId)) {
  22. $this->validate = false;
  23. }
  24. //游客可以访问的方法
  25. if (in_array($action->id, $this->guestAccessAction)) {
  26. $this->validate = true;
  27. }
  28. if ($this->validate == false) {
  29. util::notLogin();
  30. }
  31. $staff = StaffService::getById($staffId);
  32. if (empty($staff)) {
  33. util::fail('没有找到管理员');
  34. }
  35. $this->staff = $staff;
  36. $this->staffId = $staffId;
  37. $this->user = $staff;
  38. return parent::beforeAction($action);
  39. }
  40. }