where(['user_id' => $uid]) ->select(['tree', 'deep']) ->orderBy('part desc') ->one(); if (empty($relationship)) return []; $model = self::find()->alias('upr') ->where(['like', 'upr.tree', "{$relationship->tree},%", false]) ->andWhere(['<>', 'upr.user_id', $uid]) ->select(['upr.user_id']); if ($keyword) { $model->join('left join', MallUser::tableName() . ' as u', 'u.id = upr.user_id'); if ($search_type == 1) $model->andWhere(['=', 'u.id', $keyword]); if ($search_type == 2) $model->andWhere(['=', 'u.nickname', $keyword]); if ($search_type == 3) $model->andWhere(['=', 'u.mobile', $keyword]); } return $model->column(); } }