argument('user_id'); $type = $this->option('type'); $this->info("测试用户 {$userId} 的任务事件触发"); if ($type === 'completed') { // 触发任务完成事件 $event = new TaskCompletedEvent( $userId, 1001, // 测试任务ID '测试任务', 'daily', Carbon::now(), [ ['item_id' => 1001, 'quantity' => 10], ['item_id' => 1002, 'quantity' => 5] ] ); event($event); $this->info('✓ 任务完成事件已触发'); } elseif ($type === 'reward') { // 触发任务奖励领取事件 $event = new TaskRewardClaimedEvent( $userId, 1001, // 测试任务ID '测试任务', [ ['item_id' => 1001, 'quantity' => 10], ['item_id' => 1002, 'quantity' => 5] ], Carbon::now(), true ); event($event); $this->info('✓ 任务奖励领取事件已触发'); } else { $this->error('无效的事件类型,支持: completed, reward'); return 1; } // 等待一下让事件处理完成 sleep(1); // 检查暂存数据 $this->info("\n检查暂存数据..."); $this->call('task:test-temp', ['user_id' => $userId]); return 0; } }