Skip to content

仓库转仓单管理API

1. 接口概述

用于管理仓库转仓操作,包括创建转仓单和查询转仓单明细。通过这些接口,您可以实现不同仓库之间的库存转移管理。

2. 接口列表

接口名方法功能描述
warehouse.addPOST创建一个直接转仓入库的指令
warehouse.getListGET根据转仓单创建时间来查询该时间段内的转仓明细

3. 系统级参数

系统级参数是调用所有接口都必须提供的参数:

参数名类型必填名称描述
methodstring接口方法名例如:warehouse.add
app_keystring应用密钥用于标识调用方身份
timestampstring时间戳格式:YYYY-MM-DD HH:MM:SS
formatstring响应格式可选值:json
vstringAPI版本例如:1.0
signstring签名用于验证请求的合法性

4. 接口详细参数

4.1 创建转仓单 (warehouse.add)

4.1.1 功能描述

创建一个直接转仓入库的指令,支持设置转仓单名称、来源地仓库、目标仓库等信息。

4.1.2 请求参数

参数名类型必填描述
namestring入库单名称
vendorstring供应商
extrabranch_namestring来源地仓库名称
branch_bnstring仓库编号
delivery_costnumber出入库费用
memostring备注
operatorstring经办人
t_typestring出入库类型,如DC – 转仓入库
original_iso_bnstring外部原始单号
itemsstring明细,JSON格式的字符串,例如:[{"bn":"test1","name":"测试1","price":10,"nums":1},{"bn":"test2","name":"测试2","price":20,"nums":2}]

4.1.3 响应参数

参数名类型描述
codeint状态码,0表示成功,非0表示失败
messagestring响应信息
dataobject操作结果,包含创建的转仓单信息

4.1.4 请求示例

请参考openapi.md文档中【6. 接口调用示例】。

4.1.5 响应示例

json
{
  "code": 0,
  "message": "success",
  "data": {
    "warehouse_bn": "W001",
    "name": "转仓入库单001"
  }
}

4.2 查询转仓单明细 (warehouse.getList)

4.2.1 功能描述

根据转仓单创建时间来查询该时间段内的转仓明细,支持分页查询。

4.2.2 请求参数

参数名类型必填描述
start_timedate开始时间(完成状态),例如2012-12-08 18:50:30
end_timedate结束时间(完成状态),例如2012-12-08 18:50:30
page_nonumber页码,默认1
page_sizenumber每页数量,默认50,最大100

4.2.3 响应参数

参数名类型描述
codeint状态码,0表示成功,非0表示失败
messagestring响应信息
dataobject查询结果
data.totalnumber总记录数
data.itemsarray转仓单明细列表

4.2.4 请求示例

请参考openapi.md文档中【6. 接口调用示例】。

4.2.5 响应示例

json
{
  "code": 0,
  "message": "success",
  "data": {
    "total": 100,
    "items": [
      {
        "warehouse_bn": "W001",
        "name": "转仓入库单001",
        "type": "DC",
        "branch_bn": "WH001",
        "created_time": "2023-01-01 10:00:00",
        "items": [
          {
            "bn": "test1",
            "name": "测试1",
            "price": 10,
            "nums": 1
          }
        ]
      }
    ]
  }
}

5. 错误码说明

错误码错误信息解决方案
0操作成功-
1参数错误检查参数格式是否正确,所有必填参数是否都已提供
2仓库不存在检查仓库编号是否正确
3物料不存在检查商品编码是否正确
4库存不足确保转出仓库有足够库存
400参数错误检查参数格式是否正确,所有必填参数是否都已提供
401未授权访问检查app_key和sign是否正确
403禁止访问联系管理员获取权限
500服务器内部错误检查请求参数或联系技术支持
1001非法的app_key请检查app_key是否正确
1002请求已过期请检查timestamp是否正确,请求有效期为5分钟
1003签名错误请检查签名算法和参数是否正确
1004不支持的format格式请使用json格式
2001缺少必要的参数请检查请求参数是否完整
2002非法的请求参数请检查参数格式和范围是否正确
2003接口不存在请检查接口方法名是否正确

6. 注意事项

  1. items参数需要以JSON字符串形式传递,确保字符串格式正确且已转义。
  2. 转仓类型t_type目前仅支持DC(转仓入库)。
  3. 时间格式必须为yyyy-MM-dd HH:mm:ss,否则可能导致查询失败。
  4. page_size参数默认50,最大支持100。
  5. 对于大数据量的查询,建议使用时间范围进行筛选,以提高查询效率。
  6. 时间戳必须与服务器时间保持同步,误差不超过3600秒。
  7. 每个请求必须生成唯一的签名,避免重复提交。
  8. 请妥善保管接口密钥,避免泄露。
  9. 所有请求参数中的特殊字符必须进行URL编码,特别是在使用GET方法时。
  10. 请确保在请求头中设置正确的Content-Type,对于POST请求建议使用application/json。
  11. 为了系统性能和稳定性,请避免短时间内发送大量请求,建议控制调用频率。
  12. 敏感数据(如签名、密钥等)请勿在日志中记录,确保数据安全。

2. 接口列表

接口名方法功能描述
warehouse.getListPOST获取仓库列表
warehouse.getDetailPOST获取仓库详情

3. 系统级参数

系统级参数是调用所有接口都必须提供的参数:

参数名类型必填名称描述
flagstring应用标识用于标识调用方身份
methodstring接口方法名例如:warehouse.getList
vernumber版本号固定为1
charsetstring字符集固定为utf-8
typestring返回格式固定为json
timestampstring时间戳格式:yyyyMMddHHmmss
signstring签名用于验证请求的合法性

4. 接口详细说明

4.1 获取仓库列表

请求参数

参数名类型必填描述
branch_namestring仓库名称
branch_bnstring仓库编码
statusstring状态(1:启用 2:禁用)
start_timestring创建时间开始,格式:2022-01-01
end_timestring创建时间结束,格式:2022-01-31
page_noint页码,默认1
page_sizeint每页条数,默认50,最大1000

响应参数

参数名类型描述
countint总记录数
listsarray仓库列表

lists 数组中的每个对象包含以下字段:

参数名类型描述
branch_idstring仓库ID
branch_bnstring仓库编码
branch_namestring仓库名称
short_namestring简称
create_timestring创建时间
statusstring状态
status_textstring状态描述

请求示例

请参考openapi.md文档中【6. 接口调用示例】。

响应示例

json
{
  "count": 100,
  "lists": [
    {
      "branch_id": "10001",
      "branch_bn": "WARE001",
      "branch_name": "测试仓库",
      "short_name": "测试仓",
      "create_time": "2022-01-01 10:00:00",
      "status": "1",
      "status_text": "启用"
    }
  ]
}

4.2 获取仓库详情

请求参数

参数名类型必填描述
branch_idstring仓库ID
branch_bnstring仓库编码

响应参数

参数名类型描述
branch_idstring仓库ID
branch_bnstring仓库编码
branch_namestring仓库名称
short_namestring简称
contact_personstring联系人
contact_phonestring联系电话
countrystring国家
provincestring
citystring
districtstring
addressstring详细地址
zipstring邮政编码
create_timestring创建时间
update_timestring更新时间
statusstring状态
status_textstring状态描述

请求示例

请参考openapi.md文档中【6. 接口调用示例】。

响应示例

json
{
  "branch_id": "10001",
  "branch_bn": "WARE001",
  "branch_name": "测试仓库",
  "short_name": "测试仓",
  "contact_person": "张三",
  "contact_phone": "13800138000",
  "country": "中国",
  "province": "上海市",
  "city": "上海市",
  "district": "浦东新区",
  "address": "张杨路500号",
  "zip": "200120",
  "create_time": "2022-01-01 10:00:00",
  "update_time": "2022-01-02 10:00:00",
  "status": "1",
  "status_text": "启用"
}

5. 错误码说明

错误码错误信息解决方案
0成功-
1参数错误检查参数格式是否正确,所有必填参数是否都已提供
400参数错误检查参数格式是否正确,所有必填参数是否都已提供
401未授权访问检查flag和sign是否正确
403禁止访问联系管理员获取权限
500服务器内部错误检查请求参数或联系技术支持
1001非法的flag请检查flag是否正确
1002请求已过期请检查timestamp是否正确,请求有效期为5分钟
1003签名错误请检查签名算法和参数是否正确
1004不支持的type格式请使用json格式
2001缺少必要的参数请检查请求参数是否完整
2002非法的请求参数请检查参数格式和范围是否正确
2003接口不存在请检查接口方法名是否正确

6. 注意事项

  1. 时间格式必须为 yyyy-MM-dd HH:mm:ss,否则可能导致查询失败。
  2. page_size 参数最大支持 1000,默认50,超过100将被限制为 100。
  3. 对于大数据量的查询,建议使用仓库名称、仓库编码等条件进行精确筛选,以提高查询效率。
  4. 时间戳必须与服务器时间保持同步,误差不超过3600秒。
  5. 每个请求必须生成唯一的签名,避免重复提交。
  6. 请妥善保管接口密钥,避免泄露。
  7. 所有请求参数中的特殊字符必须进行 URL 编码,特别是在使用 GET 方法时。
  8. 请确保在请求头中设置正确的 Content-Type,对于 POST 请求建议使用 application/json。
  9. 为了系统性能和稳定性,请避免短时间内发送大量请求,建议控制调用频率。
  10. 敏感数据(如签名、密钥等)请勿在日志中记录,确保数据安全。