Commit 7f03dbab1ecdfa391487e8be78001e272173fcb2

Authored by 吴志飞
1 parent a45e5b22
Exists in master

feat: 上传则一订单对接API.md

Showing 1 changed file with 614 additions and 1081 deletions   Show diff stats
order/order.md
1 -  
2 1
3 -[则一订单对接API](#则一订单对接api)  
4 2
5 -[白名单](#白名单)  
6 -  
7 -[数据加签](#数据加签)  
8 -  
9 -[数据加密](#数据加密)  
10 -  
11 -[获取访问凭证](#获取访问凭证)  
12 -  
13 -[概述](#概述-1)  
14 -  
15 -[接口信息](#接口信息-1)  
16 -  
17 -[请求方式:](#请求方式-1)  
18 -  
19 -[请求地址:](#请求地址-1)  
20 -  
21 -[Body参数](#body参数-1)  
22 -  
23 -[返回参数](#返回参数)  
24 -  
25 -[请求示例](#请求示例-1)  
26 -  
27 -[Http方式](#http方式)  
28 -  
29 -[Java-sdk方式 下载SDK](#java-sdk方式---下载sdk-1)  
30 -  
31 -[返回示例](#返回示例-1)  
32 -  
33 -[下单](#下单)  
34 -  
35 -[接口信息](#接口信息-2)  
36 -  
37 -[请求方式:](#请求方式-2)  
38 -  
39 -[请求地址:](#请求地址-2)  
40 -  
41 -[Headers参数](#headers参数-1)  
42 -  
43 -[Body参数](#body参数-2)  
44 -  
45 -[请求示例](#请求示例-2)  
46 -  
47 -[Java-sdk方式 下载SDK](#java-sdk方式----下载sdk)  
48 -  
49 -[返回示例](#返回示例-2)  
50 -  
51 -[确认中标](#确认中标)  
52 -  
53 -[接口信息](#接口信息-3)  
54 -  
55 -[请求方式:](#请求方式-3)  
56 -  
57 -[请求地址:](#请求地址-3)  
58 -  
59 -[Headers参数](#headers参数-2)  
60 -  
61 -[Body参数](#body参数-3)  
62 -  
63 -[请求示例](#请求示例-3)  
64 -  
65 -[Java-sdk方式 下载SDK](#java-sdk方式---下载sdk-2)  
66 -  
67 -[返回示例](#返回示例-3)  
68 -  
69 -[取消订单](#取消订单)  
70 -  
71 -[接口信息](#接口信息-4)  
72 -  
73 -[请求方式:](#请求方式-4)  
74 -  
75 -[请求地址:](#请求地址-4)  
76 -  
77 -[Headers参数](#headers参数-3)  
78 -  
79 -[Body参数](#body参数-4)  
80 -  
81 -[请求示例](#请求示例-4)  
82 -  
83 -[Java-sdk方式 下载SDK](#java-sdk方式---下载sdk-3)  
84 -  
85 -[返回示例](#返回示例-4)  
86 -  
87 -[查询车辆定位](#查询车辆定位)  
88 -  
89 -[接口信息](#接口信息-5)  
90 -  
91 -[概述](#概述-2)  
92 -  
93 -[请求方式:](#请求方式-5)  
94 -  
95 -[请求地址:](#请求地址-5)  
96 -  
97 -[Headers参数](#headers参数-4)  
98 -  
99 -[Body参数](#body参数-5)  
100 -  
101 -[请求示例](#请求示例-5)  
102 -  
103 -[Java-sdk方式 下载SDK](#java-sdk方式---下载sdk-4)  
104 -  
105 -[返回示例](#返回示例-5)  
106 -  
107 -[查询车辆历史轨迹](#查询车辆历史轨迹)  
108 -  
109 -[接口信息](#接口信息-6)  
110 -  
111 -[概述](#概述-3)  
112 -  
113 -[请求方式:](#请求方式-6)  
114 -  
115 -[请求地址:](#请求地址-6)  
116 -  
117 -[Headers参数](#headers参数-5)  
118 -  
119 -[Body参数](#body参数-6)  
120 -  
121 -[请求示例](#请求示例-6)  
122 -  
123 -[Java-sdk方式 下载SDK](#java-sdk方式---下载sdk-5)  
124 -  
125 -[返回示例](#返回示例-6)  
126 -  
127 -[查询订单操作记录](#查询订单操作记录)  
128 -  
129 -[接口信息](#接口信息-7)  
130 -  
131 -[概述](#概述-4)  
132 -  
133 -[请求方式:](#请求方式-7)  
134 -  
135 -[请求地址:](#请求地址-7)  
136 -  
137 -[Headers参数](#headers参数-6)  
138 -  
139 -[Body参数](#body参数-7)  
140 -  
141 -[请求示例](#请求示例-7)  
142 -  
143 -[Java-sdk方式 下载SDK](#java-sdk方式---下载sdk-6)  
144 -  
145 -[返回示例](#返回示例-7)  
146 -  
147 -[以下接口需要对接方提供](#以下接口需要对接方提供)  
148 -  
149 -[报价接口](#报价接口)  
150 -  
151 -[接口信息](#接口信息-8)  
152 -  
153 -[概述](#概述-5)  
154 -  
155 -[请求方式:](#请求方式-8)  
156 -  
157 -[请求路径:](#请求路径-1)  
158 -  
159 -[Body参数](#body参数-8)  
160 -  
161 -[返回示例](#返回示例-8)  
162 -  
163 -[接单接口](#接单接口)  
164 -  
165 -[接口信息](#接口信息-9)  
166 -  
167 -[概述](#概述-6)  
168 -  
169 -[请求方式:](#请求方式-9)  
170 -  
171 -[请求路径:](#请求路径-2)  
172 -  
173 -[Body参数](#body参数-9)  
174 -  
175 -[推送司机车辆信息](#推送司机车辆信息)  
176 -  
177 -[接口信息](#接口信息-10)  
178 -  
179 -[概述](#概述-7)  
180 -  
181 -[请求方式:](#请求方式-10)  
182 -  
183 -[请求路径:](#请求路径-3)  
184 -  
185 -[Body参数](#body参数-10)  
186 -  
187 -[返回示例](#返回示例-9)  
188 -  
189 -[推送发车信息](#推送发车信息)  
190 -  
191 -[接口信息](#接口信息-11)  
192 -  
193 -[概述](#概述-8)  
194 -  
195 -[请求方式:](#请求方式-11)  
196 -  
197 -[请求路径:](#请求路径-4)  
198 -  
199 -[Body参数](#body参数-11)  
200 -  
201 -[返回示例](#返回示例-10)  
202 -  
203 -[推送到车信息](#推送到车信息)  
204 -  
205 -[接口信息](#接口信息-12)  
206 -  
207 -[概述](#概述-9)  
208 -  
209 -[请求方式:](#请求方式-12)  
210 -  
211 -[请求路径:](#请求路径-5)  
212 -  
213 -[Body参数](#body参数-12)  
214 -  
215 -[返回示例](#返回示例-11)  
216 -  
217 -[Java-sdk下载](#java-sdk下载)  
218 -  
219 -[2022-03-09更新日志](#2022-03-09更新日志)  
220 -  
221 -**则一订单对接API** 3 +### 则一订单对接API
222 4
223 则一提供了不同规范的API,调用则一订单服务端API前,需了解开发前须知及调用流程。本文提供了调用则一订单服务端API示例,供开发者参考。 5 则一提供了不同规范的API,调用则一订单服务端API前,需了解开发前须知及调用流程。本文提供了调用则一订单服务端API示例,供开发者参考。
224 6
225 -**白名单** 7 +#### 白名单
226 8
227 则一服务端API接口访问有IP白名单限制,需要接口调用方提供调用API的服务器IP地址。 9 则一服务端API接口访问有IP白名单限制,需要接口调用方提供调用API的服务器IP地址。
228 10
229 -**数据加签** 11 +#### 数据加签
230 12
231 采用md5(32位小写)算法生成签名 13 采用md5(32位小写)算法生成签名
232 -  
233 appKey(则一提供) + appSecret(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(请求数据) 14 appKey(则一提供) + appSecret(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(请求数据)
234 15
235 -**数据加密** 16 +#### 数据加密
236 17
237 数据加密采用AES算法 18 数据加密采用AES算法
238 -  
239 加密模式: CBC 19 加密模式: CBC
240 -  
241 填充方式:PKCS5Padding 20 填充方式:PKCS5Padding
242 -  
243 偏移量:iv(则一提供) 21 偏移量:iv(则一提供)
244 -  
245 加密内容:appKey(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(加密数据) 22 加密内容:appKey(则一提供) + timestamp(当前时间戳毫秒) + nonce(6位随机码大小写字母数子组合) + data(加密数据)
246 -  
247 密钥: appSecret(则一提供) 23 密钥: appSecret(则一提供)
248 -  
249 输出:base64 24 输出:base64
250 -  
251 字符集:utf-8 25 字符集:utf-8
252 -  
253 注:无敏感数据则无需加密 26 注:无敏感数据则无需加密
254 27
255 -**获取访问凭证** 28 +#### 获取访问凭证
256 29
257 -**概述** 30 +##### 概述
258 31
259 调用则一服务API时,都需要先获取对应权限类型的访问凭证accessToken。访问凭证(accessToken)是由则一权限系统颁发的,用来校验调用者的身份信息,确保调用者具有要执行的操作的权限。 32 调用则一服务API时,都需要先获取对应权限类型的访问凭证accessToken。访问凭证(accessToken)是由则一权限系统颁发的,用来校验调用者的身份信息,确保调用者具有要执行的操作的权限。
260 -  
261 **说明**: 在使用accessToken时,请注意: 33 **说明**: 在使用accessToken时,请注意:
262 34
263 -- accessToken的有效期默认为30天,有效期内重复获取会返回相同结果,过期后获取会返回新的accessToken。  
264 -- 开发者需要缓存accessToken,用于后续接口的调用。不能频繁调用获取accessToken接口,否则会受到频率拦截。  
265 -- 当调用业务API时,如果返回状态码为401,则说明accessToken不正确或已过期,这时需要重新获取accessToken后再调用对应的API。 35 +* accessToken的有效期默认为30天,有效期内重复获取会返回相同结果,过期后获取会返回新的accessToken。
  36 +* 开发者需要缓存accessToken,用于后续接口的调用。不能频繁调用获取accessToken接口,否则会受到频率拦截。
  37 +* 当调用业务API时,如果返回状态码为401,则说明accessToken不正确或已过期,这时需要重新获取accessToken后再调用对应的API。
266 38
267 -**接口信息** 39 +##### 接口信息
268 40
269 -**请求方式:** 41 +###### 请求方式:
270 42
271 post 43 post
272 44
273 -**请求地址:** 45 +###### 请求地址:
274 46
275 -- 生产:<https://gw.shjiuze.cn/auth-service-api/login/password>  
276 -- 测试:<https://test.shjiuze.cn/auth-service-api/login/password> 47 +* 生产:https://gw.shjiuze.cn/auth-service-api/login/password
  48 +* 测试:https://test.shjiuze.cn/auth-service-api/login/password
277 49
278 -**Body参数** 50 +###### Body参数
279 51
280 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
281 -| :- | :- | :- | :- | :- |  
282 -|username|String|是|zhangsan|用户名,则一提供|  
283 -|password|String|是|password123|密码,则一提供|  
284 -**返回参数** 52 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  53 +| -------- | ------ | ---- | ----------- | ---------------- |
  54 +| username | String | 是 | zhangsan | 用户名,则一提供 |
  55 +| password | String | 是 | password123 | 密码,则一提供 |
285 56
286 -|**名称**|**类型**|**示例值**|**描述**|  
287 -| :- | :- | :- | :- |  
288 -|success|boolean|true|成功标识: true 成功,false 失败|  
289 -|businessException|boolean|false|业务异常标识: true 业务异常,false 正常|  
290 -|errorCode|String|200|错误码: 200 业务异常,500 系统异常, 空表示无错误|  
291 -|message|String|订单号不能为空|错误信息,无错误则返回空|  
292 -|result|ZYTokenDto| |accessToken结果数据|  
293 -|`    `accessToken|String|000626f15b4b41bba6fe56216a5d2f73|accessToken|  
294 -|`    `expiresIn|Integer|2060|有效期限单位秒,accessToken在2060秒后过期|  
295 -|`    `tokenType|String|bearer|token类型|  
296 -**请求示例** 57 +###### 返回参数
297 58
298 -**Http方式** 59 +| 名称 | 类型 | 示例值 | 描述 |
  60 +| ------------------------------ | ---------- | -------------------------------- | -------------------------------------------------- |
  61 +| success | boolean | true | 成功标识: true 成功,false 失败 |
  62 +| businessException | boolean | false | 业务异常标识: true 业务异常,false 正常 |
  63 +| errorCode | String | 200 | 错误码: 200 业务异常,500 系统异常, 空表示无错误 |
  64 +| message | String | 订单号不能为空 | 错误信息,无错误则返回空 |
  65 +| result | ZYTokenDto | | accessToken结果数据 |
  66 +| &nbsp;&nbsp;&nbsp; accessToken | String | 000626f15b4b41bba6fe56216a5d2f73 | accessToken |
  67 +| &nbsp;&nbsp;&nbsp; expiresIn | Integer | 2060 | 有效期限单位秒,accessToken在2060秒后过期 |
  68 +| &nbsp;&nbsp;&nbsp; tokenType | String | bearer | token类型 |
299 69
  70 +##### 请求示例
300 71
  72 +###### Http方式
301 73
  74 +```http
302 POST /auth-service-api/login/password HTTP/1.1 75 POST /auth-service-api/login/password HTTP/1.1
303 -  
304 Host:test.shjiuze.cn 76 Host:test.shjiuze.cn
305 -  
306 Content-Type:application/json 77 Content-Type:application/json
307 78
308 { 79 {
309 -  
310 -` `"username" : "zeyi",  
311 -  
312 -` `"password" : "test1111"  
313 - 80 + "username" : "zeyi",
  81 + "password" : "test1111"
314 } 82 }
  83 +```
315 84
316 -**Java-sdk方式 [下载SDK**](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)**  
317 -  
318 - 85 +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
319 86
  87 +```java
320 public class Sample { 88 public class Sample {
321 -  
322 -`    `public static void main(String[] args\_) {  
323 -  
324 -`        `String appKey = "appkey";  
325 -  
326 -`        `String appSecret = "appSecret";  
327 -  
328 -`        `ZYClient zyClient = new ZYClient(appKey, appSecret);  
329 -  
330 -`        `ZYTokenRequestDto zyTokenRequest = new ZYTokenRequestDto();  
331 -  
332 -`        `zyTokenRequest.setUsername("zeyi");  
333 -  
334 -`        `zyTokenRequest.setPassword("test1111");  
335 -  
336 -`        `String body = gson.toJson(zyTokenRequest);  
337 -  
338 -`        `HttpResponseData httpResponseData = zyClient.doPost(Constants.TEST\_HOST + Constants.TOKEN\_PATH, body);  
339 -  
340 -`        `if(httpResponseData == null) {  
341 -  
342 -`            `throw new TokenException("则一Token请求失败,返回为空!");  
343 -  
344 -`       `}  
345 -  
346 -`        `ZYResponse<ZYTokenDto> zyResponse = gson.fromJson(httpResponseData.getBody(), new      TypeToken<ZYResponse<ZYTokenDto>>(){}.getType());  
347 -  
348 -`        `if(!Boolean.TRUE.equals(zyResponse.isSuccess())) {      
349 -  
350 -`            `throw new TokenException("则一Token请求返回失败!" + zyResponse.getMessage());  
351 -  
352 -`       `}  
353 -  
354 -`        `if(zyResponse.getResult() == null) {      
355 -  
356 -`            `throw new TokenException("则一Token请求返回失败,返回结果为空!" + zyResponse.getMessage());  
357 -  
358 -`       `}  
359 -  
360 -`        `if(StringUtils.isBlank(zyResponse.getResult().getAccessToken())) {      
361 -  
362 -`            `throw new TokenException("则一Token请求返回数据异常,AccessToken为空!" + zyResponse.getMessage());  
363 -  
364 -`       `}  
365 -  
366 -`        `// 结果 zyResponse.getResult();  
367 -  
368 -`   `}  
369 - 89 + public static void main(String[] args_) {
  90 + String appKey = "appkey";
  91 + String appSecret = "appSecret";
  92 + ZYClient zyClient = new ZYClient(appKey, appSecret);
  93 + ZYTokenRequestDto zyTokenRequest = new ZYTokenRequestDto();
  94 + zyTokenRequest.setUsername("zeyi");
  95 + zyTokenRequest.setPassword("test1111");
  96 + String body = gson.toJson(zyTokenRequest);
  97 + HttpResponseData httpResponseData = zyClient.doPost(Constants.TEST_HOST + Constants.TOKEN_PATH, body);
  98 + if(httpResponseData == null) {
  99 + throw new TokenException("则一Token请求失败,返回为空!");
  100 + }
  101 + ZYResponse<ZYTokenDto> zyResponse = gson.fromJson(httpResponseData.getBody(), new TypeToken<ZYResponse<ZYTokenDto>>(){}.getType());
  102 + if(!Boolean.TRUE.equals(zyResponse.isSuccess())) {
  103 + throw new TokenException("则一Token请求返回失败!" + zyResponse.getMessage());
  104 + }
  105 + if(zyResponse.getResult() == null) {
  106 + throw new TokenException("则一Token请求返回失败,返回结果为空!" + zyResponse.getMessage());
  107 + }
  108 + if(StringUtils.isBlank(zyResponse.getResult().getAccessToken())) {
  109 + throw new TokenException("则一Token请求返回数据异常,AccessToken为空!" + zyResponse.getMessage());
  110 + }
  111 + // 结果 zyResponse.getResult();
  112 + }
370 } 113 }
  114 +```
371 115
372 -**返回示例**  
373 -  
374 - 116 +##### 返回示例
375 117
  118 +```json
376 { 119 {
377 -  
378 -`    `"success": true,  
379 -  
380 -`    `"businessException": false,  
381 -  
382 -`    `"errorCode": null,  
383 -  
384 -`    `"message": null,  
385 -  
386 -`    `"result": {  
387 -  
388 -`        `"accessToken": "64d7f367-609b-4f7d-a84d-a3d2a0b5ad85",  
389 -  
390 -`        `"expiresIn": 602105,  
391 -  
392 -`        `"tokenType": "bearer"  
393 -  
394 -`   `}  
395 - 120 + "success": true,
  121 + "businessException": false,
  122 + "errorCode": null,
  123 + "message": null,
  124 + "result": {
  125 + "accessToken": "64d7f367-609b-4f7d-a84d-a3d2a0b5ad85",
  126 + "expiresIn": 602105,
  127 + "tokenType": "bearer"
  128 + }
396 } 129 }
  130 +```
397 131
398 -**下单** 132 +#### 下单
399 133
400 -**接口信息** 134 +##### 接口信息
401 135
402 -**请求方式:** 136 +###### 请求方式:
403 137
404 post 138 post
405 139
406 -**请求地址:**  
407 -  
408 -- 生产:<https://gw.shjiuze.cn/oms-service-api/order/add>  
409 -- 测试:<https://test.shjiuze.cn/oms-service-api/order/add>  
410 -  
411 -**Headers参数**  
412 -  
413 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
414 -| :- | :- | :- | :- | :- |  
415 -|Authorization|String|是    |Bearer a2c5680001|调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。|  
416 -|appKey|String|是|0867ef5f23ef6483749e19e1692b|则一提供|  
417 -|timestamp|String|是|1643251533306|当前时间戳毫秒值|  
418 -|nonce|String|是|gdst9t|6位小写字母数字组合随机串|  
419 -|sign|String|是|fa3ed338d6dfe18e7273c8692234ee70|签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成|  
420 -**Body参数**  
421 -  
422 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
423 -| :- | :- | :- | :- | :- |  
424 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
425 -|customerSn|String|否|220101000001|客户委托单号|  
426 -|placeOrderTime|Number|是|1643251533306|下单时间,时间戳毫秒值|  
427 -|loadTime|Number|是|1643251533306|装货时间,时间戳毫秒值|  
428 -|expectArrivalTime|Number|否|1643251533306|期望送达时间,时间戳毫秒值|  
429 -|receiptType|String|否|ELECTRON\_TYPE|回单类型:ELECTRON\_TYPE/电子回单,PAPER\_TYPE/纸质回单,NONE/无|  
430 -|receiptNumber|Number|否|1|回单张数|  
431 -|receiptCode|String|否|A2022012602278|回单号|  
432 -|payType|String|否|PAY\_IN\_CASH|付款方式:PAY\_IN\_CASH/现付,PAY\_ON\_DELIVERY/到付,PAY\_ARREARS/欠付,PAY\_MONTH/月结,PAY\_BACK/回付,PAY\_MULTIPLE/多笔付,PAY\_FREE/免费|  
433 -|lineName|String|否|上海-天津-北京|线路名称|  
434 -|remark|String|否|需要雨布和尾板|订单备注|  
435 -|station|OrderStation[]|是| |订单经停点|  
436 -|`    `stationId|String|否|123abc|站点id|  
437 -|`    `stationName|String|否|上海顺丰青浦站点|站点名称|  
438 -|`    `provinceCode|String|否|310000|省份编号|  
439 -|`    `provinceName|String|是|上海|省份名称|  
440 -|`    `cityCode|String|否|310100|城市编号|  
441 -|`    `cityName|String|是|上海市|城市名称|  
442 -|`    `areaCode|String|否|310118|区域编号|  
443 -|`    `areaName|String|是|青浦区|区域名称|  
444 -|`    `address|String|是|纪鹤公路1988号|详细地址|  
445 -|`    `lat|String|是|36.221825|纬度|  
446 -|`    `lng|String|是|120.632908|经度|  
447 -|`    `contactName|String|否|张三|联系人|  
448 -|`    `contactMobile|String|否|18801000001|联系人电话|  
449 -|`    `loadFlag|String|是|true|装货标识|  
450 -|`    `unloadFlag|String|是|false|卸货标识|  
451 -|`    `expectArrivalTime|Number|否|1643251533306|预计到达时间,时间戳毫秒值|  
452 -|`    `expectDepartTime|Number|否|1643251533306|预计发车时间,时间戳毫秒值|  
453 -|`    `sort|Number|否|1|经停点顺序,如果不传则默认按数组顺序|  
454 -|goods|OrderGoods[]|否| |订单货物信息|  
455 -|`    `barCode|String|否|21616162626|商品条码|  
456 -|`    `skuId|String|否|1223233536436|商品sku\_id|  
457 -|`    `name|String|是|鞋子|货物名称|  
458 -|`    `packageType|String|否| |包装规格|  
459 -|`    `piece|Number|否|200|件数|  
460 -|`    `weight|Number|否|200000|重量|  
461 -|`    `volume|Number|否|50|体积|  
462 -|addService|OrderAddService[]|否| |增值服务|  
463 -|`    `serviceName|String|是|包装服务|服务名称|  
464 -|tags|OrderTag[]|否| |订单标签|  
465 -|`  `tagName|String|是|易碎物品|标签名称|  
466 -|vehicleDemands|OrderVehicleDemand[]|否| |车辆需求|  
467 -|`  `demandVanType|String|是|MOTOR\_VAN|需求厢型:MOTOR\_VAN/厢车,GAOLAN\_VAN/高栏,SLAB\_VAN/平板,REFRIGERATOR\_CAR/冷藏,IVECO/依维柯,JINBEI/金杯,MINI\_VAN/小面包,ELSE\_VAN/其他|  
468 -|demandSpecification|String|是|9.6|需求车型:2.7/3.8/4.2/6.8/7.6/9.6/11/12.5/13.5/15/16.5/17.5/19/21|  
469 -|`  `demandNumber|Number|否|1|为空则默认1|  
470 -|`  `vehicleDemand|String|否|车辆需要带雨布|车辆要求描述|  
471 -**请求示例**  
472 -  
473 -**Java-sdk方式 [下载SDK**](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)**  
474 -  
475 -  
476 - 140 +###### 请求地址:
  141 +
  142 +* 生产:https://gw.shjiuze.cn/oms-service-api/order/add
  143 +* 测试:https://test.shjiuze.cn/oms-service-api/order/add
  144 +
  145 +###### Headers参数
  146 +
  147 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  148 +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ |
  149 +| Authorization | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 |
  150 +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 |
  151 +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 |
  152 +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 |
  153 +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 |
  154 +
  155 +###### Body参数
  156 +
  157 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  158 +| ------------------------------------- | -------------------- | -------------------------- | ---------------- | ------------------------------------------------------------ |
  159 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  160 +| customerSn | String | 否 | 220101000001 | 客户委托单号 |
  161 +| placeOrderTime | Number | 是 | 1643251533306 | 下单时间,时间戳毫秒值 |
  162 +| loadTime | Number | 是 | 1643251533306 | 装货时间,时间戳毫秒值 |
  163 +| expectArrivalTime | Number | 否 | 1643251533306 | 期望送达时间,时间戳毫秒值 |
  164 +| receiptType | String | 否 | ELECTRON_TYPE | 回单类型:ELECTRON_TYPE/电子回单,PAPER_TYPE/纸质回单,NONE/无 |
  165 +| receiptNumber | Number | 否 | 1 | 回单张数 |
  166 +| receiptCode | String | 否 | A2022012602278 | 回单号 |
  167 +| payType | String | 否 | PAY_IN_CASH | 付款方式:PAY_IN_CASH/现付,PAY_ON_DELIVERY/到付,PAY_ARREARS/欠付,PAY_MONTH/月结,PAY_BACK/回付,PAY_MULTIPLE/多笔付,PAY_FREE/免费 |
  168 +| lineName | String | 否 | 上海-天津-北京 | 线路名称 |
  169 +| remark | String | 否 | 需要雨布和尾板 | 订单备注 |
  170 +| station | OrderStation[] | 是 | | 订单经停点 |
  171 +| &nbsp;&nbsp;&nbsp; stationId | String | 否 | 123abc | 站点id |
  172 +| &nbsp;&nbsp;&nbsp; stationName | String | 否 | 上海顺丰青浦站点 | 站点名称 |
  173 +| &nbsp;&nbsp;&nbsp; provinceCode | String | 否 | 310000 | 省份编号 |
  174 +| &nbsp;&nbsp;&nbsp; provinceName | String | 是 | 上海 | 省份名称 |
  175 +| &nbsp;&nbsp;&nbsp; cityCode | String | 否 | 310100 | 城市编号 |
  176 +| &nbsp;&nbsp;&nbsp; cityName | String | 是 | 上海市 | 城市名称 |
  177 +| &nbsp;&nbsp;&nbsp; areaCode | String | 否 | 310118 | 区域编号 |
  178 +| &nbsp;&nbsp;&nbsp; areaName | String | 是 | 青浦区 | 区域名称 |
  179 +| &nbsp;&nbsp;&nbsp; address | String | 是 | 纪鹤公路1988号 | 详细地址 |
  180 +| &nbsp;&nbsp;&nbsp; lat | String | 是 | 36.221825 | 纬度 |
  181 +| &nbsp;&nbsp;&nbsp; lng | String | 是 | 120.632908 | 经度 |
  182 +| &nbsp;&nbsp;&nbsp; contactName | String | 否 | 张三 | 联系人 |
  183 +| &nbsp;&nbsp;&nbsp; contactMobile | String | 否 | 18801000001 | 联系人电话 |
  184 +| &nbsp;&nbsp;&nbsp; loadFlag | String | 是 | true | 装货标识 |
  185 +| &nbsp;&nbsp;&nbsp; unloadFlag | String | 是 | false | 卸货标识 |
  186 +| &nbsp;&nbsp;&nbsp; expectArrivalTime | Number | 否 | 1643251533306 | 预计到达时间,时间戳毫秒值 |
  187 +| &nbsp;&nbsp;&nbsp;expectDepartTime | Number | 否 | 1643251533306 | 预计发车时间,时间戳毫秒值 |
  188 +| &nbsp;&nbsp;&nbsp; sort | Number | 否 | 1 | 经停点顺序,如果不传则默认按数组顺序 |
  189 +| goods | OrderGoods[] | 否 | | 订单货物信息 |
  190 +| &nbsp;&nbsp;&nbsp; barCode | String | 否 | 21616162626 | 商品条码 |
  191 +| &nbsp; &nbsp;&nbsp;skuId | String | 否 | 1223233536436 | 商品sku_id |
  192 +| &nbsp;&nbsp;&nbsp;&nbsp;name | String | 是 | 鞋子 | 货物名称 |
  193 +| &nbsp;&nbsp;&nbsp;&nbsp;packageType | String | 否 | | 包装规格 |
  194 +| &nbsp;&nbsp;&nbsp;&nbsp;piece | Number | 否 | 200 | 件数 |
  195 +| &nbsp;&nbsp;&nbsp;&nbsp;weight | Number | 否 | 200000 | 重量 |
  196 +| &nbsp;&nbsp;&nbsp;&nbsp;volume | Number | 否 | 50 | 体积 |
  197 +| addService | OrderAddService[] | 否 | | 增值服务 |
  198 +| &nbsp;&nbsp;&nbsp;&nbsp;serviceType | String | 否 | | 服务类型 |
  199 +| &nbsp;&nbsp;&nbsp;&nbsp;serviceName | String | 是 | 包装服务 | 服务名称 |
  200 +| &nbsp;&nbsp;&nbsp;&nbsp;serviceDemand | String | 否 | 纸箱包装 | 服务要求 |
  201 +| tags | OrderTag[] | 否 | | 订单标签 |
  202 +| &nbsp;tagName | String | 是 | 易碎物品 | 标签名称 |
  203 +| vehicleDemands | OrderVehicleDemand[] | 否 | | 车辆需求 |
  204 +| &nbsp;demandVanType | String | 是 | MOTOR_VAN | 需求厢型:MOTOR_VAN/厢车,GAOLAN_VAN/高栏,SLAB_VAN/平板,REFRIGERATOR_CAR/冷藏,IVECO/依维柯,JINBEI/金杯,MINI_VAN/小面包,ELSE_VAN/其他 |
  205 +| &nbsp;&nbsp;demandSpecification | String | 是 | 9.6 | 需求车型:2.7/3.8/4.2/6.8/7.6/9.6/11/12.5/13.5/15/16.5/17.5/19/21 |
  206 +| &nbsp;demandNumber | Number | 否 | 1 | 为空则默认1 |
  207 +| &nbsp;vehicleDemand | String | 否 | 车辆需要带雨布 | 车辆要求描述 |
  208 +
  209 +##### 请求示例
  210 +
  211 +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
  212 +
  213 +```java
477 public class Sample { 214 public class Sample {
478 -  
479 -`    `public static void main(String[] args\_) {  
480 -  
481 -`        `String appKey = "appkey";  
482 -  
483 -`        `String appSecret = "appSecret";  
484 -  
485 -`        `String jsonData = "下单Body参数JSON数据";  
486 -  
487 -`        `ZYClient zyClient = new ZYClient(appKey, appSecret);  
488 -  
489 -`        `HttpResponseData httpResponseData =  
490 -  
491 -zyClient.doPost(Constants.TEST\_HOST + "/oms-service-api/order/add", "accessToken", jsonData);  
492 -  
493 -`        `if(httpResponseData == null) {      
494 -  
495 -`            `throw new BusinessException("则一请求失败,返回结果为空!");  
496 -  
497 -`         `}  
498 -  
499 -`        `if(httpResponseData.getStatus() == HttpURLConnection.HTTP\_UNAUTHORIZED) {    
500 -  
501 -`        `//重新获取token再次请求      
502 -  
503 -`        `httpResponseData = zyClient.doPost(Constants.TEST\_HOST +  
504 -  
505 -`        `"/oms-service-api/order/add", "accessToken", jsonData);  
506 -  
507 -`       `}  
508 -  
509 -`   `}  
510 - 215 + public static void main(String[] args_) {
  216 + String appKey = "appkey";
  217 + String appSecret = "appSecret";
  218 + String jsonData = "下单Body参数JSON数据";
  219 + ZYClient zyClient = new ZYClient(appKey, appSecret);
  220 + HttpResponseData httpResponseData =
  221 +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/add", "accessToken", jsonData);
  222 + if(httpResponseData == null) {
  223 + throw new BusinessException("则一请求失败,返回结果为空!");
  224 + }
  225 + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) {
  226 + //重新获取token再次请求
  227 + httpResponseData = zyClient.doPost(Constants.TEST_HOST +
  228 + "/oms-service-api/order/add", "accessToken", jsonData);
  229 + }
  230 + }
511 } 231 }
  232 +```
512 233
513 -**返回示例**  
514 -  
515 - 234 +##### 返回示例
516 235
  236 +```json
517 { 237 {
518 -  
519 -`    `"success": true,  
520 -  
521 -`    `"businessException": false,  
522 -  
523 -`    `"errorCode": null,  
524 -  
525 -`    `"message": null,  
526 -  
527 -`    `"result": {  
528 -  
529 -`        `"code": "则一订单号",  
530 -  
531 -`        `"customerOrderCode": "客户订单号"  
532 -  
533 -`   `}  
534 - 238 + "success": true,
  239 + "businessException": false,
  240 + "errorCode": null,
  241 + "message": null,
  242 + "result": {
  243 + "code": "则一订单号",
  244 + "customerOrderCode": "客户订单号"
  245 + }
535 } 246 }
  247 +```
536 248
537 -**确认中标** 249 +#### 确认中标
538 250
539 -**接口信息** 251 +##### 接口信息
540 252
541 -**请求方式:** 253 +###### 请求方式:
542 254
543 post 255 post
544 256
545 -**请求地址:** 257 +###### 请求地址:
546 258
547 -- 生产:<https://gw.shjiuze.cn/oms-service-api/order/confirmBid>  
548 -- 测试:<https://test.shjiuze.cn/oms-service-api/order/confirmBid> 259 +* 生产:https://gw.shjiuze.cn/oms-service-api/order/confirmBid
  260 +* 测试:https://test.shjiuze.cn/oms-service-api/order/confirmBid
549 261
550 -**Headers参数** 262 +###### Headers参数
551 263
552 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
553 -| :- | :- | :- | :- | :- |  
554 -|Authorization|String|是    |Bearer a2c5680001|调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。|  
555 -|appKey|String|是|0867ef5f23ef6483749e19e1692b|则一提供|  
556 -|timestamp|String|是|1643251533306|当前时间戳毫秒值|  
557 -|nonce|String|是|gdst9t|6位小写字母数字组合随机串|  
558 -|sign|String|是|fa3ed338d6dfe18e7273c8692234ee70|签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成|  
559 -**Body参数** 264 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  265 +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ |
  266 +| Authorization | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 |
  267 +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 |
  268 +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 |
  269 +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 |
  270 +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 |
560 271
561 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
562 -| :- | :- | :- | :- | :- |  
563 -|code|String|否|220101000001|则一订单号|  
564 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
565 -|confirmId|String|是|220101000001|中标报价id|  
566 -|quotePrice|Number|是|10000|中标价格|  
567 -**请求示例** 272 +###### Body参数
568 273
569 -**Java-sdk方式 [下载SDK**](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)** 274 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  275 +| ----------------- | ------ | -------------------------- | ------------ | ------------------------ |
  276 +| code | String | 是 | 220101000001 | 则一订单号 |
  277 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  278 +| confirmId | String | 是 | 220101000001 | 中标报价id |
  279 +| quotePrice | Number | 是 | 10000 | 中标价格 |
570 280
  281 +##### 请求示例
571 282
  283 +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
572 284
  285 +```java
573 public class Sample { 286 public class Sample {
574 -  
575 -`    `public static void main(String[] args\_) {  
576 -  
577 -`        `String appKey = "appkey";  
578 -  
579 -`        `String appSecret = "appSecret";  
580 -  
581 -`        `String jsonData = "确认中标Body参数JSON数据";  
582 -  
583 -`        `ZYClient zyClient = new ZYClient(appKey, appSecret);  
584 -  
585 -`        `HttpResponseData httpResponseData =  
586 -  
587 -zyClient.doPost(Constants.TEST\_HOST + "/oms-service-api/order/confirmBid", "accessToken", jsonData);  
588 -  
589 -`        `if(httpResponseData == null) {      
590 -  
591 -`            `throw new BusinessException("则一请求失败,返回结果为空!");  
592 -  
593 -`         `}  
594 -  
595 -`        `if(httpResponseData.getStatus() == HttpURLConnection.HTTP\_UNAUTHORIZED) {    
596 -  
597 -`        `//重新获取token再次请求      
598 -  
599 -`        `httpResponseData = zyClient.doPost(Constants.TEST\_HOST +  
600 -  
601 -`        `"/oms-service-api/order/confirmBid", "accessToken", jsonData);  
602 -  
603 -`       `}  
604 -  
605 -`   `}  
606 - 287 + public static void main(String[] args_) {
  288 + String appKey = "appkey";
  289 + String appSecret = "appSecret";
  290 + String jsonData = "确认中标Body参数JSON数据";
  291 + ZYClient zyClient = new ZYClient(appKey, appSecret);
  292 + HttpResponseData httpResponseData =
  293 +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/confirmBid", "accessToken", jsonData);
  294 + if(httpResponseData == null) {
  295 + throw new BusinessException("则一请求失败,返回结果为空!");
  296 + }
  297 + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) {
  298 + //重新获取token再次请求
  299 + httpResponseData = zyClient.doPost(Constants.TEST_HOST +
  300 + "/oms-service-api/order/confirmBid", "accessToken", jsonData);
  301 + }
  302 + }
607 } 303 }
  304 +```
608 305
609 -**返回示例**  
610 -  
611 - 306 +##### 返回示例
612 307
  308 +```json
613 { 309 {
614 -  
615 -`    `"success": true,  
616 -  
617 -`    `"businessException": false,  
618 -  
619 -`    `"errorCode": null,  
620 -  
621 -`    `"message": null,  
622 -  
623 -`    `"result": {  
624 -  
625 -`        `"code": "则一订单号",  
626 -  
627 -`        `"customerOrderCode": "客户订单号",  
628 -  
629 -`        `"confirmId": "中标报价id",  
630 -  
631 -`        `"quotePrice": "中标价格"  
632 -  
633 -`   `}  
634 - 310 + "success": true,
  311 + "businessException": false,
  312 + "errorCode": null,
  313 + "message": null,
  314 + "result": {
  315 + "code": "则一订单号",
  316 + "customerOrderCode": "客户订单号",
  317 + "confirmId": "中标报价id",
  318 + "quotePrice": "中标价格"
  319 + }
635 } 320 }
  321 +```
636 322
637 -**取消订单** 323 +#### 取消订单
638 324
639 -**接口信息** 325 +##### 接口信息
640 326
641 -**请求方式:** 327 +###### 请求方式:
642 328
643 post 329 post
644 330
645 -**请求地址:** 331 +###### 请求地址:
646 332
647 -- 生产:<https://gw.shjiuze.cn/oms-service-api/order/cancel>  
648 -- 测试:<https://test.shjiuze.cn/oms-service-api/order/cancel> 333 +* 生产:https://gw.shjiuze.cn/oms-service-api/order/cancel
  334 +* 测试:https://test.shjiuze.cn/oms-service-api/order/cancel
649 335
650 -**Headers参数** 336 +###### Headers参数
651 337
652 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
653 -| :- | :- | :- | :- | :- |  
654 -|Authorization|String|是    |Bearer a2c5680001|调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。|  
655 -|appKey|String|是|0867ef5f23ef6483749e19e1692b|则一提供|  
656 -|timestamp|String|是|1643251533306|当前时间戳毫秒值|  
657 -|nonce|String|是|gdst9t|6位小写字母数字组合随机串|  
658 -|sign|String|是|fa3ed338d6dfe18e7273c8692234ee70|签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成|  
659 -**Body参数** 338 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  339 +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ |
  340 +| Authorization | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 |
  341 +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 |
  342 +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 |
  343 +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 |
  344 +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 |
660 345
661 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
662 -| :- | :- | :- | :- | :- |  
663 -|code|String|否|220101000001|则一订单号|  
664 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
665 -|cancelRemark|String|否|货量不足|取消原因|  
666 -**请求示例** 346 +###### Body参数
667 347
668 -**Java-sdk方式 [下载SDK**](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)** 348 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  349 +| ----------------- | ------ | -------------------------- | ------------ | ------------------------ |
  350 +| code | String | 是 | 220101000001 | 则一订单号 |
  351 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  352 +| cancelRemark | String | 否 | 货量不足 | 取消原因 |
669 353
  354 +##### 请求示例
670 355
  356 +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
671 357
  358 +```java
672 public class Sample { 359 public class Sample {
673 -  
674 -`    `public static void main(String[] args\_) {  
675 -  
676 -`        `String appKey = "appkey";  
677 -  
678 -`        `String appSecret = "appSecret";  
679 -  
680 -`        `String jsonData = "取消订单Body参数JSON数据";  
681 -  
682 -`        `ZYClient zyClient = new ZYClient(appKey, appSecret);  
683 -  
684 -`        `HttpResponseData httpResponseData =  
685 -  
686 -zyClient.doPost(Constants.TEST\_HOST + "/oms-service-api/order/cancel", "accessToken", jsonData);  
687 -  
688 -`        `if(httpResponseData == null) {      
689 -  
690 -`            `throw new BusinessException("则一请求失败,返回结果为空!");  
691 -  
692 -`         `}  
693 -  
694 -`        `if(httpResponseData.getStatus() == HttpURLConnection.HTTP\_UNAUTHORIZED) {    
695 -  
696 -`        `//重新获取token再次请求      
697 -  
698 -`        `httpResponseData = zyClient.doPost(Constants.TEST\_HOST +  
699 -  
700 -`        `"/oms-service-api/order/cancel", "accessToken", jsonData);  
701 -  
702 -`       `}  
703 -  
704 -`   `}  
705 - 360 + public static void main(String[] args_) {
  361 + String appKey = "appkey";
  362 + String appSecret = "appSecret";
  363 + String jsonData = "取消订单Body参数JSON数据";
  364 + ZYClient zyClient = new ZYClient(appKey, appSecret);
  365 + HttpResponseData httpResponseData =
  366 +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/order/cancel", "accessToken", jsonData);
  367 + if(httpResponseData == null) {
  368 + throw new BusinessException("则一请求失败,返回结果为空!");
  369 + }
  370 + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) {
  371 + //重新获取token再次请求
  372 + httpResponseData = zyClient.doPost(Constants.TEST_HOST +
  373 + "/oms-service-api/order/cancel", "accessToken", jsonData);
  374 + }
  375 + }
706 } 376 }
  377 +```
707 378
708 -**返回示例**  
709 -  
710 - 379 +##### 返回示例
711 380
  381 +```json
712 { 382 {
713 -  
714 -`    `"success": true,  
715 -  
716 -`    `"businessException": false,  
717 -  
718 -`    `"errorCode": null,  
719 -  
720 -`    `"message": null,  
721 -  
722 -`    `"result": {  
723 -  
724 -`        `"code": "则一订单号",  
725 -  
726 -`        `"customerOrderCode": "客户订单号"  
727 -  
728 -`   `}  
729 - 383 + "success": true,
  384 + "businessException": false,
  385 + "errorCode": null,
  386 + "message": null,
  387 + "result": {
  388 + "code": "则一订单号",
  389 + "customerOrderCode": "客户订单号"
  390 + }
730 } 391 }
  392 +```
731 393
732 -**查询车辆定位** 394 +#### 查询车辆定位
733 395
734 -**接口信息** 396 +##### 接口信息
735 397
736 -**概述** 398 +###### 概述
737 399
738 可以通过该接口查询车辆当前位置,该接口为收费接口。 400 可以通过该接口查询车辆当前位置,该接口为收费接口。
739 401
740 -**请求方式:** 402 +###### 请求方式:
741 403
742 post 404 post
743 405
744 -**请求地址:** 406 +###### 请求地址:
745 407
746 -- 生产:<https://gw.shjiuze.cn/oms-service-api/vehicle/location>  
747 -- 测试:<https://test.shjiuze.cn/oms-service-api/vehicle/location> 408 +* 生产:https://gw.shjiuze.cn/oms-service-api/vehicle/location
  409 +* 测试:https://test.shjiuze.cn/oms-service-api/vehicle/location
748 410
749 -**Headers参数** 411 +###### Headers参数
750 412
751 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
752 -| :- | :- | :- | :- | :- |  
753 -|Authorization|String|是    |Bearer a2c5680001|调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。|  
754 -|appKey|String|是|0867ef5f23ef6483749e19e1692b|则一提供|  
755 -|timestamp|String|是|1643251533306|当前时间戳毫秒值|  
756 -|nonce|String|是|gdst9t|6位小写字母数字组合随机串|  
757 -|sign|String|是|fa3ed338d6dfe18e7273c8692234ee70|签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成|  
758 -**Body参数** 413 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  414 +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ |
  415 +| Authorization | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 |
  416 +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 |
  417 +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 |
  418 +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 |
  419 +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 |
759 420
760 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
761 -| :- | :- | :- | :- | :- |  
762 -|code|String|是|D220101000001|则一订单号|  
763 -|waybillCode|String|是|Y220101000001|则一运单号|  
764 -|customerOrderCode|String|是|220101000001|客户订单号,订单唯一标识|  
765 -|licenseNumber|String|是|沪DP2312|车牌号|  
766 -**请求示例** 421 +###### Body参数
767 422
768 -**Java-sdk方式 [下载SDK**](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)** 423 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  424 +| ----------------- | ------ | ---- | ------------- | ------------------------ |
  425 +| code | String | 是 | D220101000001 | 则一订单号 |
  426 +| waybillCode | String | 是 | Y220101000001 | 则一运单号 |
  427 +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 |
  428 +| licenseNumber | String | 是 | 沪DP2312 | 车牌号 |
769 429
  430 +##### 请求示例
770 431
  432 +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
771 433
  434 +```java
772 public class Sample { 435 public class Sample {
773 -  
774 -`    `public static void main(String[] args\_) {  
775 -  
776 -`        `String appKey = "appkey";  
777 -  
778 -`        `String appSecret = "appSecret";  
779 -  
780 -`        `String jsonData = "车辆位置查询Body参数JSON数据";  
781 -  
782 -`        `ZYClient zyClient = new ZYClient(appKey, appSecret);  
783 -  
784 -`        `HttpResponseData httpResponseData =  
785 -  
786 -zyClient.doPost(Constants.TEST\_HOST + "/oms-service-api/vehicle/location", "accessToken", jsonData);  
787 -  
788 -`        `if(httpResponseData == null) {      
789 -  
790 -`            `throw new BusinessException("则一请求失败,返回结果为空!");  
791 -  
792 -`         `}  
793 -  
794 -`        `if(httpResponseData.getStatus() == HttpURLConnection.HTTP\_UNAUTHORIZED) {    
795 -  
796 -`        `//重新获取token再次请求      
797 -  
798 -`        `httpResponseData = zyClient.doPost(Constants.TEST\_HOST +  
799 -  
800 -`        `"/oms-service-api/vehicle/location", "accessToken", jsonData);  
801 -  
802 -`       `}  
803 -  
804 -`   `}  
805 - 436 + public static void main(String[] args_) {
  437 + String appKey = "appkey";
  438 + String appSecret = "appSecret";
  439 + String jsonData = "车辆位置查询Body参数JSON数据";
  440 + ZYClient zyClient = new ZYClient(appKey, appSecret);
  441 + HttpResponseData httpResponseData =
  442 +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/vehicle/location", "accessToken", jsonData);
  443 + if(httpResponseData == null) {
  444 + throw new BusinessException("则一请求失败,返回结果为空!");
  445 + }
  446 + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) {
  447 + //重新获取token再次请求
  448 + httpResponseData = zyClient.doPost(Constants.TEST_HOST +
  449 + "/oms-service-api/vehicle/location", "accessToken", jsonData);
  450 + }
  451 + }
806 } 452 }
  453 +```
807 454
808 -**返回示例**  
809 -  
810 - 455 +##### 返回示例
811 456
  457 +```json
812 { 458 {
813 -  
814 -`    `"success":true,  
815 -  
816 -`    `"businessException":false,  
817 -  
818 -`    `"result":{  
819 -  
820 -`        `"lng":"106.1722328011559", //经度  
821 -  
822 -`        `"lat":"37.94834927106783", //纬度  
823 -  
824 -`        `"speed":0, //速度,km/h  
825 -  
826 -`        `"time":"2022-02-07 19:33:19", //定位时间  
827 -  
828 -`        `"address":"宁夏回族自治区吴忠市利通区清二沟,东方向,296.5米" //定位地点  
829 -  
830 -`   `}  
831 - 459 + "success":true,
  460 + "businessException":false,
  461 + "result":{
  462 + "lng":"106.1722328011559", //经度
  463 + "lat":"37.94834927106783", //纬度
  464 + "speed":0, //速度,km/h
  465 + "time":"2022-02-07 19:33:19", //定位时间
  466 + "address":"宁夏回族自治区吴忠市利通区清二沟,东方向,296.5米" //定位地点
  467 + }
832 } 468 }
  469 +```
833 470
834 -**查询车辆历史轨迹** 471 +#### 查询车辆历史轨迹
835 472
836 -**接口信息** 473 +##### 接口信息
837 474
838 -**概述** 475 +###### 概述
839 476
840 可以通过该接口查询车辆历史运行轨迹数据,该接口为收费接口。 477 可以通过该接口查询车辆历史运行轨迹数据,该接口为收费接口。
841 478
842 -**请求方式:** 479 +###### 请求方式:
843 480
844 post 481 post
845 482
846 -**请求地址:** 483 +###### 请求地址:
847 484
848 -- 生产:<https://gw.shjiuze.cn/oms-service-api/vehicle/track>  
849 -- 测试:<https://test.shjiuze.cn/oms-service-api/vehicle/track> 485 +* 生产:https://gw.shjiuze.cn/oms-service-api/vehicle/track
  486 +* 测试:https://test.shjiuze.cn/oms-service-api/vehicle/track
850 487
851 -**Headers参数** 488 +###### Headers参数
852 489
853 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
854 -| :- | :- | :- | :- | :- |  
855 -|Authorization|String|是    |Bearer a2c5680001|调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。|  
856 -|appKey|String|是|0867ef5f23ef6483749e19e1692b|则一提供|  
857 -|timestamp|String|是|1643251533306|当前时间戳毫秒值|  
858 -|nonce|String|是|gdst9t|6位小写字母数字组合随机串|  
859 -|sign|String|是|fa3ed338d6dfe18e7273c8692234ee70|签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成|  
860 -**Body参数** 490 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  491 +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ |
  492 +| Authorization | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 |
  493 +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 |
  494 +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 |
  495 +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 |
  496 +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 |
861 497
862 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
863 -| :- | :- | :- | :- | :- |  
864 -|code|String|是|D220101000001|则一订单号|  
865 -|waybillCode|String|是|Y220101000001|则一运单号|  
866 -|customerOrderCode|String|是|220101000001|客户订单号,订单唯一标识|  
867 -|licenseNumber|String|是|沪DP2312|车牌号|  
868 -|startTime|Number|是|1643251533306|开始时间|  
869 -|endTime|Number|是|1643251533308|结束时间|  
870 -**请求示例** 498 +###### Body参数
871 499
872 -**Java-sdk方式 [下载SDK**](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)** 500 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  501 +| ----------------- | ------ | ---- | ------------- | ------------------------ |
  502 +| code | String | 是 | D220101000001 | 则一订单号 |
  503 +| waybillCode | String | 是 | Y220101000001 | 则一运单号 |
  504 +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 |
  505 +| licenseNumber | String | 是 | 沪DP2312 | 车牌号 |
  506 +| startTime | Number | 是 | 1643251533306 | 开始时间 |
  507 +| endTime | Number | 是 | 1643251533308 | 结束时间 |
873 508
  509 +##### 请求示例
874 510
  511 +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
875 512
  513 +```java
876 public class Sample { 514 public class Sample {
877 -  
878 -`    `public static void main(String[] args\_) {  
879 -  
880 -`        `String appKey = "appkey";  
881 -  
882 -`        `String appSecret = "appSecret";  
883 -  
884 -`        `String jsonData = "车辆轨迹查询Body参数JSON数据";  
885 -  
886 -`        `ZYClient zyClient = new ZYClient(appKey, appSecret);  
887 -  
888 -`        `HttpResponseData httpResponseData =  
889 -  
890 -zyClient.doPost(Constants.TEST\_HOST + "/oms-service-api/vehicle/track", "accessToken", jsonData);  
891 -  
892 -`        `if(httpResponseData == null) {      
893 -  
894 -`            `throw new BusinessException("则一请求失败,返回结果为空!");  
895 -  
896 -`         `}  
897 -  
898 -`        `if(httpResponseData.getStatus() == HttpURLConnection.HTTP\_UNAUTHORIZED) {    
899 -  
900 -`        `//重新获取token再次请求      
901 -  
902 -`        `httpResponseData = zyClient.doPost(Constants.TEST\_HOST +  
903 -  
904 -`        `"/oms-service-api/vehicle/track", "accessToken", jsonData);  
905 -  
906 -`       `}  
907 -  
908 -`   `}  
909 - 515 + public static void main(String[] args_) {
  516 + String appKey = "appkey";
  517 + String appSecret = "appSecret";
  518 + String jsonData = "车辆轨迹查询Body参数JSON数据";
  519 + ZYClient zyClient = new ZYClient(appKey, appSecret);
  520 + HttpResponseData httpResponseData =
  521 +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/vehicle/track", "accessToken", jsonData);
  522 + if(httpResponseData == null) {
  523 + throw new BusinessException("则一请求失败,返回结果为空!");
  524 + }
  525 + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) {
  526 + //重新获取token再次请求
  527 + httpResponseData = zyClient.doPost(Constants.TEST_HOST +
  528 + "/oms-service-api/vehicle/track", "accessToken", jsonData);
  529 + }
  530 + }
910 } 531 }
  532 +```
911 533
912 -**返回示例**  
913 -  
914 - 534 +##### 返回示例
915 535
  536 +```json
916 { 537 {
  538 + "success":true,
  539 + "businessException":false,
  540 + "result":[
  541 + {
  542 + "lon":"116.6709722499687", //经度
  543 + "lat":"39.64092201495669", //纬度
  544 + "gtm":"2022-02-07 18:55:13", //gps时间
  545 + "spd":"249", //速度 除以10为km/h
  546 + "hgt":"4", //海拔m
  547 + "agl":"257" //正北方向夹角
  548 + },
  549 + {
  550 + "lon":"116.66919560752942",
  551 + "lat":"39.64070361333219",
  552 + "gtm":"2022-02-07 18:55:33",
  553 + "spd":"272",
  554 + "hgt":"6",
  555 + "agl":"260"
  556 + }
  557 + ]
  558 +}
  559 +```
917 560
918 -`    `"success":true,  
919 -  
920 -`    `"businessException":false,  
921 -  
922 -`    `"result":[  
923 -  
924 -`       `{  
925 -  
926 -`            `"lon":"116.6709722499687", //经度  
927 -  
928 -`            `"lat":"39.64092201495669", //纬度  
929 -  
930 -`            `"gtm":"2022-02-07 18:55:13", //gps时间  
931 -  
932 -`            `"spd":"249", //速度 除以10为km/h  
933 -  
934 -`            `"hgt":"4", //海拔m  
935 -  
936 -`            `"agl":"257" //正北方向夹角  
937 -  
938 -`       `},  
939 -  
940 -`       `{  
941 -  
942 -`            `"lon":"116.66919560752942",  
943 -  
944 -`            `"lat":"39.64070361333219",  
945 -  
946 -`            `"gtm":"2022-02-07 18:55:33",  
947 -  
948 -`            `"spd":"272",  
949 -  
950 -`            `"hgt":"6",  
951 -  
952 -`            `"agl":"260"  
953 -  
954 -`       `}  
955 -  
956 -`   `]  
957 561
958 -}  
959 562
960 -**查询订单操作记录** 563 +#### 查询订单操作记录
961 564
962 -**接口信息** 565 +##### 接口信息
963 566
964 -**概述** 567 +###### 概述
965 568
966 可以通过该接口查询订单的操作记录。 569 可以通过该接口查询订单的操作记录。
967 570
968 -**请求方式:** 571 +###### 请求方式:
969 572
970 post 573 post
971 574
972 -**请求地址:** 575 +###### 请求地址:
973 576
974 -- 生产:<https://gw.shjiuze.cn/oms-service-api/order/getOperateList>  
975 -- 测试:<https://test.shjiuze.cn/oms-service-api/order/getOperateList> 577 +* 生产:https://gw.shjiuze.cn/oms-service-api/order/getOperateList
  578 +* 测试:https://test.shjiuze.cn/oms-service-api/order/getOperateList
976 579
977 -**Headers参数** 580 +###### Headers参数
978 581
979 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
980 -| :- | :- | :- | :- | :- |  
981 -|Authorization|String|是    |Bearer a2c5680001|调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。|  
982 -|appKey|String|是|0867ef5f23ef6483749e19e1692b|则一提供|  
983 -|timestamp|String|是|1643251533306|当前时间戳毫秒值|  
984 -|nonce|String|是|gdst9t|6位小写字母数字组合随机串|  
985 -|sign|String|是|fa3ed338d6dfe18e7273c8692234ee70|签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成|  
986 -**Body参数** 582 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  583 +| ------------- | ------ | -------------------------- | -------------------------------- | ------------------------------------------------------------ |
  584 +| Authorization | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | Bearer a2c5680001 | 调用服务端API的应用凭证accessToken,通过调用获取访问凭证接口获取。 |
  585 +| appKey | String | 是 | 0867ef5f23ef6483749e19e1692b | 则一提供 |
  586 +| timestamp | String | 是 | 1643251533306 | 当前时间戳毫秒值 |
  587 +| nonce | String | 是 | gdst9t | 6位小写字母数字组合随机串 |
  588 +| sign | String | 是 | fa3ed338d6dfe18e7273c8692234ee70 | 签名:appKey(则一提供) + appSecret(则一提供) + timestamp + nonce(6位随机码) + data(body参数)通过md5(32位小写)算法生成 |
987 589
988 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
989 -| :- | :- | :- | :- | :- |  
990 -|code|String|否|220101000001|则一订单号|  
991 -|customerOrderCode|String|是|220101000001|客户订单号,订单唯一标识|  
992 -**请求示例** 590 +###### Body参数
993 591
994 -**Java-sdk方式 [下载SDK**](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)** 592 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  593 +| ----------------- | ------ | ---- | ------------ | ------------------------ |
  594 +| code | String | 否 | 220101000001 | 则一订单号 |
  595 +| customerOrderCode | String | 是 | 220101000001 | 客户订单号,订单唯一标识 |
995 596
  597 +##### 请求示例
996 598
  599 +###### Java-sdk方式 [下载SDK](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
997 600
  601 +```java
998 public class Sample { 602 public class Sample {
999 -  
1000 -`    `public static void main(String[] args\_) {  
1001 -  
1002 -`        `String appKey = "appkey";  
1003 -  
1004 -`        `String appSecret = "appSecret";  
1005 -  
1006 -`        `String jsonData = "订单操作记录Body参数JSON数据";  
1007 -  
1008 -`        `ZYClient zyClient = new ZYClient(appKey, appSecret);  
1009 -  
1010 -`        `HttpResponseData httpResponseData =  
1011 -  
1012 -zyClient.doPost(Constants.TEST\_HOST + "/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData);  
1013 -  
1014 -`        `if(httpResponseData == null) {      
1015 -  
1016 -`            `throw new BusinessException("则一请求失败,返回结果为空!");  
1017 -  
1018 -`         `}  
1019 -  
1020 -`        `if(httpResponseData.getStatus() == HttpURLConnection.HTTP\_UNAUTHORIZED) {    
1021 -  
1022 -`        `//重新获取token再次请求      
1023 -  
1024 -`        `httpResponseData = zyClient.doPost(Constants.TEST\_HOST +  
1025 -  
1026 -`        `"/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData);  
1027 -  
1028 -`       `}  
1029 -  
1030 -`   `}  
1031 - 603 + public static void main(String[] args_) {
  604 + String appKey = "appkey";
  605 + String appSecret = "appSecret";
  606 + String jsonData = "车辆轨迹查询Body参数JSON数据";
  607 + ZYClient zyClient = new ZYClient(appKey, appSecret);
  608 + HttpResponseData httpResponseData =
  609 +zyClient.doPost(Constants.TEST_HOST + "/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData);
  610 + if(httpResponseData == null) {
  611 + throw new BusinessException("则一请求失败,返回结果为空!");
  612 + }
  613 + if(httpResponseData.getStatus() == HttpURLConnection.HTTP_UNAUTHORIZED) {
  614 + //重新获取token再次请求
  615 + httpResponseData = zyClient.doPost(Constants.TEST_HOST +
  616 + "/oms-service-api/orderOperateRecord/getList", "accessToken", jsonData);
  617 + }
  618 + }
1032 } 619 }
  620 +```
1033 621
1034 -**返回示例**  
1035 -  
1036 - 622 +##### 返回示例
1037 623
  624 +```json
1038 { 625 {
  626 + "success": true,
  627 + "businessException": false,
  628 + "errorCode": null,
  629 + "message": null,
  630 + "result": [
  631 + {
  632 + "orderCode": "220101000001",
  633 + "operateType": "ORDER_XXX",
  634 + "operateContent": "操作详情XXXX1",
  635 + "operateTime": "2022-02-10 18:23:30",
  636 + "operateUser": "张三"
  637 + },
  638 + {
  639 + "orderCode": "220101000001",
  640 + "operateType": "ORDER_XXX",
  641 + "operateContent": "操作详情XXXX2",
  642 + "operateTime": "2022-02-08 12:43:30",
  643 + "operateUser": "李四"
  644 + }
  645 + ]
  646 +}
  647 +```
1039 648
1040 -`    `"success": true,  
1041 -  
1042 -`    `"businessException": false,  
1043 -  
1044 -`    `"errorCode": null,  
1045 -  
1046 -`    `"message": null,  
1047 -  
1048 -`    `"result": [  
1049 -  
1050 -`       `{  
1051 -  
1052 -`            `"orderCode": "220101000001",  
1053 -  
1054 -`            `"operateType": "ORDER\_XXX",  
1055 -  
1056 -`            `"operateContent": "操作详情XXXX1",  
1057 -  
1058 -`            `"operateTime": "2022-02-10 18:23:30",  
1059 -  
1060 -`            `"operateUser": "张三"  
1061 -  
1062 -`       `},  
1063 -  
1064 -`       `{  
1065 -  
1066 -`            `"orderCode": "220101000001",  
1067 -  
1068 -`            `"operateType": "ORDER\_XXX",  
1069 -  
1070 -`            `"operateContent": "操作详情XXXX2",  
1071 -  
1072 -`            `"operateTime": "2022-02-08 12:43:30",  
1073 -  
1074 -`            `"operateUser": "李四"  
1075 649
1076 -`       `}  
1077 650
1078 -`   `]  
1079 651
1080 -}  
1081 652
1082 653
1083 654
1084 -**以下接口需要对接方提供** 655 +### 以下接口需要对接方提供
1085 656
1086 -**报价接口** 657 +#### 报价接口
1087 658
1088 -**接口信息** 659 +##### 接口信息
1089 660
1090 -**概述** 661 +###### 概述
1091 662
1092 则一调用该接口进行报价,可以进行多次报价。 663 则一调用该接口进行报价,可以进行多次报价。
1093 664
1094 -**请求方式:** 665 +###### 请求方式:
1095 666
1096 post 667 post
1097 668
1098 -**请求路径:** 669 +###### 请求路径:
1099 670
1100 /quotePrice 671 /quotePrice
1101 672
1102 -**Body参数**  
1103 -  
1104 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
1105 -| :- | :- | :- | :- | :- |  
1106 -|code|String|是|220101000001|则一订单号|  
1107 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
1108 -|quoteId|String|是|1a2111bacd56|报价id,报价唯一标识|  
1109 -|quotePrice|Number|是|10000|报价金额|  
1110 -|contactName|String|否|张三|报价联系人|  
1111 -|contactMobile|String|否|18801000000|报价联系电话|  
1112 -|quoteInvalidTime|Number|否|1643251533306|报价有效期,时间戳毫秒值|  
1113 -|operateTime|Number|是|1643251533306|操作时间戳|  
1114 -**返回示例** 673 +###### Body参数
1115 674
  675 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  676 +| ----------------- | ------ | -------------------------- | ------------- | ------------------------ |
  677 +| code | String | 是 | 220101000001 | 则一订单号 |
  678 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  679 +| quoteId | String | 是 | 1a2111bacd56 | 报价id,报价唯一标识 |
  680 +| quotePrice | Number | 是 | 10000 | 报价金额 |
  681 +| contactName | String | 否 | 张三 | 报价联系人 |
  682 +| contactMobile | String | 否 | 18801000000 | 报价联系电话 |
  683 +| quoteInvalidTime | Number | 否 | 1643251533306 | 报价有效期,时间戳毫秒值 |
  684 +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 |
1116 685
  686 +###### 返回示例
1117 687
  688 +```json
1118 { 689 {
  690 + "success": true,
  691 + "businessException": false,
  692 + "errorCode": null,
  693 + "message": null,
  694 + "result": {
  695 + "code": "则一订单号",
  696 + "customerOrderCode": "客户订单号"
  697 + }
  698 +}
  699 +```
1119 700
1120 -`    `"success": true,  
1121 -  
1122 -`    `"businessException": false,  
1123 -  
1124 -`    `"errorCode": null,  
1125 -  
1126 -`    `"message": null,  
1127 -  
1128 -`    `"result": {  
1129 -  
1130 -`        `"code": "则一订单号",  
1131 -  
1132 -`        `"customerOrderCode": "客户订单号"  
1133 -  
1134 -`   `}  
1135 701
1136 -}  
1137 702
1138 -**接单接口** 703 +#### 接单接口
1139 704
1140 -**接口信息** 705 +##### 接口信息
1141 706
1142 -**概述** 707 +###### 概述
1143 708
1144 则一调用该接口推送运单号及参考运费范围。 709 则一调用该接口推送运单号及参考运费范围。
1145 710
1146 -**请求方式:** 711 +###### 请求方式:
1147 712
1148 post 713 post
1149 714
1150 -**请求路径:** 715 +###### 请求路径:
1151 716
1152 /receiveOrder 717 /receiveOrder
1153 718
1154 -**Body参数**  
1155 -  
1156 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
1157 -| :- | :- | :- | :- | :- |  
1158 -|code|String|是|220101000001|则一订单号|  
1159 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
1160 -|startTotalPrice|Number|是|18100|参考总金额起始值|  
1161 -|endTotalPrice|Number|是|21000|参考总金额结束值|  
1162 -|WaybillList|Waybill[]|是| |运单集合|  
1163 -|`    `waybillCode|String|是|Y220101000001|则一运单号|  
1164 -|`    `startPrice|Number|是|18100|参考金额起始值|  
1165 -|`    `endPrice|Number|是|21000|参考金额结束值|  
1166 -|`    `vanType|String|是|MOTOR\_VAN|厢型|  
1167 -|`    `specification|String|是|9.6|车型|  
1168 -**返回示例** 719 +###### Body参数
1169 720
  721 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  722 +| -------------------------------- | --------- | -------------------------- | ------------- | ------------------------ |
  723 +| code | String | 是 | 220101000001 | 则一订单号 |
  724 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  725 +| startTotalPrice | Number | 是&nbsp;&nbsp;&nbsp; | 18100 | 参考总金额起始值 |
  726 +| endTotalPrice | Number | 是&nbsp;&nbsp;&nbsp; | 21000 | 参考总金额结束值 |
  727 +| WaybillList | Waybill[] | 是 | | 运单集合 |
  728 +| &nbsp;&nbsp;&nbsp; waybillCode | String | 是 | Y220101000001 | 则一运单号 |
  729 +| &nbsp;&nbsp;&nbsp; startPrice | Number | 是 | 18100 | 参考金额起始值 |
  730 +| &nbsp;&nbsp;&nbsp; endPrice | Number | 是 | 21000 | 参考总金额结束值 |
  731 +| &nbsp;&nbsp;&nbsp; vanType | String | 是 | MOTOR_VAN | 厢型 |
  732 +| &nbsp;&nbsp;&nbsp; specification | String | 是 | 9.6 | 车型 |
1170 733
  734 +###### 返回示例
1171 735
  736 +```json
1172 { 737 {
  738 + "success": true,
  739 + "businessException": false,
  740 + "errorCode": null,
  741 + "message": null,
  742 + "result": {
  743 + "code": "则一订单号",
  744 + "customerOrderCode": "客户订单号"
  745 + }
  746 +}
  747 +```
1173 748
1174 -`    `"success": true,  
1175 -  
1176 -`    `"businessException": false,  
1177 -  
1178 -`    `"errorCode": null,  
1179 -  
1180 -`    `"message": null,  
1181 -  
1182 -`    `"result": {  
1183 -  
1184 -`        `"code": "则一订单号",  
1185 -  
1186 -`        `"customerOrderCode": "客户订单号"  
1187 -  
1188 -`   `}  
1189 749
1190 -}  
1191 750
1192 751
1193 752
1194 -**推送司机车辆信息** 753 +#### 推送司机车辆信息
1195 754
1196 -**接口信息** 755 +##### 接口信息
1197 756
1198 -**概述** 757 +###### 概述
1199 758
1200 则一调用该接口推送订单司机和车辆信息,可以进行多次推送,以操作时间戳最新一次推送的司机车辆信息为准。 759 则一调用该接口推送订单司机和车辆信息,可以进行多次推送,以操作时间戳最新一次推送的司机车辆信息为准。
1201 760
1202 -**请求方式:** 761 +###### 请求方式:
1203 762
1204 post 763 post
1205 764
1206 -**请求路径:** 765 +###### 请求路径:
1207 766
1208 /assignVehicle 767 /assignVehicle
1209 768
1210 -**Body参数**  
1211 -  
1212 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
1213 -| :- | :- | :- | :- | :- |  
1214 -|code|String|是|220101000001|则一订单号|  
1215 -|waybillCode|String|是|Y220101000001|则一运单号|  
1216 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
1217 -|driverName|String|是|张三|司机姓名|  
1218 -|driverMobile|String|是|18801000000|司机手机号|  
1219 -|licenseNumber|String|是|沪DP2312|车牌号|  
1220 -|trailerLicenseNumber|String|否|陕K7C72挂|挂车车牌号|  
1221 -|operateTime|Number|是|1643251533306|操作时间戳|  
1222 -|weight|Number|否|200000|重量|  
1223 -|volume|Number|否|16|体积|  
1224 -**返回示例** 769 +###### Body参数
1225 770
  771 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  772 +| -------------------- | ------ | -------------------------- | ------------- | ------------------------ |
  773 +| code | String | 是 | 220101000001 | 则一订单号 |
  774 +| waybillCode | String | 是&nbsp; | Y220101000001 | 则一运单号 |
  775 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  776 +| driverName | String | 是 | 张三 | 司机姓名 |
  777 +| driverMobile | String | 是 | 18801000000 | 司机手机号 |
  778 +| licenseNumber | String | 是 | 沪DP2312 | 车牌号 |
  779 +| trailerLicenseNumber | String | 否 | 陕K7C72挂 | 挂车车牌号 |
  780 +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 |
  781 +| weight | Number | 否 | 200000 | 重量 |
  782 +| volume | Number | 否 | 16 | 体积 |
1226 783
  784 +###### 返回示例
1227 785
  786 +```json
1228 { 787 {
1229 -  
1230 -`    `"success": true,  
1231 -  
1232 -`    `"businessException": false,  
1233 -  
1234 -`    `"errorCode": null,  
1235 -  
1236 -`    `"message": null,  
1237 -  
1238 -`    `"result": {  
1239 -  
1240 -`        `"code": "则一订单号",  
1241 -  
1242 -`        `"customerOrderCode": "客户订单号"  
1243 -  
1244 -`   `}  
1245 - 788 + "success": true,
  789 + "businessException": false,
  790 + "errorCode": null,
  791 + "message": null,
  792 + "result": {
  793 + "code": "则一订单号",
  794 + "customerOrderCode": "客户订单号"
  795 + }
1246 } 796 }
  797 +```
1247 798
1248 799
1249 800
1250 -**推送发车信息** 801 +#### 推送发车信息
1251 802
1252 -**接口信息** 803 +##### 接口信息
1253 804
1254 -**概述** 805 +###### 概述
1255 806
1256 则一调用该接口推送发车运输数据。 807 则一调用该接口推送发车运输数据。
1257 808
1258 -**请求方式:** 809 +###### 请求方式:
1259 810
1260 post 811 post
1261 812
1262 -**请求路径:** 813 +###### 请求路径:
1263 814
1264 /departVehicle 815 /departVehicle
1265 816
1266 -**Body参数**  
1267 -  
1268 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
1269 -| :- | :- | :- | :- | :- |  
1270 -|code|String|是|220101000001|则一订单号|  
1271 -|waybillCode|String|是|Y220101000001|则一运单号|  
1272 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
1273 -|departTime|Number|是|1643251533306|发车时间戳|  
1274 -|operateTime|Number|是|1643251533306|操作时间戳|  
1275 -|weight|Number|否|200000|重量|  
1276 -|volume|Number|否|16|体积|  
1277 -**返回示例** 817 +###### Body参数
1278 818
  819 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  820 +| ----------------- | ------ | -------------------------- | ------------- | ------------------------ |
  821 +| code | String | 是 | 220101000001 | 则一订单号 |
  822 +| waybillCode | String | 是&nbsp;&nbsp; | Y220101000001 | 则一运单号 |
  823 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  824 +| departTime | Number | 是 | 1643251533306 | 发车时间戳 |
  825 +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 |
  826 +| weight | Number | 否 | 200000 | 重量 |
  827 +| volume | Number | 否 | 16 | 体积 |
1279 828
  829 +###### 返回示例
1280 830
  831 +```json
1281 { 832 {
1282 -  
1283 -`    `"success": true,  
1284 -  
1285 -`    `"businessException": false,  
1286 -  
1287 -`    `"errorCode": null,  
1288 -  
1289 -`    `"message": null,  
1290 -  
1291 -`    `"result": {  
1292 -  
1293 -`        `"code": "则一订单号",  
1294 -  
1295 -`        `"customerOrderCode": "客户订单号"  
1296 -  
1297 -`   `}  
1298 - 833 + "success": true,
  834 + "businessException": false,
  835 + "errorCode": null,
  836 + "message": null,
  837 + "result": {
  838 + "code": "则一订单号",
  839 + "customerOrderCode": "客户订单号"
  840 + }
1299 } 841 }
  842 +```
1300 843
1301 -**推送到车信息** 844 +#### 推送到车信息
1302 845
1303 -**接口信息** 846 +##### 接口信息
1304 847
1305 -**概述** 848 +###### 概述
1306 849
1307 则一调用该接口推送到达数据。 850 则一调用该接口推送到达数据。
1308 851
1309 -**请求方式:** 852 +###### 请求方式:
1310 853
1311 post 854 post
1312 855
1313 -**请求路径:** 856 +###### 请求路径:
1314 857
1315 /arriveVehicle 858 /arriveVehicle
1316 859
1317 -**Body参数**  
1318 -  
1319 -|**名称**|**类型**|**必填**|**示例值**|**描述**|  
1320 -| :- | :- | :- | :- | :- |  
1321 -|code|String|是|220101000001|则一订单号|  
1322 -|waybillCode|String|是|Y220101000001|则一运单号|  
1323 -|customerOrderCode|String|是    |220101000001|客户订单号,订单唯一标识|  
1324 -|arriveTime|Number|是|1643251533306|到车时间戳|  
1325 -|operateTime|Number|是|1643251533306|操作时间戳|  
1326 -**返回示例** 860 +###### Body参数
1327 861
  862 +| 名称 | 类型 | 必填 | 示例值 | 描述 |
  863 +| ----------------- | ------ | -------------------------- | ------------- | ------------------------ |
  864 +| code | String | 是 | 220101000001 | 则一订单号 |
  865 +| waybillCode | String | 是&nbsp;&nbsp;&nbsp; | Y220101000001 | 则一运单号 |
  866 +| customerOrderCode | String | 是&nbsp;&nbsp;&nbsp;&nbsp; | 220101000001 | 客户订单号,订单唯一标识 |
  867 +| arriveTime | Number | 是 | 1643251533306 | 到车时间戳 |
  868 +| operateTime | Number | 是 | 1643251533306 | 操作时间戳 |
1328 869
  870 +###### 返回示例
1329 871
  872 +```json
1330 { 873 {
1331 -  
1332 -`    `"success": true,  
1333 -  
1334 -`    `"businessException": false,  
1335 -  
1336 -`    `"errorCode": null,  
1337 -  
1338 -`    `"message": null,  
1339 -  
1340 -`    `"result": {  
1341 -  
1342 -`        `"code": "则一订单号",  
1343 -  
1344 -`        `"customerOrderCode": "客户订单号"  
1345 -  
1346 -`   `}  
1347 - 874 + "success": true,
  875 + "businessException": false,
  876 + "errorCode": null,
  877 + "message": null,
  878 + "result": {
  879 + "code": "则一订单号",
  880 + "customerOrderCode": "客户订单号"
  881 + }
1348 } 882 }
  883 +```
1349 884
1350 -**Java-sdk下载** 885 +### Java-sdk下载
1351 886
1352 [zy-java-sdk](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar) 887 [zy-java-sdk](https://zeyi-tms-product.oss-cn-hangzhou.aliyuncs.com/file/jar/java-sdk/zy-java-sdk-1.0.0.jar)
1353 888
1354 889
1355 890
1356 -**2022-03-09更新日志** 891 +### 2022-03-09更新日志
1357 892
1358 为了保证接口的通用性,本次涉及到改动的信息如下 893 为了保证接口的通用性,本次涉及到改动的信息如下
1359 894
1360 -1. [下单](#下单): 接口返回值移除子单集合,通过接单接口推送。  
1361 -1. [接单接口](#接单接口):由推送参考价改为接单接口,推送运单集合及每个运单的参考价格。  
1362 -1. 对接接口中子单号subCode参数命名更改为运单号waybillCode。  
1363 -  
1364 - 895 +1. [下单](http://open-doc.shjiuze.cn/order.html#下单): 接口返回值移除子单集合,通过接单接口推送。
  896 +2. [接单接口](http://open-doc.shjiuze.cn/order.html#接单接口):由推送参考价改为接单接口,推送运单集合及每个运单的参考价格。
  897 +3. 对接接口中子单号subCode参数命名更改为运单号waybillCode。
1365 \ No newline at end of file 898 \ No newline at end of file