xieruidong 2 years ago
parent
commit
69edfae2ca

+ 2 - 2
application/admin/controller/Customer.php

@@ -122,8 +122,8 @@ class Customer extends Backend
         $this->assignconfig('type_column1', array_keys($payTypeList1));
         $this->assignconfig('type_data1', array_values($payTypeList1));
         #转化率
-        $payCount=\app\admin\model\Orders::payed()->count();
-        $viewCount=ViewUnique::filterDate($postTime?explode(' - ',$postTime):null)->sum('num');
+        $payCount=\app\admin\model\Orders::payed()->filterDate($postTime?explode(' - ',$postTime):null)->count();
+        $viewCount=ViewUnique::filterDate($postTime?explode(' - ',$postTime):null,0,'date')->sum('num');
         $payTransPer=$viewCount?bcmul(100,bcdiv($payCount,$viewCount)):0;
         $this->assign('payTransPer',$payTransPer);
         return $this->view->fetch();

+ 0 - 10
application/common/model/ViewUnique.php

@@ -5,7 +5,6 @@ namespace app\common\model;
 use think\db\Query;
 use think\Model;
 /**
- * @method Query filterDate($date)
  */
 class ViewUnique extends Model
 {
@@ -22,13 +21,4 @@ class ViewUnique extends Model
             ]);
         }
     }
-    public function scopeFilterDate(Query $query,$date,$dateType=0){
-        if($date){
-            if($dateType===0){
-                $date[0]=strtotime($date[0]);
-                $date[1]=strtotime($date[1]);
-            }
-            $query->whereBetween('date',$date);
-        }
-    }
 }

+ 10 - 0
thinkphp/library/think/Model.php

@@ -36,6 +36,7 @@ use think\model\relation\MorphTo;
  * @method static static|Query findOrFail($data = null)
  * @method static static|Query order($field, $order = null)
  * @method static static|Query whereBetween($field, $data)
+ * @method Query filterDate($date,$dateType=0,$column='create_time')
  * @mixin Query
  */
 abstract class Model implements \JsonSerializable, \ArrayAccess
@@ -2356,4 +2357,13 @@ abstract class Model implements \JsonSerializable, \ArrayAccess
     protected function __($name){
         return sprintf('%s.%s',$this->getTable(),$name);
     }
+    public function scopeFilterDate(Query $query,$date,$dateType=0,$column='create_time'){
+        if($date){
+            if($dateType===0){
+                $date[0]=strtotime($date[0]);
+                $date[1]=strtotime($date[1]);
+            }
+            $query->whereBetween($column,$date);
+        }
+    }
 }