@pisell/pisellos 2.2.93 → 2.2.95

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 (53) hide show
  1. package/dist/modules/Order/index.d.ts +1 -1
  2. package/dist/plugins/app-types/app/app.d.ts +1 -0
  3. package/dist/server/index.d.ts +55 -0
  4. package/dist/server/index.js +826 -207
  5. package/dist/server/modules/index.d.ts +6 -0
  6. package/dist/server/modules/index.js +7 -0
  7. package/dist/server/modules/order/index.d.ts +87 -0
  8. package/dist/server/modules/order/index.js +916 -0
  9. package/dist/server/modules/order/types.d.ts +530 -0
  10. package/dist/server/modules/order/types.js +141 -0
  11. package/dist/server/modules/order/utils/filterBookings.d.ts +6 -0
  12. package/dist/server/modules/order/utils/filterBookings.js +350 -0
  13. package/dist/server/modules/order/utils/filterOrders.d.ts +15 -0
  14. package/dist/server/modules/order/utils/filterOrders.js +226 -0
  15. package/dist/server/modules/resource/index.d.ts +88 -0
  16. package/dist/server/modules/resource/index.js +1202 -0
  17. package/dist/server/modules/resource/types.d.ts +121 -0
  18. package/dist/server/modules/resource/types.js +47 -0
  19. package/dist/solution/BookingByStep/index.d.ts +1 -1
  20. package/dist/solution/BookingTicket/index.d.ts +1 -1
  21. package/dist/solution/Sales/index.d.ts +96 -0
  22. package/dist/solution/Sales/index.js +562 -0
  23. package/dist/solution/Sales/types.d.ts +66 -0
  24. package/dist/solution/Sales/types.js +26 -0
  25. package/dist/solution/index.d.ts +1 -0
  26. package/dist/solution/index.js +2 -1
  27. package/lib/modules/Order/index.d.ts +1 -1
  28. package/lib/plugins/app-types/app/app.d.ts +1 -0
  29. package/lib/server/index.d.ts +55 -0
  30. package/lib/server/index.js +343 -1
  31. package/lib/server/modules/index.d.ts +6 -0
  32. package/lib/server/modules/index.js +16 -2
  33. package/lib/server/modules/order/index.d.ts +87 -0
  34. package/lib/server/modules/order/index.js +543 -0
  35. package/lib/server/modules/order/types.d.ts +530 -0
  36. package/lib/server/modules/order/types.js +34 -0
  37. package/lib/server/modules/order/utils/filterBookings.d.ts +6 -0
  38. package/lib/server/modules/order/utils/filterBookings.js +320 -0
  39. package/lib/server/modules/order/utils/filterOrders.d.ts +15 -0
  40. package/lib/server/modules/order/utils/filterOrders.js +197 -0
  41. package/lib/server/modules/resource/index.d.ts +88 -0
  42. package/lib/server/modules/resource/index.js +571 -0
  43. package/lib/server/modules/resource/types.d.ts +121 -0
  44. package/lib/server/modules/resource/types.js +35 -0
  45. package/lib/solution/BookingByStep/index.d.ts +1 -1
  46. package/lib/solution/BookingTicket/index.d.ts +1 -1
  47. package/lib/solution/Sales/index.d.ts +96 -0
  48. package/lib/solution/Sales/index.js +413 -0
  49. package/lib/solution/Sales/types.d.ts +66 -0
  50. package/lib/solution/Sales/types.js +35 -0
  51. package/lib/solution/index.d.ts +1 -0
  52. package/lib/solution/index.js +3 -1
  53. package/package.json +1 -1
@@ -13,4 +13,10 @@ export type { QuotationState, QuotationData, QuotationProductPrice } from './quo
13
13
  export { QuotationHooks } from './quotation/types';
14
14
  export { ScheduleModuleEx } from './schedule';
15
15
  export type { ScheduleState, ScheduleItem } from './schedule/types';
16
+ export { OrderModule } from './order';
17
+ export type { OrderState, OrderData, OrderId, OrderSummary, OrderBookingItem, OrderProductLineItem, OrderPaymentItem, OrderSurchargeItem, OrderProductDiscountItem, OrderWithoutBookings, BookingData, OrderFilters, BookingFilters, OrderFilterResult, BookingFilterResult, OrderModulePagedResult, } from './order/types';
18
+ export { OrderHooks } from './order/types';
19
+ export { ResourceModule, resourceModule } from './resource';
20
+ export type { ResourceState, ResourceData, ResourceId, ResourceBooking, ResourcePageQuery, ResourcePageResult, QueryOptions, ScheduleEventResource, } from './resource';
21
+ export { ResourceHooks } from './resource';
16
22
  export type { RouteHandler, HttpMethod, RouteDefinition, Router, ModuleRegistryConfig, } from '../types';
@@ -17,5 +17,12 @@ export { QuotationHooks } from "./quotation/types";
17
17
 
18
18
  // Schedule 模块(扩展版本)
19
19
  export { ScheduleModuleEx } from "./schedule";
20
+ // Order 模块
21
+ export { OrderModule } from "./order";
22
+ export { OrderHooks } from "./order/types";
23
+
24
+ // Resource 模块
25
+ export { ResourceModule, resourceModule } from "./resource";
26
+ export { ResourceHooks } from "./resource";
20
27
 
21
28
  // Server 类型
@@ -0,0 +1,87 @@
1
+ import { Module, ModuleOptions, PisellCore } from '../../../types';
2
+ import { BaseModule } from '../../../modules/BaseModule';
3
+ import type { RouteDefinition } from '../../types';
4
+ import { OrderData, OrderId } from './types';
5
+ /**
6
+ * Order 模块 - 基础框架
7
+ */
8
+ export declare class OrderModule extends BaseModule implements Module {
9
+ protected defaultName: string;
10
+ protected defaultVersion: string;
11
+ private store;
12
+ private dbManager;
13
+ private orderDataSource;
14
+ private pendingSyncMessages;
15
+ private syncTimer?;
16
+ private readonly ORDER_SYNC_DEBOUNCE_MS;
17
+ private resourceIdIndex;
18
+ private logger;
19
+ private storage;
20
+ constructor(name?: string, version?: string);
21
+ initialize(core: PisellCore, options?: ModuleOptions): Promise<void>;
22
+ /**
23
+ * 记录信息日志
24
+ * @param title 日志标题
25
+ * @param metadata 日志元数据
26
+ */
27
+ private logInfo;
28
+ /**
29
+ * 记录错误日志
30
+ * @param title 日志标题
31
+ * @param metadata 日志元数据
32
+ */
33
+ private logError;
34
+ preload(): Promise<void>;
35
+ getOrders(): OrderData[];
36
+ getOrderById(id: OrderId): OrderData | undefined;
37
+ /** 按 order_id 查询(推荐) */
38
+ getOrderByOrderId(orderId: OrderId): OrderData | undefined;
39
+ loadOrdersByServer(): Promise<OrderData[]>;
40
+ getOrdersByResourceId(resourceId: string | number): OrderData[];
41
+ getRoutes(): RouteDefinition[];
42
+ destroy(): void;
43
+ private syncOrdersMap;
44
+ private extractResourceIds;
45
+ private getOrderDateKey;
46
+ /**
47
+ * 初始化 OrderDataSource 实例
48
+ */
49
+ private initOrderDataSource;
50
+ /**
51
+ * 初始化 pubsub 订阅,监听订单变更
52
+ */
53
+ private setupOrderSync;
54
+ /**
55
+ * 处理防抖后的同步消息批次
56
+ *
57
+ * 后端统一发送 change 消息,不再区分新增/编辑/删除。
58
+ * - 单条(id/order_id):若携带 body/data 则直接 upsert 到本地
59
+ * - 批量(ids):通过 HTTP 按 ids 增量拉取,再 merge 到本地
60
+ */
61
+ private processOrderSyncMessages;
62
+ /**
63
+ * 通过 HTTP 按 ids 增量拉取订单
64
+ */
65
+ private fetchOrdersByHttp;
66
+ /**
67
+ * 将增量订单合并到 store
68
+ */
69
+ private mergeOrdersToStore;
70
+ private normalizeOrderSyncMessage;
71
+ private normalizeOrderSyncPayload;
72
+ private uniqueOrderIds;
73
+ private getIdKey;
74
+ /**
75
+ * 当前订单拉取窗口:
76
+ * - 优先使用 createdAtQuery.sales_time_between(已按营业日边界初始化)
77
+ * - 无法解析时退化为自然日窗口
78
+ */
79
+ private getCurrentPullWindow;
80
+ private hasPulledOrdersToday;
81
+ private markOrderPulledAtNow;
82
+ private getStorageItem;
83
+ private setStorageItem;
84
+ private loadOrdersFromSQLite;
85
+ private saveOrdersToSQLite;
86
+ clear(): Promise<void>;
87
+ }