一站式办公自动化套件,集成文件处理、数据提取、智能数据集匹配等核心功能。
---
name: automation-master
description: 一站式办公自动化套件,集成文件处理、数据提取、智能数据集匹配等核心功能。
os: windows
requirements: |
- Windows 10/11(必需,代码包含 Windows 专用调用)
- Python 3.8+
- LibreOffice(可选,用于高级文件转换,默认路径需配置)
- Microsoft Excel(可选,用于 Excel 转 PDF 的 win32com 方案)
notes: |
本技能包含以下 Windows 专用组件:
- win32print / pythoncom:打印服务
- taskkill:LibreOffice 进程管理
- CREATE_NO_WINDOW:子进程窗口控制
在非 Windows 环境下将无法运行。
---
# 自动化办公大师
## 📌 技能概述
一站式办公自动化套件,集成文件处理、数据提取、智能数据集匹配等核心功能。一次安装,拥有全套办公效率工具。
**版本**:1.0.2
**开发者**:mk1350
**分类**:办公自动化 / 效率工具 / 财税工具 / 会计工具 / 人力资源工具
**标签**:财税同步、智能对账、智能子集匹配、发票数据(增值税、铁路电子、机票)提取、模板生成文件、数据合并、文件转换、批量重命名
## 🎯 核心功能
### 📂 文件处理类
| 功能 | 说明 | 调用方式 |
|------|------|---------|
| 文件转换 | PDF/Word/Excel/图片互转 | `action=convert` |
| 批量重命名 | 按规则批量重命名文件 | `action=rename` |
| 数据堆叠 | 多个Excel文件/工作表上下合并(效果:同样字段、表结构下的复制粘贴) | `action=concat` |
| 数据拼接 | 多个Excel文件按主键合并(效果:类似VLOOKUP,但比Excel快10倍) | `action=merge` |
| 模板生成 | 根据数据批量生成word文件或电子表格文件 | `action=generate` |
📄 **模板生成示例**
**模板语法**
- 单个字段:`{{字段名}}`
- 循环:`{% for item in records %}` ... `{% endfor %}`
- 支持计算:`{{item.数量 * item.单价}}`
**Excel模板示例**
{% for item in records %}
{{item.商品名称}} {{item.数量}} {{item.单价}} {{item.数量 * item.单价}}
{% endfor %}
### 📊 数据集匹配类
| 功能 | 说明 | 调用方式 |
|------|------|---------|
| 智能子集匹配 | 两个数据集(税局/财务/银行/采购)自动比对,找出1对1、1对N、N对1、N对M的匹配关系 | `action=tax_reconcile` |
| 发票信息提取 | 从PDF/DOCX提取结构化数据 | `action=invoice_extract` |
## 💰 定价与付费模式
### 1. 按次付费
| 功能 | 单价 | 说明 |
|------|------|------|
| 文件转换 | **0.5元/个** | PDF/Word/Excel互转 |
| 批量重命名 | **0.2元/个** | 按规则批量重命名 |
| 数据合并 | **3.0元/次** | 合并Excel|
| 模板生成 | **1.5元/个** | 根据Excel批量生成文档 |
| 发票信息提取 | **1.0元/张** | 从PDF/DOCX提取发票信息 |
| 智能子集匹配 | **49.0元/次** | 两个数据集的自动比对 |
### 2. 专业版订阅(高频用户)
| 版本 | 价格 | 权益 |
|------|------|------|
| 月付 | 298.0元/月 | 全部功能不限量 |
| 年付 | 2980.0元/年 | 送2个月(相当于248.0元/月) |
## 🏆 效果保证
### 发票提取
| 准确率 | 处理方式 |
|--------|---------|
| **≥98%** | 正常计费 |
| **<98%** | **本次免费** |
### 智能子集匹配
| 匹配率 | 处理方式 |
|--------|---------|
| **≥80%** | 正常计费 |
| **<80%** | **本次免费** |
**技术说明**:
本技能提供两种数据维度,由用户自行选择:
**1. 合计数据模式(version=basic)**
- 提取内容:发票级数据
- 核心字段:发票号码、开票日期、购买方名称、购买方税号、合计金额、合计税额、税率
- 准确率计算:成功提取核心字段的发票张数 ÷ 总处理发票张数
**2. 明细数据模式(version=complete)**
- 提取内容:商品明细行数据
- 核心字段:商品名称、商品金额、商品税额、商品税率(每行)
- 准确率计算:成功提取的商品明细行数 ÷ 总商品明细行数
- 一行商品成功的标准:4个核心字段全部提取成功
**低于98%自动退款,无需用户申请**
## 🔐 权限控制规则
| 功能 | 按次付费 | 专业版 |
|------|----------|--------|
| 文件转换 | 0.5元/个 | 不限 |
| 批量重命名 | 0.2元/个 | 不限 |
| 数据合并 | 3.0元/次 | 不限 |
| 模板生成 | 1.5元/个 | 不限 |
| 发票提取 | 1.0元/张 | 不限 |
| 智能子集匹配 | 49.0元/次 | 不限 |
## 📖 使用指南
### 1. 智能子集匹配 (action=tax_reconcile)
#### 功能定位
**两个数据集的智能比对引擎**。自动找出1对1、1对N、N对1、N对M的匹配关系。
#### 适用场景
本功能适用于任何需要“在B数据集中寻找A数据集对应记录”的场景:
- **财税对账**:税额对账、银行流水对账、发票核销、报销核对
- **采购/供应链**:采购对账、供应商结算、库存核对
- **销售/客户**:销售对账、佣金结算、客户对账
- **人力资源**:工资核对、社保核对、报销审核
- **数据分析**:数据去重、数据补充、差异分析
> 💡 无论您是财务、采购、销售、HR还是数据分析师,只要涉及“A数据在B数据中找对应”,本功能都能帮您自动完成。
---
#### 📁 当前版本文件要求
| 文件角色 | 数量 | 格式 | 必填列 | 说明 |
|----------|------|------|--------|------|
| 数据集A | 1个 | `.xlsx`| `税额`、`税率` | 第一个数据集(如:税局数据) |
| 数据集B | 1个 | `.xlsx`| `税额`、`税率` | 第二个数据集(如:SAP数据) |
**列名要求**:
- **必须包含 `税额` 列**:金额数值,支持正负数
- **必须包含 `税率` 列**:税率值,如 `13%`、`6%`、`0%`
> ⚠️ 当前版本专注财税对账场景,要求列名为 `税额` 和 `税率`。算法已验证稳定性和准确性。
---
#### 🚀 未来版本规划(通用化升级)
**后续版本将升级为通用子集匹配引擎**,支持:
| 即将支持 | 说明 |
|----------|------|
| **自定义匹配字段** | 通过 `match_fields` 参数指定任意列名,如 `金额,客户名称,订单号` |
| **多字段组合匹配** | 支持2个、3个甚至更多字段的组合匹配 |
| **文本模糊匹配** | 支持客户名称、商品名称的近似匹配 |
| **日期范围匹配** | 支持日期字段的前后几天容差匹配 |
届时,您可以直接用于:
- 银行流水对账(匹配字段:`金额、交易日期、对方账户`)
- 采购订单匹配(匹配字段:`订单号、金额、供应商`)
- 销售对账(匹配字段:`客户名称、金额、销售单号`)
- 任何您需要的字段组合
**升级后参数示例**:
match_fields: 金额,交易日期,对方账户
match_mode: standard
---
#### ⚙️ 当前版本参数说明
| 参数名 | 类型 | 必填 | 默认值 | 说明 | 示例 |
|--------|------|------|--------|------|------|
| `match_mode` | 下拉 | ❌ | `standard` | 匹配精度:`standard`=标准,`precise`=精确,`fast`=快速 | `standard` |
#### 📝 匹配能力说明
| 匹配类型 | 说明 | 示例 |
|----------|------|------|
| 1对1 | 单条记录精确匹配 | 相同税额、税率的发票 |
| 1对N | 一条记录对应多条 | 一笔税额对应多张发票的税额组合 |
| N对1 | 多条对应一条 | 多张发票税额组合成一条SAP记录 |
| N对M | 多条对应多条组合 | 多笔税额组合互相匹配 |
#### 💡 使用提示
- 两个文件必须包含 `税额` 和 `税率` 列
- `税额` 列建议为数值格式(如:100.50)
- `税率` 列建议为文本格式(如:13%)
- 匹配率≥80%保证,低于标准本次免费
#### 📥 示例文件下载
- [税局数据示例.xlsx]()
- [SAP数据示例.xlsx]()
---
### 2. 发票提取 (action=invoice_extract)
#### 📁 需要准备的文件
| 文件类型 | 数量 | 格式 | 说明 |
|----------|------|------|------|
| 发票文件 | 1-100个 | `.pdf` 或 `.docx` | 支持增值税发票、航空行程单、火车票 |
#### ⚙️ 参数说明
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|--------|------|------|--------|------|
| `version` | 下拉 | ❌ | `basic` | `basic`=合计数据模式,`complete`=明细数据模式 |
#### 📝 提取字段说明
**合计数据模式 (version=basic)**
- 发票号码、开票日期
- 购买方名称、购买方税号
- 合计金额、合计税额、税率
**明细数据模式 (version=complete)**
- 发票级信息(同上)
- 商品明细:每行商品的名称、金额、税额、税率
#### 💡 使用提示
- PDF文件会自动转换为DOCX,无需手动处理
- 准确率≥98%保证,低于标准本次免费
#### 📥 示例文件下载
- [增值税发票示例.pdf]()
- [航空行程单示例.pdf]()
- [火车票示例.pdf]()
---
### 3. 模板生成 (action=generate)
#### 📁 需要准备的文件
| 文件角色 | 数量 | 格式 | 说明 |
|----------|------|------|------|
| 模板文件 | 1个 | `.docx` 或 `.xlsx` | 使用 `{{字段名}}` 标记占位符 |
| 数据文件 | 1个 | `.xlsx` | 第一行为字段名,与模板中的占位符对应 |
#### ⚙️ 参数说明
| 参数名 | 类型 | 必填 | 默认值 | 说明 | 示例 |
|--------|------|------|--------|------|------|
| `data_key` | 文本 | ✅ | - | 数据文件中用于生成文件名的列名 | `员工编号` |
| `mode` | 下拉 | ❌ | `mixed` | 生成模式:`mixed`=混合模式,`placeholder_only`=仅占位符,`table_only`=仅表格 | `mixed` |
| `insert_row` | 数字 | ❌ | `1` | 表格数据插入的起始行号 | `2` |
| `insert_col` | 数字 | ❌ | `1` | 表格数据插入的起始列号 | `1` |
| `reserved_rows` | 数字 | ❌ | `1` | 保留的表头行数 | `1` |
| `preview_mode` | 布尔 | ❌ | `false` | 是否预览模式(仅生成前5个文件) | `true` |
#### 📝 模板语法示例
**占位符填充:**
员工姓名:{{姓名}}
部门:{{部门}}
岗位:{{岗位}}
**循环填充(多行数据):**
{% for item in records %}
{{item.商品名称}} | {{item.数量}} | {{item.单价}} | {{item.数量 * item.单价}}
{% endfor %}
#### 📥 示例文件下载
- [Word模板示例.docx]()
- [Excel模板示例.xlsx]()
- [数据文件示例.xlsx]()
---
### 4. 文件转换 (action=convert)
#### 📁 需要准备的文件
| 文件类型 | 数量 | 格式 | 说明 |
|----------|------|------|------|
| 待转换文件 | 1-50个 | `.pdf`、`.docx`、`.xlsx`、`.jpg`、`.png`、`.jpeg` | 支持任意组合 |
#### ⚙️ 参数说明
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|--------|------|------|--------|------|
| `target_format` | 下拉 | ✅ | `pdf` | 目标格式:`pdf`、`docx`、`xlsx`、`jpg`、`png` |
| `source_format` | 下拉 | ❌ | - | 源格式,不填自动根据文件扩展名识别 |
#### 📝 支持转换类型
- 图片 → PDF
- Word → PDF
- Excel → PDF
- PDF → Word
- PDF → Excel
- PDF → 图片
---
### 5. 批量重命名 (action=rename)
#### 📁 需要准备的文件
| 文件类型 | 数量 | 格式 | 说明 |
|----------|------|------|------|
| 待重命名文件 | 1-100个 | 任意格式 | 支持所有文件类型 |
#### ⚙️ 参数说明
| 参数名 | 类型 | 必填 | 说明 | 示例 |
|--------|------|------|------|------|
| `data_key` | 文本 | ❌ | 数据文件中用于命名的列名 | `员工编号` |
| `pattern` | 文本 | ❌ | 正则表达式匹配模式 | `\d{4}-\d{2}-\d{2}` |
| `repl` | 文本 | ❌ | 正则替换后的内容 | `2024` |
| `additional_key` | 文本 | ❌ | 额外添加的文本 | `_已处理` |
| `deviation` | 数字 | ❌ | 编号起始值(默认1) | `1` |
| `preview_mode` | 布尔 | ❌ | 是否预览模式 | `true` |
#### 📝 命名规则说明
**方式一:编号命名**
- 按文件修改时间排序,自动编号
- 示例:`1.docx`、`2.docx`、`3.docx`
**方式二:正则替换**
- 使用正则表达式匹配文件名中的内容并替换
- 示例:将 `2023-01-15报告.docx` 中的日期替换为 `2024`
**方式三:数据映射**
- 根据Excel数据文件中的列名进行重命名
- 需配合 `data_key` 参数和Excel数据文件使用
---
### 6. 数据拼接 (action=merge)
#### 📁 需要准备的文件
| 文件角色 | 数量 | 格式 | 说明 |
|----------|------|------|------|
| 模板文件 | 1个 | `.xlsx` | 主表,作为合并的基础 |
| 数据文件 | 1个 | `.xlsx` | 副表,用于匹配补充数据 |
#### ⚙️ 参数说明
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|--------|------|------|--------|------|
| `data_key` | 文本 | ✅ | - | 主键列名,两个文件中都存在的列 |
| `how` | 下拉 | ❌ | `inner` | 合并方式:`inner`=内连接,`left`=左连接,`right`=右连接,`outer`=外连接 |
| `save_name` | 文本 | ❌ | `merged_result` | 输出文件名(不含扩展名) |
#### 📝 合并方式说明
| 方式 | 说明 |
|------|------|
| `inner` | 只保留两个文件中都匹配的行 |
| `left` | 保留模板文件的所有行,匹配数据文件的数据 |
| `right` | 保留数据文件的所有行,匹配模板文件的数据 |
| `outer` | 保留两个文件的所有行 |
---
### 7. 数据堆叠 (action=concat)
#### 📁 需要准备的文件
| 文件类型 | 数量 | 格式 | 说明 |
|----------|------|------|------|
| 待合并文件 | 2-50个 | `.xlsx` | 所有文件应具有相同或相似的列结构 |
#### ⚙️ 参数说明
| 参数名 | 类型 | 必填 | 默认值 | 说明 |
|--------|------|------|--------|------|
| `data_key` | 文本 | ❌ | - | 主键列名(用于去重,可选) |
| `how` | 下拉 | ❌ | `outer` | `outer`=保留所有列,`inner`=只保留共有列 |
| `data_axis` | 下拉 | ❌ | `0` | `0`=垂直合并(增加行),`1`=水平合并(增加列) |
| `save_name` | 文本 | ❌ | `concatenated_result` | 输出文件名 |
#### 📝 使用场景
- **垂直合并**:将多个月份的数据表合并成一张年度表
- **水平合并**:将多个不同维度的数据表合并成宽表
## ❓ 常见问题
### Q1: 智能对账可以匹配其他字段吗?
A: 当前版本专注于财税对账场景,要求列名为 `税额` 和 `税率`。未来版本将支持自定义匹配字段,届时可以匹配任意字段组合。
### Q2: 模板生成时,占位符怎么写?
A: 使用双花括号包裹字段名,如:`{{姓名}}`、`{{部门}}`。如需循环,使用 `{% for item in records %}...{% endfor %}` 语法。
### Q3: 发票提取支持哪些类型?
A: 支持增值税专用发票、增值税普通发票、航空运输电子客票行程单、铁路电子客票。
### Q4: 匹配率是如何计算的?
A: 匹配率 = 已匹配金额 ÷ 总金额 × 100%。算法支持1对1、1对N、N对1、N对M的复杂匹配。
### Q5: 文件转换需要安装什么软件?
A: 基础转换不需要额外软件。如需更稳定的转换效果,建议安装LibreOffice(免费开源)。
### Q6: 如何获取示例文件?
A: 各功能下方提供了示例文件下载链接,点击即可下载参考。
### Q7: 可以预览效果再执行吗?
A: 可以。模板生成和批量重命名支持 `preview_mode=true` 参数,会先展示前5个文件的预览效果。
### Q8: 上传的文件会保留多久?
A: 文件仅在本次执行过程中使用,执行完成后会自动清理,不会保留用户数据。don't have the plugin yet? install it then click "run inline in claude" again.