Technically you should be able to pass the orderBy when you define the relation… as mentioned in the AR Documentation example with [font="Courier New"]getBigOrders[/font].
public function getChestProducts() {
return $this->hasMany(Product::className(), ['id' => 'id_product'])
->viaTable('map_chest_product', ['id_chest' => 'id'])
->orderBy('name ASC');
}
However this does not currently work exactly on my setup. Let know if it works for you.