Oficjalna dokumentacja API Goodloading

API – Rekomendacje

Łączenie się z backendem aplikacji

Aby połączyć się z backendem aplikacji, należy wprowadzić token.

URL: https://api.goodloading.com/api/external/calculation/recommendation

POST

Request

Request Headers

Nazwa Wartość Wymagane Opis
Authorization Bearer <token> Tak Klucz do autoryzacji

Request Body

Nazwa Wartość Wymagane Opis
name string Nie Nazwa projektu
note string Nie Opis projektu
loads array of Loads Tak Tablica z ładunkami
loadingSpaces array of Loading Spaces Nie Tablica z przestrzeniami ładunkowymi
options json Tak Opcje algorytmu przetwarzania
options.allowOverweight boolean Nie Ustawienie wartości na true spowoduje, że ładunki będą ustawiane w przestrzeni ładunkowej jeżeli waga przekroczy dopuszczalną ładowność. Domyślna wartość: false.
options.unit string Nie Jednostki wskazanych wymiarów. Można ustawić jedną z dwóch wartości:
– „cm” [Domyślne]
– „lb”
options.newAlgorithm boolean Nie Ustawienie wartości true powoduje użycie nowego algorytmu. Wartość domyślna: true.
options.loadingOrder string Nie Wartości:
“default” : na podstawie kolejności ładunków
“weight” : na podstawie wagi ładunków
“volume” : na podstawie objętości ładunków
“priority” : na podstawie priorytetyzacji ładunków
options.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.
options.includeSavedLoadingSpaces boolean Nie Dołącz zapisane na koncie administratora przestrzenie ładunkowe aby mogły uczestniczyć w rekomendacji. Wartość domyślna: false.

Przykłady – pojazdy

Przykład 1 – dane o przestrzeniach pobierane z Requesta – 1 przestrzeń

Ustawienie parametru w opcjach przetwarzania:

“options.includeSavedLoadingSpaces”: false

Request

{
       "loads": [
        {
            "id": 12,
            "quantity": 222,
            "name": "bananas",
            "length": 90,
            "width": 60,
            "height": 120,
            "weight": 100,
            "stacking": true,
            "allowToRotate": true,
            "color": "#42cfa2"
        },
        {
            "id": 2,
            "quantity": 1,
            "name": "oranges",
            "length": 120,
            "width": 110,
            "height": 155,
            "weight": 15,
            "stacking": 2,
            "allowToRotate": true,
            "color": "#f542dd"
        }
    ],
    "loadingSpaces": [
        {
            "name": "Solo truck 15 EP",
            "parts": [
                {
                    "length": 620,
                    "width": 245,
                    "height": 240,
                    "limit": 5000,
                    "axis": [
                        {
                            "distanceFromSpaceFront": -100,
                            "emptySpaceLoad": 800,
                            "maxLoad": 10000
                        },
                        {
                            "distanceFromSpaceFront": 580,
                            "emptySpaceLoad": 800,
                            "maxLoad": 10000
                        }
                    ]
                }
            ],
            "type": "vehicle"
        }
    ],
    "options": {
        "allowOverweight": true,
        "unit": "cm",
        "newAlgorithm": true,
        "multiStops": false,
        "loadingOrder": "weight",
        "includeSavedLoadingSpaces": false,
        "arrangeOptimally": true
    }
}

Wizualizacja rekomendacji

Algorytm rozłożył ładunek w 5 przestrzeniach ładunkowych Solo truck 15 EP

Rys. przedstawia ułożenia ładunków w przestrzeniach nr 1-4

Rys. przedstawia ułożenia ładunków w przestrzeniach nr 1-4

Rys. przedstawia ułożenia ładunków w przestrzeni nr 5

Rys. przedstawia ułożenia ładunków w przestrzeni nr 5

Przykład 2 – dane o przestrzeniach pobierane z Requesta – wiele przestrzeni

Ustawienie parametru w opcjach przetwarzania:

“options.includeSavedLoadingSpaces”: false

Request

{
 "loads": [
        {
           "quantity": 20,
           "name": "load 1",
           "length": 50,
           "width": 100,
           "height": 50,
           "weight": 50
        },
        {
           "quantity": 60,
           "name": "load 2",
           "length": 100,
           "width": 50,
           "height": 100,
           "weight": 150
        },
         {
           "quantity": 28,
           "name": "load 3",
           "length": 120,
           "width": 80,
           "height": 100,
           "weight": 100
        }
],
        "loadingSpaces": [
        {
            "name": "Bus 8 EP",
            "parts": [
                {
                    "length": 420,
                    "width": 220,
                    "height": 220,
                    "limit": 1500
                }
            ]
        },
        {
            "name": "Solówka 10 EP",
            "parts": [
                {
                    "length": 400.8,
                    "width": 241.2,
                    "height": 280,
                    "limit": 1050
                }
            ]
        },
        {
            "name": "Solówka 20 EP",
            "parts": [
                {
                    "length": 820,
                    "width": 245,
                    "height": 240,
                    "limit": 8000
                }
            ]
        }
    ],
     "options": {
                   "includeSavedLoadingSpaces": false
                }
}

Wizualizacja rekomendacji

Algorytm rozłożył ładunek w 2 przestrzeniach ładunkowych Solówka 20 EP EP

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2

Przykład 3 – dane o przestrzeniach ładunkowych pobierane z konta w aplikacji web

Ustawienie parametru w opcjach przetwarzania:

“options.includeSavedLoadingSpaces”: true

Algorytm pobiera z konta użytkownika, następujące przestrzenie ładunkowe

Algorytm pobiera z konta użytkownika, następujące przestrzenie ładunkowe

Request

{
    "name": "projekt 1",
    "note": "opis projektu",
    "loads": [
        {
            "id": 12,
            "quantity": 222,
            "name": "bananas",
            "length": 90,
            "width": 60,
            "height": 120,
            "weight": 100,
            "stacking": true,
            "allowToRotate": true,
            "color": "#42cfa2"
        },
        {
            "id": 2,
            "quantity": 1,
            "name": "oranges",
            "length": 120,
            "width": 110,
            "height": 155,
            "weight": 15,
            "stacking": 2,
            "allowToRotate": true,
            "color": "#f542dd"
        }
    ],
    "loadingSpaces": [
        {
            "name": "Solo truck 15 EP",
            "parts": [
                {
                    "length": 620,
                    "width": 245,
                    "height": 240,
                    "limit": 5000,
                    "axis": [
                        {
                            "distanceFromSpaceFront": -200,
                            "emptySpaceLoad": 800,
                            "maxLoad": 10000
                        },
                        {
                            "distanceFromSpaceFront": 580,
                            "emptySpaceLoad": 800,
                            "maxLoad": 10000
                        }
                    ]
                }
            ],
            "type": "vehicle"
        }
    ],
    "options": {
        "allowOverweight": true,
        "unit": "cm",
        "newAlgorithm": true,
        "multiStops": false,
        "loadingOrder": "weight",
        "includeSavedLoadingSpaces": true,
        "arrangeOptimally": true
    }
}

Wizualizacja rekomendacji

Algorytm rozłożył ładunek w 2 przestrzeniach ładunkowych Naczepa standard 33 EP

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2

Przykład 4 – wyłączenie z listy przestrzeni ładunkowych na koncie, przestrzeni Naczepa standard 33 EP, przy tym samym Request, co w Przykładzie 3

Wizualizacja rekomendacji

Algorytm rozłożył ładunek w 2 przestrzeniach ładunkowych Naczepa mega 33 EP

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2

Przykład 5- wyłączenie kilku przestrzeni ładunkowych, przy tym samym Request, co w Przykładzie 3 i 4

Wizualizacja rekomendacji

Algorytm rozłożył ładunek w 3 przestrzeniach ładunkowych Solówka 20 EP oraz w 1 przestrzeni Bus 8 EP

Rys. przedstawia ułożenia ładunków w przestrzeniach nr 1-3

Rys. przedstawia ułożenia ładunków w przestrzeniach nr 1-3

Rys. przedstawia ułożenia ładunków w przestrzeni nr 4

Rys. przedstawia ułożenia ładunków w przestrzeni nr 4

Przykłady – kontenery morskie

Przykład 1 – dane o przestrzeniach pobierane z Requesta z 1 przestrzenią ładunkową.

Ustawienie parametru w opcjach przetwarzania:

“options.includeSavedLoadingSpaces”: false

Request
{
    "name": "projekt 1",
    "note": "opis projektu",
    "loads": [
        {
            "id": 12,
            "quantity": 222,
            "name": "bananas",
            "length": 90,
            "width": 60,
            "height": 120,
            "weight": 100,
            "stacking": true,
            "allowToRotate": true,
            "color": "#42cfa2"
        },
        {
            "id": 2,
            "quantity": 1,
            "name": "oranges",
            "length": 120,
            "width": 110,
            "height": 155,
            "weight": 15,
            "stacking": 2,
            "allowToRotate": true,
            "color": "#f542dd"
        }
    ],
    "loadingSpaces": [
           {
            "type": "sea",
            "name": "sea",
            "parts": [
                {
                    "length": 400,
                    "width": 200,
                    "height": 200,
                    "limit": 24000
                }
            ]
        }
    ],
    "options": {
        "allowOverweight": true,
        "unit": "cm",
        "newAlgorithm": true,
        "multiStops": false,
        "loadingOrder": "weight",
        "includeSavedLoadingSpaces": false,
        "arrangeOptimally": true
    }
}

Wizualizacja rekomendacji

Algorytm rozłożył ładunek w 18 jednakowych kontenerach morskich, zdefiniowanych w Request

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeniach nr 2-17

Rys. przedstawia ułożenia ładunków w przestrzeniach nr 2-17

Rys. przedstawia ułożenia ładunków w przestrzeni nr 18

Rys. przedstawia ułożenia ładunków w przestrzeni nr 18

Przykład 2 – dane o przestrzeniach ładunkowych pobierane z konta w aplikacji web

Ustawienie parametru w opcjach przetwarzania:

“options.includeSavedLoadingSpaces”: true

Algorytm pobiera z konta użytkownika, następujące przestrzenie ładunkowe

Algorytm pobiera z konta użytkownika, następujące przestrzenie ładunkowe

Request
{
    "name": "projekt 1",
    "note": "opis projektu",
    "loads": [
        {
            "id": 12,
            "quantity": 222,
            "name": "bananas",
            "length": 90,
            "width": 60,
            "height": 120,
            "weight": 100,
            "stacking": true,
            "allowToRotate": true,
            "color": "#42cfa2"
        },
        {
            "id": 2,
            "quantity": 1,
            "name": "oranges",
            "length": 120,
            "width": 110,
            "height": 155,
            "weight": 15,
            "stacking": 2,
            "allowToRotate": true,
            "color": "#f542dd"
        }
    ],
    "loadingSpaces": [
           {
            "type": "sea",
            "name": "sea",
            "parts": [
                {
                    "length": 400,
                    "width": 200,
                    "height": 200,
                    "limit": 24000
                }
            ]
        }
    ],
    "options": {
        "allowOverweight": true,
        "unit": "cm",
        "newAlgorithm": true,
        "multiStops": false,
        "loadingOrder": "weight",
        "includeSavedLoadingSpaces": true,
        "arrangeOptimally": true
    }
}

Wizualizacja rekomendacji

Algorytm rozłożył ładunek w 2 przestrzeniach ładunkowych

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 1

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2

Rys. przedstawia ułożenia ładunków w przestrzeni nr 2