3-3-2. 处理

接口说明:

URLhttp://test.birdsystem.com/client/Temp-Consignment-Info/Convert-Into-Consignment/
接口功能将批量代理专线订单处理到正式订单列表
支持格式JSON开发人员
请求方式GET发布日期

参数说明:

参数说明必选类型
ids批量订单的id,多个订单用下划线分隔(如果没有写id, 则默认转换所填type的所有未转换的批量订单)
VARCHAR(50)
type转换的类型Y'AGENT_DIRECT'
start从第几个开始处理(不填的话系统默认为0)
VARCHAR(10)

请求示例:

http://test.birdsystem.com/client/Temp-Consignment-Info/Convert-Into-Consignment/?ids=12010436_12010437&type=AGENT_DIRECT&start=0

接口返回示例:

其中taskId是当前正在运行的后台任务的id;并非批量订单的id。 (目前 convert-into-consignment 使用后台任务模式,开启一个后台任务后, 不等后台完成,就返回后台任务的id)

处理批量代理专线订单返回结果示例
{
    "numberOfTotalConsignmentsToProcess": 1,
    "taskId": "23004738",
    "success": true,
    "refresh": false,
    "moduleName": "client"
}

查询批量订单运行结果:

返回taskId后,如需要查询task的状态,可以1分钟调用一次(一次只能查一个后台任务)

http://test.birdsystem.com/client/Gearman-background-tasks/Get-Detail?id=xxxx

返回示例:

查看批量订单处理结果的返回示例
{
    "taskId": "23004739",
    "status": "FINISH",
    "create_time": "2020-11-26 15:12:20",
    "start_time": "2020-11-26 15:12:20",
    "update_time": "2020-11-26 15:12:20",
    "finish_time": "2020-11-26 15:12:20",
    "data": [],
    "errorData": {
        "46520947": "Selected delivery service is not available in this country."
    },
    "success": true,
    "refresh": false,
    "moduleName": "client"
}

返回参数说明:

参数说明
taskId运行的后台任务的id
status有'QUEUE' (排队中),'RUNNING'(运行中),'FINISH' (已完成),'ERROR' (出错),'ABORTED' (已被人为中断) 几种状态,只有当status为'FINISH'时, data,errorData才会有数据
create_time后台任务创建时间
start_time后台任务开始时间
finish_time后台任务完成时间
data返回的键值对分别是 临时批量订单的id,正式订单的id
errorData返回的键值对分别是 临时订单id,错误信息

注:

现在系统使用后台任务队列来处理订单,订单较多时,处理需要较长时间,可长达一小时,所以处理结果是不会实时返回的。每调用一次convert-into-consignment,会创建一个任务,根据这个任务id来了解后台进度。

点击处理,或者发convert请求,只是开启一个后台任务,就告诉客户后台任务开始了;至于后台任务最后是成功还是失败,是要不停地去查http://test.birdsystem.com/client/Gearman-background-tasks/Get-Detail?id=xxxx接口状态才知道。