一套轻量级的业财自动化解决方案。通过将财务规则前置到飞书审批前端,实现业务流水的事前预算卡控;通过打通商机与回款数据,为业务提供实时的 ROI 看板,直接驱动现金流加速周转。
底层基建:完整覆盖「业务审批 → 财务核算 → 数据归档 → 审计溯源」全链路,打通飞书审批与畅捷通财务系统之间的数据断点,将月结周期从 3 天压缩至 4 小时。
| 维度 | 我的价值输出 | 可验证证据 / 产物 |
|---|---|---|
| 资金安全 | 预算事前熔断机制:飞书审批流程条件分支 + 多维表格实时数据联动,审批发起时自动查询项目剩余预算,不足则按分支自动拒绝或转交财务特批 | 飞书多维表格自动化规则截图 / 拦截日志样本 |
| 商机变现 | O2C(商机→合同→回款)全链路打通(通过飞书多维表格自动化规则实现):商机签单金额与客户回款状态实时比对,逾期未回款自动高压预警 | 回款逾期预警规则 + 回款汇总表(脱敏) |
| 经营穿透 | 主要业务线收支穿透核算,大部分成本可追溯到具体项目/客户/合同,辅助识别无效变动成本支出 | 成本编号字段强制校验逻辑 + 项目 ROI 看板草图 |
| 工程落地 | 30+ 业务 Python 脚本,覆盖预算卡控、发票信息核验、凭证拆分、多维报表、多系统数据对接 | GitHub 仓库链接 / 脚本列表截图 |
┌──────────────────────┐ 数据断点 ┌──────────────────────┐
│ 飞书审批系统 │ ╳ ╳ ╳ ╳ ╳ ╳ │ 畅捷通财务系统 │
│ · 差旅申请单 │ │ · 记账凭证 │
│ · 费用报销单 │ 人工搬运数据 │ · 现金流量表 │
│ · 付款申请单 │ 耗时、易错 │ · 利润表 │
│ · 合同审批 │ │ · 科目余额 │
└──────────────────────┘ └──────────────────────┘
核心问题:业务数据产生在飞书,财务核算依赖畅捷通,两套系统之间没有自动化的数据通道。财务人员每天手动从飞书下载审批单、逐条录入凭证、人工核对发票——仅月结期间每家公司需财务花费 3 天手动录入凭证、核对发票,且平均每期出现 3-5 笔因预算超支导致的返工。
| 痛点 | 传统方式 | 平台方案 |
|---|---|---|
| 资金流失 | 审批与财务脱节,预算缺乏前置卡控,超支支出事后才发现,追回成本高 | 预算事前卡控:飞书审批流配置条件分支,发起审批时自动查询多维表格中该项目剩余预算,不足则自动拒绝或转交特批路径,实现实时熔断 |
| 商机漏单 | 签了多少合同、回了多少款,财务月底才知道——逾期应收账款无人盯防 | O2C 全链路打通(飞书多维表格自动化规则):商机签单 → 合同执行 → 客户回款三端数据实时比对,逾期自动预警 |
| 成本黑箱 | "这个项目到底赚不赚钱?"——只有到月底出利润表才能估算,且无法拆分到单项目/单客户 | 变动成本穿透到业务单体:大部分费用可归属到项目/客户/合同维度,实时 ROI 可查 |
| 审计风险 | 凭证 PDF 散落各处、编号混乱,审计时无法快速追溯"一笔支出→谁批的→有没有预算" | 按凭证号自动拆分归档、新旧编号对照,审计清单秒级提取,5 分钟完成完整溯源 |
本平台按照"业务发生 → 数据沉淀 → 财务核算 → 决策反哺"的闭环设计,构建四层数据管道:
展示从「业务发生层(原始层)」→「数据汇聚与清洗层」→「财务核算与归档层」→「经营决策反哺层」的四层数据流转
图片由 render_mermaid.py 从 fig3-four-layer-pipeline.mmd 自动渲染生成
预算卡控的归属说明:预算事前熔断发生在「业务发生层 → 第一层」之间——审批发起时实时查询多维表格预算余额,超预算则审批流条件分支自动拒绝或转交特批。而上方的「第三层·实时预算消耗看板」是第一层清洗后数据的仪表盘展示,用于管理层全局监控,二者分工不同、各司其职。
业务全景图——展示从"审批发生"到"CEO 看板"的完整数据流转,重点突出业务发生层(原始层)和第三层(决策反哺)的闭环价值。
展示「飞书审批 → 凭证生成 → 归档审计 → 经营分析反哺」的完整闭环
图片由 render_mermaid.py 从 fig1-biz-overview.mmd 自动渲染生成
流程图要点解读:
- 利润中心(事前/事中) :业务审批一旦在飞书发起,数据即刻流入多维表格。通过飞书多维表格内置仪表盘,CEO 可以在审批进行中就掌握预算消耗趋势——不需要等到月底出报表(基于飞书多维表格自带BI能力实现)。
- 日常层:审批通过后,系统自动提取摘要、生成凭证草稿,同时处理员工批量提交的电子发票(含 OFD 格式转换)。
- 月底层:月底自动触发批量下载当月完结审批单,按审批编号整合资料包,为结账做好准备。
- 归档层:草稿转正式凭证 → 打印标注凭证号 → 系统重排序 → 新旧凭证号对照 → 按清单提取审计凭证。
- 辅助层:银行流水按凭证号拆分、凭证 PDF 按年月拆分,支撑归档和审计需求。
这是平台区别于普通自动化脚本的关键模块——它不仅处理数据,更将数据转化回业务语言,反哺经营决策。将传统财务的“事后记账成本中心”,强制扭转为“事前干预的利润中心”。
业务价值:
- 事前控制:预算在审批环节即被锁定和监控,超预算自动预警,而非事后追悔
- 事中洞察:各业务线的收入、成本、利润实时可见,支持 CEO 做即时资源调配
- 事后复盘:月度/季度经营分析一键出数,精确到单个项目、单个客户的 ROI
实现路径:
展示「飞书审批 → 低代码清洗 → 多维表格数据池 → BI 看板 → 决策推送」的完整实现路径
图片由 render_mermaid.py 从 fig4-implementation-path.mmd 自动渲染生成
数据回流机制说明:
平台的"数据回流"体现在三个层次:
| 回流层次 | 数据来源 | 回流目标 | 业务价值 |
|---|---|---|---|
| 实时层 | 飞书审批单(预算金额、费用类型、归属项目) | 多维表格仪表盘 | 审批中即知预算余额,防止超支 |
| 日结层 | 当日完结审批 + 当日入账凭证 | 日经营快报 | 管理者每日掌握现金流与费用走势 |
| 月结层 | 月结完成的凭证数据 + 利润表 + 现金流量表 | 月度经营分析报告 | 支撑月度战略复盘与下月预算调整 |
每一条自动化脚本背后,都对应着一个被抹杀在入账前的业务风险:
| 防御目标 | 规避的业务风险 | 武器化方案 | 底层技术载体 |
|---|---|---|---|
| 预算事前熔断 | 员工绕过财务直接花超预算,事后才发现资金缺口 | Python 脚本从剪贴板抓取审批数据并生成标准化凭证摘要。预算卡控通过飞书审批流程的条件分支 + 多维表格的实时数据联动实现:审批发起时自动查询该项目剩余预算,若不足则按分支自动拒绝或转交财务特批 | get_filename_from_feishu.py(剪贴板监控)+ 飞书多维表格自动化规则 |
| 税务合规与发票核验 | 员工提交假发票/重复发票/灰黑产发票骗取报销款 | 在员工提交报销时完成发票信息核验、查重比对与多维分类汇总,将税务风险抹杀在入账前 | invoice.py / summary_by_invoice_category.py / invoice_data_extractor.py |
| 电子发票格式防火墙 | OFD 电子发票无法被常规工具打开,导致入账延误、发票过期 | 自动识别 OFD 文件并批量转换为 PDF,确保发票流转链不断裂 | convert_all.py / ofdtopdf.py |
| 凭证归档防乱 | 畅捷通导出的整本凭证 PDF 无法按单张拆分,审计时如大海捞针 | 按凭证标签自动拆分、逐张命名,确保任何一张凭证在 5 秒内可被检索到 | split_vouchers_凭证PDF拆分.py |
| 银行流水防串 | 银行流水平铺,无法对应到具体凭证号,审计追溯链条断裂 | 按日记账分录自动拆分银行流水 PDF,一张流水对应一张凭证,审计链路完整闭合 | bankStatementSplitterBasedOnJournal.py |
💡 预算卡控的审批流条件分支配置细节可提供流程图,展示分支条件如何与多维表格字段联动。
月结从 3 天压缩到 4 小时是效率结果,但本质上这是一条不可篡改的审计证据链。 每一步操作都留下可追溯的中间产物,确保"一笔支出 → 谁审批 → 有没有预算 → 凭证编号是多少 → PDF 在哪里"在 5 分钟内完整还原。
📅 每月接近月底
│
├── ① 行政下载飞书当月完结审批单 + 附件
│ ↓
│ 审批单 PDF(无固定文件名)──→ pdf_processor_for_approval.py
│ ↓ ↓
│ 提取审批编号/摘要/金额 重命名为标准文件名
│ ↓
│ 附件文件夹(名称含审批编号)
│ ↓
├── ② 从日常凭证草稿箱提取"尚未记录流转结果"的凭证
│ ↓
│ 生成 namelist.xlsx ──→ namelistget_v9.0.py
│ ↓ ↓ ↓
│ 按审批编号匹配 审批单 PDF 附件文件夹
│ ↓
│ 整合为「待处理单据资料包」
│ ↓
├── ③ 草稿凭证 → 转为正式记账凭证
│ ↓
│ 打印纸质版 + 标注凭证编号
│ ↓
├── ④ 月底结账,系统按日期重排序 → 新旧凭证号对照
│ ↓
│ compare_vouchers_advanced.py(排序前后对照 + 审计标记)
│ ↓
└── ⑤ 归档 + 审计提取
关联方往来清理(额外亮点):
除常规月结流程外,本平台还规划了关联方往来款清理工具(IntercompanyOutstandingCleanupTool.py,开发中),用于自动匹配关联方未清项与审批记录,解决多公司主体间的对账难题——这在事务所审计中属于高频问询项。
下图按"风险点 → 拦截机制 → 技术载体"三层结构组织,将每一条商业防御规则映射到具体的脚本实现,供尽调或审计追溯工程落地细节。
含脚本文件名、输入输出,开发/审计可逐节点追溯
图片由 render_mermaid.py 从 fig2-tech-detail.mmd 自动渲染生成
效率是"省了多少时间",防守型利润是"堵住了多少钱"。以下指标基于中小企业典型场景的理论估算,反映平台设计的预期防御能力。
| 护城河维度 | 业务成果 | 预估量化指标(理论值,基于中小企业典型规模) |
|---|---|---|
| 预算超支拦截 | 财务规则前置审批流,系统上线后拦截无预算/超预算业务申请 | 预估年均拦截约 30-50 笔,规避隐性资金流失约 20-50 万元 |
| 应收账款周转(DSO)护航 | 逾期未回款自动高压预警,辅助销售团队催收 | 预估回款周期预警辅助压缩至 45-60 天以内(行业中小企业均值 60-90 天) |
| 单体利润清晰度 | 实现主要业务线收支穿透,大部分成本可追溯至具体项目/客户/合同 | 辅助管理层识别无效变动成本支出,为利润优化提供数据支撑 |
| 指标 | 优化前 | 优化后 | 提升幅度 |
|---|---|---|---|
| 月结周期 | 3 个工作日 | 4 小时 | -94% |
| 单张凭证处理时间 | ~8 分钟(手动录入) | ~30 秒(自动生成草稿) | -94% |
| 发票核对与分类 | ~3 小时/批次 | ~10 分钟/批次 | -94% |
| 审计凭证提取 | ~2 天(手动翻找) | ~5 分钟(按清单提取) | -99% |
| PDF 拆分重命名 | ~1 天(手动) | ~2 分钟(批处理) | -99% |
| 指标 | 数值 |
|---|---|
| 支持的数据源 | 3 类(飞书审批/钉钉表单通过文件解析+剪贴板抓取对接,畅捷通财务通过Excel/PDF文件处理) |
| 覆盖的业务表单类型 | 15+ 种(差旅、费用、付款、合同、项目、商机…) |
| 预估月均处理审批单量 | 500+ 单(基于中小企业典型业务规模) |
| 预估峰值处理能力 | 200+ 单/天 |
| 能力 | 描述 |
|---|---|
| 实时预算监控 | 审批中即计算预算余额,超预算自动阻断并推送预警 |
| 业务线 ROI 分析 | 按项目、客户、产品线维度核算收入与变动成本,数据实时可用 |
| 现金流预测 | 基于审批中的付款申请单,预判未来 30 天资金需求 |
| 审计追溯 | 任意凭证 → 原始审批单 → 附件资料包,5 分钟完整溯源 |
核心价值:平台不止是"自动化脚本",而是真正把数据变成了管理层可用的经营信息。
展示「业务发生(生产者)→ 数据处理(管道)→ BI 分析(转化器)→ 经营决策(消费者)→ 反哺业务」的完整闭环
图片由 render_mermaid.py 从 fig5-closed-loop.mmd 自动渲染生成
| 层级 | 技术选型 | 说明 |
|---|---|---|
| 语言 | Python 3.10+ | 核心数据处理 |
| 表格处理 | openpyxl, pandas, xlrd | Excel 读写、数据分析、报表生成 |
| PDF 处理 | PyMuPDF (fitz), pdfplumber | PDF 文本提取、页面拆分、格式转换 |
| 自动化 | Selenium( |
网页端自动化探索(畅捷通登录等),当前仅存测试脚本 |
| OFD 格式 | ofdparser | 电子发票格式转换为 PDF |
| 集成 | 剪贴板监控 + 本地文件处理(开发中:飞书/钉钉开放 API 直连) | 审批数据处理与文件检索 |
| 低代码 | 飞书多维表格 + 自动化规则 | BI 看板、数据校验、预警推送 |
qianer_auto_python/
├── accounting/ # 财务核心:凭证、发票、报表、对账
│ ├── 合并现金流量表.py # 畅捷通月度现金流量表合并
│ ├── 利润表生成.py # 畅捷通月度利润表合并
│ ├── split_vouchers_凭证PDF拆分.py # 凭证 PDF 按标签拆分
│ ├── 清单提取拆分好的凭证.py # 按清单提取审计凭证
│ ├── 新旧凭证列表比较及差异输出.py # 新旧凭证号差异对比
│ ├── invoice.py # 发票信息提取
│ ├── invoice_data_extractor.py # 发票数据批量查询
│ ├── summary_by_invoice_category.py # 按类别汇总发票金额
│ ├── bankStatementSplitterBasedOnJournal.py # 银行流水按凭证拆分
│ ├── IntercompanyOutstandingCleanupTool.py # 关联方往来清理
│ └── ...
├── file_processing/ # 文件处理:PDF 拆分/合并/格式转换
│ ├── pdf_processor_for_approval.py # 审批单 PDF 关键信息提取
│ ├── convert_all.py # OFD/PDF 批量格式转换
│ └── ...
├── integration/ # 集成工具:飞书/钉钉审批数据本地处理(剪贴板抓取 + 本地文件检索;开发中:API 直连)
│ ├── get_filename_from_feishu.py # 剪贴板监控飞书审批详情 → 标准化文件名
│ ├── get_dingding_form.py # 本地 PDF 关键词检索(匹配钉钉导出的表单附件)
│ └── ...
│ 💡 get_filename_from_feishu.py 基于关键词提取(如审批编号、金额等),对飞书审批页面结构局部变更具有一定容错;同时规划 API 直连方案以彻底解耦
├── data/ # 业务数据文件(从飞书多维表格导出的脱敏快照)
│ ├── 审批数据总表.xlsx # 15+ 工作表,500+ 列审批数据
│ ├── 项目清单.xlsx # 项目维度数据
│ ├── 采购合同管理.xlsx # 采购合同台账
│ ├── 客户商机管理.xlsx # 客户与商机漏斗
│ ⚠ 以上数据文件包含业务敏感信息,不纳入公开仓库
│ 💡 计划提供 sample_data/ 目录,包含脱敏假数据(如虚构公司的审批单、发票列表),面试官可运行核心脚本(如 利润表生成.py)实际验证平台能力
├── docs/
│ ├── DEMO_GUIDE.md # Demo 构建指引
│ └── diagrams/ # Mermaid 架构图源码
├── requirements.txt
└── README.md
| 决策点 | 选型 | 理由 |
|---|---|---|
| 为什么混用低代码 + Python? | 飞书多维表格做 BI 展示层(非技术人员可维护),Python 做重型数据处理 | 最大化交付速度 + 可维护性 |
| 为什么用剪贴板而非 API? | 当前阶段通过剪贴板抓取审批数据(零接口依赖),开发中规划飞书/钉钉开放 API 直连 | 先跑通业务闭环,再替换为 API 提升稳定性 |
| 数据存储方案? | 飞书多维表格作为实时业财数据库(字段级权限、内置 BI),Python 脚本处理导出 Excel 做批量运算 | 在线协同 + 离线批处理互补,无需自建数据库运维 |
| 为什么支持双击运行? | 目标用户是财务人员而非程序员 | 零命令行使用体验 |
- Python 3.8+
- Windows 10/11(已在 Windows 环境充分验证)
pip install -r requirements.txt所有脚本支持两种运行方式:
# 方式一:双击运行(财务人员友好)
# 在文件资源管理器中直接双击 .py 文件
# 方式二:命令行运行
python accounting/利润表生成.py
python file_processing/convert_all.py
⚠️ 路径说明:脚本自动从项目根目录查找data/目录下的数据文件。部分脚本(如凭证拆分、清单提取)会弹出 GUI 文件选择窗口,支持选择任意位置的文件。
- 本项目所有代码为纯本地 Python 脚本,不依赖外部 API 服务,所有脚本基于本地文件处理和剪贴板抓取,可在离线环境运行
⚠️ 部分脚本(如get_filename_from_feishu.py)依赖剪贴板中飞书审批页面的内容格式。飞书审批页面结构变更可能需要调整提取规则——已规划 API 直连方案作为长期解耦路径- 本项目仅提供可公开的内容。
data/目录下的样例数据涉及公司业务信息,不包含在公开仓库中(已通过.gitignore排除)。飞书多维表格+自动化规则+类BI看板不公开。 - 可在全新 Windows 环境中按 README 步骤直接运行(需自行准备数据文件)
Built from scratch. Designed for real business pain points. Delivering measurable impact.
最后更新:2026 年 6 月 | 公开版本 v1.0 📦 仓库:公开仓库




