FHMinyi个人作品集
← 返回作品目录
项目手记 / 02 · 实习项目

跨境业务自动化

资料处理与供应商对账

围绕资料处理、供应商对账与异常提示,组织自动处理流程,并明确 AI、业务规则和人工复核的边界。

技术栈

  • Python
  • LangGraph
  • pandas
  • openpyxl
  • FastAPI
  • Pydantic
  • SQLite
供应商对账 · 演示数据
01 / MY WORK

我的工作

我负责将资料处理与供应商对账流程接入 Web 工作台,完成上传、后台任务、进度、结果下载和异常详情,并参与财务与清关规则的修复。

把工作流接成可操作的任务

实现财务任务适配、独立输入输出目录与检查点、阶段进度和结果打包,让用户从上传资料开始,在同一个页面查看状态并下载结果。

让异常有可读的入口

增加财务任务提示详情,汇总已有告警、阻塞原因和处理建议,支持按账单、供应商和采购单搜索;当前任务与历史任务使用一致的入口。

修复规则并对照输出

处理过跨渠道错放采购单导致正确账单缺项提示遗漏的问题,也参与清关地址可靠性修复。用保存的输入做本地回放,对照结果文件,检查变化是否只落在预期范围。

02 / CONTEXT

业务背景

跨境业务的资料来自不同表格和文件。以供应商对账为例,输入既有采购入库总表,也有不同渠道的供应商账单。处理结束后,业务人员仍要拿到熟悉的 Excel,并知道哪些行需要核对,而不是只看到一个“任务成功”。

03 / PROCESS

核心流程

  1. 01

    上传一组对账资料

    接收一个保留目录结构的 ZIP,或采购入库总表加供应商账单。每个任务使用自己的工作目录和检查点。

  2. 02

    运行对账并显示真实阶段

    适配层把引擎节点映射为识别表格、分类与公式、供应商对账、生成结果和质量校验,前端读取后台任务进度。

  3. 03

    下载结果,查看需要核对的内容

    只打包正式工作簿与处理后的运行报告。存在提示时显示“完成但有提示”,并提供详情;输入结构不成立时停止,不强行产出成功状态。

同一笔采购单,落在了哪张账单上?

同一笔采购单,落在了哪张账单上?采购入库总表PO-017 10 件单价 10.00含税单价 11.30供应商甲 · 对私PO-017 10 件账单 113.00价格不同 → 对公10 × 11.30 = 113.00金额相符,渠道错放对私账单原行保留,批注错放对公账单已入库未对账 113.00注明错放文件,完整缺项只计一次。
图 02 · 机制速写
示例 PO-017 的入库金额和账单金额同为 113.00。实际渠道为对公,有已确认的对公账单,而该单只出现在对私文件里,于是保留错放批注,按完整入库行补一次缺项。
04 / ENGINEERING

技术难点

01

给流程加 Web 界面,不能再算一遍结果

已有工作流负责对账规则和 Excel 输出。如果 Web 为了展示方便再算一遍金额、异常或文件名,就会出现页面与下载结果不一致。

我把平台和引擎的职责分开:引擎决定正式结果,Web 适配层负责任务隔离、进度、告警和下载。恢复流程时沿用引擎的决策格式,不自动打开强制完成开关;打包时只选正式产物,对运行报告只处理本机路径,不改业务字段。

页面显示与结果文件使用同一个业务来源。能够下载的结果和仍需关注的提示可以同时保留,结构性错误也不会被包装成成功。

02

采购单出现在错误账单里,不等于已被正确核对

同一供应商有对公、对私两类账单。一个采购单如果只出现在错误渠道,原逻辑可能因为“已经出现过”而跳过正确渠道的缺项提示。

我把供应商匹配、账单渠道和采购单实际渠道分开判断。只有实际渠道明确、存在对应目标账单、并且该采购单仅出现在另一渠道时,才在正确账单中补充完整缺项;同时保留错放账单的异常,附上来源提示,避免重复付款。渠道不明或已有同渠道覆盖时不猜补。

修复后,本地对照回放恢复了正确渠道的缺项提示。原错放账单的结论保持不变,新增提示可以追溯到来源账单。

05 / RESULTS

项目成果

  • 在一个工作台完成对账操作

    从上传资料、查看阶段进度,到下载工作簿和查询历史任务,业务人员可以在同一页面完成操作;有异常时能进一步查看原因和处理建议。

  • 补回错放渠道造成的缺项提示

    修复采购单出现在错误渠道账单时的判断逻辑,在正确账单补充缺项和来源提示,同时保留原错放记录,避免遗漏与重复处理。

  • 保留业务熟悉的 Excel 结果

    输出继续使用正式工作簿。通过同一组输入对照修改前后的单元格、类型和样式,确认规则修复只改变预期区域。

下一个项目Knowledge Hub↗