| GET | /Appointment/{Guid} |
|---|
"use strict";
export class Address {
/** @param {{Guid?:string,Stra_e?:string,Stra_e2?:string,Hausnummer?:string,Postleitzahl?:string,Ort?:string,Postfach?:string,Adresszusatz?:string,Breitengrad?:number,Laengengrad?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Guid;
/** @type {string} */
Stra_e;
/** @type {string} */
Stra_e2;
/** @type {string} */
Hausnummer;
/** @type {string} */
Postleitzahl;
/** @type {string} */
Ort;
/** @type {string} */
Postfach;
/** @type {string} */
Adresszusatz;
/** @type {number} */
Breitengrad;
/** @type {number} */
Laengengrad;
}
export class Abrechnungseinheit {
/** @param {{Guid?:string,Objektnummer?:string,Anmerkung?:string,Address?:Address}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Guid;
/** @type {string} */
Objektnummer;
/** @type {string} */
Anmerkung;
/** @type {Address} */
Address;
}
export class AppointmentStoreUser {
/** @param {{MonteurGuid?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
MonteurGuid;
}
export class AppointmentNutzeinheit {
/** @param {{NutzeinheitGuid?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
NutzeinheitGuid;
}
export class Appointment {
/** @param {{Guid?:string,Von?:string,Bis?:string,Monteure?:IList<AppointmentStoreUser>,Nutzeinheiten?:IList<AppointmentNutzeinheit>}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Guid;
/** @type {string} */
Von;
/** @type {string} */
Bis;
/** @type {IList<AppointmentStoreUser>} */
Monteure;
/** @type {IList<AppointmentNutzeinheit>} */
Nutzeinheiten;
}
/** @typedef {'InProgress'|'Updating'|'Creating'|'Completed'} */
export var ProcessState;
(function (ProcessState) {
ProcessState["InProgress"] = "InProgress"
ProcessState["Updating"] = "Updating"
ProcessState["Creating"] = "Creating"
ProcessState["Completed"] = "Completed"
})(ProcessState || (ProcessState = {}));
export class OrderState {
/** @param {{LastModified?:string,AuftragArten?:IList<OrderKind>,Bearbeitungsstatus?:ProcessState,AbgeschlossenDatum?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?string} */
LastModified;
/** @type {IList<OrderKind>} */
AuftragArten;
/** @type {?ProcessState} */
Bearbeitungsstatus;
/** @type {?string} */
AbgeschlossenDatum;
}
export class Order {
/** @param {{Guid?:string,Abrechnungseinheit?:Abrechnungseinheit,AuftragNummer?:string,Bezeichnung?:string,Anmerkung?:string,Termine?:IList<Appointment>,AuftragZustand?:OrderState}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Guid;
/** @type {Abrechnungseinheit} */
Abrechnungseinheit;
/** @type {string} */
AuftragNummer;
/** @type {string} */
Bezeichnung;
/** @type {string} */
Anmerkung;
/** @type {IList<Appointment>} */
Termine;
/** @type {OrderState} */
AuftragZustand;
}
/** @typedef {'Assembly'|'Maintenance'|'Exchange'|'Reading'|'Inspection'|'MainReading'} */
export var DeviceOrderKind;
(function (DeviceOrderKind) {
DeviceOrderKind["Assembly"] = "Assembly"
DeviceOrderKind["Maintenance"] = "Maintenance"
DeviceOrderKind["Exchange"] = "Exchange"
DeviceOrderKind["Reading"] = "Reading"
DeviceOrderKind["Inspection"] = "Inspection"
DeviceOrderKind["MainReading"] = "MainReading"
})(DeviceOrderKind || (DeviceOrderKind = {}));
export class DeviceOrderState {
/** @param {{GeraeteGuid?:string,AuftragGuid?:string,AuftragArt?:DeviceOrderKind,Bearbeitungsstatus?:ProcessState,AbgeschlossenDatum?:string,AmwInfo?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
GeraeteGuid;
/** @type {string} */
AuftragGuid;
/** @type {?DeviceOrderKind} */
AuftragArt;
/** @type {?ProcessState} */
Bearbeitungsstatus;
/** @type {?string} */
AbgeschlossenDatum;
/** @type {string} */
AmwInfo;
}
export class GetAppointmentResponse {
/** @param {{order?:Order,backDeviceStates?:DeviceOrderState[],responseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {Order} */
order;
/** @type {DeviceOrderState[]} */
backDeviceStates;
/** @type {ResponseStatus} */
responseStatus;
}
export class GetAppointment {
/** @param {{Guid?:string,AllAppointments?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Guid;
/** @type {boolean} */
AllAppointments;
}
JavaScript GetAppointment DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /Appointment/{Guid} HTTP/1.1
Host: marneth-messdienst-servamw.eras-online.de
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
appointment:
{
Guid: 00000000000000000000000000000000,
Von: 0001-01-01T00:00:00Z,
Bis: 0001-01-01T00:00:00Z
},
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}