setName('process:queue') ->setDescription('Process messages from the Redis queue'); } protected function execute(Input $input, Output $output) { $this->queueService = new QueueService(); while (true) { $message = $this->queueService->pop('account_queue'); if ($message) { // 处理消息 $this->processMessage($message); } else { // 暂停一段时间再检查队列 sleep(1); } } } protected function processMessage($message) { $SybOil = new SybOil(); // 在这里处理回调数据 $SybOil->saveLogStore('account_queue队列数据处理:【'.$message.'】'); $account = AccountModel::detail($message); $company = CompanyModel::detail($account['company_id']); // 对接平台接口 $res = $SybOil->userOptAdd(['mobile'=>$account['mobile'],'userName'=>$account['userName'],'userIdCard'=>$account['userIdCard'],'userType'=>$account['userType']], $company); if($res['code'] == '00' && isset($res['data']['userNo'])){ $data['userNo'] = $res['data']['userNo']; $account->edit($data); }else{ $SybOil->saveLogStore('平台创建用户失败【'.($res['errMessage'] ?? $res['message']).'】'); } } }