@pisell/pisellos 0.0.569 → 0.10.2
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/core/index.js +10 -6
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -3
- package/dist/model/strategy/adapter/promotion/index.js +9 -0
- package/dist/model/strategy/adapter/walletPass/evaluator.js +7 -5
- package/dist/model/strategy/adapter/walletPass/example.js +26 -3
- package/dist/model/strategy/adapter/walletPass/index.js +5 -5
- package/dist/model/strategy/adapter/walletPass/type.d.ts +0 -3
- package/dist/model/strategy/adapter/walletPass/utils.d.ts +0 -26
- package/dist/model/strategy/adapter/walletPass/utils.js +17 -92
- package/dist/model/strategy/strategy-example.js +19 -5
- package/dist/modules/BaseModule.d.ts +1 -1
- package/dist/modules/BaseModule.js +8 -10
- package/dist/modules/Cart/index.js +3 -0
- package/dist/modules/Cart/utils/cartProduct.js +1 -0
- package/dist/modules/Cart/utils/cartResource.js +0 -2
- package/dist/modules/Cart/utils/changePrice.js +9 -16
- package/dist/modules/Date/index.js +5 -1
- package/dist/modules/Discount/index.d.ts +0 -1
- package/dist/modules/Discount/index.js +7 -22
- package/dist/modules/Discount/types.d.ts +0 -1
- package/dist/modules/OpenData/index.js +2 -0
- package/dist/modules/Order/index.js +70 -40
- package/dist/modules/Payment/index.js +162 -97
- package/dist/modules/Payment/types.d.ts +4 -8
- package/dist/modules/Payment/walletpass.d.ts +0 -2
- package/dist/modules/Payment/walletpass.js +5 -4
- package/dist/modules/ProductList/index.d.ts +1 -1
- package/dist/modules/ProductList/index.js +3 -12
- package/dist/modules/ProductList/types.d.ts +0 -1
- package/dist/modules/Rules/index.js +126 -427
- package/dist/modules/SalesSummary/utils.js +1 -2
- package/dist/modules/Schedule/getDateIsInSchedule.js +0 -5
- package/dist/modules/Schedule/index.js +1 -0
- package/dist/modules/Schedule/utils.js +1 -0
- package/dist/modules/Step/index.js +1 -0
- package/dist/modules/Summary/utils.js +22 -43
- package/dist/plugins/request.js +4 -1
- package/dist/plugins/window.js +6 -2
- package/dist/server/index.js +129 -97
- package/dist/server/modules/menu/index.js +41 -32
- package/dist/server/modules/order/index.js +4 -2
- package/dist/server/modules/products/index.js +42 -24
- package/dist/server/modules/quotation/index.js +38 -29
- package/dist/server/modules/resource/index.js +4 -3
- package/dist/server/modules/schedule/index.js +35 -27
- package/dist/server/utils/product.js +1 -0
- package/dist/solution/BaseSales/index.js +41 -38
- package/dist/solution/BookingByStep/index.d.ts +1 -1
- package/dist/solution/BookingByStep/index.js +60 -11
- package/dist/solution/BookingByStep/utils/capacity.js +11 -1
- package/dist/solution/BookingByStep/utils/resources.js +3 -1
- package/dist/solution/BookingByStep/utils/timeslots.js +43 -2
- package/dist/solution/BookingTicket/index.d.ts +1 -1
- package/dist/solution/BookingTicket/index.js +2 -0
- package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +7 -6
- package/dist/solution/BookingTicket/utils/scan/handleScan.js +31 -25
- package/dist/solution/BookingTicket/utils/scan/index.js +10 -6
- package/dist/solution/BuyTickets/index.js +12 -9
- package/dist/solution/Checkout/index.js +252 -177
- package/dist/solution/Checkout/utils/index.js +16 -4
- package/dist/solution/RegisterAndLogin/index.js +76 -30
- package/dist/solution/ScanOrder/index.js +60 -50
- package/dist/solution/ShopDiscount/index.js +14 -15
- package/dist/solution/ShopDiscount/types.d.ts +4 -5
- package/dist/solution/ShopDiscount/utils.d.ts +0 -9
- package/dist/solution/ShopDiscount/utils.js +0 -9
- package/dist/solution/VenueBooking/index.d.ts +3 -31
- package/dist/solution/VenueBooking/index.js +496 -651
- package/dist/solution/VenueBooking/types.d.ts +1 -3
- package/dist/solution/VenueBooking/types.js +0 -1
- package/dist/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
- package/dist/solution/VenueBooking/utils/dateSummary.js +25 -12
- package/dist/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
- package/dist/solution/VenueBooking/utils/timeSlot.js +4 -9
- package/dist/types/index.d.ts +1 -1
- package/dist/utils/task.js +18 -15
- package/dist/utils/watch.js +1 -0
- package/lib/apis/picoding.js +0 -2
- package/lib/core/index.js +132 -130
- package/lib/effects/index.js +57 -46
- package/lib/index.d.ts +0 -1
- package/lib/index.js +50 -92
- package/lib/model/index.js +21 -14
- package/lib/model/strategy/adapter/dataVariant/adapter.js +50 -38
- package/lib/model/strategy/adapter/dataVariant/evaluator.js +236 -162
- package/lib/model/strategy/adapter/dataVariant/examples.js +237 -229
- package/lib/model/strategy/adapter/dataVariant/index.js +34 -39
- package/lib/model/strategy/adapter/dataVariant/type.js +28 -57
- package/lib/model/strategy/adapter/index.js +64 -100
- package/lib/model/strategy/adapter/itemRule/adapter.js +144 -156
- package/lib/model/strategy/adapter/itemRule/evaluator.js +48 -36
- package/lib/model/strategy/adapter/itemRule/examples.js +225 -295
- package/lib/model/strategy/adapter/itemRule/index.js +57 -83
- package/lib/model/strategy/adapter/itemRule/type.js +36 -97
- package/lib/model/strategy/adapter/promotion/adapter.js +63 -84
- package/lib/model/strategy/adapter/promotion/evaluator.js +231 -381
- package/lib/model/strategy/adapter/promotion/examples.js +159 -139
- package/lib/model/strategy/adapter/promotion/index.js +49 -1
- package/lib/model/strategy/adapter/promotion/type.js +35 -199
- package/lib/model/strategy/adapter/type.js +16 -4
- package/lib/model/strategy/adapter/walletPass/evaluator.js +152 -180
- package/lib/model/strategy/adapter/walletPass/example.js +190 -217
- package/lib/model/strategy/adapter/walletPass/index.js +51 -75
- package/lib/model/strategy/adapter/walletPass/locales.js +58 -36
- package/lib/model/strategy/adapter/walletPass/type.d.ts +0 -3
- package/lib/model/strategy/adapter/walletPass/type.js +16 -4
- package/lib/model/strategy/adapter/walletPass/utils.d.ts +0 -26
- package/lib/model/strategy/adapter/walletPass/utils.js +383 -678
- package/lib/model/strategy/engine.js +168 -270
- package/lib/model/strategy/index.js +34 -49
- package/lib/model/strategy/strategy-example.js +239 -243
- package/lib/model/strategy/type.js +40 -100
- package/lib/modules/Account/index.js +53 -39
- package/lib/modules/Account/types.js +33 -20
- package/lib/modules/AccountList/index.js +154 -116
- package/lib/modules/AccountList/types.js +31 -30
- package/lib/modules/AccountList/utils.js +30 -18
- package/lib/modules/BaseModule.d.ts +1 -1
- package/lib/modules/BaseModule.js +46 -25
- package/lib/modules/BookingContext/index.js +136 -158
- package/lib/modules/BookingContext/types.js +32 -46
- package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +143 -131
- package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +82 -75
- package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +150 -170
- package/lib/modules/BookingContext/utils/flexible.js +55 -38
- package/lib/modules/BookingContext/utils/formatResourceList.js +34 -19
- package/lib/modules/BookingContext/utils/index.js +41 -124
- package/lib/modules/BookingContext/utils/noResource.js +70 -58
- package/lib/modules/BookingContext/utils/orderLineDisplay.js +41 -14
- package/lib/modules/BookingContext/utils/productExtend.js +155 -202
- package/lib/modules/BookingContext/utils/resourceErrors.js +53 -53
- package/lib/modules/BookingContext/utils/resourceSelection.js +41 -19
- package/lib/modules/BookingContext/utils/resources.js +167 -209
- package/lib/modules/BookingContext/utils/serviceTimes.js +116 -115
- package/lib/modules/BookingContext/utils/timeSlices.js +80 -70
- package/lib/modules/Cart/index.js +124 -170
- package/lib/modules/Cart/types.js +51 -46
- package/lib/modules/Cart/utils/cartAccount.js +39 -40
- package/lib/modules/Cart/utils/cartDate.js +61 -56
- package/lib/modules/Cart/utils/cartDiscount.js +33 -28
- package/lib/modules/Cart/utils/cartNote.js +32 -27
- package/lib/modules/Cart/utils/cartProduct.js +251 -321
- package/lib/modules/Cart/utils/cartRelationForms.js +35 -29
- package/lib/modules/Cart/utils/cartResource.js +78 -72
- package/lib/modules/Cart/utils/changePrice.js +50 -28
- package/lib/modules/Cart/utils/index.js +48 -106
- package/lib/modules/Customer/constants.js +34 -13
- package/lib/modules/Customer/index.js +169 -232
- package/lib/modules/Customer/types.js +35 -38
- package/lib/modules/Date/index.js +115 -116
- package/lib/modules/Date/types.js +28 -16
- package/lib/modules/Date/utils.js +123 -174
- package/lib/modules/Discount/index.d.ts +0 -1
- package/lib/modules/Discount/index.js +128 -130
- package/lib/modules/Discount/types.d.ts +0 -1
- package/lib/modules/Discount/types.js +31 -9
- package/lib/modules/Guests/index.js +56 -30
- package/lib/modules/Guests/types.js +33 -23
- package/lib/modules/Holder/index.js +189 -209
- package/lib/modules/Holder/types.js +16 -4
- package/lib/modules/Holder/utils.js +49 -20
- package/lib/modules/OpenData/index.js +76 -69
- package/lib/modules/OpenData/types.js +16 -4
- package/lib/modules/OpenData/utils.js +78 -44
- package/lib/modules/Order/index.js +1909 -1572
- package/lib/modules/Order/types.js +35 -78
- package/lib/modules/Order/utils/bundleDiscountHydration.js +74 -41
- package/lib/modules/Order/utils/manualProductDiscount.js +123 -124
- package/lib/modules/Order/utils/orderCollectionIdentity.js +210 -148
- package/lib/modules/Order/utils.js +634 -799
- package/lib/modules/Payment/cash.js +33 -20
- package/lib/modules/Payment/cashRecommendationAlgorithm.js +76 -145
- package/lib/modules/Payment/eftpos.js +30 -16
- package/lib/modules/Payment/index.js +378 -518
- package/lib/modules/Payment/mx51.js +0 -1
- package/lib/modules/Payment/types.d.ts +4 -8
- package/lib/modules/Payment/types.js +107 -216
- package/lib/modules/Payment/utils.js +48 -51
- package/lib/modules/Payment/walletpass.d.ts +0 -2
- package/lib/modules/Payment/walletpass.js +211 -226
- package/lib/modules/Product/index.js +46 -51
- package/lib/modules/Product/types.js +16 -4
- package/lib/modules/Product/utils.js +33 -32
- package/lib/modules/ProductList/index.d.ts +1 -1
- package/lib/modules/ProductList/index.js +117 -117
- package/lib/modules/ProductList/types.d.ts +0 -1
- package/lib/modules/ProductList/types.js +31 -9
- package/lib/modules/Quotation/index.js +100 -66
- package/lib/modules/Quotation/types.js +16 -4
- package/lib/modules/Resource/index.js +59 -27
- package/lib/modules/Resource/types.js +32 -22
- package/lib/modules/Resource/utils.js +38 -30
- package/lib/modules/ResourcePlanner/index.js +61 -60
- package/lib/modules/ResourcePlanner/planner.js +384 -346
- package/lib/modules/ResourcePlanner/types.js +16 -4
- package/lib/modules/Rules/index.js +903 -1475
- package/lib/modules/Rules/types.js +40 -17
- package/lib/modules/SalesSummary/index.js +90 -85
- package/lib/modules/SalesSummary/types.js +16 -4
- package/lib/modules/SalesSummary/utils.js +427 -351
- package/lib/modules/ScanOrderLogger/index.js +79 -59
- package/lib/modules/ScanOrderLogger/providers/feishu.js +78 -54
- package/lib/modules/ScanOrderLogger/providers/grafana.js +36 -13
- package/lib/modules/ScanOrderLogger/types.js +16 -4
- package/lib/modules/Schedule/getDateIsInSchedule.js +163 -339
- package/lib/modules/Schedule/index.js +114 -100
- package/lib/modules/Schedule/type.js +16 -4
- package/lib/modules/Schedule/types.js +16 -4
- package/lib/modules/Schedule/utils.js +291 -433
- package/lib/modules/Step/index.js +52 -40
- package/lib/modules/Step/tyeps.js +16 -4
- package/lib/modules/Summary/index.js +71 -66
- package/lib/modules/Summary/types.js +16 -4
- package/lib/modules/Summary/utils.js +418 -791
- package/lib/modules/SurchargeList/index.js +60 -46
- package/lib/modules/SurchargeList/types.js +16 -4
- package/lib/modules/index.js +63 -245
- package/lib/plugins/app.js +16 -4
- package/lib/plugins/index.js +25 -36
- package/lib/plugins/request.js +126 -137
- package/lib/plugins/shopStore.js +16 -4
- package/lib/plugins/user.js +16 -4
- package/lib/plugins/window.js +179 -171
- package/lib/server/index.js +2337 -2675
- package/lib/server/modules/floor-plan/index.js +123 -102
- package/lib/server/modules/floor-plan/types.js +30 -15
- package/lib/server/modules/index.js +68 -106
- package/lib/server/modules/menu/index.js +122 -146
- package/lib/server/modules/menu/types.js +31 -18
- package/lib/server/modules/order/index.js +642 -567
- package/lib/server/modules/order/types.js +32 -117
- package/lib/server/modules/order/utils/filterBookings.js +194 -219
- package/lib/server/modules/order/utils/filterOrders.js +92 -118
- package/lib/server/modules/payment/index.js +83 -59
- package/lib/server/modules/payment/types.js +16 -4
- package/lib/server/modules/products/index.js +459 -575
- package/lib/server/modules/products/types.js +34 -44
- package/lib/server/modules/quotation/index.js +172 -137
- package/lib/server/modules/quotation/types.js +31 -21
- package/lib/server/modules/resource/index.js +184 -213
- package/lib/server/modules/resource/types.js +33 -42
- package/lib/server/modules/schedule/index.js +123 -135
- package/lib/server/modules/schedule/types.js +21 -14
- package/lib/server/modules/schedule/utils.js +163 -334
- package/lib/server/types.js +16 -4
- package/lib/server/utils/index.js +23 -25
- package/lib/server/utils/product.js +139 -196
- package/lib/server/utils/schedule.js +41 -34
- package/lib/server/utils/small-ticket.js +456 -478
- package/lib/server/utils/time.js +49 -40
- package/lib/solution/BaseSales/index.js +1016 -850
- package/lib/solution/BaseSales/types.js +37 -41
- package/lib/solution/BaseSales/utils/cartPromotion.js +460 -611
- package/lib/solution/BaseSales/utils/parseSalesResponse.js +105 -85
- package/lib/solution/BaseSales/utils/quotationPrice.js +114 -56
- package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +143 -102
- package/lib/solution/BaseSales/utils.js +140 -155
- package/lib/solution/BookingByStep/index.d.ts +1 -1
- package/lib/solution/BookingByStep/index.js +1340 -1530
- package/lib/solution/BookingByStep/types.js +99 -40
- package/lib/solution/BookingByStep/utils/capacity.js +160 -192
- package/lib/solution/BookingByStep/utils/products.js +52 -42
- package/lib/solution/BookingByStep/utils/resources.js +330 -527
- package/lib/solution/BookingByStep/utils/stock.js +44 -65
- package/lib/solution/BookingByStep/utils/timeslots.js +131 -129
- package/lib/solution/BookingTicket/index.d.ts +1 -1
- package/lib/solution/BookingTicket/index.js +459 -543
- package/lib/solution/BookingTicket/types.js +77 -99
- package/lib/solution/BookingTicket/utils/addProductDecision.js +184 -219
- package/lib/solution/BookingTicket/utils/addTimeAvailability.js +89 -58
- package/lib/solution/BookingTicket/utils/bookingStatus.js +78 -107
- package/lib/solution/BookingTicket/utils/cartView.js +94 -110
- package/lib/solution/BookingTicket/utils/exampleData.js +0 -185
- package/lib/solution/BookingTicket/utils/orderCustomer.js +41 -18
- package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +86 -219
- package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +93 -144
- package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +91 -79
- package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +41 -54
- package/lib/solution/BookingTicket/utils/scan/handleScan.js +81 -84
- package/lib/solution/BookingTicket/utils/scan/index.js +104 -98
- package/lib/solution/BookingTicket/utils/scan/scanCache.js +43 -90
- package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +64 -52
- package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +58 -56
- package/lib/solution/BuyTickets/index.js +70 -67
- package/lib/solution/BuyTickets/types.js +38 -22
- package/lib/solution/Checkout/index.js +1158 -1451
- package/lib/solution/Checkout/types.js +61 -91
- package/lib/solution/Checkout/utils/index.js +156 -228
- package/lib/solution/PlaceOrder/index.js +0 -55
- package/lib/solution/RegisterAndLogin/config.js +460 -493
- package/lib/solution/RegisterAndLogin/index.js +630 -633
- package/lib/solution/RegisterAndLogin/types.js +76 -189
- package/lib/solution/RegisterAndLogin/utils.js +125 -183
- package/lib/solution/Sales/index.js +320 -317
- package/lib/solution/Sales/types.js +33 -27
- package/lib/solution/ScanOrder/index.js +862 -831
- package/lib/solution/ScanOrder/types.js +34 -33
- package/lib/solution/ScanOrder/utils.js +371 -406
- package/lib/solution/ShopDiscount/index.js +233 -235
- package/lib/solution/ShopDiscount/types.d.ts +4 -5
- package/lib/solution/ShopDiscount/types.js +37 -15
- package/lib/solution/ShopDiscount/utils.d.ts +0 -9
- package/lib/solution/ShopDiscount/utils.js +172 -309
- package/lib/solution/UnifiedBookingSales/index.js +405 -379
- package/lib/solution/UnifiedBookingSales/types.js +31 -12
- package/lib/solution/VenueBooking/index.d.ts +3 -31
- package/lib/solution/VenueBooking/index.js +916 -967
- package/lib/solution/VenueBooking/types.d.ts +1 -3
- package/lib/solution/VenueBooking/types.js +39 -20
- package/lib/solution/VenueBooking/utils/dateSummary.d.ts +2 -2
- package/lib/solution/VenueBooking/utils/dateSummary.js +62 -25
- package/lib/solution/VenueBooking/utils/resource.js +54 -31
- package/lib/solution/VenueBooking/utils/slotMerge.js +107 -94
- package/lib/solution/VenueBooking/utils/timeSlot.d.ts +0 -2
- package/lib/solution/VenueBooking/utils/timeSlot.js +133 -138
- package/lib/solution/VenueBooking/utils.js +67 -130
- package/lib/solution/index.js +41 -124
- package/lib/store/createStore.js +29 -32
- package/lib/types/index.d.ts +1 -1
- package/lib/types/index.js +16 -4
- package/lib/utils/task.js +36 -36
- package/lib/utils/watch.js +47 -81
- package/package.json +2 -4
- package/dist/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
- package/dist/solution/VenueBooking/utils/smartPricing.js +0 -233
- package/lib/solution/VenueBooking/utils/smartPricing.d.ts +0 -70
- package/lib/solution/VenueBooking/utils/smartPricing.js +0 -192
|
@@ -1,129 +1,145 @@
|
|
|
1
|
-
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
2
18
|
|
|
3
|
-
|
|
4
|
-
|
|
19
|
+
// src/solution/BaseSales/utils/parseSalesResponse.ts
|
|
20
|
+
var parseSalesResponse_exports = {};
|
|
21
|
+
__export(parseSalesResponse_exports, {
|
|
22
|
+
parseSalesResponse: () => parseSalesResponse
|
|
5
23
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
module.exports = __toCommonJS(parseSalesResponse_exports);
|
|
25
|
+
var import_orderCollectionIdentity = require("../../../modules/Order/utils/orderCollectionIdentity");
|
|
26
|
+
var HEADER_KEYS = [
|
|
27
|
+
"order_id",
|
|
28
|
+
"order_number",
|
|
29
|
+
"shop_order_number",
|
|
30
|
+
"shop_full_order_number",
|
|
31
|
+
"type",
|
|
32
|
+
"business_code",
|
|
33
|
+
"platform",
|
|
34
|
+
"sales_channel",
|
|
35
|
+
"order_sales_channel",
|
|
36
|
+
"vouchers",
|
|
37
|
+
"status",
|
|
38
|
+
"payment_status",
|
|
39
|
+
"shipping_status",
|
|
40
|
+
"customer_id",
|
|
41
|
+
"customer_name",
|
|
42
|
+
"country_calling_code",
|
|
43
|
+
"phone",
|
|
44
|
+
"email",
|
|
45
|
+
"is_price_include_tax",
|
|
46
|
+
"tax_title",
|
|
47
|
+
"tax_country_code",
|
|
48
|
+
"currency_code",
|
|
49
|
+
"currency_symbol",
|
|
50
|
+
"currency_format",
|
|
51
|
+
"is_deposit",
|
|
52
|
+
"deposit_amount",
|
|
53
|
+
"shop_discount",
|
|
54
|
+
"surcharge_fee",
|
|
55
|
+
"note",
|
|
56
|
+
"schedule_date",
|
|
57
|
+
"created_at",
|
|
58
|
+
"updated_at",
|
|
59
|
+
"metadata",
|
|
60
|
+
"total_amount",
|
|
61
|
+
"shop_id",
|
|
62
|
+
"create_date",
|
|
63
|
+
"holder",
|
|
64
|
+
"relation_forms",
|
|
65
|
+
"contacts",
|
|
66
|
+
"contacts_info"
|
|
67
|
+
];
|
|
26
68
|
function pickHeader(raw) {
|
|
27
|
-
const header = {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
if (!raw || typeof raw !== 'object') return header;
|
|
69
|
+
const header = { order_id: (raw == null ? void 0 : raw.order_id) ?? null };
|
|
70
|
+
if (!raw || typeof raw !== "object")
|
|
71
|
+
return header;
|
|
31
72
|
for (const key of HEADER_KEYS) {
|
|
32
|
-
if (raw[key] !==
|
|
73
|
+
if (raw[key] !== void 0)
|
|
74
|
+
header[key] = raw[key];
|
|
33
75
|
}
|
|
34
76
|
return header;
|
|
35
77
|
}
|
|
36
78
|
function pickCustomer(raw) {
|
|
37
|
-
if (!raw || typeof raw !==
|
|
79
|
+
if (!raw || typeof raw !== "object")
|
|
80
|
+
return null;
|
|
38
81
|
const explicit = raw.customer;
|
|
39
|
-
if (explicit && typeof explicit ===
|
|
82
|
+
if (explicit && typeof explicit === "object") {
|
|
40
83
|
return {
|
|
41
84
|
id: explicit.id ?? raw.customer_id ?? null,
|
|
42
|
-
name: explicit.name ?? raw.customer_name ??
|
|
85
|
+
name: explicit.name ?? raw.customer_name ?? "",
|
|
43
86
|
phone: explicit.phone ?? raw.phone,
|
|
44
87
|
email: explicit.email ?? raw.email,
|
|
45
88
|
country_calling_code: explicit.country_calling_code ?? raw.country_calling_code,
|
|
46
89
|
...explicit
|
|
47
90
|
};
|
|
48
91
|
}
|
|
49
|
-
if (raw.customer_id == null && !raw.customer_name)
|
|
92
|
+
if (raw.customer_id == null && !raw.customer_name)
|
|
93
|
+
return null;
|
|
50
94
|
return {
|
|
51
95
|
id: raw.customer_id ?? null,
|
|
52
|
-
name: raw.customer_name ??
|
|
96
|
+
name: raw.customer_name ?? "",
|
|
53
97
|
phone: raw.phone,
|
|
54
98
|
email: raw.email,
|
|
55
99
|
country_calling_code: raw.country_calling_code
|
|
56
100
|
};
|
|
57
101
|
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* 判定根 booking。沿用 ticketBooking 现有约定:
|
|
61
|
-
* `parent_id === 0` 视为根;其余为子(item_type === 'recurring_booking' 也按 parent_id 判定)。
|
|
62
|
-
* 见 `packages/private-materials/src/components/ticketBooking/index.tsx`:
|
|
63
|
-
* `type: booking.parent_id === 0 ? 'list' : 'detail'`。
|
|
64
|
-
*/
|
|
65
102
|
function isRootBooking(booking) {
|
|
66
|
-
if (!booking || typeof booking !==
|
|
103
|
+
if (!booking || typeof booking !== "object")
|
|
104
|
+
return false;
|
|
67
105
|
const parentId = booking.parent_id;
|
|
68
|
-
if (parentId === 0 || parentId === null || parentId ===
|
|
106
|
+
if (parentId === 0 || parentId === null || parentId === void 0)
|
|
107
|
+
return true;
|
|
69
108
|
return false;
|
|
70
109
|
}
|
|
71
110
|
function indexBookingsByProductUid(bookings) {
|
|
111
|
+
var _a;
|
|
72
112
|
const result = {};
|
|
73
113
|
for (const b of bookings) {
|
|
74
|
-
const uid = b && (b.product_uid || b.metadata
|
|
75
|
-
if (!uid)
|
|
114
|
+
const uid = b && (b.product_uid || ((_a = b.metadata) == null ? void 0 : _a.product_uid)) || "";
|
|
115
|
+
if (!uid)
|
|
116
|
+
continue;
|
|
76
117
|
const key = String(uid);
|
|
77
|
-
if (!result[key])
|
|
118
|
+
if (!result[key])
|
|
119
|
+
result[key] = [];
|
|
78
120
|
result[key].push(b);
|
|
79
121
|
}
|
|
80
122
|
return result;
|
|
81
123
|
}
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* 将 `/order/sales/{id}` 响应解析为 ISalesDetail。
|
|
85
|
-
*
|
|
86
|
-
* 注意:
|
|
87
|
-
* - 入参允许是 `{ data: OrderData }` 或直接 `OrderData`,自动识别。
|
|
88
|
-
* - products/bookings/payments 在此补齐集合身份;其余 runtime 字段由 OrderModule hydrate 负责。
|
|
89
|
-
* - 不做远程请求;不修改入参;返回新对象。
|
|
90
|
-
*/
|
|
91
124
|
function parseSalesResponse(input) {
|
|
92
|
-
const sourceRaw = input && typeof input ===
|
|
93
|
-
const raw = (0,
|
|
94
|
-
const productsRaw = Array.isArray(raw
|
|
95
|
-
const products = productsRaw.map(p => {
|
|
96
|
-
const row = {
|
|
97
|
-
|
|
98
|
-
};
|
|
99
|
-
const metadata = row.metadata && typeof row.metadata === 'object' ? {
|
|
100
|
-
...row.metadata
|
|
101
|
-
} : {};
|
|
125
|
+
const sourceRaw = input && typeof input === "object" && input.data && input.order_id == null ? input.data : input || {};
|
|
126
|
+
const raw = (0, import_orderCollectionIdentity.normalizeOrderCollections)(sourceRaw).order;
|
|
127
|
+
const productsRaw = Array.isArray(raw == null ? void 0 : raw.products) ? raw.products : [];
|
|
128
|
+
const products = productsRaw.map((p) => {
|
|
129
|
+
const row = { ...p || {} };
|
|
130
|
+
const metadata = row.metadata && typeof row.metadata === "object" ? { ...row.metadata } : {};
|
|
102
131
|
delete metadata.price_schema_version;
|
|
103
132
|
delete row.identity_key;
|
|
104
|
-
return {
|
|
105
|
-
...row,
|
|
106
|
-
metadata
|
|
107
|
-
};
|
|
133
|
+
return { ...row, metadata };
|
|
108
134
|
});
|
|
109
|
-
const bookingsRaw = Array.isArray(raw
|
|
110
|
-
const bookings = bookingsRaw.map(b => ({
|
|
111
|
-
...(b || {})
|
|
112
|
-
}));
|
|
135
|
+
const bookingsRaw = Array.isArray(raw == null ? void 0 : raw.bookings) ? raw.bookings : [];
|
|
136
|
+
const bookings = bookingsRaw.map((b) => ({ ...b || {} }));
|
|
113
137
|
const rootBooking = bookings.find(isRootBooking) || null;
|
|
114
138
|
const bookingsByProductUid = indexBookingsByProductUid(bookings);
|
|
115
|
-
const payments = Array.isArray(raw
|
|
116
|
-
|
|
117
|
-
})) : [];
|
|
118
|
-
const
|
|
119
|
-
...(s || {})
|
|
120
|
-
})) : [];
|
|
121
|
-
const discount_list = Array.isArray(raw?.discount_list) ? raw.discount_list.map(d => ({
|
|
122
|
-
...(d || {})
|
|
123
|
-
})) : [];
|
|
124
|
-
const summary = raw?.summary && typeof raw.summary === 'object' ? {
|
|
125
|
-
...raw.summary
|
|
126
|
-
} : {};
|
|
139
|
+
const payments = Array.isArray(raw == null ? void 0 : raw.payments) ? raw.payments.map((p) => ({ ...p || {} })) : [];
|
|
140
|
+
const surcharges = Array.isArray(raw == null ? void 0 : raw.surcharges) ? raw.surcharges.map((s) => ({ ...s || {} })) : [];
|
|
141
|
+
const discount_list = Array.isArray(raw == null ? void 0 : raw.discount_list) ? raw.discount_list.map((d) => ({ ...d || {} })) : [];
|
|
142
|
+
const summary = (raw == null ? void 0 : raw.summary) && typeof raw.summary === "object" ? { ...raw.summary } : {};
|
|
127
143
|
return {
|
|
128
144
|
header: pickHeader(raw),
|
|
129
145
|
products,
|
|
@@ -137,4 +153,8 @@ function parseSalesResponse(input) {
|
|
|
137
153
|
summary,
|
|
138
154
|
raw
|
|
139
155
|
};
|
|
140
|
-
}
|
|
156
|
+
}
|
|
157
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
158
|
+
0 && (module.exports = {
|
|
159
|
+
parseSalesResponse
|
|
160
|
+
});
|
|
@@ -1,78 +1,132 @@
|
|
|
1
|
-
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
2
28
|
|
|
3
|
-
|
|
4
|
-
|
|
29
|
+
// src/solution/BaseSales/utils/quotationPrice.ts
|
|
30
|
+
var quotationPrice_exports = {};
|
|
31
|
+
__export(quotationPrice_exports, {
|
|
32
|
+
calculateBaseSalesProductBookingPrice: () => calculateBaseSalesProductBookingPrice
|
|
5
33
|
});
|
|
6
|
-
exports
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
34
|
+
module.exports = __toCommonJS(quotationPrice_exports);
|
|
35
|
+
var import_dayjs = __toESM(require("dayjs"));
|
|
36
|
+
var import_decimal = __toESM(require("decimal.js"));
|
|
10
37
|
function toFiniteNumber(value, fallback = 0) {
|
|
11
38
|
const parsedValue = Number(value);
|
|
12
|
-
if (!Number.isFinite(parsedValue))
|
|
39
|
+
if (!Number.isFinite(parsedValue))
|
|
40
|
+
return fallback;
|
|
13
41
|
return parsedValue;
|
|
14
42
|
}
|
|
15
43
|
function toPositiveInt(value, fallback = 1) {
|
|
16
44
|
const parsedValue = Math.floor(Number(value));
|
|
17
|
-
if (!Number.isFinite(parsedValue) || parsedValue < 1)
|
|
45
|
+
if (!Number.isFinite(parsedValue) || parsedValue < 1)
|
|
46
|
+
return fallback;
|
|
18
47
|
return parsedValue;
|
|
19
48
|
}
|
|
20
49
|
function toPriceString(value) {
|
|
21
|
-
return new
|
|
50
|
+
return new import_decimal.default(Number(value) || 0).toDecimalPlaces(2).toFixed(2);
|
|
22
51
|
}
|
|
23
52
|
function normalizeDateTime(value) {
|
|
24
|
-
if (typeof value !==
|
|
25
|
-
|
|
26
|
-
const
|
|
27
|
-
|
|
53
|
+
if (typeof value !== "string" || !value.trim())
|
|
54
|
+
return null;
|
|
55
|
+
const normalized = value.includes(":") ? value : `${value} 00:00:00`;
|
|
56
|
+
const datetime = (0, import_dayjs.default)(normalized);
|
|
57
|
+
if (!datetime.isValid())
|
|
58
|
+
return null;
|
|
28
59
|
return datetime;
|
|
29
60
|
}
|
|
30
61
|
function buildBookingDateTime(date, time) {
|
|
31
|
-
if (typeof date !==
|
|
32
|
-
|
|
33
|
-
const
|
|
34
|
-
|
|
62
|
+
if (typeof date !== "string" || !date.trim())
|
|
63
|
+
return null;
|
|
64
|
+
const timeText = typeof time === "string" && time.trim() ? time.trim() : "00:00";
|
|
65
|
+
const datetime = (0, import_dayjs.default)(`${date.trim()} ${timeText}`);
|
|
66
|
+
if (!datetime.isValid())
|
|
67
|
+
return null;
|
|
35
68
|
return datetime;
|
|
36
69
|
}
|
|
37
70
|
function getDurationUnit(type) {
|
|
38
|
-
const normalizedType = String(type ||
|
|
39
|
-
if (normalizedType ===
|
|
40
|
-
|
|
71
|
+
const normalizedType = String(type || "").toLowerCase();
|
|
72
|
+
if (normalizedType === "day" || normalizedType === "days")
|
|
73
|
+
return "day";
|
|
74
|
+
if (normalizedType === "minute" || normalizedType === "minutes")
|
|
75
|
+
return "minute";
|
|
41
76
|
return null;
|
|
42
77
|
}
|
|
43
78
|
function getProductId(product) {
|
|
44
79
|
const productId = toFiniteNumber(product.product_id ?? product.id, NaN);
|
|
45
|
-
if (!Number.isFinite(productId))
|
|
80
|
+
if (!Number.isFinite(productId))
|
|
81
|
+
return null;
|
|
46
82
|
return productId;
|
|
47
83
|
}
|
|
48
84
|
function getProductVariantId(product) {
|
|
49
|
-
const variantId = toFiniteNumber(
|
|
50
|
-
|
|
85
|
+
const variantId = toFiniteNumber(
|
|
86
|
+
product.product_variant_id ?? product.variant_id,
|
|
87
|
+
0
|
|
88
|
+
);
|
|
89
|
+
if (!Number.isFinite(variantId) || variantId <= 0)
|
|
90
|
+
return void 0;
|
|
51
91
|
return variantId;
|
|
52
92
|
}
|
|
53
93
|
function getFallbackPrice(params) {
|
|
54
94
|
const product = params.product || {};
|
|
55
|
-
return toPriceString(
|
|
95
|
+
return toPriceString(
|
|
96
|
+
params.fallback_price ?? product.price ?? product.selling_price ?? product.original_price ?? 0
|
|
97
|
+
);
|
|
56
98
|
}
|
|
57
99
|
function getProductQuantity(product) {
|
|
58
100
|
return toPositiveInt(product.num ?? product.quantity, 1);
|
|
59
101
|
}
|
|
60
102
|
function getBundleProductId(bundle) {
|
|
61
|
-
const productId = toFiniteNumber(
|
|
62
|
-
|
|
103
|
+
const productId = toFiniteNumber(
|
|
104
|
+
bundle.bundle_product_id ?? bundle._bundle_product_id,
|
|
105
|
+
NaN
|
|
106
|
+
);
|
|
107
|
+
if (!Number.isFinite(productId))
|
|
108
|
+
return null;
|
|
63
109
|
return productId;
|
|
64
110
|
}
|
|
65
111
|
function getBundleVariantId(bundle) {
|
|
66
|
-
const variantId = toFiniteNumber(
|
|
67
|
-
|
|
112
|
+
const variantId = toFiniteNumber(
|
|
113
|
+
bundle.bundle_variant_id ?? bundle.variant_id,
|
|
114
|
+
0
|
|
115
|
+
);
|
|
116
|
+
if (!Number.isFinite(variantId) || variantId <= 0)
|
|
117
|
+
return void 0;
|
|
68
118
|
return variantId;
|
|
69
119
|
}
|
|
70
120
|
function getBundleFallbackPrice(bundle) {
|
|
71
|
-
return toPriceString(
|
|
121
|
+
return toPriceString(
|
|
122
|
+
bundle.bundle_selling_price ?? bundle.price ?? bundle.original_price ?? bundle.base_price ?? 0
|
|
123
|
+
);
|
|
72
124
|
}
|
|
73
125
|
function shouldSplitByDuration(duration, start, end) {
|
|
74
|
-
if (!duration)
|
|
75
|
-
|
|
126
|
+
if (!duration)
|
|
127
|
+
return false;
|
|
128
|
+
if (!start || !end || !end.isAfter(start))
|
|
129
|
+
return false;
|
|
76
130
|
const unit = getDurationUnit(duration.type);
|
|
77
131
|
const value = toFiniteNumber(duration.value);
|
|
78
132
|
return !!unit && value > 0;
|
|
@@ -81,33 +135,29 @@ function buildTimeSegments(params) {
|
|
|
81
135
|
const booking = params.booking || {};
|
|
82
136
|
const explicitDatetime = normalizeDateTime(params.datetime);
|
|
83
137
|
const bookingStart = buildBookingDateTime(booking.start_date, booking.start_time);
|
|
84
|
-
const start = bookingStart || explicitDatetime || (0,
|
|
138
|
+
const start = bookingStart || explicitDatetime || (0, import_dayjs.default)();
|
|
85
139
|
const bookingEnd = buildBookingDateTime(booking.end_date, booking.end_time);
|
|
86
140
|
if (!shouldSplitByDuration(params.duration, start, bookingEnd)) {
|
|
87
|
-
return [{
|
|
88
|
-
start
|
|
89
|
-
}];
|
|
141
|
+
return [{ start }];
|
|
90
142
|
}
|
|
91
143
|
const unit = getDurationUnit(params.duration.type);
|
|
92
144
|
const value = toFiniteNumber(params.duration.value);
|
|
93
145
|
const segments = [];
|
|
94
146
|
let cursor = start;
|
|
95
147
|
let guard = 0;
|
|
96
|
-
while (cursor.isBefore(bookingEnd) && guard <
|
|
148
|
+
while (cursor.isBefore(bookingEnd) && guard < 1e4) {
|
|
97
149
|
const next = cursor.add(value, unit);
|
|
98
150
|
segments.push({
|
|
99
151
|
start: cursor,
|
|
100
|
-
end: next.isBefore(bookingEnd) ? next : bookingEnd ??
|
|
152
|
+
end: next.isBefore(bookingEnd) ? next : bookingEnd ?? void 0
|
|
101
153
|
});
|
|
102
154
|
cursor = next;
|
|
103
155
|
guard += 1;
|
|
104
156
|
}
|
|
105
|
-
return segments.length ? segments : [{
|
|
106
|
-
start
|
|
107
|
-
}];
|
|
157
|
+
return segments.length ? segments : [{ start }];
|
|
108
158
|
}
|
|
109
159
|
function formatTimePoint(datetime) {
|
|
110
|
-
return datetime.format(
|
|
160
|
+
return datetime.format("YYYY-MM-DD HH:mm:ss");
|
|
111
161
|
}
|
|
112
162
|
function buildPriceSegment(params) {
|
|
113
163
|
const timePoint = formatTimePoint(params.segment.start);
|
|
@@ -126,7 +176,7 @@ function buildPriceSegment(params) {
|
|
|
126
176
|
customer_id: params.customerId
|
|
127
177
|
}) : null;
|
|
128
178
|
const unitPrice = toPriceString(quotedPrice ?? params.fallbackPrice);
|
|
129
|
-
const quotationShelfId = quotedPrice !== null ? match
|
|
179
|
+
const quotationShelfId = quotedPrice !== null ? (match == null ? void 0 : match.quotationShelfId) ?? (params.quotation && params.productId !== null ? params.quotation.getQuotationShelfId({
|
|
130
180
|
productId: params.productId,
|
|
131
181
|
variantId: params.variantId,
|
|
132
182
|
datetime: timePoint,
|
|
@@ -135,17 +185,18 @@ function buildPriceSegment(params) {
|
|
|
135
185
|
}) : 0) : 0;
|
|
136
186
|
return {
|
|
137
187
|
start_datetime: timePoint,
|
|
138
|
-
end_datetime: params.segment.end ? formatTimePoint(params.segment.end) :
|
|
188
|
+
end_datetime: params.segment.end ? formatTimePoint(params.segment.end) : void 0,
|
|
139
189
|
time_point: timePoint,
|
|
140
190
|
unit_price: unitPrice,
|
|
141
191
|
quantity: 1,
|
|
142
192
|
total_price: unitPrice,
|
|
143
193
|
quotation_shelf_id: quotationShelfId,
|
|
144
|
-
source: quotedPrice !== null ?
|
|
194
|
+
source: quotedPrice !== null ? "quotation" : "fallback"
|
|
145
195
|
};
|
|
146
196
|
}
|
|
147
197
|
function calculatePriceForProduct(params) {
|
|
148
|
-
|
|
198
|
+
var _a;
|
|
199
|
+
const segments = params.segments.map((segment) => buildPriceSegment({
|
|
149
200
|
quotation: params.quotation,
|
|
150
201
|
productId: params.productId,
|
|
151
202
|
variantId: params.variantId,
|
|
@@ -154,9 +205,12 @@ function calculatePriceForProduct(params) {
|
|
|
154
205
|
fallbackPrice: params.fallbackPrice,
|
|
155
206
|
segment
|
|
156
207
|
}));
|
|
157
|
-
const unitPrice = segments.reduce(
|
|
208
|
+
const unitPrice = segments.reduce(
|
|
209
|
+
(total, segment) => total.plus(segment.total_price),
|
|
210
|
+
new import_decimal.default(0)
|
|
211
|
+
);
|
|
158
212
|
const totalPrice = unitPrice.times(params.quantity);
|
|
159
|
-
const quotationShelfId = segments.find(segment => segment.quotation_shelf_id)
|
|
213
|
+
const quotationShelfId = ((_a = segments.find((segment) => segment.quotation_shelf_id)) == null ? void 0 : _a.quotation_shelf_id) || 0;
|
|
160
214
|
return {
|
|
161
215
|
unitPrice,
|
|
162
216
|
totalPrice,
|
|
@@ -165,9 +219,11 @@ function calculatePriceForProduct(params) {
|
|
|
165
219
|
};
|
|
166
220
|
}
|
|
167
221
|
function calculateBundlePrices(params, segments) {
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
222
|
+
var _a;
|
|
223
|
+
const bundleList = ((_a = params.product) == null ? void 0 : _a.product_bundle) || [];
|
|
224
|
+
if (!bundleList.length)
|
|
225
|
+
return void 0;
|
|
226
|
+
return bundleList.map((bundle) => {
|
|
171
227
|
const productId = getBundleProductId(bundle);
|
|
172
228
|
const variantId = getBundleVariantId(bundle);
|
|
173
229
|
const quantity = getProductQuantity(bundle);
|
|
@@ -191,7 +247,7 @@ function calculateBundlePrices(params, segments) {
|
|
|
191
247
|
total_price: price.totalPrice.toDecimalPlaces(2).toFixed(2),
|
|
192
248
|
quantity,
|
|
193
249
|
quotation_shelf_id: price.quotationShelfId,
|
|
194
|
-
source: price.segments.some(segment => segment.source ===
|
|
250
|
+
source: price.segments.some((segment) => segment.source === "quotation") ? "quotation" : "fallback",
|
|
195
251
|
segments: price.segments
|
|
196
252
|
};
|
|
197
253
|
});
|
|
@@ -224,8 +280,10 @@ function calculateBaseSalesProductBookingPrice(params) {
|
|
|
224
280
|
duration: params.duration,
|
|
225
281
|
quotation_shelf_id: price.quotationShelfId,
|
|
226
282
|
segments: price.segments,
|
|
227
|
-
...
|
|
228
|
-
product_bundle: bundlePrices
|
|
229
|
-
} : {})
|
|
283
|
+
...bundlePrices ? { product_bundle: bundlePrices } : {}
|
|
230
284
|
};
|
|
231
|
-
}
|
|
285
|
+
}
|
|
286
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
287
|
+
0 && (module.exports = {
|
|
288
|
+
calculateBaseSalesProductBookingPrice
|
|
289
|
+
});
|