2. 创建订单

2.1 请求参数

请求 URL

POST http://47.101.175.115:7070/franchiser/api/trade/create

参数列表

参数名 类型 是否必填 说明 示例
appid String 合作伙伴 AppId 对接时,由 EM 生成并提供
timestamp String 当前时间戳
sign String 接口签名 如何计算生成见示例代码
request_data Object 接口请求 json 数据 订单及明细相关信息
-request_data 参数列表 说明 示例
warehouseid int 出货仓库 ID,从接口[仓库列表]中获取 22
transportway int 运输方式, 1 绿羽配送 2 专用物流 3 用户自提 4 使用快递 5 其它 (默认为 5) 5
logisticscompanyid int 条件 transportway 为 2 或 4 时,为必传值,其它情况下传不传值
(transportway=2 时: 6=德邦物流,7=天天物流,9=同润物流,10=安能物流,11=货拉拉
transportway=4 时: 5=圆通快递,8=申通快递)
0
receivername String 收货人 hanson
mobile String 收货人手机 18817834074
provincename String 收货地址-省名字 上海,北京,江苏省
cityname String 收货地址-城市名称 上海市,北京市,苏州市
distrctname String 收货地址-区名字 浦东新区,
address String 收货地址-详细地址,比如 XX 路 XX 号等 商城路 738 号
deliverydate String 送货日期 2024-09-23
remark String 物流备注
traderemark String 订单备注
logisticscontact String 物流联系人
logisticscarnumber String 车牌号
logisticsmobile String 物流联系人手机号
items jsonArray 订单明细 json 数组 [{“outerpcode”:”ERP_1113004”,”mainmeasunitqty”:”10”,”remark”:”接口导入订单”}]
– outerpcode String ERP 编码,用于与 EM 系统中的产品匹配
– mainmeasunitqty int 数量
–remark String 订单明细备注

request_data 请求数据示例:

{
    "warehouseid": "5",
    "provincename": "上海",
    "cityname": "上海市",
    "distrctname": "嘉定区",
    "address": "商城路123123",
    "receivername": "hanson",
    "mobile": "18817834074",
    "transportway": "2",
    "logisticscompanyid": "10",
    "deliverydate": "2024-09-28",
    "traderemark": "订单备注",
    "logisticscontact": "hanson-w",
    "logisticsmobile": "18817834074",
    "logisticscarnumber": "沪A888888",
    "remark": "物流备注123",
    "items": [
        {
            "outerpcode": "ERP_1113005",
            "mainmeasunitqty": "1",
            "remark": "订单明细备注"
        }
    ]
}

2.2 请求示例代码(Java)

@Test
public void createOrder() throws Exception {
    //业务参数
    Map<String, String> data = new HashMap<String, String>();
    data.put("appid", SystemConfig.testAppKey);
    Long timestamp = System.currentTimeMillis() / 1000;
    data.put("request_data", requestData); //json格式
    data.put("timestamp", timestamp.toString());
    data.put("sign", CheeliUtils.Sign(data, SystemConfig.testAppSecret));
    // 调用服务API
    String response = CheeliUtils.doHttpRequest(SystemConfig.createOrderUrl, data);
    System.out.println(response);
}

2.3 返回结果如下:

2.3.1 请求成功

{"statusCode":0,"message":"操作成功","data":"DD202409230002"}

2.3.2 请求失败

{"statusCode":1,"message":"参数logisticscompanyid非法","data":null}

{"statusCode":1002,"message":"地区[浦东新区1]不存在","data":null}

{"statusCode":-10,"message":"产品[ERP_1113005]库存不足","data":null}

说明: statusCode 为 0 表示成功,非 0 为失败,message 会包含失败原因,data 为导入成功的订单号

文档更新时间: 2024-10-14 11:36   作者:hanson