| GET | /Appointment/{Guid} |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Eras2Amw.Service.Server.ServiceModel.Eras2WebApp.Get;
using Eras2Amw.Service.Server.ServiceModel.Eras2WebApp;
using Eras2Amw.Service.Server.ServiceModel.Common;
using Eras2Amw.Service.Server.ServiceModel.Enums;
namespace Eras2Amw.Service.Server.ServiceModel.Common
{
[DataContract]
public partial class Appointment
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="Von")]
public virtual DateTime From { get; set; }
[DataMember(Name="Bis")]
public virtual DateTime To { get; set; }
[DataMember(Name="Monteure")]
public virtual IList<AppointmentStoreUser> AppointmentStoreUsers { get; set; }
[DataMember(Name="Nutzeinheiten")]
public virtual IList<AppointmentNutzeinheit> AppointmentNutzeinheiten { get; set; }
}
[DataContract]
public partial class AppointmentNutzeinheit
{
[DataMember(Name="NutzeinheitGuid")]
public virtual Guid NutzeinheitGuid { get; set; }
}
[DataContract]
public partial class AppointmentStoreUser
{
[DataMember(Name="MonteurGuid")]
public virtual Guid StoreUserId { get; set; }
}
[DataContract]
public partial class OrderState
{
[DataMember(Name="LastModified")]
public virtual DateTime? LastModified { get; set; }
[DataMember(Name="AuftragArten")]
public virtual IList<Nullable<OrderKind>> Kinds { get; set; }
[DataMember(Name="Bearbeitungsstatus")]
public virtual ProcessState? ProcessState { get; set; }
[DataMember(Name="AbgeschlossenDatum")]
public virtual DateTime? CompletedDate { get; set; }
}
}
namespace Eras2Amw.Service.Server.ServiceModel.Enums
{
public enum DeviceOrderKind
{
Assembly,
Maintenance,
Exchange,
Reading,
Inspection,
MainReading,
}
public enum ProcessState
{
InProgress,
Updating,
Creating,
Completed,
}
}
namespace Eras2Amw.Service.Server.ServiceModel.Eras2WebApp
{
[DataContract]
public partial class Abrechnungseinheit
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="Objektnummer")]
public virtual string Number { get; set; }
[DataMember(Name="Anmerkung")]
public virtual string Note { get; set; }
[DataMember(Name="Address")]
public virtual Address Address { get; set; }
}
[DataContract]
public partial class Address
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="Straße")]
public virtual string Street { get; set; }
[DataMember(Name="Straße2")]
public virtual string Street2 { get; set; }
[DataMember(Name="Hausnummer")]
public virtual string StreetNumber { get; set; }
[DataMember(Name="Postleitzahl")]
public virtual string Zipcode { get; set; }
[DataMember(Name="Ort")]
public virtual string City { get; set; }
[DataMember(Name="Postfach")]
public virtual string Mailbox { get; set; }
[DataMember(Name="Adresszusatz")]
public virtual string Additional { get; set; }
[DataMember(Name="Breitengrad")]
public virtual double Latitude { get; set; }
[DataMember(Name="Laengengrad")]
public virtual double Longitude { get; set; }
}
[DataContract]
public partial class DeviceOrderState
{
[DataMember(Name="GeraeteGuid")]
public virtual Guid DeviceGuid { get; set; }
[DataMember(Name="AuftragGuid")]
public virtual Guid OrderGuid { get; set; }
[DataMember(Name="AuftragArt")]
public virtual DeviceOrderKind? OrderKind { get; set; }
[DataMember(Name="Bearbeitungsstatus")]
public virtual ProcessState? ProcessState { get; set; }
[DataMember(Name="AbgeschlossenDatum")]
public virtual DateTime? CompletedDate { get; set; }
[DataMember(Name="AmwInfo")]
public virtual string AmwInfo { get; set; }
}
public partial class Order
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="Abrechnungseinheit")]
public virtual Abrechnungseinheit Abrechnungseinheit { get; set; }
[DataMember(Name="AuftragNummer")]
public virtual string Number { get; set; }
[DataMember(Name="Bezeichnung")]
public virtual string Label { get; set; }
[DataMember(Name="Anmerkung")]
public virtual string Note { get; set; }
[DataMember(Name="Termine")]
public virtual IList<Appointment> Appointments { get; set; }
[DataMember(Name="AuftragZustand")]
public virtual OrderState OrderState { get; set; }
}
}
namespace Eras2Amw.Service.Server.ServiceModel.Eras2WebApp.Get
{
[DataContract]
public partial class GetAppointment
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="AllAppointments")]
public virtual bool AllAppointments { get; set; }
}
public partial class GetAppointmentResponse
{
public GetAppointmentResponse()
{
BackDeviceStates = new List<DeviceOrderState>{};
}
public virtual Order Order { get; set; }
public virtual List<DeviceOrderState> BackDeviceStates { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
}
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: stage-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
}
}
}