Всё правильно, бизнес логика должна находиться в моделях. Не знаю как в yii, но в symfony модели разделены на сущности и репозитории, и в репозиториях размещается вся бизнес логика. Есть такой антипаттерн "толстый контроллер", это когда бизнес логику пытаются впихнуть в контроллер, не надо так делать.