Rodger-Wang
|
d6892eb3d6
|
后台管理下载落地页;实名认证显隐与游客登录同一个口子
下载落地页(版本与分发页)
- 「下载与说明」区顶部新增「下载页」一行:编辑 / 保存 / 查看 + 地址输入框
- 编辑:CodeMirror 编辑线上 HTML,改动自动存浏览器草稿;保存才发布到分发桶
(服务端 PutObject,强制 text/html;charset=utf-8 + no-cache),地址写入 app_release.download_page
- 查看:右侧抽屉预览,可切「当前编辑内容 / 线上版本」、手机 / 电脑尺寸
- 地址只能改文件名,域名与 /<应用>/ 目录由服务端卡死(TestParseDistPageURL)
- 新接口 api_getdistpage / api_savedistpage;admin 新增 codemirror 依赖
实名认证显隐
- 能看到游客登录的那一版(送审版本)才显示实名认证并按实名限制功能;
其余版本实名整个隐藏,功能不受实名限制。不分 Android / iOS
- 服务端:comm.AppRelease.ShowIdVerify(= ShowTourists)→ DBChannelApp.idverify 下发
- 客户端:VersionUpdateService.showIdVerify → IdVerifyGuard 隐藏即放行;
「我的」页实名行、卡片「未认证」角标跟着显隐;老服务端无 idverify 时退回 tourists
- 后台「游客显隐控制」页说明改为同时控制游客登录与实名认证
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
3 weeks ago |
Rodger-Wang
|
37817f2e96
|
会员与算力:VIP 管准入、算力管计量;补上线落地文档
VIP 与算力两层权益各管一件事,判定与记账统一走 comm/compute.go:
- VIP 管功能准入(无 VIP 时 user_translate / echomeet_starttask 返回 VipRequired);
自购记 user.vipexptime,设备赋予记在 device_mac 行上(激活日 + 天数),
两者在 ResolveUserVip 合并成有效值下发,库里仍只记自购——以前绑定礼把天数
累加进用户表,解绑时拆不开。
- 算力管用量计量,按后台系数折算,先扣设备赠送再扣用户余额。
三个旧额度桶停用,存量余额由 home 启动时一次性折进 computebalance。
- 闸门 COMPUTE_GATE 默认关:user_usages 是用完才上报、没有预扣,
现在开闸门形同虚设。
另含本次「阿龙测试服 → 正式服」上线落地文档(docs/),
以及 admin 侧商品/设备/产品/用户页的配套改动。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
4 weeks ago |
Rodger-Wang
|
24e17b3434
|
收拢积压改动:恒玄 OTA、发版配置拆表、实名认证、芯片厂商/代工厂管理等
把工作区里积压的多轮改动一次性入库。主要几块:
客户端
- 恒玄 OTA 打通:新增 local_plugins/bes_ota_manager(自包含 BES SDK,
Android Java + iOS ObjC,SPP OTA 2.0),路由切到 BesOtaUpgradeView /
BesOtaUpgradeController,配套下载服务;杰理那套文件保留但已不挂路由。
- 通话翻译新增阿里 3.5 档(alibaba35_language_config.dart,
qwen3.5-livetranslate-flash-realtime + 实时声音复刻)。
- 实名认证接入、游客登录改走服务端 api_sgin 的 Tourists 分支、
功能闸门由 GuestGuard 改为 IdVerifyGuard。
- 41 个语种文案同步(OTA 新增 28 个 key 等)。
- 默认主题改为浅色,不跟随系统。
服务端
- 发版类配置拆表:app_release(版本控制 / 游客显隐,一应用一行)与
channel_app(渠道级下载地址 / 上架状态 / 支付渠道)分家,
新增 comm/apprelease.go 与 console/api_apprelease.go。
- 授权码字符串整体移除:删除 utils/license 包,新增 utils/devcode
(MAC 规范化与 PID 反解),配套迁移 SQL 在 docs/migrations/。
- console 新增芯片厂商、代工厂、用户管理接口与对应 admin 页面。
- 身份证实名核验(sys/idverify)与第三方服务的服务端专用类别。
其它
- .gitignore 补挡 apps/services/lego/sys/gin/log-*.log:gin 子系统跑起来
会按时间戳滚动生成日志(多为 0 字节),与 apps/services/comm/log 同一
性质,不进版本管理。已跟踪的 log-2026-08-20 那个仍在库里,未动。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
1 month ago |
Rodger-Wang
|
db47e0f3f0
|
游客登录入口改为后台按版本控制
需求:后台一个开关控制游客登录按钮显隐,且只对指定版本号的客户端生效,
其余版本一律隐藏(应用商店送审场景:只给正在过审的那一版开)。
白名单语义(comm.ChannelApp.ShowTourists):
- tourists=false → 全部隐藏
- tourists=true 且 touristsversion 空 → 全部隐藏(没点名任何版本 = 谁都不放行)
- tourists=true 且 touristsversion=X → 只有版本号等于 X 的客户端可见
留空按"全隐藏"而非"全放行"是刻意选的失败方向:判宽的后果是不该露游客入口的版本
露了出去(过审风险、白嫖新用户开户礼),判严只是入口少显示。要全部隐藏就取消勾选,
后台 saveChannelApp 会拒绝"勾了开关却没填版本"这种等于没开的配置。
判定放在服务端,与 NeedForceUpdate/IsReviewing 同规矩:客户端在 user_getchannelapps
的请求里带 version,服务端把每条渠道配置的 tourists 换算成结论再下发。版本比较各端
各写一遍必然出现实现不一致,而这个开关直接关系到过审,判错代价高。
touristsversion 是 channel_app 的后加列,console 启动时用 ADD COLUMN IF NOT EXISTS
补上——CreateTable 对已存在的表跳过 AutoMigrate,不补就永远没这列。
注:db.proto / user_msg.proto / CLAUDE.md 里另有先于本次改动就存在的编辑,一并带上。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
1 month ago |
liwei1dao
|
1639cf35a0
|
上传代码
|
2 months ago |
liwei1dao
|
8924a3cd3b
|
上传服务后台代码
|
2 months ago |
liwei1dao
|
948e368996
|
上传代码
|
2 months ago |
liwei1dao
|
59e54eb575
|
上传发布版本
|
2 months ago |
liwei1dao
|
97ecbf9df5
|
上传新版本的管理后台
|
2 months ago |
liwei1dao
|
e270cf89b6
|
上传新版本管理后台
|
2 months ago |
liwei1dao
|
6e5da54cf8
|
上传代码
|
3 months ago |
liwei1dao
|
a25b0c9fc0
|
上传最新的服务后台代码
|
3 months ago |
liwei1dao
|
715f8e3818
|
上传厨师版本
|
4 months ago |