@pisell/pisellos 0.10.42 → 0.10.44

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 (101) hide show
  1. package/dist/model/strategy/adapter/itemRule/adapter.d.ts +4 -1
  2. package/dist/model/strategy/adapter/itemRule/adapter.js +135 -35
  3. package/dist/model/strategy/adapter/itemRule/evaluator.d.ts +8 -1
  4. package/dist/model/strategy/adapter/itemRule/evaluator.js +25 -1
  5. package/dist/model/strategy/adapter/itemRule/type.d.ts +44 -0
  6. package/dist/model/strategy/adapter/itemRule/type.js +19 -1
  7. package/dist/model/strategy/adapter/promotion/index.js +0 -9
  8. package/dist/modules/Order/index.d.ts +40 -8
  9. package/dist/modules/Order/index.js +1438 -878
  10. package/dist/modules/Order/salesNotes.d.ts +31 -0
  11. package/dist/modules/Order/salesNotes.js +492 -0
  12. package/dist/modules/Order/types.d.ts +105 -8
  13. package/dist/modules/Order/types.js +6 -1
  14. package/dist/modules/Order/utils.d.ts +3 -1
  15. package/dist/modules/Order/utils.js +191 -71
  16. package/dist/modules/Payment/cashRecommendationAlgorithm.d.ts +4 -5
  17. package/dist/modules/Payment/cashRecommendationAlgorithm.js +17 -367
  18. package/dist/modules/ProductList/index.d.ts +2 -1
  19. package/dist/modules/ProductList/index.js +100 -20
  20. package/dist/modules/ProductList/types.d.ts +10 -0
  21. package/dist/modules/Rules/index.js +2 -1
  22. package/dist/server/index.d.ts +7 -0
  23. package/dist/server/index.js +45 -3
  24. package/dist/server/modules/order/index.js +6 -0
  25. package/dist/server/modules/order/types.d.ts +9 -0
  26. package/dist/server/utils/small-ticket.d.ts +1 -0
  27. package/dist/server/utils/small-ticket.js +142 -14
  28. package/dist/solution/BaseSales/index.d.ts +15 -1
  29. package/dist/solution/BaseSales/index.js +1240 -877
  30. package/dist/solution/BookingByStep/index.d.ts +1 -1
  31. package/dist/solution/BookingTicket/index.d.ts +1 -0
  32. package/dist/solution/BookingTicket/index.js +37 -16
  33. package/dist/solution/BookingTicket/types.d.ts +5 -1
  34. package/dist/solution/BookingTicket/utils/orderCustomer.js +3 -2
  35. package/dist/solution/BookingTicket/utils/scan/applyGlobalScan.js +171 -96
  36. package/dist/solution/BookingTicket/utils/scan/cloudSearch.js +1 -1
  37. package/dist/solution/BookingTicket/utils/scan/formatGlobalScan.d.ts +2 -0
  38. package/dist/solution/BookingTicket/utils/scan/formatGlobalScan.js +12 -3
  39. package/dist/solution/RegisterAndLogin/config.d.ts +9 -3
  40. package/dist/solution/RegisterAndLogin/config.js +95 -40
  41. package/dist/solution/RegisterAndLogin/index.js +4 -1
  42. package/dist/solution/ScanOrder/index.d.ts +1 -0
  43. package/dist/solution/ScanOrder/index.js +31 -27
  44. package/dist/solution/ScanOrder/utils.d.ts +1 -0
  45. package/dist/solution/ScanOrder/utils.js +2 -0
  46. package/dist/solution/UnifiedBookingSales/index.d.ts +15 -2
  47. package/dist/solution/UnifiedBookingSales/index.js +777 -510
  48. package/dist/solution/UnifiedBookingSales/types.d.ts +14 -1
  49. package/dist/solution/VenueBooking/index.d.ts +1 -0
  50. package/dist/solution/VenueBooking/index.js +8 -4
  51. package/lib/model/strategy/adapter/itemRule/adapter.d.ts +4 -1
  52. package/lib/model/strategy/adapter/itemRule/adapter.js +73 -4
  53. package/lib/model/strategy/adapter/itemRule/evaluator.d.ts +8 -1
  54. package/lib/model/strategy/adapter/itemRule/evaluator.js +23 -1
  55. package/lib/model/strategy/adapter/itemRule/type.d.ts +44 -0
  56. package/lib/model/strategy/adapter/itemRule/type.js +19 -1
  57. package/lib/model/strategy/adapter/promotion/index.js +1 -46
  58. package/lib/modules/Order/index.d.ts +40 -8
  59. package/lib/modules/Order/index.js +434 -61
  60. package/lib/modules/Order/salesNotes.d.ts +31 -0
  61. package/lib/modules/Order/salesNotes.js +382 -0
  62. package/lib/modules/Order/types.d.ts +105 -8
  63. package/lib/modules/Order/types.js +5 -1
  64. package/lib/modules/Order/utils.d.ts +3 -1
  65. package/lib/modules/Order/utils.js +114 -1
  66. package/lib/modules/Payment/cashRecommendationAlgorithm.d.ts +4 -5
  67. package/lib/modules/Payment/cashRecommendationAlgorithm.js +9 -354
  68. package/lib/modules/ProductList/index.d.ts +2 -1
  69. package/lib/modules/ProductList/index.js +47 -2
  70. package/lib/modules/ProductList/types.d.ts +10 -0
  71. package/lib/modules/Rules/index.js +2 -1
  72. package/lib/server/index.d.ts +7 -0
  73. package/lib/server/index.js +39 -3
  74. package/lib/server/modules/order/index.js +6 -0
  75. package/lib/server/modules/order/types.d.ts +9 -0
  76. package/lib/server/utils/small-ticket.d.ts +1 -0
  77. package/lib/server/utils/small-ticket.js +136 -12
  78. package/lib/solution/BaseSales/index.d.ts +15 -1
  79. package/lib/solution/BaseSales/index.js +192 -22
  80. package/lib/solution/BookingByStep/index.d.ts +1 -1
  81. package/lib/solution/BookingTicket/index.d.ts +1 -0
  82. package/lib/solution/BookingTicket/index.js +23 -5
  83. package/lib/solution/BookingTicket/types.d.ts +5 -1
  84. package/lib/solution/BookingTicket/utils/orderCustomer.js +2 -1
  85. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +65 -18
  86. package/lib/solution/BookingTicket/utils/scan/cloudSearch.js +1 -1
  87. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.d.ts +2 -0
  88. package/lib/solution/BookingTicket/utils/scan/formatGlobalScan.js +5 -1
  89. package/lib/solution/RegisterAndLogin/config.d.ts +9 -3
  90. package/lib/solution/RegisterAndLogin/config.js +49 -8
  91. package/lib/solution/RegisterAndLogin/index.js +4 -1
  92. package/lib/solution/ScanOrder/index.d.ts +1 -0
  93. package/lib/solution/ScanOrder/index.js +5 -1
  94. package/lib/solution/ScanOrder/utils.d.ts +1 -0
  95. package/lib/solution/ScanOrder/utils.js +1 -0
  96. package/lib/solution/UnifiedBookingSales/index.d.ts +15 -2
  97. package/lib/solution/UnifiedBookingSales/index.js +125 -1
  98. package/lib/solution/UnifiedBookingSales/types.d.ts +14 -1
  99. package/lib/solution/VenueBooking/index.d.ts +1 -0
  100. package/lib/solution/VenueBooking/index.js +5 -1
  101. package/package.json +1 -1
@@ -1,8 +1,12 @@
1
1
  import type { InvoiceLayoutConfig, InvoiceTemplateSettings, OpenDataConfig } from '../../modules/OpenData';
2
- import type { ProductListLoadProductsParams } from '../../modules/ProductList';
2
+ import type { ProductListLoadProductsParams, ProductListStoreQueryParams } from '../../modules/ProductList';
3
+ import type { ProductData } from '../../modules/Product/types';
3
4
  import type { LoadScheduleAvailableDateParams } from '../../modules/Schedule/types';
4
5
  import type { AvailabilityDateRange, AvailabilityErrorCode, AvailabilityId, AvailabilityOccupancy, AvailabilityProduct, AvailabilityProjection, AvailabilityQuery, AvailabilityRequirementSelection, AvailabilityResource, AvailabilitySelectionValidationResult, DateAvailabilityQueryResult, GetProductTimeRangesRequest, ProductAvailabilityQueryResult, ProductTimeRange, ProductTimeRangeGroup, ResourceAvailabilityGroup, ResourceAvailabilityRangeGroup, TimeAvailabilityGroup, TimeAvailabilityItem } from '../../modules/ResourcePlanner';
5
6
  import type { BookingTicketState } from '../BookingTicket/types';
7
+ import type { AllergyRequirement } from '../../model/strategy/adapter/itemRule';
8
+ import type { SalesNoteDraftInput } from '../../modules/Order/types';
9
+ export type { ProductListStoreQueryParams } from '../../modules/ProductList';
6
10
  export type { AvailabilityAbsoluteRange, AvailabilityAssignment, AvailabilityCell, AvailabilityDateRange, AvailabilityDisplayRange, AvailabilityErrorCode, AvailabilityId, AvailabilityMode, AvailabilityOccupancy, AvailabilityProduct, AvailabilityProductKind, AvailabilityProjection, AvailabilityProjectionInput, AvailabilityProjectionMeta, AvailabilityQuery, AvailabilityQueryResult, AvailabilityRequirementGroup, AvailabilityRequirementGroupResult, AvailabilityRequirementSelection, AvailabilityResource, AvailabilityResourceOption, AvailabilityResourceType, AvailabilityResourceWindow, AvailabilityScheduleMode, AvailabilityScheduleRef, AvailabilityScheduleRule, AvailabilitySelectionValidationParams, AvailabilitySelectionValidationResult, AvailabilitySessionRange, AvailabilityStatus, DateAvailabilityGroup, DateAvailabilityItem, DateAvailabilityQuery, DateAvailabilityQueryResult, GetProductTimeRangesRequest, ProductAvailabilityGroup, ProductAvailabilityItem, ProductAvailabilityQuery, ProductAvailabilityQueryResult, ProductTimeRange, ProductTimeRangeGroup, QueryAvailabilityBaseRequest, ResourceAvailabilityGroup, ResourceAvailabilityQuery, ResourceAvailabilityQueryResult, ResourceAvailabilityRangeGroup, TimeAvailabilityGroup, TimeAvailabilityItem, TimeAvailabilityQuery, TimeAvailabilityQueryResult, } from '../../modules/ResourcePlanner';
7
11
  export interface UnifiedBookingSalesState extends BookingTicketState {
8
12
  }
@@ -24,6 +28,12 @@ export declare enum UnifiedBookingSalesHooks {
24
28
  export interface UnifiedBookingSalesOtherParams extends Record<string, any> {
25
29
  enableSessionStoragePersist?: boolean;
26
30
  }
31
+ export type UnifiedBookingSalesAllergyRequirement = AllergyRequirement;
32
+ export interface UnifiedBookingSalesResolveProductAllergyRequirementParams {
33
+ productId: number | string;
34
+ productVariantId?: number | string;
35
+ channel?: string;
36
+ }
27
37
  export interface UnifiedBookingSalesLoadOpenDataParams {
28
38
  businessCode: string;
29
39
  channel: string;
@@ -151,6 +161,8 @@ export interface ContextualCommitAvailabilitySelectionParams {
151
161
  requirementSelections: AvailabilityRequirementSelection[];
152
162
  partySize: number;
153
163
  bookingCount?: number;
164
+ /** 新增商品行时与商品、预约在同一次 Order mutation 内写入的 Sales Notes。 */
165
+ salesNotes?: SalesNoteDraftInput[];
154
166
  /** 编辑预约时,允许本次显式报价覆盖已落库订单行的历史价格。 */
155
167
  allowBookingReprice?: boolean;
156
168
  /** 编辑预约重报价后,允许订单模块重新应用已选编辑态折扣。 */
@@ -214,6 +226,7 @@ export interface UnifiedBookingSalesApi {
214
226
  /** Date-first calendar availability backed by ScheduleModule. */
215
227
  loadScheduleAvailableDate: (params: LoadScheduleAvailableDateParams) => Promise<unknown>;
216
228
  loadProductsByScheduleDate: (params: UnifiedBookingSalesLoadProductsByScheduleDateParams) => Promise<unknown[]>;
229
+ queryProducts: (params?: ProductListStoreQueryParams) => Promise<ProductData[]>;
217
230
  stageRetailProducts: (params: UnifiedBookingSalesStageRetailProductsParams) => Promise<Record<string, any> | null>;
218
231
  addRetailProduct: (params: UnifiedBookingSalesAddRetailProductParams) => Promise<Record<string, any>[]>;
219
232
  prepareAvailabilityProjection: (params: UnifiedBookingSalesPrepareAvailabilityProjectionParams) => Promise<AvailabilityContextRef>;
@@ -15,6 +15,7 @@ interface VenueBookingItemRuleRuntimeConfig {
15
15
  pax?: Partial<PaxInfo>;
16
16
  historicalItems?: CartItemSummary[];
17
17
  serviceType?: string;
18
+ channel?: string;
18
19
  submissionIndex?: number;
19
20
  custom?: Record<string, any>;
20
21
  }
@@ -1758,7 +1758,11 @@ class VenueBookingImpl extends _BaseSales.BaseSalesImpl {
1758
1758
  return sourceMap;
1759
1759
  }
1760
1760
  getItemRuleRuntimeConfig() {
1761
- return this.itemRuleRuntimeConfig || {};
1761
+ const runtimeConfig = this.itemRuleRuntimeConfig || {};
1762
+ return {
1763
+ ...runtimeConfig,
1764
+ channel: runtimeConfig.channel ?? runtimeConfig.custom?.channel ?? this.otherParams?.channel
1765
+ };
1762
1766
  }
1763
1767
  async ensureItemRuleConfigsLoaded() {
1764
1768
  if (this.itemRuleConfigs.length > 0) return this.itemRuleConfigs;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": false,
3
3
  "name": "@pisell/pisellos",
4
- "version": "0.10.42",
4
+ "version": "0.10.44",
5
5
  "description": "一个可扩展的前端模块化SDK框架,支持插件系统",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",