跳转到内容

desktop/src-tauri/src/commands.rs

第 1 条注释,第 1 行

desktop/src-tauri/src/commands.rs:1

//! Tauri IPC 命令:查询/来源/刷新/设置/导出。

第 2 条注释,第 2 行

desktop/src-tauri/src/commands.rs:2

//! DTO 约定(architecture.md):token 等大数值用十进制字符串传输,

第 3 条注释,第 3 行

desktop/src-tauri/src/commands.rs:3

//! 避免前端浮点舍入;错误返回结构化 code+message,不回传内部 SQL/游标。

第 4 条注释,第 19 行

desktop/src-tauri/src/commands.rs:19

/// 来源归属集合为空时,不查询任何记录,不能表示所有用户。

第 5 条注释,第 35 行

desktop/src-tauri/src/commands.rs:35

/// 记录应用操作诊断,不导入对话正文。

第 6 条注释,第 223 行

desktop/src-tauri/src/commands.rs:223

/// 系统保存对话框:用户选定导出位置(返回 None = 取消)。

第 7 条注释,第 224 行

desktop/src-tauri/src/commands.rs:224

/// 后端只把文件写到该路径(architecture.md 导出约定)。

第 8 条注释,第 291 行

desktop/src-tauri/src/commands.rs:291

/// 查询请求 DTO。

第 9 条注释,第 296 行

desktop/src-tauri/src/commands.rs:296

/// 请求的分组周期,由共享查询构造函数解析。

第 10 条注释,第 352 行

desktop/src-tauri/src/commands.rs:352

/// token 数值 → 十进制字符串(unknown 保持 null)。

第 11 条注释,第 404 行

desktop/src-tauri/src/commands.rs:404

// 读路径:常驻只读连接(WAL 与后台扫描并发;失败回退写连接)。

第 12 条注释,第 517 行

desktop/src-tauri/src/commands.rs:517

/// 来源清单:实例注册 + 最近运行 + 兼容标记计数 + 失踪文件数

第 13 条注释,第 518 行

desktop/src-tauri/src/commands.rs:518

/// (磁盘已不存在的注册文件:Agent 自行清理/压实产生,其历史只存于本应用)。

第 14 条注释,第 599 行

desktop/src-tauri/src/commands.rs:599

// 失踪文件计数(SQLite 无文件系统访问,磁盘检查逐实例做;只统计不改状态)。

第 15 条注释,第 619 行

desktop/src-tauri/src/commands.rs:619

/// 启用/停用来源(停用后自动提取不再读取该实例)。

第 16 条注释,第 643 行

desktop/src-tauri/src/commands.rs:643

/// 设置逐源提取计划(rule=None 删除,恢复继承全局;M6 逐源定时接线)。

第 17 条注释,第 644 行

desktop/src-tauri/src/commands.rs:644

/// 固定间隔 15s–24h / 每日 HH:MM / 每周 ISO weekday+HH:MM;时区独立保存。

第 18 条注释,第 688 行

desktop/src-tauri/src/commands.rs:688

// 回读新状态(nextDue 供 UI 显示)。

第 19 条注释,第 714 行

desktop/src-tauri/src/commands.rs:714

/// 触发一次手动刷新(已在执行时合并返回)。

第 20 条注释,第 715 行

desktop/src-tauri/src/commands.rs:715

/// 后台线程执行(同步命令会阻塞主线程冻结 UI;整轮扫描可达分钟级),

第 21 条注释,第 716 行

desktop/src-tauri/src/commands.rs:716

/// 进度经 state.refresh 由顶栏轮询展示。

第 22 条注释,第 736 行

desktop/src-tauri/src/commands.rs:736

// 后台启动是乐观值:极小并发窗口内重复触发由 run_refresh 合并。

第 23 条注释,第 775 行

desktop/src-tauri/src/commands.rs:775

// 遥测配置负责接收器生命周期;保存较早打开的设置表单时,

第 24 条注释,第 776 行

desktop/src-tauri/src/commands.rs:776

// 不得因更改其他偏好而停用接收器。

第 25 条注释,第 780 行

desktop/src-tauri/src/commands.rs:780

// 分级保留层级合法性(复用 core 校验)。

第 26 条注释,第 799 行

desktop/src-tauri/src/commands.rs:799

// F2 费用设置校验:供应商默认字段非空去空格;TTL 仅 5/60 分钟档。

第 27 条注释,第 824 行

desktop/src-tauri/src/commands.rs:824

// F2 在线刷新:缓存 TTL 天数范围(1–365)。

第 28 条注释,第 849 行

desktop/src-tauri/src/commands.rs:849

// 时区变更 ⇒ 在新时区重算日分区(事件仍在 ⇒ 推导;封存日跳过)。

第 29 条注释,第 883 行

desktop/src-tauri/src/commands.rs:883

/// 额度总览(通用 quota_history 最新快照;agent=None 取全部)。

第 30 条注释,第 884 行

desktop/src-tauri/src/commands.rs:884

/// 按来源额度单位独立展示,不与已观察到的 token 用量混合。

第 31 条注释,第 913 行

desktop/src-tauri/src/commands.rs:913

/// 某 (agent, quota_id) 的每日额度趋势(used=已用请求/额度数)。

第 32 条注释,第 939 行

desktop/src-tauri/src/commands.rs:939

/// 导出:summary-csv(展示用)或 exchange(无损交换 JSON,M1a 约定)。

第 33 条注释,第 940 行

desktop/src-tauri/src/commands.rs:940

/// target_dir 为空时写应用数据目录 exports/ 下;返回写入的完整路径。

第 34 条注释,第 941 行

desktop/src-tauri/src/commands.rs:941

/// CSV 防公式注入:以 = + - @ 开头的单元格加 `'` 前缀。

第 35 条注释,第 1030 行

desktop/src-tauri/src/commands.rs:1030

// 按用户/主机过滤导出范围(默认当前用户+当前主机)。

第 36 条注释,第 1089 行

desktop/src-tauri/src/commands.rs:1089

/// 应用数据库里刷新一次设置(导入/回填工具用;当前主要是测试钩子)。

第 37 条注释,第 1100 行

desktop/src-tauri/src/commands.rs:1100

// ---- 多用户(v6)与导入/归档统计命令 ----

第 38 条注释,第 1124 行

desktop/src-tauri/src/commands.rs:1124

/// 创建用户并(可选)立即切换。

第 39 条注释,第 1149 行

desktop/src-tauri/src/commands.rs:1149

/// 切换当前统计用户(持久化 settings.current_user)。

第 40 条注释,第 1190 行

desktop/src-tauri/src/commands.rs:1190

/// 把来源实例改归指定用户(多用户分开统计的分配入口)。

第 41 条注释,第 1208 行

desktop/src-tauri/src/commands.rs:1208

/// 导入聚合交换包(导出 → 导入与查询验证;M1a 合并规则)。

第 42 条注释,第 1322 行

desktop/src-tauri/src/commands.rs:1322

/// 各归档层条目数 + 库文件占用(含 WAL)。

第 43 条注释,第 1354 行

desktop/src-tauri/src/commands.rs:1354

/// 手动清理:按"days_before 天之前"执行一次分层保留(各层 cutoff = min(设置, days_before))。

第 44 条注释,第 1386 行

desktop/src-tauri/src/commands.rs:1386

/// 取消操作不等待清理任务持有的数据库互斥锁。

第 45 条注释,第 1455 行

desktop/src-tauri/src/commands.rs:1455

/// 原生打开对话框(导入文件选择)。

第 46 条注释,第 1464 行

desktop/src-tauri/src/commands.rs:1464

/// 清空预检(确认层展示):事件总量 + 已注册但磁盘已不存在的源文件数

第 47 条注释,第 1465 行

desktop/src-tauri/src/commands.rs:1465

/// (这些历史清空后无法从源重采,见 2026-09-27 zcode 数据丢失分析)。

第 48 条注释,第 1496 行

desktop/src-tauri/src/commands.rs:1496

/// 清空前自动备份整库(共享助手:VACUUM INTO 一致快照 + 空间检查 + 保留 3 份)。

第 49 条注释,第 1497 行

desktop/src-tauri/src/commands.rs:1497

/// Agent 会清理/压实自己的源文件,清空后部分历史无法重采(2026-09-27

第 50 条注释,第 1498 行

desktop/src-tauri/src/commands.rs:1498

/// zcode 数据丢失教训);备份给恢复留一条路。无数据时不备份。

第 51 条注释,第 1556 行

desktop/src-tauri/src/commands.rs:1556

/// 清理全部数据(所有归档层+诊断+游标),并触发全量重新采集。

第 52 条注释,第 1557 行

desktop/src-tauri/src/commands.rs:1557

/// 主机身份、用户、设置保留;source_files 状态重置为 new 使探测重新执行。

第 53 条注释,第 1558 行

desktop/src-tauri/src/commands.rs:1558

/// 清空前自动备份(见 backup_before_clear)。

第 54 条注释,第 1559 行

desktop/src-tauri/src/commands.rs:1559

//!(空行)

第 55 条注释,第 1560 行

desktop/src-tauri/src/commands.rs:1560

/// 后台执行(UI 不阻塞,同步命令会冻结主线程事件循环):

第 56 条注释,第 1561 行

desktop/src-tauri/src/commands.rs:1561

/// 阶段进度经 `clear-all-progress` 事件推送——

第 57 条注释,第 1562 行

desktop/src-tauri/src/commands.rs:1562

/// waiting(等当前采集结束)→ backup → clearing → cleared(各表计数)

第 58 条注释,第 1563 行

desktop/src-tauri/src/commands.rs:1563

/// → rescan → done;任一步失败发 failed(含 error)并终止。

第 59 条注释,第 1564 行

desktop/src-tauri/src/commands.rs:1564

/// 重复触发直接返回 started=false(任务单例)。

第 60 条注释,第 1578 行

desktop/src-tauri/src/commands.rs:1578

// panic 也要复位标志并发失败事件,否则按钮会永久停留在忙碌态。

第 61 条注释,第 1601 行

desktop/src-tauri/src/commands.rs:1601

/// 清理+重采后台任务主体;错误向上传递由调用方发 failed 事件。

第 62 条注释,第 1603 行

desktop/src-tauri/src/commands.rs:1603

// 清库与扫描并发会让进行中的采集把已清表回写(数据复活),

第 63 条注释,第 1604 行

desktop/src-tauri/src/commands.rs:1604

// 先等当前采集结束再清。

第 64 条注释,第 1626 行

desktop/src-tauri/src/commands.rs:1626

// 游标已重置,本轮刷新即全量重新采集;进度由 state.refresh 顶栏轮询展示。

第 65 条注释,第 1636 行

desktop/src-tauri/src/commands.rs:1636

/// 清库事务:各表 DELETE + source_files 状态重置 + 保留已处理位置设置清除 + 修订号推进。

第 66 条注释,第 1658 行

desktop/src-tauri/src/commands.rs:1658

// 清除游标后保留文件 generation 和身份,

第 67 条注释,第 1659 行

desktop/src-tauri/src/commands.rs:1659

// 状态 new 仍要求下次扫描重新检测文件格式。

第 68 条注释,第 1699 行

desktop/src-tauri/src/commands.rs:1699

// 用请求指定的日期限制逐小时查询范围。

第 69 条注释,第 1746 行

desktop/src-tauri/src/commands.rs:1746

/// 导出过滤选项:可用的用户与主机列表(含当前值)。

第 70 条注释,第 1789 行

desktop/src-tauri/src/commands.rs:1789

/// 从共享的保留用量记录中查询按所选字段分组的图表序列。

第 71 条注释,第 1831 行

desktop/src-tauri/src/commands.rs:1831

/// 最近诊断日志(设置页日志 Tab)。

第 72 条注释,第 1871 行

desktop/src-tauri/src/commands.rs:1871

/// 当前 API 参考价可筛选小时,历史日金额保持不变。

第 73 条注释,第 1933 行

desktop/src-tauri/src/commands.rs:1933

/// F2 显式重算费用(后台线程执行;完成写操作日志,UI 稍后刷新查看)。

第 74 条注释,第 1970 行

desktop/src-tauri/src/commands.rs:1970

/// F2 价格快照列表(来源/新鲜度/行数)。

第 75 条注释,第 1981 行

desktop/src-tauri/src/commands.rs:1981

/// F2 手工导入本地价格快照 JSON(schema 校验 + 区间重叠检查 + 幂等)。

第 76 条注释,第 2009 行

desktop/src-tauri/src/commands.rs:2009

/// F2 在线刷新(models.dev):手动触发(force 绕过 TTL)。需费用估算与

第 77 条注释,第 2010 行

desktop/src-tauri/src/commands.rs:2010

/// 在线刷新均已启用;后台线程执行,结果经 price_refresh_status 轮询。

第 78 条注释,第 2029 行

desktop/src-tauri/src/commands.rs:2029

/// F2 在线刷新状态:启用位、TTL、缓存新鲜度、运行标记与最近一次结果。

第 79 条注释,第 2072 行

desktop/src-tauri/src/commands.rs:2072

/// 后台清理任务的清库事务:各表清空、source_files 状态重置为 new、

第 80 条注释,第 2073 行

desktop/src-tauri/src/commands.rs:2073

/// 修订号推进;操作日志补写一条 diagnostics。

第 81 条注释,第 2134 行

desktop/src-tauri/src/commands.rs:2134

// 明细已过期但日费用尚存时,清空前仍须保存一致备份。

第 82 条注释,第 2168 行

desktop/src-tauri/src/commands.rs:2168

// 操作日志补写一条;清空前的诊断已删除。