/* Options: Date: 2024-07-03 12:25:48 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CompanyBillingInformation.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class BaseModel implements IConvertible { BaseModel(); BaseModel.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; getTypeName() => "BaseModel"; TypeContext? context = _ctx; } class BillingMethodCountriesRelation extends BaseModel implements IConvertible { // @Required() int? BillingMethodId; // @Required() String? CountryId; DateTime? ModifiedDate; BillingMethodCountriesRelation({this.BillingMethodId,this.CountryId,this.ModifiedDate}); BillingMethodCountriesRelation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); BillingMethodId = json['BillingMethodId']; CountryId = json['CountryId']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); return this; } Map toJson() => super.toJson()..addAll({ 'BillingMethodId': BillingMethodId, 'CountryId': CountryId, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!) }); getTypeName() => "BillingMethodCountriesRelation"; TypeContext? context = _ctx; } class BillingMethod extends BaseModel implements IConvertible { List? BillingMethodCountriesRelation; // @Required() String? Name; // @Required() String? Description; DateTime? ModifiedDate; int? Id; BillingMethod({this.BillingMethodCountriesRelation,this.Name,this.Description,this.ModifiedDate,this.Id}); BillingMethod.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); BillingMethodCountriesRelation = JsonConverters.fromJson(json['BillingMethodCountriesRelation'],'List',context!); Name = json['Name']; Description = json['Description']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); Id = json['Id']; return this; } Map toJson() => super.toJson()..addAll({ 'BillingMethodCountriesRelation': JsonConverters.toJson(BillingMethodCountriesRelation,'List',context!), 'Name': Name, 'Description': Description, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'Id': Id }); getTypeName() => "BillingMethod"; TypeContext? context = _ctx; } class BillingMethodQueryResponse implements IConvertible { /** * The billing method id */ // @ApiMember(Description="The billing method id") int? Id; /** * The billing method name */ // @ApiMember(Description="The billing method name") String? Name; /** * The billing method description */ // @ApiMember(Description="The billing method description") String? Description; /** * The billing method is valid for the following countries */ // @ApiMember(Description="The billing method is valid for the following countries") List? Countries; BillingMethodQueryResponse({this.Id,this.Name,this.Description,this.Countries}); BillingMethodQueryResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Name = json['Name']; Description = json['Description']; Countries = JsonConverters.fromJson(json['Countries'],'List',context!); return this; } Map toJson() => { 'Id': Id, 'Name': Name, 'Description': Description, 'Countries': JsonConverters.toJson(Countries,'List',context!) }; getTypeName() => "BillingMethodQueryResponse"; TypeContext? context = _ctx; } class BillingInformation extends BaseModel implements IConvertible { BillingMethod? BillingMethod; // @Required() int? BillingMethodId; // @Required() String? Name; String? Attention; String? Street1; String? Street2; String? ZipCode; String? City; String? Email; String? CreditCard; String? CreditCardHolder; String? CreditCardNumber; int? ValidToYear; int? ValidToMonth; String? CSV; // @Required() DateTime? Updated; // @Required() DateTime? Created; // @Required() String? CountryId; // @Required() int? PaymentTermsDays; String? VATRegistrationNumber; String? GLN; String? ReferenceLine1; String? ReferenceLine2; DateTime? ModifiedDate; // @Required() String? Id; BillingInformation({this.BillingMethod,this.BillingMethodId,this.Name,this.Attention,this.Street1,this.Street2,this.ZipCode,this.City,this.Email,this.CreditCard,this.CreditCardHolder,this.CreditCardNumber,this.ValidToYear,this.ValidToMonth,this.CSV,this.Updated,this.Created,this.CountryId,this.PaymentTermsDays,this.VATRegistrationNumber,this.GLN,this.ReferenceLine1,this.ReferenceLine2,this.ModifiedDate,this.Id}); BillingInformation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); BillingMethod = JsonConverters.fromJson(json['BillingMethod'],'BillingMethod',context!); BillingMethodId = json['BillingMethodId']; Name = json['Name']; Attention = json['Attention']; Street1 = json['Street1']; Street2 = json['Street2']; ZipCode = json['ZipCode']; City = json['City']; Email = json['Email']; CreditCard = json['CreditCard']; CreditCardHolder = json['CreditCardHolder']; CreditCardNumber = json['CreditCardNumber']; ValidToYear = json['ValidToYear']; ValidToMonth = json['ValidToMonth']; CSV = json['CSV']; Updated = JsonConverters.fromJson(json['Updated'],'DateTime',context!); Created = JsonConverters.fromJson(json['Created'],'DateTime',context!); CountryId = json['CountryId']; PaymentTermsDays = json['PaymentTermsDays']; VATRegistrationNumber = json['VATRegistrationNumber']; GLN = json['GLN']; ReferenceLine1 = json['ReferenceLine1']; ReferenceLine2 = json['ReferenceLine2']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); Id = json['Id']; return this; } Map toJson() => super.toJson()..addAll({ 'BillingMethod': JsonConverters.toJson(BillingMethod,'BillingMethod',context!), 'BillingMethodId': BillingMethodId, 'Name': Name, 'Attention': Attention, 'Street1': Street1, 'Street2': Street2, 'ZipCode': ZipCode, 'City': City, 'Email': Email, 'CreditCard': CreditCard, 'CreditCardHolder': CreditCardHolder, 'CreditCardNumber': CreditCardNumber, 'ValidToYear': ValidToYear, 'ValidToMonth': ValidToMonth, 'CSV': CSV, 'Updated': JsonConverters.toJson(Updated,'DateTime',context!), 'Created': JsonConverters.toJson(Created,'DateTime',context!), 'CountryId': CountryId, 'PaymentTermsDays': PaymentTermsDays, 'VATRegistrationNumber': VATRegistrationNumber, 'GLN': GLN, 'ReferenceLine1': ReferenceLine1, 'ReferenceLine2': ReferenceLine2, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'Id': Id }); getTypeName() => "BillingInformation"; TypeContext? context = _ctx; } // @Route("/billing/company", "GET") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) // @ValidateRequest(Validator="IsAuthenticated") class CompanyBillingInformation extends QueryDb2 implements IReturn>, IConvertible, IGet { /** * The company id, if empty will use the company id for the user you are logged in with. */ // @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") String? CompanyId; /** * If you want to include the billing methods to select from */ // @ApiMember(DataType="boolean", Description="If you want to include the billing methods to select from", ParameterType="query") bool? IncludeBillingMethodOptions; CompanyBillingInformation({this.CompanyId,this.IncludeBillingMethodOptions}); CompanyBillingInformation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); CompanyId = json['CompanyId']; IncludeBillingMethodOptions = json['IncludeBillingMethodOptions']; return this; } Map toJson() => super.toJson()..addAll({ 'CompanyId': CompanyId, 'IncludeBillingMethodOptions': IncludeBillingMethodOptions }); createResponse() => QueryResponse(); getResponseTypeName() => "QueryResponse"; getTypeName() => "CompanyBillingInformation"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.bokamera.se', types: { 'BaseModel': TypeInfo(TypeOf.Class, create:() => BaseModel()), 'BillingMethodCountriesRelation': TypeInfo(TypeOf.Class, create:() => BillingMethodCountriesRelation()), 'BillingMethod': TypeInfo(TypeOf.Class, create:() => BillingMethod()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'BillingMethodQueryResponse': TypeInfo(TypeOf.Class, create:() => BillingMethodQueryResponse()), 'BillingInformation': TypeInfo(TypeOf.Class, create:() => BillingInformation()), 'QueryResponse': TypeInfo(TypeOf.Class, create:() => QueryResponse()), 'CompanyBillingInformation': TypeInfo(TypeOf.Class, create:() => CompanyBillingInformation()), 'List': TypeInfo(TypeOf.Class, create:() => []), });