@pisell/pisellos 2.3.74 → 2.3.76
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 +6 -10
- package/dist/model/strategy/adapter/promotion/index.js +9 -0
- package/dist/model/strategy/adapter/walletPass/example.js +3 -26
- package/dist/model/strategy/strategy-example.js +5 -19
- package/dist/modules/Cart/index.js +0 -3
- package/dist/modules/Cart/utils/cartProduct.js +0 -1
- package/dist/modules/Date/index.js +1 -5
- package/dist/modules/Discount/index.js +2 -4
- package/dist/modules/OpenData/index.js +0 -2
- package/dist/modules/Order/index.d.ts +1 -1
- package/dist/modules/Order/index.js +75 -91
- package/dist/modules/Order/types.d.ts +3 -1
- package/dist/modules/Payment/index.js +97 -162
- package/dist/modules/Rules/index.js +1 -4
- package/dist/modules/Schedule/index.js +0 -1
- package/dist/modules/Schedule/utils.js +0 -1
- package/dist/modules/Step/index.js +0 -1
- package/dist/plugins/request.js +1 -4
- package/dist/plugins/window.js +2 -6
- package/dist/server/index.js +97 -129
- package/dist/server/modules/menu/index.js +32 -41
- package/dist/server/modules/order/index.js +2 -4
- package/dist/server/modules/products/index.js +24 -42
- package/dist/server/modules/quotation/index.js +29 -38
- package/dist/server/modules/resource/index.js +3 -4
- package/dist/server/modules/schedule/index.js +27 -35
- package/dist/server/utils/product.js +0 -1
- package/dist/solution/BaseSales/index.js +100 -72
- package/dist/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
- package/dist/solution/BaseSales/utils/cartPromotion.js +15 -6
- package/dist/solution/BookingByStep/index.js +7 -59
- package/dist/solution/BookingByStep/utils/capacity.js +1 -11
- package/dist/solution/BookingByStep/utils/resources.js +1 -3
- package/dist/solution/BookingByStep/utils/timeslots.js +2 -43
- package/dist/solution/BookingTicket/index.js +0 -2
- package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +6 -7
- package/dist/solution/BookingTicket/utils/scan/handleScan.js +25 -31
- package/dist/solution/BookingTicket/utils/scan/index.js +6 -10
- package/dist/solution/BuyTickets/index.js +9 -12
- package/dist/solution/Checkout/index.js +177 -252
- package/dist/solution/Checkout/utils/index.js +4 -16
- package/dist/solution/RegisterAndLogin/index.js +30 -76
- package/dist/solution/ScanOrder/index.js +50 -60
- package/dist/solution/ShopDiscount/index.js +2 -7
- package/dist/solution/VenueBooking/index.js +45 -55
- package/dist/utils/task.js +15 -18
- package/dist/utils/watch.js +0 -1
- package/lib/apis/picoding.js +2 -0
- package/lib/core/index.js +134 -134
- package/lib/effects/index.js +46 -57
- package/lib/index.js +82 -49
- package/lib/model/index.js +14 -21
- package/lib/model/strategy/adapter/dataVariant/adapter.js +38 -50
- package/lib/model/strategy/adapter/dataVariant/evaluator.js +162 -236
- package/lib/model/strategy/adapter/dataVariant/examples.js +229 -237
- package/lib/model/strategy/adapter/dataVariant/index.js +39 -34
- package/lib/model/strategy/adapter/dataVariant/type.js +57 -28
- package/lib/model/strategy/adapter/index.js +100 -64
- package/lib/model/strategy/adapter/itemRule/adapter.js +156 -144
- package/lib/model/strategy/adapter/itemRule/evaluator.js +36 -48
- package/lib/model/strategy/adapter/itemRule/examples.js +295 -225
- package/lib/model/strategy/adapter/itemRule/index.js +83 -57
- package/lib/model/strategy/adapter/itemRule/type.js +97 -36
- package/lib/model/strategy/adapter/promotion/adapter.js +91 -69
- package/lib/model/strategy/adapter/promotion/evaluator.js +444 -310
- package/lib/model/strategy/adapter/promotion/examples.js +222 -234
- package/lib/model/strategy/adapter/promotion/index.js +1 -0
- package/lib/model/strategy/adapter/promotion/type.js +243 -36
- package/lib/model/strategy/adapter/type.js +4 -16
- package/lib/model/strategy/adapter/walletPass/evaluator.js +180 -150
- package/lib/model/strategy/adapter/walletPass/example.js +217 -190
- package/lib/model/strategy/adapter/walletPass/index.js +75 -51
- package/lib/model/strategy/adapter/walletPass/locales.js +36 -58
- package/lib/model/strategy/adapter/walletPass/type.js +4 -16
- package/lib/model/strategy/adapter/walletPass/utils.js +588 -378
- package/lib/model/strategy/engine.js +270 -168
- package/lib/model/strategy/index.js +49 -34
- package/lib/model/strategy/strategy-example.js +243 -239
- package/lib/model/strategy/type.js +100 -40
- package/lib/modules/Account/index.js +39 -53
- package/lib/modules/Account/types.js +20 -33
- package/lib/modules/AccountList/index.js +116 -154
- package/lib/modules/AccountList/types.js +30 -31
- package/lib/modules/AccountList/utils.js +18 -30
- package/lib/modules/BaseModule.js +23 -42
- package/lib/modules/BookingContext/index.js +158 -136
- package/lib/modules/BookingContext/types.js +46 -32
- package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +138 -146
- package/lib/modules/BookingContext/utils/buildNormalProductCacheItemFromOrderLine.js +78 -83
- package/lib/modules/BookingContext/utils/cacheItemToBookingInput.js +170 -150
- package/lib/modules/BookingContext/utils/flexible.js +38 -55
- package/lib/modules/BookingContext/utils/formatResourceList.js +19 -34
- package/lib/modules/BookingContext/utils/index.js +124 -41
- package/lib/modules/BookingContext/utils/noResource.js +58 -70
- package/lib/modules/BookingContext/utils/orderLineDisplay.js +14 -41
- package/lib/modules/BookingContext/utils/productExtend.js +202 -155
- package/lib/modules/BookingContext/utils/resourceErrors.js +53 -53
- package/lib/modules/BookingContext/utils/resourceSelection.js +19 -41
- package/lib/modules/BookingContext/utils/resources.js +209 -167
- package/lib/modules/BookingContext/utils/serviceTimes.js +115 -116
- package/lib/modules/BookingContext/utils/timeSlices.js +76 -86
- package/lib/modules/Cart/index.js +170 -124
- package/lib/modules/Cart/types.js +46 -51
- package/lib/modules/Cart/utils/cartAccount.js +40 -39
- package/lib/modules/Cart/utils/cartDate.js +56 -61
- package/lib/modules/Cart/utils/cartDiscount.js +28 -33
- package/lib/modules/Cart/utils/cartNote.js +27 -32
- package/lib/modules/Cart/utils/cartProduct.js +321 -251
- package/lib/modules/Cart/utils/cartRelationForms.js +29 -35
- package/lib/modules/Cart/utils/cartResource.js +70 -78
- package/lib/modules/Cart/utils/changePrice.js +22 -50
- package/lib/modules/Cart/utils/index.js +106 -48
- package/lib/modules/Customer/constants.js +13 -34
- package/lib/modules/Customer/index.js +235 -172
- package/lib/modules/Customer/types.js +38 -35
- package/lib/modules/Date/index.js +116 -115
- package/lib/modules/Date/types.js +16 -28
- package/lib/modules/Date/utils.js +174 -123
- package/lib/modules/Discount/index.js +122 -127
- package/lib/modules/Discount/types.js +9 -31
- package/lib/modules/Guests/index.js +30 -56
- package/lib/modules/Guests/types.js +23 -33
- package/lib/modules/Holder/index.js +209 -189
- package/lib/modules/Holder/types.js +4 -16
- package/lib/modules/Holder/utils.js +20 -49
- package/lib/modules/OpenData/index.js +70 -76
- package/lib/modules/OpenData/types.js +4 -16
- package/lib/modules/OpenData/utils.js +44 -78
- package/lib/modules/Order/index.d.ts +1 -1
- package/lib/modules/Order/index.js +1733 -2121
- package/lib/modules/Order/payment-utils.js +77 -120
- package/lib/modules/Order/types.d.ts +3 -1
- package/lib/modules/Order/types.js +88 -35
- package/lib/modules/Order/utils/bundleDiscountHydration.js +41 -74
- package/lib/modules/Order/utils/discountProductLineIdentity.js +142 -100
- package/lib/modules/Order/utils/manualProductDiscount.js +124 -123
- package/lib/modules/Order/utils/orderCollectionIdentity.js +184 -244
- package/lib/modules/Order/utils.js +814 -647
- package/lib/modules/Payment/cash.js +20 -33
- package/lib/modules/Payment/cashRecommendationAlgorithm.js +145 -76
- package/lib/modules/Payment/eftpos.js +16 -30
- package/lib/modules/Payment/index.js +532 -399
- package/lib/modules/Payment/mx51.js +1 -0
- package/lib/modules/Payment/types.js +230 -108
- package/lib/modules/Payment/utils.js +52 -51
- package/lib/modules/Payment/walletpass.js +485 -660
- package/lib/modules/Product/index.js +51 -46
- package/lib/modules/Product/types.js +4 -16
- package/lib/modules/Product/utils.js +32 -33
- package/lib/modules/ProductList/index.js +113 -123
- package/lib/modules/ProductList/types.js +9 -31
- package/lib/modules/Quotation/index.js +81 -118
- package/lib/modules/Quotation/types.js +4 -16
- package/lib/modules/Resource/index.js +27 -59
- package/lib/modules/Resource/types.js +22 -32
- package/lib/modules/Resource/utils.js +30 -38
- package/lib/modules/ResourcePlanner/index.js +25 -23
- package/lib/modules/ResourcePlanner/localClock.js +54 -119
- package/lib/modules/ResourcePlanner/planner.js +589 -770
- package/lib/modules/ResourcePlanner/types.js +10 -29
- package/lib/modules/Rules/index.js +1218 -959
- package/lib/modules/Rules/types.js +17 -40
- package/lib/modules/SalesSummary/index.js +85 -90
- package/lib/modules/SalesSummary/types.js +4 -16
- package/lib/modules/SalesSummary/utils.js +355 -430
- package/lib/modules/ScanOrderLogger/index.js +59 -79
- package/lib/modules/ScanOrderLogger/providers/feishu.js +54 -78
- package/lib/modules/ScanOrderLogger/providers/grafana.js +13 -36
- package/lib/modules/ScanOrderLogger/types.js +4 -16
- package/lib/modules/Schedule/getDateIsInSchedule.js +334 -163
- package/lib/modules/Schedule/index.js +100 -114
- package/lib/modules/Schedule/type.js +4 -16
- package/lib/modules/Schedule/types.js +4 -16
- package/lib/modules/Schedule/utils.js +433 -291
- package/lib/modules/Step/index.js +40 -52
- package/lib/modules/Step/tyeps.js +4 -16
- package/lib/modules/Summary/index.js +66 -71
- package/lib/modules/Summary/types.js +4 -16
- package/lib/modules/Summary/utils.js +773 -418
- package/lib/modules/SurchargeList/index.js +46 -60
- package/lib/modules/SurchargeList/types.js +4 -16
- package/lib/modules/index.js +245 -63
- package/lib/plugins/app.js +4 -16
- package/lib/plugins/index.js +36 -25
- package/lib/plugins/request.js +137 -126
- package/lib/plugins/shopStore.js +4 -16
- package/lib/plugins/user.js +4 -16
- package/lib/plugins/window.js +171 -179
- package/lib/server/index.js +3050 -2665
- package/lib/server/modules/floor-plan/index.js +118 -134
- package/lib/server/modules/floor-plan/types.js +15 -30
- package/lib/server/modules/index.js +106 -68
- package/lib/server/modules/menu/index.js +142 -122
- package/lib/server/modules/menu/types.js +18 -31
- package/lib/server/modules/order/index.js +784 -1002
- package/lib/server/modules/order/types.js +122 -33
- package/lib/server/modules/order/utils/filterBookings.js +219 -194
- package/lib/server/modules/order/utils/filterOrders.js +118 -92
- package/lib/server/modules/payment/index.js +59 -83
- package/lib/server/modules/payment/types.js +4 -16
- package/lib/server/modules/products/index.js +583 -471
- package/lib/server/modules/products/types.js +44 -34
- package/lib/server/modules/quotation/index.js +137 -172
- package/lib/server/modules/quotation/types.js +21 -31
- package/lib/server/modules/resource/index.js +220 -186
- package/lib/server/modules/resource/types.js +42 -33
- package/lib/server/modules/schedule/index.js +135 -123
- package/lib/server/modules/schedule/types.js +14 -21
- package/lib/server/modules/schedule/utils.js +334 -163
- package/lib/server/types.js +4 -16
- package/lib/server/utils/index.js +25 -23
- package/lib/server/utils/product.js +196 -139
- package/lib/server/utils/schedule.js +34 -41
- package/lib/server/utils/small-ticket.js +479 -456
- package/lib/server/utils/time.js +40 -49
- package/lib/solution/BaseSales/index.js +1220 -1412
- package/lib/solution/BaseSales/types.js +42 -38
- package/lib/solution/BaseSales/utils/cartPromotion.d.ts +5 -0
- package/lib/solution/BaseSales/utils/cartPromotion.js +652 -498
- package/lib/solution/BaseSales/utils/parseSalesResponse.js +85 -105
- package/lib/solution/BaseSales/utils/quotationPrice.js +56 -114
- package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +108 -145
- package/lib/solution/BaseSales/utils.js +158 -143
- package/lib/solution/BookingByStep/index.js +1527 -1340
- package/lib/solution/BookingByStep/types.js +40 -99
- package/lib/solution/BookingByStep/utils/capacity.js +192 -160
- package/lib/solution/BookingByStep/utils/products.js +42 -52
- package/lib/solution/BookingByStep/utils/resources.js +527 -330
- package/lib/solution/BookingByStep/utils/stock.js +65 -44
- package/lib/solution/BookingByStep/utils/timeslots.js +129 -131
- package/lib/solution/BookingTicket/index.js +607 -522
- package/lib/solution/BookingTicket/types.js +99 -77
- package/lib/solution/BookingTicket/utils/addProductDecision.js +226 -189
- package/lib/solution/BookingTicket/utils/addTimeAvailability.js +58 -89
- package/lib/solution/BookingTicket/utils/bookingStatus.js +107 -78
- package/lib/solution/BookingTicket/utils/cartView.js +114 -99
- package/lib/solution/BookingTicket/utils/exampleData.js +185 -0
- package/lib/solution/BookingTicket/utils/orderCustomer.js +18 -41
- package/lib/solution/BookingTicket/utils/resolveBestAddTimePlan.js +219 -86
- package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +168 -116
- package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +79 -91
- package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +54 -41
- package/lib/solution/BookingTicket/utils/scan/handleScan.js +84 -81
- package/lib/solution/BookingTicket/utils/scan/index.js +98 -104
- package/lib/solution/BookingTicket/utils/scan/scanCache.js +90 -43
- package/lib/solution/BookingTicket/utils/scan/scanProductValues.js +52 -64
- package/lib/solution/BookingTicket/utils/sessionCatalogStale.js +56 -58
- package/lib/solution/BookingTicket/utils/weighingProductSku.js +34 -48
- package/lib/solution/BuyTickets/index.js +67 -70
- package/lib/solution/BuyTickets/types.js +22 -38
- package/lib/solution/Checkout/index.js +1451 -1158
- package/lib/solution/Checkout/types.js +91 -61
- package/lib/solution/Checkout/utils/index.js +228 -156
- package/lib/solution/PlaceOrder/index.js +55 -0
- package/lib/solution/RegisterAndLogin/config.js +493 -460
- package/lib/solution/RegisterAndLogin/index.js +633 -630
- package/lib/solution/RegisterAndLogin/types.js +189 -76
- package/lib/solution/RegisterAndLogin/utils.js +183 -125
- package/lib/solution/Sales/index.js +328 -324
- package/lib/solution/Sales/types.js +27 -33
- package/lib/solution/ScanOrder/index.js +832 -864
- package/lib/solution/ScanOrder/types.js +33 -34
- package/lib/solution/ScanOrder/utils.js +409 -374
- package/lib/solution/ShopDiscount/index.js +226 -232
- package/lib/solution/ShopDiscount/types.js +15 -37
- package/lib/solution/ShopDiscount/utils.js +300 -172
- package/lib/solution/UnifiedBookingSales/index.js +1035 -1201
- package/lib/solution/UnifiedBookingSales/remoteOccupancyCache.js +99 -159
- package/lib/solution/UnifiedBookingSales/types.js +10 -32
- package/lib/solution/VenueBooking/index.js +811 -879
- package/lib/solution/VenueBooking/types.js +19 -39
- package/lib/solution/VenueBooking/utils/dateSummary.js +27 -56
- package/lib/solution/VenueBooking/utils/resource.js +31 -54
- package/lib/solution/VenueBooking/utils/slotMerge.js +94 -107
- package/lib/solution/VenueBooking/utils/timeSlot.js +132 -132
- package/lib/solution/VenueBooking/utils.js +130 -67
- package/lib/solution/index.js +124 -41
- package/lib/store/createStore.js +32 -29
- package/lib/types/index.js +4 -16
- package/lib/utils/payment-number.js +26 -46
- package/lib/utils/task.js +36 -36
- package/lib/utils/watch.js +81 -47
- package/package.json +2 -1
package/dist/core/index.js
CHANGED
|
@@ -45,7 +45,6 @@ var PisellOSCore = /*#__PURE__*/function () {
|
|
|
45
45
|
this.serverOptions = options.server;
|
|
46
46
|
}
|
|
47
47
|
this.initialize(options);
|
|
48
|
-
console.log('constructor1234567890');
|
|
49
48
|
}
|
|
50
49
|
_createClass(PisellOSCore, [{
|
|
51
50
|
key: "initialize",
|
|
@@ -150,21 +149,20 @@ var PisellOSCore = /*#__PURE__*/function () {
|
|
|
150
149
|
_context2.next = 16;
|
|
151
150
|
return this.server.initialize(this.serverOptions.modules, this.serverOptions.autoInitData !== false, options);
|
|
152
151
|
case 16:
|
|
153
|
-
console.log('[PisellOS] ✅ Server 初始化完成,所有数据已预加载');
|
|
154
152
|
this.log('[PisellOS] Server 初始化完成');
|
|
155
|
-
_context2.next =
|
|
153
|
+
_context2.next = 24;
|
|
156
154
|
break;
|
|
157
|
-
case
|
|
158
|
-
_context2.prev =
|
|
155
|
+
case 19:
|
|
156
|
+
_context2.prev = 19;
|
|
159
157
|
_context2.t0 = _context2["catch"](6);
|
|
160
158
|
console.error('[PisellOS] ❌ Server 初始化失败:', _context2.t0);
|
|
161
159
|
this.log("Server \u521D\u59CB\u5316\u5931\u8D25: ".concat(_context2.t0), 'error');
|
|
162
160
|
throw _context2.t0;
|
|
163
|
-
case
|
|
161
|
+
case 24:
|
|
164
162
|
case "end":
|
|
165
163
|
return _context2.stop();
|
|
166
164
|
}
|
|
167
|
-
}, _callee2, this, [[6,
|
|
165
|
+
}, _callee2, this, [[6, 19]]);
|
|
168
166
|
}));
|
|
169
167
|
function initializeServer(_x) {
|
|
170
168
|
return _initializeServer.apply(this, arguments);
|
|
@@ -182,11 +180,10 @@ var PisellOSCore = /*#__PURE__*/function () {
|
|
|
182
180
|
var prefix = '[PisellOS]';
|
|
183
181
|
switch (level) {
|
|
184
182
|
case 'info':
|
|
185
|
-
console.log("".concat(prefix, " ").concat(message));
|
|
186
183
|
break;
|
|
187
184
|
case 'warn':
|
|
188
185
|
// 使用 console.log 避免显示堆栈跟踪,提升性能
|
|
189
|
-
|
|
186
|
+
|
|
190
187
|
break;
|
|
191
188
|
case 'error':
|
|
192
189
|
console.error("".concat(prefix, " ").concat(message));
|
|
@@ -293,7 +290,6 @@ var PisellOSCore = /*#__PURE__*/function () {
|
|
|
293
290
|
}
|
|
294
291
|
// 预先给模块初始化值系统
|
|
295
292
|
var _createStore = createStore((options === null || options === void 0 ? void 0 : options.initialState) || {}, module.name, function (path, value) {
|
|
296
|
-
console.log('core 检测到模块值更新', module.name, path, value);
|
|
297
293
|
_this4.effects.emit("".concat(module.name, ":changed"), {
|
|
298
294
|
path: path,
|
|
299
295
|
value: value
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// 导出评估器
|
|
2
|
+
export { PromotionEvaluator } from "./evaluator";
|
|
3
|
+
|
|
4
|
+
// 导出适配器
|
|
5
|
+
export { PromotionAdapter } from "./adapter";
|
|
6
|
+
export { default } from "./adapter";
|
|
7
|
+
|
|
8
|
+
// 导出策略配置示例常量
|
|
9
|
+
export { X_ITEMS_FOR_Y_PRICE_STRATEGY, BUY_X_GET_Y_FREE_STRATEGY, ITEM_REWARD_STRATEGY } from "./examples";
|
|
@@ -164,8 +164,6 @@ var strategyConfigs = [
|
|
|
164
164
|
// ============================================
|
|
165
165
|
|
|
166
166
|
function runExample() {
|
|
167
|
-
console.log('========== WalletPass 评估器示例 ==========\n');
|
|
168
|
-
|
|
169
167
|
// 创建评估器实例
|
|
170
168
|
var evaluator = new WalletPassEvaluator();
|
|
171
169
|
|
|
@@ -178,38 +176,17 @@ function runExample() {
|
|
|
178
176
|
});
|
|
179
177
|
|
|
180
178
|
// 输出结果
|
|
181
|
-
|
|
182
|
-
console.log("- \u603B\u91D1\u989D: ".concat(180, " \u5143"));
|
|
183
|
-
console.log("- \u5546\u54C1: ".concat(products.map(function (p) {
|
|
184
|
-
return "".concat(p.name, "(").concat(p.quantity, "\u4EF6)");
|
|
185
|
-
}).join(', '), "\n"));
|
|
186
|
-
console.log('评估结果:\n');
|
|
179
|
+
|
|
187
180
|
results.forEach(function (result, index) {
|
|
188
|
-
|
|
189
|
-
console.log(" \u9762\u989D: ".concat(result.voucher.amount, " \u5143"));
|
|
190
|
-
console.log(" \u53EF\u7528: ".concat(result.isApplicable ? '✅ 是' : '❌ 否'));
|
|
191
|
-
if (result.isApplicable) {
|
|
192
|
-
console.log(" \u6700\u5927\u62B5\u6263: ".concat(result.maxDeduction, " \u5143"));
|
|
193
|
-
console.log(" \u6BCF\u5355\u53EF\u7528: ".concat(result.canUseCount, " \u5F20"));
|
|
194
|
-
console.log(" \u62B5\u6263\u7A0E\u8D39: ".concat(result.deductTaxAndFee ? '是' : '否'));
|
|
195
|
-
console.log(" \u9002\u7528\u5546\u54C1: ".concat(result.applicableProductIds.join(', ')));
|
|
196
|
-
} else {
|
|
197
|
-
console.log(" \u539F\u56E0: ".concat(result.reason));
|
|
198
|
-
console.log(" \u539F\u56E0\u7801: ".concat(result.reasonCode));
|
|
199
|
-
}
|
|
200
|
-
console.log('');
|
|
181
|
+
if (result.isApplicable) {} else {}
|
|
201
182
|
});
|
|
202
183
|
|
|
203
184
|
// 筛选可用的 vouchers
|
|
204
185
|
var availableVouchers = results.filter(function (r) {
|
|
205
186
|
return r.isApplicable;
|
|
206
187
|
});
|
|
207
|
-
console.log("\n\u5171 ".concat(availableVouchers.length, " \u5F20\u53EF\u7528"));
|
|
208
188
|
if (availableVouchers.length > 0) {
|
|
209
|
-
|
|
210
|
-
availableVouchers.forEach(function (v) {
|
|
211
|
-
console.log(" - ".concat(v.voucher.id, ": \u6700\u591A\u62B5\u6263 ").concat(v.maxDeduction, " \u5143"));
|
|
212
|
-
});
|
|
189
|
+
availableVouchers.forEach(function (v) {});
|
|
213
190
|
}
|
|
214
191
|
}
|
|
215
192
|
|
|
@@ -246,8 +246,6 @@ var codeContext = {
|
|
|
246
246
|
// ============================================
|
|
247
247
|
|
|
248
248
|
function runExamples() {
|
|
249
|
-
console.log('====== 策略模型使用示例 ======\n');
|
|
250
|
-
|
|
251
249
|
// 创建引擎实例(开启调试和追踪)
|
|
252
250
|
var engine = createStrategyEngine({
|
|
253
251
|
debug: true,
|
|
@@ -255,32 +253,23 @@ function runExamples() {
|
|
|
255
253
|
});
|
|
256
254
|
|
|
257
255
|
// 示例1: 代金券
|
|
258
|
-
|
|
256
|
+
|
|
259
257
|
var result1 = engine.evaluate(voucherConfig, voucherContext);
|
|
260
|
-
console.log('结果:', JSON.stringify(result1, null, 2));
|
|
261
|
-
console.log('\n');
|
|
262
258
|
|
|
263
259
|
// 示例2: 阶梯满减
|
|
264
|
-
|
|
260
|
+
|
|
265
261
|
var result2 = engine.evaluate(tieredDiscountConfig, tieredContext);
|
|
266
|
-
console.log('结果:', JSON.stringify(result2, null, 2));
|
|
267
|
-
console.log('\n');
|
|
268
262
|
|
|
269
263
|
// 示例3: Code 模式
|
|
270
|
-
|
|
264
|
+
|
|
271
265
|
var result3 = engine.evaluate(codeConditionConfig, codeContext);
|
|
272
|
-
console.log('结果:', JSON.stringify(result3, null, 2));
|
|
273
|
-
console.log('\n');
|
|
274
266
|
|
|
275
267
|
// 快速评估(不需要创建引擎实例)
|
|
276
|
-
|
|
268
|
+
|
|
277
269
|
var result4 = evaluate(voucherConfig, voucherContext);
|
|
278
|
-
console.log('适用:', result4.applicable);
|
|
279
|
-
console.log('匹配动作数:', result4.matchedActions.length);
|
|
280
|
-
console.log('\n');
|
|
281
270
|
|
|
282
271
|
// 注册自定义运算符
|
|
283
|
-
|
|
272
|
+
|
|
284
273
|
engine.registerOperator('divisible_by', function (fieldValue, compareValue) {
|
|
285
274
|
return Number(fieldValue) % Number(compareValue) === 0;
|
|
286
275
|
});
|
|
@@ -317,11 +306,8 @@ function runExamples() {
|
|
|
317
306
|
}
|
|
318
307
|
};
|
|
319
308
|
var result5 = engine.evaluate(customOperatorConfig, customContext);
|
|
320
|
-
console.log('结果:', result5.applicable ? '适用' : '不适用');
|
|
321
|
-
console.log('匹配动作:', result5.matchedActions);
|
|
322
309
|
|
|
323
310
|
// 调试信息
|
|
324
|
-
console.log('\n引擎调试信息:', engine.getDebugInfo());
|
|
325
311
|
}
|
|
326
312
|
|
|
327
313
|
// 运行示例(如果直接执行此文件)
|
|
@@ -63,7 +63,6 @@ export var handleVariantProduct = function handleVariantProduct(product) {
|
|
|
63
63
|
*/
|
|
64
64
|
export var formatProductToCartItem = function formatProductToCartItem(params) {
|
|
65
65
|
var _product$custom_depos;
|
|
66
|
-
console.log('formatProductToCartItem>>>>>>', params);
|
|
67
66
|
var cartItem = params.cartItem,
|
|
68
67
|
product = params.product,
|
|
69
68
|
bundle = params.bundle,
|
|
@@ -294,8 +294,6 @@ export var DateModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
294
294
|
// 将 start_time 向上取整到下一个10分钟整数
|
|
295
295
|
var roundedStartTime = _this3.roundUpToNext10Minutes(resourceStartTime);
|
|
296
296
|
var roundedStartTimeDayjs = dayjs(roundedStartTime);
|
|
297
|
-
console.log("[DateModule] \u4FEE\u6B63\u65F6\u95F4\u6BB5\u5F00\u59CB\u65F6\u95F4: ".concat(timeSlot.start_at, " -> ").concat(roundedStartTime, " (\u8D44\u6E90ID: ").concat(resource.id, ", \u539F\u59CBstart_time: ").concat(resource.start_time, ")"));
|
|
298
|
-
|
|
299
297
|
// 将 start_at 修正为向上取整后的时间
|
|
300
298
|
var correctedTimeSlot = _objectSpread(_objectSpread({}, timeSlot), {}, {
|
|
301
299
|
start_at: roundedStartTime
|
|
@@ -303,7 +301,6 @@ export var DateModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
303
301
|
|
|
304
302
|
// 检查修正后的 end_at 是否也早于修正后的 start_time
|
|
305
303
|
if (endAt.isBefore(roundedStartTimeDayjs)) {
|
|
306
|
-
console.log("[DateModule] \u65F6\u95F4\u6BB5\u65E0\u6548\uFF0C\u5C06\u88AB\u5220\u9664: ".concat(timeSlot.start_at, " - ").concat(timeSlot.end_at, " (\u8D44\u6E90ID: ").concat(resource.id, ", \u4FEE\u6B63\u540Estart_time: ").concat(roundedStartTime, ")"));
|
|
307
304
|
return null; // 标记为删除
|
|
308
305
|
}
|
|
309
306
|
return correctedTimeSlot;
|
|
@@ -366,9 +363,8 @@ export var DateModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
366
363
|
case 18:
|
|
367
364
|
_context4.prev = 18;
|
|
368
365
|
_context4.t0 = _context4["catch"](7);
|
|
369
|
-
console.log('getAvailableTimeList_error', _context4.t0);
|
|
370
366
|
return _context4.abrupt("return", disableAllDates(dates));
|
|
371
|
-
case
|
|
367
|
+
case 21:
|
|
372
368
|
case "end":
|
|
373
369
|
return _context4.stop();
|
|
374
370
|
}
|
|
@@ -468,9 +468,8 @@ export var DiscountModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
468
468
|
_context7.next = 4;
|
|
469
469
|
return this.core.effects.emit("".concat(this.name, ":onDestroy"), {});
|
|
470
470
|
case 4:
|
|
471
|
-
console.log('[Discount] 已销毁');
|
|
472
471
|
_get(_getPrototypeOf(DiscountModule.prototype), "destroy", this).call(this);
|
|
473
|
-
case
|
|
472
|
+
case 5:
|
|
474
473
|
case "end":
|
|
475
474
|
return _context7.stop();
|
|
476
475
|
}
|
|
@@ -490,8 +489,7 @@ export var DiscountModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
490
489
|
case 0:
|
|
491
490
|
this.store.discountList = [];
|
|
492
491
|
this.store.originalDiscountList = [];
|
|
493
|
-
|
|
494
|
-
case 3:
|
|
492
|
+
case 2:
|
|
495
493
|
case "end":
|
|
496
494
|
return _context8.stop();
|
|
497
495
|
}
|
|
@@ -562,7 +562,7 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
|
|
|
562
562
|
*/
|
|
563
563
|
hydrateTempOrderFromRecord(record: Record<string, any>, options?: {
|
|
564
564
|
recalcOnHydrate?: boolean;
|
|
565
|
-
source?: 'salesDetail' | 'sessionStorage';
|
|
565
|
+
source?: 'salesDetail' | 'mergedSalesDetail' | 'sessionStorage';
|
|
566
566
|
}): Promise<OrderTempOrder>;
|
|
567
567
|
/**
|
|
568
568
|
* 兼容后端详情将 holder 放在 metadata.holder 的历史形态,统一补到运行时展示路径。
|