43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
		
			
		
	
	
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
|  | <?php | ||
|  | 
 | ||
|  | namespace expressage; | ||
|  | use app\common\server\ConfigServer; | ||
|  | use Requests; | ||
|  | 
 | ||
|  | class Kdniao extends Expressage | ||
|  | { | ||
|  | 
 | ||
|  | 
 | ||
|  |     public function logistics($code, $number, $extra = "") | ||
|  |     { | ||
|  |         //$customer,付费的模式下,顺丰快递需要快递单号对应的寄件人或收件人的手机号后四位数字
 | ||
|  |         $request_daata = "{'OrderCode':'','ShipperCode':'$code','LogisticCode':'$number','CustomerName':'$extra'}"; | ||
|  | 
 | ||
|  |         $datas = array( | ||
|  |             'EBusinessID' => $this->app, | ||
|  |             'RequestType' => '1002', | ||
|  |             'RequestData' => urlencode($request_daata), | ||
|  |             'DataType' => '2', | ||
|  |         ); | ||
|  | 
 | ||
|  |         //快递鸟请求接口类型
 | ||
|  |         $request_type = ConfigServer::get('kdniao', 'type', 'free'); | ||
|  |         $search_url = 'https://api.kdniao.com/Ebusiness/EbusinessOrderHandle.aspx'; | ||
|  |         //为付费类型时调整请求指令
 | ||
|  |         if ($request_type == 'pay') { | ||
|  |             $datas['RequestType'] = '8001'; | ||
|  |         } | ||
|  | 
 | ||
|  |         $datas['DataSign'] = self::encrypt($request_daata, $this->key); | ||
|  | 
 | ||
|  |         $result = Requests::post($search_url,[], $datas); | ||
|  |         $result = json_decode($result->body,true); | ||
|  | 
 | ||
|  |         if(isset($result['Traces'])){ | ||
|  |             $this->logistics_info = $result['Traces']; | ||
|  |         } | ||
|  |         $this->error = json_encode($result, JSON_UNESCAPED_UNICODE); | ||
|  |         return false; | ||
|  |     } | ||
|  | 
 | ||
|  | } |