Trendsic Platform Service

<back to all web services

LinesRequest

Requires Authentication
Required roles:Administrator, Administrator, Administrator
The following routes are available for this service:
GET,POST,PUT,DELETE,OPTIONS/v1/Lines/{Id}
GET,POST,PUT,DELETE,OPTIONS/v1/LinesByLocationId/{LocationId}
GET,POST,PUT,DELETE,OPTIONS/v1/Lines
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class LineImage implements IConvertible
{
    String? ImageId;
    String? FileName;
    String? ImageTitle;
    DateTime? UploadDate;

    LineImage({this.ImageId,this.FileName,this.ImageTitle,this.UploadDate});
    LineImage.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ImageId = json['ImageId'];
        FileName = json['FileName'];
        ImageTitle = json['ImageTitle'];
        UploadDate = JsonConverters.fromJson(json['UploadDate'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ImageId': ImageId,
        'FileName': FileName,
        'ImageTitle': ImageTitle,
        'UploadDate': JsonConverters.toJson(UploadDate,'DateTime',context!)
    };

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

class Line implements IConvertible
{
    String? Id;
    String? LocationId;
    String? LocationName;
    String? Name;
    String? Description;
    int? ServiceDurationMinutes;
    int? WaitTime;
    double? Cost;
    int? UpperThreshold;
    int? LowerThreshold;
    bool? Active;
    DateTime? EntDate;
    DateTime? ModDate;
    bool? SendQuestionnaire;
    bool? RequireUpload;
    String? UploadMessage;
    List<LineImage>? LineImages = [];

    Line({this.Id,this.LocationId,this.LocationName,this.Name,this.Description,this.ServiceDurationMinutes,this.WaitTime,this.Cost,this.UpperThreshold,this.LowerThreshold,this.Active,this.EntDate,this.ModDate,this.SendQuestionnaire,this.RequireUpload,this.UploadMessage,this.LineImages});
    Line.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        LocationId = json['LocationId'];
        LocationName = json['LocationName'];
        Name = json['Name'];
        Description = json['Description'];
        ServiceDurationMinutes = json['ServiceDurationMinutes'];
        WaitTime = json['WaitTime'];
        Cost = JsonConverters.toDouble(json['Cost']);
        UpperThreshold = json['UpperThreshold'];
        LowerThreshold = json['LowerThreshold'];
        Active = json['Active'];
        EntDate = JsonConverters.fromJson(json['EntDate'],'DateTime',context!);
        ModDate = JsonConverters.fromJson(json['ModDate'],'DateTime',context!);
        SendQuestionnaire = json['SendQuestionnaire'];
        RequireUpload = json['RequireUpload'];
        UploadMessage = json['UploadMessage'];
        LineImages = JsonConverters.fromJson(json['LineImages'],'List<LineImage>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'LocationId': LocationId,
        'LocationName': LocationName,
        'Name': Name,
        'Description': Description,
        'ServiceDurationMinutes': ServiceDurationMinutes,
        'WaitTime': WaitTime,
        'Cost': Cost,
        'UpperThreshold': UpperThreshold,
        'LowerThreshold': LowerThreshold,
        'Active': Active,
        'EntDate': JsonConverters.toJson(EntDate,'DateTime',context!),
        'ModDate': JsonConverters.toJson(ModDate,'DateTime',context!),
        'SendQuestionnaire': SendQuestionnaire,
        'RequireUpload': RequireUpload,
        'UploadMessage': UploadMessage,
        'LineImages': JsonConverters.toJson(LineImages,'List<LineImage>',context!)
    };

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

class LinesResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<Line>? Lines = [];

    LinesResponse({this.ResponseStatus,this.Lines});
    LinesResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class LinesRequest implements IConvertible
{
    String? Id;
    String? LocationId;
    List<Line>? Lines = [];

    LinesRequest({this.Id,this.LocationId,this.Lines});
    LinesRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'LocationId': LocationId,
        'Lines': JsonConverters.toJson(Lines,'List<Line>',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'LineImage': TypeInfo(TypeOf.Class, create:() => LineImage()),
    'Line': TypeInfo(TypeOf.Class, create:() => Line()),
    'List<LineImage>': TypeInfo(TypeOf.Class, create:() => <LineImage>[]),
    'LinesResponse': TypeInfo(TypeOf.Class, create:() => LinesResponse()),
    'List<Line>': TypeInfo(TypeOf.Class, create:() => <Line>[]),
    'LinesRequest': TypeInfo(TypeOf.Class, create:() => LinesRequest()),
});

Dart LinesRequest 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 /v1/Lines/{Id} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"Id":"00000000000000000000000000000000","LocationId":"00000000000000000000000000000000","Lines":[{"Id":"00000000000000000000000000000000","LocationId":"00000000000000000000000000000000","LocationName":"String","Name":"String","Description":"String","ServiceDurationMinutes":0,"WaitTime":0,"Cost":0,"UpperThreshold":0,"LowerThreshold":0,"Active":false,"EntDate":"0001-01-01T00:00:00.0000000","ModDate":"0001-01-01T00:00:00.0000000","SendQuestionnaire":false,"RequireUpload":false,"UploadMessage":"String","LineImages":[{"ImageId":"00000000000000000000000000000000","FileName":"String","ImageTitle":"String","UploadDate":"0001-01-01T00:00:00.0000000"}]}]}
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"}},"Lines":[{"Id":"00000000000000000000000000000000","LocationId":"00000000000000000000000000000000","LocationName":"String","Name":"String","Description":"String","ServiceDurationMinutes":0,"WaitTime":0,"Cost":0,"UpperThreshold":0,"LowerThreshold":0,"Active":false,"EntDate":"0001-01-01T00:00:00.0000000","ModDate":"0001-01-01T00:00:00.0000000","SendQuestionnaire":false,"RequireUpload":false,"UploadMessage":"String","LineImages":[{"ImageId":"00000000000000000000000000000000","FileName":"String","ImageTitle":"String","UploadDate":"0001-01-01T00:00:00.0000000"}]}]}