跳到主要内容

Excel解析

上传Excel文件,导出文本数据、图片数据

基本信息

信息备注
接口名称Excel解析上传Excel文件,导出文本数据、图片数据
请求状态POSTRESTful方式
接口路径http://localhost:23798/api/File/ExcelParser向服务器地址发送POST请求
远程模式http://www.linkerplus.com/api/ext_erp/File/ExcelParser远程模式向服务器地址发送POST请求,需要ERP注册号注册远程模式,并在Headers添加sn参数
支持日期2025-10-24自该日期起支持
支持版本V11.2 V12.0自该版本起支持

请求参数

Headers

参数名称是否必须参数值备注
Content-Typemultipart/form-data用于指定数据的传输类型
LoginIde835943e-55c2-4bf0-832d-6f4166592941用户登录的LoginId,取用户登录或账套验证接口返回的LoginId
WorksheetIndex1Excel文件工作表索引
UsrNoADMIN账套验证的LoginId需添加UsrNo,用户登录的LoginId则无需添加UsrNo
snMGR_REST_1001远程模式需添加sn参数,MGR_REST_ERP注册号

Body

form-data

参数名称类型是否必须参数值备注其它信息
fileFileExcel文件

返回数据

参数名称类型参数值备注
Codenumber0:表示查询成功。详见下方【API Code状态码说明】
Messagestring执行信息
Resultobject查询到的信息,JSON格式,具体信息参考下面调用范例

API Code状态码说明

状态码常量名称类别说明
0SUCCESS基础通用成功
1FAILURE基础通用通用失败(仅用于无细分状态码的场景)
2VERSION_INCOMPATIBLE基础通用接口版本不兼容(通用扩展场景)
3METHOD_NOT_ALLOWED基础通用请求方式不支持(如GET调用POST接口,通用扩展场景)
4UNSUPPORTED_MEDIA_TYPE基础通用不支持的媒体类型(对应HTTP 415,如客户端传xml但接口仅支持json)
10001AUTH_NOT_LOGIN认证授权未登录(核心场景:请求无认证信息)
10002AUTH_TOKEN_INVALID认证授权登录状态失效(核心场景:Token过期/无效)
10003AUTH_FORBIDDEN认证授权权限不足(核心场景:已登录但无操作权限)
10004AUTH_ACCOUNT_LOCKED认证授权账号锁定(ERP扩展场景:账号禁用/冻结)
10005AUTH_TENANT_ERROR认证授权多租户权限异常(ERP扩展场景:跨租户操作数据)
20001PARAM_MISSING参数校验必要参数缺失(核心场景:如订单无客户ID)
20002PARAM_FORMAT_ERROR参数校验参数格式错误(核心场景:如日期格式、手机号非法)
20003PARAM_INVALID参数校验参数值非法(核心场景:格式合法但业务语义错误,如订单金额为负)
20004PARAM_OUT_OF_RANGE参数校验参数超出范围(ERP扩展场景:如库存数量超出最大限制)
30001RESOURCE_NOT_FOUND资源操作资源不存在(核心场景:如订单ID不存在)
30002RESOURCE_NO_CONTENT资源操作资源无内容(核心场景:查询条件合法但无数据)
30003RESOURCE_DATA_ERROR资源操作资源数据异常(核心场景:如单据数据逻辑冲突)
30004RESOURCE_DUPLICATE资源操作资源重复(核心场景:如新增已存在的客户编号)
30005RESOURCE_STATUS_CONFLICT资源操作资源状态冲突(ERP扩展场景:如修改已审核的订单)
30006RESOURCE_OPERATE_FAILED资源操作资源操作失败(ERP扩展场景:如删除被引用的客户数据等业务错误)
40001BUSINESS_NOT_SUPPORTED业务逻辑暂不支持的类型
40002BUSINESS_RULE_ERROR业务逻辑业务规则校验失败(核心场景:如库存不足、信用额度超支)
40003BUSINESS_CONCURRENT_CONFLICT业务逻辑并发操作冲突(核心场景:如多人同时修改同一张单据)
40004BUSINESS_FLOW_ERROR业务逻辑流程状态异常(ERP扩展场景:如单据审核流程驳回)
40005BUSINESS_RELATION_ERROR业务逻辑数据关联异常(ERP扩展场景:如订单关联的客户已删除)
50001SYSTEM_INTERNAL_ERROR系统服务系统内部异常(核心场景:如代码异常、数据库连接失败)
50002SYSTEM_SERVICE_UNAVAILABLE系统服务服务不可用(核心场景:如依赖的第三方接口宕机)
50003SYSTEM_REQUEST_TIMEOUT系统服务请求超时(核心场景:如ERP大报表生成超时)
50004SYSTEM_TOO_MANY_REQUESTS系统服务请求频率超限(核心场景:接口限流)
50005SYSTEM_DB_ERROR系统服务数据库操作异常(ERP扩展场景:如事务回滚、锁等待超时)

API Code状态码类别说明

  1. 基础通用段 (0-99):系统基础状态码
  2. 认证授权段 (1xxxx):用户认证、权限相关
  3. 参数校验段 (2xxxx):请求参数验证相关
  4. 资源操作段 (3xxxx):数据CRUD操作相关
  5. 业务逻辑段 (4xxxx):ERP业务规则相关
  6. 系统服务段 (5xxxx):系统级、第三方服务异常

调用范例

Headers:
Content-Type: multipart/form-data
LoginId: e835943e-55c2-4bf0-832d-6f4166592941
WorksheetIndex: 1
UsrNo: ADMIN (LoginId为账套验证登录生成时)

Body:
form-data: file = @测试数据.xlsx

调用返回

{
"Code": 0, // 成功
"Message": "[File]: 成功解析 1 张图片和 2 行文本数据。",
"Result": {
"fileName": "测试数据.xlsx",
"imageCount": 1, // 图片数
"textRowCount": 2, // 有数据的文本行数
"mergedImageCount": 1, // 合并单元格内的图片数量
"parseTime": "2025-10-20 14:17:59",
"images": [ // 图片数据
{
"imageName": "ID_351645831CE24FB7A9CECB999F7032C3", // 图片名称
"imageFormat": "png", // 图片格式
"imagePath": "Temp/ExcelImages/ID_351645831CE24FB7A9CECB999F7032C3.png", // 图片本地位置
"worksheetName": "7.25", // Excel工作表名称
"startCell": "C12", // 起始单元格
"endCell": "C13", // 截止单元格
"coveredCells": [ // 图片所在的单元格
"C12",
"C13"
],
"isInMergedCell": true, // 是否是合并单元格
"mergeStartRow": 12, // 合并起始行号
"mergeStartColumn": 3, // 合并起始列号
"mergeEndRow": 15, // 合并截止行号
"mergeEndColumn": 3, // 合并截止列号
"mergeRange": "C12:C15", // 合并范围
"mergeStartCell": "C12", // 合并起始单元格
"mergeEndCell": "C15", // 合并截止单元格
"mergedCoveredCells": [ // 图片所在的单元格(合并),这里表示12-15行,C列,是合并单元格,表示12-15行都有这张图片
"C12",
"C13",
"C14",
"C15"
]
}
],
"textData": [ // 文本数据
{
"rowIndex": 1, // 行号
"cells": [ // 单元格数据
{
"address": "A2",
"value": "客户名称:",
"dataType": "String",
"format": "General",
"isMerged": false,
"mergeRange": ""
},
{
"address": "C2",
"value": "天思",
"dataType": "String",
"format": "General",
"isMerged": false,
"mergeRange": ""
},
{
"address": "D2",
"value": "供方名称:",
"dataType": "String",
"format": "General",
"isMerged": true,
"mergeRange": "D2:E2"
},
{
"address": "F2",
"value": "天心天思",
"dataType": "String",
"format": "General",
"isMerged": true,
"mergeRange": "F2:J2"
}
]
},
{
"rowIndex": 2,
"cells": [
{
"address": "A3",
"value": "联系人:",
"dataType": "String",
"format": "General",
"isMerged": false,
"mergeRange": ""
},
{
"address": "C3",
"value": "蔡总",
"dataType": "String",
"format": "General",
"isMerged": false,
"mergeRange": ""
},
{
"address": "D3",
"value": "联系人:",
"dataType": "String",
"format": "General",
"isMerged": true,
"mergeRange": "D3:E3"
},
{
"address": "F3",
"value": "王杰",
"dataType": "String",
"format": "General",
"isMerged": true,
"mergeRange": "F3:J3"
}
]
}
]
}
}

备注

注意

必须在Headers里面传入用户登录或账套验证的LoginId

提示

当采用的是账套验证获取的LoginId,那么请求头中的UsrNo不能为空。采用用户登录的LoginId则无需在请求头中添加UsrNo