How to orderby multiple meta fields with another meta query

You’ve already named the clauses in your meta query, so you can reference these directly in the orderby argument:

$query->set(
    'orderby',
    array(
        'enddate' => 'DESC',
        'startdate' => 'DESC'
    )
);