1) Поисковые методы yii могут и не вернуть объект. Нужно всегда проверять на положительный результат, прежде чем обращаться к свойствам, иначе схлопочите исключение.
2) Используйте
транзакции если осуществляете одновременно манипуляции над несколькими зависимыми друг от друга моделями и проверяйте успешность вызова ->save(), иначе любая проблема при записи и рискуете всё поломать.
3) Стоит задуматься над логикой, ибо вы храните длину очереди в поле и на основе этого что-то вычисляете. Надёжность данного метода крайне низкая. Если есть связь между транспортом и очередью, то длина очереди легко подсчитывается. В вашем случае это не какие-то мегавычисления, результат которых следует хранить, count в помощь.
4) Если есть желание уменьшить количество поисковых запросов к БД (однако если запросы лёгкие и по ID, то профит сомнительный), то модели очереди и транспорта можно вытаскивать через joinWith().