feat: 账单关系(父子/同级)与关系图,AI 生成关系名称备注
- 新增 t_transaction_group、t_transaction_group_item 两张表(MySQL 与 SQLite 双脚本) - 后端新增关系组实体/枚举/Mapper/DTO/VO/Service/Controller:按账单查询、创建、更新、删除;校验同类型唯一、父子角色与成员归属;删除账单时级联清理(组不足或父子组失去父账单则整组移除);分页填充 relationGroupCount - 前端收支记录新增「关系」列与详情弹窗(基本信息、标签、账单关系、来源图片、原始数据) - 新增关系图(自定义 SVG 渲染):圆形节点、按收支红/绿着色、父子/同级连线带箭头与「关联」标签、当前账单高亮,成员较多时自动换行 - 关系编辑弹窗支持新建/编辑/删除、分页选择关联账单、AI 生成名称与备注、关系名称历史下拉(按类型过滤、聚焦即显示)、关系类型偏好记忆(localStorage) - 支持勾选账单批量建立关系,并新增批量选择模式(默认不显示多选列) - 新增 AI 关系能力:AiCallType.RELATION、AiRelationService 与提示词模板 ai-relation-system(含借贷场景),接口 POST /api/ai/relation - 新增 /api/transaction/group/* 接口与关系名称历史接口 - 补充中英日三语文案
This commit is contained in:
@@ -66,6 +66,30 @@ CREATE TABLE IF NOT EXISTS t_transaction_tag (
|
||||
INDEX idx_tag_id (tag_id) COMMENT '标签ID索引'
|
||||
);
|
||||
|
||||
-- 账单关系组表:将多笔账单按父子或同级关系聚合为一个关系组
|
||||
CREATE TABLE IF NOT EXISTS t_transaction_group (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '关系组ID,主键自增',
|
||||
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
user_id BIGINT NOT NULL COMMENT '所属用户ID',
|
||||
type VARCHAR(20) NOT NULL COMMENT '关系类型:PARENT_CHILD-父子,SIBLING-同级',
|
||||
name VARCHAR(100) COMMENT '关系组名称',
|
||||
remark VARCHAR(255) COMMENT '备注',
|
||||
INDEX idx_user_id (user_id) COMMENT '用户ID索引'
|
||||
);
|
||||
|
||||
-- 账单关系组成员表:关系组与账单的关联及组内角色
|
||||
CREATE TABLE IF NOT EXISTS t_transaction_group_item (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '关联ID,主键自增',
|
||||
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
group_id BIGINT NOT NULL COMMENT '关系组ID',
|
||||
transaction_id BIGINT NOT NULL COMMENT '交易记录ID',
|
||||
role VARCHAR(10) NOT NULL COMMENT '组内角色:PARENT-父,CHILD-子,MEMBER-成员',
|
||||
sort_order INT NOT NULL DEFAULT 0 COMMENT '排序序号,用于同级链路顺序',
|
||||
UNIQUE INDEX uk_group_transaction (group_id, transaction_id) COMMENT '关系组+交易唯一索引',
|
||||
INDEX idx_transaction_id (transaction_id) COMMENT '交易记录ID索引'
|
||||
);
|
||||
|
||||
-- AI 配置表:存储每个用户的 AI 智能建议相关配置
|
||||
CREATE TABLE IF NOT EXISTS t_ai_config (
|
||||
id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '配置ID,主键自增',
|
||||
|
||||
Reference in New Issue
Block a user