Files
ledgerly-docs/guide/rules.md
T
rosercode 41d1a4d5a9 docs: 补充管理页批量操作说明并同步规则/AI 规则文档
为规则、分类、标签管理页新增的「批量操作模式」与多选删除补充使用与开发文档,同时补上此前已完成但未同步的 AI 规则建议可编辑、编辑后实时重算去重等文档,并登记批量模式截图脚本。

变更内容:
- guide/categories-tags.md:补充分类与标签的批量删除说明,并回填 tags-batch.png、categories-batch.png 配图。
- guide/rules.md:批量删除与应用匹配账单改为需先进入「批量操作」模式(默认不显示勾选框)。
- dev/api.md:新增 DELETE /api/tag/batch、/api/category/batch,并补齐规则命中账单预览/一键应用、AI 规则去重校验等接口。
- dev/data-model.md:说明标签删除清理交易标签与规则标签关联、分类删除保留逻辑引用(账单显示未分类)。
- dev/rule-engine.md、dev/ai.md、dev/preferences.md、guide/ai.md、guide/transactions.md:同步 AI 规则建议可编辑、编辑后实时重算去重、应用开关默认开启并持久化等说明。
- scripts/ts/capture-elements.ts:新增 captureBatchModes()(标签/分类批量模式截图)并纳入 main()。

说明:
- 截图经测试环境(前端 5174 / 后端 8081,虚构数据)生成,已上传 OSS,正文以 OSS 长期地址引用;public/screenshots 目录不入库。
2026-10-14 01:07:46 +08:00

6.6 KiB
Raw Blame History

规则管理

规则用于自动归类:命中条件后自动应用指定的分类与标签,减少手动整理。

规则管理

创建规则

  1. 在规则管理页右上角点击「新增规则」。

  2. 填写规则名称,并按需设置条件与结果:

    字段 说明
    类型 不限类型 / 支出 / 收入
    关键词 匹配备注、交易对方、商品名称(包含即命中)
    金额区间 最小值 ~ 最大值(可只填一端)
    目标分类 命中后应用的分类
    目标标签 命中后应用的标签(可多选)
    启用 / 排序 是否启用、优先级(越小越优先)
  3. 点击「确定」保存。

新增规则弹窗

规则条件

一条规则可组合以下条件:

条件 说明
类型 不限类型 / 支出 / 收入
关键词 匹配备注、交易对方、商品名称,包含即命中(忽略大小写)
金额区间 最小值 ~ 最大值(含边界,可只填一端)
目标分类 命中后应用的分类(可不选)
目标标签 命中后应用的标签(多选,可不选)
优先级 排序值越小越优先
启用 可随时启用或停用

命中规则

  • 分类:取优先级最高(排序值最小)且与交易类型一致的命中规则。
  • 标签:取所有命中规则标签的并集。
  • 规则在账单导入的解析预览阶段即会展示命中的规则名与建议分类/标签;确认导入时,规则建议的分类优先于面板默认分类,标签与默认标签合并去重。

搜索与分页

规则列表支持按条件检索与分页:

  • 搜索:按规则名称或关键词模糊匹配。
  • 筛选:启用状态(已启用 / 已停用)、收支类型(收入 / 支出)。
  • 分页:每页 10 / 20 / 50 / 100 条。

点击「搜索」按条件查询,「清空」重置全部条件。新增规则后回到第一页,便于查看新规则。

多选与批量删除

为保持列表清爽,规则表格默认不显示勾选框。需要进行批量操作时,点右上角「批量操作」进入批量选择模式,此时每行前会出现勾选框,表头可全选当前页;完成后点「退出批量」退出并清空勾选。

  • 勾选若干规则后,点右上角「批量删除」并确认,即可一次性删除选中的规则。
  • 未勾选任何规则时「批量删除」不可点击。

删除规则只影响后续导入与手动应用,已应用的历史记录分类与标签不会被撤销。

一键应用到匹配账单

规则默认只在账单导入时对新增记录生效,不会自动改写已有记录。如需把规则应用到历史账单,可在规则列表使用「应用」:

  1. 单条规则:点击规则行的「应用」按钮。
  2. 多条规则:点右上角「批量操作」进入批量选择模式,勾选若干规则后点「应用匹配账单」。

两种方式都会先弹出预览:按规则条件(类型 + 关键词 + 金额区间)列出全部命中的账单,并显示每条账单的当前分类/标签 → 目标分类/标签,以及命中总数、将更新分类数与将追加标签数;确认后点「确认应用」执行。

应用规则到匹配账单

  • 分类:覆盖写入(仅当规则分类与账单收支类型一致时)。
  • 标签:追加到账单已有标签之后,不会删除原有标签。
  • 匹配范围为全部历史账单;停用的规则也可手动应用(应用后再启用不影响本次结果)。
  • 命中超过 500 条时预览仅展示前 500 条,应用仍作用于全部命中;重复执行不会产生重复标签(幂等)。
  • 全程本地运算,不调用 AI。

AI 生成规则

启用 AI 后,规则管理页右上角会出现「AI 生成规则」按钮,可让 AI 依据已打标签的记录自动归纳出「关键词 → 分类/标签」规则,无需手工逐条编写。

流程为两步:

  1. 选择记录:列出当前用户已打标签的记录,默认全选当前页。可按备注关键字搜索,并按收支类型、标签筛选;支持分页与每页条数切换,可「全选本页」或「清空选择」。跨页选择会保留。

    AI 生成规则 · 选择记录

  2. 预览与编辑规则:AI 依据所选记录的类型、备注、交易渠道、已有分类与标签归纳出规则建议,展示规则名称、类型、关键词、金额区间、目标分类与标签、理由。所有字段都可直接编辑(名称、类型、关键词、金额区间、分类、标签),AI 建议的新分类/新标签以下拉里的「新建:xxx」选项保留;勾选后点击「创建勾选规则」批量创建,系统会自动创建建议中不存在的新分类与标签。

    AI 生成规则 · 预览规则

此外,也可在收支记录页的批量操作区勾选账单后直接生成规则(不要求已打标签),并可选「同时应用到勾选账单」(默认开启,会记住上次选择)。

::: tip 与已有规则去重 AI 建议若与数据库中已有规则重复(按「类型 + 关键词 + 分类 + 标签集合」判定),会标注「已存在」,默认不勾选且不可勾选。编辑规则后会自动重新判定:改成不重复会自动勾选,改成重复会自动取消勾选并禁用,避免产生重复规则。 :::

示例

规则名 条件 结果
星巴克归入餐饮 关键词「星巴克」、类型支出 分类:餐饮;标签:咖啡
滴滴出行归入交通 关键词「滴滴」、类型支出 分类:交通
大额支出标记 金额 ≥ 500、类型支出 标签:大额消费

使用建议

  • 先建立少量高频规则(餐饮、交通、外卖等),再逐步补充。
  • 关键词尽量选择稳定、唯一的商户或商品名,避免误命中。
  • 同一笔记录可能命中多条规则,分类取最优先的一条,标签会全部应用。