@pisell/pisellos 2.3.28 → 2.3.30

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.
Files changed (57) hide show
  1. package/dist/modules/Order/index.d.ts +32 -8
  2. package/dist/modules/Order/index.js +883 -521
  3. package/dist/modules/Order/payment-utils.d.ts +23 -0
  4. package/dist/modules/Order/payment-utils.js +203 -0
  5. package/dist/modules/Order/types.d.ts +33 -1
  6. package/dist/modules/Order/utils/orderCollectionIdentity.d.ts +53 -0
  7. package/dist/modules/Order/utils/orderCollectionIdentity.js +405 -0
  8. package/dist/modules/Order/utils.d.ts +2 -1
  9. package/dist/modules/Order/utils.js +6 -12
  10. package/dist/modules/Payment/index.d.ts +2 -0
  11. package/dist/modules/Payment/index.js +78 -49
  12. package/dist/modules/Payment/types.d.ts +26 -24
  13. package/dist/modules/Payment/types.js +2 -0
  14. package/dist/modules/Product/index.d.ts +1 -1
  15. package/dist/server/index.d.ts +14 -0
  16. package/dist/server/index.js +1826 -1000
  17. package/dist/server/modules/order/index.d.ts +47 -4
  18. package/dist/server/modules/order/index.js +1415 -711
  19. package/dist/server/modules/order/types.d.ts +11 -3
  20. package/dist/server/modules/order/types.js +1 -1
  21. package/dist/solution/BaseSales/index.d.ts +40 -4
  22. package/dist/solution/BaseSales/index.js +1268 -749
  23. package/dist/solution/BaseSales/utils/parseSalesResponse.d.ts +9 -4
  24. package/dist/solution/BaseSales/utils/parseSalesResponse.js +6 -8
  25. package/dist/solution/BookingByStep/index.d.ts +1 -1
  26. package/dist/solution/BookingTicket/index.d.ts +13 -1
  27. package/dist/solution/BookingTicket/index.js +2 -1
  28. package/dist/utils/payment-number.d.ts +9 -0
  29. package/dist/utils/payment-number.js +69 -0
  30. package/lib/modules/Order/index.d.ts +32 -8
  31. package/lib/modules/Order/index.js +270 -64
  32. package/lib/modules/Order/payment-utils.d.ts +23 -0
  33. package/lib/modules/Order/payment-utils.js +193 -0
  34. package/lib/modules/Order/types.d.ts +33 -1
  35. package/lib/modules/Order/utils/orderCollectionIdentity.d.ts +53 -0
  36. package/lib/modules/Order/utils/orderCollectionIdentity.js +415 -0
  37. package/lib/modules/Order/utils.d.ts +2 -1
  38. package/lib/modules/Order/utils.js +6 -14
  39. package/lib/modules/Payment/index.d.ts +2 -0
  40. package/lib/modules/Payment/index.js +33 -12
  41. package/lib/modules/Payment/types.d.ts +26 -24
  42. package/lib/modules/Product/index.d.ts +1 -1
  43. package/lib/server/index.d.ts +14 -0
  44. package/lib/server/index.js +604 -8
  45. package/lib/server/modules/order/index.d.ts +47 -4
  46. package/lib/server/modules/order/index.js +578 -116
  47. package/lib/server/modules/order/types.d.ts +11 -3
  48. package/lib/solution/BaseSales/index.d.ts +40 -4
  49. package/lib/solution/BaseSales/index.js +363 -37
  50. package/lib/solution/BaseSales/utils/parseSalesResponse.d.ts +9 -4
  51. package/lib/solution/BaseSales/utils/parseSalesResponse.js +4 -5
  52. package/lib/solution/BookingByStep/index.d.ts +1 -1
  53. package/lib/solution/BookingTicket/index.d.ts +13 -1
  54. package/lib/solution/BookingTicket/index.js +2 -1
  55. package/lib/utils/payment-number.d.ts +9 -0
  56. package/lib/utils/payment-number.js +64 -0
  57. package/package.json +1 -1
@@ -3,7 +3,7 @@ import { BaseModule } from '../BaseModule';
3
3
  import { OrderModuleAPI, CommitOrderParams, UpdateOrderBookingParams, UpdateOrderProductParams, UpdateOrderProductQuantityParams, CheckoutOrderParams, CancelOrderParams, ChangeBookingStatusParams } from './types';
4
4
  import { CartItem } from '../Cart/types';
5
5
  import { type SubmitPayloadEnhancer } from './utils';
6
- import type { OrderAmountSnapshot, AddProductBookingInput, OrderIdentitySnapshot, OrderPaymentSource, OrderSnapshot, OrderSyncState, SyncPaymentsToOrderParams, SyncPaymentsToOrderResult, SubmitSalesOrderParams, OrderProduct, OrderProductIdentity, OrderSummary, OrderTempOrder, OrderPaymentData, SendCustomerPayLinkParams, UpdateTempOrderCustomerInput, OrderCustomerPatch, OrderCustomerView, ReplaceTempOrderOptions, OrderPromotionEvaluator, OrderGiftSelectResolver, OrderUnfulfilledPromotion, OrderLastGiftActions } from './types';
6
+ import type { OrderAmountSnapshot, AddProductBookingInput, OrderIdentitySnapshot, OrderPaymentSource, OrderSnapshot, OrderSyncState, SyncPaymentsToOrderParams, SyncPaymentsToOrderResult, SubmitSalesOrderParams, OrderProduct, OrderProductIdentity, OrderSummary, OrderTempOrder, OrderPaymentData, OrderPaymentUpdateOptions, OrderPaymentUpdateResult, SendCustomerPayLinkParams, UpdateTempOrderCustomerInput, OrderCustomerPatch, OrderCustomerView, ReplaceTempOrderOptions, OrderPromotionEvaluator, OrderGiftSelectResolver, OrderUnfulfilledPromotion, OrderLastGiftActions } from './types';
7
7
  import type { ICustomer } from '../AccountList/types';
8
8
  import type { Discount } from '../Discount/types';
9
9
  import { UnavailableReason } from '../Rules/types';
@@ -14,6 +14,7 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
14
14
  private request;
15
15
  private logger;
16
16
  private window;
17
+ private appPlugin;
17
18
  private cacheId;
18
19
  private salesSummaryModuleName;
19
20
  private rulesHooksOverride?;
@@ -175,6 +176,9 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
175
176
  };
176
177
  private calculateDepositPaidAmount;
177
178
  private resolveNextOrderPaymentType;
179
+ private getPaymentNumberAppData;
180
+ private getPaymentNumberDevicePrefixSync;
181
+ private getPaymentNumberDevicePrefixAsync;
178
182
  private normalizePaymentSource;
179
183
  private updateTempOrderPaymentStatus;
180
184
  private shouldKeepPaymentStatusAfterAmountRecalc;
@@ -306,19 +310,20 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
306
310
  * 用一组支付来源覆盖当前订单支付项。
307
311
  *
308
312
  * 入参允许来自 PaymentModule 的 PaymentItem,内部统一映射为 Sales 协议:
309
- * uuid -> metadata.unique_payment_number,id -> custom_payment_id,
313
+ * 新支付来源的 uuid 会作为 payment_number 的唯一号段,id -> custom_payment_id,
310
314
  * isSynced 等运行态字段不会进入 tempOrder.payments。
311
315
  */
312
316
  setOrderPayments(payments: OrderPaymentSource[]): OrderPaymentData[];
313
- /** 追加单个支付项,并立即持久化当前 tempOrder。 */
317
+ /** 同步兼容入口:按调用当下的 device_id 或 LOCAL 生成支付编号。 */
314
318
  addOrderPayment(payment: OrderPaymentSource): OrderPaymentData[];
319
+ /** 异步入口:创建支付项时读取最新 IoT 设备短号。 */
320
+ addOrderPaymentAsync(payment: OrderPaymentSource): Promise<OrderPaymentData[]>;
321
+ private addOrderPaymentWithDevicePrefix;
315
322
  /**
316
- * 按支付唯一号、后端支付 ID、自定义支付方式 ID 或旧 uuid 更新支付项。
317
- *
318
- * 该方法服务 PaymentModal 的 void / 编辑场景;更新 metadata 时会做浅合并,
319
- * 避免覆盖 unique_payment_number、现金实付/找零等已有元数据。
323
+ * 默认按支付唯一号精确更新;仅显式指定 legacy 时兼容历史支付标识。
324
+ * metadata 与 transactions 会分别合并,避免覆盖支付会话号和已有交易记录。
320
325
  */
321
- updateOrderPayment(paymentIdentity: string | number, updates: Partial<OrderPaymentData> & Record<string, any>): OrderPaymentData[];
326
+ updateOrderPayment(paymentIdentity: string | number, updates: Partial<OrderPaymentData> & Record<string, any>, options?: OrderPaymentUpdateOptions): Promise<OrderPaymentUpdateResult>;
322
327
  /** 从当前订单支付项中移除指定支付项。 */
323
328
  deleteOrderPayment(paymentIdentity: string | number): OrderPaymentData[];
324
329
  private confirmPendingVoucherPaymentsInList;
@@ -341,7 +346,11 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
341
346
  */
342
347
  updateVoucherOrderPayments(payments: OrderPaymentSource[], options?: {
343
348
  status?: 'paid' | 'payment_pending';
349
+ devicePrefix?: string;
344
350
  }): OrderPaymentData[];
351
+ updateVoucherOrderPaymentsAsync(payments: OrderPaymentSource[], options?: {
352
+ status?: 'paid' | 'payment_pending';
353
+ }): Promise<OrderPaymentData[]>;
345
354
  private shouldMergeProductToOrder;
346
355
  private hasOrderProductLineNote;
347
356
  /**
@@ -426,6 +435,14 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
426
435
  type?: string;
427
436
  }): import("./types").OrderSubmitPayload;
428
437
  applyLocalPrintOrderNumbers(order?: Record<string, any> | null): Promise<OrderTempOrder>;
438
+ saveTempOrderAsDraft<T = any>(params?: {
439
+ cacheId?: string;
440
+ platform?: string;
441
+ businessCode?: string;
442
+ channel?: string;
443
+ type?: string;
444
+ enhancePayload?: SubmitPayloadEnhancer;
445
+ }): Promise<T>;
429
446
  /**
430
447
  * 提交当前 Sales tempOrder。
431
448
  *
@@ -524,7 +541,14 @@ export declare class OrderModule extends BaseModule implements Module, OrderModu
524
541
  * this.normalizeHydratedBookingHolder({ metadata: { holder: { form_record: [1] } } });
525
542
  */
526
543
  private normalizeHydratedBookingHolder;
544
+ /**
545
+ * 匿名 booking 没有服务端行 ID 时,商品侧已有的 booking_uid 就是唯一可用的强引用。
546
+ * 在统一规范化生成 UUID 前先复用它;已落库 booking 仍按 schedule_event_id 派生稳定 UID。
547
+ */
548
+ private seedAnonymousBookingUidsFromProducts;
527
549
  private normalizeTempOrderForRuntime;
550
+ private isSyntheticDraftOrderIdForRuntime;
551
+ private withoutSyntheticDraftOrderIdForRuntime;
528
552
  private hydrateLinkedBookingIdentity;
529
553
  private pickHydratedDisplayText;
530
554
  private formatHydratedNamePair;