# 采购管理 采购管理分类提供供应商查询、采购订单创建、采购入库/退货单等接口,共 **5** 个API。 --- ## 接口列表 | 序号 | 接口名称 | Method | 说明 | |------|----------|--------|------| | 1 | [供应商查询](#1-供应商查询) | `foonsu.erp.provider.list` | 查询供应商 | | 2 | [采购订单创建](#2-采购订单创建) | `foonsu.erp.purchaseOrders.addPurchaseOrder` | 创建采购订单 | | 3 | [采购入库/退货单创建](#3-采购入库退货单创建) | `foonsu.erp.stockInOrders.add` | 创建采购入库或退货单 | | 4 | [采购入库/退货单查询](#4-采购入库退货单查询) | `foonsu.erp.stockInOrders.list` | 查询采购入库/退货单 | | 5 | [采购退货单查询](#5-采购退货单查询) | `foonsu.erp.stockOutOrders.list` | 查询采购退货单 | --- ## 1. 供应商查询 **Method:** `foonsu.erp.provider.list` **请求方式:** POST **简要描述:** 供应商查询 ### 请求参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | pageIndex | 否 | Integer | 当前页码 | | pageSize | 否 | Integer | 默认 20,最大不超过 50 | | providerName | 否 | String | 供应商名称 | | providerCode | 否 | String | 供应商编码 | ### data(Object)返回参数 | 参数名 | 类型 | 说明 | |--------|------|------| | total | Integer | 记录总数 | | data | List[Object] | 集合参数响应 | ### data(List)返回参数 | 参数名 | 类型 | 说明 | |--------|------|------| | providerName | String | 供应商名称 | | providerTypeName | String | 供应商类型 | | linkMan | String | 联系人 | | phone | String | 电话号码 | | mobile | String | 手机号码 | | fax | String | 传真 | | province | String | 省份 | | city | String | 城市 | | district | String | 区 | | address | String | 地址 | | zipCode | String | 邮编 | | remark | String | 备注 | | status | String | 状态:0-停用;1-启用 | | providerCode | String | 供应商编码 | ### 返回示例 ```json { "errorCode": null, "msg": "操作成功", "data": { "total": 5, "data": [ { "providerName": "cdd", "providerCode": "a23", "providerTypeName": "一级供应商", "linkMan": "**", "phone": "", "mobile": "13923742665", "fax": "*", "province": "上海", "city": "上海市", "district": "嘉定区", "address": "*****", "zipCode": "***", "remark": "无" } ] }, "date": null, "version": null, "success": true } ``` --- ## 2. 采购订单创建 **Method:** `foonsu.erp.purchaseOrders.addPurchaseOrder` **请求方式:** POST **简要描述:** 采购订单创建 ### 请求参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | warehouseName | 是 | String | 仓库名称 | | purchaseType | 是 | String | 采购类型:1-标准采购;2-新品采购;3-补货采购 | | provideName | 是 | String | 供应商名称 | | expectedArrivalTime | 是 | Date | 预计到货时间 | | theTotalAmountActuallyPaid | 否 | BigDecimal | 实际支付总金额(如果未输入默认取商品总金额) | | reamrk | 否 | String | 备注(长度不能大于100) | | ext1 | 否 | String | 自定义字段1 | | ext2 | 否 | String | 自定义字段2 | | ext3 | 否 | String | 自定义字段3 | | externalUniqueCode | 否 | String | 请求的唯一标识,如果传入则需要保证每次请求数据具有唯一性,长度不可超32位 | | purchaseOrdersGoodsInfoList | 是 | List[Object] | 商品信息列表 | ### PurchaseOrdersGoodsInfo 参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | goodsType | 是 | String | 商品类型:0-普通商品;1-批次商品;2-唯一码商品 | | goodsCode | 是 | String | 商品编码 | | goodsName | 是 | String | 商品名称 | | quantity | 是 | BigDecimal | 商品数量 | | price | 是 | BigDecimal | 单价 | | totalAmount | 是 | BigDecimal | 商品总价(商品数量*单价) | | taxRate | 否 | BigDecimal | 税率(未输入默认为0) | | taxType | 否 | String | 税率类型:0-含税;1-免税;2-未税,默认为含税 | | remark | 否 | String | 备注(长度不能大于100) | ### 请求示例 ```json { "expectedArrivalTime": "2021-11-11 11:11:11", "provideName": "A00001供应商", "purchaseOrdersGoodsInfoList": [ { "goodsCode": "sub_01", "goodsName": "sub_01", "goodsType": "0", "price": 10, "quantity": 1, "totalAmount": 10 }, { "goodsCode": "pc_01", "goodsName": "pc_01", "goodsType": "1", "price": 10, "quantity": 1, "totalAmount": 10 }, { "goodsCode": "wym_01", "goodsName": "wym_01", "goodsType": "2", "price": 10, "quantity": 1, "totalAmount": 10 } ], "purchaseType": "1", "reamrk": "测试数据", "theTotalAmountActuallyPaid": 30, "warehouseName": "仓库01" } ``` ### 返回示例 ```json { "errorCode": null, "msg": "操作成功", "data": null, "date": null, "version": null, "success": true } ``` --- ## 3. 采购入库/退货单创建 **Method:** `foonsu.erp.stockInOrders.add` **请求方式:** POST **简要描述:** 采购入库/退货单创建 ### 请求参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | warehouseName | 是 | String | 仓库名称 | | purchaseType | 是 | String | 采购类型:1-标准采购;2-新品采购;3-补货采购(orderFlag=-1时不传) | | orderFlag | 是 | Integer | 单据类型:1-采购入库;-1-采购退货,默认1 | | provideName | 是 | String | 供应商名称 | | expectedArrivalTime | 是 | Date | 预计到货时间 | | theTotalAmountActuallyPaid | 否 | BigDecimal | 实际支付总金额(如果未输入默认取商品总金额) | | reamrk | 否 | String | 备注(长度不能大于100) | | ext1 | 否 | String | 自定义字段1 | | ext2 | 否 | String | 自定义字段2 | | ext3 | 否 | String | 自定义字段3 | | externalUniqueCode | 否 | String | 请求的唯一标识,如果传入则需要保证每次请求数据具有唯一性,长度不可超32位 | | externalOrderNo | 否 | String | 外部系统单据编号 | | stockInOrdersGoodsInfoList | 是 | List[Object] | 商品信息列表 | ### StockInOrdersGoodsInfo 参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | goodsType | 是 | String | 商品类型:0-普通商品;1-批次商品;2-唯一码商品 | | goodsCode | 是 | String | 商品编码 | | goodsName | 是 | String | 商品名称 | | quantity | 是 | BigDecimal | 商品数量 | | price | 是 | BigDecimal | 单价 | | totalAmount | 是 | BigDecimal | 商品总价(商品数量*单价) | | taxRate | 否 | BigDecimal | 税率(未输入默认为0) | | taxType | 否 | String | 税率类型:0-含税;1-免税;2-未税,默认为含税 | | remark | 否 | String | 备注(长度不能大于100) | | externalDetailNo | 否 | String | 外部系统单据明细行号 | | stockInOrdersGoodsBatchInfoList | 是 | List[Object] | 批次/唯一码信息(goodsType为1或2时为必填字段) | ### StockInOrdersGoodsBatchInfo 参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | batchNo | 是 | String | 批次号 | | batchQuantity | 是 | BigDecimal | 数量(goodsType=2时数量默认必须为1) | | productionDate | 否 | Date | 生产日期 | | validDays | 否 | Integer | 保质期天数 | | distributorsCode | 否 | String | 经销商编码 | ### 请求示例 ```json { "expectedArrivalTime": 1596165536758, "provideName": "上海供应商", "purchaseType": "1", "orderFlag": 1, "reamrk": "123dhjskhfasf", "stockInOrdersGoodsInfoList": [ { "goodsCode": "PC_001", "goodsType": "1", "price": 15, "quantity": 10, "stockInOrdersGoodsBatchInfoList": [ { "batchNo": "PC_00000001", "batchQuantity": 10, "productionDate": 1596165536755, "validDays": 50, "distributorsCode": 32424 } ], "taxRate": 0.1, "totalAmount": 150 }, { "goodsCode": "WYM_001", "goodsType": "2", "price": 11, "quantity": 1, "externalDetailNo": "12313213", "stockInOrdersGoodsBatchInfoList": [ { "batchNo": "WYM_00000002", "batchQuantity": 1, "productionDate": 1596165536757, "validDays": 50 } ], "taxRate": 0.05, "totalAmount": 11 }, { "goodsCode": "SUB_01", "goodsType": "0", "price": 40, "quantity": 5, "taxRate": 0.05, "totalAmount": 200 } ], "warehouseName": "测试仓库" } ``` ### 返回示例 ```json { "errorCode": null, "msg": "操作成功", "data": "SIO1820419963117568", "date": null, "version": null, "success": true } ``` --- ## 4. 采购入库/退货单查询 **Method:** `foonsu.erp.stockInOrders.list` **请求方式:** POST **简要描述:** 采购入库/退货单查询 ### 请求参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | pageIndex | 否 | Integer | 当前页码 | | pageSize | 否 | Integer | 默认 20,最大不超过 50 | | poList | 否 | List[String] | 采购订单编号集合,最多20 | | orderFlag | 否 | Integer | 单据类型:1-采购入库;-1-采购退货 | | timeStatus | 否 | String | 时间范围类型:0-创建时间;1-修改时间 | | modifyDateStart | 是 | Date | 起始时间 | | modifyDateEnd | 是 | Date | 结束时间(间隔不超过7天) | ### data(List)返回参数 | 参数名 | 类型 | 说明 | |--------|------|------| | orderNo | String | 入库单号 | | orderFlag | Integer | 单据类型:1-采购入库;-1-采购退货 | | warehouseName | String | 仓库名称 | | poOrderNo | String | 采购订单编号 | | createDate | Date | 创建时间 | | stockDate | Date | 入库日期 | | orderType | String | 采购类型:1-标准采购;2-新品采购;3-补货采购 | | providerName | String | 供应商 | | logisticsCost | BigDecimal | 快递运费 | | remark | String | 备注 | | stockPackCount | BigDecimal | 入库数量 | | taxAmount | BigDecimal | 总含税金额 | | ext1 | String | 自定义字段1 | | ext2 | String | 自定义字段2 | | ext3 | String | 自定义字段3 | | stockInOrdersGoodsList | List[Object] | 商品明细集合 | ### stockInOrdersGoodsList 商品明细返回参数 | 参数名 | 类型 | 说明 | |--------|------|------| | goodsName | String | 商品名称 | | goodsCode | String | 商品编码 | | packCount | BigDecimal | 数量 | | price | BigDecimal | 单价 | | amount | BigDecimal | 金额 | | remark | String | 备注 | | batchList | List[Object] | 批次信息 | ### 返回示例 ```json { "errorCode": null, "msg": "操作成功", "data": { "total": 1, "data": [{ "orderNo": "SIO1820419963117568", "orderFlag": 1, "warehouseName": "测试仓库", "providerName": "上海供应商", "createDate": "2024-01-01 12:00:00", "stockDate": "2024-01-01 12:00:00", "orderType": "1", "stockPackCount": 16, "taxAmount": 371, "stockInOrdersGoodsList": [{ "goodsCode": "PC_001", "goodsName": "PC_001", "packCount": 10, "price": 15, "amount": 150 }] }] }, "date": null, "version": null, "success": true } ``` --- ## 5. 采购退货单查询 **Method:** `foonsu.erp.stockOutOrders.list` **请求方式:** POST **简要描述:** 采购退货单查询 ### 请求参数 | 参数名 | 必选 | 类型 | 说明 | |--------|------|------|------| | pageIndex | 否 | Integer | 当前页码 | | pageSize | 否 | Integer | 默认 20,最大不超过 50 | | stockOutOrdersNoList | 否 | List[String] | 采购退货单编号集合,最多20 | | timeType | 否 | String | 时间范围类型:0-创建时间;1-修改时间 | | beginDate | 是 | Date | 创建起始时间 | | endDate | 是 | Date | 创建结束时间(间隔不超过7天) | | isStorage | 否 | String | 是否包含仓储订单:0-不包含(默认);1-全部 | ### data(List)返回参数 | 参数名 | 类型 | 说明 | |--------|------|------| | orderNo | String | 采购退货单号 | | poOrderNo | String | 关联采购入库单号 | | warehouseName | String | 仓库名称 | | providerName | String | 供应商名称 | | stockPackCount | BigDecimal | 退货数量 | | taxAmount | BigDecimal | 总含税金额 | | createDate | Date | 创建时间 | | modifyDate | Date | 修改时间 | | stockDate | Date | 出库时间 | | stockOutOrdersGoodsList | List[Object] | 商品明细集合 | ### 返回示例 ```json { "errorCode": null, "msg": "操作成功", "data": { "total": 1, "data": [{ "orderNo": "SOO1820419963117569", "warehouseName": "测试仓库", "providerName": "上海供应商", "stockPackCount": 5, "taxAmount": 200, "createDate": "2024-01-01 12:00:00", "stockDate": "2024-01-02 12:00:00", "stockOutOrdersGoodsList": [{ "goodsCode": "SUB_01", "goodsName": "SUB_01", "skCount": 5, "price": 40, "amount": 200 }] }] }, "date": null, "version": null, "success": true } ```