rwadurian/frontend/mining-app
hailin 6bca65e434 feat(telemetry): 设备字段提升为顶层结构化列(Amplitude 风格)
将 device_brand/device_model/device_os/app_version/locale 从 JSONB properties
提升为 analytics_event_log 表的独立列,并建立索引,支持亿级数据量下的高效
按设备维度查询和分组统计。

前端 (mining-app + mobile-app):
- toServerJson() 从 properties 中提取设备字段,以顶层字段发送给服务端
- 本地存储格式不变(properties 仍保留设备字段,便于离线队列完整性)

后端 (presence-service):
- Prisma schema: EventLog 新增 deviceBrand/deviceModel/deviceOs/appVersion/locale 列
- Migration: ALTER TABLE 添加 5 列 + 2 个索引
- DTO/Command: EventItemDto 接收顶层设备字段
- Entity: EventLog 新增 5 个字段及 getter
- Mapper: toDomain/toPersistence 映射新字段
- Handler: toEventLog 从 DTO 读取设备字段;SessionStartedEvent 优先使用顶层字段

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-05 09:50:48 -08:00
..
android fix(mining-app): 移除 debug applicationIdSuffix 修复升级后双图标 2026-01-31 05:57:34 -08:00
assets fix(mining-app): 添加assets/images目录 2026-01-11 08:12:29 -08:00
ios chore(app): rename app to 股行 2026-01-16 23:50:23 -08:00
lib feat(telemetry): 设备字段提升为顶层结构化列(Amplitude 风格) 2026-03-05 09:50:48 -08:00
scripts feat(mining-app): 添加自动版本号增长机制 2026-01-29 21:32:15 -08:00
test refactor(frontend): replace all '榴莲' references with '股行' 2026-01-19 04:33:47 -08:00
.gitignore feat(mining-app): 添加自动版本号增长机制 2026-01-29 21:32:15 -08:00
.metadata feat(mining-app): 添加Android/iOS平台配置和编译支持 2026-01-11 08:06:53 -08:00
DEVELOPMENT_GUIDE.md refactor(mining-app): rename 绿积分 to 积分值 across all pages 2026-01-14 19:57:17 -08:00
README.md feat(mining-app): 添加Android/iOS平台配置和编译支持 2026-01-11 08:06:53 -08:00
analysis_options.yaml feat(mining-ecosystem): 添加挖矿生态系统完整微服务与前端 2026-01-10 17:45:46 -08:00
pubspec.yaml chore: 同步线上构建版本号,避免服务器编译时版本号回退 2026-02-26 00:29:29 -08:00

README.md

mining_app

A new Flutter project.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.