['project_id'], '%like%' => ['address', 'service_scope', 'basic_type', 'duration'], ]; } /** * @notes 获取项目咨询--新开工项目管理列表 * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * @author likeadmin * @date 2024/03/11 10:27 */ public function lists(): array { return ConsultNewStartProject::where($this->searchWhere) ->field(['id', 'project_id', 'address', 'service_scope', 'area', 'invest', 'basic_type', 'duration']) ->limit($this->limitOffset, $this->limitLength) ->order(['id' => 'desc']) ->select()->each(function ($data) { $project = ConsultProject::field('project_name')->where('id', $data['project_id'])->findOrEmpty(); $data['project_name'] = $project['project_name']; $admin = Admin::where('id', 'in', [$data['project_manager'], $data['deputy_project_manager'], $data['engineer']])->column('name', 'id'); $data['project_manager_name'] = $admin[$data['project_manager']] ?? ''; $data['deputy_project_manager_name'] = $admin[$data['deputy_project_manager']] ?? ''; $data['engineer_name'] = $admin[$data['engineer']] ?? ''; }) ->toArray(); } /** * @notes 获取项目咨询--新开工项目管理数量 * @return int * @author likeadmin * @date 2024/03/11 10:27 */ public function count(): int { return ConsultNewStartProject::where($this->searchWhere)->count(); } }