3. 修改订单

3.1 请求参数

请求 URL

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

参数列表

参数名 类型 是否必填 说明 示例
appid String 合作伙伴 AppId 对接时,由 EM 生成并提供
timestamp String 当前时间戳
sign String 接口签名 如何计算生成见示例代码
request_data Object 接口请求 json 数据 订单及明细相关信息
-request_data 参数列表 说明 示例
tradeno String 订单号 DD202409240007
warehouseid int 出货仓库 ID,从接口[仓库列表]中获取 22
transportway int 运输方式, 1 绿羽配送 2 专用物流 3 用户自提 4 使用快递 5 其它 5
logisticscompanyid int 条件 transportway 为 2 或 4 时,为必传值,其它情况下传 0 或 null
(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 数量 1
–remark String 订单明细备注

request_data 请求数据示例:

{
    "tradeno": "DD202409260001",
    "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": "接口导入订单-修改明细3(数量3个改成1个)"
        }
    ]
}

注: 以上为全量修改参数,实际可根据需求上传,修改 item 中产品信息时需传入全部明细产品数据。

3.2 请求示例代码(Java)

/**
 - 修改更新订单
 - @throws Exception
 */
@Test
public void updateOrder() 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.modifyOrderUrl, data);
    System.out.println(response);
}

3.3 返回结果如下:

3.3.1 请求成功

{"statusCode":0,"message":"修改成功","data":"DD202409260001"}

3.3.2 请求失败


{"statusCode":1002,"message":"修改三级地址时,省市区名称均不能为空","data":null}

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

说明: statusCode 为 0 表示成功,非 0 为失败,message 会包含失败原因

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