when(isset($where['name']) && $where['name'], function ($query) use ($where) { $query->whereLike('id|nickname', '%' . $where['name'] . '%'); }); } /** * * @param array $where * @param string $field * @param array $with * @param int $page * @param int $limit * @return array * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException */ public function getList(array $where, string $field = '*', array $with = [], int $page = 0, int $limit = 0, string $order = 'id DESC') { return $this->search($where)->field($field) ->when($with, function ($query) use ($with) { $query->with($with); }) ->when(isset($where['is_community_num']), function ($query) { $query->where('community_num', '>', 0); }) ->when($page != 0 && $limit != 0, function ($query) use ($page, $limit) { $query->page($page, $limit); })->order($order)->select()->toArray(); } /** * 获取用户信息 * @param int $uid * @return array|mixed * @throws \ReflectionException * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException * User: liusl * DateTime: 2024/8/26 15:44 */ public function getUserInfo(int $uid) { $where = [ 'is_del' => 0 ]; if ($uid == 0) { $where['type'] = 0; $where['uid'] = 0; } else { $where['type'] = 2; $where['relation_id'] = $uid; } return $this->search($where)->find(); } }