lvhao hai 2 semanas
pai
achega
e683f165bb
Modificáronse 1 ficheiros con 53 adicións e 0 borrados
  1. 53 0
      core/CoreApp/models/Model_job_getcbtwaybillid.php

+ 53 - 0
core/CoreApp/models/Model_job_getcbtwaybillid.php

@@ -0,0 +1,53 @@
+<?php
+/**
+ * 封装一些常规的订单操作
+ */
+class Model_job_getcbtwaybillid extends Lin_Model {
+    function __construct(){
+        parent::__construct();
+        $this->load->_model('Model_apitt','apitt');
+        $this->load->_model('Model_fullordertt','fullordertt');
+        $this->load->_model("Model_shop","shop");
+    }
+
+    public function doAction(){
+        $start_time = time() - 3600 * 24 * 6; 
+        $where = "cf = 1 and waybill = '' and  type = '34' and state = '216' and shop = 42 ";
+        $where .= " and buytime > ".$start_time;
+        $list = $this->fullordertt->find_all($where,"id,orderinfo,number,shop,cf,waybill,type,state,buytime,extra_text");
+        if(empty($list)){
+            return ;
+        }
+        $shop_info = $this->shop->read(42);
+        foreach($list as $k => $v){
+            if(!empty($v['waybill'])){
+                $this->getWaybill($v['orderinfo'],$shop_info);
+                die;
+            }
+        }
+    }
+
+    private function getWaybill($info,$shop){
+        if(empty($info['extra_text'])){
+            $res = $this->apitt->get_detail($info['orderinfo'],$shop);
+            if($res['code'] == 0){
+                $data = $res['data'];
+			    $packages_id = $data['orders'][0]['packages'][0]['id'];
+            }else{
+                return ;
+            }
+        }else{
+            if(is_string($info['extra_text'])){
+                $extra_text = json_decode($info['extra_text'],true);
+            }
+            $package_id = $extra_text['packages'][0]['id'];
+        }
+
+        $waybill_info = $this->apitt->getWaybillInfo($packages_id,$shop);
+        if($waybill_info['code'] == 0){
+            $waybill = $waybill_info['data']['tracking_number'];
+            $this->fullordertt->save(['waybill' => $waybill],$info['id']);
+
+        }
+    }
+}