Инструменты пользователя

Инструменты сайта


tp7:модули:м_online_ккм:discountcalculation

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
tp7:модули:м_online_ккм:discountcalculation [2021/03/31 13:35]
dzayonchkovskiy создано
tp7:модули:м_online_ккм:discountcalculation [2024/07/16 16:45] (текущий)
dzayonchkovskiy [Выходные параметры]
Строка 1: Строка 1:
 ====== HTTP сервис для расчета скидок ТП 7 ====== ====== HTTP сервис для расчета скидок ТП 7 ======
-В HTTP сервис KKMTranser добавлена ф-я DiscountCalculation.+В HTTP сервис KKMTransfer добавлена ф-я DiscountCalculation. 
 ===== Настройка ===== ===== Настройка =====
 В ТП 7 требуется: В ТП 7 требуется:
-1. Создать и настроить элемент справочника ККМ. +  - Создать и настроить элемент справочника ККМ. 
-2. Создать и настроить элемент справочника "Настройки расчета скидок"+  Создать и настроить элемент справочника "Настройки расчета скидок"
-3. Создать запись в регистре сведений "Настройки расчета скидок для ККМ", в которой указать ККМ из п.1 и настройку из п.2. +  Создать запись в регистре сведений "Настройки расчета скидок для ККМ", в которой указать ККМ из п.1 и настройку из п.2. 
-4. Опубликовать на веб-сервисе HTTP сервис KKMTransfer. +  Опубликовать на веб-сервисе HTTP сервис KKMTransfer. 
-===== Использование ===== +  -  
-Для получения расчитанных скидок нужно отправить POST запрос на адрес "{веб-адрес ТП 7}/hs/KKMTransfer/DiscountCalculation",\\+===== Метод DiscountCalculation===== 
 +Для получения рассчитанных скидок нужно отправить POST запрос на адрес "{веб-адрес ТП 7}/hs/KKMTransfer/DiscountCalculation",\\
 где {веб-адрес ТП 7} - адрес опубликованной базы ТП 7, например, http://localhost:8080/TP7_dev.\\ где {веб-адрес ТП 7} - адрес опубликованной базы ТП 7, например, http://localhost:8080/TP7_dev.\\
  
-В теле запроса нужно передать информацию о чеке, для которого нужно получить расчитанные скидки.\\+В теле запроса нужно передать информацию о чеке, для которого нужно получить рассчитанные скидки.\\ 
 + 
 +Авторизация Basic Base64(login:password). 
 ==== Входные параметры ==== ==== Входные параметры ====
 Тело POST запроса строка JSON: Тело POST запроса строка JSON:
Строка 210: Строка 215:
 } }
 </code> </code>
 +
 +===== Метод PriceChecker =====
 +Для получения информации о товаре и/или дисконтной карте нужно отправить POST запрос на адрес "{веб-адрес ТП 7}/hs/KKMTransfer/PriceChecker",\\
 +где {веб-адрес ТП 7} - адрес опубликованной базы ТП 7, например, http://localhost:8080/TP7_dev.\\
 +
 +В теле запроса нужно передать штрихкод и/или номер дисконтной карты.\\
 +
 +Авторизация Basic Base64(login:password).
 +
 +==== Входные параметры ====
 +Тело POST запроса строка JSON:
 +  * kkm - код ккм
 +  * barcode - штрихкод товара или код маркировки
 +  * card - код дисконтной карты
 +
 +===Пример===
 +<code>
 +{
 + "kkm": 1,
 + "barcode": "12345678",
 + "card": "123"
 +}
 +</code>
 +
 +==== Выходные параметры ====
 +В ответ ф-я PriceChecker возвращает код ответа 200 и в теле ответа строку в формате JSON.\\
 +
 +Выходные параметры строка JSON:
 +  * result - "ok" - запрос успешно обработан, "error" - произошла ошибка
 +  * msg - текст ошибки, в случае неуспешного запроса
 +  * good - null, если barcode не был передан, иначе структуру:
 +    * code - код номенклатуры
 +    * barcode - штрихкод товара или единицы (может отличаться от входного параметра)
 +    * name - наименование номенклатуры или единицы
 +    * art - артикул
 +    * price - розничная цена
 +    * spec_price - акционная цена, 0 - не действует акционная цена
 +    * price_d - цена со скидкой
 +    * discount_sum - сумма скидки (розничная цена минус акционная цена (если действует) минус скидки)
 +    * measure_unit - единица измерения
 +    * country - страна производителя
 +    * description - описание товара
 +    * image - картинка в base64 или null при отсутствии
 +    * image_ext - расширение файла картинки или null при отсутствии картинки
 +  * card - null, если номер ДК не был передан или если карта не была найдена, иначе содержит атрибуты:
 +    * Код - номер карты
 +    * Наименование - наименование карты
 +    * ТекстДляЧека - текст для чека
 +    * НеВестиНакопление - если true - накопление не начисляется
 +    * ДеньРождения - день рождения владельца карты
 +    * Накопление - сумма накопления
 +    * КоличествоЧеков - количество чеков по карте
 +    * СуммаБонуса - сумма бонусов на карте
 +    * Группы - массив кодов групп дисконтных карт
 +    * НомерТелефона - номер телефона владельца карты
 +    * АдресЭлектроннойПочты - адрес эл. почты владельца карты
 +
 +=== Пример успешного запроса ===
 +<code>
 +{
 + "result": "ok",
 + "good": {
 + "code": 1,
 + "barcode": "12345678",
 + "name": "Товар 1",
 + "art": "01",
 + "price": 100.00,
 + "spec_price": 0,
 + "price_d": 95.00,
 + "discount_sum": 5.00,
 + "measure_unit": "шт.",
 + "country": "РФ",
 + "description": "описание товара",
 + "image": null
 + },
 + "card": {
 + "Код": "1234",
 + "Наименование": "123",
 + "ТекстДляЧека": "Текст чека ДК",
 + "НеВестиНакопление": false,
 + "ДеньРождения": "2021-03-19T00:00:00",
 + "Накопление": 0,
 + "КоличествоЧеков": 0,
 + "СуммаБонуса": 0,
 + "НомерТелефона": "",
 + "АдресЭлектроннойПочты": "dsa@das.com",
 + "Группы": [1]
 + }
 +}
 +</code>
 +
 +=== Пример неуспешного запроса ===
 +<code>
 +{
 + "result": "error",
 + "msg": "Товар не найден"
 +}
 +</code>
 +
 +==== Коллекция Postman ====
 +{{ :tp7:модули:м_online_ккм:discountcalculation.postman_collection.zip |}}
  
tp7/модули/м_online_ккм/discountcalculation.1617197718.txt.gz · Последнее изменение: 2021/03/31 13:35 — dzayonchkovskiy