| GET | /api/v1/nutzeinheiten/{Guid} |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Get;
using Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Models;
using Eras2Web.Service.Desktop.Server.ServiceModel.Enums;
using Eras2Web.Service.Desktop.Server.ServiceModel.Eras2Client.Models;
namespace Eras2Web.Service.Desktop.Server.ServiceModel.Enums
{
public enum NutzerType
{
Leerstand,
Gewerblich,
Privat,
AllgemeineNutzung,
}
}
namespace Eras2Web.Service.Desktop.Server.ServiceModel.Eras2Client.Models
{
[DataContract]
public partial class NutzeinheitDevice
{
[DataMember(Name="Guid")]
public virtual string Guid { get; set; }
[DataMember(Name="ZuordnungVon")]
public virtual DateTime AssignedFromDate { get; set; }
[DataMember(Name="ZuordnungBis")]
public virtual DateTime? AssignedToDate { get; set; }
[DataMember(Name="Raum")]
public virtual string Room { get; set; }
[DataMember(Name="LaufendeNummer")]
public virtual string OngoingNumber { get; set; }
[DataMember(Name="gemietet")]
public virtual bool IsRented { get; set; }
[DataMember(Name="gewartet")]
public virtual bool IsMaintained { get; set; }
[DataMember(Name="DeviceGuid")]
public virtual string DeviceGuid { get; set; }
[DataMember(Name="NutzeinheitGuid")]
public virtual string NutzeinheitGuid { get; set; }
}
[DataContract]
public partial class OwnerNutzeinheit
{
[DataMember(Name="Guid")]
public virtual string Guid { get; set; }
[DataMember(Name="Name1")]
public virtual string Name1 { get; set; }
[DataMember(Name="Name2")]
public virtual string Name2 { get; set; }
[DataMember(Name="Name3")]
public virtual string Name3 { get; set; }
[DataMember(Name="Name4")]
public virtual string Name4 { get; set; }
[DataMember(Name="ZeitraumVon")]
public virtual DateTime RangeFrom { get; set; }
[DataMember(Name="ZeitraumBis")]
public virtual DateTime? RangeTo { get; set; }
[DataMember(Name="Titel")]
public virtual string Title { get; set; }
[DataMember(Name="Anrede")]
public virtual string Salutation { get; set; }
[DataMember(Name="AdressGuid")]
public virtual string AddressGuid { get; set; }
[DataMember(Name="NutzeinheitGuid")]
public virtual string NutzeinheitGuid { get; set; }
}
}
namespace Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Get
{
public partial class GetNutzeinheit
: IHasBearerToken
{
[ApiMember(IsRequired=true, ParameterType="query")]
public virtual string BearerToken { get; set; }
[ApiMember(IsRequired=true, ParameterType="path")]
public virtual Guid Guid { get; set; }
[ApiMember(ParameterType="query")]
public virtual string Include { get; set; }
}
public partial class GetNutzeinheitResponse
{
public virtual Nutzeinheit Nutzeinheit { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
}
namespace Eras2Web.Service.Desktop.Server.ServiceModel.Eras2WebExt.Models
{
[DataContract]
public partial class Address
{
[DataMember]
public virtual Guid Guid { get; set; }
[DataMember]
public virtual string Street { get; set; }
[DataMember]
public virtual string Street2 { get; set; }
[DataMember]
public virtual string StreetNumber { get; set; }
[DataMember]
public virtual string Zipcode { get; set; }
[DataMember]
public virtual string City { get; set; }
[DataMember]
public virtual string Mailbox { get; set; }
[DataMember]
public virtual string Additional { get; set; }
}
[DataContract]
public partial class Nutzeinheit
{
public Nutzeinheit()
{
Nutzer = new List<Nutzer>{};
OwnerNutzeinheiten = new List<OwnerNutzeinheit>{};
NutzeinheitenDevices = new List<NutzeinheitDevice>{};
}
[DataMember]
public virtual Guid Guid { get; set; }
[DataMember]
public virtual string Number { get; set; }
[DataMember]
public virtual string Location { get; set; }
[DataMember]
public virtual Address Address { get; set; }
[DataMember]
public virtual List<Nutzer> Nutzer { get; set; }
[DataMember]
public virtual List<OwnerNutzeinheit> OwnerNutzeinheiten { get; set; }
[DataMember]
public virtual List<NutzeinheitDevice> NutzeinheitenDevices { get; set; }
}
[DataContract]
public partial class Nutzer
{
[DataMember]
public virtual Guid Guid { get; set; }
[DataMember]
public virtual string Name1 { get; set; }
[DataMember]
public virtual string Name2 { get; set; }
[DataMember]
public virtual string Name3 { get; set; }
[DataMember]
public virtual string Name4 { get; set; }
[DataMember]
[ApiMember(IsRequired=true)]
public virtual NutzerType? NutzerType { get; set; }
[DataMember]
public virtual string NutzeinheitNumberExternal { get; set; }
[DataMember]
[ApiMember(IsRequired=true)]
public virtual uint NutzerInNutzeinheitSequence { get; set; }
[DataMember]
[ApiMember(IsRequired=true)]
public virtual DateTime RangeFrom { get; set; }
[DataMember]
public virtual DateTime? RangeTo { get; set; }
[DataMember]
public virtual bool IsDeleted { get; set; }
[DataMember]
public virtual bool IsCreatedByApp { get; set; }
[DataMember(Name="IstUvi")]
public virtual string IsUviRecieved { get; set; }
[DataMember(Name="EigentuemerBewohnt")]
public virtual string IsNutzerOwner { get; set; }
[DataMember(Name="Email")]
public virtual string Email { get; set; }
[DataMember(Name="Mobil")]
public virtual string MobilePhone { get; set; }
[DataMember]
public virtual string Title { get; set; }
[DataMember]
[ApiMember(IsRequired=true, ParameterType="body")]
public virtual string Salutation { 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 /api/v1/nutzeinheiten/{Guid} HTTP/1.1
Host: calotec-portal-servdesk.eras-online.de
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
nutzeinheit:
{
guid: 00000000000000000000000000000000,
number: String,
location: String,
address:
{
guid: 00000000000000000000000000000000,
street: String,
street2: String,
streetNumber: String,
zipcode: String,
city: String,
mailbox: String,
additional: String
},
nutzer:
[
{
guid: 00000000000000000000000000000000,
name1: String,
name2: String,
name3: String,
name4: String,
nutzerType: Leerstand,
nutzeinheitNumberExternal: String,
nutzerInNutzeinheitSequence: 0,
rangeFrom: 0001-01-01T00:00:00Z,
rangeTo: 0001-01-01T00:00:00Z,
isDeleted: False,
isCreatedByApp: False,
IstUvi: String,
EigentuemerBewohnt: String,
Email: String,
Mobil: String,
title: String,
salutation: String
}
],
ownerNutzeinheiten:
[
{
guid: 00000000000000000000000000000000,
name1: String,
name2: String,
name3: String,
name4: String,
rangeFrom: 0001-01-01T00:00:00Z,
rangeTo: 0001-01-01T00:00:00Z,
title: String,
salutation: String,
address:
{
guid: 00000000000000000000000000000000,
street: String,
street2: String,
streetNumber: String,
zipcode: String,
city: String,
mailbox: String,
additional: String
}
}
],
nutzeinheitenDevices:
[
{
guid: 00000000000000000000000000000000,
assignedFromDate: 0001-01-01T00:00:00Z,
assignedToDate: 0001-01-01T00:00:00Z,
room: String,
ongoingNumber: String,
isRented: False,
isMaintained: False,
device:
{
guid: 00000000000000000000000000000000,
number: String,
label: String,
description: String,
installationDate: 0001-01-01T00:00:00Z,
deinstallationDate: 0001-01-01T00:00:00Z,
calibrationDate: 0001-01-01T00:00:00Z,
unit: L,
note: String,
deviceCatalog:
{
Guid: String,
TypKurz: String,
TypLang: String,
Ablesbar: False,
Klasse: String,
Abzug: False,
Hkvv: False,
Funk: False
},
deviceConsumptions:
[
{
guid: 00000000000000000000000000000000,
deviceReading: 0,
deviceReadingDate: 0001-01-01T00:00:00Z,
deviceReadingKind: ZA,
changeDate: 0001-01-01T00:00:00Z,
note: String,
ampouleColour: String,
deviceGuid: String
}
]
}
}
]
},
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}