@pisell/pisellos 0.0.568 → 0.0.569
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/model/strategy/adapter/promotion/evaluator.js +3 -2
- package/dist/model/strategy/adapter/walletPass/utils.js +7 -4
- package/dist/modules/BaseModule.d.ts +2 -2
- package/dist/modules/BaseModule.js +4 -4
- package/dist/modules/BookingContext/index.d.ts +48 -0
- package/dist/modules/BookingContext/index.js +566 -0
- package/dist/modules/BookingContext/types.d.ts +102 -0
- package/dist/modules/BookingContext/types.js +51 -0
- package/dist/modules/BookingContext/utils/buildCacheItemFromOrderLine.d.ts +16 -0
- package/dist/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +302 -0
- package/dist/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.d.ts +8 -0
- package/dist/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +149 -0
- package/dist/modules/BookingContext/utils/cacheItemToBookingInput.d.ts +76 -0
- package/dist/modules/BookingContext/utils/cacheItemToBookingInput.js +249 -0
- package/dist/modules/BookingContext/utils/flexible.d.ts +28 -0
- package/dist/modules/BookingContext/utils/flexible.js +56 -0
- package/dist/modules/BookingContext/utils/formatResourceList.d.ts +8 -0
- package/dist/modules/BookingContext/utils/formatResourceList.js +38 -0
- package/dist/modules/BookingContext/utils/index.d.ts +11 -0
- package/dist/modules/BookingContext/utils/index.js +11 -0
- package/dist/modules/BookingContext/utils/noResource.d.ts +13 -0
- package/dist/modules/BookingContext/utils/noResource.js +77 -0
- package/dist/modules/BookingContext/utils/orderLineDisplay.d.ts +1 -0
- package/dist/modules/BookingContext/utils/orderLineDisplay.js +36 -0
- package/dist/modules/BookingContext/utils/productExtend.d.ts +72 -0
- package/dist/modules/BookingContext/utils/productExtend.js +339 -0
- package/dist/modules/BookingContext/utils/resourceErrors.d.ts +41 -0
- package/dist/modules/BookingContext/utils/resourceErrors.js +74 -0
- package/dist/modules/BookingContext/utils/resourceSelection.d.ts +7 -0
- package/dist/modules/BookingContext/utils/resourceSelection.js +24 -0
- package/dist/modules/BookingContext/utils/resources.d.ts +80 -0
- package/dist/modules/BookingContext/utils/resources.js +486 -0
- package/dist/modules/BookingContext/utils/serviceTimes.d.ts +55 -0
- package/dist/modules/BookingContext/utils/serviceTimes.js +151 -0
- package/dist/modules/BookingContext/utils/timeSlices.d.ts +42 -0
- package/dist/modules/BookingContext/utils/timeSlices.js +100 -0
- package/dist/modules/Cart/utils/cartProduct.js +26 -5
- package/dist/modules/Cart/utils/changePrice.js +27 -20
- package/dist/modules/Customer/index.d.ts +20 -0
- package/dist/modules/Customer/index.js +172 -83
- package/dist/modules/Customer/types.d.ts +2 -0
- package/dist/modules/Discount/index.d.ts +2 -1
- package/dist/modules/Discount/index.js +37 -9
- package/dist/modules/Discount/types.d.ts +1 -0
- package/dist/modules/OpenData/index.d.ts +8 -0
- package/dist/modules/OpenData/index.js +36 -16
- package/dist/modules/Order/index.d.ts +448 -23
- package/dist/modules/Order/index.js +5417 -561
- package/dist/modules/Order/types.d.ts +693 -88
- package/dist/modules/Order/types.js +68 -1
- package/dist/modules/Order/utils/bundleDiscountHydration.d.ts +5 -0
- package/dist/modules/Order/utils/bundleDiscountHydration.js +144 -0
- package/dist/modules/Order/utils/manualProductDiscount.d.ts +106 -0
- package/dist/modules/Order/utils/manualProductDiscount.js +210 -0
- package/dist/modules/Order/utils/orderCollectionIdentity.d.ts +53 -0
- package/dist/modules/Order/utils/orderCollectionIdentity.js +405 -0
- package/dist/modules/Order/utils.d.ts +167 -18
- package/dist/modules/Order/utils.js +960 -165
- package/dist/modules/Payment/index.d.ts +10 -9
- package/dist/modules/Payment/index.js +465 -703
- package/dist/modules/Payment/types.d.ts +40 -16
- package/dist/modules/Payment/utils.d.ts +1 -1
- package/dist/modules/Payment/utils.js +4 -3
- package/dist/modules/Payment/walletpass.js +44 -29
- package/dist/modules/Product/types.d.ts +29 -7
- package/dist/modules/ProductList/index.d.ts +17 -13
- package/dist/modules/ProductList/index.js +184 -74
- package/dist/modules/ProductList/types.d.ts +17 -0
- package/dist/modules/Quotation/index.d.ts +22 -2
- package/dist/modules/Quotation/index.js +108 -42
- package/dist/modules/Quotation/types.d.ts +19 -0
- package/dist/modules/ResourcePlanner/index.d.ts +24 -0
- package/dist/modules/ResourcePlanner/index.js +181 -0
- package/dist/modules/ResourcePlanner/planner.d.ts +14 -0
- package/dist/modules/ResourcePlanner/planner.js +1069 -0
- package/dist/modules/ResourcePlanner/types.d.ts +227 -0
- package/dist/modules/ResourcePlanner/types.js +1 -0
- package/dist/modules/Rules/index.d.ts +8 -10
- package/dist/modules/Rules/index.js +221 -109
- package/dist/modules/Rules/types.d.ts +14 -3
- package/dist/modules/SalesSummary/index.d.ts +23 -26
- package/dist/modules/SalesSummary/index.js +152 -46
- package/dist/modules/SalesSummary/types.d.ts +9 -1
- package/dist/modules/SalesSummary/utils.d.ts +3 -22
- package/dist/modules/SalesSummary/utils.js +803 -163
- package/dist/modules/Schedule/getDateIsInSchedule.js +14 -7
- package/dist/modules/Schedule/index.d.ts +18 -5
- package/dist/modules/Schedule/index.js +78 -24
- package/dist/modules/Schedule/types.d.ts +2 -0
- package/dist/modules/Summary/index.js +4 -3
- package/dist/modules/SurchargeList/index.d.ts +18 -0
- package/dist/modules/SurchargeList/index.js +185 -0
- package/dist/modules/SurchargeList/types.d.ts +15 -0
- package/dist/modules/SurchargeList/types.js +1 -0
- package/dist/modules/index.d.ts +3 -0
- package/dist/modules/index.js +4 -1
- package/dist/plugins/app.d.ts +2 -0
- package/dist/plugins/request.d.ts +1 -0
- package/dist/server/index.d.ts +462 -8
- package/dist/server/index.js +6112 -656
- package/dist/server/modules/floor-plan/index.d.ts +39 -0
- package/dist/server/modules/floor-plan/index.js +595 -0
- package/dist/server/modules/floor-plan/types.d.ts +43 -0
- package/dist/server/modules/floor-plan/types.js +13 -0
- package/dist/server/modules/index.d.ts +7 -2
- package/dist/server/modules/index.js +6 -0
- package/dist/server/modules/order/index.d.ts +207 -14
- package/dist/server/modules/order/index.js +2326 -379
- package/dist/server/modules/order/types.d.ts +76 -5
- package/dist/server/modules/order/types.js +14 -1
- package/dist/server/modules/order/utils/filterBookings.d.ts +7 -1
- package/dist/server/modules/order/utils/filterBookings.js +118 -11
- package/dist/server/modules/order/utils/filterOrders.js +242 -14
- package/dist/server/modules/payment/index.d.ts +28 -0
- package/dist/server/modules/payment/index.js +305 -0
- package/dist/server/modules/payment/types.d.ts +9 -0
- package/dist/server/modules/payment/types.js +1 -0
- package/dist/server/modules/products/index.d.ts +105 -14
- package/dist/server/modules/products/index.js +1393 -516
- package/dist/server/modules/products/types.d.ts +34 -1
- package/dist/server/modules/products/types.js +4 -0
- package/dist/server/modules/quotation/index.d.ts +39 -0
- package/dist/server/modules/quotation/index.js +278 -66
- package/dist/server/modules/resource/index.d.ts +2 -3
- package/dist/server/modules/resource/index.js +108 -86
- package/dist/server/modules/schedule/index.d.ts +6 -4
- package/dist/server/modules/schedule/index.js +116 -85
- package/dist/server/test.json +713 -0
- package/dist/server/types.d.ts +2 -0
- package/dist/server/utils/product.js +2 -2
- package/dist/server/utils/small-ticket.d.ts +71 -0
- package/dist/server/utils/small-ticket.js +963 -0
- package/dist/solution/BaseSales/index.d.ts +378 -0
- package/dist/solution/BaseSales/index.js +4006 -0
- package/dist/solution/BaseSales/types.d.ts +394 -0
- package/dist/solution/BaseSales/types.js +40 -0
- package/dist/solution/BaseSales/utils/cartPromotion.d.ts +287 -0
- package/dist/solution/BaseSales/utils/cartPromotion.js +1450 -0
- package/dist/solution/BaseSales/utils/parseSalesResponse.d.ts +144 -0
- package/dist/solution/BaseSales/utils/parseSalesResponse.js +157 -0
- package/dist/solution/BaseSales/utils/quotationPrice.d.ts +18 -0
- package/dist/solution/BaseSales/utils/quotationPrice.js +250 -0
- package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +63 -0
- package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +218 -0
- package/dist/solution/BaseSales/utils.d.ts +40 -0
- package/dist/solution/BaseSales/utils.js +263 -0
- package/dist/solution/BookingByStep/index.d.ts +1 -1
- package/dist/solution/BookingTicket/index.d.ts +394 -25
- package/dist/solution/BookingTicket/index.js +2506 -443
- package/dist/solution/BookingTicket/types.d.ts +191 -6
- package/dist/solution/BookingTicket/types.js +83 -10
- package/dist/solution/BookingTicket/utils/addProductDecision.d.ts +117 -0
- package/dist/solution/BookingTicket/utils/addProductDecision.js +346 -0
- package/dist/solution/BookingTicket/utils/addTimeAvailability.d.ts +35 -0
- package/dist/solution/BookingTicket/utils/addTimeAvailability.js +95 -0
- package/dist/solution/BookingTicket/utils/bookingStatus.d.ts +77 -0
- package/dist/solution/BookingTicket/utils/bookingStatus.js +136 -0
- package/dist/solution/BookingTicket/utils/cartView.d.ts +29 -0
- package/dist/solution/BookingTicket/utils/cartView.js +209 -0
- package/dist/solution/BookingTicket/utils/exampleData.d.ts +123 -0
- package/dist/solution/BookingTicket/utils/exampleData.js +183 -0
- package/dist/solution/BookingTicket/utils/orderCustomer.d.ts +4 -0
- package/dist/solution/BookingTicket/utils/orderCustomer.js +31 -0
- package/dist/solution/BookingTicket/utils/resolveBestAddTimePlan.d.ts +185 -0
- package/dist/solution/BookingTicket/utils/resolveBestAddTimePlan.js +438 -0
- package/dist/solution/BookingTicket/utils/scan/applyGlobalScan.d.ts +36 -0
- package/dist/solution/BookingTicket/utils/scan/applyGlobalScan.js +400 -0
- package/dist/solution/BookingTicket/utils/scan/cloudSearch.d.ts +4 -0
- package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +41 -1
- package/dist/solution/BookingTicket/utils/scan/formatGlobalScan.d.ts +32 -0
- package/dist/solution/BookingTicket/utils/scan/formatGlobalScan.js +56 -0
- package/dist/solution/BookingTicket/utils/scan/handleScan.d.ts +3 -1
- package/dist/solution/BookingTicket/utils/scan/handleScan.js +11 -3
- package/dist/solution/BookingTicket/utils/scan/index.d.ts +5 -0
- package/dist/solution/BookingTicket/utils/scan/index.js +20 -8
- package/dist/solution/BookingTicket/utils/scan/scanProductValues.d.ts +21 -0
- package/dist/solution/BookingTicket/utils/scan/scanProductValues.js +150 -0
- package/dist/solution/BookingTicket/utils/sessionCatalogStale.d.ts +23 -0
- package/dist/solution/BookingTicket/utils/sessionCatalogStale.js +78 -0
- package/dist/solution/Checkout/index.d.ts +1 -0
- package/dist/solution/Checkout/index.js +25 -34
- package/dist/solution/Checkout/utils/index.js +4 -4
- package/dist/solution/RegisterAndLogin/config.js +2 -10
- package/dist/solution/Sales/index.d.ts +50 -5
- package/dist/solution/Sales/index.js +484 -92
- package/dist/solution/Sales/types.d.ts +26 -2
- package/dist/solution/ScanOrder/index.d.ts +27 -21
- package/dist/solution/ScanOrder/index.js +499 -434
- package/dist/solution/ScanOrder/types.d.ts +33 -11
- package/dist/solution/ScanOrder/types.js +4 -5
- package/dist/solution/ScanOrder/utils.d.ts +4 -1
- package/dist/solution/ScanOrder/utils.js +109 -34
- package/dist/solution/ShopDiscount/index.js +4 -4
- package/dist/solution/UnifiedBookingSales/index.d.ts +183 -0
- package/dist/solution/UnifiedBookingSales/index.js +1871 -0
- package/dist/solution/UnifiedBookingSales/types.d.ts +143 -0
- package/dist/solution/UnifiedBookingSales/types.js +11 -0
- package/dist/solution/VenueBooking/index.d.ts +29 -20
- package/dist/solution/VenueBooking/index.js +301 -213
- package/dist/solution/VenueBooking/sales-section-4-annotated.json +0 -2
- package/dist/solution/VenueBooking/utils/slotMerge.d.ts +6 -0
- package/dist/solution/VenueBooking/utils/slotMerge.js +9 -3
- package/dist/solution/index.d.ts +2 -0
- package/dist/solution/index.js +3 -1
- package/dist/types/index.d.ts +11 -1
- package/lib/model/strategy/adapter/promotion/evaluator.js +3 -2
- package/lib/model/strategy/adapter/walletPass/utils.js +6 -4
- package/lib/modules/BaseModule.d.ts +2 -2
- package/lib/modules/BaseModule.js +4 -4
- package/lib/modules/BookingContext/index.d.ts +48 -0
- package/lib/modules/BookingContext/index.js +390 -0
- package/lib/modules/BookingContext/types.d.ts +102 -0
- package/lib/modules/BookingContext/types.js +48 -0
- package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.d.ts +16 -0
- package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +286 -0
- package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.d.ts +8 -0
- package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +148 -0
- package/lib/modules/BookingContext/utils/cacheItemToBookingInput.d.ts +76 -0
- package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +242 -0
- package/lib/modules/BookingContext/utils/flexible.d.ts +28 -0
- package/lib/modules/BookingContext/utils/flexible.js +63 -0
- package/lib/modules/BookingContext/utils/formatResourceList.d.ts +8 -0
- package/lib/modules/BookingContext/utils/formatResourceList.js +35 -0
- package/lib/modules/BookingContext/utils/index.d.ts +11 -0
- package/lib/modules/BookingContext/utils/index.js +126 -0
- package/lib/modules/BookingContext/utils/noResource.d.ts +13 -0
- package/lib/modules/BookingContext/utils/noResource.js +78 -0
- package/lib/modules/BookingContext/utils/orderLineDisplay.d.ts +1 -0
- package/lib/modules/BookingContext/utils/orderLineDisplay.js +29 -0
- package/lib/modules/BookingContext/utils/productExtend.d.ts +72 -0
- package/lib/modules/BookingContext/utils/productExtend.js +330 -0
- package/lib/modules/BookingContext/utils/resourceErrors.d.ts +41 -0
- package/lib/modules/BookingContext/utils/resourceErrors.js +80 -0
- package/lib/modules/BookingContext/utils/resourceSelection.d.ts +7 -0
- package/lib/modules/BookingContext/utils/resourceSelection.js +24 -0
- package/lib/modules/BookingContext/utils/resources.d.ts +80 -0
- package/lib/modules/BookingContext/utils/resources.js +419 -0
- package/lib/modules/BookingContext/utils/serviceTimes.d.ts +55 -0
- package/lib/modules/BookingContext/utils/serviceTimes.js +161 -0
- package/lib/modules/BookingContext/utils/timeSlices.d.ts +42 -0
- package/lib/modules/BookingContext/utils/timeSlices.js +114 -0
- package/lib/modules/Cart/utils/cartProduct.js +27 -5
- package/lib/modules/Cart/utils/changePrice.js +20 -14
- package/lib/modules/Customer/index.d.ts +20 -0
- package/lib/modules/Customer/index.js +63 -10
- package/lib/modules/Customer/types.d.ts +2 -0
- package/lib/modules/Discount/index.d.ts +2 -1
- package/lib/modules/Discount/index.js +18 -2
- package/lib/modules/Discount/types.d.ts +1 -0
- package/lib/modules/OpenData/index.d.ts +8 -0
- package/lib/modules/OpenData/index.js +21 -3
- package/lib/modules/Order/index.d.ts +448 -23
- package/lib/modules/Order/index.js +3641 -308
- package/lib/modules/Order/types.d.ts +693 -88
- package/lib/modules/Order/types.js +55 -1
- package/lib/modules/Order/utils/bundleDiscountHydration.d.ts +5 -0
- package/lib/modules/Order/utils/bundleDiscountHydration.js +106 -0
- package/lib/modules/Order/utils/manualProductDiscount.d.ts +106 -0
- package/lib/modules/Order/utils/manualProductDiscount.js +207 -0
- package/lib/modules/Order/utils/orderCollectionIdentity.d.ts +53 -0
- package/lib/modules/Order/utils/orderCollectionIdentity.js +353 -0
- package/lib/modules/Order/utils.d.ts +167 -18
- package/lib/modules/Order/utils.js +974 -138
- package/lib/modules/Payment/index.d.ts +10 -9
- package/lib/modules/Payment/index.js +30 -124
- package/lib/modules/Payment/types.d.ts +40 -16
- package/lib/modules/Payment/utils.d.ts +1 -1
- package/lib/modules/Payment/utils.js +4 -3
- package/lib/modules/Payment/walletpass.js +16 -6
- package/lib/modules/Product/types.d.ts +29 -7
- package/lib/modules/ProductList/index.d.ts +17 -13
- package/lib/modules/ProductList/index.js +92 -51
- package/lib/modules/ProductList/types.d.ts +17 -0
- package/lib/modules/Quotation/index.d.ts +22 -2
- package/lib/modules/Quotation/index.js +76 -20
- package/lib/modules/Quotation/types.d.ts +19 -0
- package/lib/modules/ResourcePlanner/index.d.ts +24 -0
- package/lib/modules/ResourcePlanner/index.js +147 -0
- package/lib/modules/ResourcePlanner/planner.d.ts +14 -0
- package/lib/modules/ResourcePlanner/planner.js +895 -0
- package/lib/modules/ResourcePlanner/types.d.ts +227 -0
- package/lib/modules/ResourcePlanner/types.js +5 -0
- package/lib/modules/Rules/index.d.ts +8 -10
- package/lib/modules/Rules/index.js +152 -60
- package/lib/modules/Rules/types.d.ts +14 -3
- package/lib/modules/SalesSummary/index.d.ts +23 -26
- package/lib/modules/SalesSummary/index.js +84 -16
- package/lib/modules/SalesSummary/types.d.ts +9 -1
- package/lib/modules/SalesSummary/utils.d.ts +3 -22
- package/lib/modules/SalesSummary/utils.js +616 -111
- package/lib/modules/Schedule/getDateIsInSchedule.js +14 -7
- package/lib/modules/Schedule/index.d.ts +18 -5
- package/lib/modules/Schedule/index.js +49 -14
- package/lib/modules/Schedule/types.d.ts +2 -0
- package/lib/modules/Summary/index.js +2 -2
- package/lib/modules/SurchargeList/index.d.ts +18 -0
- package/lib/modules/SurchargeList/index.js +95 -0
- package/lib/modules/SurchargeList/types.d.ts +15 -0
- package/lib/modules/SurchargeList/types.js +5 -0
- package/lib/modules/index.d.ts +3 -0
- package/lib/modules/index.js +33 -0
- package/lib/plugins/app.d.ts +2 -0
- package/lib/plugins/request.d.ts +1 -0
- package/lib/server/index.d.ts +462 -8
- package/lib/server/index.js +3901 -205
- package/lib/server/modules/floor-plan/index.d.ts +39 -0
- package/lib/server/modules/floor-plan/index.js +306 -0
- package/lib/server/modules/floor-plan/types.d.ts +43 -0
- package/lib/server/modules/floor-plan/types.js +19 -0
- package/lib/server/modules/index.d.ts +7 -2
- package/lib/server/modules/index.js +21 -0
- package/lib/server/modules/order/index.d.ts +207 -14
- package/lib/server/modules/order/index.js +1324 -141
- package/lib/server/modules/order/types.d.ts +76 -5
- package/lib/server/modules/order/types.js +11 -1
- package/lib/server/modules/order/utils/filterBookings.d.ts +7 -1
- package/lib/server/modules/order/utils/filterBookings.js +119 -11
- package/lib/server/modules/order/utils/filterOrders.js +238 -13
- package/lib/server/modules/payment/index.d.ts +28 -0
- package/lib/server/modules/payment/index.js +168 -0
- package/lib/server/modules/payment/types.d.ts +9 -0
- package/lib/server/modules/payment/types.js +5 -0
- package/lib/server/modules/products/index.d.ts +105 -14
- package/lib/server/modules/products/index.js +588 -97
- package/lib/server/modules/products/types.d.ts +34 -1
- package/lib/server/modules/products/types.js +3 -0
- package/lib/server/modules/quotation/index.d.ts +39 -0
- package/lib/server/modules/quotation/index.js +145 -1
- package/lib/server/modules/resource/index.d.ts +2 -3
- package/lib/server/modules/resource/index.js +71 -45
- package/lib/server/modules/schedule/index.d.ts +6 -4
- package/lib/server/modules/schedule/index.js +55 -44
- package/lib/server/test.json +713 -0
- package/lib/server/types.d.ts +2 -0
- package/lib/server/utils/product.js +2 -2
- package/lib/server/utils/small-ticket.d.ts +71 -0
- package/lib/server/utils/small-ticket.js +926 -0
- package/lib/solution/BaseSales/index.d.ts +378 -0
- package/lib/solution/BaseSales/index.js +2367 -0
- package/lib/solution/BaseSales/types.d.ts +394 -0
- package/lib/solution/BaseSales/types.js +47 -0
- package/lib/solution/BaseSales/utils/cartPromotion.d.ts +287 -0
- package/lib/solution/BaseSales/utils/cartPromotion.js +1155 -0
- package/lib/solution/BaseSales/utils/parseSalesResponse.d.ts +144 -0
- package/lib/solution/BaseSales/utils/parseSalesResponse.js +140 -0
- package/lib/solution/BaseSales/utils/quotationPrice.d.ts +18 -0
- package/lib/solution/BaseSales/utils/quotationPrice.js +231 -0
- package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.d.ts +63 -0
- package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +215 -0
- package/lib/solution/BaseSales/utils.d.ts +40 -0
- package/lib/solution/BaseSales/utils.js +259 -0
- package/lib/solution/BookingByStep/index.d.ts +1 -1
- package/lib/solution/BookingTicket/index.d.ts +394 -25
- package/lib/solution/BookingTicket/index.js +1350 -76
- package/lib/solution/BookingTicket/types.d.ts +191 -6
- package/lib/solution/BookingTicket/types.js +71 -10
- package/lib/solution/BookingTicket/utils/addProductDecision.d.ts +117 -0
- package/lib/solution/BookingTicket/utils/addProductDecision.js +353 -0
- package/lib/solution/BookingTicket/utils/addTimeAvailability.d.ts +35 -0
- package/lib/solution/BookingTicket/utils/addTimeAvailability.js +94 -0
- package/lib/solution/BookingTicket/utils/bookingStatus.d.ts +77 -0
- package/lib/solution/BookingTicket/utils/bookingStatus.js +136 -0
- package/lib/solution/BookingTicket/utils/cartView.d.ts +29 -0
- package/lib/solution/BookingTicket/utils/cartView.js +200 -0
- package/lib/solution/BookingTicket/utils/exampleData.d.ts +123 -0
- package/lib/solution/BookingTicket/utils/exampleData.js +185 -0
- package/lib/solution/BookingTicket/utils/orderCustomer.d.ts +4 -0
- package/lib/solution/BookingTicket/utils/orderCustomer.js +35 -0
- package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.d.ts +185 -0
- package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +387 -0
- package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.d.ts +36 -0
- package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +220 -0
- package/lib/solution/BookingTicket/utils/scan/cloudSearch.d.ts +4 -0
- package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +24 -3
- package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.d.ts +32 -0
- package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +64 -0
- package/lib/solution/BookingTicket/utils/scan/handleScan.d.ts +3 -1
- package/lib/solution/BookingTicket/utils/scan/handleScan.js +4 -2
- package/lib/solution/BookingTicket/utils/scan/index.d.ts +5 -0
- package/lib/solution/BookingTicket/utils/scan/index.js +14 -2
- package/lib/solution/BookingTicket/utils/scan/scanProductValues.d.ts +21 -0
- package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +115 -0
- package/lib/solution/BookingTicket/utils/sessionCatalogStale.d.ts +23 -0
- package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +83 -0
- package/lib/solution/Checkout/index.d.ts +1 -0
- package/lib/solution/Checkout/index.js +18 -19
- package/lib/solution/Checkout/utils/index.js +4 -4
- package/lib/solution/RegisterAndLogin/config.js +2 -10
- package/lib/solution/Sales/index.d.ts +50 -5
- package/lib/solution/Sales/index.js +296 -39
- package/lib/solution/Sales/types.d.ts +26 -2
- package/lib/solution/ScanOrder/index.d.ts +27 -21
- package/lib/solution/ScanOrder/index.js +144 -103
- package/lib/solution/ScanOrder/types.d.ts +33 -11
- package/lib/solution/ScanOrder/types.js +4 -5
- package/lib/solution/ScanOrder/utils.d.ts +4 -1
- package/lib/solution/ScanOrder/utils.js +98 -26
- package/lib/solution/ShopDiscount/index.js +3 -3
- package/lib/solution/UnifiedBookingSales/index.d.ts +183 -0
- package/lib/solution/UnifiedBookingSales/index.js +1050 -0
- package/lib/solution/UnifiedBookingSales/types.d.ts +143 -0
- package/lib/solution/UnifiedBookingSales/types.js +14 -0
- package/lib/solution/VenueBooking/index.d.ts +29 -20
- package/lib/solution/VenueBooking/index.js +169 -94
- package/lib/solution/VenueBooking/sales-section-4-annotated.json +0 -2
- package/lib/solution/VenueBooking/utils/slotMerge.d.ts +6 -0
- package/lib/solution/VenueBooking/utils/slotMerge.js +9 -3
- package/lib/solution/index.d.ts +2 -0
- package/lib/solution/index.js +22 -0
- package/lib/types/index.d.ts +11 -1
- package/package.json +1 -1
- package/dist/solution/Checkout/appointmentDemo.json +0 -1
- package/lib/solution/Checkout/appointmentDemo.json +0 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.buildSessionCatalogStaleInfo = buildSessionCatalogStaleInfo;
|
|
7
|
+
exports.isSessionCatalogDateStale = isSessionCatalogDateStale;
|
|
8
|
+
var _dayjs = _interopRequireDefault(require("dayjs"));
|
|
9
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
const SESSION_EXTENSION_TYPES = ['session_product', 'session_ticket'];
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* 是否为 session 商品。
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* getIsSessionProduct({ extension_type: 'session_ticket' }); // true
|
|
17
|
+
*/
|
|
18
|
+
function getIsSessionProduct(product) {
|
|
19
|
+
return SESSION_EXTENSION_TYPES.includes(product?.extension_type);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* 从 session 快照解析日历日 YYYY-MM-DD。
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* resolveSessionCalendarDay({ start_at: '2026-06-05 10:00:00' }); // '2026-06-05'
|
|
27
|
+
*/
|
|
28
|
+
function resolveSessionCalendarDay(session) {
|
|
29
|
+
if (!session) return null;
|
|
30
|
+
const raw = session.start_at ?? session.end_at;
|
|
31
|
+
if (!raw) return null;
|
|
32
|
+
const parsed = (0, _dayjs.default)(raw);
|
|
33
|
+
return parsed.isValid() ? parsed.format('YYYY-MM-DD') : null;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* 将 booking / TimeBar 日期规范为 YYYY-MM-DD。
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* formatScheduleCalendarDay('2026-06-05 19:01:18'); // '2026-06-05'
|
|
41
|
+
*/
|
|
42
|
+
function formatScheduleCalendarDay(date) {
|
|
43
|
+
if (date == null || date === '') return null;
|
|
44
|
+
const parsed = (0, _dayjs.default)(date);
|
|
45
|
+
return parsed.isValid() ? parsed.format('YYYY-MM-DD') : null;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* 判断 session 商品 catalog 中的 session 日历日是否与当前 TimeBar / bookingDate 不一致。
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* isSessionCatalogDateStale(product, '2026-06-05 19:01:18');
|
|
52
|
+
* // session 为 2026-06-04 → true;一致或无 session 快照 → false
|
|
53
|
+
*/
|
|
54
|
+
function isSessionCatalogDateStale(product, bookingDate) {
|
|
55
|
+
if (!getIsSessionProduct(product)) {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
const timeBarDay = formatScheduleCalendarDay(bookingDate);
|
|
59
|
+
if (!timeBarDay) {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
const sessionDay = resolveSessionCalendarDay(product.cartDetailValue?.session);
|
|
63
|
+
if (!sessionDay) {
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
return sessionDay !== timeBarDay;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* 组装 session catalog 日期不一致时的日志 metadata。
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* buildSessionCatalogStaleInfo(product, '2026-06-05 19:01:18');
|
|
74
|
+
*/
|
|
75
|
+
function buildSessionCatalogStaleInfo(product, bookingDate) {
|
|
76
|
+
return {
|
|
77
|
+
productId: product?.id ?? null,
|
|
78
|
+
productTitle: product?.title ?? product?.name ?? null,
|
|
79
|
+
sessionDay: resolveSessionCalendarDay(product.cartDetailValue?.session),
|
|
80
|
+
timeBarDay: formatScheduleCalendarDay(bookingDate),
|
|
81
|
+
bookingDate
|
|
82
|
+
};
|
|
83
|
+
}
|
|
@@ -91,10 +91,11 @@ class CheckoutImpl extends _BaseModule.BaseModule {
|
|
|
91
91
|
await this.initializeSubModules(core, options);
|
|
92
92
|
|
|
93
93
|
// 预加载支付方式(利用缓存机制)
|
|
94
|
-
await this.preloadPaymentMethods();
|
|
94
|
+
// await this.preloadPaymentMethods();
|
|
95
95
|
|
|
96
96
|
// 清理过期的已同步订单数据
|
|
97
|
-
await this.cleanupExpiredOrdersAsync();
|
|
97
|
+
// await this.cleanupExpiredOrdersAsync();
|
|
98
|
+
|
|
98
99
|
await this.core.effects.emit(`${this.name}:onCheckoutInitialized`, {
|
|
99
100
|
timestamp: Date.now()
|
|
100
101
|
});
|
|
@@ -1945,42 +1946,37 @@ class CheckoutImpl extends _BaseModule.BaseModule {
|
|
|
1945
1946
|
try {
|
|
1946
1947
|
// 获取剩余待付金额
|
|
1947
1948
|
const remainingAmountStr = await this.calculateRemainingAmountAsync();
|
|
1948
|
-
|
|
1949
|
+
const remainingAmount = new _decimal.default(remainingAmountStr);
|
|
1949
1950
|
const cashAmount = new _decimal.default(String(paymentItem.amount));
|
|
1951
|
+
const roundingAmount = new _decimal.default(String(paymentItem.rounding_amount || '0'));
|
|
1950
1952
|
|
|
1951
1953
|
// 如果现金金额小于等于剩余待付金额,无需找零
|
|
1952
1954
|
if (cashAmount.lte(remainingAmount)) {
|
|
1953
1955
|
return paymentItem;
|
|
1954
1956
|
}
|
|
1955
1957
|
|
|
1956
|
-
//
|
|
1957
|
-
const
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
if (Number(paymentItem.rounding_amount) > 0) {
|
|
1961
|
-
if (Number(paymentItem.rounding_amount) === changeAmount.toNumber()) {
|
|
1962
|
-
return paymentItem;
|
|
1963
|
-
} else {
|
|
1964
|
-
// 如果不等于,则remainingAmount需要加上 rounding_amount,避免这里被改为未舍入金额
|
|
1965
|
-
remainingAmount = remainingAmount.add(new _decimal.default(paymentItem.rounding_amount || '0'));
|
|
1966
|
-
}
|
|
1958
|
+
// 超付场景使用 rounding 回算应收金额(兼容 UI 已做抹零 + 允许超付)
|
|
1959
|
+
const chargeAmount = _decimal.default.max(remainingAmount.add(roundingAmount), new _decimal.default(0));
|
|
1960
|
+
if (cashAmount.lte(chargeAmount)) {
|
|
1961
|
+
return paymentItem;
|
|
1967
1962
|
}
|
|
1963
|
+
const changeAmount = cashAmount.sub(chargeAmount);
|
|
1968
1964
|
|
|
1969
1965
|
// 创建包含找零信息的支付项
|
|
1970
1966
|
const processedPaymentItem = {
|
|
1971
1967
|
...paymentItem,
|
|
1972
|
-
amount:
|
|
1973
|
-
// 将 amount 设置为剩余待付金额,保留2位小数
|
|
1968
|
+
amount: chargeAmount.toFixed(2),
|
|
1974
1969
|
metadata: {
|
|
1975
1970
|
...paymentItem.metadata,
|
|
1976
1971
|
actual_paid_amount: cashAmount.toNumber(),
|
|
1977
|
-
|
|
1978
|
-
change_given_amount: changeAmount.toNumber() // 找零金额
|
|
1972
|
+
change_given_amount: changeAmount.toNumber()
|
|
1979
1973
|
}
|
|
1980
1974
|
};
|
|
1981
1975
|
this.logInfo('Cash payment with change processed', {
|
|
1982
1976
|
originalAmount: cashAmount.toFixed(2),
|
|
1983
|
-
|
|
1977
|
+
remainingAmount: remainingAmount.toFixed(2),
|
|
1978
|
+
roundingAmount: roundingAmount.toFixed(2),
|
|
1979
|
+
chargedAmount: chargeAmount.toFixed(2),
|
|
1984
1980
|
changeAmount: changeAmount.toFixed(2),
|
|
1985
1981
|
paymentCode: paymentItem.code,
|
|
1986
1982
|
paymentType: paymentItem.type,
|
|
@@ -1988,6 +1984,8 @@ class CheckoutImpl extends _BaseModule.BaseModule {
|
|
|
1988
1984
|
decimalPrecisionCheck: {
|
|
1989
1985
|
cashAmountPrecise: cashAmount.toString(),
|
|
1990
1986
|
remainingAmountPrecise: remainingAmount.toString(),
|
|
1987
|
+
roundingAmountPrecise: roundingAmount.toString(),
|
|
1988
|
+
chargeAmountPrecise: chargeAmount.toString(),
|
|
1991
1989
|
changeAmountPrecise: changeAmount.toString()
|
|
1992
1990
|
}
|
|
1993
1991
|
});
|
|
@@ -2017,6 +2015,7 @@ class CheckoutImpl extends _BaseModule.BaseModule {
|
|
|
2017
2015
|
*
|
|
2018
2016
|
* 删除本地 IndexDB 中超过指定天数且已同步到后端的订单数据
|
|
2019
2017
|
*/
|
|
2018
|
+
/** @deprecated */
|
|
2020
2019
|
async cleanupExpiredOrdersAsync() {
|
|
2021
2020
|
try {
|
|
2022
2021
|
// 检查是否启用了清理功能
|
|
@@ -53,10 +53,10 @@ function validateCheckoutData(params) {
|
|
|
53
53
|
});
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
// 验证订单类型
|
|
57
|
-
if (params.orderType && !['virtual', 'appointment_booking'].includes(params.orderType)) {
|
|
58
|
-
|
|
59
|
-
}
|
|
56
|
+
// // 验证订单类型
|
|
57
|
+
// if (params.orderType && !['virtual', 'appointment_booking'].includes(params.orderType)) {
|
|
58
|
+
// errors.push('订单类型无效,必须是 virtual 或 appointment_booking');
|
|
59
|
+
// }
|
|
60
60
|
|
|
61
61
|
// 验证平台类型
|
|
62
62
|
if (params.platform && !['pc', 'h5'].includes(params.platform)) {
|
|
@@ -589,11 +589,7 @@ const webposConfig = {
|
|
|
589
589
|
// withCredentials: true,
|
|
590
590
|
prefix: false,
|
|
591
591
|
isDefaultSaasDomain: true,
|
|
592
|
-
cache:
|
|
593
|
-
mode: "remote_local",
|
|
594
|
-
type: "indexDB",
|
|
595
|
-
cacheKeyData: values
|
|
596
|
-
}
|
|
592
|
+
cache: false
|
|
597
593
|
})
|
|
598
594
|
},
|
|
599
595
|
emailCodeRegister: {
|
|
@@ -856,11 +852,7 @@ const shopWebposConfig = {
|
|
|
856
852
|
options: values => ({
|
|
857
853
|
// withCredentials: true,
|
|
858
854
|
prefix: false,
|
|
859
|
-
cache:
|
|
860
|
-
mode: "remote_local",
|
|
861
|
-
type: "indexDB",
|
|
862
|
-
cacheKeyData: values
|
|
863
|
-
}
|
|
855
|
+
cache: false
|
|
864
856
|
})
|
|
865
857
|
},
|
|
866
858
|
emailCodeRegister: {
|
|
@@ -2,7 +2,7 @@ import dayjs from 'dayjs';
|
|
|
2
2
|
import { Module, ModuleOptions, PisellCore } from '../../types';
|
|
3
3
|
import { BaseModule } from '../../modules/BaseModule';
|
|
4
4
|
import type { RequestPlugin } from '../../plugins/request';
|
|
5
|
-
import { SalesState, SalesModuleAPI, Reservation, SalesResourceBookingItem, SalesTimelineHighlights } from './types';
|
|
5
|
+
import { SalesState, SalesModuleAPI, Reservation, SalesResourceBookingItem, SalesResourceBookingItemWithGroups, SalesTimelineHighlights, ChangeBookingStatusParams, GetResourceBookingItemParams } from './types';
|
|
6
6
|
import type { BookingData } from '../../server/modules/order/types';
|
|
7
7
|
export * from './types';
|
|
8
8
|
/**
|
|
@@ -14,6 +14,7 @@ export * from './types';
|
|
|
14
14
|
* - 基础生命周期占位
|
|
15
15
|
*
|
|
16
16
|
* 不提前实现 store 编排、初始化流程细节、状态计算逻辑。
|
|
17
|
+
* TIPS:这块应该改名叫 ReservationModule 更合适一些,目前这边只服务于 Reservation 的 floormap 展示。
|
|
17
18
|
*/
|
|
18
19
|
export declare class SalesImpl extends BaseModule implements Module, SalesModuleAPI {
|
|
19
20
|
protected defaultName: string;
|
|
@@ -24,6 +25,7 @@ export declare class SalesImpl extends BaseModule implements Module, SalesModule
|
|
|
24
25
|
protected options: ModuleOptions;
|
|
25
26
|
protected otherParams: Record<string, any>;
|
|
26
27
|
protected request: RequestPlugin;
|
|
28
|
+
private logger;
|
|
27
29
|
constructor(name?: string, version?: string);
|
|
28
30
|
initialize(core: PisellCore, options?: ModuleOptions): Promise<void>;
|
|
29
31
|
/** 获取当前 store 快照 */
|
|
@@ -38,6 +40,8 @@ export declare class SalesImpl extends BaseModule implements Module, SalesModule
|
|
|
38
40
|
setReservationList(reservationList: Reservation[]): Reservation[];
|
|
39
41
|
/** 重置预约列表为空 */
|
|
40
42
|
resetReservationList(): Reservation[];
|
|
43
|
+
cancelOrder(orderIds: Array<number | string>): Promise<any>;
|
|
44
|
+
changeBookingStatus(params: ChangeBookingStatusParams): Promise<any>;
|
|
41
45
|
destroy(): Promise<void>;
|
|
42
46
|
/**
|
|
43
47
|
* 时间轴粒度(分钟)
|
|
@@ -76,6 +80,14 @@ export declare class SalesImpl extends BaseModule implements Module, SalesModule
|
|
|
76
80
|
*/
|
|
77
81
|
private getBookingStatus;
|
|
78
82
|
private getResourceId;
|
|
83
|
+
private getBookingAppointmentStatus;
|
|
84
|
+
private isBookingIncludedInStats;
|
|
85
|
+
private getBookingOrderPaymentStatus;
|
|
86
|
+
private countBookingOrders;
|
|
87
|
+
private countCompletedBookings;
|
|
88
|
+
private groupBookingsByResource;
|
|
89
|
+
private isBookingMatchedResource;
|
|
90
|
+
private sortMatchedBookings;
|
|
79
91
|
/**
|
|
80
92
|
* 资源下 bookings 的返回裁剪策略:
|
|
81
93
|
* 1) 优先返回当前时刻正在进行中的预约(允许并发返回多条)
|
|
@@ -85,12 +97,45 @@ export declare class SalesImpl extends BaseModule implements Module, SalesModule
|
|
|
85
97
|
*/
|
|
86
98
|
private pickBookingsForCurrentPoint;
|
|
87
99
|
/**
|
|
88
|
-
*
|
|
89
|
-
* -
|
|
90
|
-
* -
|
|
100
|
+
* 计算 booking 在 current 时刻的执行进度百分比(0-100)。
|
|
101
|
+
* - startAt/endAt 非法或 totalMinutes <= 0 返回 0
|
|
102
|
+
* - current 早于 startAt 返回 0,晚于 endAt 返回 100
|
|
103
|
+
*/
|
|
104
|
+
private calcProgressPercent;
|
|
105
|
+
/**
|
|
106
|
+
* 标准化单条 booking 的分发入口:
|
|
107
|
+
* - 统一过滤 rejected / cancelled(视为没来过)
|
|
108
|
+
* - current === deviceCurrent 走实时分支(信任 appointment_status)
|
|
109
|
+
* - 否则走快照分支(纯时间窗判定,忽略 appointment_status 的 arrived/started/completed 差异)
|
|
91
110
|
*/
|
|
92
111
|
private normalizeMatchedBooking;
|
|
93
|
-
|
|
112
|
+
private normalizeResourceBookings;
|
|
113
|
+
private buildCompletedBooking;
|
|
114
|
+
/**
|
|
115
|
+
* 实时模式(current === deviceCurrent):信任 appointment_status
|
|
116
|
+
* - 过滤 new / completed(实时视角下视为非活跃数据)
|
|
117
|
+
* - status 由 getBookingStatus 映射
|
|
118
|
+
* - occupied 且 current > endAt 标记 isTimeout + timeoutTime
|
|
119
|
+
* - reserved 且 current < startAt 标记 not_arrived,否则标记 late
|
|
120
|
+
*/
|
|
121
|
+
private buildRealtimeBooking;
|
|
122
|
+
/**
|
|
123
|
+
* 快照模式(current !== deviceCurrent,过去或未来):忽略 appointment_status
|
|
124
|
+
* 的实时态差异,仅按 booking 时间窗判定,为 current 提供时间点快照视图。
|
|
125
|
+
*
|
|
126
|
+
* - new:视作尚未成为真实预约,过滤
|
|
127
|
+
* - locked:保留 status=locked,不计算 timeout/late/progress
|
|
128
|
+
* - 其他非终态:
|
|
129
|
+
* - startAt/endAt 非法 → 过滤
|
|
130
|
+
* - current > endAt → 过滤(已结束,不入池)
|
|
131
|
+
* - current ∈ [startAt, endAt] → occupied,附带 progressPercent
|
|
132
|
+
* - current < startAt → reserved + not_arrived,附带 remainingReserveTime
|
|
133
|
+
*
|
|
134
|
+
* 快照模式下 isTimeout 恒为 false,lateTime / timeoutTime 始终置空。
|
|
135
|
+
*/
|
|
136
|
+
private buildSnapshotBooking;
|
|
137
|
+
getResourceBookingList(currentTime: string, bookingList?: BookingData[], deviceTime?: string): Promise<SalesResourceBookingItem[]>;
|
|
138
|
+
getResourceBookingItem(params: GetResourceBookingItemParams): Promise<SalesResourceBookingItemWithGroups | null>;
|
|
94
139
|
}
|
|
95
140
|
export { SalesImpl as Sales };
|
|
96
141
|
export default SalesImpl;
|