В API r_k Delivery в запросе на получение представления меню заведения поддержан признак однопорционности. 

Теперь в ответе на этот запрос в конкретном блюде возвращается следующая структура:

"measure": {
                "value": null,
                "unit": null,
                "priceMode": "PerPiece",
                "qntDecDigits": null,
                "changeQntOnce": null,
                "joinMode": "almJoinLines"
            },
CODE

Где признак однопорционности - это measure.joinMode

Возможные значения:

Если указано значение "almSeparately", то возможны следующие варианты:

  • несколько блюд не склеиваются по умолчанию, если добавлять блюдо из меню, т.е. блюда добавляются отдельными строками.
  • есть возможность указать кол-во блюд в строке. 

Если указано значение "almOnePortion", то это однопорционное блюдо.
В заказе обязательно добавляется отдельная строка для каждой порции.
В одну строку добавляется только одно блюдо, и вписать количество блюд в строку блюда невозможно. При повторном нажатии Добавить в заказ, на блюде из меню происходит добавление новой такой же штучной позиции. 

Если указано значение "almJoinLines", то система будет склеивать несколько блюд в заказе в одну строку с указанием количества блюд. Также возможно добавление в заказ двух позиций одного и того же блюда по отдельности.