当前位置: API文档

purchase_order_query.php(查询采购单)

¥标准

1.接口说明

1.1 接口描述:获取旺店通ERP的采购单及其明细信息
1.2 适用版本:客户端 V2.4.5.0及以上版本
1.3 增量获取:按照采购单的最后修改时间增量获取数据,请求时输入start_time和end_time作为时间跨度的筛选条件。
1.4 时间跨度:start_time和end_time最大跨度为30天,开始时间和结束时间取值范围为闭区间取值,例如2018-11-01 00:00:00至2018-11-30 23:59:59,建议根据获取数据量的多少适当减小时间跨度。

2.调用场景

2.1 财务系统、SAP、数据分析等系统的对接

3.请求参数说明

   3.1 请求地址

环境HTTP地址
测试环境https://sandbox.wangdian.cn/openapi2/purchase_order_query.php
正式环境https://api.wangdian.cn/openapi2/purchase_order_query.php

   3.2 公共请求参数

名称字段类型长度
必须描述
卖家账号sidString
购买ERP时由旺店通分配给ERP购买方,请从ERP购买方获取。
接口账号appkeyString
本开放平台“自助对接”功能模块内自助申请,获取方式点击这里
时间戳timestampint
北京时间1970-01-01 08:00:00起至现在的总秒数,10位int值,旺店通企业版API服务端允许请求最大时间误差为5min,date.timezone = Asia/Shanghai。
签名signString
API输入参数签名结果,签名算法介绍单击这里

   3.3 业务请求参数

名称字段类型长度
必须描述
采购单号purchase_novarchar40ERP系统采购单编号,传该字段可以不传开始时间和结束时间
外部单号outer_novarchar           
40ERP推送采购单外部返回单号(对应外部仓储单号)  传该字段可以不传开始时间和结束时间
采购单状态statustinyint
10 已取消,20 编辑中,30 待审核,35 待财审,40 已审核,43 待推送,45 推送失败,48 待收货,50 部分到货,60已到货,70 待结算,80 部分结算,90 已完成(不传默认查询全部状态采购单)
开始时间start_timedatetime

按最后修改时间增量获取数据,start_time作为开始时间,格式:yyyy-MM-dd HH:mm:ss
结束时间end_timedatetime

按最后修改时间增量获取数据,end_time作为结束时间,格式:yyyy-MM-dd HH:mm:ss
仓库编号warehouse_novarchar    
40

代表仓库所有属性的唯一编码,用于仓库区分,ERP内支持自定义(ERP仓库界面设置)
分页大小
page_size
int          


每页返回的数据条数,输入值范围1~100,不传本参数,输入值默认为40,使用举例单击这里
页号
page_no
int          


页号默认从0开始

4.响应参数

   4.1 公共响应参数

名称字段类型长度必须描述
错误码codeint
错误码,0成功
错误描述messagevarchar
错误描述
数据总条数total_countint
符合条件的数据总条数,当page_no=0时返回,用来分页
采购单列表节点purchase_listdata[]
响应参数的1级数据节点,包含当前页的采购单及其明细的数据节点,节点下数据字段详见下述" purchase_list"details_list

   4.2 业务响应参数

   purchase_list

名称字段类型长度必须描述
采购单idpurchase_idint11采购单id,采购单表主键
采购单号purchase_novarchar40ERP系统采购单编号
外部单号purchase_outer_novarchar40ERP推送采购单外部返回单号(对应外部仓储单号)。
ERP客户端需升级至V2.3.8.6及以上版本可获取此字段
api单号outer_novarchar40通过接口创建采购单时传的api单号
仓库warehouse_namevarchar64仓库名称
仓库编号warehouse_novarchar40代表仓库所有属性的唯一编码,用于仓库区分,ERP内支持自定义(ERP仓库界面设置)
采购单状态statustinyint4采购单状态:10 已取消,20 编辑中,30 待审核,35 待财审,40 已审核,43 待推送,45 推送失败,48 待收货,50 部分到货,60已到货,70 待结算,80 部分结算,90 已完成
供应商编号provider_novarchar20供应商编号
供应商名称provider_namevarchar64供应商名称
联系人contactvarchar40联系人
电话telnovarchar40电话
采购员
purchaser_name
varchar20
采购员
收货地址receive_addressvarchar512收货地址
货运方式logistics_typesmallint6货运方式
审核时间check_timedatetime
审核时间,格式:yyyy-MM-dd HH:mm:ss
货款goods_amountdecimal(19,4)货款
邮资post_feedecimal(19,4)邮资
其他费用other_feedecimal(19,4)其他费用
税后货品总金额tax_goods_amountdecimal(19,4)税后货品总金额
备注remarkvarchar255采购单备注
最后修改时间modifieddatetime
单据的最后修改时间,格式:yyyy-MM-dd HH:mm:ss
预计到货时间expect_arrive_timedatetime
采购预计到货时间,格式:yyyy-MM-dd HH:mm:ss
自定义属性1prop1varchar255自定义属性1
自定义属性2prop2varchar255自定义属性2
创建时间createddatetime
单据创建时间,格式:yyyy-MM-dd HH:mm:ss
创建人idcreator_idint
11默认为'0',创建人id
创建人姓名creator_namevarchar40默认为'0',创建人姓名
仓库idwarehouse_idint11仓库id
api外部单号api_outer_novarchar40默认为'',接口创建的单据的外部单号,同outer_no
外部仓库单号wms_outer_novarchar40默认为'',对应外部仓库的单号,同purchase_outer_no字段
外部状态wms_statustinyint4
默认为'0',外部状态,与wms对接使用 0初始化 1失败 2成功
错误信息error_infovarchar200默认为'',返回错误信息
采购员idpurchaser_idint11
默认为'0',采购员id
采购单类型order_typeint11默认为'0',0普通采购单,1档口采购单,2APP档口采购单
颜色标记flag_idint11默认为'0',颜色标记
供应商provider_idint11默认为'0',供应商
审核人check_operator_idint11默认为'0',审核人
财审人facheck_operator_idint11默认为'0',财审人
财审时间facheck_timedatetime
默认为'0000-00-00 00:00:00',财审时间
货品总价goods_feedecimal(19,4)默认为'0.0000',货品总价
货品数量goods_countdecimal(19,4)默认为'0.0000',货品数量
税后总价tax_feedecimal(19,4)默认为'0',税后总价
货品种类goods_type_countsmallint6默认为'0',货品种类
到货总量goods_arrive_countdecimal(19,4)默认为'0.0000',到货总量
驳回原因revert_reasonint11默认为'0',驳回原因
版本号version_idint11默认为'0',版本号
便签条数note_countsmallint6默认为'0',便签条数
自定义属性时间1prop_time1datetime
默认为'0000-00-00 00:00:00',自定义属性时间1
审核员名称check_operator_namevarchar40审核员名称
财审员名称facheck_operator_namevarchar40财审员名称
采购单明细节点details_listdata[]

响应参数的2级数据节点,,节点下数据字段详见下述“details_list”

   details_list

名称字段类型长度必须描述
主键rec_idint11采购明细表主键id
采购单idpurchase_idint11采购单id
商家编码spec_novarchar40代表单品(sku)所有属性的编码,SKU概念介绍,单击这里
品牌brand_namevarchar64品牌名称,推送此字段前需将版本升级至V2.3.9.1及以上的稳定版本
数量numdecimal(19,4)数量
税前单价pricedecimal(19,4)税前单价
折扣discountdecimal(19,4)折扣
税率taxdecimal(19,4)税率
税后单价tax_pricedecimal(19,4)税后单价
税后金额tax_amountdecimal(19,4)税后金额
税前金额amountdecimal(19,4)税前金额
采购到货入库总金额stockin_amountdecimal(19,4)采购到货入库总金额
采购到货入库数量stockin_numdecimal(19,4)采购到货入库数量
自定义属性1prop1varchar255自定义属性1
自定义属性2prop2varchar255自定义属性2
备注remarkvarchar255明细备注
修改时间modifieddatetime
修改时间,格式:yyyy-MM-dd HH:mm:ss
供应商货品编号provider_goods_novarchar40
供应商货品编号
货品编号goods_novarchar40
货品编号
货品名称goods_namevarchar255
货品名称
货品简称short_namevarchar255货品简称
规格名称spec_namevarchar255规格名称
规格码spec_codevarchar40
规格码
基本单位base_unitvarchar20
基本单位
采购单位purchase_unitvarchar20
采购单位
采购到货未入库数量arrive_numdecimal(19,4)采购到货未入库数量
停止等待数量
stopwait_numdecimal(19,4)停止等待数量
采购价purchase_pricedecimal(19,4)采购价
最后采购价last_pricedecimal(19,4)最后采购价
上一次采购价last_second_pricedecimal(19,4)上一次采购价
最低采购价lowest_pricedecimal(19,4)最低采购价
重量weightdecimal(19,4)重量
多到货量
arrive_more_numdecimal(19,4)多到货量
未到货量lack_numdecimal(19,4)未到货量
规格idspec_idint11规格id
仓库idwarehouse_idint11默认为'0',仓库id
标签tagtinyint4
默认为'0', tag=0表示默认采购
数量2num2decimal(19,4)默认为'0.0000',辅助单位数量
单位比率unit_ratiodecimal(19,4)默认为'1.0000',基本单位和辅助单位的换算系数
辅助单位unit_idsmallint6辅助单位/采购单位
基本单位base_unit_idsmallint6基本单位
创建时间createddatetime
单据创建时间,格式:yyyy-MM-dd HH:mm:ss

5.请求示例

PHP
<?php
    require_once("../WdtClient.php");
    $c = new WdtClient;
    $c->sid = '';
    $c->appkey = '';
    $c->appsecret = '';
    $c->gatewayUrl = 'http://sandbox.wangdian.cn/openapi2/purchase_order_query.php';
    
    $c->putApiParam('start_time', '2018-06-03 00:00:00');
    $c->putApiParam('end_time', '2018-06-21 20:13:41');
    $c->putApiParam('status', 40);
    $c->putApiParam('page_no', '0');
    $c->putApiParam('page_size', '10');
    $json = $c->wdtOpenApi();
    var_dump($json);
?>
JAVA
package com.wangdian.api.purchase;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import com.wangdian.api.WdtClient;

public class PurchaseOrderQuery {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        WdtClient client = new WdtClient("传入sid", "传入appkey", "传入appsecret", "传入url");
        //测试环境sid、appkey、密钥请到旺店通开放平台-自助对接-申请测试环境内查看,测试环境url=https://sandbox.wangdian.cn/openapi2/
        //调用正式环境时请将sid、appkey、appsecret切换为实际参数,参数在旺店通开放平台-自助对接-应用管理内应用状态为已上线的应用中查看,调用正式环境注意切换正式环境url=https://api.wangdian.cn/openapi2/
        
        Map<String, String> params = new HashMap<String, String>();
        params.put("start_time", "2018-12-01 00:00:00");
        params.put("end_time", "2018-12-06 00:00:00");
        try {
            String response = client.execute("purchase_order_query.php", params);
            System.out.println(response);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WdtSdk;

namespace PurchaseOrderQuery
{
    class PurchaseOrderQuery
    {
        static void Main(string[] args)
        {
            WdtClient client = new WdtClient();
            client.sid = "";
            client.appkey = "";
            client.appsecret = "";
            client.gatewayUrl = "http://sandbox.wangdian.cn/openapi2/purchase_order_query.php";
            
            client.putParams("start_time", "2018-06-03 00:00:00");
            client.putParams("end_time", "2018-06-21 20:13:41");
            client.putParams("status", "40");
            client.putParams("page_no", "0");
            client.putParams("page_size", "10");

            string result = client.wdtOpenapi();
            Console.WriteLine(result);
            Console.ReadKey();
        }
    }
}
python
import WdtClient

t = WdtClient.WdtClient('appkey', 'appsecret', 'sid', 'http://sandbox.wangdian.cn/openapi2/')
params = {}
params.update({"purchase_no": ''})
params.update({"start_time": '2021-01-01 00:00:00'})
params.update({"end_time": '2021-01-01 00:59:59'})
params.update({"page_size": '40'})
params.update({"page_no": '0'})

response = t.execute("purchase_order_query.php", params)
print(response)

6.响应示例

   6.1 正常响应示例 

JSON
{
    "code": "0",
    "message": "",
    "total_count": "1",
    "purchase_list": [{
        "purchase_id": "1004",
        "purchase_no": "CG201905180001",
        "warehouse_no": "xyp2test",
        "purchase_outer_no": "",
        "outer_no": "12345677qwertt-0",
        "status": "60",
        "provider_no": "001",
        "provider_name": "旺店通PDA供应商",
        "logistics_type": "0",
        "contact": "",
        "telno": "",
        "receive_address": "",
        "check_time": "2019-05-18 17:23:17",
        "goods_amount": "99.0000",
        "post_fee": "0.0000",
        "other_fee": "0.0000",
        "tax_goods_amount": "99.0000",
        "modified": "2019-05-18 17:24:23",
        "remark": "",
        "expect_arrive_time": "0000-00-00 00:00:00",
        "prop1": "",
        "prop2": "",
        "created": "2019-05-18 17:21:25",
        "details_list": [{
            "rec_id": "2931",
            "purchase_id": "1004",
            "spec_no": "WDTPDA-BLACK006",
            "brand_name": "旺店通",
            "num": "1.0000",
            "price": "99.0000",
            "discount": "1.0000",
            "tax": "0.0000",
            "tax_price": "99.0000",
            "tax_amount": "99.0000",
            "amount": "99.0000",
            "stockin_amount": "0.0000",
            "stockin_num": "0.0000",
            "prop1": "",
            "prop2": "",
            "remark": "",
            "modified": "2019-05-18 17:24:23",
            "provider_goods_no":"",
            "goods_no":"1010472",
            "goods_name":"COACH 小号PVC波士顿桶包",
            "short_name":"",
            "spec_name":"默认规格",
            "spec_code":"",
            "base_unit":null,
            "purchase_unit":null,
            "arrive_num":"0.0000",
            "stopwait_num":"0.0000",
            "purchase_price":"114.6047",
            "last_price":"30.0000",
            "last_second_price":"6.6775",
              "lowest_price":"6.6775",
              "weight":"0.0000",
              "arrive_more_num":"0",
              "lack_num":"0"
        }]
    }]
}

   6.2 异常响应示例

JSON
{
    "code": "7201",
    "message": "无效的外部采购单编号:CG201905180001"
}



常用工具