| GET,POST,PUT,DELETE,OPTIONS | /v1/Project/Crew/{ProjectID} |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class Crew implements IConvertible
{
int? CrewID;
String? CrewName;
String? CrewNumber;
int? CrewManagerContactID;
String? CrewManagerContactName;
String? CrewColor;
DateTime? RecordCreatedDate;
bool? Active;
String? CreatedByUID;
int? ProjectID;
int? CrewMemberCount;
int? ProjectCrewID;
String? ProjectName;
Crew({this.CrewID,this.CrewName,this.CrewNumber,this.CrewManagerContactID,this.CrewManagerContactName,this.CrewColor,this.RecordCreatedDate,this.Active,this.CreatedByUID,this.ProjectID,this.CrewMemberCount,this.ProjectCrewID,this.ProjectName});
Crew.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CrewID = json['CrewID'];
CrewName = json['CrewName'];
CrewNumber = json['CrewNumber'];
CrewManagerContactID = json['CrewManagerContactID'];
CrewManagerContactName = json['CrewManagerContactName'];
CrewColor = json['CrewColor'];
RecordCreatedDate = JsonConverters.fromJson(json['RecordCreatedDate'],'DateTime',context!);
Active = json['Active'];
CreatedByUID = json['CreatedByUID'];
ProjectID = json['ProjectID'];
CrewMemberCount = json['CrewMemberCount'];
ProjectCrewID = json['ProjectCrewID'];
ProjectName = json['ProjectName'];
return this;
}
Map<String, dynamic> toJson() => {
'CrewID': CrewID,
'CrewName': CrewName,
'CrewNumber': CrewNumber,
'CrewManagerContactID': CrewManagerContactID,
'CrewManagerContactName': CrewManagerContactName,
'CrewColor': CrewColor,
'RecordCreatedDate': JsonConverters.toJson(RecordCreatedDate,'DateTime',context!),
'Active': Active,
'CreatedByUID': CreatedByUID,
'ProjectID': ProjectID,
'CrewMemberCount': CrewMemberCount,
'ProjectCrewID': ProjectCrewID,
'ProjectName': ProjectName
};
getTypeName() => "Crew";
TypeContext? context = _ctx;
}
class ProjectCrewListResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
List<Crew>? ProjectCrew = [];
ProjectCrewListResponse({this.ResponseStatus,this.ProjectCrew});
ProjectCrewListResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
ProjectCrew = JsonConverters.fromJson(json['ProjectCrew'],'List<Crew>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'ProjectCrew': JsonConverters.toJson(ProjectCrew,'List<Crew>',context!)
};
getTypeName() => "ProjectCrewListResponse";
TypeContext? context = _ctx;
}
class ProjectCrewListRequest implements IConvertible
{
int? ProjectID;
List<Crew>? ProjectCrew = [];
ProjectCrewListRequest({this.ProjectID,this.ProjectCrew});
ProjectCrewListRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ProjectID = json['ProjectID'];
ProjectCrew = JsonConverters.fromJson(json['ProjectCrew'],'List<Crew>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ProjectID': ProjectID,
'ProjectCrew': JsonConverters.toJson(ProjectCrew,'List<Crew>',context!)
};
getTypeName() => "ProjectCrewListRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'Crew': TypeInfo(TypeOf.Class, create:() => Crew()),
'ProjectCrewListResponse': TypeInfo(TypeOf.Class, create:() => ProjectCrewListResponse()),
'List<Crew>': TypeInfo(TypeOf.Class, create:() => <Crew>[]),
'ProjectCrewListRequest': TypeInfo(TypeOf.Class, create:() => ProjectCrewListRequest()),
});
Dart ProjectCrewListRequest DTOs
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.
POST /v1/Project/Crew/{ProjectID} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"ProjectID":0,"ProjectCrew":[{"CrewID":0,"CrewName":"String","CrewNumber":"String","CrewManagerContactID":0,"CrewManagerContactName":"String","CrewColor":"String","RecordCreatedDate":"0001-01-01T00:00:00.0000000","Active":false,"CreatedByUID":"00000000000000000000000000000000","ProjectID":0,"CrewMemberCount":0,"ProjectCrewID":0,"ProjectName":"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"}},"ProjectCrew":[{"CrewID":0,"CrewName":"String","CrewNumber":"String","CrewManagerContactID":0,"CrewManagerContactName":"String","CrewColor":"String","RecordCreatedDate":"0001-01-01T00:00:00.0000000","Active":false,"CreatedByUID":"00000000000000000000000000000000","ProjectID":0,"CrewMemberCount":0,"ProjectCrewID":0,"ProjectName":"String"}]}