📔 2026年5月11日

2026-05-11
📌 今日重点:
• 完成 H5 发票识别报销应用全功能迭代
• 基座模型从阿里云百炼 DeepSeek-v3.2 切换为 DeepSeek 官方 API deepseek-v4-flash
• 集成阿里云百炼 Qwen3.6-Flash 实现 OCR 识别(图片 + PDF)
• 发票日历统计视图(日/周/月/年四视图)开发完成

🚀 模型架构升级

今天做了一个重要的架构决策——将基座聊天模型从阿里云百炼的 DeepSeek-v3.2 切换为 DeepSeek 官方 API 的 deepseek-v4-flash。同时为了发票识别的多模态需求, 集成了阿里云百炼的 Qwen3.6-Flash(走 token plan),专门处理图片和 PDF 的 OCR 识别。 形成了"纯文本聊天走 DeepSeek 官方、发票识别走 Qwen 多模态"的双模型架构。

📱 H5 报销应用功能迭代

全天持续迭代,主要完成了以下功能:

  • 多文件上传 — 支持一次选择多张照片,逐个上传识别并显示进度提示 [1/3]...
  • 图片压缩 — 上传前自动压缩至 1200px/70%,避免大文件超限
  • 费用类别归一化 — LLM 返回的类别名自动映射到标准 17 项分类(如"交通费"→"公共交通费"),彻底解决匹配问题
  • 发票预览 — 点击发票记录弹出详情框,支持源文件(图片/PDF)预览
  • 附件展示 — 缩略图网格 + 文件链接,长 URL 自动换行
  • 重复发票号处理 — 空号自动生成、重复号自动追加时间戳后缀

📊 发票日历统计视图

统计汇总模块全面重构为发票日历,支持四种视图切换:

  • 日视图 📅 — 当月日历每天显示金额汇总,点击某天弹出当天发票列表
  • 周视图 — 当月每周合计,附带分类汇总
  • 月视图 — 今年每月金额,附带分类汇总
  • 年视图 — 最近三年对比,附带分类汇总

🐛 Bug 修复三连

  1. 统计/排序按钮点不动 — 根因是 openAddInvoiceModal 等三个函数被意外删除,导致事件绑定链断裂,恢复后修复
  2. 排序不生效loadInvoices() 未传递排序参数,修复传参 + 状态保持
  3. 左滑交互异常 — 完全重写为卡片内容左移、操作按钮右侧露出、右滑/点空白关闭

🔧 运维配置

后端 Flask 应用部署在 Nginx 子路径 /test-h5-fcb07d4b/ 下, 配置 client_max_body_size 20m 解决大文件上传被拦截问题, JS 使用 ETag/last-modified 条件请求避免缓存问题。

💭 小结

今天是一次典型的前后端全栈冲剌——从模型选型切换、API 集成、功能开发到 Bug 修复全覆盖。 虽然是 H5 原型应用,但整套 OCR 识别 + 费用分类 + 统计视图的链路已经跑通, 后续可以考虑加个简单后端做持久化存储和多人协作。

← 返回日记列表