| PUT | /api/v1/nebenkosten |
|---|
import Foundation
import ServiceStack
public class PutNebenkosten : IHasBearerToken, Codable
{
// @ApiMember(IsRequired=true, ParameterType="body")
public var nebenkosten:Nebenkosten
// @ApiMember(IsRequired=true, ParameterType="body")
public var relatedToObjekt:RelatedTo
// @ApiMember(IsRequired=true, ParameterType="body")
public var relatedToBillingInformation:RelatedTo
// @ApiMember(IsRequired=true, ParameterType="body")
public var bearerToken:String
required public init(){}
}
// @DataContract
public class Nebenkosten : Codable
{
// @DataMember
public var guid:String
// @DataMember
public var number:UInt32
// @DataMember
public var from:Date
// @DataMember
public var to:Date
// @DataMember
public var targetAllocation:NebenkostenTargetAllocation?
// @DataMember
public var targetAllocationIn:NebenkostenTargetAllocationIn?
// @DataMember
public var nebenkostenKind:String
/**
* Freitext
*/
// @DataMember
// @ApiMember(Description="Freitext")
public var kostenart:String
// @DataMember
public var brutto:Double?
// @DataMember
public var bruttoLastYear:Double?
// @DataMember
public var salesTax:Double?
// @DataMember
public var haushaltsnahediensteLabel:String
// @DataMember
public var haushaltsnahediensteBrutto:Double?
/**
* Freitext
*/
// @DataMember
// @ApiMember(Description="Freitext")
public var kostenartUnit:String
// @DataMember
public var reduzierungsartType:String
// @DataMember
public var comment:String
// @DataMember
public var isDeleted:Bool
// @DataMember
public var isCreatedByApp:Bool
// @DataMember
public var nebenkostenNutzeinheiten:[NebenkostenNutzeinheit] = []
// @DataMember
public var nebenkostenNutzer:[NebenkostenNutzer] = []
// @DataMember
public var billingInformation:BillingInformation
required public init(){}
}
public enum NebenkostenTargetAllocation : String, Codable
{
case Null
case AlleNutzer
case ZugeordneteNutzer
case ZugeordneteNutzeinheiten
case ZugeordneteNutzerDiff
case ZugeordneteNutzeinheitenDiff
}
public enum NebenkostenTargetAllocationIn : String, Codable
{
case Nebenkosten
case Heizkosten
case Warmwasserkosten
}
// @DataContract
public class NebenkostenNutzeinheit : Codable
{
// @DataMember
public var relativeAmount:Double?
// @DataMember
public var isDeleted:Bool
// @DataMember
public var isCreatedByApp:Bool
// @DataMember
public var nutzeinheitGuid:String
required public init(){}
}
// @DataContract
public class NebenkostenNutzer : Codable
{
// @DataMember
public var relativeAmount:Double?
// @DataMember
public var isDeleted:Bool
// @DataMember
public var isCreatedByApp:Bool
// @DataMember
public var nutzerGuid:String
required public init(){}
}
// @DataContract
public class BillingInformation : Codable
{
// @DataMember
public var guid:String
// @DataMember
public var from:Date
// @DataMember
public var to:Date
// @DataMember
public var isCompleted:Bool
// @DataMember
public var hasNebenkosten:Bool
required public init(){}
}
// @DataContract
public class RelatedTo : Codable
{
// @DataMember
public var guid:String
required public init(){}
}
public class PutNebenkostenResponse : Codable
{
public var responseStatus:ResponseStatus
required public init(){}
}
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.
PUT /api/v1/nebenkosten HTTP/1.1
Host: mdf-servdesk.eras-online.de
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
nebenkosten:
{
guid: 00000000000000000000000000000000,
number: 0,
from: 0001-01-01T00:00:00Z,
to: 0001-01-01T00:00:00Z,
targetAllocation: Null,
targetAllocationIn: Nebenkosten,
nebenkostenKind: String,
kostenart: String,
brutto: 0,
bruttoLastYear: 0,
salesTax: 0,
haushaltsnahediensteLabel: String,
haushaltsnahediensteBrutto: 0,
kostenartUnit: String,
reduzierungsartType: String,
comment: String,
isDeleted: False,
isCreatedByApp: False,
nebenkostenNutzeinheiten:
[
{
relativeAmount: 0,
isDeleted: False,
isCreatedByApp: False,
nutzeinheitGuid: 00000000000000000000000000000000
}
],
nebenkostenNutzer:
[
{
relativeAmount: 0,
isDeleted: False,
isCreatedByApp: False,
nutzerGuid: 00000000000000000000000000000000
}
],
billingInformation:
{
guid: String,
from: 0001-01-01T00:00:00Z,
to: 0001-01-01T00:00:00Z,
isCompleted: False,
hasNebenkosten: False
}
},
relatedToObjekt:
{
guid: 00000000000000000000000000000000
},
relatedToBillingInformation:
{
guid: 00000000000000000000000000000000
},
bearerToken: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}