/* Options: Date: 2026-08-27 08:07:47 Version: 10.08 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetCustomerKpi.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class GetCustomerKpiResponse implements IConvertible { /** * Booster Customer ID */ // @ApiMember(Description="Booster Customer ID", IsRequired=true) int boosterCustomerId = 0; /** * Total Transaction */ // @ApiMember(Description="Total Transaction", IsRequired=true) int totalTransaction = 0; /** * Total Sales */ // @ApiMember(Description="Total Sales", IsRequired=true) int totalSales = 0; /** * Total Return */ // @ApiMember(Description="Total Return", IsRequired=true) int totalReturn = 0; /** * Total Items */ // @ApiMember(Description="Total Items", IsRequired=true) int totalItems = 0; /** * Average Basket Amount */ // @ApiMember(Description="Average Basket Amount", IsRequired=true) double averageBasketAmount = 0; /** * Total Spending Amount */ // @ApiMember(Description="Total Spending Amount", IsRequired=true) double totalSpendingAmount = 0; /** * Currency code e.g. 'EUR', 'CHF' */ // @ApiMember(Description="Currency code e.g. 'EUR', 'CHF'", IsRequired=true) String currencyCode = ""; GetCustomerKpiResponse({this.boosterCustomerId=0,this.totalTransaction=0,this.totalSales=0,this.totalReturn=0,this.totalItems=0,this.averageBasketAmount=0,this.totalSpendingAmount=0,this.currencyCode=""}); GetCustomerKpiResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { boosterCustomerId = json['boosterCustomerId'] ?? 0; totalTransaction = json['totalTransaction'] ?? 0; totalSales = json['totalSales'] ?? 0; totalReturn = json['totalReturn'] ?? 0; totalItems = json['totalItems'] ?? 0; averageBasketAmount = JsonConverters.toDouble(json['averageBasketAmount']) ?? 0; totalSpendingAmount = JsonConverters.toDouble(json['totalSpendingAmount']) ?? 0; currencyCode = json['currencyCode'] ?? ""; return this; } Map toJson() => { 'boosterCustomerId': boosterCustomerId, 'totalTransaction': totalTransaction, 'totalSales': totalSales, 'totalReturn': totalReturn, 'totalItems': totalItems, 'averageBasketAmount': averageBasketAmount, 'totalSpendingAmount': totalSpendingAmount, 'currencyCode': currencyCode }; getTypeName() => "GetCustomerKpiResponse"; TypeContext? context = _ctx; } // @Route("/customer/{boosterCustomerId}/kpi", "GET") class GetCustomerKpi implements IReturn, IConvertible, IGet { /** * Booster Customer ID */ // @ApiMember(Description="Booster Customer ID", IsRequired=true) int boosterCustomerId = 0; /** * Transaction Date From e.g. '2022-01-01' */ // @ApiMember(Description="Transaction Date From e.g. '2022-01-01'") DateTime? transactionDateFrom; /** * Transaction Date To e.g. '2023-11-01' */ // @ApiMember(Description="Transaction Date To e.g. '2023-11-01'") DateTime? transactionDateTo; GetCustomerKpi({this.boosterCustomerId=0,this.transactionDateFrom,this.transactionDateTo}); GetCustomerKpi.fromJson(Map json) { fromMap(json); } fromMap(Map json) { boosterCustomerId = json['boosterCustomerId'] ?? 0; transactionDateFrom = JsonConverters.fromJson(json['transactionDateFrom'],'DateTime',context!); transactionDateTo = JsonConverters.fromJson(json['transactionDateTo'],'DateTime',context!); return this; } Map toJson() => { 'boosterCustomerId': boosterCustomerId, 'transactionDateFrom': JsonConverters.toJson(transactionDateFrom,'DateTime',context!), 'transactionDateTo': JsonConverters.toJson(transactionDateTo,'DateTime',context!) }; createResponse() => GetCustomerKpiResponse(); getResponseTypeName() => "GetCustomerKpiResponse"; getTypeName() => "GetCustomerKpi"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: { 'GetCustomerKpiResponse': TypeInfo(TypeOf.Class, create:() => GetCustomerKpiResponse()), 'GetCustomerKpi': TypeInfo(TypeOf.Class, create:() => GetCustomerKpi()), });