快递---快递鸟的电子面单取消操作-----------

简介: 近期在对接快递接口,公司使用了第三方快递接口获取快递数据,这边由于业务需求,有可能会对已取号的快递电子面单做出处理 为此自己东拉西扯总算完善了接口 当然 详细的明细还得各位有使用的朋友,自己去查看所提供的api -----------------------------------------...

近期在对接快递接口,公司使用了第三方快递接口获取快递数据,这边由于业务需求,有可能会对已取号的快递电子面单做出处理

为此自己东拉西扯总算完善了接口

当然 详细的明细还得各位有使用的朋友,自己去查看所提供的api

----------------------------------------------------------仅限数据未发货的快递电子面单

话不多直接上代码------------当然所能取消的快递的电子面单  是有限制的

 1 /// <summary>
 2     /// 取消已取号未拣货的运单
 3     /// </summary>
 4     public class ExpressOrderCancel
 5     {
 6         /// <summary>
 7         /// 快递公司编码
 8         /// </summary>
 9         public string ShipperCode { get; set; }
10         /// <summary>
11         /// 订单编号
12         /// </summary>
13         public string OrderCode { get; set; }
14         /// <summary>
15         /// 快递单号
16         /// </summary>
17         public string ExpNo { get; set; }
18 
19         /// <summary>
20         /// 电子面单客户号
21         /// </summary>
22         public string CustomerName { get; set; }
23         /// <summary>
24         /// 电子面单密码
25         /// </summary>
26         public string CustomerPwd { get; set; }
27     }
28 
29      /// <summary>
30         /// 取消电子面单---------------------------
31         /// </summary>
32         /// <param name="orderData"></param>
33         /// <returns></returns>
34         public ReturnOrderCancel orderCancelByJson(ExpressOrderCancel orderData)
35         {
36             orderData.CustomerName = CustomerName;//快递公司的账户ID
37             orderData.CustomerPwd = CustomerPwd;//快递公司的账户密码
38             orderData.ShipperCode = ExpressCode;//快递公司编码
39             string requestData = JsonConvert.SerializeObject(orderData);
40             Dictionary<string, string> param = new Dictionary<string, string>();
41             param.Add("RequestData", HttpUtility.UrlEncode(requestData, Encoding.UTF8));
42             param.Add("EBusinessID", EBusinessID);//快递鸟商户ID
43             param.Add("RequestType", "1147");
44             string dataSign = encrypt(requestData, AppKey, "UTF-8");
45             param.Add("DataSign", HttpUtility.UrlEncode(dataSign, Encoding.UTF8));
46             param.Add("DataType", "2");
47             string CelURL = "http://testapi.kdniao.cc:8081/Ebusiness/EbusinessOrderhandle.aspx";
48             string result = sendPost(CelURL, param);
49             try
50             {
51                 ReturnOrderCancel eorder = JsonConvert.DeserializeObject<ReturnOrderCancel>(result);
52                 return eorder;
53             }
54             catch (Exception)
55             {
56                 ReturnOrderCancel ere = JsonConvert.DeserializeObject<ReturnOrderCancel>(result);
57 
58                 return ere;
59             }
60         }

 

相关文章
|
存储 监控 API
oss教程
oss教程
1343 1
|
小程序 前端开发 安全
uniapp中解析markdown支持网页和小程序
对于`markdown`相信大家都不陌生,日常写文档或日常记录都用到的比较多,书写的是`markdown`的格式,实时预览的是转换后的`html`样式。本次实现的需求是在`uniapp`中转换`markdown`文本展示在不同的平台,主要平台是浏览器使用和微信小程序使用。
729 1
|
人工智能 前端开发 容器
【前端|CSS系列第4篇】CSS布局之网格布局
【前端|CSS系列第4篇】CSS布局之网格布局
570 0
|
人工智能
阿里云语音AI这个appkey怎么找
阿里云语音AI这个appkey怎么找?
2942 1
|
SQL 分布式计算 HIVE
Spark数据倾斜问题分析和解决
Spark数据倾斜问题分析和解决
221 0
|
数据可视化 小程序 程序员
uni-app 配置编译环境与动态修改manifest.json参数
uni-app 配置编译环境与动态修改manifest.json参数
2308 0
|
6月前
|
前端开发 JavaScript
CSS变量实战:动态主题切换技巧
CSS变量实战:动态主题切换技巧
328 81
|
存储 自然语言处理 索引
|
关系型数据库 MySQL 网络安全
宝塔面板忘记账号和密码的解决办法
宝塔面板忘记账号和密码的解决办法
Vue3项目打包时开启 Gzip 压缩和移动端调试时开启 vConsole 调试
本文介绍了如何在Vue3项目中配置开启Gzip压缩以减小打包文件体积,并在移动端调试时集成vConsole插件,同时使用webpack-bundle-analyzer插件进行打包分析。
838 0
Vue3项目打包时开启 Gzip 压缩和移动端调试时开启 vConsole 调试

热门文章

最新文章