emit('resetNumberTab', ['status' => false, 'msg' => 'not_number_tab_data']); Logger::warn(Logger::CAT_GAME, 'reset_number_tab_fail', ['table_id' => $tableInfo['id'], 'reason' => 'not_number_tab_data']); return; } Logger::info(Logger::CAT_GAME, 'reset_number_tab_attempt', ['table_id' => $tableInfo['id'], 'bet_status' => $numberTabInfo['bet_status'], 'nt_id' => $numberTabInfo['id']]); if($numberTabInfo['bet_status'] == 1 || $numberTabInfo['bet_status'] == 2 || $numberTabInfo['bet_status'] == 3 || ($numberTabInfo['bet_status'] == 0 && ($numberTabInfo['rob_status'] == 1 || $numberTabInfo['rob_status'] == 2))){ //事务处理 $res = NumberTab::resetNumberTab($numberTabInfo); if (!$res){ Logger::warn(Logger::CAT_GAME, 'reset_number_tab_fail', ['table_id' => $tableInfo['id'], 'nt_id' => $numberTabInfo['id']]); $ws->emit('resetNumberTab', ['status' => false, 'msg' => 'reset_number_fail']); return; } $numberTabInfo['bet_status'] = 0; $responseData = [ 'status' => true, 'table_id' => $tableInfo['id'], 'round' => [ 'boot_id' => $numberTabInfo['boot_id'], 'boot_num' => $numberTabInfo['boot_num'], 'number_tab_id' => $numberTabInfo['id'], 'number_tab_number' => $numberTabInfo['number'], 'in_checkout' => $tableInfo['in_checkout'], 'number_tab_status' => InitTableService::numberTabStatus($numberTabInfo) ] ]; // 广播到 house 房间 $ws->to(SocketSession::HOUSE_NAME)->emit('resetNumberTab', $responseData); // 同时发送给请求者 $ws->emit('resetNumberTab', $responseData); Logger::info(Logger::CAT_GAME, 'reset_number_tab', ['table_id' => $tableInfo['id'], 'nt_id' => $numberTabInfo['id']]); }else{ $ws->emit('resetNumberTab', ['status' => false, 'msg' => 'reset_number_fail']); Logger::warn(Logger::CAT_GAME, 'reset_number_tab_fail', ['table_id' => $tableInfo['id'], 'number_tab_id' => $numberTabInfo['id'], 'reason' => 'invalid_bet_status']); } } }