ChangeUserChannelId.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. namespace App\Console\Test;
  3. use App\Cache\UserCache;
  4. use App\Models\User\User;
  5. use Illuminate\Console\Command;
  6. class ChangeUserChannelId extends Command
  7. {
  8. /**
  9. * @var string
  10. */
  11. protected $signature = 'user:change:channel:id {uid} {channelId}';
  12. /**
  13. * The console command description.
  14. * php artisan Payment:BasePayment --bid='1'
  15. *
  16. * @var string
  17. */
  18. protected $description = '修改用户站点id';
  19. public function handle()
  20. {
  21. $uid = (int)$this->argument('uid');
  22. $channelId = (int)$this->argument('channelId');
  23. if ($uid < 1 || $channelId < 1) {
  24. dd('参数错误');
  25. }
  26. // 获取uid信息
  27. $user = User::where('id', $uid)->first();
  28. if (!getProp($user, 'id')) {
  29. dd('查询不到该用户');
  30. }
  31. // 执行更新
  32. $user->distribution_channel_id = $channelId;
  33. $user->save();
  34. // 获取用户缓存信息
  35. $token = getProp($user, 'token');
  36. $userCache = UserCache::getTokenData($token);
  37. if (empty($userCache)) {
  38. dd('查询不到用户token缓存');
  39. }
  40. // 更新用户缓存
  41. $userCache['distribution_channel_id'] = $channelId;
  42. UserCache::setTokenData($token, $userCache);
  43. }
  44. }