true,//成功与否 // 'reason' => '',//错误原因 // 'status' => '1',//物流状态:0-无轨迹,1-已揽收, 2-在途中 201-到达派件城市,3-签收,4-问题件 // 'status_name' => '已揽收',//物流状态名称:0-无轨迹,1-已揽收, 2-在途中 201-到达派件城市,3-签收,4-问题件, // 'shipper_code' => 'SH',//快递公司编码 // 'logistic_code' => $code,//物流运单号 // 'list' => array( // [ // 'datetime' => '2015-03-08 01:15:00', // 'remark' => '离开广州市 发往北京市(经转)', // ] // ) // ); $express_company_model = new ExpressCompanyTemplate(); $company_info_result = $express_company_model->getExpressCompanyTemplateInfo([ [ 'company_id', '=', $company_id ] ]); if (empty($company_info_result[ 'data' ])) return $this->success([ 'success' => false, 'reason' => '物流公司信息不完整!' ]); $company_info_result[ 'data' ][ 'site_id' ] = $site_id; $result = $this->getTrace([ 'code' => $code, 'express_no_data' => $company_info_result[ 'data' ], 'mobile' => $mobile ]); if (empty($result)) { $data = [ 'success' => false, 'reason' => '抱歉,没有启用的物流方式' ]; return $this->success($data); } if ($result[ 'code' ] < 0 || empty($result[ 'data' ])) { $data = [ 'success' => false, 'reason' => $result['message'] ?? '抱歉,暂无物流记录' ]; return $this->success($data); } return $result; } public function getTrace($data) { $express_no_data = $data[ "express_no_data" ]; $kd100_model = new Kd100(); $kd100_config = $kd100_model->getKd100Config($express_no_data[ "site_id" ]); if ($kd100_config[ "data" ][ "is_use" ]) { $express_no = $express_no_data[ "express_no_kd100" ]; return $kd100_model->trace($data[ "code" ], $express_no, $data[ 'mobile' ], $express_no_data[ "site_id" ]); } $kdbird_model = new Kdbird(); $kdbird_config = $kdbird_model->getKdbirdConfig($express_no_data[ "site_id" ]); if ($kdbird_config[ "data" ][ "is_use" ]) { $express_no = $express_no_data[ "express_no" ]; return $kdbird_model->trace($data[ "code" ], $express_no, $express_no_data[ "site_id" ], $data[ 'mobile' ]); } } }