Всё реализовано прекрасно, дело исключительно в кривых руках на местах или глюках системы. Про единицу товара Вы в данном случае ну совсем неправы, единица товара - один билет, т.к. он единый, вне зависимости от количества сегментов в нём. Сегмент, проданный независимо - это отдельный билет  Работала достаточно долго в этих системах, знаю о чём говорю.Билет при возврате, такой как у Автора, обычно можно разделить минимально на туда-обратно, если правила тарифа позволяют или а/к пойдёт навстречу клиенту ввиду обстоятельств. Если я правильно поняла, у неё в каждом билете 3 сегмента - 2 сегмента/ рейса туда (со стыковкой), один обратно (прямой). Поэтому минимум - 2 сегмента, которые туда. Если 3 сегмента в одну сторону - то минимум 3 сегмента, они не разбиваются по Вашей схеме и не являются самостоятельными единицами в базе.Если бы они были самостоятельными единицами - это были бы отдельные билеты, а не сегменты единого билета.