Разработка интеграции с rKeeper

Задание закрыто
Стоимость:Договорная
Срок выполнения:7 дней
Варианты оплаты:По договоренности
Дата публикации:2024-11-28 22:15
Был на сайте:2024-12-08 18:01

Разработка интеграции с rKeeper

 
Задача

Есть бекенд на Django + опубликованное API бекэнда (swagger, Pgsql)


Требуется доработать интеграцию существующего проекта, опубликованный в GitHub, с целью взаимодействия с API rKeeper. DEV стенд системы автоматизации развернут вендором, документация по автоматизации:
https://docs.rkeeper.ru/delivery/opisanie-api-27843446.html
Требуется получить инфо по официантам, заказам, меню, столикам.

Параллельно работает фронт (с ним можно обсуждать какие-то детали по реализации)

Оставлять заявки могут только авторизованные пользователи.
Stanislav Ricci
Специализация: Программирование и IT
  • 48 500 руб13 дней
Для интеграции вашего Django-проекта с API rKeeper и получения информации об официантах, заказах, меню и столиках, вы можете выполнить следующие шаги:

Изучение документации API: Ознакомьтесь с предоставленной документацией API rKeeper, чтобы понять доступные конечные точки (endpoints), методы HTTP (GET, POST и т.д.), необходимые параметры и формат данных.

Настройка аутентификации: Узнайте, какой метод аутентификации используется (например, токены, ключи API, OAuth). Настройте безопасное хранение этих данных в вашем приложении, используя переменные окружения или настройки Django.

Установка необходимых библиотек:

pip install requests

Библиотека requests поможет вам отправлять HTTP-запросы к API.

Создание клиента для API: В вашем Django-проекте создайте модуль или класс для взаимодействия с API rKeeper.

import requests

class RKeeperClient:
def __init__(self, base_url, api_key):
self.base_url = base_url
self.headers = {
'Authorization': f'Bearer {api_key}',
'Content-Type': 'application/json'
}

def get_waiters(self):
response = requests.get(f'{self.base_url}/waiters', headers=self.headers)
return response.json()

def get_orders(self):
response = requests.get(f'{self.base_url}/orders', headers=self.headers)
return response.json()

def get_menu(self):
response = requests.get(f'{self.base_url}/menu', headers=self.headers)
return response.json()

def get_tables(self):
response = requests.get(f'{self.base_url}/tables', headers=self.headers)
return response.json()

Интеграция с Django:

Модели: Создайте модели Django, соответствующие структурам данных, которые возвращает API.
Виды (views): Напишите views, которые будут использовать RKeeperClient для получения данных и передачи их в шаблоны.
Маршруты (urls.py): Добавьте необходимые URL-маршруты для доступа к новым views.

Примеры моих работ

Алексей Кострыкин

Всё, что задумано, может быть реализовано

Специализация: Программирование и IT
  • 58 000 руб21 день
Привет!

Я понял, что вы хотите доработать интеграцию существующего проекта на Django,, для взаимодействия с API rKeeper.

У меня несколько уточнений, чтобы понять задачу лучше:

- Как именно вы планируете отображать или использовать полученные данные? Например, нужно ли их форматировать или хранить в локальной базе (PgSQL) для дальнейшего использования?

- Нужно ли реализовать только чтение данных из rKeeper API, или потребуется также отправлять обновления (например, добавлять заказы)?

- Интеграция должна работать в вашем проекте на Django или как отдельный скрипт на любом ЯП? (Думаю лучше интегрироваться через API с двухсторон), что-бы при изменениях ничего не ломалось.

Для оптимизации мы можем настроить периодическую синхронизацию данных, чтобы не перегружать запросами API.


Дайте знать, если нужно что-то уточнить! Готов приступить к работе.
Добрый день, имею опыт работы с API r_keeper через XML Interface, как раз через него можно получить информацию из справочников (официанты, заказы, меню, столы)
В качестве решения могу внедрить в ваше Django приложение сервис для работы с API r_keeper, либо сделать автономный сервис, который можно будет использовать в вашем приложении
Готов обсуждать детали
Добрый день.
Есть опыт разработки на Python Django более 9 лет. И опыт интеграции Django приложений с различными сервисами, от банков до страховых, телефонии. Так же по результатам работы составлю перечень предложений по улучшению существующего приложения и инфраструктуры.

Оставлять заявки могут только авторизованные пользователи.