diff --git a/app/Constants/Device.php b/app/Constants/Device.php index 8df33c8a..64d9210f 100644 --- a/app/Constants/Device.php +++ b/app/Constants/Device.php @@ -9,4 +9,7 @@ class Device // 商户端 public const MERCHANT = 'merchant'; + + // 经销商端 + public const DEALER = 'dealer'; } diff --git a/app/Endpoint/Api/Http/Controllers/Auth/LoginController.php b/app/Endpoint/Api/Http/Controllers/Auth/LoginController.php index de2a7394..7845e2a3 100644 --- a/app/Endpoint/Api/Http/Controllers/Auth/LoginController.php +++ b/app/Endpoint/Api/Http/Controllers/Auth/LoginController.php @@ -52,7 +52,16 @@ class LoginController extends Controller // 颁发新的商户端令牌 $token = $user->createToken($device); break; + case Device::DEALER: + if (!$user->isDealer()) { + throw new BizException('账户没有权限'); + } + // 清理此用户的商户端令牌 + $user->tokens()->where('name', $device)->delete(); + // 颁发新的商户端令牌 + $token = $user->createToken($device); + break; default: $device = Device::UNIAPP; // 清理此用户的商城端令牌 diff --git a/app/Models/User.php b/app/Models/User.php index 10f1830b..2a80d189 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -137,6 +137,16 @@ class User extends Model implements AuthorizableContract, AuthenticatableContrac return $this->userInfo?->growth_value >= config('agent.upgrade_rules.vip.sales_value'); } + /** + * todo-确认这个用户是否是经销商 + * + * @return boolean + */ + public function isDealer(): bool + { + return true; + } + /** * 属于此用户的售后订单 */