|
|
@@ -0,0 +1,55 @@
|
|
|
+<?php
|
|
|
+defined('BASEPATH') OR exit('No direct script access allowed');
|
|
|
+
|
|
|
+class Order extends Lyapi_Controller{
|
|
|
+ // 注意:登录接口不能受基础控制器的登录校验,可以覆盖构造方法或单独处理
|
|
|
+ public function __construct() {
|
|
|
+ // 这里不执行登录校验,只加载缓存驱动
|
|
|
+ parent::__construct(); // 暂时注释,或者使用一个新的不校验的基类
|
|
|
+ // 简便做法:复制 Lyapi_Controller 的部分代码但不调用 _check_api_auth
|
|
|
+ // $this->load->driver('cache'); // 加载缓存驱动
|
|
|
+ $this->load->_model("Model_logic_order","logic_order");
|
|
|
+ }
|
|
|
+
|
|
|
+ public function getinfo(){
|
|
|
+ if($this->input->method(TRUE) != 'POST'){
|
|
|
+
|
|
|
+ $this->_json_error('请求方式错误','500');
|
|
|
+ }
|
|
|
+ $json_str = $this->input->raw_input_stream;
|
|
|
+ $data = json_decode($json_str,true);
|
|
|
+ if(empty($data['scancode'])){
|
|
|
+ $this->_json_error('参数错误','500');
|
|
|
+ }
|
|
|
+ $number = $data['scancode'];
|
|
|
+ if(stripos($number,'-') === false){
|
|
|
+ if(substr($number,0,3) == '788' && substr($number,-4,4) == '0430')//Fedex联邦
|
|
|
+ {
|
|
|
+ $number = substr($number,0,12);
|
|
|
+ }
|
|
|
+ if(strlen($number) == '34')//联邦杭州超长运单截取
|
|
|
+ {
|
|
|
+ $str = substr($number, 0,3);
|
|
|
+ if($str == "420"){
|
|
|
+ $number = substr($number,12);
|
|
|
+ }else{
|
|
|
+ $number = substr($number,22,12);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $info = $this->logic_order->getInfo("waybill = '".$number."'");
|
|
|
+ }else{
|
|
|
+ $info = $this->logic_order->getInfo("number = '".$data['scancode']."'");
|
|
|
+ }
|
|
|
+ if(empty($info)){
|
|
|
+ $this->_json_error('未查询到订单信息','500');
|
|
|
+ }
|
|
|
+ $this->_json_error('成功',200,[
|
|
|
+ 'orderinfo'=>$info['orderinfo'],
|
|
|
+ 'number'=>$info['number'],
|
|
|
+ 'waybill'=>$info['waybill'],
|
|
|
+ 'printtime'=>date("Y-m-d H:i",$info['printtime']),
|
|
|
+ ]);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+}
|