/* Options: Date: 2025-12-06 07:58:30 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: TaskRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class Task implements IConvertible { String? TaskId; String? Description; DateTime? DueDate; int? AssignedToAgentId; int? RelatedToContactId; int? CreatedBy; DateTime? DateCreated; DateTime? DateCompleted; int? CompletedBy; DateTime? DateDeleted; int? DeletedBy; Task({this.TaskId,this.Description,this.DueDate,this.AssignedToAgentId,this.RelatedToContactId,this.CreatedBy,this.DateCreated,this.DateCompleted,this.CompletedBy,this.DateDeleted,this.DeletedBy}); Task.fromJson(Map json) { fromMap(json); } fromMap(Map json) { TaskId = json['TaskId']; Description = json['Description']; DueDate = JsonConverters.fromJson(json['DueDate'],'DateTime',context!); AssignedToAgentId = json['AssignedToAgentId']; RelatedToContactId = json['RelatedToContactId']; CreatedBy = json['CreatedBy']; DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!); DateCompleted = JsonConverters.fromJson(json['DateCompleted'],'DateTime',context!); CompletedBy = json['CompletedBy']; DateDeleted = JsonConverters.fromJson(json['DateDeleted'],'DateTime',context!); DeletedBy = json['DeletedBy']; return this; } Map toJson() => { 'TaskId': TaskId, 'Description': Description, 'DueDate': JsonConverters.toJson(DueDate,'DateTime',context!), 'AssignedToAgentId': AssignedToAgentId, 'RelatedToContactId': RelatedToContactId, 'CreatedBy': CreatedBy, 'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!), 'DateCompleted': JsonConverters.toJson(DateCompleted,'DateTime',context!), 'CompletedBy': CompletedBy, 'DateDeleted': JsonConverters.toJson(DateDeleted,'DateTime',context!), 'DeletedBy': DeletedBy }; getTypeName() => "Task"; TypeContext? context = _ctx; } class TaskExtended extends Task implements IConvertible { String? AssignedToName; String? RelatedToName; TaskExtended({this.AssignedToName,this.RelatedToName}); TaskExtended.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); AssignedToName = json['AssignedToName']; RelatedToName = json['RelatedToName']; return this; } Map toJson() => super.toJson()..addAll({ 'AssignedToName': AssignedToName, 'RelatedToName': RelatedToName }); getTypeName() => "TaskExtended"; TypeContext? context = _ctx; } class TaskResponse implements IConvertible { ResponseStatus? ResponseStatus; List? Task = []; TaskResponse({this.ResponseStatus,this.Task}); TaskResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Task = JsonConverters.fromJson(json['Task'],'List',context!); return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Task': JsonConverters.toJson(Task,'List',context!) }; getTypeName() => "TaskResponse"; TypeContext? context = _ctx; } // @Route("/v1/Task", "GET,POST,PUT,OPTIONS") // @Route("/v1/Task/{TaskId}", "DELETE,OPTIONS") class TaskRequest implements IReturn, IConvertible, IPost { TaskExtended? Task; String? TaskId; TaskRequest({this.Task,this.TaskId}); TaskRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Task = JsonConverters.fromJson(json['Task'],'TaskExtended',context!); TaskId = json['TaskId']; return this; } Map toJson() => { 'Task': JsonConverters.toJson(Task,'TaskExtended',context!), 'TaskId': TaskId }; createResponse() => TaskResponse(); getResponseTypeName() => "TaskResponse"; getTypeName() => "TaskRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'Task': TypeInfo(TypeOf.Class, create:() => Task()), 'TaskExtended': TypeInfo(TypeOf.Class, create:() => TaskExtended()), 'TaskResponse': TypeInfo(TypeOf.Class, create:() => TaskResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'TaskRequest': TypeInfo(TypeOf.Class, create:() => TaskRequest()), });