/* Options: Date: 2025-05-10 03:26:52 Version: 8.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://active-ewebservice.biz/aeservices30/api //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: C2BPostContractRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; // @DataContract class BaseRequest implements IConvertible { /** * This is your AIM API Key provided by Tri-Tech */ // @DataMember // @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header") String? ApiKey; // @DataMember // @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header") String? OAuthToken; BaseRequest({this.ApiKey,this.OAuthToken}); BaseRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ApiKey = json['ApiKey']; OAuthToken = json['OAuthToken']; return this; } Map toJson() => { 'ApiKey': ApiKey, 'OAuthToken': OAuthToken }; getTypeName() => "BaseRequest"; TypeContext? context = _ctx; } // @DataContract class BaseSecureRequest extends BaseRequest implements IConvertible { /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header") String? Token; /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header") String? DeviceId; /** * */ // @DataMember // @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header") String? AppId; BaseSecureRequest({this.Token,this.DeviceId,this.AppId}); BaseSecureRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Token = json['Token']; DeviceId = json['DeviceId']; AppId = json['AppId']; return this; } Map toJson() => super.toJson()..addAll({ 'Token': Token, 'DeviceId': DeviceId, 'AppId': AppId }); getTypeName() => "BaseSecureRequest"; TypeContext? context = _ctx; } // @DataContract(Name="Accessory") class Accessory implements IConvertible { // @DataMember String? Desc; // @DataMember double? Price; // @DataMember String? Type; // @DataMember int? CatNum; // @DataMember String? Sku; // @DataMember bool? Report; Accessory({this.Desc,this.Price,this.Type,this.CatNum,this.Sku,this.Report}); Accessory.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Desc = json['Desc']; Price = JsonConverters.toDouble(json['Price']); Type = json['Type']; CatNum = json['CatNum']; Sku = json['Sku']; Report = json['Report']; return this; } Map toJson() => { 'Desc': Desc, 'Price': Price, 'Type': Type, 'CatNum': CatNum, 'Sku': Sku, 'Report': Report }; getTypeName() => "Accessory"; TypeContext? context = _ctx; } // @DataContract(Name="FormInput") class FormInput implements IConvertible { /** * Field Name of the Input Field */ // @DataMember // @ApiMember(DataType="string", Description="Field Name of the Input Field", IsRequired=true, Name="Key", ParameterType="query") String? Key; /** * Value of the Input Field. */ // @DataMember // @ApiMember(DataType="string", Description="Value of the Input Field.", IsRequired=true, Name="Value", ParameterType="query") String? Value; /** * Whether or not the field is encryped with the C2B encryption key. */ // @DataMember // @ApiMember(DataType="boolean", Description="Whether or not the field is encryped with the C2B encryption key.", IsRequired=true, Name="Encrypted", ParameterType="query") bool? Encrypted; FormInput({this.Key,this.Value,this.Encrypted}); FormInput.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Key = json['Key']; Value = json['Value']; Encrypted = json['Encrypted']; return this; } Map toJson() => { 'Key': Key, 'Value': Value, 'Encrypted': Encrypted }; getTypeName() => "FormInput"; TypeContext? context = _ctx; } // @DataContract(Name="Rate") class Rate implements IConvertible { // @DataMember String? PlanCode; // @DataMember int? Level; // @DataMember String? Grade; // @DataMember double? DownPay; // @DataMember double? MoPay; // @DataMember double? DownMaint; // @DataMember double? MoMaint; // @DataMember String? RdfType; // @DataMember int? ContractDefaultId; /** * The Number of Months covered by the downpayment */ // @DataMember // @ApiMember(DataType="int", Description="The Number of Months covered by the downpayment", Name="Months") int? Months; // @DataMember double? DownLease; // @DataMember double? MoLease; Rate({this.PlanCode,this.Level,this.Grade,this.DownPay,this.MoPay,this.DownMaint,this.MoMaint,this.RdfType,this.ContractDefaultId,this.Months,this.DownLease,this.MoLease}); Rate.fromJson(Map json) { fromMap(json); } fromMap(Map json) { PlanCode = json['PlanCode']; Level = json['Level']; Grade = json['Grade']; DownPay = JsonConverters.toDouble(json['DownPay']); MoPay = JsonConverters.toDouble(json['MoPay']); DownMaint = JsonConverters.toDouble(json['DownMaint']); MoMaint = JsonConverters.toDouble(json['MoMaint']); RdfType = json['RdfType']; ContractDefaultId = json['ContractDefaultId']; Months = json['Months']; DownLease = JsonConverters.toDouble(json['DownLease']); MoLease = JsonConverters.toDouble(json['MoLease']); return this; } Map toJson() => { 'PlanCode': PlanCode, 'Level': Level, 'Grade': Grade, 'DownPay': DownPay, 'MoPay': MoPay, 'DownMaint': DownMaint, 'MoMaint': MoMaint, 'RdfType': RdfType, 'ContractDefaultId': ContractDefaultId, 'Months': Months, 'DownLease': DownLease, 'MoLease': MoLease }; getTypeName() => "Rate"; TypeContext? context = _ctx; } // @DataContract(Name="CCInfo") class CcInfo implements IConvertible { /** * Token returned from processor */ // @DataMember // @ApiMember(DataType="string", Description="Token returned from processor", IsRequired=true, Name="TokenStr", ParameterType="query") String? TokenStr; /** * Card Type (VISA, MCARD, AMEX, DSCVR) */ // @DataMember // @ApiMember(DataType="string", Description="Card Type (VISA, MCARD, AMEX, DSCVR)", IsRequired=true, Name="CardType", ParameterType="query") String? CardType; /** * Last four of the card */ // @DataMember // @ApiMember(DataType="string", Description="Last four of the card", IsRequired=true, Name="LastFour", ParameterType="query") String? LastFour; /** * Expiration Date of the Card. (MM/YY) */ // @DataMember // @ApiMember(DataType="string", Description="Expiration Date of the Card. (MM/YY)", Name="Expiration", ParameterType="query") String? Expiration; /** * Reason the card is on file. */ // @DataMember // @ApiMember(DataType="string", Description="Reason the card is on file.", Name="ReasonOnFile", ParameterType="query") String? ReasonOnFile; /** * ID of the existing Token Record in AIM, if applicable */ // @DataMember // @ApiMember(DataType="integer", Description="ID of the existing Token Record in AIM, if applicable", Format="int64", Name="TokenPk", ParameterType="query") int? TokenPk; /** * Is this the customer's primary card? Defaults to false. */ // @DataMember // @ApiMember(DataType="boolean", Description="Is this the customer's primary card? Defaults to false.", Name="Primary", ParameterType="query") bool? Primary; CcInfo({this.TokenStr,this.CardType,this.LastFour,this.Expiration,this.ReasonOnFile,this.TokenPk,this.Primary}); CcInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { TokenStr = json['TokenStr']; CardType = json['CardType']; LastFour = json['LastFour']; Expiration = json['Expiration']; ReasonOnFile = json['ReasonOnFile']; TokenPk = json['TokenPk']; Primary = json['Primary']; return this; } Map toJson() => { 'TokenStr': TokenStr, 'CardType': CardType, 'LastFour': LastFour, 'Expiration': Expiration, 'ReasonOnFile': ReasonOnFile, 'TokenPk': TokenPk, 'Primary': Primary }; getTypeName() => "CcInfo"; TypeContext? context = _ctx; } // @DataContract(Name="CustomerInfo") class CustomerInfo implements IConvertible { /** * The WebId of the customer. Optional. */ // @DataMember // @ApiMember(DataType="integer", Description="The WebId of the customer. Optional.", Format="int32", IsRequired=true, Name="WebId", ParameterType="query") int? WebId; /** * Name of the customer. */ // @DataMember // @ApiMember(DataType="string", Description="Name of the customer.", IsRequired=true, Name="Name", ParameterType="query") String? Name; /** * Address line 1 of the customer */ // @DataMember // @ApiMember(DataType="string", Description="Address line 1 of the customer", Name="Addr1", ParameterType="query") String? Addr1; /** * Address line 2 of the customer */ // @DataMember // @ApiMember(DataType="string", Description="Address line 2 of the customer", Name="Addr2", ParameterType="query") String? Addr2; /** * City of the customer */ // @DataMember // @ApiMember(DataType="string", Description="City of the customer", Name="City", ParameterType="query") String? City; /** * State/Province of the customer */ // @DataMember // @ApiMember(DataType="string", Description="State/Province of the customer", Name="St", ParameterType="query") String? St; /** * Zip code of the customer */ // @DataMember // @ApiMember(DataType="string", Description="Zip code of the customer", Name="Zip", ParameterType="query") String? Zip; /** * Country of the customer */ // @DataMember // @ApiMember(DataType="string", Description="Country of the customer", Name="Country", ParameterType="query") String? Country; /** * Phone number of the customer */ // @DataMember // @ApiMember(DataType="string", Description="Phone number of the customer", Name="Phone", ParameterType="query") String? Phone; /** * Email address of the customer. Required. */ // @DataMember // @ApiMember(DataType="string", Description="Email address of the customer. Required.", IsRequired=true, Name="Email", ParameterType="query") String? Email; CustomerInfo({this.WebId,this.Name,this.Addr1,this.Addr2,this.City,this.St,this.Zip,this.Country,this.Phone,this.Email}); CustomerInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { WebId = json['WebId']; Name = json['Name']; Addr1 = json['Addr1']; Addr2 = json['Addr2']; City = json['City']; St = json['St']; Zip = json['Zip']; Country = json['Country']; Phone = json['Phone']; Email = json['Email']; return this; } Map toJson() => { 'WebId': WebId, 'Name': Name, 'Addr1': Addr1, 'Addr2': Addr2, 'City': City, 'St': St, 'Zip': Zip, 'Country': Country, 'Phone': Phone, 'Email': Email }; getTypeName() => "CustomerInfo"; TypeContext? context = _ctx; } // @DataContract class BaseResponse implements IConvertible { /** * */ // @DataMember // @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body") BaseResponseResult? Status; BaseResponse({this.Status}); BaseResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Status = JsonConverters.fromJson(json['Status'],'BaseResponseResult',context!); return this; } Map toJson() => { 'Status': JsonConverters.toJson(Status,'BaseResponseResult',context!) }; getTypeName() => "BaseResponse"; TypeContext? context = _ctx; } // @DataContract class C2BPostContractResponse extends BaseResponse implements IConvertible { // @DataMember bool? PaymentRequired; // @DataMember String? Topic; // @DataMember String? WebRef; // @DataMember String? BaseUrl; C2BPostContractResponse({this.PaymentRequired,this.Topic,this.WebRef,this.BaseUrl}); C2BPostContractResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); PaymentRequired = json['PaymentRequired']; Topic = json['Topic']; WebRef = json['WebRef']; BaseUrl = json['BaseUrl']; return this; } Map toJson() => super.toJson()..addAll({ 'PaymentRequired': PaymentRequired, 'Topic': Topic, 'WebRef': WebRef, 'BaseUrl': BaseUrl }); getTypeName() => "C2BPostContractResponse"; TypeContext? context = _ctx; } /** * C2BPostContractRequires active-e Contracts Service. */ // @Route("/C2BPostContract", "POST, GET") // @DataContract class C2BPostContractRequest extends BaseSecureRequest implements IReturn, IConvertible, IPost { /** * ID of the teacher to associate the contract with. */ // @DataMember // @ApiMember(DataType="integer", Description="ID of the teacher to associate the contract with.", Format="int64", Name="TeacherId", ParameterType="query") int? TeacherId; /** * Used to associate the contract with a school by school name. */ // @DataMember // @ApiMember(DataType="string", Description="Used to associate the contract with a school by school name.", Name="SchoolName", ParameterType="query") String? SchoolName; /** * Used to associate the contract with a school by the AIM School ID */ // @DataMember // @ApiMember(DataType="string", Description="Used to associate the contract with a school by the AIM School ID", Name="AIMSchoolId", ParameterType="query") int? AIMSchoolId; /** * Used to associate the contract with a location by location code. */ // @DataMember // @ApiMember(DataType="string", Description="Used to associate the contract with a location by location code.", Name="Stloc", ParameterType="query") String? Stloc; /** * ID of the instrument to associate the contract with. */ // @DataMember // @ApiMember(DataType="integer", Description="ID of the instrument to associate the contract with.", Format="int64", Name="InstrumentId", ParameterType="query") int? InstrumentId; /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="Sku", ParameterType="query") String? Sku; /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="Desc", ParameterType="query") String? Desc; /** * The ID from the C2BGradeGeneric object */ // @DataMember // @ApiMember(DataType="integer", Description="The ID from the C2BGradeGeneric object", Format="int64", Name="RateId", ParameterType="query") int? RateId; /** * */ // @DataMember // @ApiMember(DataType="object", Description="", Name="Rate", ParameterType="query") Rate? Rate; /** * */ // @DataMember // @ApiMember(DataType="array", Description="", Name="AccessoryIdList", ParameterType="query") List? AccessoryIdList; /** * */ // @DataMember // @ApiMember(DataType="array", Description="", Name="AccessoryList", ParameterType="query") List? AccessoryList; /** * */ // @DataMember // @ApiMember(DataType="array", Description="", Name="FormInputList", ParameterType="query") List? FormInputList; /** * */ // @DataMember // @ApiMember(DataType="object", Description="", Name="CcInfo", ParameterType="query") CcInfo? CcInfo; /** * */ // @DataMember // @ApiMember(DataType="object", Description="", Name="CustomerInfo", ParameterType="query") CustomerInfo? CustomerInfo; /** * */ // @DataMember // @ApiMember(DataType="integer", Description="", Format="int32", Name="CusAcct", ParameterType="query") int? CusAcct; /** * */ // @DataMember // @ApiMember(DataType="int", Description="", Name="Cat", ParameterType="query") int? Cat; /** * */ // @DataMember // @ApiMember(DataType="int", Description="", Name="Sub", ParameterType="query") int? Sub; // @DataMember bool? ReturnTopic; // @DataMember int? StatusId; // @DataMember String? CardTerminalId; C2BPostContractRequest({this.TeacherId,this.SchoolName,this.AIMSchoolId,this.Stloc,this.InstrumentId,this.Sku,this.Desc,this.RateId,this.Rate,this.AccessoryIdList,this.AccessoryList,this.FormInputList,this.CcInfo,this.CustomerInfo,this.CusAcct,this.Cat,this.Sub,this.ReturnTopic,this.StatusId,this.CardTerminalId}); C2BPostContractRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); TeacherId = json['TeacherId']; SchoolName = json['SchoolName']; AIMSchoolId = json['AIMSchoolId']; Stloc = json['Stloc']; InstrumentId = json['InstrumentId']; Sku = json['Sku']; Desc = json['Desc']; RateId = json['RateId']; Rate = JsonConverters.fromJson(json['Rate'],'Rate',context!); AccessoryIdList = JsonConverters.fromJson(json['AccessoryIdList'],'List',context!); AccessoryList = JsonConverters.fromJson(json['AccessoryList'],'List',context!); FormInputList = JsonConverters.fromJson(json['FormInputList'],'List',context!); CcInfo = JsonConverters.fromJson(json['CcInfo'],'CcInfo',context!); CustomerInfo = JsonConverters.fromJson(json['CustomerInfo'],'CustomerInfo',context!); CusAcct = json['CusAcct']; Cat = json['Cat']; Sub = json['Sub']; ReturnTopic = json['ReturnTopic']; StatusId = json['StatusId']; CardTerminalId = json['CardTerminalId']; return this; } Map toJson() => super.toJson()..addAll({ 'TeacherId': TeacherId, 'SchoolName': SchoolName, 'AIMSchoolId': AIMSchoolId, 'Stloc': Stloc, 'InstrumentId': InstrumentId, 'Sku': Sku, 'Desc': Desc, 'RateId': RateId, 'Rate': JsonConverters.toJson(Rate,'Rate',context!), 'AccessoryIdList': JsonConverters.toJson(AccessoryIdList,'List',context!), 'AccessoryList': JsonConverters.toJson(AccessoryList,'List',context!), 'FormInputList': JsonConverters.toJson(FormInputList,'List',context!), 'CcInfo': JsonConverters.toJson(CcInfo,'CcInfo',context!), 'CustomerInfo': JsonConverters.toJson(CustomerInfo,'CustomerInfo',context!), 'CusAcct': CusAcct, 'Cat': Cat, 'Sub': Sub, 'ReturnTopic': ReturnTopic, 'StatusId': StatusId, 'CardTerminalId': CardTerminalId }); createResponse() => C2BPostContractResponse(); getResponseTypeName() => "C2BPostContractResponse"; getTypeName() => "C2BPostContractRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'active_ewebservice.biz', types: { 'BaseRequest': TypeInfo(TypeOf.Class, create:() => BaseRequest()), 'BaseSecureRequest': TypeInfo(TypeOf.Class, create:() => BaseSecureRequest()), 'Accessory': TypeInfo(TypeOf.Class, create:() => Accessory()), 'FormInput': TypeInfo(TypeOf.Class, create:() => FormInput()), 'Rate': TypeInfo(TypeOf.Class, create:() => Rate()), 'CcInfo': TypeInfo(TypeOf.Class, create:() => CcInfo()), 'CustomerInfo': TypeInfo(TypeOf.Class, create:() => CustomerInfo()), 'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()), 'BaseResponseResult': TypeInfo(TypeOf.Class, create:() => BaseResponseResult()), 'C2BPostContractResponse': TypeInfo(TypeOf.Class, create:() => C2BPostContractResponse()), 'C2BPostContractRequest': TypeInfo(TypeOf.Class, create:() => C2BPostContractRequest()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), });