@pisell/pisellos 2.0.3 → 2.0.5

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 (146) hide show
  1. package/dist/modules/Account/index.d.ts +2 -6
  2. package/dist/modules/Account/index.js +21 -103
  3. package/dist/modules/Account/types.d.ts +12 -1
  4. package/dist/modules/AccountList/index.d.ts +20 -1
  5. package/dist/modules/AccountList/index.js +243 -75
  6. package/dist/modules/AccountList/types.d.ts +33 -1
  7. package/dist/modules/AccountList/types.js +8 -0
  8. package/dist/modules/AccountList/utils.d.ts +9 -0
  9. package/dist/modules/AccountList/utils.js +25 -0
  10. package/dist/modules/BaseModule.d.ts +2 -2
  11. package/dist/modules/BaseModule.js +1 -1
  12. package/dist/modules/Cart/index.d.ts +8 -5
  13. package/dist/modules/Cart/index.js +101 -25
  14. package/dist/modules/Cart/types.d.ts +82 -5
  15. package/dist/modules/Cart/types.js +22 -0
  16. package/dist/modules/Cart/utils.d.ts +111 -12
  17. package/dist/modules/Cart/utils.js +286 -73
  18. package/dist/modules/Date/index.d.ts +6 -6
  19. package/dist/modules/Date/index.js +41 -58
  20. package/dist/modules/Date/types.d.ts +22 -6
  21. package/dist/modules/Date/utils.d.ts +4 -3
  22. package/dist/modules/Date/utils.js +81 -30
  23. package/dist/modules/Discount/index.d.ts +4 -4
  24. package/dist/modules/Discount/index.js +11 -11
  25. package/dist/modules/Order/index.d.ts +11 -5
  26. package/dist/modules/Order/index.js +47 -18
  27. package/dist/modules/Order/types.d.ts +10 -3
  28. package/dist/modules/Order/utils.d.ts +10 -0
  29. package/dist/modules/Order/utils.js +15 -0
  30. package/dist/modules/Product/index.d.ts +14 -1
  31. package/dist/modules/Product/index.js +35 -0
  32. package/dist/modules/Product/types.d.ts +27 -3
  33. package/dist/modules/ProductList/index.js +11 -5
  34. package/dist/modules/Resource/types.d.ts +1 -0
  35. package/dist/modules/Resource/utils.js +1 -1
  36. package/dist/modules/Rules/index.d.ts +2 -2
  37. package/dist/modules/Rules/index.js +97 -29
  38. package/dist/modules/Rules/types.d.ts +5 -1
  39. package/dist/modules/Schedule/index.d.ts +18 -0
  40. package/dist/modules/Schedule/index.js +111 -0
  41. package/dist/modules/Schedule/type.d.ts +157 -0
  42. package/dist/modules/Schedule/type.js +1 -0
  43. package/dist/modules/Schedule/types.d.ts +182 -0
  44. package/dist/modules/Schedule/types.js +1 -0
  45. package/dist/modules/Schedule/utils.d.ts +67 -0
  46. package/dist/modules/Schedule/utils.js +729 -0
  47. package/dist/modules/Step/index.d.ts +14 -3
  48. package/dist/modules/Step/index.js +54 -2
  49. package/dist/modules/Summary/index.d.ts +12 -5
  50. package/dist/modules/Summary/index.js +33 -7
  51. package/dist/modules/Summary/types.d.ts +23 -2
  52. package/dist/modules/Summary/utils.d.ts +14 -4
  53. package/dist/modules/Summary/utils.js +46 -4
  54. package/dist/modules/index.d.ts +10 -0
  55. package/dist/modules/index.js +11 -1
  56. package/dist/plugins/index.d.ts +3 -3
  57. package/dist/plugins/request.d.ts +3 -3
  58. package/dist/plugins/request.js +30 -30
  59. package/dist/plugins/shopStore.d.ts +1 -1
  60. package/dist/solution/BookingByStep/index.d.ts +90 -24
  61. package/dist/solution/BookingByStep/index.js +989 -317
  62. package/dist/solution/BookingByStep/types.d.ts +3 -10
  63. package/dist/solution/BookingByStep/types.js +11 -15
  64. package/dist/solution/BookingByStep/utils/products.d.ts +1 -1
  65. package/dist/solution/BookingByStep/utils/products.js +3 -0
  66. package/dist/solution/BookingByStep/utils/resources.d.ts +60 -6
  67. package/dist/solution/BookingByStep/utils/resources.js +293 -52
  68. package/dist/solution/ShopDiscount/index.d.ts +4 -4
  69. package/dist/solution/ShopDiscount/index.js +16 -16
  70. package/dist/solution/ShopDiscount/types.d.ts +2 -2
  71. package/dist/solution/ShopDiscount/utils.js +1 -1
  72. package/lib/core/index.js +7 -2
  73. package/lib/modules/Account/index.d.ts +2 -6
  74. package/lib/modules/Account/index.js +15 -30
  75. package/lib/modules/Account/types.d.ts +12 -1
  76. package/lib/modules/AccountList/index.d.ts +20 -1
  77. package/lib/modules/AccountList/index.js +122 -13
  78. package/lib/modules/AccountList/types.d.ts +33 -1
  79. package/lib/modules/AccountList/utils.d.ts +9 -0
  80. package/lib/modules/AccountList/utils.js +39 -0
  81. package/lib/modules/BaseModule.d.ts +2 -2
  82. package/lib/modules/BaseModule.js +14 -3
  83. package/lib/modules/Cart/index.d.ts +8 -5
  84. package/lib/modules/Cart/index.js +81 -8
  85. package/lib/modules/Cart/types.d.ts +82 -5
  86. package/lib/modules/Cart/types.js +20 -2
  87. package/lib/modules/Cart/utils.d.ts +111 -12
  88. package/lib/modules/Cart/utils.js +186 -43
  89. package/lib/modules/Date/index.d.ts +6 -6
  90. package/lib/modules/Date/index.js +13 -28
  91. package/lib/modules/Date/types.d.ts +22 -6
  92. package/lib/modules/Date/utils.d.ts +4 -3
  93. package/lib/modules/Date/utils.js +47 -13
  94. package/lib/modules/Discount/index.d.ts +4 -4
  95. package/lib/modules/Discount/index.js +9 -2
  96. package/lib/modules/Guests/index.js +4 -1
  97. package/lib/modules/Order/index.d.ts +11 -5
  98. package/lib/modules/Order/index.js +24 -3
  99. package/lib/modules/Order/types.d.ts +10 -3
  100. package/lib/modules/Order/utils.d.ts +10 -0
  101. package/lib/modules/Order/utils.js +45 -0
  102. package/lib/modules/Payment/index.js +1 -6
  103. package/lib/modules/Product/index.d.ts +14 -1
  104. package/lib/modules/Product/index.js +19 -0
  105. package/lib/modules/Product/types.d.ts +27 -3
  106. package/lib/modules/ProductList/index.js +21 -7
  107. package/lib/modules/Resource/index.js +4 -1
  108. package/lib/modules/Resource/types.d.ts +1 -0
  109. package/lib/modules/Resource/utils.js +7 -4
  110. package/lib/modules/Rules/index.d.ts +2 -2
  111. package/lib/modules/Rules/index.js +100 -25
  112. package/lib/modules/Rules/types.d.ts +5 -1
  113. package/lib/modules/Schedule/index.d.ts +18 -0
  114. package/lib/modules/Schedule/index.js +81 -0
  115. package/lib/modules/Schedule/type.d.ts +157 -0
  116. package/lib/modules/Schedule/type.js +17 -0
  117. package/lib/modules/Schedule/types.d.ts +182 -0
  118. package/lib/modules/Schedule/types.js +17 -0
  119. package/lib/modules/Schedule/utils.d.ts +67 -0
  120. package/lib/modules/Schedule/utils.js +600 -0
  121. package/lib/modules/Step/index.d.ts +14 -3
  122. package/lib/modules/Step/index.js +38 -1
  123. package/lib/modules/Summary/index.d.ts +12 -5
  124. package/lib/modules/Summary/index.js +15 -1
  125. package/lib/modules/Summary/types.d.ts +23 -2
  126. package/lib/modules/Summary/utils.d.ts +14 -4
  127. package/lib/modules/Summary/utils.js +30 -1
  128. package/lib/modules/index.d.ts +10 -0
  129. package/lib/modules/index.js +21 -1
  130. package/lib/plugins/index.d.ts +3 -3
  131. package/lib/plugins/request.d.ts +3 -3
  132. package/lib/plugins/request.js +48 -11
  133. package/lib/plugins/shopStore.d.ts +1 -1
  134. package/lib/solution/BookingByStep/index.d.ts +90 -24
  135. package/lib/solution/BookingByStep/index.js +667 -145
  136. package/lib/solution/BookingByStep/types.d.ts +3 -10
  137. package/lib/solution/BookingByStep/types.js +37 -14
  138. package/lib/solution/BookingByStep/utils/products.d.ts +1 -1
  139. package/lib/solution/BookingByStep/utils/products.js +3 -0
  140. package/lib/solution/BookingByStep/utils/resources.d.ts +60 -6
  141. package/lib/solution/BookingByStep/utils/resources.js +286 -54
  142. package/lib/solution/BuyTickets/index.js +34 -20
  143. package/lib/solution/ShopDiscount/index.d.ts +4 -4
  144. package/lib/solution/ShopDiscount/index.js +10 -2
  145. package/lib/solution/ShopDiscount/types.d.ts +2 -2
  146. package/package.json +4 -2
@@ -1,4 +1,4 @@
1
- import { Plugin } from "../types";
1
+ import { Plugin } from '../types';
2
2
  export interface ShopStorePlugin extends Plugin {
3
3
  get(model: string): any;
4
4
  }
@@ -1,12 +1,14 @@
1
- import { Module, PisellCore } from "../../types";
2
- import { BaseModule } from "../../modules/BaseModule";
3
- import { Response } from "../../plugins";
4
- import { BookingByStepState } from "./types";
5
- import { CartItem, IUpdateItemParams, ProductData } from "../../modules";
6
- import { Account } from "../../modules/Account/types";
7
- import { IStep } from "../../modules/Step/tyeps";
8
- import { TimeSliceItem } from "./utils/resources";
9
- import { ITime } from "../../modules/Date/types";
1
+ import { Module, PisellCore } from '../../types';
2
+ import { BaseModule } from '../../modules/BaseModule';
3
+ import { Response } from '../../plugins';
4
+ import { BookingByStepState } from './types';
5
+ import { CartItem, IUpdateItemParams, ProductData, ProductResourceItem, ECartItemInfoType, ECartItemCheckType } from '../../modules';
6
+ import { Account } from '../../modules/Account/types';
7
+ import { IStep } from '../../modules/Step/tyeps';
8
+ import { TimeSliceItem } from './utils/resources';
9
+ import { ITime } from '../../modules/Date/types';
10
+ import dayjs from 'dayjs';
11
+ import { IHolder, IFetchHolderAccountsParams } from '../../modules/AccountList/types';
10
12
  export declare class BookingByStepImpl extends BaseModule implements Module {
11
13
  protected defaultName: string;
12
14
  protected defaultVersion: string;
@@ -17,6 +19,7 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
17
19
  private store;
18
20
  private otherParams;
19
21
  private cacheId;
22
+ private otherData;
20
23
  initialize(core: PisellCore, options: any): Promise<void>;
21
24
  initStep(stepList: (keyof BookingByStepState)[]): void;
22
25
  getCurrentStep(): {
@@ -27,26 +30,59 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
27
30
  back(): void;
28
31
  gotoStep(index: number): void;
29
32
  getStepList(): IStep[];
30
- loadProducts({ category_ids, product_ids, collection, }: {
33
+ /**
34
+ * 添加step
35
+ */
36
+ addStep(step: IStep, key?: string): void;
37
+ /**
38
+ * 删除step
39
+ */
40
+ removeStep(key: string): void;
41
+ loadProducts({ category_ids, product_ids, collection, schedule_ids, }: {
31
42
  category_ids?: number[];
32
43
  product_ids?: number[];
33
44
  collection?: number | string[];
45
+ schedule_ids?: number[];
46
+ }): Promise<any>;
47
+ loadProductByScheduleDate({ date, product_ids, }: {
48
+ date: string;
49
+ product_ids?: number[];
34
50
  }): Promise<any>;
51
+ loadAllSchedule(): Promise<void>;
52
+ loadScheduleAvailableDate({ startDate, endDate, custom_page_id, }: {
53
+ startDate: string;
54
+ endDate: string;
55
+ custom_page_id?: number;
56
+ }): Promise<ITime[]>;
35
57
  storeProduct(productData: ProductData): Promise<void>;
36
- addAccount(accounts: Account[]): Promise<void>;
58
+ addAccount(account: Account | IHolder, extra?: {
59
+ type: 'account' | 'holder';
60
+ customerId: number;
61
+ }): Promise<Account | null>;
62
+ addAccounts(accounts: Account[] | IHolder[], extra?: {
63
+ type: 'account' | 'holder';
64
+ customerId: number;
65
+ }): Promise<Account[] | undefined>;
37
66
  getAccounts(): Promise<(Account | null)[]>;
38
67
  checkHasLoginAccount(): boolean;
39
68
  setActiveAccount(id: string): void;
40
69
  getActiveAccount(): Account | null;
41
70
  removeAccount(id: string): void;
71
+ /**
72
+ * 获取holder类型账户列表
73
+ * @param params
74
+ */
75
+ fetchHolderAccountsAsync(params: IFetchHolderAccountsParams): Promise<void>;
42
76
  setDateRange(dateRange: ITime[]): Promise<void>;
43
77
  clearDateRange(): void;
44
78
  getDateRange(): Promise<ITime[]>;
45
79
  getCart(): CartItem[];
46
80
  getAvailableDate(params?: {
81
+ url?: string;
47
82
  products?: ProductData[];
48
83
  startDate?: string;
49
84
  endDate?: string;
85
+ type?: 'month' | 'day';
50
86
  }): Promise<ITime[]>;
51
87
  /**
52
88
  * 获取购物车汇总信息
@@ -57,11 +93,25 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
57
93
  taxTitle?: string | undefined;
58
94
  totalTaxFee?: string | number | undefined;
59
95
  isPriceIncludeTax?: 0 | 1 | undefined;
96
+ deposit?: {
97
+ total?: string | number | undefined;
98
+ policies?: import("../../modules/Summary/types").IProtocol[] | undefined;
99
+ } | undefined;
60
100
  }>;
101
+ /**
102
+ * 获取协议
103
+ */
104
+ getProtocol(protocolId: string): Promise<any>;
61
105
  getProducts(): Promise<ProductData[]>;
62
106
  setLoginAccount(accountId: string, accountInfo: Account): Promise<void>;
63
107
  generateCartData(): Promise<void>;
64
108
  getFreeProduct(id: string | number): Promise<Response<any>>;
109
+ /**
110
+ * 检查购物车提交订单前是否符合条件
111
+ * @param type 类型 "holder" | "account"
112
+ * @returns boolean
113
+ */
114
+ checkBeforeSubmitOrder(type: 'holder' | 'account'): boolean;
65
115
  submitOrder(): Promise<void>;
66
116
  pay(): Promise<void>;
67
117
  getPayInfo(): Promise<void>;
@@ -80,7 +130,8 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
80
130
  /**
81
131
  * 从购物车中按类别删除信息
82
132
  */
83
- deleteCartItemInfo(types: "resource" | "time"): void;
133
+ deleteCartItemInfo(type: ECartItemInfoType, _id?: string): void;
134
+ checkCartItemByType(cartItem: CartItem, type: ECartItemCheckType): boolean;
84
135
  destroy(): void;
85
136
  getResourcesList(): any[];
86
137
  getResourcesListByCartItem(id: string | number): {
@@ -96,22 +147,12 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
96
147
  resources: any[];
97
148
  currentResourceId: number;
98
149
  }): TimeSliceItem[];
99
- autoSelectResource({ resourceProductData, resources, timeSlots, }: {
100
- resourceProductData: any;
101
- resources: any[];
102
- timeSlots?: TimeSliceItem;
103
- }): {
104
- selectedResource: any;
105
- timeSlots?: undefined;
106
- } | {
107
- timeSlots: any[];
108
- selectedResource: any;
109
- } | undefined;
110
- autoSelectAccountResources({ holder_id, resources_code, timeSlots, countMap, }: {
150
+ autoSelectAccountResources({ holder_id, resources_code, timeSlots, countMap, capacity, }: {
111
151
  holder_id: string;
112
152
  resources_code: string | number;
113
153
  timeSlots?: TimeSliceItem;
114
154
  countMap: Record<number, number>;
155
+ capacity?: number;
115
156
  }): {
116
157
  selectedResource: any;
117
158
  timeSlots?: undefined;
@@ -126,4 +167,29 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
126
167
  submitTimeSlot(timeSlots: TimeSliceItem): void;
127
168
  clearCache(): void;
128
169
  clearCacheByModule(module: string): void;
170
+ private getScheduleDataByIds;
171
+ openProductDetail(productId: number): Promise<void>;
172
+ closeProductDetail(): void;
173
+ getTimeslotBySchedule({ date, scheduleIds, resources, }: {
174
+ date: string;
175
+ scheduleIds?: number[];
176
+ resources?: ProductResourceItem[];
177
+ }): {
178
+ start_time: string;
179
+ end_time: string;
180
+ start_at: dayjs.Dayjs;
181
+ end_at: dayjs.Dayjs;
182
+ count: number;
183
+ }[];
184
+ addProductToCart({ product, date, account, }: {
185
+ product: ProductData;
186
+ date: {
187
+ startTime: string;
188
+ endTime: string;
189
+ };
190
+ account: Account;
191
+ }): void;
192
+ setOtherData(key: string, value: any): void;
193
+ getOtherData(key: string): any;
194
+ getProductTypeById(id: number): Promise<"duration" | "session" | "normal">;
129
195
  }