|
@@ -2,6 +2,8 @@
|
|
|
|
|
|
namespace app\index\controller;
|
|
namespace app\index\controller;
|
|
|
|
|
|
|
|
+use app\index\model\BoxActionModel;
|
|
|
|
+use app\index\model\BoxModel;
|
|
use app\index\model\OrderModel;
|
|
use app\index\model\OrderModel;
|
|
use think\Controller;
|
|
use think\Controller;
|
|
|
|
|
|
@@ -9,36 +11,91 @@ class Order extends Controller
|
|
{
|
|
{
|
|
public function CheckRcode(){
|
|
public function CheckRcode(){
|
|
$order_sn = input('param.order_sn');
|
|
$order_sn = input('param.order_sn');
|
|
|
|
+ //商网接口
|
|
|
|
+ json_success([]);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 自提柜向服务器上报
|
|
|
|
+ */
|
|
|
|
+ public function RecordStore(){
|
|
|
|
+ $order_sn = input('param.order_sn');
|
|
|
|
+ $trunk = input('param.trunk');
|
|
|
|
+ $cabinet = input('param.cabinet');
|
|
|
|
+ $ret = $this->CreateOrderBindBox($order_sn , $trunk , $cabinet);
|
|
|
|
+ if($ret['code'] != 0){
|
|
|
|
+ json_error(1006);
|
|
|
|
+ }else{
|
|
|
|
+ $this->box_action_record($cabinet , $trunk , 1);
|
|
|
|
+ json_success([]);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ public function CheckFcode(){
|
|
|
|
+ $code = input('param.code');
|
|
$OrderModel = new OrderModel();
|
|
$OrderModel = new OrderModel();
|
|
- $order = $OrderModel->getOne($order_sn);
|
|
|
|
|
|
+ $order = $OrderModel->CheckCode($code);
|
|
if(empty($order)){
|
|
if(empty($order)){
|
|
- return json(json_error_exception(2002));
|
|
|
|
|
|
+ json_error(2003);
|
|
}
|
|
}
|
|
- $ret = ['existed' => true,'order_sn' => $order_sn];
|
|
|
|
- json_success($ret);
|
|
|
|
|
|
+ //发送商网验证结果柜号 order_sn
|
|
|
|
+
|
|
|
|
+ //返回access
|
|
|
|
+ $data['code'] = $code;
|
|
|
|
+ $data['existed'] = true;
|
|
|
|
+ $data['trunk'] = $order['box_number'];
|
|
|
|
+ $data['cabinet'] = $order['cabinet_number'];
|
|
|
|
+ json_success($data);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public function RecordFetch(){
|
|
|
|
+ $trunk = input('param.trunk');
|
|
|
|
+ $cabinet = input('param.cabinet');
|
|
|
|
+ $BoxModel = new BoxModel();
|
|
|
|
+ $Box = $BoxModel->getOneCabinetBox($cabinet , $trunk);
|
|
|
|
+ if(empty($Box)){
|
|
|
|
+ json_error(2004);
|
|
|
|
+ }
|
|
|
|
+ $ret = $BoxModel->editData(['cabinet_number' => $cabinet , 'box_number' => $trunk] , ['order_sn' => '' , 'box_status' => 1]);
|
|
|
|
+ if($ret['code'] != 0){
|
|
|
|
+ json_error(1006);
|
|
|
|
+ }
|
|
|
|
+ $OrderModel = new OrderModel();
|
|
|
|
+ $OrderModel->editData(['order_sn' => $Box['order_sn']] , ['order_status' => 2 , 'out_time' => date("Y-m-d H:i:s")]);
|
|
|
|
+ $this->box_action_record($cabinet , $trunk , 2);
|
|
|
|
+ json_success([]);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
/**
|
|
/**
|
|
- * 订单绑定校验码
|
|
|
|
|
|
+ * 生成订单并绑定箱子
|
|
*/
|
|
*/
|
|
- public function OrderBindCode(){
|
|
|
|
- $order_sn = input('param.order_sn');
|
|
|
|
|
|
+ private function CreateOrderBindBox($order_sn , $box_number , $cabinet){
|
|
|
|
+ $code = $this->createRandCode();
|
|
|
|
+ $data['order_sn'] = $order_sn;
|
|
|
|
+ $data['cabinet_number'] = $cabinet;
|
|
|
|
+ $data['box_number'] = $box_number;
|
|
|
|
+ $data['code'] = $code;
|
|
|
|
+ $data['enter_time'] = date("Y-m-d H:i:s");
|
|
$OrderModel = new OrderModel();
|
|
$OrderModel = new OrderModel();
|
|
|
|
+ return $OrderModel->CreateOrder($data);
|
|
|
|
+ }
|
|
|
|
|
|
- $order = $OrderModel->getOne($order_sn);
|
|
|
|
- if(empty($order)){
|
|
|
|
- return json(json_error_exception(1008));
|
|
|
|
- }
|
|
|
|
- $code = $this->createRandCode();
|
|
|
|
- $result = $OrderModel->editData(['order_sn' => $order_sn],['code' => $code]);
|
|
|
|
- if($result['code'] != 1){
|
|
|
|
- return json(json_error_exception('1006',$result['msg']));
|
|
|
|
- }
|
|
|
|
- json_success('');
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 记录箱子开启/关闭
|
|
|
|
+ */
|
|
|
|
+ private function box_action_record($cabinet_number , $box_number , $type){
|
|
|
|
+ $BoxActionModel = new BoxActionModel();
|
|
|
|
+ $params['cabinet_number'] = $cabinet_number;
|
|
|
|
+ $params['box_number'] = $box_number;
|
|
|
|
+ $params['type'] = $type;
|
|
|
|
+ $params['datetime'] = date("Y-m-d H:i:s");
|
|
|
|
+ $BoxActionModel->save($params);
|
|
}
|
|
}
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 生成校验码
|
|
* 生成校验码
|
|
*/
|
|
*/
|
|
- public function createRandCode(){
|
|
|
|
|
|
+ private function createRandCode(){
|
|
$code = rand(100000,999999);
|
|
$code = rand(100000,999999);
|
|
$OrderModel = new OrderModel();
|
|
$OrderModel = new OrderModel();
|
|
$order = $OrderModel->where('code',$code)->find();
|
|
$order = $OrderModel->where('code',$code)->find();
|