mode = new User(); } /** * 列表 * @param array $param */ public function getList(array $param = [],string $field = '*', int $page = 0,int $limit = 0,string $order = 'id desc') { $list = $this->mode->where($this->searchFilter($param))->with('cutter_apply')->field($field)->when($page&&$limit,function($query)use($page,$limit){ $query->page($page,$limit); })->select(); $cutterLabelService = new CutterLabelService(); foreach ($list as $k=>$v){ $v['trade'] = $cutterLabelService->getColumn([['id','in',$v['cutter_apply']['trade']],['is_del','=',0]],'label_name'); $v['style'] = $cutterLabelService->getColumn([['id','in',$v['cutter_apply']['trade']],['is_del','=',0]],'label_name'); } $count = $this->mode->where($this->searchFilter($param))->count(); return compact('list','count'); } protected function searchFilter(array $param = []): array { $filter = []; !empty($param['is_cutter']) && $filter[] = ["is_cutter", '=', $param['is_cutter']]; return $filter; } }