| Requires the role: | superadmin |
| GET | /voss/invoiceConfigurations | init voss invoice |
|---|
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<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
unit = JsonConverters.fromJson(json['Unit'],'UnitEnum',context!);
value = json['Value'];
return this;
}
Map<String, dynamic> 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<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> 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<String, dynamic> 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;
}
// @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)
class UpdateVossInvoiceConfigurations extends UpdateInvoiceConfigurationsRequest implements IConvertible
{
UpdateVossInvoiceConfigurations();
UpdateVossInvoiceConfigurations.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "UpdateVossInvoiceConfigurations";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'testapi.bokamera.se', types: <String, TypeInfo> {
'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()),
});
Dart UpdateVossInvoiceConfigurations DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /voss/invoiceConfigurations HTTP/1.1 Host: testapi.bokamera.se Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <z:anyType xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/" />