where('1 = 1'); if (isset($where['user_id'])) { $query->andWhere('user_id = :user_id:', ['user_id' => $where['user_id']]); } if (isset($where['provider'])) { $query->andWhere('provider = :provider:', ['provider' => $where['provider']]); } if (isset($where['deleted'])) { $query->andWhere('deleted = :deleted:', ['deleted' => $where['deleted']]); } $query->orderBy('id DESC'); return $query->execute(); } /** * @param int $id * @return ConnectModel|Model|bool */ public function findById($id) { return ConnectModel::findFirst([ 'conditions' => 'id = :id:', 'bind' => ['id' => $id], ]); } /** * @param string $openId * @param int $provider * @return ConnectModel|Model|bool */ public function findByOpenId($openId, $provider) { return ConnectModel::findFirst([ 'conditions' => 'open_id = ?1 and provider = ?2', 'bind' => [1 => $openId, 2 => $provider], ]); } }