Trendsic Platform Service

<back to all web services

RfpDiffReportRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/Rfp/DiffReport
import 'package:servicestack/servicestack.dart';

class CountItem implements IConvertible
{
    String? Key;
    String? Label;
    int? Count;

    CountItem({this.Key,this.Label,this.Count});
    CountItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Key = json['Key'];
        Label = json['Label'];
        Count = json['Count'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Key': Key,
        'Label': Label,
        'Count': Count
    };

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

class DiffReport implements IConvertible
{
    int? ApprovalCount;
    List<CountItem>? TasksAdded = [];
    List<CountItem>? TasksRemoved = [];
    List<CountItem>? PositionsAdded = [];
    List<CountItem>? PositionsRemoved = [];
    List<CountItem>? EquipmentAdded = [];
    List<CountItem>? EquipmentRemoved = [];
    List<CountItem>? MaterialsAdded = [];
    List<CountItem>? MaterialsRemoved = [];

    DiffReport({this.ApprovalCount,this.TasksAdded,this.TasksRemoved,this.PositionsAdded,this.PositionsRemoved,this.EquipmentAdded,this.EquipmentRemoved,this.MaterialsAdded,this.MaterialsRemoved});
    DiffReport.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ApprovalCount = json['ApprovalCount'];
        TasksAdded = JsonConverters.fromJson(json['TasksAdded'],'List<CountItem>',context!);
        TasksRemoved = JsonConverters.fromJson(json['TasksRemoved'],'List<CountItem>',context!);
        PositionsAdded = JsonConverters.fromJson(json['PositionsAdded'],'List<CountItem>',context!);
        PositionsRemoved = JsonConverters.fromJson(json['PositionsRemoved'],'List<CountItem>',context!);
        EquipmentAdded = JsonConverters.fromJson(json['EquipmentAdded'],'List<CountItem>',context!);
        EquipmentRemoved = JsonConverters.fromJson(json['EquipmentRemoved'],'List<CountItem>',context!);
        MaterialsAdded = JsonConverters.fromJson(json['MaterialsAdded'],'List<CountItem>',context!);
        MaterialsRemoved = JsonConverters.fromJson(json['MaterialsRemoved'],'List<CountItem>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ApprovalCount': ApprovalCount,
        'TasksAdded': JsonConverters.toJson(TasksAdded,'List<CountItem>',context!),
        'TasksRemoved': JsonConverters.toJson(TasksRemoved,'List<CountItem>',context!),
        'PositionsAdded': JsonConverters.toJson(PositionsAdded,'List<CountItem>',context!),
        'PositionsRemoved': JsonConverters.toJson(PositionsRemoved,'List<CountItem>',context!),
        'EquipmentAdded': JsonConverters.toJson(EquipmentAdded,'List<CountItem>',context!),
        'EquipmentRemoved': JsonConverters.toJson(EquipmentRemoved,'List<CountItem>',context!),
        'MaterialsAdded': JsonConverters.toJson(MaterialsAdded,'List<CountItem>',context!),
        'MaterialsRemoved': JsonConverters.toJson(MaterialsRemoved,'List<CountItem>',context!)
    };

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

class RfpDiffReportResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    DiffReport? Report;

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

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

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

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

class RfpDiffReportRequest implements IConvertible
{
    RfpDiffReportRequest();
    RfpDiffReportRequest.fromJson(Map<String, dynamic> json) : super();
    fromMap(Map<String, dynamic> json) {
        return this;
    }

    Map<String, dynamic> toJson() => {};
    getTypeName() => "RfpDiffReportRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'CountItem': TypeInfo(TypeOf.Class, create:() => CountItem()),
    'DiffReport': TypeInfo(TypeOf.Class, create:() => DiffReport()),
    'List<CountItem>': TypeInfo(TypeOf.Class, create:() => <CountItem>[]),
    'RfpDiffReportResponse': TypeInfo(TypeOf.Class, create:() => RfpDiffReportResponse()),
    'RfpDiffReportRequest': TypeInfo(TypeOf.Class, create:() => RfpDiffReportRequest()),
});

Dart RfpDiffReportRequest DTOs

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

HTTP + JSV

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

GET /v1/Rfp/DiffReport HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
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
		}
	},
	Report: 
	{
		ApprovalCount: 0,
		TasksAdded: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		],
		TasksRemoved: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		],
		PositionsAdded: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		],
		PositionsRemoved: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		],
		EquipmentAdded: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		],
		EquipmentRemoved: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		],
		MaterialsAdded: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		],
		MaterialsRemoved: 
		[
			{
				Key: String,
				Label: String,
				Count: 0
			}
		]
	}
}