Документация

Описание функциональных характеристик программного обеспечения программы для автоматизации расчета стоимости транспортных услуг

Программа для автоматизации расчета стоимости транспортных услуг реализует алгоритм расчета стоимости услуг доставки и подъема и предназначена для предоставления стоимости услуг системам потребителям, посредством которых пользователь\клиент выбирает и оформляет услугу. Её функционал включает следующие основные характеристики:
  1. Прием и обработка запросов: Система принимает запросы, содержащие данные, в т.ч. на основе которых рассчитывается стоимость услуги:

  • Товары (Goods)
  • Единицы измерения (Goods.dimensions), которые могут включать высоту, ширину, длину и вес товаров
  • Дата расчета (date)
  • Сумма заказа (orderAmount)
  • Город формирования запроса (cityId)
  • Подразделение формирования запроса (subdivisionid)
  • Отправитель (dispatch)
  • Массив адресов доставки – destinations
  • Признак принудительного подбора транспортного средства с манипулятором (manipulator)
  • Параметры доставки (deliveryParams)
  • Виды доставки (deliveryParams.deliveryType)
  • Период доставки (interval)
  • Виды транспортных средств (deliveryParams.transportTypes)

  1. Расчет стоимости услуги: В случае передачи необходимых и достаточных параметров система предоставляет ответ, содержащий данные о стоимости услуги:

  • Вид транспортного средства (transportType)
  • Тип доставки - если нет доступных интервалов, то тип доставки не передается (deliveryType)
  • Массив доступных периодов доставки (timeIntervals)
  • Признак необходимости использования манипулятора (manipulator)
  • Признак наличия бесплатного подъема (freeLift)
  • Признак подобранной акции для доставки (признак подобранной акции для доставки)
  • Массив дополнительных услуг (additionalServices)
  • Массив данных о возникших ошибках на стороне системы (errors)

  1. Управление параметрами алгоритма: Система содержит НСИ на основании данных которой в т.ч. осуществляется расчет стоимости услуги:

  • Константы
  • Справочники
  • Документы

  1. Управление ролевой моделью системы: Система позволяет настраивать роли с определенным доступом к функциям системы:

  • Чтение
  • Изменение
  • Добавление

Таким образом, программа для автоматизации расчета стоимости транспортных услуг обеспечивает получение стоимости услуги в зависимости от разнообразных параметров.

Эксплуатация экземпляра программы для автоматизации расчета стоимости транспортных услуг

Для получения стоимости услуги посредством системы, необходимо выполнить GET- - запрос по URL полученному от технической поддержки.

Описание переданных параметров

Параметры должны быть в наличии, т.е. если deliveryParams можно не заполнять, но сам ключ присутствовать должен.
Параметр
Тип данных
Пример значения
Обязательность возврата значения параметра
Описание
Goods - товары
1
id
string
4d93d299-3f3f-11e9-80c7-00155dfc0c4f
да
идентификатор (ГУИД) товара
2
name
string
Аэратор коньковый для гибкой черепицы Технониколь с крепежом и фильтром 1000х325 мм
нет
наименование товара
3
count
number
4
да
количество товара
Goods.dimensions - единицы измерения и количество
1
id
string
df64857e-9bca-4bcd-a617-861e83689039
нет
идентификатор (ГУИД) единицы измерения, если не передан, по по умолчанию используется ОсновнаяЕдиницаИзмерения
2
height
number
30,000
нет
высота
3
width
number
325,000
нет
ширина
4
length
number
1 000,000
нет
длина
5
weight
number
1,140
нет
вес
date - дата расчета
1
date
string
04.09.2023 17:56:52
нет
дата расчета, если пусто - считаем на текущую
orderAmount - сумма заказа
1
orderAmount
number
23150,000
да
сумма заказа, по которому производится расчет стоимости доставки
cityId - город формирования запроса
1
cityId
string
0a635aab-c532-11e7-ad18-00259038e9f2
да
идентификатор (ГУИД) города, для которого необходимо провести расчет
subdivisionid - подразделение формирования запроса
1
subdivisionid
string
Тихвин
да
идентификатор (ГУИД) подразделения, для которого необходимо провести расчет
dispatch - отправитель
1
id
string
a15db6c3-305d-11e0-9d49-001f29c6db02
да
идентификатор (ГУИД) подразделения-отправителя
2
name
string
Планерная
нет
наименование адреса подразделения
3
latitude
string
59,9963580000000
да
широта
4
longitude
string
30,2345170000000
да
долгота
destinations - массив адресов доставки
1
id
string
8a1cde9a-6836-11e6-80bd-0cc47a6b75e3
да
идентификатор (ГУИД) адреса доставки
2
name
string
Областная ул., 1, Санкт-Петербург, Кудрово
нет
наименование адреса доставки
3
latitude
string
59,9143104604922
да
широта
4
longitude
string
30,5047845840454
да
долгота
manipulator - признак принудительного подбора транспортного средства с манипулятором (даже если ни одной позиции в массиве goods с этим признаком)
1
manipulator
boolean
true
нет
признак принудительного подбора транспортного средства с манипулятором
deliveryParams - параметры доставки, обязательный ключ, но внутри может не быть записей deliveryParams.deliveryType - виды доставки
1
id
string
14541e72-4a07-42f4-896e-fb2d4290acf2
нет
идентификатор (ГУИД) вида доставки
2
name
string
Точно ко времени
нет
наименование вида доставки
interval - периоды доставки
1
id
string
14541e72-4a07-42f4-896e-fb2d4290acf3
нет
ИмяПеречисления интервала доставки из УТ (на стороне Гаусс - РС СопоставлениеИнтерваловДоставки, ресурс ИмяПеречисления)
2
start
string
12:00
нет
начало интервала
3
end
string
18:00
нет
конец интервала
4
date
string
нет
дата, от которой идёт отсчет сдвигов (смещений) в часах при получении доступных периодов (в УТ)
deliveryParams.transportTypes - виды транспортных средств
id
string
14541e72-4a07-42f4-896e-fb2d4290acf4
нет
идентификатор (ГУИД) вида ТС
name
string
1.8 т (высота 2,4м)
нет
наименование вида ТС
count
number
1
нет
количество ТС

Пример ответа от системы

[
  {
    "cost": 0,
    "transportType": {
      "id": "string",
      "name": "string"
    },
    "deliveryType": {
      "id": "string",
      "name": "string",
      "count": "0"     
    },
    "timeIntervals": [
      {
        "id": "string",
        "start": "string",
        "end": "string"
      }
    ],
    "manipulator": true,
    "freeLift": true,
    "promotion": true,
    "additionalServices": [
      {
        "id": "string",
        "type": "string",
        "price": 0
      }
    ],
    "errors": [
      {
        "errorType": "string",
        "message": "string"
      }
    ]
  }
]

Описание ответа

Для управление стоимостью услуги в системе предусмотрено управление константами, справочниками, документами:

  • Константы:

  1. ИспользоватьФункционалАвторазмещенияЗаказаНаБлижайшейДоступнойБазеОтгрузки
  2. ИспользоватьВозможностьНаложенияЗонЗЕСД
  3. ИспользоватьДоставкуСборныхГрузов
  4. ИспользоватьСдвигИнтерваловПоПодразделениям
  5. РазделятьСтоимостьДоставкиПоПодразделениям

  • Справочники:

  1. Лифты
  2. НормативыПодъема
  3. Адреса
  4. ВидыТранспорта
  5. ВидыЦенДоставки
  6. ГеоРайоны
  7. КлассификаторРайонов
  8. ВидыДоставки
  9. НастройкиСистемы
  10. ИнтервалыДоставки

  • Документы:

  1. Установка цен
  2. Установка соответствий видов цен георайонам

Для управления параметрами алгоритма расчета стоимости в системе предусмотрена ролевая модель, которая позволяет обеспечивать настройки доступа к функциям управления константами, справочниками, документами посредством функций:

  • Чтение
  • Изменение
  • Добавление

Итог

Ответ от программы для автоматизации расчета стоимости транспортных услуг включает данные о ее стоимости для каждого запроса с разными входными параметрами, такими как время доставки, информация о доставляемых товарах (количество, весогабаритные характеристики), координаты доставки и пр.