| GET | /Appointment/{Guid} |
|---|
import java.math.*
import java.util.*
import net.servicestack.client.*
import com.google.gson.annotations.*
import com.google.gson.reflect.*
@DataContract
open class GetAppointment
{
@DataMember(Name="Guid")
@SerializedName("Guid")
var guid:UUID? = null
@DataMember(Name="AllAppointments")
@SerializedName("AllAppointments")
var allAppointments:Boolean? = null
}
open class GetAppointmentResponse
{
var order:Order? = null
var backDeviceStates:ArrayList<DeviceOrderState> = ArrayList<DeviceOrderState>()
var responseStatus:ResponseStatus? = null
}
open class Order
{
@DataMember(Name="Guid")
@SerializedName("Guid")
var guid:UUID? = null
@DataMember(Name="Abrechnungseinheit")
@SerializedName("Abrechnungseinheit")
var abrechnungseinheit:Abrechnungseinheit? = null
@DataMember(Name="AuftragNummer")
@SerializedName("AuftragNummer")
var number:String? = null
@DataMember(Name="Bezeichnung")
@SerializedName("Bezeichnung")
var label:String? = null
@DataMember(Name="Anmerkung")
@SerializedName("Anmerkung")
var note:String? = null
@DataMember(Name="Termine")
@SerializedName("Termine")
var appointments:IList<Appointment>? = null
@DataMember(Name="AuftragZustand")
@SerializedName("AuftragZustand")
var orderState:OrderState? = null
}
@DataContract
open class Abrechnungseinheit
{
@DataMember(Name="Guid")
@SerializedName("Guid")
var guid:UUID? = null
@DataMember(Name="Objektnummer")
@SerializedName("Objektnummer")
var number:String? = null
@DataMember(Name="Anmerkung")
@SerializedName("Anmerkung")
var note:String? = null
@DataMember(Name="Address")
@SerializedName("Address")
var address:Address? = null
}
@DataContract
open class Address
{
@DataMember(Name="Guid")
@SerializedName("Guid")
var guid:UUID? = null
@DataMember(Name="Straße")
@SerializedName("Straße")
var street:String? = null
@DataMember(Name="Straße2")
@SerializedName("Straße2")
var street2:String? = null
@DataMember(Name="Hausnummer")
@SerializedName("Hausnummer")
var streetNumber:String? = null
@DataMember(Name="Postleitzahl")
@SerializedName("Postleitzahl")
var zipcode:String? = null
@DataMember(Name="Ort")
@SerializedName("Ort")
var city:String? = null
@DataMember(Name="Postfach")
@SerializedName("Postfach")
var mailbox:String? = null
@DataMember(Name="Adresszusatz")
@SerializedName("Adresszusatz")
var additional:String? = null
@DataMember(Name="Breitengrad")
@SerializedName("Breitengrad")
var latitude:Double? = null
@DataMember(Name="Laengengrad")
@SerializedName("Laengengrad")
var longitude:Double? = null
}
@DataContract
open class Appointment
{
@DataMember(Name="Guid")
@SerializedName("Guid")
var guid:UUID? = null
@DataMember(Name="Von")
@SerializedName("Von")
var from:Date? = null
@DataMember(Name="Bis")
@SerializedName("Bis")
var to:Date? = null
@DataMember(Name="Monteure")
@SerializedName("Monteure")
var appointmentStoreUsers:IList<AppointmentStoreUser>? = null
@DataMember(Name="Nutzeinheiten")
@SerializedName("Nutzeinheiten")
var appointmentNutzeinheiten:IList<AppointmentNutzeinheit>? = null
}
@DataContract
open class AppointmentStoreUser
{
@DataMember(Name="MonteurGuid")
@SerializedName("MonteurGuid")
var storeUserId:UUID? = null
}
@DataContract
open class AppointmentNutzeinheit
{
@DataMember(Name="NutzeinheitGuid")
@SerializedName("NutzeinheitGuid")
var nutzeinheitGuid:UUID? = null
}
@DataContract
open class OrderState
{
@DataMember(Name="LastModified")
@SerializedName("LastModified")
var lastModified:Date? = null
@DataMember(Name="AuftragArten")
@SerializedName("AuftragArten")
var kinds:IList<OrderKind?>? = null
@DataMember(Name="Bearbeitungsstatus")
@SerializedName("Bearbeitungsstatus")
var processState:ProcessState? = null
@DataMember(Name="AbgeschlossenDatum")
@SerializedName("AbgeschlossenDatum")
var completedDate:Date? = null
}
enum class ProcessState
{
InProgress,
Updating,
Creating,
Completed,
}
@DataContract
open class DeviceOrderState
{
@DataMember(Name="GeraeteGuid")
@SerializedName("GeraeteGuid")
var deviceGuid:UUID? = null
@DataMember(Name="AuftragGuid")
@SerializedName("AuftragGuid")
var orderGuid:UUID? = null
@DataMember(Name="AuftragArt")
@SerializedName("AuftragArt")
var orderKind:DeviceOrderKind? = null
@DataMember(Name="Bearbeitungsstatus")
@SerializedName("Bearbeitungsstatus")
var processState:ProcessState? = null
@DataMember(Name="AbgeschlossenDatum")
@SerializedName("AbgeschlossenDatum")
var completedDate:Date? = null
@DataMember(Name="AmwInfo")
@SerializedName("AmwInfo")
var amwInfo:String? = null
}
enum class DeviceOrderKind
{
Assembly,
Maintenance,
Exchange,
Reading,
Inspection,
MainReading,
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
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: dumpro-servamw.eras-online.de
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"appointment":{"Guid":"00000000000000000000000000000000","Von":"0001-01-01T00:00:00.0000000Z","Bis":"0001-01-01T00:00:00.0000000Z"},"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}