2.6 KiB
2.6 KiB
数据库(wx_xcx_check)规范
Purpose
本能力描述 MariaDB/MySQL schema wx_xcx_check 的表结构与核心业务语义,用于约束后端 API 的持久化行为。
参考文件:
- 根目录
wx_xcx_check.sql WxCheckMvc/wx_xcx_check.sql
Requirements
Requirement: 用户表 xcx_users
系统 SHALL 存储小程序用户档案,主业务键为 UserKey(微信 openid)。
字段语义(核心):
UserKey:唯一键(UNIQUE)UserName:用户姓名(可空,注册/完善资料后写入)WeChatName:微信昵称(可空)PhoneNumber:手机号(可空,注册/完善资料后写入)AvatarUrl:头像 URL(可空,上传后写入)Department:部门(可空,用于管理端筛选)IsDisabled:0 启用 / 1 禁用FirstLoginTime:首次登录时间CreateTime/UpdateTime
Scenario: 首次登录建档
- WHEN 后端检测到
UserKey不存在 - THEN 插入一条用户记录,至少包含
UserKey/FirstLoginTime/IsDisabled
Requirement: 会话表 xcx_conversation
系统 SHALL 存储会话记录,并支持软删除。
字段语义(核心):
UserKey:关联用户(逻辑关联;当前 schema 未声明外键)ConversationContent:会话内容SendMethod:发送方式(文本/语音等,由业务侧约定字符串)MessageType:1 公有 / 2 私有Guid:会话唯一标识(业务约定;schema 未声明 UNIQUE)Latitude/Longitude:经纬度(字符串存储)UserLocation:地址文本(可由高德逆地理编码写入)RecordTime:记录时间RecordTimeUTCStamp:毫秒级 UTC 时间戳(用于排序/分页)SpeakingTime:对话时长(可空)IsDeleted:0 正常 / 1 删除
索引:
idx_userkey、idx_utcstamp、idx_deleted、idx_messagetype、idx_guid
Scenario: 软删除
- WHEN 用户删除会话
- THEN 将
IsDeleted置为 1 - AND 默认查询不返回
IsDeleted = 1的记录
Requirement: 操作日志表 xcx_log
系统 MAY 记录操作日志,用于审计与问题排查。
字段语义(核心):
UserKey:操作者OperationContent:操作内容Impact:影响描述RecordTime:记录时间
Scenario: 记录操作日志
- WHEN 发生需要审计的关键操作
- THEN 系统写入
xcx_log
Known Limitations
xcx_conversation.UserKey与xcx_users.UserKey当前为“逻辑关联”,未声明外键;数据一致性需由应用层保障。Guid未声明唯一约束;若业务要求全局唯一,应在后续变更中补齐约束与迁移。