params['device_id'])) { $allowSearch[] = 'device_id'; } return array_intersect(array_keys($this->params), $allowSearch); } /** * @notes 获取列表 * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * @author likeadmin * @date 2023/11/24 16:49 */ public function lists(): array { return AirMonitor::withSearch($this->setSearch(), $this->params)->with('device') ->field(['id', 'device_id', 'wind_direction', 'wind_speed', 'temperature', 'moisture', 'co2_content', 'pressure', 'rainfall', 'light_intensity', 'create_time']) ->limit($this->limitOffset, $this->limitLength) ->order(['id' => 'desc']) ->select() ->toArray(); } /** * @notes 获取数量 * @return int * @author likeadmin * @date 2023/11/24 16:49 */ public function count(): int { return AirMonitor::withSearch($this->setSearch(), $this->params)->count(); } }