args[0] ?? 'user_id'; $numberKey = $this->args[1] ?? 'number'; $shopItemKey = $this->args[2] ?? 'shop_item'; $userId = $data[$userIdKey] ?? null; $number = $data[$numberKey] ?? null; $shopItem = $this->validation->$shopItemKey ?? null; if (!$userId || !$number || !$shopItem) { $this->addError('验证资金时缺少必要参数'); return false; } try { // 检查商品是否有消耗组 if ($shopItem->consume_group_id) { // 循环检查每个购买数量的消耗条件 for ($i = 0; $i < $number; $i++) { $consumeValidation = ConsumeService::checkConsume($userId, $shopItem->consume_group_id); if (!$consumeValidation->success) { $this->addError($consumeValidation->message); return false; } } } return true; } catch (\Exception $e) { $this->addError('验证消耗条件时发生错误: ' . $e->getMessage()); return false; } } }