Hello i am trying to order doctrine collection by multiple fields
tried something like this
/**
* @var Collection
* @ORM\OrderBy({"date" = "ASC","TimeBegin" = "ASC"})
* @ORM\OneToMany(targetEntity="Schedule", mappedBy="event")
*/
protected $schedules;
This code isn't working
Date field is in format "1927-12-01" timeBegin "00:13:01"
This is my query
public function getAppointmentDetails(int $eventId): ?Event
{
$eventAlias = 'event';
/** @var EventQueryBuilder $queryBuilder */
$queryBuilder = $this->createQueryBuilder($eventAlias);
$queryBuilder->select($eventAlias)
->whereEventId($eventId)
->withRoom()
->withService()
->withSchedulesAndInstructorsOrderedByDateAndTime();
$appointmentDetails = $queryBuilder->getQuery()->getOneOrNullResult();
return $appointmentDetails;
}
and my method withSchedulesAndInstructorsOrderedByDateAndTime
/**
* With Schedules And Instructors Ordered by Date and Time
* @return EventQueryBuilder
*/
public function withSchedulesAndInstructorsOrderedByDateAndTime() : EventQueryBuilder
{
$this->join($this->getRootAliases()[0] . '.schedules', 'sc');
$this->join('sc' . '.instructors', 'in');
return $this;
}
Thing is is if i add orderBy my instructor collection will be empty