ai_member_xiaoban/skills/user-info/references/database_schema.md
2026-05-26 08:00:01 +08:00

3.2 KiB
Raw Blame History

数据库表结构参考 — user-info 技能

涉及数据源

数据库 数据库名 用途
MySQL Online vala_user 账号/角色 vala_app_account, vala_app_character
MySQL Online vala_order 赛季通票(订单) vala_seasonal_ticket
MySQL Online vala 课程结构 vala_game_chapter, vala_game_season_package
PostgreSQL Online vala 学习行为 user_chapter_play_record_0~7

MySQL 核心表

vala_user.vala_app_account — 用户账号表

字段 用途
id 账号ID
tel 手机号(脱敏,格式 138****1234
created_at 注册时间
updated_at 最近活跃时间
login_times 登录次数
key_from 注册来源
download_channel 下载渠道编码
status 1=有效
deleted_at 软删除标记

vala_user.vala_app_character — 角色表

字段 用途
id 角色ID
account_id 所属账号ID
nickname 角色名称
gender 0=女, 1=男
birthday 生日 (YYYY-MM-DD)
latest_login 最后登录时间
created_at 创建时间
purchase_season_package 已购赛季包列表
deleted_at 软删除标记

vala_order.vala_seasonal_ticket — 赛季通票表(订单替代)

字段 用途
id 通票ID
account_id 账号ID
season_package_name 套餐名称
ticket_type 1=赛季通票, 2=兑换卡
status -1=已过期, 0=未使用, 1=已使用
give_time 发放时间 (Unix时间戳)
expire_time 过期时间 (Unix时间戳)
used_time 使用时间 (Unix时间戳)
created_at 创建时间

vala.vala_game_chapter — 课程章节表

字段 用途
id 章节ID关联 play_record.chapter_id
cn_name 中文名称
season_package_id 所属赛季包ID
lesson_type 1=常规课(用于单元分组)
index 课程序号

vala.vala_game_season_package — 赛季包表

字段 用途
id 赛季包ID
level 课程级别 (A1/A2/B1...)
season_of_quarter 季度序号
cn_name 中文名称

PostgreSQL 核心表

vala.user_chapter_play_record_0~7 — 章节完课记录分8表

字段 用途
user_id 角色ID
chapter_id 章节ID关联 MySQL vala_game_chapter.id
chapter_unique_id 完课唯一标识
level 课程级别 (如 "A2")
play_status 1=完成
created_at 创建时间 (tz-aware)
updated_at 更新时间 (tz-aware)

单元计算规则

Chapter → Level/Unit/Lesson 映射通过 vala_game_chapter + vala_game_season_package 计算:

  • 每 5 个连续 lesson_type=1 的章节组成一个 Unit
  • season_of_quarter=0 全部属 Unit 0
  • season_of_quarter≥1 时基础 Unit = 1+12×(s-1),再叠加组内偏移

渠道编码映射

编码 渠道 编码 渠道
11 苹果 12 华为
13 小米 14 荣耀
15 应用宝 17 魅族
18 VIVO 19 OPPO
21 学而思 22 讯飞
23 步步高 24 作业帮
25 小度 26 希沃
27 京东方 41 官网
71 小程序 其他 站外