修复扫牌器获取的 boot_id是旧数据的问题,导致下注等异常
This commit is contained in:
@@ -8,6 +8,7 @@ use app\models\bet\Bet;
|
||||
use app\models\process\NumberTab;
|
||||
use app\models\user\User;
|
||||
use app\models\user\Session;
|
||||
use app\services\connect\InitTableService;
|
||||
|
||||
class ToBetCommonService
|
||||
{
|
||||
@@ -39,7 +40,8 @@ class ToBetCommonService
|
||||
return ['status' => false, 'msg' => 'to_bet_fail_10'];
|
||||
}
|
||||
}
|
||||
$numberTabInfo = NumberTab::getByTableIdOrderByIdDesc($tableInfo);
|
||||
// 使用 InitTableService::initTable 获取当前靴的最新一局,与其他服务保持一致
|
||||
$numberTabInfo = InitTableService::initTable($tableInfo);
|
||||
if ($numberTabInfo['id'] != $numberTabId){
|
||||
return ['status' => false, 'msg' => 'to_bet_fail_5'];
|
||||
}
|
||||
|
||||
@@ -1,48 +1,49 @@
|
||||
<?php
|
||||
|
||||
|
||||
namespace app\services\connect;
|
||||
|
||||
|
||||
use app\models\process\NumberTab;
|
||||
use app\models\table\Table;
|
||||
use freedom\utils\SocketSession;
|
||||
use think\Request;
|
||||
|
||||
/**
|
||||
* TODO 扫描登录服务
|
||||
* Class SpaceConnectService
|
||||
* @package app\services\connect
|
||||
*/
|
||||
class ScanConnectService
|
||||
{
|
||||
/**
|
||||
* TODO 控制台登录处理
|
||||
* @param Request $event
|
||||
* @return void
|
||||
*/
|
||||
public static function doScanConnect(Request $event){
|
||||
$ws = app('\think\swoole\WebSocket');
|
||||
$tableId = intval($event->get('table_id'));
|
||||
$tableInfo = Table::get($tableId);
|
||||
$numberTabInfo = NumberTab::getByTableIdOrderByIdDesc($tableInfo);
|
||||
if (!$numberTabInfo){
|
||||
$ws->emit('onlineLogin',['status' => false, 'msg' => 'Not NumberTab Data']);
|
||||
$ws->close();
|
||||
return;
|
||||
}
|
||||
$round = array();
|
||||
$round['tid'] = $tableId;
|
||||
$round['boot_id'] = intval($numberTabInfo['boot_id']);
|
||||
$round['boot_num'] = intval($numberTabInfo['boot_num']);
|
||||
$round['number_tab_id'] = intval($numberTabInfo['id']);
|
||||
$round['number_tab_number'] = intval($numberTabInfo['number']);
|
||||
if ($numberTabInfo['bet_status'] == 2){
|
||||
$round['is_scan'] = true;
|
||||
}else{
|
||||
$round['is_scan'] = false;
|
||||
}
|
||||
$ws->join(SocketSession::HOUSE_NAME);
|
||||
$ws->emit('onlineLogin',['status' => true, 'table_id' => $tableInfo['id'], 'round' => $round]);
|
||||
}
|
||||
}
|
||||
<?php
|
||||
|
||||
|
||||
namespace app\services\connect;
|
||||
|
||||
|
||||
use app\models\process\NumberTab;
|
||||
use app\models\table\Table;
|
||||
use freedom\utils\SocketSession;
|
||||
use think\Request;
|
||||
|
||||
/**
|
||||
* TODO 扫描登录服务
|
||||
* Class SpaceConnectService
|
||||
* @package app\services\connect
|
||||
*/
|
||||
class ScanConnectService
|
||||
{
|
||||
/**
|
||||
* TODO 控制台登录处理
|
||||
* @param Request $event
|
||||
* @return void
|
||||
*/
|
||||
public static function doScanConnect(Request $event){
|
||||
$ws = app('\think\swoole\WebSocket');
|
||||
$tableId = intval($event->get('table_id'));
|
||||
$tableInfo = Table::get($tableId);
|
||||
// 使用 InitTableService::initTable 获取当前靴的最新一局,与其他服务保持一致
|
||||
$numberTabInfo = InitTableService::initTable($tableInfo);
|
||||
if (!$numberTabInfo){
|
||||
$ws->emit('onlineLogin',['status' => false, 'msg' => 'Not NumberTab Data']);
|
||||
$ws->close();
|
||||
return;
|
||||
}
|
||||
$round = array();
|
||||
$round['tid'] = $tableId;
|
||||
$round['boot_id'] = intval($numberTabInfo['boot_id']);
|
||||
$round['boot_num'] = intval($numberTabInfo['boot_num']);
|
||||
$round['number_tab_id'] = intval($numberTabInfo['id']);
|
||||
$round['number_tab_number'] = intval($numberTabInfo['number']);
|
||||
if ($numberTabInfo['bet_status'] == 2){
|
||||
$round['is_scan'] = true;
|
||||
}else{
|
||||
$round['is_scan'] = false;
|
||||
}
|
||||
$ws->join(SocketSession::HOUSE_NAME);
|
||||
$ws->emit('onlineLogin',['status' => true, 'table_id' => $tableInfo['id'], 'round' => $round]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user