API – opis danych
Łączenie się z backendem aplikacji
Aby połączyć się z backendem aplikacji, należy wprowadzić token.
URL: https://api.goodloading.com/api/external/calculation
POST
Request
Request Headers
| Nazwa | Wartość | Wymagane | Opis |
|---|---|---|---|
| Authorization | Bearer {access_token} | Tak | Klucz do autoryzacji |
| Content-type | application/json | Tak |
Request Body
| Pole | Typ | Wymagane | Wartość |
|---|---|---|---|
| name | string | Nie | Nazwa projektu |
| note | string | Nie | Opis projektu |
| loads | array of Loads | Tak | Tablica z ładunkami |
| loadingSpaces | array of Loading Spaces | Tak | Tablica z przestrzeniami ładunkowymi |
| options | json | Tak | Opcje algorytmu |
Opcje algorytmu (options)
| Pole | Typ | Wymagane | Wartość |
|---|---|---|---|
| allowOverweight | boolean | Nie | Ustawienie wartości na true pozwala układać ładunki w przestrzeni ładunkowej nawet wtedy, gdy ich łączna waga przekracza dopuszczalną ładowność. Domyślna wartość: false. |
| unit | string | Nie | Jednostki podanych wymiarów. Można wybrać jedną z dwóch wartości: – cm – lb Domyślna wartość: “cm” |
| keepLoadsTogether | boolean | Nie | Ustawienie wartości na true powoduje, że ładunki z danej grupy będą ustawiane razem. Domyślna wartość: false. |
| newAlgorithm | boolean | Nie | Ustawienie wartości na true powoduje, że zostanie użyty nowy algorytm. Domyślna wartość: true. |
| loadingOrder | string | Nie | Wartości: “default”: na podstawie kolejności dodawania obiektów ładunkowych “weight”: na podstawie wagi ładunków “volume”: na podstawie objętości ładunków “priority”: na podstawie priorytetu ładunków „barrier”: na podstawie identyfikatora zamówienia ładunków oddzielonych barierami |
| multiStops | boolean | Nie | Ustawienie wartości na false powoduje, że multi przestaje być brane pod uwagę. Domyślna wartość: false. |
| arrangeOptimally | boolean | Nie | Włączenie funkcji „układaj optymalnie” spowoduje, że algorytm będzie szukał dla ładunków ułożenia z zachowaniem jak największej wolnej przestrzeni, bez względu na kolejność ich dodania. Domyślna wartość: false. |
Dane dotyczące ładunku (loads)
| Nazwa | Wartość | Wymagane | Opis |
|---|---|---|---|
| id | number | Nie | ID ładunku |
| quantity | integer | Tak | Ilość ładunków. Musi być liczbą całkowitą większą od 0. |
| name | string | Tak | Nazwa ładunku |
| length | number | Tak | Długość jednego ładunku. Musi być większa od 0. Dotyczy wyłącznie prostopadłościanów i rur. |
| width | number | Tak | Szerokość jednego ładunku. Musi być większa od 0. Dotyczy wyłącznie prostopadłościanów |
| height | number | Tak | Wysokość jednego ładunku. Musi być większa od 0. Dotyczy wyłącznie prostopadłościanów i beczek. |
| diameter | number | Tak | Średnica ładunku. Musi być większa od zera. Dotyczy wyłącznie rur i beczek. |
| weight | number | Tak | Waga jednego ładunku. Musi być większa lub równa 0. |
| priority | integer | Nie | Priorytet ładunku. Wartość musi być liczbą całkowitą większą lub równą 0. Wartość domyślna: 0. |
| stacking | boolean / integer | Nie | Piętrowanie ładunku. Wartość false oznacza, że jest nie piętrowalny, wartość true oznacza, że jest piętrowalny. Podanie liczby całkowitej większej od 0 oznacza, że ładunek jest piętrowalny z ograniczoną liczbą pięter. Wartość domyślna: true. |
| allowToRotate | boolean | Nie | Przyjmuje true lub false. Ustawienie wartości na true pozwala przy obliczeniach zamieniać szerokość z długością, czyli obracać ładunek względem podstawy. Dotyczy: prostopadłościanów i rur. Wartość domyślna true. |
| rotateFreely | boolean | Nie | Przyjmuje true lub false. Ustawienie wartości umożliwia obracanie ładunkiem w dowolną stronę. Dotyczy wyłącznie prostopadłościanów. Wartość domyślna false. |
| color | string | Nie | Wczytaj kolor ładunku w formacie kodu szesnastkowego (hex code). |
| origin | {id: number, name: string} |
Nie | Miejsce załadunku ładunku (multi stops) |
| destination | {id: number, name: string} |
Nie | Dotyczy funkcji multistop i oznacza miejsce rozładunku. |
| pctSupport | number | Nie | Procent obsługiwanej powierzchni ładunku. Umożliwia piętrowanie ładunku o większym polu podstawy, na ładunku o mniejszym polu podstawy. |
| alongFloor | boolean | Nie | Ustawienie wartości true powoduje, że ładunki, zanim zostaną spiętrowane, ułożą się wzdłuż podłogi. Przyjmuje prawdę lub fałsz. |
| maxWeightOnTop | number | Nie | Maksymalny ciężar, jaki można umieścić na ładunku. |
| boxesBelowAllowed | array of numbers | Nie | Tablica id pudełek, które można umieścić pod dodawanym ładunkiem. |
| loadType | number | Nie | 0:ładunek prostopadłościenny, 1:beczka, 2:rura Domyślnie “0” |
| order | number | Nie | ID zamówienia ładunku (brany pod uwagę tylko wtedy, gdy options.loadingOrder = „barrier”) |
Dane przestrzeni ładunkowej (loadingSpace)
| Nazwa | Wartość | Wymagane | Opis |
|---|---|---|---|
| quantity | integer | Tak | Liczba przestrzeni ładunkowych. Musi być liczbą całkowitą większą niż 0 |
| name | string | Tak | Nazwa przestrzeni ładunkowej |
| type | string | Nie | Typ przestrzeni ładunkowej. Można ustawić jedną z następujących wartości: – vehicle [domyślnie] – sea – air x – air y – pallet |
| parts | array | Tak | Tablica przestrzeni przestrzeni ładunkowej. Np. zestaw będzie miał dwie części. |
| part.length | number | Tak | Długość części przestrzeni ładunkowej. Musi być większa niż 0. |
| part.width | number | Tak | Szerokość części przestrzeni ładunkowej. Musi być większa niż 0. |
| part.height | number | Tak | Wysokość części przestrzeni ładunkowej. Musi być większa niż 0. |
| part.baseHeight | number | Nie | Wysokość podstawy palety |
| part.limit | number | Tak | Ładowność częściowa przestrzeni ładunkowej. Musi być większa niż 0 |
| part.axis | array | Nie | Tablica z osiami przestrzeni ładunkowej. Jeżeli jest podana musi zawierać dokładnie dwa albo trzy elementy. |
| part.axi.distanceFromSpaceFront | number | Tak | Odległość osi od początku przestrzeni ładunkowej, wartość ujemna, gdy oś znajduje się pod kabiną kierowcy. |
| part.axi.emptySpaceLoad | number | Tak | Obciążenie osi przy pustej przestrzeni ładunkowej. Wartość musi być liczbą większą lub równą 0. |
| part.axi.maxLoad | number | Tak | Najwyższe dopuszczaln |