Server

<back to all web services

GetLobaroNlFacilityDeviceParsedData

External
Requires Authentication
The following routes are available for this service:
POST/api/v1/external/nlfacility
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class GetLobaroNlFacilityDeviceParsedDataResponse implements IConvertible
{
    ResponseStatus? responseStatus;

    GetLobaroNlFacilityDeviceParsedDataResponse({this.responseStatus});
    GetLobaroNlFacilityDeviceParsedDataResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "GetLobaroNlFacilityDeviceParsedDataResponse";
    TypeContext? context = _ctx;
}

class Pagination implements IConvertible
{
    int? limit;
    int? total;
    int? offset;

    Pagination({this.limit,this.total,this.offset});
    Pagination.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        limit = json['limit'];
        total = json['total'];
        offset = json['offset'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'limit': limit,
        'total': total,
        'offset': offset
    };

    getTypeName() => "Pagination";
    TypeContext? context = _ctx;
}

class History implements IConvertible
{
    String? time;
    String? value;

    History({this.time,this.value});
    History.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        time = json['time'];
        value = json['value'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'time': time,
        'value': value
    };

    getTypeName() => "History";
    TypeContext? context = _ctx;
}

class CompactProfile implements IConvertible
{
    List<History>? history;

    CompactProfile({this.history});
    CompactProfile.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        history = JsonConverters.fromJson(json['history'],'List<History>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'history': JsonConverters.toJson(history,'List<History>',context!)
    };

    getTypeName() => "CompactProfile";
    TypeContext? context = _ctx;
}

class MbusBodyDataRecords implements IConvertible
{
    String? vifUnit;
    String? vifQuantity;
    double? valueScaled;
    String? vifExponent;
    String? valueString;
    String? value;
    String? difFunctionString;
    String? storageNo;
    CompactProfile? compactProfile;

    MbusBodyDataRecords({this.vifUnit,this.vifQuantity,this.valueScaled,this.vifExponent,this.valueString,this.value,this.difFunctionString,this.storageNo,this.compactProfile});
    MbusBodyDataRecords.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        vifUnit = json['vifUnit'];
        vifQuantity = json['vifQuantity'];
        valueScaled = JsonConverters.toDouble(json['valueScaled']);
        vifExponent = json['vifExponent'];
        valueString = json['valueString'];
        value = json['value'];
        difFunctionString = json['difFunctionString'];
        storageNo = json['storageNo'];
        compactProfile = JsonConverters.fromJson(json['compactProfile'],'CompactProfile',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'vifUnit': vifUnit,
        'vifQuantity': vifQuantity,
        'valueScaled': valueScaled,
        'vifExponent': vifExponent,
        'valueString': valueString,
        'value': value,
        'difFunctionString': difFunctionString,
        'storageNo': storageNo,
        'compactProfile': JsonConverters.toJson(compactProfile,'CompactProfile',context!)
    };

    getTypeName() => "MbusBodyDataRecords";
    TypeContext? context = _ctx;
}

class MbusBody implements IConvertible
{
    List<MbusBodyDataRecords>? dataRecords;

    MbusBody({this.dataRecords});
    MbusBody.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        dataRecords = JsonConverters.fromJson(json['dataRecords'],'List<MbusBodyDataRecords>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'dataRecords': JsonConverters.toJson(dataRecords,'List<MbusBodyDataRecords>',context!)
    };

    getTypeName() => "MbusBody";
    TypeContext? context = _ctx;
}

class Header implements IConvertible
{
    int? idString;
    String? deviceString;

    Header({this.idString,this.deviceString});
    Header.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        idString = json['idString'];
        deviceString = json['deviceString'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'idString': idString,
        'deviceString': deviceString
    };

    getTypeName() => "Header";
    TypeContext? context = _ctx;
}

class DeviceMbusData implements IConvertible
{
    int? idString;
    String? deviceString;
    MbusBody? body;
    Header? header;

    DeviceMbusData({this.idString,this.deviceString,this.body,this.header});
    DeviceMbusData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        idString = json['idString'];
        deviceString = json['deviceString'];
        body = JsonConverters.fromJson(json['body'],'MbusBody',context!);
        header = JsonConverters.fromJson(json['header'],'Header',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'idString': idString,
        'deviceString': deviceString,
        'body': JsonConverters.toJson(body,'MbusBody',context!),
        'header': JsonConverters.toJson(header,'Header',context!)
    };

    getTypeName() => "DeviceMbusData";
    TypeContext? context = _ctx;
}

class DeviceData implements IConvertible
{
    DeviceMbusData? mbus;

    DeviceData({this.mbus});
    DeviceData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        mbus = JsonConverters.fromJson(json['mbus'],'DeviceMbusData',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'mbus': JsonConverters.toJson(mbus,'DeviceMbusData',context!)
    };

    getTypeName() => "DeviceData";
    TypeContext? context = _ctx;
}

class LobaroData implements IConvertible
{
    int? id;
    int? deviceId;
    DateTime? createdAt;
    DateTime? updatedAt;
    DeviceData? data;

    LobaroData({this.id,this.deviceId,this.createdAt,this.updatedAt,this.data});
    LobaroData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        deviceId = json['deviceId'];
        createdAt = JsonConverters.fromJson(json['createdAt'],'DateTime',context!);
        updatedAt = JsonConverters.fromJson(json['updatedAt'],'DateTime',context!);
        data = JsonConverters.fromJson(json['data'],'DeviceData',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'deviceId': deviceId,
        'createdAt': JsonConverters.toJson(createdAt,'DateTime',context!),
        'updatedAt': JsonConverters.toJson(updatedAt,'DateTime',context!),
        'data': JsonConverters.toJson(data,'DeviceData',context!)
    };

    getTypeName() => "LobaroData";
    TypeContext? context = _ctx;
}

class GetLobaroNlFacilityDeviceParsedData implements IConvertible
{
    // @ApiMember(IsRequired=true, ParameterType="body")
    Pagination? pagination;

    // @ApiMember(IsRequired=true, ParameterType="body")
    List<LobaroData>? data;

    GetLobaroNlFacilityDeviceParsedData({this.pagination,this.data});
    GetLobaroNlFacilityDeviceParsedData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        pagination = JsonConverters.fromJson(json['pagination'],'Pagination',context!);
        data = JsonConverters.fromJson(json['data'],'List<LobaroData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'pagination': JsonConverters.toJson(pagination,'Pagination',context!),
        'data': JsonConverters.toJson(data,'List<LobaroData>',context!)
    };

    getTypeName() => "GetLobaroNlFacilityDeviceParsedData";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'korrekt_gera_servdesk.eras_online.de', types: <String, TypeInfo> {
    'GetLobaroNlFacilityDeviceParsedDataResponse': TypeInfo(TypeOf.Class, create:() => GetLobaroNlFacilityDeviceParsedDataResponse()),
    'Pagination': TypeInfo(TypeOf.Class, create:() => Pagination()),
    'History': TypeInfo(TypeOf.Class, create:() => History()),
    'CompactProfile': TypeInfo(TypeOf.Class, create:() => CompactProfile()),
    'List<History>': TypeInfo(TypeOf.Class, create:() => <History>[]),
    'MbusBodyDataRecords': TypeInfo(TypeOf.Class, create:() => MbusBodyDataRecords()),
    'MbusBody': TypeInfo(TypeOf.Class, create:() => MbusBody()),
    'List<MbusBodyDataRecords>': TypeInfo(TypeOf.Class, create:() => <MbusBodyDataRecords>[]),
    'Header': TypeInfo(TypeOf.Class, create:() => Header()),
    'DeviceMbusData': TypeInfo(TypeOf.Class, create:() => DeviceMbusData()),
    'DeviceData': TypeInfo(TypeOf.Class, create:() => DeviceData()),
    'LobaroData': TypeInfo(TypeOf.Class, create:() => LobaroData()),
    'GetLobaroNlFacilityDeviceParsedData': TypeInfo(TypeOf.Class, create:() => GetLobaroNlFacilityDeviceParsedData()),
    'List<LobaroData>': TypeInfo(TypeOf.Class, create:() => <LobaroData>[]),
});

Dart GetLobaroNlFacilityDeviceParsedData DTOs

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

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/v1/external/nlfacility HTTP/1.1 
Host: korrekt-gera-servdesk.eras-online.de 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"pagination":{"limit":0,"total":0,"offset":0},"data":[{"id":0,"deviceId":0,"createdAt":"0001-01-01T00:00:00.0000000Z","updatedAt":"0001-01-01T00:00:00.0000000Z","data":{"mbus":{"idString":0,"deviceString":"String","body":{"dataRecords":[{"vifUnit":"String","vifQuantity":"String","valueScaled":0,"vifExponent":"String","valueString":"String","value":"String","difFunctionString":"String","storageNo":"String","compactProfile":{"history":[{"time":"String","value":"String"}]}}]},"header":{"idString":0,"deviceString":"String"}}}}]}
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"}}}