`
zheyiw
  • 浏览: 1017120 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

菜鸟电子面单获取教程

    博客分类:
  • C#
 
阅读更多

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using Top.Api;
using Top.Api.Request;
using Top.Api.Response;

namespace FormTest
{
    public partial class Form1 : Form
    {
//以下四个值是在菜鸟开通电子面单服务后得到
        string serverUrl = "xxxx";
        string appKey = "xxxx";
        string appSecret = "xxxx";
        string sessionKey = "xxxx";

        List<string> tradeOrderList;

        public Form1()
        {
            InitializeComponent();
        }

//测试
        private void button1_Click(object sender, EventArgs e)
        {
            //第一步 获取到用户ID,
            //对应接口: taobao.user.seller.get (查询卖家用户信息)
            long UserID = UserSellerGet(); 
            //第二步 获取到发件人信息(取快递单必须用这个地址设置),
            //对应接口: cainiao.waybill.ii.search (查询面单服务订购及面单使用情况)
            CainiaoWaybillIiSearchResponse SenderInfo = WaybillIiSearch();
            //第三部 获取快递单号
            //对应接口: cainiao.waybill.ii.get (电子面单云打印接口)
            GetWaybill(SenderInfo, UserID);
        }

        //获取UserID
        public long UserSellerGet()
        {
            ITopClient client = new DefaultTopClient(serverUrl, appKey, appSecret);
            UserSellerGetRequest req = new UserSellerGetRequest();
            req.Fields = "user_id,nick,sex";
            UserSellerGetResponse rsp = client.Execute(req, sessionKey);
            long UserID = rsp.User.UserId;
            Console.WriteLine(rsp.Body);
            return UserID;
        }

        //查询商家电子面单开通信息, 主要是为了去地址信息
        public CainiaoWaybillIiSearchResponse WaybillIiSearch()
        {
            ITopClient client = new DefaultTopClient(serverUrl, appKey, appSecret);
            CainiaoWaybillIiSearchRequest req = new CainiaoWaybillIiSearchRequest();
            //req.CpCode = "YUNDA";
            CainiaoWaybillIiSearchResponse rsp = client.Execute(req, sessionKey);
            Console.WriteLine(rsp.Body);
            return rsp;
        }

        //获取面单号
        public void GetWaybill(CainiaoWaybillIiSearchResponse SenderInfo, long UserID)
        {
            ITopClient client = new DefaultTopClient(serverUrl, appKey, appSecret);
            CainiaoWaybillIiGetRequest req = new CainiaoWaybillIiGetRequest();
            CainiaoWaybillIiGetRequest.WaybillCloudPrintApplyNewRequestDomain obj1 = new CainiaoWaybillIiGetRequest.WaybillCloudPrintApplyNewRequestDomain();
            obj1.CpCode = "YUNDA";
            //obj1.ProductCode = "";
            CainiaoWaybillIiGetRequest.UserInfoDtoDomain obj2 = new CainiaoWaybillIiGetRequest.UserInfoDtoDomain();
            CainiaoWaybillIiGetRequest.AddressDtoDomain obj3 = new CainiaoWaybillIiGetRequest.AddressDtoDomain();
            obj3.City = "xx从SenderInfo中获取xx";
            obj3.Detail = "xx从SenderInfo中获取xx";
            obj3.District = "xx从SenderInfo中获取xx";
            obj3.Province = "xx从SenderInfo中获取xx;
            obj3.Town = "";
            obj2.Address = obj3;
            obj2.Mobile = "xxxxxx";
            obj2.Name = "xxxx";
            obj2.Phone = "";
            obj1.Sender = obj2;
            List<CainiaoWaybillIiGetRequest.TradeOrderInfoDtoDomain> list5 = new List<CainiaoWaybillIiGetRequest.TradeOrderInfoDtoDomain>();
            CainiaoWaybillIiGetRequest.TradeOrderInfoDtoDomain obj6 = new CainiaoWaybillIiGetRequest.TradeOrderInfoDtoDomain();
            list5.Add(obj6);
            obj6.LogisticsServices = "";
            obj6.ObjectId = UserID + "";   // 商家的UserID
            CainiaoWaybillIiGetRequest.OrderInfoDtoDomain obj7 = new CainiaoWaybillIiGetRequest.OrderInfoDtoDomain();
            obj7.OrderChannelsType = "TB";

            tradeOrderList = new List<string>();
            tradeOrderList.Add("PU1710121-001");
            obj7.TradeOrderList = tradeOrderList;
            obj6.OrderInfo = obj7;
            CainiaoWaybillIiGetRequest.PackageInfoDtoDomain obj8 = new CainiaoWaybillIiGetRequest.PackageInfoDtoDomain();
            obj8.Id = "1";
            List<CainiaoWaybillIiGetRequest.ItemDomain> list10 = new List<CainiaoWaybillIiGetRequest.ItemDomain>();
            CainiaoWaybillIiGetRequest.ItemDomain obj11 = new CainiaoWaybillIiGetRequest.ItemDomain();
            list10.Add(obj11);
            obj11.Count = 1L;
            obj11.Name = "衣服";
            obj8.Items = list10;
            obj8.Volume = 1L;
            obj8.Weight = 1L;
            obj6.PackageInfo = obj8;
            CainiaoWaybillIiGetRequest.UserInfoDtoDomain obj12 = new CainiaoWaybillIiGetRequest.UserInfoDtoDomain();
            CainiaoWaybillIiGetRequest.AddressDtoDomain obj13 = new CainiaoWaybillIiGetRequest.AddressDtoDomain();
            obj13.City = "xxxxxx市";
            obj13.Detail = "测试详细地址";
            obj13.District = "xx区";
            obj13.Province = "xxxxxxxxx";
            obj13.Town = "";
            obj12.Address = obj13;
            obj12.Mobile = "xxxxxxxxx";
            obj12.Name = "xxxxxxxxxxxx";
            obj12.Phone = "xxxxxxxxx";
            obj6.Recipient = obj12;
            obj6.TemplateUrl = "http://cloudprint.cainiao.com/cloudprint/template/getStandardTemplate.json?template_id=1001";
            obj6.UserId = 12L;
            obj1.TradeOrderInfoDtos = list5;
            obj1.StoreCode = "";
            obj1.ResourceCode = "DISTRIBUTOR_978324";
            obj1.DmsSorting = false;
            req.ParamWaybillCloudPrintApplyNewRequest_ = obj1;
            CainiaoWaybillIiGetResponse rsp = client.Execute(req, sessionKey);
            Console.WriteLine(rsp.Body);

            string WaybillCode = rsp.Modules[0].WaybillCode;
        }

    }
}



分享到:
评论

相关推荐

    菜鸟电子面单接口+js云打印+C#云打印.zip

    菜鸟电子面单,c#对接源码 1.审核通过后可以进行测试 2.首先调用电子面单订购查询接口,查询商家发货地址,及面单信息 3.调用取号接口,进行电子面单取号。 4.根据取号结果调用本地打印机,进行打印。

    菜鸟电子面单操作手册(快递助手)(3).pdf

    菜鸟电子面单是由菜鸟网络推出的一种物流信息化解决方案,旨在通过电子化的单据来提升物流配送的效率和服务质量。该系统允许商家直接在淘宝后台进行一系列操作,包括绑定与快递网点的合作关系、打印面单、管理发货...

    电子面单接入手册1

    《电子面单接入手册1》是一份详细指导电商用户如何开通和使用淘宝电子面单服务的文档。本文档旨在帮助商家实现订单信息自动化处理,提高物流效率。 1. 数据导入: - 1.1 说明:在进行打印操作前,必须先将商户的...

    菜鸟物流云平台商家创建电子面单 .docx

    - **易于跟踪**:电子面单通常会包含二维码或条形码,方便快递员扫描快速获取包裹信息,同时便于消费者追踪包裹状态。 #### 四、总结 菜鸟物流云平台为商家提供了便捷的电子面单创建服务,通过简单的几步操作即可...

    菜鸟面单模板工具2.0(20191028)_菜鸟面单模板工具_

    在电子商务行业中,物流配送是至关重要的一环,而面单作为物流信息的重要载体,其打印质量和效率直接影响到发货速度和服务质量。为此,开发者们设计了各种面单模板工具,以帮助商家更高效地完成面单制作。本文将详细...

    Python3菜鸟教程离线版20200914(含完整菜鸟教程网页及CHM版文档)

    菜鸟教程网站上的Python3教程还挺详细,想在没有网络的电脑上离线看但是发现网上没有资源,只有老版本的PDF文档,实在不方便阅读,所以自己做了一个,Python3菜鸟教程离线版内部包含20200914保存的完整离线版教程...

    菜鸟打印组件(CaiNiaoPrint)v1.0.4632位官方免费版

    CaiNiaoPrint菜鸟打印组件是一款针对淘宝卖家的打印辅助软件,菜鸟打印控件基于浏览器,汇集了丰富的电子面单模板,并且自动进行更新,帮助用户快速出单,告别传统手写快递单的过程,高效且实用,需要此款工具的朋友...

    飞豆快递单打印软件

    线下电子面单版适合除了普通面单外线下有电子面单(热敏面单)打印需要的用户使用(不支持淘宝、菜鸟电子面单,需要事先在快递公司申请电子面单账号),请您根据实际点击上面的下载链接下载不同的版本体验。...

    Git超级教程菜鸟教程

    Git超级教程菜鸟教程Git超级教程菜鸟教程Git超级教程菜鸟教程Git超级教程菜鸟教程Git超级教程菜鸟教程Git超级教程菜鸟教程Git超级教程菜鸟教程Git超级教程菜鸟教程

    菜鸟教程Python3.pdf

    菜鸟教程中关于Python3的介绍适合初学者入门,涵盖了Python3的基础语法,包括但不限于变量的使用、基本数据类型、运算符、控制流程(条件判断和循环)、函数的定义与使用、类与对象以及模块的使用等。 编写Python3...

    菜鸟教程网移动端教程PDF

    《菜鸟教程网移动端教程PDF》是一份集合了多种移动端开发技术的综合教程,旨在帮助初学者快速入门并掌握移动应用的开发技能。这份资源包含了Android、Swift、jQuery Mobile以及ionic等多个热门平台和技术的教程,是...

    菜鸟T7刷机教程(初版)

    菜鸟T7刷机教程(初版)菜鸟T7刷机教程(初版)菜鸟T7刷机教程(初版)

    菜鸟教程 sql教程

    SQL教程是学习数据库管理和数据分析的基础,尤其对于初学者,"菜鸟教程的SQL教程"是一个很好的入门资源。 在SQL教程中,你将学习到以下关键概念: 1. 数据库基础:首先,你会了解到什么是数据库,以及常见的关系型...

    python菜鸟教程python基础教程.pdf

    爬虫工程师通过编写Python脚本来抓取互联网上的信息,获取结构化的数据,用于市场研究、竞争对手分析或者内容聚合等目的。 此外,Python在机器学习和人工智能领域的地位不可忽视。Python库如Scikit-learn、...

    常用web开发工具 w3cschool菜鸟教程20141021

    常用web开发工具 w3cschool菜鸟教程20141021常用web开发工具 w3cschool菜鸟教程20141021常用web开发工具 w3cschool菜鸟教程20141021常用web开发工具 w3cschool菜鸟教程20141021常用web开发工具 w3cschool菜鸟教程...

    python菜鸟教程.pdf

    Python是一种高级编程语言,以其简洁明了的语法和强大的功能而受到广泛的欢迎,尤其适合初学者入门。在Python中,基础语法是学习的关键,这里我们深入探讨一下。 1. **字符串**: - 在Python 2.7中,你可以使用单...

    java菜鸟教程_JAVA菜鸟教程_

    【Java菜鸟教程】是针对初学者精心编写的教程,旨在帮助新手快速掌握Java编程语言的基础知识。本教程全面覆盖了Java的核心概念和技术,是学习Java编程的理想起点。 首先,Java是一种面向对象的编程语言,由Sun ...

    python3.0菜鸟教程.zip

    以下是一些关键的知识点,它们在 "www.runoob.com" 提供的菜鸟教程中应该有所涵盖: 1. **基础语法**: - **变量与数据类型**:Python 支持整型(int)、浮点型(float)、字符串(str)、布尔型(bool)等基本...

    actionScript菜鸟教程

    应群众要求,放出ActionScript菜鸟教程电子版.应群众要求,放出ActionScript菜鸟教程电子版.应群众要求,放出ActionScript菜鸟教程电子版.应群众要求,放出ActionScript菜鸟教程电子版.应群众要求,放出ActionScript菜鸟...

Global site tag (gtag.js) - Google Analytics