Есть список сотрудников (EmployeeCard - таблица employee_card) с информацией об их работе (EmployeePosition - таблица employee_position_assignment)
Например, у каждого сотрудника есть должность - 'employeePositions.jobPost' (employee_position_assignment.job_post_id).
Ну и так далее, довольно большой список фильтров и связанных моделей еще.
Нужно вывести этот список сотрудников с группировкой по должности и информацией о количестве сотрудников внутри группы и общей паджинацией.
Например:
[Повар (2)]
Иванов И.И.
Сидоров В.В.
[Сторож(5)]
Сергеев С.С.
...
При этом сперва должна идти сортировка по названию группы, а потом по ФИ.
Сейчас это выглядит так:
Код: Выделить всё
$criteria = new CDbCriteria;
$criteria->with = array(
'employeePositions' => array('alias'=>'employee_position_assignment'),
'employeePositions.jobPost',
....
);
$criteria->alias = 'employee_card';
$criteria->order = 'employee_card.last_name, employee_card.first_name';
$criteria->group = "employee_position_assignment.job_post_id";
$models = EmployeeCard::model()->findAll($criteria);
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'employee_position_assignment.job_post_id' in 'group statement'
Перепробовал всевозможные комбинации (employeePositions.job_post_id, employeePositions.jobPost.id и тд), не получается.
Подскажите, как можно решить данную задачу через AR?