SupplierBehaviors.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\modules\admin\controllers\cloud\behaviors;
  8. use app\models\Supplier;
  9. use Yii;
  10. use yii\base\ActionFilter;
  11. use yii\helpers\Json;
  12. use yii\web\Response;
  13. class SupplierBehaviors extends ActionFilter
  14. {
  15. // 接口白名单
  16. public static $allow_list = [
  17. 'admin/cloud/supplier/agent-order-distribution-list',
  18. 'admin/cloud/supplier/supplier-purchase-order-list',
  19. 'admin/cloud/supplier/supplier-order-list',
  20. 'admin/cloud/supplier/supplier-purchase-order-refund-list',
  21. 'admin/cloud/supplier/supplier-send-type-list',
  22. 'admin/cloud/supplier/agent-order-group-list'
  23. ];
  24. public function beforeAction($action)
  25. {
  26. $params_r = $_REQUEST['r'];
  27. if (in_array($params_r, self::$allow_list)) {
  28. return true;
  29. }
  30. $supplier_id = get_supplier_id();
  31. $supplier = Supplier::findOne($supplier_id);
  32. if (!$supplier) {
  33. \Yii::$app->response->format = Response::FORMAT_JSON;
  34. Yii::$app->response->data = [
  35. 'code' => 1,
  36. 'msg' => '云仓账户异常,请联系管理员'
  37. ];
  38. return false;
  39. }
  40. // 重置token
  41. $token = get_supplier_token();
  42. if (!$token) {
  43. \Yii::$app->response->format = Response::FORMAT_JSON;
  44. Yii::$app->response->data = [
  45. 'code' => 1,
  46. 'msg' => '账户异常,请联系管理员处理'
  47. ];
  48. return false;
  49. }
  50. return parent::beforeAction($action);
  51. }
  52. }