['project_id'], '%like%' => ['theme', 'type', 'emcee', 'recorder'], ]; } /** * @notes 获取工程监理--会议纪要列表 * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * @author likeadmin * @date 2024/03/01 14:31 */ public function lists(): array { return SupervisionMeetingMinutes::withoutField('create_user,create_time,update_time,delete_time')->where($this->searchWhere) ->limit($this->limitOffset, $this->limitLength) ->order(['id' => 'desc']) ->select()->each(function ($data) { $project = SupervisionProject::field('project_name')->where('id', $data['project_id'])->findOrEmpty(); $admin = Admin::where('id', 'in', [$data['emcee'], $data['recorder']])->column('name', 'id'); $attendees = Admin::where('id', 'in', $data['attendees'])->column('name'); $data['emcee_name'] = $admin[$data['emcee']] ?? ''; $data['recorder_name'] = $admin[$data['recorder']] ?? ''; $data['attendees_name'] = implode(',', $attendees); $data['project_name'] = $project['project_name']; }) ->toArray(); } /** * @notes 获取工程监理--会议纪要数量 * @return int * @author likeadmin * @date 2024/03/01 14:31 */ public function count(): int { return SupervisionMeetingMinutes::where($this->searchWhere)->count(); } }