/* Options: Date: 2026-08-01 04:25:32 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: PayRulesCascadeRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class PayRuleDocSection implements IConvertible { String? H; String? T; PayRuleDocSection({this.H,this.T}); PayRuleDocSection.fromJson(Map json) { fromMap(json); } fromMap(Map json) { H = json['H']; T = json['T']; return this; } Map toJson() => { 'H': H, 'T': T }; getTypeName() => "PayRuleDocSection"; TypeContext? context = _ctx; } class PayRuleTuneOption implements IConvertible { String? Label; String? Sub; PayRuleTuneOption({this.Label,this.Sub}); PayRuleTuneOption.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Label = json['Label']; Sub = json['Sub']; return this; } Map toJson() => { 'Label': Label, 'Sub': Sub }; getTypeName() => "PayRuleTuneOption"; TypeContext? context = _ctx; } class PayRuleTune implements IConvertible { String? Intro; List? Options = []; PayRuleTune({this.Intro,this.Options}); PayRuleTune.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Intro = json['Intro']; Options = JsonConverters.fromJson(json['Options'],'List',context!); return this; } Map toJson() => { 'Intro': Intro, 'Options': JsonConverters.toJson(Options,'List',context!) }; getTypeName() => "PayRuleTune"; TypeContext? context = _ctx; } class PayRuleDef implements IConvertible { String? RuleId; String? Name; String? Kind; String? Demand; String? SourcePolicyName; String? CascadeLevel; String? Why; String? Change; String? OverrideWho; String? OverrideConsequence; String? NoNote; String? LegalVerify; Map? Params = {}; List? Doc = []; PayRuleTune? Tune; PayRuleDef({this.RuleId,this.Name,this.Kind,this.Demand,this.SourcePolicyName,this.CascadeLevel,this.Why,this.Change,this.OverrideWho,this.OverrideConsequence,this.NoNote,this.LegalVerify,this.Params,this.Doc,this.Tune}); PayRuleDef.fromJson(Map json) { fromMap(json); } fromMap(Map json) { RuleId = json['RuleId']; Name = json['Name']; Kind = json['Kind']; Demand = json['Demand']; SourcePolicyName = json['SourcePolicyName']; CascadeLevel = json['CascadeLevel']; Why = json['Why']; Change = json['Change']; OverrideWho = json['OverrideWho']; OverrideConsequence = json['OverrideConsequence']; NoNote = json['NoNote']; LegalVerify = json['LegalVerify']; Params = JsonConverters.toStringMap(json['Params']); Doc = JsonConverters.fromJson(json['Doc'],'List',context!); Tune = JsonConverters.fromJson(json['Tune'],'PayRuleTune',context!); return this; } Map toJson() => { 'RuleId': RuleId, 'Name': Name, 'Kind': Kind, 'Demand': Demand, 'SourcePolicyName': SourcePolicyName, 'CascadeLevel': CascadeLevel, 'Why': Why, 'Change': Change, 'OverrideWho': OverrideWho, 'OverrideConsequence': OverrideConsequence, 'NoNote': NoNote, 'LegalVerify': LegalVerify, 'Params': Params, 'Doc': JsonConverters.toJson(Doc,'List',context!), 'Tune': JsonConverters.toJson(Tune,'PayRuleTune',context!) }; getTypeName() => "PayRuleDef"; TypeContext? context = _ctx; } class PayRulePolicyDoc implements IConvertible { String? Intro; String? LockLine; String? TemplateName; List? Rules = []; PayRulePolicyDoc({this.Intro,this.LockLine,this.TemplateName,this.Rules}); PayRulePolicyDoc.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Intro = json['Intro']; LockLine = json['LockLine']; TemplateName = json['TemplateName']; Rules = JsonConverters.fromJson(json['Rules'],'List',context!); return this; } Map toJson() => { 'Intro': Intro, 'LockLine': LockLine, 'TemplateName': TemplateName, 'Rules': JsonConverters.toJson(Rules,'List',context!) }; getTypeName() => "PayRulePolicyDoc"; TypeContext? context = _ctx; } class PayRulePolicy implements IConvertible { int? PayRulePolicyId; String? PayRulePolicyUID; String? Name; String? ScopeLevel; String? BranchId; String? JurisdictionKey; String? CbaKey; String? WorkTypeKey; int? CurrentVersion; bool? IsActive; String? BranchName; PayRulePolicy({this.PayRulePolicyId,this.PayRulePolicyUID,this.Name,this.ScopeLevel,this.BranchId,this.JurisdictionKey,this.CbaKey,this.WorkTypeKey,this.CurrentVersion,this.IsActive,this.BranchName}); PayRulePolicy.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PayRulePolicyId = json['PayRulePolicyId']; PayRulePolicyUID = json['PayRulePolicyUID']; Name = json['Name']; ScopeLevel = json['ScopeLevel']; BranchId = json['BranchId']; JurisdictionKey = json['JurisdictionKey']; CbaKey = json['CbaKey']; WorkTypeKey = json['WorkTypeKey']; CurrentVersion = json['CurrentVersion']; IsActive = json['IsActive']; BranchName = json['BranchName']; return this; } Map toJson() => { 'PayRulePolicyId': PayRulePolicyId, 'PayRulePolicyUID': PayRulePolicyUID, 'Name': Name, 'ScopeLevel': ScopeLevel, 'BranchId': BranchId, 'JurisdictionKey': JurisdictionKey, 'CbaKey': CbaKey, 'WorkTypeKey': WorkTypeKey, 'CurrentVersion': CurrentVersion, 'IsActive': IsActive, 'BranchName': BranchName }; getTypeName() => "PayRulePolicy"; TypeContext? context = _ctx; } class PayRulePolicyVersionInfo implements IConvertible { int? PayRulePolicyVersionId; int? VersionNumber; String? ChangeNote; String? ChangedByName; DateTime? CreatedAtUtc; PayRulePolicyVersionInfo({this.PayRulePolicyVersionId,this.VersionNumber,this.ChangeNote,this.ChangedByName,this.CreatedAtUtc}); PayRulePolicyVersionInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PayRulePolicyVersionId = json['PayRulePolicyVersionId']; VersionNumber = json['VersionNumber']; ChangeNote = json['ChangeNote']; ChangedByName = json['ChangedByName']; CreatedAtUtc = JsonConverters.fromJson(json['CreatedAtUtc'],'DateTime',context!); return this; } Map toJson() => { 'PayRulePolicyVersionId': PayRulePolicyVersionId, 'VersionNumber': VersionNumber, 'ChangeNote': ChangeNote, 'ChangedByName': ChangedByName, 'CreatedAtUtc': JsonConverters.toJson(CreatedAtUtc,'DateTime',context!) }; getTypeName() => "PayRulePolicyVersionInfo"; TypeContext? context = _ctx; } class PayRulesCascadeResponse implements IConvertible { PayRulePolicy? Policy; PayRulePolicyDoc? Doc; int? VersionNumber; List? Versions = []; bool? CanEditRules; ResponseStatus? ResponseStatus; PayRulesCascadeResponse({this.Policy,this.Doc,this.VersionNumber,this.Versions,this.CanEditRules,this.ResponseStatus}); PayRulesCascadeResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Policy = JsonConverters.fromJson(json['Policy'],'PayRulePolicy',context!); Doc = JsonConverters.fromJson(json['Doc'],'PayRulePolicyDoc',context!); VersionNumber = json['VersionNumber']; Versions = JsonConverters.fromJson(json['Versions'],'List',context!); CanEditRules = json['CanEditRules']; ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'Policy': JsonConverters.toJson(Policy,'PayRulePolicy',context!), 'Doc': JsonConverters.toJson(Doc,'PayRulePolicyDoc',context!), 'VersionNumber': VersionNumber, 'Versions': JsonConverters.toJson(Versions,'List',context!), 'CanEditRules': CanEditRules, 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!) }; getTypeName() => "PayRulesCascadeResponse"; TypeContext? context = _ctx; } // @Route("/v1/workforce/payrules", "GET") class PayRulesCascadeRequest implements IReturn, IConvertible, IGet { int? PayRulePolicyId; int? VersionNumber; PayRulesCascadeRequest({this.PayRulePolicyId,this.VersionNumber}); PayRulesCascadeRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PayRulePolicyId = json['PayRulePolicyId']; VersionNumber = json['VersionNumber']; return this; } Map toJson() => { 'PayRulePolicyId': PayRulePolicyId, 'VersionNumber': VersionNumber }; createResponse() => PayRulesCascadeResponse(); getResponseTypeName() => "PayRulesCascadeResponse"; getTypeName() => "PayRulesCascadeRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'PayRuleDocSection': TypeInfo(TypeOf.Class, create:() => PayRuleDocSection()), 'PayRuleTuneOption': TypeInfo(TypeOf.Class, create:() => PayRuleTuneOption()), 'PayRuleTune': TypeInfo(TypeOf.Class, create:() => PayRuleTune()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PayRuleDef': TypeInfo(TypeOf.Class, create:() => PayRuleDef()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PayRulePolicyDoc': TypeInfo(TypeOf.Class, create:() => PayRulePolicyDoc()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PayRulePolicy': TypeInfo(TypeOf.Class, create:() => PayRulePolicy()), 'PayRulePolicyVersionInfo': TypeInfo(TypeOf.Class, create:() => PayRulePolicyVersionInfo()), 'PayRulesCascadeResponse': TypeInfo(TypeOf.Class, create:() => PayRulesCascadeResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PayRulesCascadeRequest': TypeInfo(TypeOf.Class, create:() => PayRulesCascadeRequest()), });