BaseController.php 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace mall\controllers;
  3. use biz\shop\classes\ShopClass;
  4. use biz\sj\classes\SjClass;
  5. use bizHd\custom\classes\CustomClass;
  6. use bizMall\merchant\services\MerchantExtendService;
  7. use bizMall\merchant\services\MerchantService;
  8. use bizMall\shop\classes\MainClass;
  9. use bizMall\user\classes\UserClass;
  10. use bizMall\user\services\UserService;
  11. use common\components\dict;
  12. use common\components\httpUtil;
  13. use common\components\jwt;
  14. use common\components\util;
  15. use function GuzzleHttp\Promise\iter_for;
  16. use Yii;
  17. class BaseController extends PublicController
  18. {
  19. public $validate = true;
  20. public $guestAccess = [];
  21. public $userId = 0, $user = null, $shopId, $shop;
  22. public $sjId, $sj, $sjExtend, $customId = 0, $custom = [], $mainId = 0, $main = [];
  23. public $isWx;
  24. public function beforeAction($action)
  25. {
  26. Yii::$app->params['ptStyle'] = dict::getDict('ptStyle', 'mall');
  27. $this->isWx = util::isWx();
  28. $shopId = Yii::$app->request->get('account', 0);
  29. $this->shopId = $shopId;
  30. if (!empty($shopId)) {
  31. $shop = ShopClass::getById($shopId, true);
  32. if (!empty($shop)) {
  33. $mainId = $shop->mainId ?? 0;
  34. $main = MainClass::getById($mainId, true);
  35. $this->main = $main;
  36. $this->mainId = $mainId;
  37. $this->shop = $shop;
  38. $sjId = $shop->sjId ?? 0;
  39. $this->sjId = $sjId;
  40. $sj = SjClass::getById($this->sjId, true);
  41. if (empty($sj)) {
  42. util::fail('没有商家信息');
  43. }
  44. $this->sj = $sj;
  45. $this->sjExtend = MerchantExtendService::getBySjId($this->sjId);
  46. }
  47. }
  48. $userId = jwt::getLoginId();
  49. if (!empty($userId)) {
  50. $this->userId = $userId;
  51. $user = UserClass::getById($userId, true);
  52. if (!empty($user)) {
  53. $this->user = $user;
  54. }
  55. }
  56. return parent::beforeAction($action);
  57. }
  58. }