['project_id'], '%like%' => ['code', 'notify_user'], ]; } /** * @notes 获取工程监理--监理通知单列表 * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * @author likeadmin * @date 2024/03/01 09:20 */ public function lists(): array { return SupervisionNotice::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(); $company = SupervisionParticipatingUnits::field('unit_name')->where('id', $data['company_id'])->findOrEmpty(); $admin = Admin::where('id', 'in', [$data['notify_user'], $data['rectification_reply_user']])->column('name', 'id'); $data['project_name'] = $project['project_name']; $data['company_name'] = $company['unit_name']; $data['notify_user_name'] = $admin[$data['notify_user']] ?? ''; $data['rectification_reply_user_name'] = $admin[$data['rectification_reply_user']] ?? ''; }) ->toArray(); } /** * @notes 获取工程监理--监理通知单数量 * @return int * @author likeadmin * @date 2024/03/01 09:20 */ public function count(): int { return SupervisionNotice::where($this->searchWhere)->count(); } }