xxxrrrdddd 3 år sedan
förälder
incheckning
8d40484b42
2 ändrade filer med 18 tillägg och 14 borttagningar
  1. 13 14
      application/sub/controller/Order.php
  2. 5 0
      thinkphp/library/think/db/Query.php

+ 13 - 14
application/sub/controller/Order.php

@@ -52,33 +52,32 @@ class Order extends SubCommon
         $page=input('page',1);
         $limit=input('limit',15);
         $export=input('export');
-        $model=(new MobileOrder());
-        $map=[];
-        $map['s_id']=['eq',$this->auth->id];
+        $model=(new MobileOrder())
+            ->where('s_id',$this->auth->id);
 
         if(!empty($data['order_no'])){
-            $map['order_no']=$data['order_no'];
+            $model->where('order_no',$data['order_no']);
         }
 
         $model
             ->with(['info'])
-            ->where($map)
             ->order('id','desc');
 
         $extend=[];
         if($export){
-            return MobileOrderExport::export($model->where($map)->paginate($limit));
+            return MobileOrderExport::export((clone $model)->paginate($limit));
         }else{
-            $extend['total']=$model->where($map)->sum('amount');
-            $extend['alipay']=$model->where($map)->where('pay_type',1)->sum('amount');
-            $extend['wechat']=$model->where($map)->where('pay_type',2)->sum('amount');
-            $extend['jd']=$model->where($map)->where('pay_type',3)->sum('amount');
-            $extend['di']=$model->where($map)->sum('amount_di');
-            $extend['profit']=$model->where($map)->sum('amount_profit');
-            $extend['refund']=$model->where($map)->sum('amount_refund');
+            $extend['total']=(clone $model)->sum('amount');
+
+            $extend['alipay']=(clone $model)->where('pay_type',1)->sum('amount');
+            $extend['wechat']=(clone $model)->where('pay_type',2)->sum('amount');
+            $extend['jd']=(clone $model)->where('pay_type',3)->sum('amount');
+            $extend['di']=(clone $model)->sum('amount_di');
+            $extend['profit']=(clone $model)->sum('amount_profit');
+            $extend['refund']=(clone $model)->sum('amount_refund');
         }
 
-        $list=$model->where($map)->paginate($limit);
+        $list=$model->paginate($limit);
 
         $this->assign('list',$list);
         $this->assign('extend',$extend);

+ 5 - 0
thinkphp/library/think/db/Query.php

@@ -3048,4 +3048,9 @@ class Query
         }
         return $result;
     }
+
+    public function __clone()
+    {
+        $this->setBuilder();
+    }
 }