Bladeren bron

Merge branch 'master' of e.coding.net:zdap/weixiu/weixiu_api into tel-m

liugc 1 jaar geleden
bovenliggende
commit
18d16e9d28
2 gewijzigde bestanden met toevoegingen van 18 en 21 verwijderingen
  1. 16 19
      app/adminapi/lists/property/PropertyOrderAnalysis.php
  2. 2 2
      app/api/logic/GoodsLogic.php

+ 16 - 19
app/adminapi/lists/property/PropertyOrderAnalysis.php

@@ -47,23 +47,14 @@ class PropertyOrderAnalysis extends BaseAdminDataLists implements ListsSearchInt
     public function queryWhere()
     public function queryWhere()
     {
     {
         $where = [];
         $where = [];
-        $tmpWhere = [];
-        $workIds = [];
-        isset($this->params['property_name']) && !empty($this->params['property_name']) && $tmpWhere[] = ['property_name', 'LIKE', '%'.$this->params['property_name'].'%'];
-        isset($this->params['village_name']) && !empty($this->params['village_name']) && $tmpWhere[] = ['village_name', 'LIKE', '%'.$this->params['village_name'].'%'];
-        isset($this->params['head_name']) && !empty($this->params['head_name']) && $tmpWhere[] = ['head_name', 'LIKE', '%'.$this->params['head_name'].'%'];
-        isset($this->params['head_mobile']) && !empty($this->params['head_mobile']) && $tmpWhere[] = ['head_mobile', '=', $this->params['head_mobile']];
-        if(!empty($tmpWhere)){
-            $property_head_ids = PropertyHead::where($tmpWhere)->column('id');
-            $property_head_ids && $workIds = PropertyOrder::where('order_status',3)->where('property_head_id','IN',$property_head_ids)->column('work_id');
-        }else{
-            $workIds = PropertyOrder::where('order_status',3)->column('work_id');
-        }
-        $where[] = ['id','IN',$workIds?:[0]];
+        isset($this->params['property_name']) && !empty($this->params['property_name']) && $where[] = ['c.property_name', 'LIKE', '%'.$this->params['property_name'].'%'];
+        isset($this->params['village_name']) && !empty($this->params['village_name']) && $where[] = ['c.village_name', 'LIKE', '%'.$this->params['village_name'].'%'];
+        isset($this->params['head_name']) && !empty($this->params['head_name']) && $where[] = ['c.head_name', 'LIKE', '%'.$this->params['head_name'].'%'];
+        isset($this->params['head_mobile']) && !empty($this->params['head_mobile']) && $where[] = ['c.head_mobile', '=', $this->params['head_mobile']];
         if(isset($this->params['start_month']) && $this->params['start_month']){
         if(isset($this->params['start_month']) && $this->params['start_month']){
             $startDateTime = strtotime($this->params['start_month']);
             $startDateTime = strtotime($this->params['start_month']);
             $endDateTime = strtotime('+1 month', $startDateTime)-1;
             $endDateTime = strtotime('+1 month', $startDateTime)-1;
-            $where[] = ['finished_time','BETWEEN',[$startDateTime,$endDateTime]];
+            $where[] = ['b.finished_time','BETWEEN',[$startDateTime,$endDateTime]];
         }
         }
         return $where;
         return $where;
     }
     }
@@ -79,13 +70,19 @@ class PropertyOrderAnalysis extends BaseAdminDataLists implements ListsSearchInt
      */
      */
     public function lists(): array
     public function lists(): array
     {
     {
-        return ServiceWork::with(['propertyHead'])->where([['work_pay_status','=',2],['approval','=',1]])
-            ->where('finished_time','>',0)
-            ->where('user_id','>',0)
+        $res =   Db::name('property_order')->alias('a')
+            ->field(['c.id','c.head_name','c.property_name','c.village_name',
+                Db::raw('DATE_FORMAT(FROM_UNIXTIME(b.finished_time), "%Y-%m") AS month_format,COUNT(b.id) as month_num, SUM(b.work_amount) as month_amount')
+            ])
+            ->leftJoin('service_work b', 'a.work_id = b.id')
+            ->leftJoin('property_head c', 'a.property_head_id = c.id')
+            ->where([['b.work_pay_status','=',2],['b.approval','=',1]])
+            ->where('b.finished_time','>',0)
             ->where($this->queryWhere())
             ->where($this->queryWhere())
-            ->field(Db::raw('user_id,DATE_FORMAT(FROM_UNIXTIME(finished_time), "%Y-%m") AS month_format,COUNT(id) as month_num, SUM(work_amount) as month_amount'))
-            ->group('user_id,month_format')
+            ->group('a.property_head_id,month_format')
+            ->limit($this->limitOffset, $this->limitLength)
             ->select()->toArray();
             ->select()->toArray();
+        return $res;
     }
     }
 
 
 
 

+ 2 - 2
app/api/logic/GoodsLogic.php

@@ -25,13 +25,13 @@ class GoodsLogic extends BaseLogic
      */
      */
     public static function detail($id,$type){
     public static function detail($id,$type){
         if($type == 'category'){
         if($type == 'category'){
-            $goods = Goods::where(['goods_category_id'=>$id,'user_id'=>0,'is_agent'=>0])->visible([
+            $goods = Goods::where(['goods_category_id'=>$id,'user_id'=>0,'is_agent'=>0,'is_activity'=>0])->visible([
                 'id','goods_image','goods_name','goods_banners','good_unit','sell_num','base_service_fee',
                 'id','goods_image','goods_name','goods_banners','good_unit','sell_num','base_service_fee',
                 'service_total','service_fee','service_image','fee_schedule','warranty_period','goods_payment_type','goods_category_id'
                 'service_total','service_fee','service_image','fee_schedule','warranty_period','goods_payment_type','goods_category_id'
             ])->select()->toArray();
             ])->select()->toArray();
         }else{
         }else{
             $goods_category_id = Goods::where('id',$id)->value('goods_category_id');
             $goods_category_id = Goods::where('id',$id)->value('goods_category_id');
-            $goods = Goods::where(['goods_category_id'=>$goods_category_id,'user_id'=>0,'is_agent'=>0])->visible([
+            $goods = Goods::where(['goods_category_id'=>$goods_category_id,'user_id'=>0,'is_agent'=>0,'is_activity'=>0])->visible([
                 'id','goods_image','goods_name','goods_banners','good_unit','sell_num','base_service_fee',
                 'id','goods_image','goods_name','goods_banners','good_unit','sell_num','base_service_fee',
                 'service_total','service_fee','service_image','fee_schedule','warranty_period','goods_payment_type','goods_category_id'
                 'service_total','service_fee','service_image','fee_schedule','warranty_period','goods_payment_type','goods_category_id'
             ])->select()->toArray();
             ])->select()->toArray();