/* Options: Date: 2026-07-08 21:32:45 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: StaffPostingGetRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class StaffPostingDto implements IConvertible { int? StaffPostingID; String? PositionTag; String? Title; String? Body; double? RateTarget; String? LocationText; String? WindowText; List? Sites = []; String? Status; String? ApplyUrl; StaffPostingDto({this.StaffPostingID,this.PositionTag,this.Title,this.Body,this.RateTarget,this.LocationText,this.WindowText,this.Sites,this.Status,this.ApplyUrl}); StaffPostingDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { StaffPostingID = json['StaffPostingID']; PositionTag = json['PositionTag']; Title = json['Title']; Body = json['Body']; RateTarget = JsonConverters.toDouble(json['RateTarget']); LocationText = json['LocationText']; WindowText = json['WindowText']; Sites = JsonConverters.fromJson(json['Sites'],'List',context!); Status = json['Status']; ApplyUrl = json['ApplyUrl']; return this; } Map toJson() => { 'StaffPostingID': StaffPostingID, 'PositionTag': PositionTag, 'Title': Title, 'Body': Body, 'RateTarget': RateTarget, 'LocationText': LocationText, 'WindowText': WindowText, 'Sites': JsonConverters.toJson(Sites,'List',context!), 'Status': Status, 'ApplyUrl': ApplyUrl }; getTypeName() => "StaffPostingDto"; TypeContext? context = _ctx; } class StaffApplicantDto implements IConvertible { int? StaffApplicantID; String? Name; String? Source; int? YearsExperience; double? AskRate; int? DistanceMi; String? Base; String? FitTier; int? FitScore; List? MatchedSkills = []; List? Reasons = []; String? ResumeText; String? Status; String? InterviewSlot; String? Ago; StaffApplicantDto({this.StaffApplicantID,this.Name,this.Source,this.YearsExperience,this.AskRate,this.DistanceMi,this.Base,this.FitTier,this.FitScore,this.MatchedSkills,this.Reasons,this.ResumeText,this.Status,this.InterviewSlot,this.Ago}); StaffApplicantDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { StaffApplicantID = json['StaffApplicantID']; Name = json['Name']; Source = json['Source']; YearsExperience = json['YearsExperience']; AskRate = JsonConverters.toDouble(json['AskRate']); DistanceMi = json['DistanceMi']; Base = json['Base']; FitTier = json['FitTier']; FitScore = json['FitScore']; MatchedSkills = JsonConverters.fromJson(json['MatchedSkills'],'List',context!); Reasons = JsonConverters.fromJson(json['Reasons'],'List',context!); ResumeText = json['ResumeText']; Status = json['Status']; InterviewSlot = json['InterviewSlot']; Ago = json['Ago']; return this; } Map toJson() => { 'StaffApplicantID': StaffApplicantID, 'Name': Name, 'Source': Source, 'YearsExperience': YearsExperience, 'AskRate': AskRate, 'DistanceMi': DistanceMi, 'Base': Base, 'FitTier': FitTier, 'FitScore': FitScore, 'MatchedSkills': JsonConverters.toJson(MatchedSkills,'List',context!), 'Reasons': JsonConverters.toJson(Reasons,'List',context!), 'ResumeText': ResumeText, 'Status': Status, 'InterviewSlot': InterviewSlot, 'Ago': Ago }; getTypeName() => "StaffApplicantDto"; TypeContext? context = _ctx; } class StaffPostingResponse implements IConvertible { ResponseStatus? ResponseStatus; StaffPostingDto? Posting; List? Applicants = []; int? ApplicantTotal; int? ApplicantStrong; StaffPostingResponse({this.ResponseStatus,this.Posting,this.Applicants,this.ApplicantTotal,this.ApplicantStrong}); StaffPostingResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Posting = JsonConverters.fromJson(json['Posting'],'StaffPostingDto',context!); Applicants = JsonConverters.fromJson(json['Applicants'],'List',context!); ApplicantTotal = json['ApplicantTotal']; ApplicantStrong = json['ApplicantStrong']; return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Posting': JsonConverters.toJson(Posting,'StaffPostingDto',context!), 'Applicants': JsonConverters.toJson(Applicants,'List',context!), 'ApplicantTotal': ApplicantTotal, 'ApplicantStrong': ApplicantStrong }; getTypeName() => "StaffPostingResponse"; TypeContext? context = _ctx; } // @Route("/v1/staff/posting/detail", "GET,OPTIONS") class StaffPostingGetRequest implements IReturn, IConvertible, IGet { int? PlaceholderContactID; StaffPostingGetRequest({this.PlaceholderContactID}); StaffPostingGetRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PlaceholderContactID = json['PlaceholderContactID']; return this; } Map toJson() => { 'PlaceholderContactID': PlaceholderContactID }; createResponse() => StaffPostingResponse(); getResponseTypeName() => "StaffPostingResponse"; getTypeName() => "StaffPostingGetRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'StaffPostingDto': TypeInfo(TypeOf.Class, create:() => StaffPostingDto()), 'StaffApplicantDto': TypeInfo(TypeOf.Class, create:() => StaffApplicantDto()), 'StaffPostingResponse': TypeInfo(TypeOf.Class, create:() => StaffPostingResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'StaffPostingGetRequest': TypeInfo(TypeOf.Class, create:() => StaffPostingGetRequest()), });