| GET | /WebApp/Appointments/ByDate/{FromDate} |
|---|
import Foundation
import ServiceStack
// @DataContract
public class GetAppointmentsByDate : Codable
{
// @DataMember(Name="FromDate")
public var FromDate:Date
required public init(){}
}
public class GetAppointmentsByDateResponse : Codable
{
public var orders:IList<Order>
public var totalNutzeinheiten:Int
public var completedNutzeinheiten:Int
public var totalDevices:Int
public var completedDevices:Int
public var responseStatus:ResponseStatus
public var amwInfoKeyNutzeinheiten:Int
public var amwInfoKeyDevices:Int
required public init(){}
}
// @DataContract
public class Order : Codable
{
// @DataMember(Name="Guid")
public var Guid:String
// @DataMember(Name="LastModified")
public var LastModified:Date?
// @DataMember(Name="AbrechnungseinheitGuid")
public var AbrechnungseinheitGuid:String
// @DataMember(Name="AuftragNummer")
public var AuftragNummer:String
// @DataMember(Name="Bezeichnung")
public var Bezeichnung:String
// @DataMember(Name="Anmerkung")
public var Anmerkung:String
// @DataMember(Name="UnterschriftBenoetigt")
public var UnterschriftBenoetigt:Bool
// @DataMember(Name="Erstellungsdatum")
public var Erstellungsdatum:Date
// @DataMember(Name="AuftragZustand")
public var AuftragZustand:OrderState
// @DataMember(Name="Termine")
public var Termine:IList<Appointment>
// @DataMember(Name="AuftragsPositionen")
public var AuftragsPositionen:IList<OrderPosition>
// @DataMember(Name="NutzeinheitZustaende")
public var NutzeinheitZustaende:IList<NutzeinheitOrderState>
// @DataMember(Name="GeraeteZustaende")
public var GeraeteZustaende:IList<DeviceOrderState>
// @DataMember(Name="Auftraggeber")
public var Auftraggeber:Orderer
// @DataMember(Name="Unterschriften")
public var Unterschriften:IList<Signature>
required public init(){}
}
// @DataContract
public class OrderState : Codable
{
// @DataMember(Name="LastModified")
public var LastModified:Date?
// @DataMember(Name="AuftragArten")
public var AuftragArten:IList<OrderKind?>
// @DataMember(Name="Bearbeitungsstatus")
public var Bearbeitungsstatus:ProcessState?
// @DataMember(Name="AbgeschlossenDatum")
public var AbgeschlossenDatum:Date?
required public init(){}
}
public enum ProcessState : String, Codable
{
case InProgress
case Updating
case Creating
case Completed
}
// @DataContract
public class Appointment : Codable
{
// @DataMember(Name="Guid")
public var Guid:String
// @DataMember(Name="Von")
public var Von:Date
// @DataMember(Name="Bis")
public var Bis:Date
// @DataMember(Name="Monteure")
public var Monteure:IList<AppointmentStoreUser>
// @DataMember(Name="Nutzeinheiten")
public var Nutzeinheiten:IList<AppointmentNutzeinheit>
required public init(){}
}
// @DataContract
public class AppointmentStoreUser : Codable
{
// @DataMember(Name="MonteurGuid")
public var MonteurGuid:String
required public init(){}
}
// @DataContract
public class AppointmentNutzeinheit : Codable
{
// @DataMember(Name="NutzeinheitGuid")
public var NutzeinheitGuid:String
required public init(){}
}
// @DataContract
public class OrderPosition : Codable
{
// @DataMember(Name="Guid")
public var Guid:String
// @DataMember(Name="LastModified")
public var LastModified:Date?
// @DataMember(Name="Anmerkung")
public var Anmerkung:String
// @DataMember(Name="SollMenge")
public var SollMenge:Int
// @DataMember(Name="IstMenge")
public var IstMenge:Int
// @DataMember(Name="NutzeinheitOrderPositions")
public var NutzeinheitOrderPositions:IList<NutzeinheitOrderPosition>
// @DataMember(Name="ArtikelGuid")
public var ArtikelGuid:String
required public init(){}
}
// @DataContract
public class NutzeinheitOrderPosition : Codable
{
// @DataMember(Name="NutzeinheitGuid")
public var NutzeinheitGuid:String
required public init(){}
}
// @DataContract
public class NutzeinheitOrderState : Codable
{
// @DataMember(Name="NutzeinheitGuid")
public var NutzeinheitGuid:String
// @DataMember(Name="LastModified")
public var LastModified:Date?
// @DataMember(Name="AuftragArten")
public var AuftragArten:IList<NutzeinheitOrderKind?>
// @DataMember(Name="Bearbeitungsstatus")
public var Bearbeitungsstatus:ProcessState?
// @DataMember(Name="AbgeschlossenDatum")
public var AbgeschlossenDatum:Date?
// @DataMember(Name="OsVersion")
public var OsVersion:String
// @DataMember(Name="AppVersion")
public var AppVersion:String
// @DataMember(Name="OsPlatform")
public var OsPlatform:String
// @DataMember(Name="AppGeraeteNummmer")
public var AppGeraeteNummmer:String
// @DataMember(Name="AmwInfoKeyGuid")
public var AmwInfoKeyGuid:String?
required public init(){}
}
// @DataContract
public class DeviceOrderState : Codable
{
// @DataMember(Name="GeraeteGuid")
public var GeraeteGuid:String
// @DataMember(Name="AuftragGuid")
public var AuftragGuid:String
// @DataMember(Name="AuftragArt")
public var AuftragArt:DeviceOrderKind?
// @DataMember(Name="Bearbeitungsstatus")
public var Bearbeitungsstatus:ProcessState?
// @DataMember(Name="AbgeschlossenDatum")
public var AbgeschlossenDatum:Date?
// @DataMember(Name="AmwInfo")
public var AmwInfo:String
required public init(){}
}
public enum DeviceOrderKind : String, Codable
{
case Assembly
case Maintenance
case Exchange
case Reading
case Inspection
case MainReading
}
// @DataContract
public class Orderer : Codable
{
// @DataMember(Name="Guid")
public var Guid:String
// @DataMember(Name="Person")
public var Person:Person
// @DataMember(Name="BetrieblichePosition")
public var BetrieblichePosition:String
required public init(){}
}
// @DataContract
public class Person : Codable
{
// @DataMember(Name="Guid")
public var Guid:String
// @DataMember(Name="LastModified")
public var LastModified:Date?
// @DataMember(Name="Nachname1")
public var Nachname1:String
// @DataMember(Name="Nachname2")
public var Nachname2:String
// @DataMember(Name="Nachname3")
public var Nachname3:String
// @DataMember(Name="Vorname1")
public var Vorname1:String
// @DataMember(Name="Vorname2")
public var Vorname2:String
// @DataMember(Name="Anmerkung")
public var Anmerkung:String
// @DataMember(Name="Anrede")
public var Anrede:String
// @DataMember(Name="Titel")
public var Titel:String
// @DataMember(Name="PersonKommunikationen")
public var PersonKommunikationen:[PersonCommunication] = []
required public init(){}
}
// @DataContract
public class PersonCommunication : Codable
{
// @DataMember(Name="Guid")
public var Guid:String
// @DataMember(Name="LastModified")
public var LastModified:Date?
// @DataMember(Name="Adresse")
public var Adresse:String
// @DataMember(Name="Anmerkung")
public var Anmerkung:String
// @DataMember(Name="KommunikationsFunktionGuid")
public var KommunikationsFunktionGuid:String
required public init(){}
}
// @DataContract
public class Signature : Codable
{
// @DataMember(Name="Guid")
public var Guid:String
// @DataMember(Name="Timestamp")
public var Timestamp:Date?
// @DataMember(Name="UnterschriftArt")
public var UnterschriftArt:SignatureKind?
// @DataMember(Name="NutzeinheitGuid")
public var NutzeinheitGuid:String
required public init(){}
}
public enum SignatureKind : String, Codable
{
case Nutzer
case Technician
}
Swift GetAppointmentsByDate DTOs
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 /WebApp/Appointments/ByDate/{FromDate} HTTP/1.1
Host: messdienstservice-stadtwerke-peine-servamw.eras-online.de
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{"totalNutzeinheiten":0,"completedNutzeinheiten":0,"totalDevices":0,"completedDevices":0,"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}},"amwInfoKeyNutzeinheiten":0,"amwInfoKeyDevices":0}