load->_model('Model_logic_order','logic_order'); $this->load->_model('Model_logic_tools','logic_tools'); $this->load->_model('Model_awlgx','awlgx'); $this->load->_model("Model_express","express"); } private $key = "6amgv!pnfrlbpnjgir"; //加密所需要到的key private $iv = "6ook4k!2w94m6jtm";//加密所需要到的iv //定义方法的调用规则 获取URI第二段值 public function _remap($arg,$arg_array) { if($arg == 'search') { $this->search($arg_array); }else{ $this->_a(); } } public function _a(){ die(); } /** * 搜索订单状态和快递信息接口 * @param $arg_array[0] string 请求店铺 * @param $arg_array[1] string 请求单号 */ public function search($arg_array){ $shop = isset($arg_array[0])?$arg_array[0]:""; $waybill_no = isset($arg_array[1])?$arg_array[1]:""; $time = isset($arg_array[2])?$arg_array[2]:0; $now_time = time(); if(strlen( $time."") != 10){ die($this->logic_tools->ret_json(-1,"参数异常")); } // if( $now_time - $time > 3){ // die($this->logic_tools->ret_json(-1,"该功能已禁用")); // } if(empty($shop)){ die($this->logic_tools->ret_json(-1,"请求店铺异常")); } $shop_key = $this->logic_tools->getshopname($shop); if(empty($shop_key)){ die($this->logic_tools->ret_json(-1,"该店铺的秘钥不存在")); } if(empty($waybill_no)){ die($this->logic_tools->ret_json(-1,"请求单号异常")); } $table_name = $this->logic_tools->getOrderTable($shop); if(empty($table_name)){ die($this->logic_tools->ret_json(-1,"店铺未开通此功能!!!")); } $info = $this->logic_order->getInfoByTableName($table_name,"waybill = ".$waybill_no. " and shop = ".$shop,"id,express,excontent,expressstate,waybill,dtime,printtime"); if(empty($info)){ die($this->logic_tools->ret_json(-1,"未查询到相关快递信息")); } $receive_time = "";//客户签到时间 $shipping_time = "";//快递接受发货时间 $express_trace = []; $express_info = $this->express->read($info['express']); if(!empty($info['excontent'])){ $tmp_arr = explode("
",$info['excontent']); array_pop($tmp_arr); $re_arr = array_reverse($tmp_arr); $shipping_time_arr = explode("[",$re_arr[0] ) ; $shipping_time = $shipping_time_arr[0]; if($info['expressstate'] == 6){ $receive_tmp_arr = explode("[",$tmp_arr[0] ) ; $receive_time = $receive_tmp_arr[0]; } $express_trace = $re_arr; } $ret_arr = [ "express_name"=>$express_info['iscode'], "waybill"=>$info['waybill'], "preparing"=>empty($info['dtime'])?"":date("Y-m-d H:i:s",$info['dtime']),//店家处理 "warehouse_processing"=>empty($info['printtime'])?"":date("Y-m-d H:i:s",$info['printtime']),//工厂处理 "shipping"=>$shipping_time,//快递发货 "received"=>$receive_time,//客户收货 "express_trace"=>$express_trace,//快递跟踪信息 ]; die($this->logic_tools->ret_json(1,"success",$ret_arr)); } }