/* Options: Date: 2026-01-31 14:46:53 Version: 10.05 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: UpdateVossInvoiceConfigurations.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum IntermediaryPlacementEnum { None, IncludeIn21StColumn, IncludeIn7ThColumn, } enum AccrualCodeFormatEnum { Default, Dutch, } enum UnitEnum { Day, Month, Year, } // @DataContract(Name="TimeLengthRequestDto") class TimeLengthRequestDto implements IConvertible { // @DataMember(Name="unit", IsRequired=true) UnitEnum unit; // @DataMember(Name="value", IsRequired=true) int value = 0; TimeLengthRequestDto({this.unit,this.value}); TimeLengthRequestDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { unit = JsonConverters.fromJson(json['Unit'],'UnitEnum',context!); value = json['Value']; return this; } Map toJson() => { 'unit': JsonConverters.toJson(unit,'UnitEnum',context!), 'value': value }; getTypeName() => "TimeLengthRequestDto"; TypeContext? context = _ctx; } // @DataContract(Name="UpdateInvoiceConfigurationsRequest") class UpdateInvoiceConfigurationsRequest implements IConvertible { // @DataMember(Name="intermediaryPlacement", IsRequired=true) IntermediaryPlacementEnum intermediaryPlacement; // @DataMember(Name="accrualCodeFormat", IsRequired=true) AccrualCodeFormatEnum accrualCodeFormat; // @DataMember(Name="dateFormat", IsRequired=true) String dateFormat = ""; // @DataMember(Name="delimiter", IsRequired=true) String delimiter = ""; // @DataMember(Name="decimalSeparator", IsRequired=true) String decimalSeparator = ""; // @DataMember(Name="orderCreatorCode", IsRequired=true) String orderCreatorCode = ""; // @DataMember(Name="salesPersonId", IsRequired=true) String salesPersonId = ""; // @DataMember(Name="salesDepartmentId", IsRequired=true) String salesDepartmentId = ""; // @DataMember(Name="includeBillingPeriodDates") bool includeBillingPeriodDates; // @DataMember(Name="trackInvoicePayments") bool trackInvoicePayments; // @DataMember(Name="includeInvoicedCustomerDetails") bool includeInvoicedCustomerDetails; // @DataMember(Name="billingPeriodTextFormat", IsRequired=true) String billingPeriodTextFormat = ""; // @DataMember(Name="customerFooterText") String customerFooterText = ""; // @DataMember(Name="addEmptyLineBeforeCustomerFooter") bool addEmptyLineBeforeCustomerFooter; // @DataMember(Name="includeOnlyDefaultSalesPersonAndDepartment") bool includeOnlyDefaultSalesPersonAndDepartment; // @DataMember(Name="includeSubscriptionCustomerDetailsIfPayedByAnotherCustomer") bool includeSubscriptionCustomerDetailsIfPayedByAnotherCustomer; // @DataMember(Name="transactionGroup", IsRequired=true) String transactionGroup = ""; // @DataMember(Name="invoiceArbitraryNumber", IsRequired=true) String invoiceArbitraryNumber = ""; // @DataMember(Name="deliveryMethod", IsRequired=true) String deliveryMethod = ""; // @DataMember(Name="deliveryConditions", IsRequired=true) String deliveryConditions = ""; // @DataMember(Name="orderType", IsRequired=true) String orderType = ""; // @DataMember(Name="invoiceStatus", IsRequired=true) String invoiceStatus = ""; // @DataMember(Name="useProductGroupRevenueRecognition") bool useProductGroupRevenueRecognition; // @DataMember(Name="productGroupLineExcludePrint", IsRequired=true) String productGroupLineExcludePrint = ""; // @DataMember(Name="productGroupLineEditPreferences", IsRequired=true) String productGroupLineEditPreferences = ""; // @DataMember(Name="productLineExcludePrint", IsRequired=true) String productLineExcludePrint = ""; // @DataMember(Name="useDiscountedPrices") bool useDiscountedPrices; // @DataMember(Name="terminateUnpaidSubscriptions") bool terminateUnpaidSubscriptions; // @DataMember(Name="allowedUnpaidAmountLimit", EmitDefaultValue=false) double allowedUnpaidAmountLimit = 0; // @DataMember(Name="allowedPaymentOverdue") TimeLengthRequestDto allowedPaymentOverdue; // @DataMember(Name="unpaidSubscriptionTerminationReasonId") String? unpaidSubscriptionTerminationReasonId; // @DataMember(Name="unpaidSubscriptionTerminationComment") String unpaidSubscriptionTerminationComment = ""; // @DataMember(Name="creditInvoiceNumberReferenceTextFormat") String creditInvoiceNumberReferenceTextFormat = ""; UpdateInvoiceConfigurationsRequest({this.intermediaryPlacement,this.accrualCodeFormat,this.dateFormat,this.delimiter,this.decimalSeparator,this.orderCreatorCode,this.salesPersonId,this.salesDepartmentId,this.includeBillingPeriodDates,this.trackInvoicePayments,this.includeInvoicedCustomerDetails,this.billingPeriodTextFormat,this.customerFooterText,this.addEmptyLineBeforeCustomerFooter,this.includeOnlyDefaultSalesPersonAndDepartment,this.includeSubscriptionCustomerDetailsIfPayedByAnotherCustomer,this.transactionGroup,this.invoiceArbitraryNumber,this.deliveryMethod,this.deliveryConditions,this.orderType,this.invoiceStatus,this.useProductGroupRevenueRecognition,this.productGroupLineExcludePrint,this.productGroupLineEditPreferences,this.productLineExcludePrint,this.useDiscountedPrices,this.terminateUnpaidSubscriptions,this.allowedUnpaidAmountLimit,this.allowedPaymentOverdue,this.unpaidSubscriptionTerminationReasonId,this.unpaidSubscriptionTerminationComment,this.creditInvoiceNumberReferenceTextFormat}); UpdateInvoiceConfigurationsRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { intermediaryPlacement = JsonConverters.fromJson(json['IntermediaryPlacement'],'IntermediaryPlacementEnum',context!); accrualCodeFormat = JsonConverters.fromJson(json['AccrualCodeFormat'],'AccrualCodeFormatEnum',context!); dateFormat = json['DateFormat']; delimiter = json['Delimiter']; decimalSeparator = json['DecimalSeparator']; orderCreatorCode = json['OrderCreatorCode']; salesPersonId = json['SalesPersonId']; salesDepartmentId = json['SalesDepartmentId']; includeBillingPeriodDates = json['IncludeBillingPeriodDates']; trackInvoicePayments = json['TrackInvoicePayments']; includeInvoicedCustomerDetails = json['IncludeInvoicedCustomerDetails']; billingPeriodTextFormat = json['BillingPeriodTextFormat']; customerFooterText = json['CustomerFooterText']; addEmptyLineBeforeCustomerFooter = json['AddEmptyLineBeforeCustomerFooter']; includeOnlyDefaultSalesPersonAndDepartment = json['IncludeOnlyDefaultSalesPersonAndDepartment']; includeSubscriptionCustomerDetailsIfPayedByAnotherCustomer = json['IncludeSubscriptionCustomerDetailsIfPayedByAnotherCustomer']; transactionGroup = json['TransactionGroup']; invoiceArbitraryNumber = json['InvoiceArbitraryNumber']; deliveryMethod = json['DeliveryMethod']; deliveryConditions = json['DeliveryConditions']; orderType = json['OrderType']; invoiceStatus = json['InvoiceStatus']; useProductGroupRevenueRecognition = json['UseProductGroupRevenueRecognition']; productGroupLineExcludePrint = json['ProductGroupLineExcludePrint']; productGroupLineEditPreferences = json['ProductGroupLineEditPreferences']; productLineExcludePrint = json['ProductLineExcludePrint']; useDiscountedPrices = json['UseDiscountedPrices']; terminateUnpaidSubscriptions = json['TerminateUnpaidSubscriptions']; allowedUnpaidAmountLimit = JsonConverters.toDouble(json['AllowedUnpaidAmountLimit']); allowedPaymentOverdue = JsonConverters.fromJson(json['AllowedPaymentOverdue'],'TimeLengthRequestDto',context!); unpaidSubscriptionTerminationReasonId = json['UnpaidSubscriptionTerminationReasonId']; unpaidSubscriptionTerminationComment = json['UnpaidSubscriptionTerminationComment']; creditInvoiceNumberReferenceTextFormat = json['CreditInvoiceNumberReferenceTextFormat']; return this; } Map toJson() => { 'intermediaryPlacement': JsonConverters.toJson(intermediaryPlacement,'IntermediaryPlacementEnum',context!), 'accrualCodeFormat': JsonConverters.toJson(accrualCodeFormat,'AccrualCodeFormatEnum',context!), 'dateFormat': dateFormat, 'delimiter': delimiter, 'decimalSeparator': decimalSeparator, 'orderCreatorCode': orderCreatorCode, 'salesPersonId': salesPersonId, 'salesDepartmentId': salesDepartmentId, 'includeBillingPeriodDates': includeBillingPeriodDates, 'trackInvoicePayments': trackInvoicePayments, 'includeInvoicedCustomerDetails': includeInvoicedCustomerDetails, 'billingPeriodTextFormat': billingPeriodTextFormat, 'customerFooterText': customerFooterText, 'addEmptyLineBeforeCustomerFooter': addEmptyLineBeforeCustomerFooter, 'includeOnlyDefaultSalesPersonAndDepartment': includeOnlyDefaultSalesPersonAndDepartment, 'includeSubscriptionCustomerDetailsIfPayedByAnotherCustomer': includeSubscriptionCustomerDetailsIfPayedByAnotherCustomer, 'transactionGroup': transactionGroup, 'invoiceArbitraryNumber': invoiceArbitraryNumber, 'deliveryMethod': deliveryMethod, 'deliveryConditions': deliveryConditions, 'orderType': orderType, 'invoiceStatus': invoiceStatus, 'useProductGroupRevenueRecognition': useProductGroupRevenueRecognition, 'productGroupLineExcludePrint': productGroupLineExcludePrint, 'productGroupLineEditPreferences': productGroupLineEditPreferences, 'productLineExcludePrint': productLineExcludePrint, 'useDiscountedPrices': useDiscountedPrices, 'terminateUnpaidSubscriptions': terminateUnpaidSubscriptions, 'allowedUnpaidAmountLimit': allowedUnpaidAmountLimit, 'allowedPaymentOverdue': JsonConverters.toJson(allowedPaymentOverdue,'TimeLengthRequestDto',context!), 'unpaidSubscriptionTerminationReasonId': unpaidSubscriptionTerminationReasonId, 'unpaidSubscriptionTerminationComment': unpaidSubscriptionTerminationComment, 'creditInvoiceNumberReferenceTextFormat': creditInvoiceNumberReferenceTextFormat }; getTypeName() => "UpdateInvoiceConfigurationsRequest"; TypeContext? context = _ctx; } // @Route("/voss/invoiceConfigurations", "GET") // @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) class UpdateVossInvoiceConfigurations extends UpdateInvoiceConfigurationsRequest implements IConvertible, IGet { UpdateVossInvoiceConfigurations(); UpdateVossInvoiceConfigurations.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); getTypeName() => "UpdateVossInvoiceConfigurations"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'testapi.bokamera.se', types: { 'IntermediaryPlacementEnum': TypeInfo(TypeOf.Enum, enumValues:IntermediaryPlacementEnum.values), 'AccrualCodeFormatEnum': TypeInfo(TypeOf.Enum, enumValues:AccrualCodeFormatEnum.values), 'UnitEnum': TypeInfo(TypeOf.Enum, enumValues:UnitEnum.values), 'TimeLengthRequestDto': TypeInfo(TypeOf.Class, create:() => TimeLengthRequestDto()), 'UpdateInvoiceConfigurationsRequest': TypeInfo(TypeOf.Class, create:() => UpdateInvoiceConfigurationsRequest()), 'UpdateVossInvoiceConfigurations': TypeInfo(TypeOf.Class, create:() => UpdateVossInvoiceConfigurations()), });