Server

<back to all web services

GetNebenkostenList

Nebenkosten
Requires Authentication
The following routes are available for this service:
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: 'messtecc_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()),
});

Dart GetNebenkostenList DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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: messtecc-servdesk.eras-online.de 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"responseStatus":{"errorCode":"String","message":"String","stackTrace":"String","errors":[{"errorCode":"String","fieldName":"String","message":"String","meta":{"String":"String"}}],"meta":{"String":"String"}}}