| GET | /App/{UserId}/Order/{Guid} |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Eras2Amw.Service.Server.ServiceModel.Eras2Client.Order;
using Eras2Amw.Service.Server.ServiceModel.Common;
using Eras2Amw.Service.Server.ServiceModel.Enums;
using Eras2Amw.Service.Server.ServiceModel.Eras2WebApp;
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 NutzeinheitOrderPosition
{
[DataMember(Name="NutzeinheitGuid")]
public virtual Guid NutzeinheitGuid { get; set; }
}
[DataContract]
public partial class NutzeinheitOrderState
{
[DataMember(Name="NutzeinheitGuid")]
public virtual Guid NutzeinheitGuid { get; set; }
[DataMember(Name="LastModified")]
public virtual DateTime? LastModified { get; set; }
[DataMember(Name="AuftragArten")]
public virtual IList<Nullable<NutzeinheitOrderKind>> OrderKinds { get; set; }
[DataMember(Name="Bearbeitungsstatus")]
public virtual ProcessState? ProcessState { get; set; }
[DataMember(Name="AbgeschlossenDatum")]
public virtual DateTime? CompletedDate { get; set; }
[DataMember(Name="OsVersion")]
public virtual string OsVersion { get; set; }
[DataMember(Name="AppVersion")]
public virtual string AppVersion { get; set; }
[DataMember(Name="OsPlatform")]
public virtual string OsPlatform { get; set; }
[DataMember(Name="AppGeraeteNummmer")]
public virtual string AppDeviceNumber { get; set; }
[DataMember(Name="AmwInfoKeyGuid")]
public virtual Guid? AmwInfoKeyGuid { get; set; }
}
[DataContract]
public partial class Order
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="LastModified")]
public virtual DateTime? LastModified { get; set; }
[DataMember(Name="AbrechnungseinheitGuid")]
public virtual Guid AbrechnungseinheitGuid { 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="UnterschriftBenoetigt")]
public virtual bool IsSignatureRequired { get; set; }
[DataMember(Name="Erstellungsdatum")]
public virtual DateTime CreatedDate { get; set; }
[DataMember(Name="AuftragZustand")]
public virtual OrderState OrderState { get; set; }
[DataMember(Name="Termine")]
public virtual IList<Appointment> Appointments { get; set; }
[DataMember(Name="AuftragsPositionen")]
public virtual IList<OrderPosition> OrderPositions { get; set; }
[DataMember(Name="NutzeinheitZustaende")]
public virtual IList<NutzeinheitOrderState> NutzeinheitOrderStates { get; set; }
[DataMember(Name="GeraeteZustaende")]
public virtual IList<DeviceOrderState> DeviceOrderStates { get; set; }
[DataMember(Name="Auftraggeber")]
public virtual Orderer Orderer { get; set; }
[DataMember(Name="Unterschriften")]
public virtual IList<Signature> Signatures { get; set; }
}
[DataContract]
public partial class Orderer
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="Person")]
public virtual Person Person { get; set; }
[DataMember(Name="BetrieblichePosition")]
public virtual string BusinessPosition { get; set; }
}
[DataContract]
public partial class OrderPosition
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="LastModified")]
public virtual DateTime? LastModified { get; set; }
[DataMember(Name="Anmerkung")]
public virtual string Note { get; set; }
[DataMember(Name="SollMenge")]
public virtual int RequiredQuantity { get; set; }
[DataMember(Name="IstMenge")]
public virtual int ActualQuantity { get; set; }
[DataMember(Name="NutzeinheitOrderPositions")]
public virtual IList<NutzeinheitOrderPosition> NutzeinheitOrderPositions { get; set; }
[DataMember(Name="ArtikelGuid")]
public virtual Guid ArticleGuid { 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; }
}
[DataContract]
public partial class Person
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="LastModified")]
public virtual DateTime? LastModified { get; set; }
[DataMember(Name="Nachname1")]
public virtual string Lastname1 { get; set; }
[DataMember(Name="Nachname2")]
public virtual string Lastname2 { get; set; }
[DataMember(Name="Nachname3")]
public virtual string Lastname3 { get; set; }
[DataMember(Name="Vorname1")]
public virtual string Firstname1 { get; set; }
[DataMember(Name="Vorname2")]
public virtual string Firstname2 { get; set; }
[DataMember(Name="Anmerkung")]
public virtual string Note { get; set; }
[DataMember(Name="Anrede")]
public virtual string Salutation { get; set; }
[DataMember(Name="Titel")]
public virtual string Title { get; set; }
[DataMember(Name="PersonKommunikationen")]
public virtual IEnumerable<PersonCommunication> PersonCommunications { get; set; }
}
[DataContract]
public partial class PersonCommunication
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="LastModified")]
public virtual DateTime? LastModified { get; set; }
[DataMember(Name="Adresse")]
public virtual string Address { get; set; }
[DataMember(Name="Anmerkung")]
public virtual string Note { get; set; }
[DataMember(Name="KommunikationsFunktionGuid")]
public virtual Guid CommunicationFeatureGuid { get; set; }
}
[DataContract]
public partial class Signature
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
[DataMember(Name="Timestamp")]
public virtual DateTime? RecordedDate { get; set; }
[DataMember(Name="UnterschriftArt")]
public virtual SignatureKind? Kind { get; set; }
[DataMember(Name="NutzeinheitGuid")]
public virtual Guid NutzeinheitGuid { get; set; }
}
}
namespace Eras2Amw.Service.Server.ServiceModel.Enums
{
public enum DeviceOrderKind
{
Assembly,
Maintenance,
Exchange,
Reading,
Inspection,
MainReading,
}
public enum ProcessState
{
InProgress,
Updating,
Creating,
Completed,
}
public enum SignatureKind
{
Nutzer,
Technician,
}
}
namespace Eras2Amw.Service.Server.ServiceModel.Eras2Client.Order
{
[DataContract]
public partial class GetOrder
{
[DataMember(Name="Guid")]
public virtual Guid Guid { get; set; }
}
public partial class GetOrderResponse
{
public virtual Order Order { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
}
namespace Eras2Amw.Service.Server.ServiceModel.Eras2WebApp
{
[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; }
}
}
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 /App/{UserId}/Order/{Guid} HTTP/1.1
Host: inea-servamw.eras-online.de
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
order:
{
Guid: 00000000000000000000000000000000,
LastModified: 0001-01-01T00:00:00Z,
AbrechnungseinheitGuid: 00000000000000000000000000000000,
AuftragNummer: String,
Bezeichnung: String,
Anmerkung: String,
UnterschriftBenoetigt: False,
Erstellungsdatum: 0001-01-01T00:00:00Z,
AuftragZustand:
{
LastModified: 0001-01-01T00:00:00Z,
Bearbeitungsstatus: InProgress,
AbgeschlossenDatum: 0001-01-01T00:00:00Z
},
Auftraggeber:
{
Guid: 00000000000000000000000000000000,
Person:
{
Guid: 00000000000000000000000000000000,
LastModified: 0001-01-01T00:00:00Z,
Nachname1: String,
Nachname2: String,
Nachname3: String,
Vorname1: String,
Vorname2: String,
Anmerkung: String,
Anrede: String,
Titel: String
},
BetrieblichePosition: String
}
},
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}