| GET,PUT,POST | /{Workspace}/LaborItemType | ||
|---|---|---|---|
| GET,PUT,POST | /{Workspace}/LaborItemType/{ObjectId} |
import 'package:servicestack/servicestack.dart';
class LaborItemType implements IConvertible
{
String? ObjectId;
String? Workspace;
String? ExternalId;
String? ItemType;
String? Desc;
String? UOM;
double? DefaultPrice;
bool? AutoGenerate;
List<String>? SkillTags;
List<String>? TimeStartTaskStatuses;
List<String>? TimeEndTaskStatuses;
String? Template;
Map<String,String?>? Data;
bool? Enabled;
int? RoundTo;
int? RoundOptions;
String? DurationRange;
List<String>? TaskTypes;
List<String>? LimitDays;
bool? IncludeInactive;
LaborItemType({this.ObjectId,this.Workspace,this.ExternalId,this.ItemType,this.Desc,this.UOM,this.DefaultPrice,this.AutoGenerate,this.SkillTags,this.TimeStartTaskStatuses,this.TimeEndTaskStatuses,this.Template,this.Data,this.Enabled,this.RoundTo,this.RoundOptions,this.DurationRange,this.TaskTypes,this.LimitDays,this.IncludeInactive});
LaborItemType.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ObjectId = json['ObjectId'];
Workspace = json['Workspace'];
ExternalId = json['ExternalId'];
ItemType = json['ItemType'];
Desc = json['Desc'];
UOM = json['UOM'];
DefaultPrice = JsonConverters.toDouble(json['DefaultPrice']);
AutoGenerate = json['AutoGenerate'];
SkillTags = JsonConverters.fromJson(json['SkillTags'],'List<String>',context!);
TimeStartTaskStatuses = JsonConverters.fromJson(json['TimeStartTaskStatuses'],'List<String>',context!);
TimeEndTaskStatuses = JsonConverters.fromJson(json['TimeEndTaskStatuses'],'List<String>',context!);
Template = json['Template'];
Data = JsonConverters.toStringMap(json['Data']);
Enabled = json['Enabled'];
RoundTo = json['RoundTo'];
RoundOptions = json['RoundOptions'];
DurationRange = json['DurationRange'];
TaskTypes = JsonConverters.fromJson(json['TaskTypes'],'List<String>',context!);
LimitDays = JsonConverters.fromJson(json['LimitDays'],'List<String>',context!);
IncludeInactive = json['IncludeInactive'];
return this;
}
Map<String, dynamic> toJson() => {
'ObjectId': ObjectId,
'Workspace': Workspace,
'ExternalId': ExternalId,
'ItemType': ItemType,
'Desc': Desc,
'UOM': UOM,
'DefaultPrice': DefaultPrice,
'AutoGenerate': AutoGenerate,
'SkillTags': JsonConverters.toJson(SkillTags,'List<String>',context!),
'TimeStartTaskStatuses': JsonConverters.toJson(TimeStartTaskStatuses,'List<String>',context!),
'TimeEndTaskStatuses': JsonConverters.toJson(TimeEndTaskStatuses,'List<String>',context!),
'Template': Template,
'Data': Data,
'Enabled': Enabled,
'RoundTo': RoundTo,
'RoundOptions': RoundOptions,
'DurationRange': DurationRange,
'TaskTypes': JsonConverters.toJson(TaskTypes,'List<String>',context!),
'LimitDays': JsonConverters.toJson(LimitDays,'List<String>',context!),
'IncludeInactive': IncludeInactive
};
getTypeName() => "LaborItemType";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev.fieldsquared.com', types: <String, TypeInfo> {
'LaborItemType': TypeInfo(TypeOf.Class, create:() => LaborItemType()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /{Workspace}/LaborItemType HTTP/1.1
Host: dev.fieldsquared.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ObjectId: String,
Workspace: String,
ExternalId: String,
ItemType: String,
Desc: String,
UOM: String,
DefaultPrice: 0,
AutoGenerate: False,
SkillTags:
[
String
],
TimeStartTaskStatuses:
[
String
],
TimeEndTaskStatuses:
[
String
],
Template: String,
Data:
{
String: String
},
Enabled: False,
RoundTo: 0,
RoundOptions: 0,
DurationRange: String,
TaskTypes:
[
String
],
LimitDays:
[
String
],
IncludeInactive: False
}