{ "_type": "export", "__export_format": 4, "__export_date": "2024-03-28T09:50:50.166Z", "__export_source": "insomnia.importers:v0.1.0", "resources": [ { "_type": "workspace", "_id": "__WORKSPACE_ID__", "parentId": null, "name": "VRt.Packer [PC] 6.20.2289", "description": "Программный интерфейс для Veeroute Packer.\n\n# Описание\n\nСервис предназначен для расчета размещения товаров внутри заданных упаковок.\n\n## Виды упаковок\n\n### Поддон\n\n![pallet](../images/packer_pallet.svg)\n\n*Моно-поддон*\n\nЕсли поддон полностью укомплектован одинаковым товаром, то такой поддон называется **моно-поддон**,\nтакой поддон имеет следующие правила загрузки:\n\n1. Учитывается максимально допустимая высота поддона с уложенным на него товаром.\n1. Учитывается максимально допустимый вес загруженного поддона.\n1. Упаковки товара могут укладываться только параллельно стенкам поддона.\n1. Допускается поворачивать упаковки вокруг вертикальной оси Z и только под прямым углом.\n1. Чтобы выровнять высоту между позициями (для размещения еще одного поддона сверху), в укладку по слоям могут добавляться пустые места.\n\n*Разделенный на зоны поддон*\n\nПосле формирования моно-поддонов оставшаяся часть товаров того же артикула размещается на на следующем поддоне,\nкоторый делится при помощи картонной перегородки на зоны таким образом, чтобы в каждой зоне был размещен товар только одного артикула,\nпри этом зоны имеют следующие ограничения:\n\n1. Зоны прямоугольные.\n1. Соотношение между сторонами зон может быть любое.\n1. Одна из сторон любой зоны всегда соприкасается с краем поддоны.\n1. Допустимое количество зон на поддоне: от 2 до 6.\n1. Каждая зона заполняется по правилам заполнения моно-поддона.\n1. Высота укладки всех товаров не превышает 50 мм, чтобы сверху такого поддона можно было поставить еще один поддон.\n1. Допускается формировать поддоны с разной высотой укладки для разных позиций (разница высот больше 50 мм), если это будут верхние поддоны в стопке.\n\n### Миксбокс\n\n![mixbox](../images/packer_mixbox.svg)\n\nЕсли на описанных выше этапах не удается разместить номенклатуру таким образом,\nчтобы поддон был необходимой высоты или веса, используются миксбоксы:\n\n1. Миксбокс можно класть только в один слой.\n1. В одном миксбоксе могут находится разные товары, в этом случае он делится перегородками аналогично поддону (единственно отличие - не выравнивается высота упакованного товара).\n1. Миксбоксы можно смешивать с товарными позициями на одной палете.\n1. Один товар может быть упакован в разные миксбокс.\n\n### Слот\n\n![slot](../images/packer_slot.svg)\n\nЗагруженные поддоны укладываются в стопки друг на друга, слот - это место установки стопки поддонов.\nУ слота нет физического тела - поэтому размеры `body` слота нулевые.\n\n## Система координат\n\n![coordinates](../images/packer_coordinates.svg)\n\nДля указания местоположение упаковок и товаров используется локальная система координат, \nв которой координаты конкретного объекта указываются относительно ближнего левого нижнего угла родительского объекта, при этом:\n\n* Горизонтальная плоскость - оси **X**, **Y**\n* Вертикальная - ось **Z**\n\nСоотношение осей товаров и упаковок:\n\n* Ширина - по оси **X**\n* Длина - по оси **Y**\n* Высота - по оси **Z**\n\n## Диаграмма сущностей\n\n![erd](../uml/packer.svg)" }, { "parentId": "__WORKSPACE_ID__", "name": "Base environment", "data": { "base_url": "{{ scheme }}://{{ host }}{{ base_path }}" }, "_type": "environment", "_id": "__BASE_ENVIRONMENT_ID__" }, { "parentId": "__BASE_ENVIRONMENT_ID__", "name": "OpenAPI env", "data": { "scheme": "https", "base_path": "", "host": "api.edge.veeroute.tech", "bearerToken": "bearerToken" }, "_type": "environment", "_id": "env___BASE_ENVIRONMENT_ID___sub" }, { "parentId": "__WORKSPACE_ID__", "name": "Pack", "environment": {}, "_id": "fld___WORKSPACE_ID__152a5035", "_type": "request_group", "description": "Расчет размещения товаров внутри упаковок. \n" }, { "parentId": "__WORKSPACE_ID__", "name": "System", "environment": {}, "_id": "fld___WORKSPACE_ID__bc0792d8", "_type": "request_group", "description": "Системные функции.\nВспомогательный функционал, общий для всех сервисов.\n" }, { "parentId": "fld___WORKSPACE_ID__152a5035", "name": "Упаковка (SYNC)", "url": "{{ base_url }}/packer/pack/calculation", "body": { "mimeType": "application/json", "text": "{\n \"products\": [\n {\n \"key\": \"pallet_type_1\",\n \"count\": 1460,\n \"dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"max_pressure\": 2,\n \"compatible_package_keys\": [\n \"pallet_type_1\"\n ],\n \"attributes\": []\n }\n ],\n \"packages\": [\n {\n \"key\": \"pallet_type_1\",\n \"type\": \"MIXBOX\",\n \"body_dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"container_dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"container_coordinates\": {\n \"x\": 1000,\n \"y\": 2000,\n \"z\": 3000\n },\n \"attributes\": []\n }\n ],\n \"pack_settings\": {\n \"calculation_settings\": {\n \"max_calculation_time\": \"PT4M30S\",\n \"max_waiting_time\": \"PT2H\",\n \"result_ttl\": \"PT4M30S\",\n \"result_timezone\": 3,\n \"treat_warnings_as_errors\": true,\n \"precision\": 3\n }\n }\n}" }, "parameters": [], "headers": [], "authentication": { "type": "bearer", "token": "{{bearerToken}}", "prefix": "" }, "_type": "request", "_id": "req___WORKSPACE_ID__c60eede7", "method": "POST" }, { "parentId": "fld___WORKSPACE_ID__152a5035", "name": "Упаковка (ASYNC)", "url": "{{ base_url }}/packer/pack/calculation_async", "body": { "mimeType": "application/json", "text": "{\n \"products\": [\n {\n \"key\": \"pallet_type_1\",\n \"count\": 1460,\n \"dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"max_pressure\": 2,\n \"compatible_package_keys\": [\n \"pallet_type_1\"\n ],\n \"attributes\": []\n }\n ],\n \"packages\": [\n {\n \"key\": \"pallet_type_1\",\n \"type\": \"MIXBOX\",\n \"body_dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"container_dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"container_coordinates\": {\n \"x\": 1000,\n \"y\": 2000,\n \"z\": 3000\n },\n \"attributes\": []\n }\n ],\n \"pack_settings\": {\n \"calculation_settings\": {\n \"max_calculation_time\": \"PT4M30S\",\n \"max_waiting_time\": \"PT2H\",\n \"result_ttl\": \"PT4M30S\",\n \"result_timezone\": 3,\n \"treat_warnings_as_errors\": true,\n \"precision\": 3\n }\n }\n}" }, "parameters": [], "headers": [], "authentication": { "type": "bearer", "token": "{{bearerToken}}", "prefix": "" }, "_type": "request", "_id": "req___WORKSPACE_ID__387b6619", "method": "POST" }, { "parentId": "fld___WORKSPACE_ID__152a5035", "name": "Состояние расчета", "url": "{{ base_url }}/packer/pack/calculation_async/{{ id }}", "body": {}, "parameters": [], "headers": [], "authentication": { "type": "bearer", "token": "{{bearerToken}}", "prefix": "" }, "_type": "request", "_id": "req___WORKSPACE_ID__85c1479b", "method": "GET" }, { "parentId": "fld___WORKSPACE_ID__152a5035", "name": "Отмена расчета", "url": "{{ base_url }}/packer/pack/calculation_async/{{ id }}", "body": {}, "parameters": [], "headers": [], "authentication": { "type": "bearer", "token": "{{bearerToken}}", "prefix": "" }, "_type": "request", "_id": "req___WORKSPACE_ID__641882a8", "method": "DELETE" }, { "parentId": "fld___WORKSPACE_ID__152a5035", "name": "Получение результата", "url": "{{ base_url }}/packer/pack/result/{{ id }}", "body": {}, "parameters": [], "headers": [], "authentication": { "type": "bearer", "token": "{{bearerToken}}", "prefix": "" }, "_type": "request", "_id": "req___WORKSPACE_ID__6c317664", "method": "GET" }, { "parentId": "fld___WORKSPACE_ID__152a5035", "name": "Удаление результата", "url": "{{ base_url }}/packer/pack/result/{{ id }}", "body": {}, "parameters": [], "headers": [], "authentication": { "type": "bearer", "token": "{{bearerToken}}", "prefix": "" }, "_type": "request", "_id": "req___WORKSPACE_ID__b92af5bb", "method": "DELETE" }, { "parentId": "fld___WORKSPACE_ID__152a5035", "name": "Валидация данных", "url": "{{ base_url }}/packer/pack/validation", "body": { "mimeType": "application/json", "text": "{\n \"products\": [\n {\n \"key\": \"pallet_type_1\",\n \"count\": 1460,\n \"dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"max_pressure\": 2,\n \"compatible_package_keys\": [\n \"pallet_type_1\"\n ],\n \"attributes\": []\n }\n ],\n \"packages\": [\n {\n \"key\": \"pallet_type_1\",\n \"type\": \"MIXBOX\",\n \"body_dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"container_dimensions\": {\n \"length\": 1000,\n \"width\": 1000,\n \"height\": 1000,\n \"mass\": 1000\n },\n \"container_coordinates\": {\n \"x\": 1000,\n \"y\": 2000,\n \"z\": 3000\n },\n \"attributes\": []\n }\n ],\n \"pack_settings\": {\n \"calculation_settings\": {\n \"max_calculation_time\": \"PT4M30S\",\n \"max_waiting_time\": \"PT2H\",\n \"result_ttl\": \"PT4M30S\",\n \"result_timezone\": 3,\n \"treat_warnings_as_errors\": true,\n \"precision\": 3\n }\n }\n}" }, "parameters": [], "headers": [], "authentication": { "type": "bearer", "token": "{{bearerToken}}", "prefix": "" }, "_type": "request", "_id": "req___WORKSPACE_ID__59d3d005", "method": "POST" }, { "parentId": "fld___WORKSPACE_ID__bc0792d8", "name": "Проверка доступности", "url": "{{ base_url }}/packer/system/check", "body": {}, "parameters": [], "headers": [], "authentication": {}, "_type": "request", "_id": "req___WORKSPACE_ID__d56d9853", "method": "GET" }, { "parentId": "fld___WORKSPACE_ID__bc0792d8", "name": "Получение версии сервиса", "url": "{{ base_url }}/packer/system/version", "body": {}, "parameters": [], "headers": [], "authentication": {}, "_type": "request", "_id": "req___WORKSPACE_ID__c692273d", "method": "GET" }, { "parentId": "fld___WORKSPACE_ID__bc0792d8", "name": "Получение документации", "url": "{{ base_url }}/packer/file/{{ filename }}", "body": {}, "parameters": [], "headers": [], "authentication": {}, "_type": "request", "_id": "req___WORKSPACE_ID__971c419d", "method": "GET" } ] }