Я бы посоветовал вам поискать js пакеты, которые умеют делать то, что вам нужно. И реализовывать с их использованием. Потом, если захотите, можете выделить это в отдельный виджет.
Могу быть не прав, но, вероятно, проблема в том, что joinWith по дефолту делает LEFT JOIN, а вам нужен InnerJoinWith() www.yiiframework.com/doc-2.0/yii-db-activequery.ht...
PS. А вообще, мне кажется, что у вас не совсем верно устроена структура базы. Не раскроете названия таблиц?