| GET | /api/v1/nebenkosten |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
enum NebenkostenTargetAllocation
{
Null,
AlleNutzer,
ZugeordneteNutzer,
ZugeordneteNutzeinheiten,
ZugeordneteNutzerDiff,
ZugeordneteNutzeinheitenDiff,
}
enum NebenkostenTargetAllocationIn
{
Nebenkosten,
Heizkosten,
Warmwasserkosten,
}
// @DataContract
class NebenkostenNutzeinheit implements IConvertible
{
// @DataMember
double? relativeAmount;
// @DataMember
bool? isDeleted;
// @DataMember
bool? isCreatedByApp;
// @DataMember
String? nutzeinheitGuid;
NebenkostenNutzeinheit({this.relativeAmount,this.isDeleted,this.isCreatedByApp,this.nutzeinheitGuid});
NebenkostenNutzeinheit.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
relativeAmount = JsonConverters.toDouble(json['relativeAmount']);
isDeleted = json['isDeleted'];
isCreatedByApp = json['isCreatedByApp'];
nutzeinheitGuid = json['nutzeinheitGuid'];
return this;
}
Map<String, dynamic> toJson() => {
'relativeAmount': relativeAmount,
'isDeleted': isDeleted,
'isCreatedByApp': isCreatedByApp,
'nutzeinheitGuid': nutzeinheitGuid
};
getTypeName() => "NebenkostenNutzeinheit";
TypeContext? context = _ctx;
}
// @DataContract
class NebenkostenNutzer implements IConvertible
{
// @DataMember
double? relativeAmount;
// @DataMember
bool? isDeleted;
// @DataMember
bool? isCreatedByApp;
// @DataMember
String? nutzerGuid;
NebenkostenNutzer({this.relativeAmount,this.isDeleted,this.isCreatedByApp,this.nutzerGuid});
NebenkostenNutzer.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
relativeAmount = JsonConverters.toDouble(json['relativeAmount']);
isDeleted = json['isDeleted'];
isCreatedByApp = json['isCreatedByApp'];
nutzerGuid = json['nutzerGuid'];
return this;
}
Map<String, dynamic> toJson() => {
'relativeAmount': relativeAmount,
'isDeleted': isDeleted,
'isCreatedByApp': isCreatedByApp,
'nutzerGuid': nutzerGuid
};
getTypeName() => "NebenkostenNutzer";
TypeContext? context = _ctx;
}
// @DataContract
class BillingInformation implements IConvertible
{
// @DataMember
String? guid;
// @DataMember
DateTime? from;
// @DataMember
DateTime? to;
// @DataMember
bool? isCompleted;
// @DataMember
bool? hasNebenkosten;
BillingInformation({this.guid,this.from,this.to,this.isCompleted,this.hasNebenkosten});
BillingInformation.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
guid = json['guid'];
from = JsonConverters.fromJson(json['from'],'DateTime',context!);
to = JsonConverters.fromJson(json['to'],'DateTime',context!);
isCompleted = json['isCompleted'];
hasNebenkosten = json['hasNebenkosten'];
return this;
}
Map<String, dynamic> toJson() => {
'guid': guid,
'from': JsonConverters.toJson(from,'DateTime',context!),
'to': JsonConverters.toJson(to,'DateTime',context!),
'isCompleted': isCompleted,
'hasNebenkosten': hasNebenkosten
};
getTypeName() => "BillingInformation";
TypeContext? context = _ctx;
}
// @DataContract
class Nebenkosten implements IConvertible
{
// @DataMember
String? guid;
// @DataMember
int? number;
// @DataMember
DateTime? from;
// @DataMember
DateTime? to;
// @DataMember
NebenkostenTargetAllocation? targetAllocation;
// @DataMember
NebenkostenTargetAllocationIn? targetAllocationIn;
// @DataMember
String? nebenkostenKind;
/**
* Freitext
*/
// @DataMember
// @ApiMember(Description="Freitext")
String? kostenart;
// @DataMember
double? brutto;
// @DataMember
double? bruttoLastYear;
// @DataMember
double? salesTax;
// @DataMember
String? haushaltsnahediensteLabel;
// @DataMember
double? haushaltsnahediensteBrutto;
/**
* Freitext
*/
// @DataMember
// @ApiMember(Description="Freitext")
String? kostenartUnit;
// @DataMember
String? reduzierungsartType;
// @DataMember
String? comment;
// @DataMember
bool? isDeleted;
// @DataMember
bool? isCreatedByApp;
// @DataMember
List<NebenkostenNutzeinheit>? nebenkostenNutzeinheiten;
// @DataMember
List<NebenkostenNutzer>? nebenkostenNutzer;
// @DataMember
BillingInformation? billingInformation;
Nebenkosten({this.guid,this.number,this.from,this.to,this.targetAllocation,this.targetAllocationIn,this.nebenkostenKind,this.kostenart,this.brutto,this.bruttoLastYear,this.salesTax,this.haushaltsnahediensteLabel,this.haushaltsnahediensteBrutto,this.kostenartUnit,this.reduzierungsartType,this.comment,this.isDeleted,this.isCreatedByApp,this.nebenkostenNutzeinheiten,this.nebenkostenNutzer,this.billingInformation});
Nebenkosten.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
guid = json['guid'];
number = json['number'];
from = JsonConverters.fromJson(json['from'],'DateTime',context!);
to = JsonConverters.fromJson(json['to'],'DateTime',context!);
targetAllocation = JsonConverters.fromJson(json['targetAllocation'],'NebenkostenTargetAllocation',context!);
targetAllocationIn = JsonConverters.fromJson(json['targetAllocationIn'],'NebenkostenTargetAllocationIn',context!);
nebenkostenKind = json['nebenkostenKind'];
kostenart = json['kostenart'];
brutto = JsonConverters.toDouble(json['brutto']);
bruttoLastYear = JsonConverters.toDouble(json['bruttoLastYear']);
salesTax = JsonConverters.toDouble(json['salesTax']);
haushaltsnahediensteLabel = json['haushaltsnahediensteLabel'];
haushaltsnahediensteBrutto = JsonConverters.toDouble(json['haushaltsnahediensteBrutto']);
kostenartUnit = json['kostenartUnit'];
reduzierungsartType = json['reduzierungsartType'];
comment = json['comment'];
isDeleted = json['isDeleted'];
isCreatedByApp = json['isCreatedByApp'];
nebenkostenNutzeinheiten = JsonConverters.fromJson(json['nebenkostenNutzeinheiten'],'List<NebenkostenNutzeinheit>',context!);
nebenkostenNutzer = JsonConverters.fromJson(json['nebenkostenNutzer'],'List<NebenkostenNutzer>',context!);
billingInformation = JsonConverters.fromJson(json['billingInformation'],'BillingInformation',context!);
return this;
}
Map<String, dynamic> toJson() => {
'guid': guid,
'number': number,
'from': JsonConverters.toJson(from,'DateTime',context!),
'to': JsonConverters.toJson(to,'DateTime',context!),
'targetAllocation': JsonConverters.toJson(targetAllocation,'NebenkostenTargetAllocation',context!),
'targetAllocationIn': JsonConverters.toJson(targetAllocationIn,'NebenkostenTargetAllocationIn',context!),
'nebenkostenKind': nebenkostenKind,
'kostenart': kostenart,
'brutto': brutto,
'bruttoLastYear': bruttoLastYear,
'salesTax': salesTax,
'haushaltsnahediensteLabel': haushaltsnahediensteLabel,
'haushaltsnahediensteBrutto': haushaltsnahediensteBrutto,
'kostenartUnit': kostenartUnit,
'reduzierungsartType': reduzierungsartType,
'comment': comment,
'isDeleted': isDeleted,
'isCreatedByApp': isCreatedByApp,
'nebenkostenNutzeinheiten': JsonConverters.toJson(nebenkostenNutzeinheiten,'List<NebenkostenNutzeinheit>',context!),
'nebenkostenNutzer': JsonConverters.toJson(nebenkostenNutzer,'List<NebenkostenNutzer>',context!),
'billingInformation': JsonConverters.toJson(billingInformation,'BillingInformation',context!)
};
getTypeName() => "Nebenkosten";
TypeContext? context = _ctx;
}
class GetNebenkostenListResponse implements IConvertible
{
List<Nebenkosten>? nebenkostenList;
ResponseStatus? responseStatus;
GetNebenkostenListResponse({this.nebenkostenList,this.responseStatus});
GetNebenkostenListResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
nebenkostenList = JsonConverters.fromJson(json['nebenkostenList'],'List<Nebenkosten>',context!);
responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'nebenkostenList': JsonConverters.toJson(nebenkostenList,'List<Nebenkosten>',context!),
'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
};
getTypeName() => "GetNebenkostenListResponse";
TypeContext? context = _ctx;
}
class GetNebenkostenList implements IHasBearerToken, IConvertible
{
// @ApiMember(IsRequired=true, ParameterType="query")
String? bearerToken;
/**
* Optional! Follow the format : /api/v1/nebenkosten?filter[ObjektGuid]=*
*/
// @DataMember(Name="filter[ObjektGuid]")
// @ApiMember(Description="Optional! Follow the format : /api/v1/nebenkosten?filter[ObjektGuid]=*", ParameterType="query")
String? filter_ObjektGuid_;
/**
* Optional! Follow the format : /api/v1/nebenkosten?filter[BillingInformationGuid]=*
*/
// @DataMember(Name="filter[BillingInformationGuid]")
// @ApiMember(Description="Optional! Follow the format : /api/v1/nebenkosten?filter[BillingInformationGuid]=*", ParameterType="query")
String? filter_BillingInformationGuid_;
GetNebenkostenList({this.bearerToken,this.filter_ObjektGuid_,this.filter_BillingInformationGuid_});
GetNebenkostenList.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
bearerToken = json['bearerToken'];
filter_ObjektGuid_ = json['filterByObjektGuid'];
filter_BillingInformationGuid_ = json['filterByBillingInformationGuid'];
return this;
}
Map<String, dynamic> toJson() => {
'bearerToken': bearerToken,
'filter_ObjektGuid_': filter_ObjektGuid_,
'filter_BillingInformationGuid_': filter_BillingInformationGuid_
};
getTypeName() => "GetNebenkostenList";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'calotec_portal_servdesk.eras_online.de', types: <String, TypeInfo> {
'NebenkostenTargetAllocation': TypeInfo(TypeOf.Enum, enumValues:NebenkostenTargetAllocation.values),
'NebenkostenTargetAllocationIn': TypeInfo(TypeOf.Enum, enumValues:NebenkostenTargetAllocationIn.values),
'NebenkostenNutzeinheit': TypeInfo(TypeOf.Class, create:() => NebenkostenNutzeinheit()),
'NebenkostenNutzer': TypeInfo(TypeOf.Class, create:() => NebenkostenNutzer()),
'BillingInformation': TypeInfo(TypeOf.Class, create:() => BillingInformation()),
'Nebenkosten': TypeInfo(TypeOf.Class, create:() => Nebenkosten()),
'List<NebenkostenNutzeinheit>': TypeInfo(TypeOf.Class, create:() => <NebenkostenNutzeinheit>[]),
'List<NebenkostenNutzer>': TypeInfo(TypeOf.Class, create:() => <NebenkostenNutzer>[]),
'GetNebenkostenListResponse': TypeInfo(TypeOf.Class, create:() => GetNebenkostenListResponse()),
'List<Nebenkosten>': TypeInfo(TypeOf.Class, create:() => <Nebenkosten>[]),
'GetNebenkostenList': TypeInfo(TypeOf.Class, create:() => GetNebenkostenList()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /api/v1/nebenkosten HTTP/1.1 Host: calotec-portal-servdesk.eras-online.de Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}