Вообще-то единственное число от dishes - dish, а не dishe.
Достаточно создавать их с полем order_id = $order->id, чтобы при выборке они зацепились.
задача построить отчет по отказам.
На счёт частичной оплаты не понятно — зачем вообще такое, почему недостаточно оплачивать всё и сразу.
Если будут десятки-сотни-тысячи одинаковых позиций
Но у меня есть только идентификатор из связанной таблицы (таблица: order_dishe, поле id).
По нему нужно удалить запись.