上面的代碼就是通過(guò)java代碼調(diào)用kuaidi100的查詢接口,這個(gè)查詢接口會(huì)通過(guò)快遞單號(hào)自動(dòng)識(shí)別快遞是屬于哪個(gè)快遞公司 , 然后調(diào)用對(duì)應(yīng)快遞公司接口獲取響應(yīng)數(shù)據(jù) 。付費(fèi)購(gòu)買接口使用權(quán)其實(shí)就是生成一個(gè)授權(quán)key和實(shí)時(shí)查詢公司編號(hào)customer,在線調(diào)用會(huì)做身份認(rèn)證 。這樣就可以獲取快遞信息的json數(shù)據(jù)了 。我已經(jīng)購(gòu)買了100塊大洋的接口使用權(quán),大家可直接調(diào)用快遞查詢接口 。
controller代碼 快遞信息增刪查改的controller就不在列了,這里主要看下我對(duì)查詢快遞的接口進(jìn)行了一次包裝處理 。代碼如下:
@RestControllerpublic class KuaiDiQueryController {@Autowiredprivate KuaiDiService kuaiDiService;@Autowiredprivate KuaiDiQueryService kuaiDiQueryService;/*** 返回json數(shù)據(jù)* @param com* @param no* @return*/@GetMapping("/getKuaiDiInfoByJson")@ResponseBodypublic String queryKuadiInfoByJson(String com, String no) {return kuaiDiQueryService.synQueryData(com, no,"", "", "", 0);}@GetMapping("/getKuaiDiInfoByPhone")@ResponseBodypublic Response queryKuaidiByPhone(String phone){Response response = new Response();if(StringUtils.isNotEmpty(phone)){List<ResponseData> responseDataList = new ArrayList<>();//1.通過(guò)手機(jī)號(hào)查詢下面的所有訂單號(hào)List<KuaiDi> kuaiDiList = kuaiDiService.getList("", phone);if(!CollectionUtils.isEmpty(kuaiDiList)){kuaiDiList.forEach(kuaiDi -> {//2.依次查出所有的訂單號(hào)String responseDataStr = kuaiDiQueryService.synQueryData(kuaiDi.getCompany(), kuaiDi.getKuaidiNo(),"", "", "", 0);ResponseData responseData = https://www.bjxdyg.com/baike/CommonUtils.convertJsonStr2Object(responseDataStr);responseDataList.add(responseData);});}// 3.組裝數(shù)據(jù)返回給前臺(tái)response.setDataList(responseDataList);}return response;}}2.3前端開(kāi)發(fā)前端展示主要包括兩個(gè)頁(yè)面,管理員頁(yè)面和客戶頁(yè)面 。管理員頁(yè)面功能包括快遞信息的新增,修改,刪除,分頁(yè)查詢,在線快遞物流信息接口 ??蛻繇?yè)面包括快遞信息的分頁(yè)查詢和在線快遞物流信息接口 。所以主要看一下管理員頁(yè)面 。
html頁(yè)面 html頁(yè)面引入了jQuery和Bootstrap , jQuery已經(jīng)過(guò)時(shí)了,但是使用起來(lái)還是很方便的 。
<html><head><title>快遞單號(hào)查詢</title><script src=https://www.bjxdyg.com/baike/"https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js">...快遞單號(hào)自助查詢
