diff --git a/integration/data-integration.md b/integration/data-integration.md new file mode 100644 index 0000000..f05ea21 --- /dev/null +++ b/integration/data-integration.md @@ -0,0 +1,289 @@ +# 数据与集成 + +## 1. 功能概述 + +数据与集成模块实现 MES 系统与 ERP、SCADA、PLC 等系统的数据互联互通,打通企业信息孤岛,实现数据共享和业务协同。 + +**核心功能:** + +| 功能 | 说明 | +|------|------| +| 接口管理 | 接口配置与监控 | +| 数据同步 | 主数据同步 | +| 消息集成 | 消息队列集成 | +| 文件传输 | 文件数据交换 | + +## 2. 系统集成架构 + +### 2.1 集成架构图 + +``` +┌─────────────────────────────────────────────────────────────┐ +│ 企业应用集成架构 │ +├─────────────────────────────────────────────────────────────┤ +│ │ +│ ┌─────────┐ │ +│ │ ERP │ ─────────────────────────────────────────▶ │ +│ │ SAP/用友 │ 物料主数据、采购订单、生产计划、销售订单 │ +│ └────┬────┘ │ +│ │ │ +│ │ ◀───────────────────────────────────────── │ +│ │ 工单完工、质量数据、库存数据 │ +│ ▼ │ +│ ┌─────────┐ │ +│ │ MES │ │ +│ │ MES │ ──────────────────────────────────────────▶ │ +│ └────┬────┘ 工单执行、产量数据、质量数据 │ +│ │ │ +│ │ ◀───────────────────────────────────────── │ +│ │ 设备运行参数、状态数据 │ +│ ▼ │ +│ ┌─────────┐ │ +│ │ SCADA │ ──────────────────────────────────────────▶ │ +│ │ PLC/RTU │ 设备数据采集、实时监控 │ +│ └─────────┘ │ +│ │ +│ ┌─────────────────────────────────────────────────────┐ │ +│ │ 集成中间件 │ │ +│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │ +│ │ │消息队列 │ │数据总线 │ │文件传输 │ │API网关 │ │ │ +│ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │ +│ └─────────────────────────────────────────────────────┘ │ +│ │ +└─────────────────────────────────────────────────────────────┘ +``` + +### 2.2 集成方式对比 + +| 集成方式 | 实时性 | 复杂度 | 数据量 | 适用场景 | +|---------|--------|--------|--------|---------| +| API接口 | 高 | 中 | 中 | 实时交互 | +| 中间库 | 低 | 低 | 大 | 批量同步 | +| 消息队列 | 中 | 中 | 中 | 异步消息 | +| 文件交换 | 低 | 低 | 大 | 批量数据 | + +## 3. 接口管理 + +### 3.1 接口类型 + +| 接口类型 | 说明 | 方向 | +|---------|------|------| +| 上游接口 | 从其他系统获取数据 | ERP→MES | +| 下游接口 | 向其他系统推送数据 | MES→ERP | +| 双向接口 | 双向数据交换 | ↔ | + +### 3.2 常用接口 + +**与ERP系统集成:** + +| 接口名称 | 方向 | 数据内容 | +|---------|------|---------| +| 物料主数据 | ERP→MES | 物料信息、BOM、工艺 | +| 供应商主数据 | ERP→MES | 供应商信息 | +| 客户主数据 | ERP→MES | 客户信息 | +| 采购订单 | ERP→MES | 采购到货信息 | +| 生产工单 | ERP→MES | 生产工单 | +| 完工汇报 | MES→ERP | 工单完工信息 | +| 质量数据 | MES→ERP | 检验数据 | +| 库存数据 | MES→ERP | 库存数据 | + +**与SCADA系统集成:** + +| 接口名称 | 方向 | 数据内容 | +|---------|------|---------| +| 设备状态 | SCADA→MES | 设备运行状态 | +| 产量数据 | SCADA→MES | 实时产量 | +| 工艺参数 | SCADA→MES | 温度、压力等 | +| 报警信息 | SCADA→MES | 设备报警 | +| 生产指令 | MES→SCADA | 生产控制指令 | + +### 3.3 接口配置 + +**接口配置要素:** + +| 配置项 | 说明 | +|--------|------| +| 接口编码 | 接口唯一标识 | +| 接口名称 | 接口名称 | +| 接口类型 | API/中间库/消息 | +| 源系统 | 数据来源系统 | +| 目标系统 | 数据目标系统 | +| 接口地址 | API地址或数据库连接 | +| 认证方式 | 认证类型和凭证 | +| 数据格式 | JSON/XML/DB | + +**接口配置示例:** + +| 接口项 | 配置值 | +|--------|--------| +| 接口编码 | INT-001 | +| 接口名称 | 物料主数据同步 | +| 接口类型 | API | +| 源系统 | ERP | +| 目标系统 | MES | +| 接口地址 | http://erp-api/mdm/materials | +| 认证方式 | Token认证 | +| 调用频率 | 每日全量+实时增量 | + +## 4. 数据同步 + +### 4.1 同步策略 + +| 同步策略 | 说明 | 触发方式 | +|---------|------|---------| +| 实时同步 | 数据变化即时同步 | 事件触发 | +| 定时同步 | 按计划定时同步 | 定时任务 | +| 手动同步 | 手工触发同步 | 人工操作 | +| 全量同步 | 全部数据同步 | 定时/手动 | +| 增量同步 | 仅同步变化数据 | 事件/定时 | + +### 4.2 主数据同步 + +**物料数据同步:** + +| 同步字段 | 说明 | 必填 | +|---------|------|------| +| 物料编码 | 物料唯一标识 | ✓ | +| 物料名称 | 物料名称 | ✓ | +| 规格型号 | 规格型号 | - | +| 计量单位 | 计量单位 | ✓ | +| 物料分类 | 物料类别 | - | +| 安全库存 | 安全库存量 | - | +| 采购周期 | 采购提前期 | - | + +**BOM数据同步:** + +| 同步字段 | 说明 | 必填 | +|---------|------|------| +| 产品编码 | 父项物料编码 | ✓ | +| 物料编码 | 子项物料编码 | ✓ | +| 用量 | 物料用量 | ✓ | +| 损耗率 | 损耗百分比 | - | +| 工序序号 | 物料使用的工序 | - | + +### 4.3 业务数据同步 + +**工单数据同步:** + +| 同步方向 | 数据内容 | +|---------|---------| +| ERP→MES | 工单编号、产品、数量、计划日期 | +| MES→ERP | 完工数量、完工时间、不良数量 | + +**库存数据同步:** + +| 同步方向 | 数据内容 | +|---------|---------| +| MES→ERP | 入库数量、出库数量、库存数量 | + +## 5. 消息集成 + +### 5.1 消息类型 + +| 消息类型 | 说明 | 用途 | +|---------|------|------| +| 生产消息 | 生产相关事件 | 工单开工、完工等 | +| 质量消息 | 质量相关事件 | 检验完成、不良发生等 | +| 设备消息 | 设备相关事件 | 设备故障、报警等 | +| 库存消息 | 库存相关事件 | 入库、出库等 | + +### 5.2 消息格式 + +**消息标准格式:** + +```json +{ + "messageId": "MSG-20260410-001", + "messageType": "PRODUCTION_START", + "sourceSystem": "MES", + "targetSystem": "ERP", + "timestamp": "2026-04-10 10:00:00", + "data": { + "workOrderId": "WO-001", + "productId": "P001", + "quantity": 1000, + "startTime": "2026-04-10 10:00:00" + } +} +``` + +### 5.3 消息处理 + +| 处理模式 | 说明 | 特点 | +|---------|------|------| +| 即时处理 | 消息立即处理 | 低延迟 | +| 异步处理 | 消息队列缓冲 | 高吞吐 | +| 批量处理 | 消息批量处理 | 高效率 | + +## 6. 接口监控 + +### 6.1 监控指标 + +| 指标 | 说明 | 监控内容 | +|------|------|---------| +| 接口调用次数 | 接口调用统计 | 成功/失败次数 | +| 接口响应时间 | 接口响应速度 | 平均/最大响应时间 | +| 接口成功率 | 接口可用性 | 成功/总调用 | +| 数据同步时效 | 数据同步及时性 | 延迟时间 | + +### 6.2 接口日志 + +| 日志类型 | 说明 | 保留时间 | +|---------|------|---------| +| 调用日志 | 接口调用记录 | 6个月 | +| 请求日志 | 请求报文记录 | 3个月 | +| 响应日志 | 响应报文记录 | 3个月 | +| 错误日志 | 错误信息记录 | 12个月 | + +### 6.3 异常处理 + +| 异常类型 | 处理方式 | +|---------|---------| +| 网络异常 | 自动重试(3次) | +| 超时异常 | 增加超时时间 | +| 认证异常 | 重新获取Token | +| 数据异常 | 记录异常,人工处理 | + +## 7. 数据转换 + +### 7.1 数据映射 + +**字段映射配置:** + +| 源字段 | 目标字段 | 转换规则 | +|--------|---------|---------| +| material_code | mat_code | 直接映射 | +| unit_price | cost | 单位转换(元→万元) | +| create_time | createDate | 时间格式转换 | + +### 7.2 数据校验 + +| 校验规则 | 说明 | +|---------|------| +| 必填校验 | 必填字段不能为空 | +| 格式校验 | 数据格式正确 | +| 长度校验 | 字段长度不超限 | +| 业务校验 | 业务规则校验 | + +## 8. 集成安全 + +### 8.1 认证方式 + +| 认证方式 | 说明 | 安全性 | +|---------|------|--------| +| 用户名密码 | 基础认证 | 中 | +| API Key | 接口密钥 | 中 | +| Token认证 | OAuth2.0 | 高 | +| 数字证书 | SSL证书 | 高 | + +### 8.2 传输安全 + +| 安全措施 | 说明 | +|---------|------| +| HTTPS | 数据传输加密 | +| 数据签名 | 数据完整性验证 | +| 数据脱敏 | 敏感数据保护 | + +--- + +**数据与集成篇完**