@passly-nl/data 1.0.0-beta.2 → 1.0.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1931 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +14 -13
- package/src/adapter/AddressAdapter.ts +10 -10
- package/src/adapter/AuthAdapter.ts +24 -24
- package/src/adapter/BuyerAdapter.ts +12 -12
- package/src/adapter/CommonAdapter.ts +4 -4
- package/src/adapter/DateTimeAdapter.ts +7 -1
- package/src/adapter/EventAdapter.ts +131 -131
- package/src/adapter/FileSystemAdapter.ts +5 -5
- package/src/adapter/FinanceAdapter.ts +22 -22
- package/src/adapter/FluxAdapter.ts +9 -9
- package/src/adapter/MerchantAdapter.ts +44 -44
- package/src/adapter/MerchantDashboardAdapter.ts +16 -16
- package/src/adapter/OrderAdapter.ts +33 -33
- package/src/adapter/PaymentAdapter.ts +26 -26
- package/src/adapter/ProductAdapter.ts +14 -14
- package/src/adapter/PublicPayAdapter.ts +5 -5
- package/src/adapter/PublicShopAdapter.ts +79 -79
- package/src/adapter/ReservationAdapter.ts +15 -15
- package/src/adapter/StatisticsAdapter.ts +13 -0
- package/src/adapter/StatisticsBuyersAdapter.ts +28 -0
- package/src/adapter/StatisticsEventsAdapter.ts +16 -0
- package/src/adapter/StatisticsOverviewAdapter.ts +85 -0
- package/src/adapter/StatisticsSalesAdapter.ts +33 -0
- package/src/adapter/TicketAdapter.ts +14 -14
- package/src/adapter/index.ts +5 -0
- package/src/dto/index.ts +1 -0
- package/src/dto/statistics/StatisticsBuyersOverviewDto.ts +69 -0
- package/src/dto/statistics/StatisticsBuyersRankedDto.ts +69 -0
- package/src/dto/statistics/StatisticsEventsOverviewDto.ts +59 -0
- package/src/dto/statistics/StatisticsOverviewBestRevenueMonthDto.ts +50 -0
- package/src/dto/statistics/StatisticsOverviewEventPerformanceDto.ts +29 -0
- package/src/dto/statistics/StatisticsOverviewEventPerformanceEventDto.ts +141 -0
- package/src/dto/statistics/StatisticsOverviewEventPerformanceSummaryDto.ts +59 -0
- package/src/dto/statistics/StatisticsOverviewKPIsDto.ts +70 -0
- package/src/dto/statistics/StatisticsOverviewKPIsTotalEventsHostedDto.ts +48 -0
- package/src/dto/statistics/StatisticsOverviewKPIsTotalRevenueDto.ts +30 -0
- package/src/dto/statistics/StatisticsOverviewKPIsTotalTicketsSoldDto.ts +29 -0
- package/src/dto/statistics/StatisticsSalesLifetimeTotalsDto.ts +59 -0
- package/src/dto/statistics/StatisticsSalesPurchaseBehaviorDto.ts +49 -0
- package/src/dto/statistics/StatisticsSalesTransactionSuccessRateDto.ts +39 -0
- package/src/dto/statistics/StatisticsTrendDto.ts +38 -0
- package/src/dto/statistics/index.ts +15 -0
- package/src/service/AuthService.ts +3 -3
- package/src/service/InvitationService.ts +3 -3
- package/src/service/MeService.ts +8 -8
- package/src/service/MerchantBuyerService.ts +3 -3
- package/src/service/MerchantBuyersService.ts +1 -1
- package/src/service/MerchantDashboardService.ts +2 -2
- package/src/service/MerchantEventProductService.ts +3 -3
- package/src/service/MerchantEventProductsService.ts +3 -3
- package/src/service/MerchantEventService.ts +9 -9
- package/src/service/MerchantEventShopService.ts +5 -5
- package/src/service/MerchantEventShopsService.ts +3 -3
- package/src/service/MerchantEventStatisticsService.ts +6 -6
- package/src/service/MerchantEventStockPoolsService.ts +4 -4
- package/src/service/MerchantEventTicketTemplateService.ts +5 -5
- package/src/service/MerchantEventTicketTemplatesService.ts +3 -3
- package/src/service/MerchantEventsService.ts +2 -2
- package/src/service/MerchantFinanceInvoiceService.ts +1 -1
- package/src/service/MerchantFinanceInvoicesService.ts +1 -1
- package/src/service/MerchantFinanceService.ts +3 -3
- package/src/service/MerchantOrderService.ts +2 -2
- package/src/service/MerchantOrdersService.ts +1 -1
- package/src/service/MerchantService.ts +8 -8
- package/src/service/MerchantStatisticsBuyersService.ts +87 -0
- package/src/service/MerchantStatisticsEventsService.ts +15 -0
- package/src/service/MerchantStatisticsOverviewService.ts +56 -0
- package/src/service/MerchantStatisticsSalesService.ts +67 -0
- package/src/service/MerchantStatisticsService.ts +2 -2
- package/src/service/MerchantTicketService.ts +1 -1
- package/src/service/MerchantTicketsService.ts +1 -1
- package/src/service/MerchantUsersService.ts +2 -2
- package/src/service/MerchantsService.ts +1 -1
- package/src/service/PublicOrderService.ts +3 -3
- package/src/service/PublicShopService.ts +3 -3
- package/src/service/ReservationService.ts +1 -1
- package/src/service/ServicesService.ts +1 -1
- package/src/service/UiSelectOptionsService.ts +13 -3
- package/src/service/index.ts +4 -0
- package/src/types/event.ts +5 -0
- package/dist/adapter/AddressAdapter.d.ts +0 -3
- package/dist/adapter/AuthAdapter.d.ts +0 -6
- package/dist/adapter/BuyerAdapter.d.ts +0 -4
- package/dist/adapter/CommonAdapter.d.ts +0 -4
- package/dist/adapter/DateTimeAdapter.d.ts +0 -4
- package/dist/adapter/EventAdapter.d.ts +0 -22
- package/dist/adapter/FileSystemAdapter.d.ts +0 -4
- package/dist/adapter/FinanceAdapter.d.ts +0 -6
- package/dist/adapter/FluxAdapter.d.ts +0 -6
- package/dist/adapter/MerchantAdapter.d.ts +0 -8
- package/dist/adapter/MerchantDashboardAdapter.d.ts +0 -5
- package/dist/adapter/OrderAdapter.d.ts +0 -7
- package/dist/adapter/PaymentAdapter.d.ts +0 -7
- package/dist/adapter/ProductAdapter.d.ts +0 -4
- package/dist/adapter/PublicPayAdapter.d.ts +0 -4
- package/dist/adapter/PublicShopAdapter.d.ts +0 -13
- package/dist/adapter/ReservationAdapter.d.ts +0 -6
- package/dist/adapter/TicketAdapter.d.ts +0 -4
- package/dist/adapter/index.d.ts +0 -18
- package/dist/dto/address/AddressDto.d.ts +0 -20
- package/dist/dto/address/index.d.ts +0 -1
- package/dist/dto/auth/TotpStateDto.d.ts +0 -10
- package/dist/dto/auth/UserDto.d.ts +0 -23
- package/dist/dto/auth/UserTokenDto.d.ts +0 -23
- package/dist/dto/auth/index.d.ts +0 -3
- package/dist/dto/common/StatusResponseDto.d.ts +0 -8
- package/dist/dto/common/index.d.ts +0 -1
- package/dist/dto/event/EventAvailabilityDto.d.ts +0 -14
- package/dist/dto/event/EventCountersDto.d.ts +0 -10
- package/dist/dto/event/EventDto.d.ts +0 -29
- package/dist/dto/event/EventStatisticsAttendanceDto.d.ts +0 -10
- package/dist/dto/event/EventStatisticsBuyerTotalsDto.d.ts +0 -14
- package/dist/dto/event/EventStatisticsFinancialDto.d.ts +0 -9
- package/dist/dto/event/EventStatisticsOrderTotalsDto.d.ts +0 -12
- package/dist/dto/event/EventStatisticsOrdersDto.d.ts +0 -10
- package/dist/dto/event/EventStatisticsScanTotalsDto.d.ts +0 -10
- package/dist/dto/event/EventStatisticsScansDto.d.ts +0 -12
- package/dist/dto/event/EventStatisticsScansPerAppTeamDto.d.ts +0 -10
- package/dist/dto/event/EventStatisticsSwapTotalsDto.d.ts +0 -10
- package/dist/dto/event/ShopDesignDto.d.ts +0 -10
- package/dist/dto/event/ShopDto.d.ts +0 -35
- package/dist/dto/event/ShopElementButtonDto.d.ts +0 -12
- package/dist/dto/event/ShopElementDividerDto.d.ts +0 -10
- package/dist/dto/event/ShopElementDto.d.ts +0 -9
- package/dist/dto/event/ShopElementHeadingDto.d.ts +0 -10
- package/dist/dto/event/ShopElementNoticeDto.d.ts +0 -15
- package/dist/dto/event/ShopElementProductDto.d.ts +0 -7
- package/dist/dto/event/ShopElementTextDto.d.ts +0 -7
- package/dist/dto/event/StockOverviewDto.d.ts +0 -13
- package/dist/dto/event/StockOverviewItemDto.d.ts +0 -13
- package/dist/dto/event/StockPoolDto.d.ts +0 -25
- package/dist/dto/event/TicketTemplateDto.d.ts +0 -18
- package/dist/dto/event/index.d.ts +0 -25
- package/dist/dto/fileSystem/PictureDto.d.ts +0 -10
- package/dist/dto/fileSystem/index.d.ts +0 -1
- package/dist/dto/finance/FinanceOverviewDto.d.ts +0 -13
- package/dist/dto/finance/InvoiceDto.d.ts +0 -25
- package/dist/dto/finance/InvoiceLineDto.d.ts +0 -17
- package/dist/dto/finance/index.d.ts +0 -3
- package/dist/dto/index.d.ts +0 -14
- package/dist/dto/merchant/ContractDto.d.ts +0 -16
- package/dist/dto/merchant/InvitationDto.d.ts +0 -25
- package/dist/dto/merchant/MerchantDashboardKeyMetricsDto.d.ts +0 -22
- package/dist/dto/merchant/MerchantDashboardUpcomingEventDto.d.ts +0 -25
- package/dist/dto/merchant/MerchantDto.d.ts +0 -32
- package/dist/dto/merchant/MerchantUserDto.d.ts +0 -14
- package/dist/dto/merchant/VatNumberDto.d.ts +0 -19
- package/dist/dto/merchant/index.d.ts +0 -7
- package/dist/dto/order/BuyerDto.d.ts +0 -27
- package/dist/dto/order/OrderDto.d.ts +0 -37
- package/dist/dto/order/OrderLineDto.d.ts +0 -20
- package/dist/dto/order/OrderPaymentProviderDto.d.ts +0 -8
- package/dist/dto/order/OrderProductDto.d.ts +0 -12
- package/dist/dto/order/index.d.ts +0 -5
- package/dist/dto/payment/CostDto.d.ts +0 -16
- package/dist/dto/payment/PaymentMethodDto.d.ts +0 -10
- package/dist/dto/payment/PaymentProviderDto.d.ts +0 -12
- package/dist/dto/payment/TransactionDto.d.ts +0 -24
- package/dist/dto/payment/index.d.ts +0 -4
- package/dist/dto/product/ProductDto.d.ts +0 -30
- package/dist/dto/product/index.d.ts +0 -1
- package/dist/dto/publicPay/PublicPaymentMethodDto.d.ts +0 -10
- package/dist/dto/publicPay/index.d.ts +0 -1
- package/dist/dto/publicShop/PublicShopCartProductDto.d.ts +0 -10
- package/dist/dto/publicShop/PublicShopDesignDto.d.ts +0 -10
- package/dist/dto/publicShop/PublicShopDto.d.ts +0 -31
- package/dist/dto/publicShop/PublicShopElementButtonDto.d.ts +0 -12
- package/dist/dto/publicShop/PublicShopElementDividerDto.d.ts +0 -10
- package/dist/dto/publicShop/PublicShopElementDto.d.ts +0 -9
- package/dist/dto/publicShop/PublicShopElementHeadingDto.d.ts +0 -10
- package/dist/dto/publicShop/PublicShopElementNoticeDto.d.ts +0 -15
- package/dist/dto/publicShop/PublicShopElementProductDto.d.ts +0 -7
- package/dist/dto/publicShop/PublicShopElementTextDto.d.ts +0 -7
- package/dist/dto/publicShop/PublicShopEventDto.d.ts +0 -16
- package/dist/dto/publicShop/PublicShopMerchantDto.d.ts +0 -8
- package/dist/dto/publicShop/PublicShopProductDto.d.ts +0 -28
- package/dist/dto/publicShop/PublicShopReservationDto.d.ts +0 -14
- package/dist/dto/publicShop/PublicShopReservationProductDetailsDto.d.ts +0 -13
- package/dist/dto/publicShop/PublicShopReservationProductDto.d.ts +0 -9
- package/dist/dto/publicShop/PublicShopTimeSlotDto.d.ts +0 -15
- package/dist/dto/publicShop/index.d.ts +0 -17
- package/dist/dto/reservation/ReservationDto.d.ts +0 -16
- package/dist/dto/reservation/ReservationItemDto.d.ts +0 -9
- package/dist/dto/reservation/ReservationProductDto.d.ts +0 -13
- package/dist/dto/reservation/index.d.ts +0 -3
- package/dist/dto/ticket/TicketDto.d.ts +0 -31
- package/dist/dto/ticket/index.d.ts +0 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.js +0 -4
- package/dist/index.js.map +0 -136
- package/dist/service/AuthService.d.ts +0 -11
- package/dist/service/InvitationService.d.ts +0 -7
- package/dist/service/MeService.d.ts +0 -12
- package/dist/service/MerchantBuyerService.d.ts +0 -7
- package/dist/service/MerchantBuyersService.d.ts +0 -5
- package/dist/service/MerchantDashboardService.d.ts +0 -6
- package/dist/service/MerchantEventProductService.d.ts +0 -10
- package/dist/service/MerchantEventProductsService.d.ts +0 -8
- package/dist/service/MerchantEventService.d.ts +0 -13
- package/dist/service/MerchantEventShopService.d.ts +0 -9
- package/dist/service/MerchantEventShopsService.d.ts +0 -8
- package/dist/service/MerchantEventStatisticsService.d.ts +0 -10
- package/dist/service/MerchantEventStockPoolsService.d.ts +0 -9
- package/dist/service/MerchantEventTicketTemplateService.d.ts +0 -11
- package/dist/service/MerchantEventTicketTemplatesService.d.ts +0 -9
- package/dist/service/MerchantEventsService.d.ts +0 -7
- package/dist/service/MerchantFinanceInvoiceService.d.ts +0 -6
- package/dist/service/MerchantFinanceInvoicesService.d.ts +0 -5
- package/dist/service/MerchantFinanceService.d.ts +0 -8
- package/dist/service/MerchantOrderService.d.ts +0 -9
- package/dist/service/MerchantOrdersService.d.ts +0 -5
- package/dist/service/MerchantService.d.ts +0 -14
- package/dist/service/MerchantStatisticsService.d.ts +0 -5
- package/dist/service/MerchantTicketService.d.ts +0 -7
- package/dist/service/MerchantTicketsService.d.ts +0 -5
- package/dist/service/MerchantUsersService.d.ts +0 -7
- package/dist/service/MerchantsService.d.ts +0 -5
- package/dist/service/PublicOrderService.d.ts +0 -7
- package/dist/service/PublicShopService.d.ts +0 -9
- package/dist/service/ReservationService.d.ts +0 -6
- package/dist/service/ServicesService.d.ts +0 -9
- package/dist/service/UiSelectOptionsService.d.ts +0 -6
- package/dist/service/index.d.ts +0 -32
- package/dist/types/auth.d.ts +0 -47
- package/dist/types/event.d.ts +0 -28
- package/dist/types/finance.d.ts +0 -14
- package/dist/types/general.d.ts +0 -19
- package/dist/types/index.d.ts +0 -9
- package/dist/types/order.d.ts +0 -7
- package/dist/types/payment.d.ts +0 -11
- package/dist/types/product.d.ts +0 -2
- package/dist/types/publicShop.d.ts +0 -7
- package/dist/types/ticket.d.ts +0 -12
- package/dist/util/emptyNull.d.ts +0 -1
- package/dist/util/index.d.ts +0 -4
- package/dist/util/jsonBlob.d.ts +0 -1
- package/dist/util/optional.d.ts +0 -4
- package/dist/util/optionalArray.d.ts +0 -1
|
@@ -1,149 +1,149 @@
|
|
|
1
|
-
import { adapter } from '@basmilius/http-client';
|
|
1
|
+
import { adapter, ForeignData } from '@basmilius/http-client';
|
|
2
2
|
import { AddressAdapter, DateTimeAdapter, FileSystemAdapter, PaymentAdapter } from '#data/adapter';
|
|
3
3
|
import { PublicShopDesignDto, PublicShopDto, PublicShopElementButtonDto, PublicShopElementDividerDto, PublicShopElementDto, PublicShopElementHeadingDto, PublicShopElementNoticeDto, PublicShopElementProductDto, PublicShopElementTextDto, PublicShopEventDto, PublicShopMerchantDto, PublicShopProductDto, PublicShopReservationDto, PublicShopReservationProductDetailsDto, PublicShopReservationProductDto, PublicShopTimeSlotDto } from '#data/dto';
|
|
4
4
|
import { optional, optionalArray } from '#data/util';
|
|
5
5
|
|
|
6
6
|
@adapter
|
|
7
7
|
export class PublicShopAdapter {
|
|
8
|
-
static
|
|
8
|
+
static parsePublicShop(data: ForeignData): PublicShopDto {
|
|
9
9
|
return new PublicShopDto(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
DateTimeAdapter.
|
|
13
|
-
DateTimeAdapter.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
optional(
|
|
19
|
-
optionalArray(
|
|
20
|
-
PublicShopAdapter.
|
|
21
|
-
PublicShopAdapter.
|
|
10
|
+
data.id,
|
|
11
|
+
data.name,
|
|
12
|
+
DateTimeAdapter.parseDateTime(data.starts_on),
|
|
13
|
+
DateTimeAdapter.parseDateTime(data.ends_on),
|
|
14
|
+
data.field_address,
|
|
15
|
+
data.field_birthdate,
|
|
16
|
+
data.field_gender,
|
|
17
|
+
data.field_phone_number,
|
|
18
|
+
optional(data.design, PublicShopAdapter.parsePublicShopDesign),
|
|
19
|
+
optionalArray(data.elements, PublicShopAdapter.parsePublicShopElement),
|
|
20
|
+
PublicShopAdapter.parsePublicShopEvent(data.event),
|
|
21
|
+
PublicShopAdapter.parsePublicShopMerchant(data.merchant)
|
|
22
22
|
);
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
static
|
|
25
|
+
static parsePublicShopDesign(data: ForeignData): PublicShopDesignDto {
|
|
26
26
|
return new PublicShopDesignDto(
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
data.background_color,
|
|
28
|
+
data.foreground_color,
|
|
29
|
+
data.primary_color
|
|
30
30
|
);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
static
|
|
34
|
-
switch (
|
|
33
|
+
static parsePublicShopElement(data: ForeignData): PublicShopElementDto {
|
|
34
|
+
switch (data.type) {
|
|
35
35
|
case 'button':
|
|
36
36
|
return new PublicShopElementButtonDto(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
data.id,
|
|
38
|
+
data.icon,
|
|
39
|
+
data.text,
|
|
40
|
+
data.url
|
|
41
41
|
);
|
|
42
42
|
|
|
43
43
|
case 'divider':
|
|
44
44
|
return new PublicShopElementDividerDto(
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
data.id,
|
|
46
|
+
data.icon,
|
|
47
|
+
data.text
|
|
48
48
|
);
|
|
49
49
|
|
|
50
50
|
case 'heading':
|
|
51
51
|
return new PublicShopElementHeadingDto(
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
data.id,
|
|
53
|
+
data.heading_level,
|
|
54
|
+
data.title
|
|
55
55
|
);
|
|
56
56
|
|
|
57
57
|
case 'notice':
|
|
58
58
|
return new PublicShopElementNoticeDto(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
59
|
+
data.id,
|
|
60
|
+
data.icon,
|
|
61
|
+
data.notice_type,
|
|
62
|
+
data.title,
|
|
63
|
+
data.text
|
|
64
64
|
);
|
|
65
65
|
|
|
66
66
|
case 'product':
|
|
67
67
|
return new PublicShopElementProductDto(
|
|
68
|
-
|
|
69
|
-
PublicShopAdapter.
|
|
68
|
+
data.id,
|
|
69
|
+
PublicShopAdapter.parsePublicShopProduct(data.product)
|
|
70
70
|
);
|
|
71
71
|
|
|
72
72
|
case 'text':
|
|
73
73
|
return new PublicShopElementTextDto(
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
data.id,
|
|
75
|
+
data.text
|
|
76
76
|
);
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
throw new Error('Unknown shop element.');
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
static
|
|
82
|
+
static parsePublicShopEvent(data: ForeignData): PublicShopEventDto {
|
|
83
83
|
return new PublicShopEventDto(
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
AddressAdapter.
|
|
88
|
-
optional(
|
|
84
|
+
data.id,
|
|
85
|
+
data.name,
|
|
86
|
+
data.status,
|
|
87
|
+
AddressAdapter.parseAddress(data.address),
|
|
88
|
+
optional(data.header_file, FileSystemAdapter.parsePicture)
|
|
89
89
|
);
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
static
|
|
92
|
+
static parsePublicShopMerchant(data: ForeignData): PublicShopMerchantDto {
|
|
93
93
|
return new PublicShopMerchantDto(
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
data.id,
|
|
95
|
+
data.name
|
|
96
96
|
);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
static
|
|
99
|
+
static parsePublicShopProduct(data: ForeignData): PublicShopProductDto {
|
|
100
100
|
return new PublicShopProductDto(
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
PaymentAdapter.
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
optionalArray(
|
|
110
|
-
optional(
|
|
111
|
-
optionalArray(
|
|
101
|
+
data.id,
|
|
102
|
+
data.type,
|
|
103
|
+
data.name,
|
|
104
|
+
data.description,
|
|
105
|
+
PaymentAdapter.parseCost(data.price),
|
|
106
|
+
data.max_quantity,
|
|
107
|
+
data.is_active,
|
|
108
|
+
data.is_timeslotted,
|
|
109
|
+
optionalArray(data.time_slots, PublicShopAdapter.parsePublicShopTimeSlot)!,
|
|
110
|
+
optional(data.image, FileSystemAdapter.parsePicture),
|
|
111
|
+
optionalArray(data.images, FileSystemAdapter.parsePicture)!
|
|
112
112
|
);
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
static
|
|
115
|
+
static parsePublicShopReservation(data: ForeignData): PublicShopReservationDto {
|
|
116
116
|
return new PublicShopReservationDto(
|
|
117
|
-
|
|
118
|
-
DateTimeAdapter.
|
|
119
|
-
DateTimeAdapter.
|
|
120
|
-
|
|
117
|
+
data.id,
|
|
118
|
+
DateTimeAdapter.parseDateTime(data.created_on),
|
|
119
|
+
DateTimeAdapter.parseDateTime(data.expires_on),
|
|
120
|
+
data.products.map(PublicShopAdapter.parsePublicShopReservationProduct)
|
|
121
121
|
);
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
static
|
|
124
|
+
static parsePublicShopReservationProduct(data: ForeignData): PublicShopReservationProductDto {
|
|
125
125
|
return new PublicShopReservationProductDto(
|
|
126
|
-
PublicShopAdapter.
|
|
127
|
-
|
|
126
|
+
PublicShopAdapter.parsePublicShopReservationProductDetails(data.product),
|
|
127
|
+
data.quantity
|
|
128
128
|
);
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
-
static
|
|
131
|
+
static parsePublicShopReservationProductDetails(data: ForeignData): PublicShopReservationProductDetailsDto {
|
|
132
132
|
return new PublicShopReservationProductDetailsDto(
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
optional(
|
|
133
|
+
data.id,
|
|
134
|
+
data.name,
|
|
135
|
+
data.description,
|
|
136
|
+
optional(data.image, FileSystemAdapter.parsePicture)
|
|
137
137
|
);
|
|
138
138
|
}
|
|
139
139
|
|
|
140
|
-
static
|
|
140
|
+
static parsePublicShopTimeSlot(data: ForeignData): PublicShopTimeSlotDto {
|
|
141
141
|
return new PublicShopTimeSlotDto(
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
DateTimeAdapter.
|
|
145
|
-
DateTimeAdapter.
|
|
146
|
-
|
|
142
|
+
data.id,
|
|
143
|
+
data.label,
|
|
144
|
+
DateTimeAdapter.parseDateTime(data.from_time),
|
|
145
|
+
DateTimeAdapter.parseDateTime(data.to_time),
|
|
146
|
+
data.max_quantity
|
|
147
147
|
);
|
|
148
148
|
}
|
|
149
149
|
}
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { adapter } from '@basmilius/http-client';
|
|
1
|
+
import { adapter, ForeignData } from '@basmilius/http-client';
|
|
2
2
|
import { DateTimeAdapter, FileSystemAdapter } from '#data/adapter';
|
|
3
3
|
import { ReservationDto, ReservationItemDto, ReservationProductDto } from '#data/dto';
|
|
4
4
|
import { optional, optionalArray } from '#data/util';
|
|
5
5
|
|
|
6
6
|
@adapter
|
|
7
7
|
export class ReservationAdapter {
|
|
8
|
-
static
|
|
8
|
+
static parseReservation(data: ForeignData): ReservationDto {
|
|
9
9
|
return new ReservationDto(
|
|
10
|
-
|
|
11
|
-
DateTimeAdapter.
|
|
12
|
-
DateTimeAdapter.
|
|
13
|
-
|
|
14
|
-
optionalArray(
|
|
10
|
+
data.id,
|
|
11
|
+
DateTimeAdapter.parseDateTime(data.created_on),
|
|
12
|
+
DateTimeAdapter.parseDateTime(data.expires_on),
|
|
13
|
+
data.is_expired,
|
|
14
|
+
optionalArray(data.products, ReservationAdapter.parseReservationItem)!
|
|
15
15
|
);
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
static
|
|
18
|
+
static parseReservationItem(data: ForeignData): ReservationItemDto {
|
|
19
19
|
return new ReservationItemDto(
|
|
20
|
-
|
|
21
|
-
ReservationAdapter.
|
|
20
|
+
data.quantity,
|
|
21
|
+
ReservationAdapter.parseReservationProduct(data.product)
|
|
22
22
|
);
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
static
|
|
25
|
+
static parseReservationProduct(data: ForeignData): ReservationProductDto {
|
|
26
26
|
return new ReservationProductDto(
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
optional(
|
|
27
|
+
data.id,
|
|
28
|
+
data.name,
|
|
29
|
+
data.description,
|
|
30
|
+
optional(data.image, FileSystemAdapter.parsePicture)
|
|
31
31
|
);
|
|
32
32
|
}
|
|
33
33
|
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { adapter, ForeignData } from '@basmilius/http-client';
|
|
2
|
+
import { StatisticsTrendDto } from '#data/dto';
|
|
3
|
+
|
|
4
|
+
@adapter
|
|
5
|
+
export class StatisticsAdapter {
|
|
6
|
+
static parseTrend<TValue>(data: ForeignData, adapter: (value: ForeignData) => TValue): StatisticsTrendDto<TValue> {
|
|
7
|
+
return new StatisticsTrendDto(
|
|
8
|
+
adapter(data.current),
|
|
9
|
+
adapter(data.previous),
|
|
10
|
+
data.growth_rate
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { adapter, ForeignData } from '@basmilius/http-client';
|
|
2
|
+
import { BuyerAdapter, PaymentAdapter, StatisticsAdapter } from '#data/adapter';
|
|
3
|
+
import { StatisticsBuyersOverviewDto, StatisticsBuyersRankedDto } from '#data/dto';
|
|
4
|
+
|
|
5
|
+
@adapter
|
|
6
|
+
export class StatisticsBuyersAdapter {
|
|
7
|
+
static parseOverview(data: ForeignData): StatisticsBuyersOverviewDto {
|
|
8
|
+
return new StatisticsBuyersOverviewDto(
|
|
9
|
+
StatisticsAdapter.parseTrend(data.buyers, Number),
|
|
10
|
+
StatisticsAdapter.parseTrend(data.new_buyers, Number),
|
|
11
|
+
StatisticsAdapter.parseTrend(data.retention_rate, Number),
|
|
12
|
+
data.total_buyers,
|
|
13
|
+
PaymentAdapter.parseCost(data.lifetime_value_per_buyer),
|
|
14
|
+
data.average_tickets_per_buyer
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
static parseRanked(data: ForeignData): StatisticsBuyersRankedDto {
|
|
19
|
+
return new StatisticsBuyersRankedDto(
|
|
20
|
+
data.ranking,
|
|
21
|
+
BuyerAdapter.parseBuyer(data.buyer),
|
|
22
|
+
data.order_count,
|
|
23
|
+
PaymentAdapter.parseCost(data.total_spend),
|
|
24
|
+
data.events_attended,
|
|
25
|
+
PaymentAdapter.parseCost(data.average_order_value)
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { adapter, type ForeignData } from '@basmilius/http-client';
|
|
2
|
+
import { PaymentAdapter } from '#data/adapter';
|
|
3
|
+
import { StatisticsEventsOverviewDto } from '#data/dto';
|
|
4
|
+
|
|
5
|
+
@adapter
|
|
6
|
+
export class StatisticsEventsAdapter {
|
|
7
|
+
static parseOverview(data: ForeignData): StatisticsEventsOverviewDto {
|
|
8
|
+
return new StatisticsEventsOverviewDto(
|
|
9
|
+
data.total_events,
|
|
10
|
+
data.active_events,
|
|
11
|
+
PaymentAdapter.parseCost(data.average_revenue_per_event),
|
|
12
|
+
data.average_tickets_per_event,
|
|
13
|
+
data.average_sell_through_rate
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { adapter, ForeignData } from '@basmilius/http-client';
|
|
2
|
+
import { DateTimeAdapter, FileSystemAdapter, PaymentAdapter, StatisticsAdapter } from '#data/adapter';
|
|
3
|
+
import { StatisticsOverviewBestRevenueMonthDto, StatisticsOverviewEventPerformanceDto, StatisticsOverviewEventPerformanceEventDto, StatisticsOverviewEventPerformanceSummaryDto, StatisticsOverviewKPIsDto, StatisticsOverviewKPIsTotalEventsHostedDto, StatisticsOverviewKPIsTotalRevenueDto, StatisticsOverviewKPIsTotalTicketsSoldDto } from '#data/dto';
|
|
4
|
+
import { optional } from '#data/util';
|
|
5
|
+
|
|
6
|
+
@adapter
|
|
7
|
+
export class StatisticsOverviewAdapter {
|
|
8
|
+
static parseBestRevenueMonth(data: ForeignData): StatisticsOverviewBestRevenueMonthDto {
|
|
9
|
+
return new StatisticsOverviewBestRevenueMonthDto(
|
|
10
|
+
DateTimeAdapter.parseDateTimeFromMonth(data.period),
|
|
11
|
+
PaymentAdapter.parseCost(data.revenue),
|
|
12
|
+
data.orders,
|
|
13
|
+
data.tickets
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
static parseEventPerformance(data: ForeignData): StatisticsOverviewEventPerformanceDto {
|
|
18
|
+
return new StatisticsOverviewEventPerformanceDto(
|
|
19
|
+
data.events.map(StatisticsOverviewAdapter.parseEventPerformanceEvent),
|
|
20
|
+
StatisticsOverviewAdapter.parseEventPerformanceSummary(data.summary)
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
static parseEventPerformanceEvent(data: ForeignData): StatisticsOverviewEventPerformanceEventDto {
|
|
25
|
+
return new StatisticsOverviewEventPerformanceEventDto(
|
|
26
|
+
data.id,
|
|
27
|
+
data.name,
|
|
28
|
+
DateTimeAdapter.parseDateTime(data.starts_on),
|
|
29
|
+
DateTimeAdapter.parseDateTime(data.ends_on),
|
|
30
|
+
optional(data.header_file, FileSystemAdapter.parsePicture),
|
|
31
|
+
data.status,
|
|
32
|
+
PaymentAdapter.parseCost(data.revenue),
|
|
33
|
+
data.tickets_sold,
|
|
34
|
+
data.tickets_total,
|
|
35
|
+
data.sell_through_rate,
|
|
36
|
+
data.attendance_rate,
|
|
37
|
+
data.attended_count,
|
|
38
|
+
data.orders_count
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
static parseEventPerformanceSummary(data: ForeignData): StatisticsOverviewEventPerformanceSummaryDto {
|
|
43
|
+
return new StatisticsOverviewEventPerformanceSummaryDto(
|
|
44
|
+
PaymentAdapter.parseCost(data.total_revenue),
|
|
45
|
+
data.total_tickets_sold,
|
|
46
|
+
data.total_tickets_capacity,
|
|
47
|
+
data.average_sell_through_rate,
|
|
48
|
+
data.average_attendance_rate
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
static parseKPIs(data: ForeignData): StatisticsOverviewKPIsDto {
|
|
53
|
+
return new StatisticsOverviewKPIsDto(
|
|
54
|
+
StatisticsOverviewAdapter.parseKPIsTotalRevenue(data.total_revenue),
|
|
55
|
+
StatisticsOverviewAdapter.parseKPIsTotalTicketsSold(data.total_tickets_sold),
|
|
56
|
+
StatisticsOverviewAdapter.parseKPIsTotalEventsHosted(data.total_events_hosted),
|
|
57
|
+
data.total_customers,
|
|
58
|
+
PaymentAdapter.parseCost(data.average_order_value),
|
|
59
|
+
data.average_attendance_rate
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
static parseKPIsTotalEventsHosted(data: ForeignData): StatisticsOverviewKPIsTotalEventsHostedDto {
|
|
64
|
+
return new StatisticsOverviewKPIsTotalEventsHostedDto(
|
|
65
|
+
data.active,
|
|
66
|
+
data.concluded,
|
|
67
|
+
data.total,
|
|
68
|
+
data.upcoming
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
static parseKPIsTotalRevenue(data: ForeignData): StatisticsOverviewKPIsTotalRevenueDto {
|
|
73
|
+
return new StatisticsOverviewKPIsTotalRevenueDto(
|
|
74
|
+
PaymentAdapter.parseCost(data.lifetime),
|
|
75
|
+
StatisticsAdapter.parseTrend(data.trend, PaymentAdapter.parseCost)
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
static parseKPIsTotalTicketsSold(data: ForeignData): StatisticsOverviewKPIsTotalTicketsSoldDto {
|
|
80
|
+
return new StatisticsOverviewKPIsTotalTicketsSoldDto(
|
|
81
|
+
data.lifetime,
|
|
82
|
+
StatisticsAdapter.parseTrend(data.trend, Number)
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { adapter, ForeignData } from '@basmilius/http-client';
|
|
2
|
+
import { DateTimeAdapter, PaymentAdapter } from '#data/adapter';
|
|
3
|
+
import { StatisticsSalesLifetimeTotalsDto, StatisticsSalesPurchaseBehaviorDto, StatisticsSalesTransactionSuccessRateDto } from '#data/dto';
|
|
4
|
+
|
|
5
|
+
@adapter
|
|
6
|
+
export class StatisticsSalesAdapter {
|
|
7
|
+
static parseLifetimeTotals(data: ForeignData): StatisticsSalesLifetimeTotalsDto {
|
|
8
|
+
return new StatisticsSalesLifetimeTotalsDto(
|
|
9
|
+
PaymentAdapter.parseCost(data.total_revenue),
|
|
10
|
+
PaymentAdapter.parseCost(data.total_platform_cost),
|
|
11
|
+
PaymentAdapter.parseCost(data.net_revenue),
|
|
12
|
+
PaymentAdapter.parseCost(data.average_order_value),
|
|
13
|
+
PaymentAdapter.parseCost(data.average_revenue_per_ticket)
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
static parsePurchaseBehavior(data: ForeignData): StatisticsSalesPurchaseBehaviorDto {
|
|
18
|
+
return new StatisticsSalesPurchaseBehaviorDto(
|
|
19
|
+
data.average_time_to_purchase,
|
|
20
|
+
data.cart_abandonment_rate,
|
|
21
|
+
data.peak_buying_count,
|
|
22
|
+
DateTimeAdapter.parseDateTime(data.peak_buying_time)
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
static parseTransactionSuccessRate(data: ForeignData): StatisticsSalesTransactionSuccessRateDto {
|
|
27
|
+
return new StatisticsSalesTransactionSuccessRateDto(
|
|
28
|
+
data.success_rate,
|
|
29
|
+
data.failed_rate,
|
|
30
|
+
data.reasons
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { adapter } from '@basmilius/http-client';
|
|
1
|
+
import { adapter, ForeignData } from '@basmilius/http-client';
|
|
2
2
|
import { BuyerAdapter, DateTimeAdapter, EventAdapter, OrderAdapter, ProductAdapter } from '#data/adapter';
|
|
3
3
|
import { TicketDto } from '#data/dto';
|
|
4
4
|
import { optional } from '#data/util';
|
|
5
5
|
|
|
6
6
|
@adapter
|
|
7
7
|
export class TicketAdapter {
|
|
8
|
-
static
|
|
8
|
+
static parseTicket(data: ForeignData): TicketDto {
|
|
9
9
|
return new TicketDto(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
optional(
|
|
16
|
-
optional(
|
|
17
|
-
optional(
|
|
18
|
-
optional(
|
|
19
|
-
optional(
|
|
20
|
-
DateTimeAdapter.
|
|
21
|
-
DateTimeAdapter.
|
|
10
|
+
data.id,
|
|
11
|
+
data.sequence,
|
|
12
|
+
data.code,
|
|
13
|
+
data.status,
|
|
14
|
+
data.validity,
|
|
15
|
+
optional(data.buyer, BuyerAdapter.parseBuyer)!,
|
|
16
|
+
optional(data.event, EventAdapter.parseEvent)!,
|
|
17
|
+
optional(data.holder, BuyerAdapter.parseBuyer)!,
|
|
18
|
+
optional(data.order, OrderAdapter.parseOrder)!,
|
|
19
|
+
optional(data.product, ProductAdapter.parseProduct)!,
|
|
20
|
+
DateTimeAdapter.parseDateTime(data.created_on),
|
|
21
|
+
DateTimeAdapter.parseDateTime(data.updated_on)
|
|
22
22
|
);
|
|
23
23
|
}
|
|
24
24
|
}
|
package/src/adapter/index.ts
CHANGED
|
@@ -15,4 +15,9 @@ export * from './ProductAdapter';
|
|
|
15
15
|
export * from './PublicPayAdapter';
|
|
16
16
|
export * from './PublicShopAdapter';
|
|
17
17
|
export * from './ReservationAdapter';
|
|
18
|
+
export * from './StatisticsAdapter';
|
|
19
|
+
export * from './StatisticsBuyersAdapter';
|
|
20
|
+
export * from './StatisticsEventsAdapter';
|
|
21
|
+
export * from './StatisticsOverviewAdapter';
|
|
22
|
+
export * from './StatisticsSalesAdapter';
|
|
18
23
|
export * from './TicketAdapter';
|
package/src/dto/index.ts
CHANGED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { dto } from '@basmilius/http-client';
|
|
2
|
+
import type { CostDto, StatisticsTrendDto } from '#data/dto';
|
|
3
|
+
|
|
4
|
+
@dto
|
|
5
|
+
export class StatisticsBuyersOverviewDto {
|
|
6
|
+
get buyers(): StatisticsTrendDto<number> {
|
|
7
|
+
return this.#buyers;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
set buyers(value: StatisticsTrendDto<number>) {
|
|
11
|
+
this.#buyers = value;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
get newBuyers(): StatisticsTrendDto<number> {
|
|
15
|
+
return this.#newBuyers;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
set newBuyers(value: StatisticsTrendDto<number>) {
|
|
19
|
+
this.#newBuyers = value;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
get retentionRate(): StatisticsTrendDto<number> {
|
|
23
|
+
return this.#retentionRate;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
set retentionRate(value: StatisticsTrendDto<number>) {
|
|
27
|
+
this.#retentionRate = value;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
get totalBuyers(): number {
|
|
31
|
+
return this.#totalBuyers;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
set totalBuyers(value: number) {
|
|
35
|
+
this.#totalBuyers = value;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
get lifetimeValuePerBuyer(): CostDto {
|
|
39
|
+
return this.#lifetimeValuePerBuyer;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
set lifetimeValuePerBuyer(value: CostDto) {
|
|
43
|
+
this.#lifetimeValuePerBuyer = value;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
get averageTicketsPerBuyer(): number {
|
|
47
|
+
return this.#averageTicketsPerBuyer;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
set averageTicketsPerBuyer(value: number) {
|
|
51
|
+
this.#averageTicketsPerBuyer = value;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
#buyers: StatisticsTrendDto<number>;
|
|
55
|
+
#newBuyers: StatisticsTrendDto<number>;
|
|
56
|
+
#retentionRate: StatisticsTrendDto<number>;
|
|
57
|
+
#totalBuyers: number;
|
|
58
|
+
#lifetimeValuePerBuyer: CostDto;
|
|
59
|
+
#averageTicketsPerBuyer: number;
|
|
60
|
+
|
|
61
|
+
constructor(buyers: StatisticsTrendDto<number>, newBuyers: StatisticsTrendDto<number>, retentionRate: StatisticsTrendDto<number>, totalBuyers: number, lifetimeValuePerBuyer: CostDto, averageTicketsPerBuyer: number) {
|
|
62
|
+
this.#buyers = buyers;
|
|
63
|
+
this.#newBuyers = newBuyers;
|
|
64
|
+
this.#retentionRate = retentionRate;
|
|
65
|
+
this.#totalBuyers = totalBuyers;
|
|
66
|
+
this.#lifetimeValuePerBuyer = lifetimeValuePerBuyer;
|
|
67
|
+
this.#averageTicketsPerBuyer = averageTicketsPerBuyer;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { dto } from '@basmilius/http-client';
|
|
2
|
+
import { type BuyerDto, type CostDto } from '#data/dto';
|
|
3
|
+
|
|
4
|
+
@dto
|
|
5
|
+
export class StatisticsBuyersRankedDto {
|
|
6
|
+
get ranking(): number {
|
|
7
|
+
return this.#ranking;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
set ranking(value: number) {
|
|
11
|
+
this.#ranking = value;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
get buyer(): BuyerDto {
|
|
15
|
+
return this.#buyer;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
set buyer(value: BuyerDto) {
|
|
19
|
+
this.#buyer = value;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
get orderCount(): number {
|
|
23
|
+
return this.#orderCount;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
set orderCount(value: number) {
|
|
27
|
+
this.#orderCount = value;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
get totalSpend(): CostDto {
|
|
31
|
+
return this.#totalSpend;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
set totalSpend(value: CostDto) {
|
|
35
|
+
this.#totalSpend = value;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
get eventsAttended(): number {
|
|
39
|
+
return this.#eventsAttended;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
set eventsAttended(value: number) {
|
|
43
|
+
this.#eventsAttended = value;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
get averageOrderValue(): CostDto {
|
|
47
|
+
return this.#averageOrderValue;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
set averageOrderValue(value: CostDto) {
|
|
51
|
+
this.#averageOrderValue = value;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
#ranking: number;
|
|
55
|
+
#buyer: BuyerDto;
|
|
56
|
+
#orderCount: number;
|
|
57
|
+
#totalSpend: CostDto;
|
|
58
|
+
#eventsAttended: number;
|
|
59
|
+
#averageOrderValue: CostDto;
|
|
60
|
+
|
|
61
|
+
constructor(ranking: number, buyer: BuyerDto, orderCount: number, totalSpend: CostDto, eventsAttended: number, averageOrderValue: CostDto) {
|
|
62
|
+
this.#ranking = ranking;
|
|
63
|
+
this.#buyer = buyer;
|
|
64
|
+
this.#orderCount = orderCount;
|
|
65
|
+
this.#totalSpend = totalSpend;
|
|
66
|
+
this.#eventsAttended = eventsAttended;
|
|
67
|
+
this.#averageOrderValue = averageOrderValue;
|
|
68
|
+
}
|
|
69
|
+
}
|