Я пытаюсь получить работу только с видео-бронированием здесь, и я получаю видео-бронирования и фотографии бронирования.Похоже, что locate не работает, и я также не уверен, должен ли я использовать сопоставление или внутреннее соединение.Я также не получаю массив связанных служб, которые могут быть видео или видео редактирования.Одно бронирование может иметь несколько услуг.
$param['optionsob']['OrdersBookings.start_date_convert >='] = $param['start_date'];
$param['optionsob']['OrdersBookings.start_date_convert <='] = $param['end_date'];
$param['optionsobs']['locate(13, OrdersBookingsServices.service_id) >'] = 0;
$param['optionsobs']['locate(4, OrdersBookingsServices.service_id) >'] = 0;
$matcher = function($query) use ($param) {
return $query->where($param['optionsob'])->andWhere(['OR' => $param['optionsobs']]);
};
$records = $this->ClientOrders->find()->contain([
'CompaniesOrdered',
'CompaniesAgents',
'ClientOrderStatus',
'OrderStatus',
'OrdersBookings.OrdersBookingsServices'])
->matching('OrdersBookings.OrdersBookingsServices', $matcher);