params['category_id']) && $this->params['category_id']){ if(is_array(explode(',',$this->params['category_id']))) { $categoryIds = explode(',',$this->params['category_id']); }else{ $categoryIds[] = $this->params['category_id']; } $categoryId = GoodsCategory::where(['pid'=>$categoryIds])->column('id'); $categoryIds = array_merge($categoryId,$categoryIds); $where[] = ['category_id','in',$categoryIds]; } return $where; } public function lists(): array { $lists = Goods::where($this->setWhere()) ->field('id,name,image,status,price,audit_status,virtual_order_num+order_num as order_num') ->append(['audit_status_desc','status_desc']) ->limit($this->limitOffset, $this->limitLength) ->select()->toArray(); return $lists; } public function count(): int { return Goods::where($this->setWhere())->count(); } }