@pisell/pisellos 0.0.347 → 0.0.349

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.
@@ -1054,7 +1054,7 @@ export var PaymentModule = /*#__PURE__*/function (_BaseModule) {
1054
1054
  key: "addPaymentItemAsync",
1055
1055
  value: (function () {
1056
1056
  var _addPaymentItemAsync = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13(orderUuid, paymentItem) {
1057
- var _newPaymentItem$metad, _newPaymentItem$metad2, _newPaymentItem$metad3, order, expectAmount, paidDepositAmount, expectedDepositAmount, warningMessage, paymentUuid, newPaymentItem;
1057
+ var _paymentItem$metadata, _newPaymentItem$metad, _newPaymentItem$metad2, _newPaymentItem$metad3, order, expectAmount, paidDepositAmount, expectedDepositAmount, warningMessage, paymentUuid, newPaymentItem;
1058
1058
  return _regeneratorRuntime().wrap(function _callee13$(_context13) {
1059
1059
  while (1) switch (_context13.prev = _context13.next) {
1060
1060
  case 0:
@@ -1103,7 +1103,11 @@ export var PaymentModule = /*#__PURE__*/function (_BaseModule) {
1103
1103
  });
1104
1104
  throw new Error(warningMessage);
1105
1105
  case 15:
1106
- paymentUuid = getUniqueId('payment_');
1106
+ if ((_paymentItem$metadata = paymentItem.metadata) !== null && _paymentItem$metadata !== void 0 && _paymentItem$metadata.unique_payment_number) {
1107
+ paymentUuid = paymentItem.metadata.unique_payment_number;
1108
+ } else {
1109
+ paymentUuid = getUniqueId('payment_');
1110
+ }
1107
1111
  newPaymentItem = {
1108
1112
  uuid: paymentUuid,
1109
1113
  id: paymentItem.id || 0,
@@ -49,5 +49,5 @@ export declare class Product extends BaseModule implements Module {
49
49
  getCategories(): ProductCategory[];
50
50
  setOtherParams(key: string, value: any): void;
51
51
  getOtherParams(): any;
52
- getProductType(): "duration" | "session" | "normal";
52
+ getProductType(): "normal" | "duration" | "session";
53
53
  }
@@ -3191,8 +3191,11 @@ export var CheckoutImpl = /*#__PURE__*/function (_BaseModule) {
3191
3191
  depositPaidAmount = paymentItems.filter(function (item) {
3192
3192
  return item.order_payment_type === 'deposit' && item.status !== 'voided';
3193
3193
  }).reduce(function (sum, item) {
3194
- // 如果是 wallet,并且还没同步到后端,则不计入这一部分金额
3195
- if (item.voucher_id && !item.isSynced) {
3194
+ // 如果是 wallet,并且还没同步到后端,且此时还没有其他类型的支付项(现金,eftpos,标记支付),不计入已付金额
3195
+ // 如果有其他支付项了,代表此时处于马上要同步的状态,所以计入
3196
+ if (item.voucher_id && !item.isSynced && paymentItems.filter(function (item) {
3197
+ return !item.voucher_id;
3198
+ }).length === 0) {
3196
3199
  return sum;
3197
3200
  }
3198
3201
  var amount = new Decimal(item.amount || '0');
@@ -502,7 +502,7 @@ var PaymentModule = class extends import_BaseModule.BaseModule {
502
502
  * 为某个订单添加支付项(新方法)
503
503
  */
504
504
  async addPaymentItemAsync(orderUuid, paymentItem) {
505
- var _a, _b, _c;
505
+ var _a, _b, _c, _d;
506
506
  this.logInfo("Starting addPaymentItemAsync", {
507
507
  orderUuid,
508
508
  paymentAmount: paymentItem.amount,
@@ -538,7 +538,12 @@ var PaymentModule = class extends import_BaseModule.BaseModule {
538
538
  });
539
539
  throw new Error(warningMessage);
540
540
  }
541
- const paymentUuid = (0, import_utils.getUniqueId)("payment_");
541
+ let paymentUuid;
542
+ if ((_a = paymentItem.metadata) == null ? void 0 : _a.unique_payment_number) {
543
+ paymentUuid = paymentItem.metadata.unique_payment_number;
544
+ } else {
545
+ paymentUuid = (0, import_utils.getUniqueId)("payment_");
546
+ }
542
547
  const newPaymentItem = {
543
548
  uuid: paymentUuid,
544
549
  id: paymentItem.id || 0,
@@ -570,15 +575,15 @@ var PaymentModule = class extends import_BaseModule.BaseModule {
570
575
  this.logInfo("addPaymentItemAsync completed successfully", {
571
576
  orderUuid,
572
577
  paymentUuid: newPaymentItem.uuid,
573
- uniquePaymentNumber: (_a = newPaymentItem.metadata) == null ? void 0 : _a.unique_payment_number,
578
+ uniquePaymentNumber: (_b = newPaymentItem.metadata) == null ? void 0 : _b.unique_payment_number,
574
579
  newExpectAmount: order.expect_amount,
575
580
  paymentAmount: newPaymentItem.amount,
576
581
  paymentCode: newPaymentItem.code,
577
582
  orderPaymentType: newPaymentItem.order_payment_type,
578
583
  metadataFields: Object.keys(newPaymentItem.metadata || {}),
579
584
  // 现金支付找零信息
580
- actualPaidAmount: (_b = newPaymentItem.metadata) == null ? void 0 : _b.actual_paid_amount,
581
- changeGivenAmount: (_c = newPaymentItem.metadata) == null ? void 0 : _c.change_given_amount
585
+ actualPaidAmount: (_c = newPaymentItem.metadata) == null ? void 0 : _c.actual_paid_amount,
586
+ changeGivenAmount: (_d = newPaymentItem.metadata) == null ? void 0 : _d.change_given_amount
582
587
  });
583
588
  } catch (error) {
584
589
  console.error("[PaymentModule] 添加支付项失败", error);
@@ -49,5 +49,5 @@ export declare class Product extends BaseModule implements Module {
49
49
  getCategories(): ProductCategory[];
50
50
  setOtherParams(key: string, value: any): void;
51
51
  getOtherParams(): any;
52
- getProductType(): "duration" | "session" | "normal";
52
+ getProductType(): "normal" | "duration" | "session";
53
53
  }
@@ -1967,7 +1967,7 @@ var CheckoutImpl = class extends import_BaseModule.BaseModule {
1967
1967
  const depositPaidAmount = paymentItems.filter(
1968
1968
  (item) => item.order_payment_type === "deposit" && item.status !== "voided"
1969
1969
  ).reduce((sum, item) => {
1970
- if (item.voucher_id && !item.isSynced) {
1970
+ if (item.voucher_id && !item.isSynced && paymentItems.filter((item2) => !item2.voucher_id).length === 0) {
1971
1971
  return sum;
1972
1972
  }
1973
1973
  const amount = new import_decimal.default(item.amount || "0");
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "private": false,
3
3
  "name": "@pisell/pisellos",
4
- "version": "0.0.347",
4
+ "version": "0.0.349",
5
5
  "description": "一个可扩展的前端模块化SDK框架,支持插件系统",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",