@pisell/pisellos 2.1.7 → 2.1.9
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/modules/Order/index.js +10 -4
- package/dist/modules/Payment/index.js +20 -24
- package/dist/modules/Payment/walletpass.js +2 -3
- package/dist/solution/BookingByStep/index.d.ts +1 -1
- package/dist/solution/BookingTicket/index.d.ts +1 -1
- package/dist/solution/Checkout/index.d.ts +1 -153
- package/dist/solution/Checkout/index.js +1003 -2473
- package/dist/solution/Checkout/types.d.ts +0 -221
- package/dist/solution/Checkout/types.js +0 -49
- package/dist/solution/Checkout/utils/index.d.ts +9 -5
- package/dist/solution/Checkout/utils/index.js +18 -56
- package/lib/modules/Order/index.js +6 -0
- package/lib/modules/Payment/index.js +2 -6
- package/lib/modules/Payment/walletpass.js +1 -1
- package/lib/solution/BookingByStep/index.d.ts +1 -1
- package/lib/solution/BookingTicket/index.d.ts +1 -1
- package/lib/solution/Checkout/index.d.ts +1 -153
- package/lib/solution/Checkout/index.js +172 -1116
- package/lib/solution/Checkout/types.d.ts +0 -221
- package/lib/solution/Checkout/types.js +2 -27
- package/lib/solution/Checkout/utils/index.d.ts +9 -5
- package/lib/solution/Checkout/utils/index.js +12 -53
- package/package.json +1 -1
|
@@ -2,42 +2,6 @@ import { Module } from '../../types';
|
|
|
2
2
|
import { OrderModule } from '../../modules/Order';
|
|
3
3
|
import { PaymentModuleAPI, PaymentOrder, PaymentMethod, PaymentStatus, PaymentItem, PaymentItemInput } from '../../modules/Payment';
|
|
4
4
|
import { CartItem } from '../../modules/Cart/types';
|
|
5
|
-
/**
|
|
6
|
-
* 结账状态枚举
|
|
7
|
-
*/
|
|
8
|
-
export declare enum CheckoutStatus {
|
|
9
|
-
/** 初始化中 */
|
|
10
|
-
Initializing = "initializing",
|
|
11
|
-
/** 准备就绪 */
|
|
12
|
-
Ready = "ready",
|
|
13
|
-
/** 创建订单中 */
|
|
14
|
-
CreatingOrder = "creating_order",
|
|
15
|
-
/** 订单已创建 */
|
|
16
|
-
OrderCreated = "order_created",
|
|
17
|
-
/** 处理支付中 */
|
|
18
|
-
ProcessingPayment = "processing_payment",
|
|
19
|
-
/** 支付完成 */
|
|
20
|
-
PaymentCompleted = "payment_completed",
|
|
21
|
-
/** 结账完成 */
|
|
22
|
-
Completed = "completed",
|
|
23
|
-
/** 已取消 */
|
|
24
|
-
Cancelled = "cancelled",
|
|
25
|
-
/** 错误状态 */
|
|
26
|
-
Error = "error"
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* 结账步骤枚举
|
|
30
|
-
*/
|
|
31
|
-
export declare enum CheckoutStep {
|
|
32
|
-
/** 订单确认 */
|
|
33
|
-
OrderConfirmation = "order_confirmation",
|
|
34
|
-
/** 支付方式选择 */
|
|
35
|
-
PaymentMethod = "payment_method",
|
|
36
|
-
/** 支付处理 */
|
|
37
|
-
PaymentProcessing = "payment_processing",
|
|
38
|
-
/** 完成 */
|
|
39
|
-
Complete = "complete"
|
|
40
|
-
}
|
|
41
5
|
/**
|
|
42
6
|
* 结账错误类型
|
|
43
7
|
*/
|
|
@@ -127,15 +91,6 @@ export interface CreateLocalOrderParams {
|
|
|
127
91
|
autoPayment?: boolean;
|
|
128
92
|
totalInfo: any;
|
|
129
93
|
}
|
|
130
|
-
/**
|
|
131
|
-
* 手动下单参数
|
|
132
|
-
*/
|
|
133
|
-
export interface PlaceOrderParams {
|
|
134
|
-
/** 订单提交的 URL (可选,默认使用 /order/appointment) */
|
|
135
|
-
url?: string;
|
|
136
|
-
/** 是否自动替换虚拟订单ID为真实订单ID */
|
|
137
|
-
autoReplaceOrderId?: boolean;
|
|
138
|
-
}
|
|
139
94
|
/**
|
|
140
95
|
* 本地订单数据结构 (基于 appointmentDemo.json)
|
|
141
96
|
*/
|
|
@@ -300,74 +255,12 @@ export interface LocalResourceItem {
|
|
|
300
255
|
/** 资源类型 (可选) */
|
|
301
256
|
resourceType?: string;
|
|
302
257
|
}
|
|
303
|
-
/**
|
|
304
|
-
* 订单创建参数
|
|
305
|
-
*/
|
|
306
|
-
export interface CreateOrderParams {
|
|
307
|
-
/** 购物车商品 */
|
|
308
|
-
cartItems: CartItem[];
|
|
309
|
-
/** 订单类型 */
|
|
310
|
-
type?: 'virtual' | 'appointment_booking';
|
|
311
|
-
/** 平台类型 */
|
|
312
|
-
platform?: 'pc' | 'h5';
|
|
313
|
-
/** 额外参数 */
|
|
314
|
-
extra?: Record<string, any>;
|
|
315
|
-
}
|
|
316
|
-
/**
|
|
317
|
-
* 支付处理参数
|
|
318
|
-
*/
|
|
319
|
-
export interface ProcessPaymentParams {
|
|
320
|
-
/** 订单UUID */
|
|
321
|
-
orderUuid: string;
|
|
322
|
-
/** 支付方式代码 */
|
|
323
|
-
paymentMethodCode: string;
|
|
324
|
-
/** 支付金额 */
|
|
325
|
-
amount: string | number;
|
|
326
|
-
/** 支付元数据 */
|
|
327
|
-
metadata?: Record<string, any>;
|
|
328
|
-
}
|
|
329
|
-
/**
|
|
330
|
-
* 结账状态信息
|
|
331
|
-
*/
|
|
332
|
-
export interface CheckoutStatusInfo {
|
|
333
|
-
/** 当前状态 */
|
|
334
|
-
status: CheckoutStatus;
|
|
335
|
-
/** 当前步骤 */
|
|
336
|
-
step: CheckoutStep;
|
|
337
|
-
/** 进度百分比 (0-100) */
|
|
338
|
-
progress: number;
|
|
339
|
-
/** 状态消息 */
|
|
340
|
-
message?: string;
|
|
341
|
-
/** 错误信息 */
|
|
342
|
-
error?: CheckoutError;
|
|
343
|
-
}
|
|
344
|
-
/**
|
|
345
|
-
* 结账摘要信息
|
|
346
|
-
*/
|
|
347
|
-
export interface CheckoutSummary {
|
|
348
|
-
/** 订单信息 */
|
|
349
|
-
order?: PaymentOrder;
|
|
350
|
-
/** 总金额 */
|
|
351
|
-
totalAmount: string;
|
|
352
|
-
/** 已支付金额 */
|
|
353
|
-
paidAmount: string;
|
|
354
|
-
/** 待支付金额 */
|
|
355
|
-
remainingAmount: string;
|
|
356
|
-
/** 支付状态 */
|
|
357
|
-
paymentStatus: PaymentStatus;
|
|
358
|
-
/** 可用支付方式 */
|
|
359
|
-
availablePaymentMethods: PaymentMethod[];
|
|
360
|
-
}
|
|
361
258
|
/**
|
|
362
259
|
* 结账事件钩子
|
|
363
260
|
*/
|
|
364
261
|
export declare enum CheckoutHooks {
|
|
365
262
|
/** 结账初始化完成 */
|
|
366
263
|
OnCheckoutInitialized = "checkout:onInitialized",
|
|
367
|
-
/** 状态变更 */
|
|
368
|
-
OnStatusChanged = "checkout:onStatusChanged",
|
|
369
|
-
/** 步骤变更 */
|
|
370
|
-
OnStepChanged = "checkout:onStepChanged",
|
|
371
264
|
/** 订单创建成功 */
|
|
372
265
|
OnOrderCreated = "checkout:onOrderCreated",
|
|
373
266
|
/** 订单创建失败 */
|
|
@@ -413,10 +306,6 @@ export declare enum CheckoutHooks {
|
|
|
413
306
|
* 结账状态数据
|
|
414
307
|
*/
|
|
415
308
|
export interface CheckoutState {
|
|
416
|
-
/** 当前状态 */
|
|
417
|
-
status: CheckoutStatus;
|
|
418
|
-
/** 当前步骤 */
|
|
419
|
-
step: CheckoutStep;
|
|
420
309
|
/** 当前订单 */
|
|
421
310
|
currentOrder?: PaymentOrder;
|
|
422
311
|
/** 购物车商品 */
|
|
@@ -449,10 +338,6 @@ export interface CurrentOrderInfo {
|
|
|
449
338
|
uuid?: string;
|
|
450
339
|
/** 订单ID */
|
|
451
340
|
orderId?: string;
|
|
452
|
-
/** 订单状态 */
|
|
453
|
-
status?: CheckoutStatus;
|
|
454
|
-
/** 当前步骤 */
|
|
455
|
-
step?: CheckoutStep;
|
|
456
341
|
/** 订单总金额 */
|
|
457
342
|
totalAmount?: string;
|
|
458
343
|
/** 待付金额 */
|
|
@@ -486,22 +371,6 @@ export interface CheckoutModuleAPI extends Module {
|
|
|
486
371
|
* 创建本地订单 (前端模拟下单流程)
|
|
487
372
|
*/
|
|
488
373
|
createLocalOrderAsync(params: CreateLocalOrderParams): Promise<PaymentOrder>;
|
|
489
|
-
/**
|
|
490
|
-
* 手动下单 (根据虚拟订单生成实际订单)
|
|
491
|
-
*/
|
|
492
|
-
placeOrderAsync(params?: PlaceOrderParams): Promise<{
|
|
493
|
-
success: boolean;
|
|
494
|
-
orderId?: string;
|
|
495
|
-
error?: string;
|
|
496
|
-
}>;
|
|
497
|
-
/**
|
|
498
|
-
* 创建订单
|
|
499
|
-
*/
|
|
500
|
-
createOrderAsync(params: CreateOrderParams): Promise<PaymentOrder>;
|
|
501
|
-
/**
|
|
502
|
-
* 处理支付
|
|
503
|
-
*/
|
|
504
|
-
processPaymentAsync(params: ProcessPaymentParams): Promise<void>;
|
|
505
374
|
/**
|
|
506
375
|
* 完成结账
|
|
507
376
|
*/
|
|
@@ -509,26 +378,6 @@ export interface CheckoutModuleAPI extends Module {
|
|
|
509
378
|
success: boolean;
|
|
510
379
|
orderId?: string;
|
|
511
380
|
}>;
|
|
512
|
-
/**
|
|
513
|
-
* 取消结账
|
|
514
|
-
*/
|
|
515
|
-
cancelCheckoutAsync(): Promise<void>;
|
|
516
|
-
/**
|
|
517
|
-
* 获取结账状态
|
|
518
|
-
*/
|
|
519
|
-
getCheckoutStatus(): CheckoutStatusInfo;
|
|
520
|
-
/**
|
|
521
|
-
* 获取结账摘要
|
|
522
|
-
*/
|
|
523
|
-
getCheckoutSummaryAsync(): Promise<CheckoutSummary>;
|
|
524
|
-
/**
|
|
525
|
-
* 获取可用支付方式
|
|
526
|
-
*/
|
|
527
|
-
getAvailablePaymentMethodsAsync(): Promise<PaymentMethod[]>;
|
|
528
|
-
/**
|
|
529
|
-
* 刷新支付方式缓存
|
|
530
|
-
*/
|
|
531
|
-
refreshPaymentMethodsAsync(): Promise<PaymentMethod[]>;
|
|
532
381
|
/**
|
|
533
382
|
* 获取当前订单基础信息
|
|
534
383
|
*/
|
|
@@ -537,21 +386,6 @@ export interface CheckoutModuleAPI extends Module {
|
|
|
537
386
|
* 获取当前订单的支付项
|
|
538
387
|
*/
|
|
539
388
|
getCurrentOrderPaymentItemsAsync(): Promise<PaymentItem[]>;
|
|
540
|
-
/**
|
|
541
|
-
* 验证结账前置条件
|
|
542
|
-
*/
|
|
543
|
-
validateCheckoutAsync(): Promise<{
|
|
544
|
-
valid: boolean;
|
|
545
|
-
errors: string[];
|
|
546
|
-
}>;
|
|
547
|
-
/**
|
|
548
|
-
* 重试失败的操作
|
|
549
|
-
*/
|
|
550
|
-
retryFailedOperationAsync(): Promise<void>;
|
|
551
|
-
/**
|
|
552
|
-
* 设置当前步骤
|
|
553
|
-
*/
|
|
554
|
-
setCurrentStep(step: CheckoutStep): void;
|
|
555
389
|
/**
|
|
556
390
|
* 获取订单模块
|
|
557
391
|
*/
|
|
@@ -578,18 +412,10 @@ export interface CheckoutModuleAPI extends Module {
|
|
|
578
412
|
* @returns 当前系统计算的待付金额
|
|
579
413
|
*/
|
|
580
414
|
getBalanceDueAmount(): string;
|
|
581
|
-
/**
|
|
582
|
-
* 刷新 stateAmount 为当前剩余未支付金额
|
|
583
|
-
*/
|
|
584
|
-
refreshStateAmountAsync(): Promise<void>;
|
|
585
415
|
/**
|
|
586
416
|
* 获取购物车小计数据
|
|
587
417
|
*/
|
|
588
418
|
getCartSummary(): CartSummaryItem[] | null;
|
|
589
|
-
/**
|
|
590
|
-
* 获取提取的金额详细信息
|
|
591
|
-
*/
|
|
592
|
-
getExtractedAmountInfo(): ExtractedAmountInfo | null;
|
|
593
419
|
/**
|
|
594
420
|
* 获取支付方式列表(直接调用 Payment 模块)
|
|
595
421
|
*/
|
|
@@ -610,20 +436,6 @@ export interface CheckoutModuleAPI extends Module {
|
|
|
610
436
|
* 修改当前订单的定金状态
|
|
611
437
|
*/
|
|
612
438
|
updateOrderDepositStatusAsync(isDeposit: number): Promise<void>;
|
|
613
|
-
/**
|
|
614
|
-
* 更新当前订单的客户信息
|
|
615
|
-
*/
|
|
616
|
-
updateOrderCustomerAsync(customer: {
|
|
617
|
-
customer_id?: string;
|
|
618
|
-
customer_name?: string;
|
|
619
|
-
}): Promise<void>;
|
|
620
|
-
/**
|
|
621
|
-
* 获取当前订单的客户信息
|
|
622
|
-
*/
|
|
623
|
-
getCurrentCustomer(): {
|
|
624
|
-
customer_id?: string;
|
|
625
|
-
customer_name?: string;
|
|
626
|
-
} | null;
|
|
627
439
|
/**
|
|
628
440
|
* 手动同步订单到后端
|
|
629
441
|
*
|
|
@@ -636,13 +448,6 @@ export interface CheckoutModuleAPI extends Module {
|
|
|
636
448
|
orderUuid?: string;
|
|
637
449
|
response?: any;
|
|
638
450
|
}>;
|
|
639
|
-
/**
|
|
640
|
-
* 检查订单是否需要手动同步(异步版本)
|
|
641
|
-
*
|
|
642
|
-
* 返回订单是否为纯代金券支付且待付金额<=0但未同步的状态
|
|
643
|
-
* 从 Payment 模块获取最新的支付项数据
|
|
644
|
-
*/
|
|
645
|
-
needsManualSyncAsync(): Promise<boolean>;
|
|
646
451
|
/**
|
|
647
452
|
* 更新订单备注
|
|
648
453
|
*
|
|
@@ -680,20 +485,6 @@ export interface CheckoutModuleAPI extends Module {
|
|
|
680
485
|
message?: string;
|
|
681
486
|
orderId?: string;
|
|
682
487
|
}>;
|
|
683
|
-
/**
|
|
684
|
-
* 更新订单商店折扣
|
|
685
|
-
*
|
|
686
|
-
* 同时更新cartSummary和localOrderData中的shop_discount值
|
|
687
|
-
*
|
|
688
|
-
* @param discountAmount 商店折扣金额
|
|
689
|
-
*/
|
|
690
|
-
updateShopDiscountAsync(discountAmount: number): Promise<void>;
|
|
691
|
-
/**
|
|
692
|
-
* 获取当前商店折扣金额
|
|
693
|
-
*
|
|
694
|
-
* @returns 当前的商店折扣金额,如果没有则返回0
|
|
695
|
-
*/
|
|
696
|
-
getShopDiscount(): number;
|
|
697
488
|
/**
|
|
698
489
|
* 保存订单并稍后支付
|
|
699
490
|
*
|
|
@@ -764,18 +555,6 @@ export interface SendCustomerPayLinkParams {
|
|
|
764
555
|
* 结账事件数据类型
|
|
765
556
|
*/
|
|
766
557
|
export interface CheckoutEventData {
|
|
767
|
-
/** 状态变更事件 */
|
|
768
|
-
statusChanged: {
|
|
769
|
-
oldStatus: CheckoutStatus;
|
|
770
|
-
newStatus: CheckoutStatus;
|
|
771
|
-
timestamp: number;
|
|
772
|
-
};
|
|
773
|
-
/** 步骤变更事件 */
|
|
774
|
-
stepChanged: {
|
|
775
|
-
oldStep: CheckoutStep;
|
|
776
|
-
newStep: CheckoutStep;
|
|
777
|
-
timestamp: number;
|
|
778
|
-
};
|
|
779
558
|
/** 订单创建事件 */
|
|
780
559
|
orderCreated: {
|
|
781
560
|
order: PaymentOrder;
|
|
@@ -1,30 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 结账状态枚举
|
|
3
|
-
*/
|
|
4
|
-
export var CheckoutStatus = /*#__PURE__*/function (CheckoutStatus) {
|
|
5
|
-
CheckoutStatus["Initializing"] = "initializing";
|
|
6
|
-
CheckoutStatus["Ready"] = "ready";
|
|
7
|
-
CheckoutStatus["CreatingOrder"] = "creating_order";
|
|
8
|
-
CheckoutStatus["OrderCreated"] = "order_created";
|
|
9
|
-
CheckoutStatus["ProcessingPayment"] = "processing_payment";
|
|
10
|
-
CheckoutStatus["PaymentCompleted"] = "payment_completed";
|
|
11
|
-
CheckoutStatus["Completed"] = "completed";
|
|
12
|
-
CheckoutStatus["Cancelled"] = "cancelled";
|
|
13
|
-
CheckoutStatus["Error"] = "error";
|
|
14
|
-
return CheckoutStatus;
|
|
15
|
-
}({});
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* 结账步骤枚举
|
|
19
|
-
*/
|
|
20
|
-
export var CheckoutStep = /*#__PURE__*/function (CheckoutStep) {
|
|
21
|
-
CheckoutStep["OrderConfirmation"] = "order_confirmation";
|
|
22
|
-
CheckoutStep["PaymentMethod"] = "payment_method";
|
|
23
|
-
CheckoutStep["PaymentProcessing"] = "payment_processing";
|
|
24
|
-
CheckoutStep["Complete"] = "complete";
|
|
25
|
-
return CheckoutStep;
|
|
26
|
-
}({});
|
|
27
|
-
|
|
28
1
|
/**
|
|
29
2
|
* 结账错误类型
|
|
30
3
|
*/
|
|
@@ -57,10 +30,6 @@ export var CheckoutErrorType = /*#__PURE__*/function (CheckoutErrorType) {
|
|
|
57
30
|
* 本地订单创建参数
|
|
58
31
|
*/
|
|
59
32
|
|
|
60
|
-
/**
|
|
61
|
-
* 手动下单参数
|
|
62
|
-
*/
|
|
63
|
-
|
|
64
33
|
/**
|
|
65
34
|
* 本地订单数据结构 (基于 appointmentDemo.json)
|
|
66
35
|
*/
|
|
@@ -81,29 +50,11 @@ export var CheckoutErrorType = /*#__PURE__*/function (CheckoutErrorType) {
|
|
|
81
50
|
* 本地资源项
|
|
82
51
|
*/
|
|
83
52
|
|
|
84
|
-
/**
|
|
85
|
-
* 订单创建参数
|
|
86
|
-
*/
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* 支付处理参数
|
|
90
|
-
*/
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* 结账状态信息
|
|
94
|
-
*/
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* 结账摘要信息
|
|
98
|
-
*/
|
|
99
|
-
|
|
100
53
|
/**
|
|
101
54
|
* 结账事件钩子
|
|
102
55
|
*/
|
|
103
56
|
export var CheckoutHooks = /*#__PURE__*/function (CheckoutHooks) {
|
|
104
57
|
CheckoutHooks["OnCheckoutInitialized"] = "checkout:onInitialized";
|
|
105
|
-
CheckoutHooks["OnStatusChanged"] = "checkout:onStatusChanged";
|
|
106
|
-
CheckoutHooks["OnStepChanged"] = "checkout:onStepChanged";
|
|
107
58
|
CheckoutHooks["OnOrderCreated"] = "checkout:onOrderCreated";
|
|
108
59
|
CheckoutHooks["OnOrderCreationFailed"] = "checkout:onOrderCreationFailed";
|
|
109
60
|
CheckoutHooks["OnPaymentStarted"] = "checkout:onPaymentStarted";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CheckoutInitParams, CheckoutError, CheckoutErrorType,
|
|
1
|
+
import { CheckoutInitParams, CheckoutError, CheckoutErrorType, LocalOrderData, CartSummaryItem, ExtractedAmountInfo } from '../types';
|
|
2
2
|
import { CartItem } from '../../../modules/Cart/types';
|
|
3
3
|
/**
|
|
4
4
|
* 验证结账数据
|
|
@@ -11,10 +11,6 @@ export declare function validateCheckoutData(params: CheckoutInitParams): {
|
|
|
11
11
|
* 创建结账错误对象
|
|
12
12
|
*/
|
|
13
13
|
export declare function createCheckoutError(type: CheckoutErrorType, message: string, details?: any): CheckoutError;
|
|
14
|
-
/**
|
|
15
|
-
* 计算结账进度
|
|
16
|
-
*/
|
|
17
|
-
export declare function calculateProgress(status: CheckoutStatus, step: CheckoutStep): number;
|
|
18
14
|
/**
|
|
19
15
|
* 格式化金额
|
|
20
16
|
*/
|
|
@@ -115,3 +111,11 @@ export declare function isVirtualOrderId(orderId: string): boolean;
|
|
|
115
111
|
* @returns 是否需要同步订单
|
|
116
112
|
*/
|
|
117
113
|
export declare function shouldSyncOrderForPayment(paymentCode: string, paymentType: string): boolean;
|
|
114
|
+
/**
|
|
115
|
+
* 判断是否为现金支付
|
|
116
|
+
*
|
|
117
|
+
* @param paymentCode 支付方式代码
|
|
118
|
+
* @param paymentType 支付方式类型
|
|
119
|
+
* @returns 是否为现金支付
|
|
120
|
+
*/
|
|
121
|
+
export declare function isCashPayment(paymentCode?: string, paymentType?: string): boolean;
|
|
@@ -2,7 +2,6 @@ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyri
|
|
|
2
2
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
3
3
|
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
4
4
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
5
|
-
import { CheckoutStatus, CheckoutStep } from "../types";
|
|
6
5
|
import { PaymentMethodType } from "../../../modules/Payment/types";
|
|
7
6
|
|
|
8
7
|
/**
|
|
@@ -58,61 +57,6 @@ export function createCheckoutError(type, message, details) {
|
|
|
58
57
|
};
|
|
59
58
|
}
|
|
60
59
|
|
|
61
|
-
/**
|
|
62
|
-
* 计算结账进度
|
|
63
|
-
*/
|
|
64
|
-
export function calculateProgress(status, step) {
|
|
65
|
-
// 基于状态的基础进度
|
|
66
|
-
var baseProgress = 0;
|
|
67
|
-
switch (status) {
|
|
68
|
-
case CheckoutStatus.Initializing:
|
|
69
|
-
baseProgress = 5;
|
|
70
|
-
break;
|
|
71
|
-
case CheckoutStatus.Ready:
|
|
72
|
-
baseProgress = 10;
|
|
73
|
-
break;
|
|
74
|
-
case CheckoutStatus.CreatingOrder:
|
|
75
|
-
baseProgress = 25;
|
|
76
|
-
break;
|
|
77
|
-
case CheckoutStatus.OrderCreated:
|
|
78
|
-
baseProgress = 40;
|
|
79
|
-
break;
|
|
80
|
-
case CheckoutStatus.ProcessingPayment:
|
|
81
|
-
baseProgress = 65;
|
|
82
|
-
break;
|
|
83
|
-
case CheckoutStatus.PaymentCompleted:
|
|
84
|
-
baseProgress = 85;
|
|
85
|
-
break;
|
|
86
|
-
case CheckoutStatus.Completed:
|
|
87
|
-
baseProgress = 100;
|
|
88
|
-
break;
|
|
89
|
-
case CheckoutStatus.Cancelled:
|
|
90
|
-
case CheckoutStatus.Error:
|
|
91
|
-
baseProgress = 0;
|
|
92
|
-
break;
|
|
93
|
-
default:
|
|
94
|
-
baseProgress = 0;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
// 基于步骤的额外进度
|
|
98
|
-
var stepProgress = 0;
|
|
99
|
-
switch (step) {
|
|
100
|
-
case CheckoutStep.OrderConfirmation:
|
|
101
|
-
stepProgress = 0;
|
|
102
|
-
break;
|
|
103
|
-
case CheckoutStep.PaymentMethod:
|
|
104
|
-
stepProgress = 10;
|
|
105
|
-
break;
|
|
106
|
-
case CheckoutStep.PaymentProcessing:
|
|
107
|
-
stepProgress = 15;
|
|
108
|
-
break;
|
|
109
|
-
case CheckoutStep.Complete:
|
|
110
|
-
stepProgress = 0; // 已经在状态中体现
|
|
111
|
-
break;
|
|
112
|
-
}
|
|
113
|
-
return Math.min(100, baseProgress + stepProgress);
|
|
114
|
-
}
|
|
115
|
-
|
|
116
60
|
/**
|
|
117
61
|
* 格式化金额
|
|
118
62
|
*/
|
|
@@ -546,4 +490,22 @@ export function shouldSyncOrderForPayment(paymentCode, paymentType) {
|
|
|
546
490
|
|
|
547
491
|
// 其他支付方式都需要同步
|
|
548
492
|
return true;
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
/**
|
|
496
|
+
* 判断是否为现金支付
|
|
497
|
+
*
|
|
498
|
+
* @param paymentCode 支付方式代码
|
|
499
|
+
* @param paymentType 支付方式类型
|
|
500
|
+
* @returns 是否为现金支付
|
|
501
|
+
*/
|
|
502
|
+
export function isCashPayment(paymentCode, paymentType) {
|
|
503
|
+
var codeUpper = (paymentCode === null || paymentCode === void 0 ? void 0 : paymentCode.toUpperCase()) || '';
|
|
504
|
+
var typeUpper = (paymentType === null || paymentType === void 0 ? void 0 : paymentType.toUpperCase()) || '';
|
|
505
|
+
|
|
506
|
+
// 现金支付识别规则
|
|
507
|
+
var cashIdentifiers = ['CASH', 'CASHMANUAL', 'MANUAL'];
|
|
508
|
+
return cashIdentifiers.some(function (identifier) {
|
|
509
|
+
return codeUpper.includes(identifier) || typeUpper.includes(identifier);
|
|
510
|
+
});
|
|
549
511
|
}
|
|
@@ -273,6 +273,9 @@ var OrderModule = class extends import_BaseModule.BaseModule {
|
|
|
273
273
|
smallTicketDataFlag: orderData.small_ticket_data_flag
|
|
274
274
|
});
|
|
275
275
|
const response = await this.request.post("/order/checkout", orderData);
|
|
276
|
+
this.logInfo("Order API called successfully", {
|
|
277
|
+
response
|
|
278
|
+
});
|
|
276
279
|
console.log("[Order] 订单创建成功,后端响应:", {
|
|
277
280
|
success: !!response,
|
|
278
281
|
hasOrderId: !!(((_q = response == null ? void 0 : response.data) == null ? void 0 : _q.order_id) || (response == null ? void 0 : response.order_id))
|
|
@@ -280,6 +283,9 @@ var OrderModule = class extends import_BaseModule.BaseModule {
|
|
|
280
283
|
return response;
|
|
281
284
|
} catch (error) {
|
|
282
285
|
console.error("[Order] createOrderByCheckout 创建订单失败:", error);
|
|
286
|
+
this.logInfo("Order API called failed", {
|
|
287
|
+
error: error instanceof Error ? error.message : String(error)
|
|
288
|
+
});
|
|
283
289
|
throw error;
|
|
284
290
|
}
|
|
285
291
|
}
|
|
@@ -323,15 +323,11 @@ var PaymentModule = class extends import_BaseModule.BaseModule {
|
|
|
323
323
|
totalAmount: params.total_amount
|
|
324
324
|
});
|
|
325
325
|
try {
|
|
326
|
-
const
|
|
327
|
-
const existingOrder = existingOrders.find(
|
|
328
|
-
(order) => String(order.id) === String(params.order_id)
|
|
329
|
-
);
|
|
326
|
+
const existingOrder = await this.dbManager.get("order", params.order_id);
|
|
330
327
|
if (existingOrder) {
|
|
331
328
|
console.log(
|
|
332
329
|
`[PaymentModule] 发现重复订单 ID: ${params.order_id},更新现有支付订单`
|
|
333
330
|
);
|
|
334
|
-
const originalOrder = { ...existingOrder };
|
|
335
331
|
existingOrder.order_info = params.order_info;
|
|
336
332
|
existingOrder.total_amount = params.total_amount;
|
|
337
333
|
existingOrder.is_deposit = params.is_deposit || 0;
|
|
@@ -359,7 +355,7 @@ var PaymentModule = class extends import_BaseModule.BaseModule {
|
|
|
359
355
|
deposit_amount: params.deposit_amount || "0.00"
|
|
360
356
|
};
|
|
361
357
|
await this.dbManager.add("order", newOrder);
|
|
362
|
-
|
|
358
|
+
this.core.effects.emit(import_types.PaymentHooks.OnOrderAdded, newOrder);
|
|
363
359
|
this.logInfo("createPaymentOrderAsync completed - new payment order created", {
|
|
364
360
|
orderUuid: newOrder.uuid,
|
|
365
361
|
orderId: newOrder.id
|
|
@@ -268,7 +268,7 @@ var WalletPassPaymentImpl = class {
|
|
|
268
268
|
code_length: code.length,
|
|
269
269
|
noCache: config.noCache || false
|
|
270
270
|
});
|
|
271
|
-
const isWalletCode = code.startsWith("
|
|
271
|
+
const isWalletCode = code.length === 9 && code.startsWith("000");
|
|
272
272
|
if (isWalletCode) {
|
|
273
273
|
const walletDetailParams = {
|
|
274
274
|
code,
|
|
@@ -314,7 +314,7 @@ export declare class BookingByStepImpl extends BaseModule implements Module {
|
|
|
314
314
|
}[];
|
|
315
315
|
setOtherData(key: string, value: any): void;
|
|
316
316
|
getOtherData(key: string): any;
|
|
317
|
-
getProductTypeById(id: number): Promise<"
|
|
317
|
+
getProductTypeById(id: number): Promise<"duration" | "session" | "normal">;
|
|
318
318
|
/**
|
|
319
319
|
* 提供给 UI 的方法,减轻 UI 层的计算压力,UI 层只需要传递 cartItemId 和 resourceCode 即返回对应的 renderList
|
|
320
320
|
*
|
|
@@ -111,7 +111,7 @@ export declare class BookingTicketImpl extends BaseModule implements Module {
|
|
|
111
111
|
* 获取当前的客户搜索条件
|
|
112
112
|
* @returns 当前搜索条件
|
|
113
113
|
*/
|
|
114
|
-
getCurrentCustomerSearchParams(): Omit<import("../../modules").ShopGetCustomerListParams, "
|
|
114
|
+
getCurrentCustomerSearchParams(): Omit<import("../../modules").ShopGetCustomerListParams, "num" | "skip">;
|
|
115
115
|
/**
|
|
116
116
|
* 获取客户列表状态(包含滚动加载相关状态)
|
|
117
117
|
* @returns 客户状态
|