Т.е. если делаем поиск только по конкретной дате то для поиска "только туда" спрашиваем одну дату, а для поиска "туда и обратно" спрашиваем две даты.
if($this->direction == 1){
$query->andWhere(['>=', 'date_start', $this->date_to ? strtotime($this->date_to . ' 00:00:00') : null])
->andWhere(['=', 'city_start_id', $this->city_to])
}
$query = new Query;
$query->select('*')->from('real_index')->where(['product_id' => $model->id)->one();
Из официальной документации: