JAVA示例-1分鐘對接35家主流快遞公司的電子面單
阿新 • • 發佈:2021-07-14
電子面單API產品介紹
電子面單服務提供了獲取物流單號、列印電子面單的功能,滿足企業的快速打單、回傳物流單號的需求。一步對接淘寶/菜鳥/拼多多/京東等電商平臺的電子面單
1. 電子面單列印介面
本介面支援列印電子面單,支援30+快遞公司面單列印。商家需向當地快遞公司的網點申請電子面單賬號/月結賬號,或者通過淘寶/菜鳥/拼多多/京東第三方授權使用月結賬號。
本介面需要使用快遞100的列印裝置進行列印。若商家沒有印表機,可以使用快遞100的雲印表機進行列印,若商家已經有印表機,需要連線快遞100雲盒進行列印。
本介面支援快遞公司面單模板的選擇及自定義修改,支援遠端列印及多人多部門列印。
2. 電子面單圖片介面
本介面支援生成電子面單圖片。商家需向當地快遞公司的網點申請電子面單賬號/月結賬號,或者通過淘寶/菜鳥/拼多多/京東第三方授權使用月結賬號。生成圖片後,商家可以通過本地印表機進行列印。
本介面支援快遞公司面單模板的選擇及自定義修改。
3. 電子面單HTML介面
本介面支援生成電子面單的HTML頁面。商家需向當地快遞公司的網點申請電子面單賬號/月結賬號,或者淘寶/菜鳥/拼多多/京東第三方授權使用月結賬號。該頁面展示面單的模板不能選擇,是面單的固定模板。商家可以通過本地印表機列印生成頁面。
4. 支援的快遞公司列表
電子面單API支援30+家快遞公司網點面單列印、主流電商平臺(淘寶、京東、拼多多)面單列印以及國際快遞公司面單列印。具體列表清檢視引數字典
/** * 電子面單圖片介面 */ @Test public void testPrintImg() throws Exception{ PrintImgParam printImgParam = new PrintImgParam(); printImgParam.setKuaidicom(CompanyConstant.ZJS); printImgParam.setSendManName("張三"); printImgParam.setSendManMobile("15999566666"); printImgParam.setSendManPrintAddr("廣東省深圳市南山區科技南十二路"); printImgParam.setRecManName("李四"); printImgParam.setRecManMobile("15999566666"); printImgParam.setRecManPrintAddr("北京市海淀區xxx路"); printImgParam.setType("10"); printImgParam.setTempid("180c7c8f646742ca871a92c976392b05"); printImgParam.setCount("1"); String param = new Gson().toJson(printImgParam); String t = System.currentTimeMillis() + ""; String sign = SignUtils.printSign(param,t,key,secret); PrintReq printReq = new PrintReq(); printReq.setKey(key); printReq.setMethod(ApiInfoConstant.ELECTRONIC_ORDER_PIC_METHOD); printReq.setSign(sign); printReq.setParam(param); printReq.setT(t); IBaseClient printImg = new PrintImg(); System.out.println(printImg.execute(printReq)); } /** * 電子面單html介面 */ @Test public void testPrintHtml() throws Exception{ ManInfo recManInfo = new ManInfo(); recManInfo.setName("張三"); recManInfo.setMobile("15999566666"); recManInfo.setPrintAddr("廣東省深圳市南山區科技南十二路"); ManInfo sendManInfo = new ManInfo(); sendManInfo.setName("李四"); sendManInfo.setMobile("15999566666"); sendManInfo.setPrintAddr("北京市海淀區xxx路"); PrintHtmlParam printHtmlParam = new PrintHtmlParam(); printHtmlParam.setKuaidicom(CompanyConstant.ZJS); printHtmlParam.setCount(2); printHtmlParam.setNeedChild(1); //如果需要返回電子面單,需要設定 printHtmlParam.setNeedTemplate("1"); printHtmlParam.setSendMan(sendManInfo); printHtmlParam.setRecMan(recManInfo); String t = System.currentTimeMillis() + ""; String param = new Gson().toJson(printHtmlParam); String sign = SignUtils.printSign(param,t,key,secret); PrintReq printReq = new PrintReq(); printReq.setKey(key); printReq.setMethod(ApiInfoConstant.ELECTRONIC_ORDER_HTML_METHOD); printReq.setT(t); printReq.setSign(sign); printReq.setParam(param); IBaseClient printHtml = new PrintHtml(); System.out.println(printHtml.execute(printReq)); } /** * 電子面單列印 */ @Test public void testPrintCloud() throws Exception{ ManInfo recManInfo = new ManInfo(); recManInfo.setName("張三"); recManInfo.setMobile("15999566666"); recManInfo.setPrintAddr("廣東省深圳市南山區科技南十二路"); ManInfo sendManInfo = new ManInfo(); sendManInfo.setName("李四"); sendManInfo.setMobile("15999566666"); sendManInfo.setPrintAddr("北京市海淀區xxx路"); PrintCloudParam printCloudParam = new PrintCloudParam(); printCloudParam.setKuaidicom(CompanyConstant.ZJS); printCloudParam.setCount("1"); printCloudParam.setSiid(siid); printCloudParam.setTempid("180c7c8f646742ca871a92c976392b05"); printCloudParam.setSendMan(sendManInfo); printCloudParam.setRecMan(recManInfo); String param = new Gson().toJson(printCloudParam); String t = System.currentTimeMillis() + ""; PrintReq printReq = new PrintReq(); printReq.setT(t); printReq.setKey(key); printReq.setMethod(ApiInfoConstant.ELECTRONIC_ORDER_PRINT_METHOD); printReq.setSign(SignUtils.printSign(param,t,key,secret)); printReq.setParam(param); IBaseClient baseClient = new PrintCloud(); System.out.println(baseClient.execute(printReq)); } /** * 雲列印自定義 */ @Test public void testCloudCustom() throws Exception{ CloudPrintCustomParam cloudPrintCustomParam = new CloudPrintCustomParam(); cloudPrintCustomParam.setSiid(siid); cloudPrintCustomParam.setCallBackUrl("http://www.baidu.com"); cloudPrintCustomParam.setTempid("180c7c8f646742ca871a92c976392b05"); String t = System.currentTimeMillis() + ""; String param = new Gson().toJson(cloudPrintCustomParam); PrintReq printReq = new PrintReq(); printReq.setKey(key); printReq.setMethod(ApiInfoConstant.CLOUD_PRINT_CUSTOM_METHOD); printReq.setT(t); printReq.setSign(SignUtils.printSign(param,t,key,secret)); printReq.setParam(param); IBaseClient baseClient = new CloudPrintCustom(); System.out.println(baseClient.execute(printReq)); } /** * 雲列印附件 */ @Test public void testCloudAttachment() throws Exception{ CloudPrintAttachmentParam cloudPrintAttachmentParam = new CloudPrintAttachmentParam(); cloudPrintAttachmentParam.setSiid(siid); cloudPrintAttachmentParam.setCallBackUrl("http://www.baidu.com"); String t = System.currentTimeMillis() + ""; String param = new Gson().toJson(cloudPrintAttachmentParam); CloudAttachmentReq cloudPrintAttachmentReq = new CloudAttachmentReq(); cloudPrintAttachmentReq.setKey(key); cloudPrintAttachmentReq.setMethod(ApiInfoConstant.CLOUD_PRINT_ATTACHMENT_METHOD); cloudPrintAttachmentReq.setT(t); cloudPrintAttachmentReq.setSign(SignUtils.printSign(param,t,key,secret)); cloudPrintAttachmentReq.setParam(param); cloudPrintAttachmentReq.setFile(new File("C:\\Users\\Administrator.-20171106WFEKLN\\Desktop\\1.jpg")); IBaseClient baseClient = new CloudPrintAttachment(); System.out.println(baseClient.execute(cloudPrintAttachmentReq)); } /** * 復打 */ @Test public void testCloudPrintOld() throws Exception{ PrintReq printReq = new PrintReq(); CloudPrintOldParam cloudPrintOldParam = new CloudPrintOldParam(); cloudPrintOldParam.setTaskId("D21DB1AC74A260E6F5604FC43B4598B8"); String t = System.currentTimeMillis() + ""; String param = new Gson().toJson(cloudPrintOldParam); printReq.setKey(key); printReq.setMethod(ApiInfoConstant.CLOUD_PRINT_OLD_METHOD); printReq.setT(t); printReq.setSign(SignUtils.printSign(param,t,key,secret)); printReq.setParam(param); IBaseClient cloudPrintOld = new CloudPrintOld(); System.out.println(cloudPrintOld.execute(printReq)); }