Просмотр исходного кода

Fix VNet 等级变动后,需要同步节点未获取正确

兔姬桑 3 лет назад
Родитель
Сommit
3398531a9b
3 измененных файлов с 5 добавлено и 6 удалено
  1. 3 4
      app/Jobs/VNet/addUser.php
  2. 1 1
      app/Jobs/VNet/editUser.php
  3. 1 1
      app/Observers/UserObserver.php

+ 3 - 4
app/Jobs/VNet/addUser.php

@@ -24,10 +24,9 @@ class addUser implements ShouldQueue
     private $data;
     private $nodes;
 
-    public function __construct($userIds, $nodeIds)
+    public function __construct($userIds, $nodes)
     {
-        $this->nodes = Node::findMany($nodeIds);
-        $data = [];
+        $this->nodes = $nodes;
         foreach (User::findMany($userIds) as $user) {
             $data[] = [
                 'uid'         => $user->id,
@@ -38,7 +37,7 @@ class addUser implements ShouldQueue
             ];
         }
 
-        $this->data = $data;
+        $this->data = $data ?? [];
     }
 
     public function handle(): void

+ 1 - 1
app/Jobs/VNet/editUser.php

@@ -48,7 +48,7 @@ class editUser implements ShouldQueue
                     }
                 }
             } else {
-                addUser::dispatch($this->data['uid'], $node->id);
+                addUser::dispatch($this->data['uid'], $node);
             }
         }
     }

+ 1 - 1
app/Observers/UserObserver.php

@@ -15,7 +15,7 @@ class UserObserver
     {
         $user->subscribe()->create(['code' => Helpers::makeSubscribeCode()]);
 
-        $allowNodes = $user->nodes()->whereType(4)->get()->pluck('id');
+        $allowNodes = $user->nodes()->whereType(4)->get();
         if (count($allowNodes)) {
             addUser::dispatch($user->id, $allowNodes);
         }