@pisell/pisellos 2.3.67 → 2.3.68
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.d.ts +0 -7
- package/dist/core/index.js +65 -109
- package/dist/model/strategy/adapter/walletPass/evaluator.js +0 -1
- package/dist/model/strategy/adapter/walletPass/utils.js +0 -2
- package/dist/modules/BaseModule.d.ts +1 -0
- package/dist/modules/BaseModule.js +24 -28
- package/dist/modules/Customer/index.d.ts +4 -0
- package/dist/modules/Customer/index.js +91 -59
- package/dist/modules/Customer/types.d.ts +2 -0
- package/dist/modules/Order/index.d.ts +22 -2
- package/dist/modules/Order/index.js +313 -142
- package/dist/modules/Order/types.d.ts +13 -1
- package/dist/modules/Order/utils/orderCollectionIdentity.d.ts +15 -0
- package/dist/modules/Order/utils/orderCollectionIdentity.js +75 -0
- package/dist/modules/Order/utils.js +0 -1
- package/dist/modules/Payment/index.d.ts +4 -0
- package/dist/modules/Payment/index.js +14 -4
- package/dist/modules/Payment/walletpass.js +52 -18
- package/dist/modules/Quotation/index.d.ts +0 -6
- package/dist/modules/Quotation/index.js +19 -75
- package/dist/modules/Rules/index.js +46 -31
- package/dist/plugins/request.d.ts +0 -1
- package/dist/server/index.d.ts +2 -8
- package/dist/server/index.js +143 -212
- package/dist/server/modules/floor-plan/index.d.ts +0 -4
- package/dist/server/modules/floor-plan/index.js +98 -240
- package/dist/server/modules/menu/index.js +23 -48
- package/dist/server/modules/order/index.d.ts +8 -17
- package/dist/server/modules/order/index.js +453 -506
- package/dist/server/modules/products/index.d.ts +2 -8
- package/dist/server/modules/products/index.js +75 -167
- package/dist/server/modules/resource/index.js +13 -21
- package/dist/server/utils/small-ticket.js +2 -1
- package/dist/solution/BaseSales/index.d.ts +3 -1
- package/dist/solution/BaseSales/index.js +99 -82
- package/dist/solution/BaseSales/utils.js +31 -20
- package/dist/solution/BookingTicket/index.d.ts +6 -2
- package/dist/solution/BookingTicket/index.js +123 -75
- package/dist/solution/ScanOrder/utils.js +31 -20
- package/dist/solution/UnifiedBookingSales/index.d.ts +25 -0
- package/dist/solution/UnifiedBookingSales/index.js +640 -321
- package/dist/solution/UnifiedBookingSales/types.d.ts +7 -0
- package/lib/core/index.d.ts +0 -7
- package/lib/core/index.js +2 -20
- package/lib/model/strategy/adapter/walletPass/evaluator.js +0 -1
- package/lib/model/strategy/adapter/walletPass/utils.js +0 -1
- package/lib/modules/BaseModule.d.ts +1 -0
- package/lib/modules/BaseModule.js +24 -37
- package/lib/modules/Customer/index.d.ts +4 -0
- package/lib/modules/Customer/index.js +11 -0
- package/lib/modules/Customer/types.d.ts +2 -0
- package/lib/modules/Order/index.d.ts +22 -2
- package/lib/modules/Order/index.js +212 -54
- package/lib/modules/Order/types.d.ts +13 -1
- package/lib/modules/Order/utils/orderCollectionIdentity.d.ts +15 -0
- package/lib/modules/Order/utils/orderCollectionIdentity.js +70 -0
- package/lib/modules/Order/utils.js +0 -1
- package/lib/modules/Payment/index.d.ts +4 -0
- package/lib/modules/Payment/index.js +7 -0
- package/lib/modules/Payment/walletpass.js +27 -2
- package/lib/modules/Quotation/index.d.ts +0 -6
- package/lib/modules/Quotation/index.js +5 -49
- package/lib/modules/Rules/index.js +17 -1
- package/lib/plugins/request.d.ts +0 -1
- package/lib/server/index.d.ts +2 -8
- package/lib/server/index.js +20 -58
- package/lib/server/modules/floor-plan/index.d.ts +0 -4
- package/lib/server/modules/floor-plan/index.js +6 -54
- package/lib/server/modules/menu/index.js +5 -31
- package/lib/server/modules/order/index.d.ts +8 -17
- package/lib/server/modules/order/index.js +106 -199
- package/lib/server/modules/products/index.d.ts +2 -8
- package/lib/server/modules/products/index.js +24 -97
- package/lib/server/modules/resource/index.js +2 -7
- package/lib/server/utils/small-ticket.js +1 -1
- package/lib/solution/BaseSales/index.d.ts +3 -1
- package/lib/solution/BaseSales/index.js +29 -16
- package/lib/solution/BaseSales/utils.js +29 -18
- package/lib/solution/BookingTicket/index.d.ts +6 -2
- package/lib/solution/BookingTicket/index.js +53 -14
- package/lib/solution/ScanOrder/utils.js +29 -18
- package/lib/solution/UnifiedBookingSales/index.d.ts +25 -0
- package/lib/solution/UnifiedBookingSales/index.js +188 -0
- package/lib/solution/UnifiedBookingSales/types.d.ts +7 -0
- package/package.json +1 -1
|
@@ -327,7 +327,7 @@ export var MenuModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
327
327
|
key: "loadMenuFromIndexDB",
|
|
328
328
|
value: (function () {
|
|
329
329
|
var _loadMenuFromIndexDB = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
|
|
330
|
-
var
|
|
330
|
+
var _menuList$length, menuList, errorMessage;
|
|
331
331
|
return _regeneratorRuntime().wrap(function _callee5$(_context5) {
|
|
332
332
|
while (1) switch (_context5.prev = _context5.next) {
|
|
333
333
|
case 0:
|
|
@@ -338,32 +338,29 @@ export var MenuModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
338
338
|
this.logWarning('loadMenuFromIndexDB: dbManager 不可用');
|
|
339
339
|
return _context5.abrupt("return", []);
|
|
340
340
|
case 3:
|
|
341
|
-
|
|
342
|
-
_context5.
|
|
343
|
-
_context5.next = 7;
|
|
341
|
+
_context5.prev = 3;
|
|
342
|
+
_context5.next = 6;
|
|
344
343
|
return this.dbManager.getAll(INDEXDB_STORE_NAME);
|
|
345
|
-
case
|
|
344
|
+
case 6:
|
|
346
345
|
menuList = _context5.sent;
|
|
347
346
|
this.logInfo('从 IndexDB 加载餐牌数据', {
|
|
348
|
-
menuCount: (_menuList$length = menuList === null || menuList === void 0 ? void 0 : menuList.length) !== null && _menuList$length !== void 0 ? _menuList$length : 0
|
|
349
|
-
durationMs: +(performance.now() - startedAt).toFixed(2)
|
|
347
|
+
menuCount: (_menuList$length = menuList === null || menuList === void 0 ? void 0 : menuList.length) !== null && _menuList$length !== void 0 ? _menuList$length : 0
|
|
350
348
|
});
|
|
351
349
|
return _context5.abrupt("return", menuList || []);
|
|
352
|
-
case
|
|
353
|
-
_context5.prev =
|
|
354
|
-
_context5.t0 = _context5["catch"](
|
|
350
|
+
case 11:
|
|
351
|
+
_context5.prev = 11;
|
|
352
|
+
_context5.t0 = _context5["catch"](3);
|
|
355
353
|
errorMessage = _context5.t0 instanceof Error ? _context5.t0.message : String(_context5.t0);
|
|
356
354
|
console.error('[Menu] 从 IndexDB 读取数据失败:', _context5.t0);
|
|
357
355
|
this.logError('从 IndexDB 读取数据失败', {
|
|
358
|
-
durationMs: +(performance.now() - startedAt).toFixed(2),
|
|
359
356
|
error: errorMessage
|
|
360
357
|
});
|
|
361
358
|
return _context5.abrupt("return", []);
|
|
362
|
-
case
|
|
359
|
+
case 17:
|
|
363
360
|
case "end":
|
|
364
361
|
return _context5.stop();
|
|
365
362
|
}
|
|
366
|
-
}, _callee5, this, [[
|
|
363
|
+
}, _callee5, this, [[3, 11]]);
|
|
367
364
|
}));
|
|
368
365
|
function loadMenuFromIndexDB() {
|
|
369
366
|
return _loadMenuFromIndexDB.apply(this, arguments);
|
|
@@ -380,7 +377,7 @@ export var MenuModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
380
377
|
value: (function () {
|
|
381
378
|
var _saveMenuToIndexDB = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(menuList) {
|
|
382
379
|
var _this2 = this;
|
|
383
|
-
var
|
|
380
|
+
var savePromises, errorMessage;
|
|
384
381
|
return _regeneratorRuntime().wrap(function _callee6$(_context6) {
|
|
385
382
|
while (1) switch (_context6.prev = _context6.next) {
|
|
386
383
|
case 0:
|
|
@@ -391,62 +388,40 @@ export var MenuModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
391
388
|
this.logWarning('saveMenuToIndexDB: dbManager 不可用');
|
|
392
389
|
return _context6.abrupt("return");
|
|
393
390
|
case 3:
|
|
394
|
-
startedAt = performance.now();
|
|
395
|
-
clearDurationMs = 0;
|
|
396
|
-
writeDurationMs = 0;
|
|
397
391
|
this.logInfo('开始保存餐牌数据到 IndexDB', {
|
|
398
392
|
menuCount: menuList.length
|
|
399
393
|
});
|
|
400
|
-
_context6.prev =
|
|
401
|
-
|
|
402
|
-
clearStartedAt = performance.now();
|
|
403
|
-
_context6.prev = 9;
|
|
404
|
-
_context6.next = 12;
|
|
394
|
+
_context6.prev = 4;
|
|
395
|
+
_context6.next = 7;
|
|
405
396
|
return this.dbManager.clear(INDEXDB_STORE_NAME);
|
|
406
|
-
case
|
|
407
|
-
_context6.prev = 12;
|
|
408
|
-
clearDurationMs = +(performance.now() - clearStartedAt).toFixed(2);
|
|
409
|
-
return _context6.finish(12);
|
|
410
|
-
case 15:
|
|
397
|
+
case 7:
|
|
411
398
|
// 逐个保存餐牌(每个餐牌是独立的记录)
|
|
412
|
-
writeStartedAt = performance.now();
|
|
413
399
|
savePromises = menuList.map(function (menu) {
|
|
414
400
|
return _this2.dbManager.add(INDEXDB_STORE_NAME, menu);
|
|
415
401
|
});
|
|
416
|
-
_context6.
|
|
417
|
-
_context6.next = 20;
|
|
402
|
+
_context6.next = 10;
|
|
418
403
|
return Promise.all(savePromises);
|
|
419
|
-
case
|
|
420
|
-
_context6.prev = 20;
|
|
421
|
-
writeDurationMs = +(performance.now() - writeStartedAt).toFixed(2);
|
|
422
|
-
return _context6.finish(20);
|
|
423
|
-
case 23:
|
|
404
|
+
case 10:
|
|
424
405
|
console.log("[Menu] \u5DF2\u5C06 ".concat(menuList.length, " \u6761\u9910\u724C\u6570\u636E\u4FDD\u5B58\u5230 IndexDB"));
|
|
425
406
|
this.logInfo('餐牌数据已保存到 IndexDB', {
|
|
426
|
-
menuCount: menuList.length
|
|
427
|
-
clearDurationMs: clearDurationMs,
|
|
428
|
-
writeDurationMs: writeDurationMs,
|
|
429
|
-
totalDurationMs: +(performance.now() - startedAt).toFixed(2)
|
|
407
|
+
menuCount: menuList.length
|
|
430
408
|
});
|
|
431
|
-
_context6.next =
|
|
409
|
+
_context6.next = 19;
|
|
432
410
|
break;
|
|
433
|
-
case
|
|
434
|
-
_context6.prev =
|
|
435
|
-
_context6.t0 = _context6["catch"](
|
|
411
|
+
case 14:
|
|
412
|
+
_context6.prev = 14;
|
|
413
|
+
_context6.t0 = _context6["catch"](4);
|
|
436
414
|
errorMessage = _context6.t0 instanceof Error ? _context6.t0.message : String(_context6.t0);
|
|
437
415
|
console.error('[Menu] 保存数据到 IndexDB 失败:', _context6.t0);
|
|
438
416
|
this.logError('保存数据到 IndexDB 失败', {
|
|
439
417
|
menuCount: menuList.length,
|
|
440
|
-
clearDurationMs: clearDurationMs,
|
|
441
|
-
writeDurationMs: writeDurationMs,
|
|
442
|
-
totalDurationMs: +(performance.now() - startedAt).toFixed(2),
|
|
443
418
|
error: errorMessage
|
|
444
419
|
});
|
|
445
|
-
case
|
|
420
|
+
case 19:
|
|
446
421
|
case "end":
|
|
447
422
|
return _context6.stop();
|
|
448
423
|
}
|
|
449
|
-
}, _callee6, this, [[
|
|
424
|
+
}, _callee6, this, [[4, 14]]);
|
|
450
425
|
}));
|
|
451
426
|
function saveMenuToIndexDB(_x4) {
|
|
452
427
|
return _saveMenuToIndexDB.apply(this, arguments);
|
|
@@ -119,23 +119,14 @@ export declare class OrderModule extends BaseModule implements Module {
|
|
|
119
119
|
payment: Record<string, any>;
|
|
120
120
|
previousPayment: Record<string, any>;
|
|
121
121
|
} | null>;
|
|
122
|
-
loadOrdersByServer(
|
|
123
|
-
trigger?: string;
|
|
124
|
-
}): Promise<OrderData[]>;
|
|
122
|
+
loadOrdersByServer(): Promise<OrderData[]>;
|
|
125
123
|
/**
|
|
126
124
|
* 静默全量刷新:后台重新拉取全量 SSE 订单数据并更新本地
|
|
127
125
|
* 拿到完整数据后一次性替换 store,触发订单变更与同步完成事件
|
|
128
126
|
* @returns 刷新后的订单列表
|
|
129
127
|
*/
|
|
130
|
-
silentRefresh(
|
|
131
|
-
trigger?: string;
|
|
132
|
-
}): Promise<OrderData[]>;
|
|
128
|
+
silentRefresh(): Promise<OrderData[]>;
|
|
133
129
|
private normalizeOrderForMemoryList;
|
|
134
|
-
/**
|
|
135
|
-
* 将已经完成集合规范化的订单转换为内存身份,不重复扫描 products/bookings/payments。
|
|
136
|
-
*/
|
|
137
|
-
private prepareNormalizedOrderForMemoryList;
|
|
138
|
-
private prepareNormalizedOrdersForMemoryList;
|
|
139
130
|
private normalizeOrdersForMemoryList;
|
|
140
131
|
private hasRealOrderId;
|
|
141
132
|
private shouldKeepOrderInMemory;
|
|
@@ -283,6 +274,7 @@ export declare class OrderModule extends BaseModule implements Module {
|
|
|
283
274
|
* // => 'S-1001'
|
|
284
275
|
*/
|
|
285
276
|
private getOrderStorageKey;
|
|
277
|
+
private getPersistedOrderStorageKey;
|
|
286
278
|
private getOrderIdentityMatchKeys;
|
|
287
279
|
private doOrdersShareIdentity;
|
|
288
280
|
private findOrderIndexByIdentity;
|
|
@@ -299,14 +291,13 @@ export declare class OrderModule extends BaseModule implements Module {
|
|
|
299
291
|
private logDuplicateOrders;
|
|
300
292
|
private compactOrderListByIdentity;
|
|
301
293
|
/**
|
|
302
|
-
*
|
|
303
|
-
*
|
|
294
|
+
* 当前订单拉取窗口:
|
|
295
|
+
* - 优先使用 createdAtQuery.sales_time_between(已按营业日边界初始化)
|
|
296
|
+
* - 无法解析时退化为自然日窗口
|
|
304
297
|
*/
|
|
305
|
-
private
|
|
298
|
+
private getCurrentPullWindow;
|
|
306
299
|
private hasPulledOrdersToday;
|
|
307
300
|
private markOrderPulledAtNow;
|
|
308
|
-
private clearOrderSnapshotMarker;
|
|
309
|
-
private getCurrentShopId;
|
|
310
301
|
private getStorageItem;
|
|
311
302
|
private setStorageItem;
|
|
312
303
|
private loadOrdersFromSQLite;
|
|
@@ -344,7 +335,7 @@ export declare class OrderModule extends BaseModule implements Module {
|
|
|
344
335
|
* 用于 SSE 全量拉取与营业日窗口裁剪。
|
|
345
336
|
*
|
|
346
337
|
* @example
|
|
347
|
-
*
|
|
338
|
+
* await this.replaceOrdersSnapshotInSQLite(orderList)
|
|
348
339
|
*/
|
|
349
340
|
private replaceOrdersSnapshotInSQLite;
|
|
350
341
|
/**
|