Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

First implementation is developed as customer plugin in Go-Drink.

Create Swagger endpoint provider DeliveryV10. Additionally create controller endpoint (BasePathV10 + Delivery).

BasePathv10 = api/v1.0/Core/VinX/
Delivery = Delivery/

DeliveryPath = api/v1.0/Core/VinX/Delivery/

Driver

GET on {DeliveryPath}/Driver

Global Filters

Filter

Query

Notes

Only drivers which were already assigned to a delivery

Field name

Data type

Field VinX

Notes

Id

number

Mit_ID

FirstName

string

Mit_Vorname

LastName

string

Mit_Name

Shortname

string

Mit_URef

 Example Response
[
  {
    "Id": "1880",
    "FirstName": "Otto",
    "LastName": "von Bismarck",
    "Shortname": "OVB"
  }
]

Vehicle

GET on {DeliveryPath}/Vehicle

Field name

Data type

Field VinX

Notes

Id

number

FZ_Id

Description

string

FZ_Bezeichnung

Plate

string

FZ_Nummernschild

MinWeightInTons

number

FZ_TonnenMinimal

MaxWeightInTons

number

FZ_TonnenMaximal

 Example Response
[
  {
    "Id" : 2,
    "Description" : "MAN TGL",
    “Plate”: “FR 10001”,
    “MinWeightInTons”: 10,
    “MaxWeightInTons”: 19.9,
  },
  {
    "Id" : 3,
    "Description" : "MAN TGL",
    “Plate”: “FR 10002”,
    “MinWeightInTons”: 10,
    “MaxWeightInTons”: 19.9,
  }
]

Tour

GET on {DeliveryPath}/Tour

Enum DeliveryDays

Name

Value

NoDelivery

0

Morning

10

Afternoon

20

WholeDay

30

Field name

Data type

Field VinX

Notes

Id

number

Tour_Id

Description

string

Tour_Bezeichnung

Designation

string

Tour_Beschreibung

Number

number

Tour_Nummer

VehicleId

number

Tour_FahrzeugID

Monday

enum DeliveryDays

Tour_Montag

Tuesday

enum DeliveryDays

Tour_Dienstag

Wednesday

enum DeliveryDays

Tour_Mittwoch

Thursday

enum DeliveryDays

Tour_Donnerstag

Friday

enum DeliveryDays

Tour_Freitag

Saturday

enum DeliveryDays

Tour_Samstag

 Example Response
[
  {
    "Id" : 1,
    "Description" : "Lausanne Est: Vevey, Montreux et Valais",
    "Designation" : "Lausanne Est",
    "Number”: 12,
    “VehicleId”: 1,
    “Monday”: 10,
    “Tuesday”: 0,
    “Wednesday”: 10,
    “Thursday”: 0,
    “Friday”: 30,
    “Saturday”: 0
  }
]

Package

GET on {DeliveryPath}/Package

Global Filters

Filter

Query

Notes

ArticleType

Artikeltyp = 1

Return

Retourenanzeige = true

Field name

Data type

Field VinX

Notes

Id

number

Art_ID

Number

number

Art_Artikelnummer

Description

string

Art_Bezeichnung

 Example Response
[
  {
    "Id": 8823,
    "Number": 1088,
    "Description": "Vini 24-er (24x.-30), Fr. 7.20"
  }
]

Deliveries Read

GET on {DeliveryPath}

Global Filters

Filter

Query

Notes

not closed

Status < ??

in the future

StartZeit >= Today

Enum State

Name

Value

Open

10

Fixed

20

Printed

30

InDelivery

50

Delivered

60

Archived

100

Field name

Data type

Field VinX

Notes

Id

number

Auslieferung_ID

TourId

number

Auslieferung_TourID

VehicleId

number

Auslieferung_FahrzeugID

DriverId

number

Auslieferung_ChauffeurID

State

enum State

Auslieferung_Status

Date

Date

Auslieferung_Datum

Timing

enum DeliveryDays

Auslieferung_Zeitpunkt

Morning, afternoon, whole day

Stations

array

.. Position

number

Station_Position

delivery sequence

.. Address

object

../.. Id

number

Adr_ID

../.. Number

number

Adr_Adressnummer

../.. Name

string

Adr_Name

../.. Street

string

Adr_Strasse

../.. City

string

Adr_Ort

../.. Zip

number

Adr_PLZ

../.. Email

string

Adr_EMail

../.. NotifyByTelephone

boolean

Adr_AvisierungsKanal + Adr_LieferAvisierung

is calculated: notify is set and type is telephone

.. Receipt

object

../.. Id

number

Bel_ID

../.. number

number

Bel_BelegNr

../.. Remarks

string

Bel_Hinweis

../.. Type

string

Bel_Belegtyp

description from document type

../.. Weight

number

calculated

aggregated from Artikelposition.Artikel.Gewichtsanteil

../.. Value

number

Bel_ArtikelTotal

../.. Contact

object

../../.. FirstName

string

KP_Vorname

../../.. LastName

string

KP_Name

../../.. Telephone

string

KP_Tel

../../.. Mobile

string

KP_Natel

../../.. Email

string

KP_EMail

../.. Positions

array

../../.. Id

number

BelPos_Id

../../.. PositionOnReceipt

number

BelPos_Position

sequence of positions

../../.. ArticleId

number

BelPos_ArtikelID

../../.. ArticleNumber

number

Art_Artikelnummer

../../.. Description

string

Art_Bezeichnung

../../.. Quantity

number

BelPos_MengeGG

../../.. QuantityPackage

number

Gross_EinhProGG

../../.. Filling

string

Abf_Suchbegriff

../../.. Package

string

Gross_Suchbegriff

../.. Packages

array

../../.. Id

number

GebPos_ArtikelID

../../.. Number

number

Art_Artikelnummer

../../.. QuantityDelivered

number

GebPos_Geliefert

../../.. QuantityReturned

number

GebPos_Retour

 Example Response
[
  {
    "Id": 1,
    "TourId": 5,
    "VehicleId": 1,
    "DriverId": 12,
    "State": "Fixed",
    "Date": "2024-10-13T00:00:00",
    "Timing": "Morning",
    "Stations": [
      {
        "Position": 1,
        "Address": {
          "Id": 6656,
          "Number": 123455,
          "Name": "Hotel & Taverne zum alten Löwen",
          "Street": "Zugstrasse 9",
          "City": "Zürich",
          "Zip": 8006,
          "Email": "hotel@alten-loewen.ch",
          "NotifyByTelephone": true,
        },
        "Receipt": {
          "Id": 1324,
          "Number": 1245235,
          "Remarks": "Lieferung über den Hinterausgang",
          "Type": "Lieferschein",
          "Contact": {
            "FirstName": "Franz",
            "LastName": "Ferdinand",
            "Telephone": "+417800000000",
            "Mobile": "+417900000000",
            "Email": "franz.ferdinand@kuk.at"
          },
          "Positions": [
            {
              "Id": 124154,
              "PositionOnReceipt": 1,
              "ArticleId": 32513245,
              "ArticleNumber": 1241242,
              "Description": "Moët & Chandon ICE Impérial netto",
              "Quantity": 12,
              "QuantityPackage": 2,
              "Filling": "150cl EW (150cl EW)",
              "Package": "6er Kart"
            }
          ],
          "Packages": [
            {
              "Id": 1234561,
              "Number": 1234561,
              "QuantityDelivered": 1,
              "QuantityReturned": 4
            }
          ]
        }
      }
    ]
  }
]

Deliveries Write

Post on {DeliveryPath}

Field name

Data type

Field VinX

Notes

Id

number

Auslieferung_ID

If Id is null a new delivery gets created.

TourId

number

Auslieferung_TourID

VehicleId

number

Auslieferung_FahrzeugID

DriverId

number

Auslieferung_ChauffeurID

State

enum State

Auslieferung_Status

Date

Date

 Auslieferung_Datum

 

Timing

enum DeliveryDays

 Auslieferung_Zeitpunkt

Morning, afternoon, whole day

Stations

array

If stations array is empty the delivery gets deleted.

.. Position

number

Station_Position

delivery sequence

.. Receipt

object

../.. Id

number

Bel_ID

../.. Packages

array

incremental

Is used for return of packages.

../../.. Id

number

GebPos_ArtikelID

../../.. QuantityReturned

number

GebPos_Retour

if already exists value gets replaced

 Example Request
[
  {
    "Id": 1,
    "TourId": 5,
    "VehicleId": 1,
    "DriverId": 12,
    "State": "Fixed",
    "Date": "2024-10-13T00:00:00",
    "Timing": "Morning",
    "Stations": [
      {
        "Position": 1,
        "Receipt": {
          "Id": 1324,
          "Packages": [
            {
              "Id": 1234561,
              "QuantityReturned": 4
            }
          ]
        }
      }
    ]
  }
]
 Example Response
[
  {
    "Id": 1,
    "TourId": 5,
    "VehicleId": 1,
    "DriverId": 12,
    "State": "Fixed",    
    "Date": "2024-10-13T00:00:00",
    "Timing": "Morning",
    "Stations": [
      {
        "Position": 1,
        "Address": {
          "Id": 6656,
          "Number": 123455,
          "Name": "Hotel & Taverne zum alten Löwen",
          "Street": "Zugstrasse 9",
          "City": "Zürich",
          "Zip": 8006,
          "Email": "hotel@alten-loewen.ch",
          "NotifyByTelephone": true,
        },
        "Receipt": {
          "Id": 1324,
          "Number": 1245235,
          "Remarks": "Lieferung über den Hinterausgang",
          "Type": "Lieferschein",
          "Contact": {
            "FirstName": "Franz",
            "LastName": "Ferdinand",
            "Telephone": "+417800000000",
            "Mobile": "+417900000000",
            "Email": "franz.ferdinand@kuk.at"
          },
          "Positions": [
            {
              "Id": 124154,
              "PositionOnReceipt": 1,
              "ArticleId": 32513245,
              "ArticleNumber": 1241242,
              "Description": "Moët & Chandon ICE Impérial netto",
              "Quantity": 12,
              "QuantityPackage": 2,
              "Filling": "150cl EW (150cl EW)",
              "Package": "6er Kart"
            }
          ],
          "Packages": [
            {
              "Id": 1234561,
              "Number": 1234561,
              "QuantityDelivered": 1,
              "QuantityReturned": 4
            }
          ]
        }
      }
    ]
  }
]

Media

Post on {DeliveryPath}/receipt/{id}/media

Field name

Data type

Field VinX

Notes

data

array string

list of pdf or photo encoded as base64

 Example Request
[
 "Base64Pdf",
 "Base64Photo1",
 "Base64Photo2"
]
  • No labels