测试: 完成游戏娱乐模块 (Gomoku, HorseRace, Lottery 等) 功能全量联调测试与代码格式化

This commit is contained in:
2026-04-03 13:55:36 +08:00
parent d47f9c5360
commit 659e562208
33 changed files with 3907 additions and 28 deletions

View File

@@ -39,7 +39,15 @@ class AuthController extends Controller
if ($user) {
// 用户存在,验证密码
if (Hash::check($password, $user->password)) {
$passwordMatches = false;
try {
$passwordMatches = Hash::check($password, $user->password);
} catch (\RuntimeException $e) {
// Hash::check() in Laravel 11/12 throws if the hash isn't a valid bcrypt string
$passwordMatches = false;
}
if ($passwordMatches) {
// Bcrypt 验证通过
// 检测是否被封禁 (后台管理员级别获得豁免权,防止误把自己关在门外)

View File

@@ -33,7 +33,7 @@ class StoreRoomRequest extends FormRequest
public function rules(): array
{
return [
'name' => ['required', 'string', 'max:50', 'unique:rooms,name'],
'name' => ['required', 'string', 'max:50', 'unique:rooms,room_name'],
'description' => ['nullable', 'string', 'max:255'],
];
}

View File

@@ -31,7 +31,7 @@ class UpdateRoomRequest extends FormRequest
public function rules(): array
{
return [
'name' => ['required', 'string', 'max:50', 'unique:rooms,name,'.$this->route('id')],
'name' => ['required', 'string', 'max:50', 'unique:rooms,room_name,'.$this->route('id')],
'description' => ['nullable', 'string', 'max:255'],
];
}

View File

@@ -33,16 +33,32 @@ class KafkaConsumerService
protected string $groupId = '';
/**
* 构造函数 SysParam 获取配置
* 构造函数
*/
public function __construct()
{
$param = SysParam::where('alias', 'wechat_bot_config')->first();
if ($param && ! empty($param->body)) {
$config = json_decode($param->body, true);
$this->brokers = $config['kafka']['brokers'] ?? '';
$this->topic = $config['kafka']['topic'] ?? '';
$this->groupId = $config['kafka']['group_id'] ?? 'chatroom_wechat_bot';
// 延迟加载配置
}
/**
* 加载 Kafka 配置
*/
protected function loadConfig(): void
{
if (! empty($this->brokers)) {
return; // 已经加载过
}
try {
$param = SysParam::where('alias', 'wechat_bot_config')->first();
if ($param && ! empty($param->body)) {
$config = json_decode($param->body, true);
$this->brokers = $config['kafka']['brokers'] ?? '';
$this->topic = $config['kafka']['topic'] ?? '';
$this->groupId = $config['kafka']['group_id'] ?? 'chatroom_wechat_bot';
}
} catch (\Throwable $e) {
Log::warning('加载 Kafka 配置失败', ['error' => $e->getMessage()]);
}
}
@@ -51,6 +67,8 @@ class KafkaConsumerService
*/
public function createConsumer(): ?Consumer
{
$this->loadConfig();
if (empty($this->brokers) || empty($this->topic)) {
Log::warning('WechatBot Kafka: brokers or topic is empty. Consumer not started.');