/* Options: Date: 2026-07-08 21:32:46 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: StaffResponsesRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class StaffResponseDto implements IConvertible { int? StaffOutreachRecipientID; int? ContactID; String? Name; String? Kind; double? Rate; double? Rating; int? RatingCount; String? Status; String? Note; double? CounterRate; String? CounterStartDate; StaffResponseDto({this.StaffOutreachRecipientID,this.ContactID,this.Name,this.Kind,this.Rate,this.Rating,this.RatingCount,this.Status,this.Note,this.CounterRate,this.CounterStartDate}); StaffResponseDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { StaffOutreachRecipientID = json['StaffOutreachRecipientID']; ContactID = json['ContactID']; Name = json['Name']; Kind = json['Kind']; Rate = JsonConverters.toDouble(json['Rate']); Rating = JsonConverters.toDouble(json['Rating']); RatingCount = json['RatingCount']; Status = json['Status']; Note = json['Note']; CounterRate = JsonConverters.toDouble(json['CounterRate']); CounterStartDate = json['CounterStartDate']; return this; } Map toJson() => { 'StaffOutreachRecipientID': StaffOutreachRecipientID, 'ContactID': ContactID, 'Name': Name, 'Kind': Kind, 'Rate': Rate, 'Rating': Rating, 'RatingCount': RatingCount, 'Status': Status, 'Note': Note, 'CounterRate': CounterRate, 'CounterStartDate': CounterStartDate }; getTypeName() => "StaffResponseDto"; TypeContext? context = _ctx; } class StaffResponsesResponse implements IConvertible { ResponseStatus? ResponseStatus; List? Responses = []; int? SentCount; int? OpenedCount; int? ClickedCount; int? Accepted; int? Question; int? Declined; int? NoReply; StaffResponsesResponse({this.ResponseStatus,this.Responses,this.SentCount,this.OpenedCount,this.ClickedCount,this.Accepted,this.Question,this.Declined,this.NoReply}); StaffResponsesResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Responses = JsonConverters.fromJson(json['Responses'],'List',context!); SentCount = json['SentCount']; OpenedCount = json['OpenedCount']; ClickedCount = json['ClickedCount']; Accepted = json['Accepted']; Question = json['Question']; Declined = json['Declined']; NoReply = json['NoReply']; return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Responses': JsonConverters.toJson(Responses,'List',context!), 'SentCount': SentCount, 'OpenedCount': OpenedCount, 'ClickedCount': ClickedCount, 'Accepted': Accepted, 'Question': Question, 'Declined': Declined, 'NoReply': NoReply }; getTypeName() => "StaffResponsesResponse"; TypeContext? context = _ctx; } // @Route("/v1/staff/outreach/responses", "GET,OPTIONS") class StaffResponsesRequest implements IReturn, IConvertible, IGet { int? PlaceholderContactID; StaffResponsesRequest({this.PlaceholderContactID}); StaffResponsesRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PlaceholderContactID = json['PlaceholderContactID']; return this; } Map toJson() => { 'PlaceholderContactID': PlaceholderContactID }; createResponse() => StaffResponsesResponse(); getResponseTypeName() => "StaffResponsesResponse"; getTypeName() => "StaffResponsesRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'StaffResponseDto': TypeInfo(TypeOf.Class, create:() => StaffResponseDto()), 'StaffResponsesResponse': TypeInfo(TypeOf.Class, create:() => StaffResponsesResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'StaffResponsesRequest': TypeInfo(TypeOf.Class, create:() => StaffResponsesRequest()), });