/* Options: Date: 2026-11-08 11:33:21 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://devapi.billhighway.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: InvoiceCollection.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class IHaveErrorField { bool? IsError; } class InvoiceReply implements IConvertible { String? UniqueId; int? ErrorCode; String? ErrorMessage; int? InvBatchNo; double? InvAmount; InvoiceReply({this.UniqueId,this.ErrorCode,this.ErrorMessage,this.InvBatchNo,this.InvAmount}); InvoiceReply.fromJson(Map json) { fromMap(json); } fromMap(Map json) { UniqueId = json['UniqueId']; ErrorCode = json['ErrorCode']; ErrorMessage = json['ErrorMessage']; InvBatchNo = json['InvBatchNo']; InvAmount = JsonConverters.toDouble(json['InvAmount']); return this; } Map toJson() => { 'UniqueId': UniqueId, 'ErrorCode': ErrorCode, 'ErrorMessage': ErrorMessage, 'InvBatchNo': InvBatchNo, 'InvAmount': InvAmount }; getTypeName() => "InvoiceReply"; TypeContext? context = _ctx; } abstract class IHaveErrorField { bool? IsError; } class InvoiceCollectionReply implements IHaveErrorField, IConvertible { List? InvoiceReply; bool? IsError; InvoiceCollectionReply({this.InvoiceReply,this.IsError}); InvoiceCollectionReply.fromJson(Map json) { fromMap(json); } fromMap(Map json) { InvoiceReply = JsonConverters.fromJson(json['InvoiceReply'],'List',context!); IsError = json['IsError']; return this; } Map toJson() => { 'InvoiceReply': JsonConverters.toJson(InvoiceReply,'List',context!), 'IsError': IsError }; getTypeName() => "InvoiceCollectionReply"; TypeContext? context = _ctx; } class Invoice implements IInvoiceValidation, IConvertible { String? UniqueId; int? ClientId; String? GroupId; String? UserId; String? OpportunityId; DateTime? InvoiceDueDate; int? Installments; int? Frequency; int? BhUserId; String? Description; bool? Deliver; String? CurrencyType; List? InvoiceItems; int? InvoiceNo; double? InvoiceAmt; String? ExternalInvBatchNo; bool? ExemptFromLateFee; Invoice({this.UniqueId,this.ClientId,this.GroupId,this.UserId,this.OpportunityId,this.InvoiceDueDate,this.Installments,this.Frequency,this.BhUserId,this.Description,this.Deliver,this.CurrencyType,this.InvoiceItems,this.InvoiceNo,this.InvoiceAmt,this.ExternalInvBatchNo,this.ExemptFromLateFee}); Invoice.fromJson(Map json) { fromMap(json); } fromMap(Map json) { UniqueId = json['UniqueId']; ClientId = json['ClientId']; GroupId = json['GroupId']; UserId = json['UserId']; OpportunityId = json['OpportunityId']; InvoiceDueDate = JsonConverters.fromJson(json['InvoiceDueDate'],'DateTime',context!); Installments = json['Installments']; Frequency = json['Frequency']; BhUserId = json['BhUserId']; Description = json['Description']; Deliver = json['Deliver']; CurrencyType = json['CurrencyType']; InvoiceItems = JsonConverters.fromJson(json['InvoiceItems'],'List',context!); InvoiceNo = json['InvoiceNo']; InvoiceAmt = JsonConverters.toDouble(json['InvoiceAmt']); ExternalInvBatchNo = json['ExternalInvBatchNo']; ExemptFromLateFee = json['ExemptFromLateFee']; return this; } Map toJson() => { 'UniqueId': UniqueId, 'ClientId': ClientId, 'GroupId': GroupId, 'UserId': UserId, 'OpportunityId': OpportunityId, 'InvoiceDueDate': JsonConverters.toJson(InvoiceDueDate,'DateTime',context!), 'Installments': Installments, 'Frequency': Frequency, 'BhUserId': BhUserId, 'Description': Description, 'Deliver': Deliver, 'CurrencyType': CurrencyType, 'InvoiceItems': JsonConverters.toJson(InvoiceItems,'List',context!), 'InvoiceNo': InvoiceNo, 'InvoiceAmt': InvoiceAmt, 'ExternalInvBatchNo': ExternalInvBatchNo, 'ExemptFromLateFee': ExemptFromLateFee }; getTypeName() => "Invoice"; TypeContext? context = _ctx; } // @Route("/invoices/misc", "POST") class InvoiceCollection implements IReturn, IConvertible { List? InvoiceList; InvoiceCollection({this.InvoiceList}); InvoiceCollection.fromJson(Map json) { fromMap(json); } fromMap(Map json) { InvoiceList = JsonConverters.fromJson(json['InvoiceList'],'List',context!); return this; } Map toJson() => { 'InvoiceList': JsonConverters.toJson(InvoiceList,'List',context!) }; createResponse() => InvoiceCollectionReply(); getResponseTypeName() => "InvoiceCollectionReply"; getTypeName() => "InvoiceCollection"; TypeContext? context = _ctx; } class Invoice implements IInvoiceValidation, IConvertible { String? UniqueId; int? ClientId; String? GroupId; String? Description; String? OpportunityId; int? Installments; int? Frequency; DateTime? InvoiceDueDate; bool? Deliver; String? UserId; int? BhUserId; String? CurrencyType; List? InvoiceItems; int? InvoiceNo; double? InvoiceAmt; String? ExternalInvBatchNo; bool? ExemptFromLateFee; Invoice({this.UniqueId,this.ClientId,this.GroupId,this.Description,this.OpportunityId,this.Installments,this.Frequency,this.InvoiceDueDate,this.Deliver,this.UserId,this.BhUserId,this.CurrencyType,this.InvoiceItems,this.InvoiceNo,this.InvoiceAmt,this.ExternalInvBatchNo,this.ExemptFromLateFee}); Invoice.fromJson(Map json) { fromMap(json); } fromMap(Map json) { UniqueId = json['UniqueId']; ClientId = json['ClientId']; GroupId = json['GroupId']; Description = json['Description']; OpportunityId = json['OpportunityId']; Installments = json['Installments']; Frequency = json['Frequency']; InvoiceDueDate = JsonConverters.fromJson(json['InvoiceDueDate'],'DateTime',context!); Deliver = json['Deliver']; UserId = json['UserId']; BhUserId = json['BhUserId']; CurrencyType = json['CurrencyType']; InvoiceItems = JsonConverters.fromJson(json['InvoiceItems'],'List',context!); InvoiceNo = json['InvoiceNo']; InvoiceAmt = JsonConverters.toDouble(json['InvoiceAmt']); ExternalInvBatchNo = json['ExternalInvBatchNo']; ExemptFromLateFee = json['ExemptFromLateFee']; return this; } Map toJson() => { 'UniqueId': UniqueId, 'ClientId': ClientId, 'GroupId': GroupId, 'Description': Description, 'OpportunityId': OpportunityId, 'Installments': Installments, 'Frequency': Frequency, 'InvoiceDueDate': JsonConverters.toJson(InvoiceDueDate,'DateTime',context!), 'Deliver': Deliver, 'UserId': UserId, 'BhUserId': BhUserId, 'CurrencyType': CurrencyType, 'InvoiceItems': JsonConverters.toJson(InvoiceItems,'List',context!), 'InvoiceNo': InvoiceNo, 'InvoiceAmt': InvoiceAmt, 'ExternalInvBatchNo': ExternalInvBatchNo, 'ExemptFromLateFee': ExemptFromLateFee }; getTypeName() => "Invoice"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: { 'IHaveErrorField': TypeInfo(TypeOf.Interface), 'InvoiceReply': TypeInfo(TypeOf.Class, create:() => InvoiceReply()), 'InvoiceCollectionReply': TypeInfo(TypeOf.Class, create:() => InvoiceCollectionReply()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Invoice': TypeInfo(TypeOf.Class, create:() => Invoice()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'InvoiceItem': TypeInfo(TypeOf.Class, create:() => InvoiceItem()), 'InvoiceCollection': TypeInfo(TypeOf.Class, create:() => InvoiceCollection()), 'List': TypeInfo(TypeOf.Class, create:() => []), });