直播间小程序码生成问题修复代码清单

直播间小程序码生成问题修复代码清单

修复提交:9d3fb09fc56b0c0a9c668ac5e95980e58642d21c

提交说明:fix(live): 修复直播间分享二维码生成问题


1. 直播间分享接口

文件:

text 复制代码
app/controller/admin/v1/marketing/live/LiveRoom.php

方法:

text 复制代码
LiveRoomShare($id)

行数:

text 复制代码
68-86

代码:

php 复制代码
public function LiveRoomShare($id)
{
    $id = (int)$id;
    if ($id <= 0) return app('json')->fail('数据不存在');

    $roomInfo = $this->services->get($id);
    if (!$roomInfo) return app('json')->fail('直播间不存在');

    $roomId = (int)$roomInfo['id'];
    if ($roomId <= 0) return app('json')->fail('直播间ID错误');

    /** @var QrcodeServices $qrcodeService */
    $qrcodeService = app()->make(QrcodeServices::class);
    // 小程序
    $name = $roomId . '_live_room_detail_share_routine.jpg';
    // 生成小程序地址(type=211,确保 scene 内 room_id 与直播间ID严格一致)
    $data['share_routine_url'] = $qrcodeService->getRoutineQrcodePath($roomId, 0, 211, $name, true, 'qrcode/routine', $roomId);
    $data['share_h5_url'] = $qrcodeService->getWechatQrcodePath($roomId . '_live_room_detail_share_wap.jpg', '/pages/activity/liveRoom/index?room_id=' . $roomId);
    return app('json')->success('ok', $data);
}

2. 小程序码生成参数处理

文件:

text 复制代码
app/services/other/QrcodeServices.php

方法:

text 复制代码
getRoutineQrcodePath(...)

行数:

text 复制代码
242-246

代码:

php 复制代码
public function getRoutineQrcodePath(int $id, int $uid, int $type = 0, string $namePath = '', bool $isSaveAttach = true, string $savePath = 'qrcode/routine', int $roomId = 0)
{
    $id = (int)$id;
    $uid = (int)$uid;
    $roomId = (int)$roomId;

3. 直播间小程序码页面类型

文件:

text 复制代码
app/services/other/QrcodeServices.php

方法:

text 复制代码
getRoutineQrcodePath(...)

行数:

text 复制代码
263

代码:

php 复制代码
211 => 'pages/activity/liveRoom/index',//直播

4. 直播间小程序码 scene 参数

文件:

text 复制代码
app/services/other/QrcodeServices.php

方法:

text 复制代码
getRoutineQrcodePath(...)

行数:

text 复制代码
275-277

代码:

php 复制代码
if ($type == 211) {
    $data = 'room_id=' . ($roomId > 0 ? $roomId : $id);
}

5. 关联路由

文件:

text 复制代码
route/admin.php

路由:

text 复制代码
直播间分享地址

行数:

text 复制代码
879-880

代码:

php 复制代码
//直播间分享地址
Route::get('room/share/:id', 'v1.marketing.live.LiveRoom/LiveRoomShare')->option(['real_name' => '直播间分享地址']);
相关推荐
mmsx2 小时前
Android 插件化架构:40 个 Gradle 模块的拆分、通信与共存
android·kotlin
mmsx2 小时前
Android 不改一行源码:用 AspectJ 做三类拦截
android·kotlin
TST-魚爷2 小时前
易视讯会议摄像头 + 全向麦克风实操讲解稿
android·电脑·钉钉·腾讯会议·zoom会议
嘟哩DuliDuli2 小时前
AI创作工作区的项目上下文与多模态任务边界
android·人工智能·安全·ai·软件工程
imDwAaY4 小时前
MySQL 存储引擎是什么?
android·数据库·mysql
Meteors.5 小时前
Android Compose学习02:基础组件与 Modifier
android·学习
其实防守也摸鱼6 小时前
存储管理:页面置换算法学习任务(测验题要求给出置换页面顺序,缺页次数,缺页率)
android·前端·数据库·学习·oracle·自动化
mmsx8 小时前
Android 地图上绘制 KML:解析、样式与渲染
android·xml
运行时异常8 小时前
【无标题】
android
右手吉他8 小时前
高通平台IA APN问题分析之一
android·物联网