 rootandClaude Opus 5
|
4cdca06289
|
修复子渠道汇总到父渠道时未区分 appId 导致数据多加
ChannelStat 按 (channel, sumDate, appId) 三维存储,但子渠道累加到父渠道的
匹配条件只比了 ParentChannel 和 SumDate,漏了 AppId。
当父渠道在多个 app 下都有记录时(如 appId=[2,3,4] 查同一渠道码),一个子渠道
的数据会被同时累加进该 (channel, sumDate) 下所有 app 的父渠道行,选几个 app
就多加几倍。settlement 的三处子查询本身也没有 appId 约束,父列表虽锁定单个
appId,子列表却跨 app,同样会把其他 app 的子渠道数据算进结算金额。
5 处匹配条件统一补上 child.AppId == parent.AppId:
- stat.go:162 SearchChannelStat (列表接口,多值 appId)
- settlement.go:200 ChannelSettlementCalc (结算计算,影响金额)
- settlement.go:327 SearchChannelSettlementStat2 (原本父子共用同一 filter
而侥幸正确,补上以免后续改动破坏该前提)
- settlement.go:857 AddSettlementInfo2 (影响金额)
- settlement.go:1138 DetailSettlementInfo
本次只改匹配条件。settlement 三处 childFilter 缺少 appId 约束的冗余查询,
以及 SearchChannelStat 在无 start/end 时 resp.Total 硬编码为 1000000、
withChild 累加被 canSum 跳过的问题,均未处理。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-10-02 09:38:03 +08:00 |
|
 rootandClaude Opus 5
|
836e42b364
|
修复排名图空数据时生成坏图
innerServers 未配置时 GetRankPhoto/GetRankDetail 的跨服循环零次执行,
statList 为空仍继续渲染。go-charts 对空数据集会把坐标轴范围退化成
math.MinInt64 与 NaN,产出一张 Y 轴刻度为 -9,223,372,036,854,776,000、
X 轴为 NaN、图例全 0 的坏图,并照常推送到群里。
增加 ErrNoRankData 哨兵错误,两个函数在渲染前拦截空数据集。11 个调用点
原本就是 if err != nil { return err },无需改动即可全部覆盖。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-09-27 09:13:03 +08:00 |
|
 rootandClaude Opus 5
|
01d9f7bc86
|
新增广告V2模块,双端下载落地页调整
- 新增 advitise v2: info/location/bind/click-stat/day-click-stat 模型与
对应的 service、api、router、proto 定义
- models/index.go 注册 5 个新模型的索引初始化
- 鉴权白名单: /rsdownload/ 改为 /download/,放行 advitise v2 的
get/click 接口
- statg/config: proxyUrl 增加 fileRes1
- common/genId: lid 生成逻辑补充
- 新增 91fans / huangguo 的 mobileconfig 描述文件
- 新增 deploy/nginx/cpcdownload.mfcg.me.conf 网关配置
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-09-22 16:53:23 +08:00 |
|