Формирование заказа через uapi

голоса: 0

У нас возникла необходимость формировать заказ через uapi. И мы столкнулись с рядом вопросов:

1) Выполняя запросы ($request = new Request(array(
     'oauth_consumer_key'    => 'Мой consumer_key',
     'oauth_consumer_secret' => 'Мой consumer_secret',
     'oauth_token'           => 'Мой token',
     'oauth_token_secret'    => 'Мой token_secret'
 ));) с одними и теми же параметрами, но на разных машинах. Будет ли корзина и заказы одни и теже, или для кажной машины свои. 

2 Можно ли при выполнении запроса передать всю необходимую информация для формирования заказ. На пример есть такой запрос (Оформление заказа: /uapi/shop/checkout/?mode=order&payment_id=PAYMENT_ID&delivery_id=DELIVERY_ID&fldN=FIELD_N&gmap_a=ADDRESS&gmap_s=ADDRESS&gmap_d=ADDRESS), в списке товаров не наблюдается параметры храняшие список товаров или какую либо информацию по клиенту. Было бы неплохо что бы клиенты могли формировать собственные заказы со своих устройств.

3) Так же хотелось узнать, смогут ли незарегестрированные пользователи делать заказы при помоши uapi. Тоесть каждый пользователь не выполняя регистрацию мог заполнять свою корзину и формировать заказы.

При выполнении запроса (Мои заказы: /uapi/shop/invoices/) мы получили все заказы за все время(ожидалось получить заказы текушего пользователя/устройства).

Так же при выполнении запроса (Содержимое свой корзины: /uapi/shop/basket/) мы получили определнные товары которые не были добавлены через текушее устройство(Ожидалось что корзина будет пуста).

Адрес сайта https://sokovoz.ru/
| Автор: | Категория: PHP и API на uCoz

Ответов: 1

Голоса: +1
 
Лучший ответ

Начну с конца. Я вас разочарую, но метод /uapi/shop/basket/ сделан через одно место. Он возвращает содержимое корзины юзера, на которого оформлены токены uAPI. Я об этом писал разрабам (года 2 назад), но толку нет. uAPI вообще в свободном плавании. Никто им не занимается. Поэтому ничего не выйдет. По крайней мере при текущей постановке вопроса. Исходя из этого на остальные вопросы можно не отвечать, но все же.

По 1 вопросу. Данные будут одни и те же.
По 2 вопросу. Список товаров, добавленных в корзину пользователями хранятся в БД, соответственно, корзина и остальные параметры заказа это 2 разные таблицы и поэтому не выйдет.
По 3 вопросу. Могут, но это бессмысленно, ибо загвоздка в том, с чего я начал.

Для метода /uapi/shop/invoices/ есть сортировка. Передайте параметр user для сортировки чтоб получить заказы конкретного юзера.

Вы объясните зачем вам оформлять заказы через uAPI. Какая религия не позволяет это делать обычным способом?) Может будет что другое предложить для решения вопроса.

| Автор:
Выбор ответа лучшим | | Автор: Мурад Абдулаев

Очень печально.

Нам это необходимо в связи с тем что мы разрабатываем кросплатформенное приложение для нашего сайта. Нам был предложен uAPI как инструмент для отправи/получения данных к сайту.

Хотелось уточнить что вы подразумеваете под "обычным способом"? А так же вы выше написали "передать параметр user". Как этот параметр можно получить? И правильно ли мы понимаем что "параметр user" присутствует только у зарегестрированных пользователей?

Мурад Абдулаев,
Да, нужно знать конкретный ID пользователя. Или же знать ID заказа/заказов. Модуль Магазин в uAPI появился позже всех. И там много чего не сделано / не доделано. Если начнете копать, то многое что увидите. Невозможно, например, сменить статус заказа, способ оплаты, способ доставки, изменить поля ... и много много еще чего. Но самое главное - не оформить заказ от имени пользователя. С остальными модулями работать еще сносно. Да и с магазином сносно, если нужно только получить товары, категории.  Обычный способ это отправлять пользователя на сайт для оформления заказа. Ну или долбить разрабов ucoz, чтоб хотя бы сделали рабочий метод для корзины.
Александр Леонов,
Спасибо вам за разъяснение ситуации. Очень помогли.
...