@pisell/private-materials 6.6.11 → 6.6.12

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 (71) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/meta.js +1 -1
  5. package/build/lowcode/render/default/view.css +1 -1
  6. package/build/lowcode/render/default/view.js +1 -1
  7. package/build/lowcode/view.css +1 -1
  8. package/build/lowcode/view.js +1 -1
  9. package/es/components/appointmentBooking/components/Voucher/index.js +22 -7
  10. package/es/components/booking/addons/index.js +3 -2
  11. package/es/components/booking/components/footer/amount.js +2 -2
  12. package/es/components/booking/components/footer/index.js +7 -0
  13. package/es/components/booking/components/footer/utils.d.ts +1 -1
  14. package/es/components/booking/components/footer/utils.js +5 -3
  15. package/es/components/booking/components/voucher/index.js +6 -0
  16. package/es/components/booking/components/voucher/index.less +4 -1
  17. package/es/components/booking/components/voucherModal/index.less +1 -0
  18. package/es/components/booking/info2/service/editService/index.js +33 -2
  19. package/es/components/checkout/components/WalletPassModule/index.js +1 -0
  20. package/es/components/checkout/components/WalletPassModule/utils.js +14 -3
  21. package/es/components/checkout/hooks/useWalletPass.d.ts +1 -1
  22. package/es/components/checkout/hooks/useWalletPass.js +310 -189
  23. package/es/components/pay/toC/PaymentMethods/WalletPass/index.d.ts +5 -0
  24. package/es/components/pay/toC/PaymentMethods/WalletPass/index.js +166 -145
  25. package/es/components/pay/toC/PaymentMethods/WalletPass/serve.d.ts +6 -0
  26. package/es/components/pay/toC/PaymentMethods/WalletPass/utils.js +3 -3
  27. package/es/components/pay/toC/WalletPassBlock/index.js +3 -1
  28. package/es/components/pay/toC/index.js +66 -27
  29. package/es/components/pay/toC/model.d.ts +1 -0
  30. package/es/components/pay/toC/serve.d.ts +18 -0
  31. package/es/components/pay/toC/serve.js +29 -1
  32. package/es/components/pay/toC/utils.d.ts +2 -2
  33. package/es/components/pay/toC/utils.js +4 -0
  34. package/es/components/systemSettings/registry/components/SectionList.js +5 -1
  35. package/es/components/ticketBooking/components/addServiceVariant/addService.js +7 -4
  36. package/es/plus/walletPassGallery/serve.js +2 -0
  37. package/es/pro/Login2.0/AuthModal.js +12 -4
  38. package/es/pro/Login2.0/index.less +7 -7
  39. package/lib/components/appointmentBooking/components/Voucher/index.js +10 -2
  40. package/lib/components/booking/addons/index.js +3 -2
  41. package/lib/components/booking/components/footer/amount.js +1 -1
  42. package/lib/components/booking/components/footer/index.js +9 -0
  43. package/lib/components/booking/components/footer/utils.d.ts +1 -1
  44. package/lib/components/booking/components/footer/utils.js +5 -3
  45. package/lib/components/booking/components/voucher/index.js +6 -0
  46. package/lib/components/booking/components/voucher/index.less +4 -1
  47. package/lib/components/booking/components/voucherModal/index.less +1 -0
  48. package/lib/components/booking/info2/service/editService/index.js +48 -24
  49. package/lib/components/checkout/components/WalletPassModule/index.js +1 -0
  50. package/lib/components/checkout/components/WalletPassModule/utils.js +13 -2
  51. package/lib/components/checkout/hooks/useWalletPass.d.ts +1 -1
  52. package/lib/components/checkout/hooks/useWalletPass.js +151 -104
  53. package/lib/components/pay/toC/PaymentMethods/WalletPass/index.d.ts +5 -0
  54. package/lib/components/pay/toC/PaymentMethods/WalletPass/index.js +90 -103
  55. package/lib/components/pay/toC/PaymentMethods/WalletPass/serve.d.ts +6 -0
  56. package/lib/components/pay/toC/PaymentMethods/WalletPass/utils.js +2 -2
  57. package/lib/components/pay/toC/WalletPassBlock/index.js +3 -1
  58. package/lib/components/pay/toC/index.js +52 -11
  59. package/lib/components/pay/toC/model.d.ts +1 -0
  60. package/lib/components/pay/toC/serve.d.ts +18 -0
  61. package/lib/components/pay/toC/serve.js +6 -0
  62. package/lib/components/pay/toC/utils.d.ts +2 -2
  63. package/lib/components/pay/toC/utils.js +4 -0
  64. package/lib/components/systemSettings/registry/components/SectionList.js +4 -1
  65. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +11 -7
  66. package/lib/plus/walletPassGallery/serve.js +2 -0
  67. package/lib/pro/Login2.0/AuthModal.js +15 -7
  68. package/lib/pro/Login2.0/index.less +7 -7
  69. package/package.json +2 -2
  70. package/es/components/checkout/PaymentModal.d.ts +0 -31
  71. package/lib/components/checkout/PaymentModal.d.ts +0 -31
@@ -23,13 +23,14 @@ import PayAmount from "./PayAmount";
23
23
  import WalletPassBlock from "./WalletPassBlock";
24
24
  import PaymentList from "./PaymentList";
25
25
  import PaymentMethods from "./PaymentMethods";
26
- import { getPaymentsAndWalletPass, getPaymentInit, getWalletNameAndPopupStatus } from "./serve";
26
+ import { getPaymentsAndWalletPass, getPaymentInit, getWalletNameAndPopupStatus, getOrderBasicDetail } from "./serve";
27
27
  import { Provider, Context } from "./model";
28
28
  import useEngineContext from "../../../hooks/useEngineContext";
29
29
  import usePaymentLogger from "../../../hooks/usePaymentLogger";
30
30
  import { request } from "../../../utils";
31
31
  import { removePayGroupFromStorage } from "./payGroup";
32
32
  import localeTexts from "./locales";
33
+ import { getMachineCodeList } from "./PaymentMethods/WalletPass/serve";
33
34
  import { getIsWalletPassAndTripartitePayment } from "./utils";
34
35
  import { saleChannelMap } from "./status";
35
36
  import "./index.less";
@@ -263,7 +264,7 @@ var ToCPay = function ToCPay(props, ref) {
263
264
  */
264
265
  var _getPaymentsAndWalletPass = /*#__PURE__*/function () {
265
266
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(order) {
266
- var _state$payGroup2, _paymentListRef$curre, data, _ref4, _ref4$remain_amount, remain_amount, wallet_pass_recommend_list, wallet_pass_amount, payment_list, walletPass, withCustomerIdList;
267
+ var _order$_order, _state$payGroup2, _paymentListRef$curre, _yield$Promise$all, _yield$Promise$all2, data, allList, orderBasicDetail, _ref4, _ref4$remain_amount, remain_amount, wallet_pass_recommend_list, wallet_pass_amount, payment_list, walletPass, products, _res, recommended, transformList, noApplicableVoucher, recommendedAmount, withCustomerIdList, _waitAmount2;
267
268
  return _regeneratorRuntime().wrap(function _callee3$(_context3) {
268
269
  while (1) switch (_context3.prev = _context3.next) {
269
270
  case 0:
@@ -276,14 +277,42 @@ var ToCPay = function ToCPay(props, ref) {
276
277
  });
277
278
  _context3.prev = 1;
278
279
  _context3.next = 4;
279
- return getPaymentsAndWalletPass({
280
+ return Promise.all([getPaymentsAndWalletPass({
280
281
  order_id: order.order_id,
281
282
  total_amount: order.amount,
282
283
  sale_channel: order.sale_channel || 'online-store'
283
- });
284
+ }), getMachineCodeList({
285
+ order_id: order.order_id,
286
+ available: 2,
287
+ prepare_payments: [],
288
+ filter_prepare_wallet_pass: 1,
289
+ sale_channel: ((_order$_order = order._order) === null || _order$_order === void 0 ? void 0 : _order$_order.sale_channel) || 'online-store',
290
+ other_exact_codes: []
291
+ }), getOrderBasicDetail(order.order_id)]);
284
292
  case 4:
285
- data = _context3.sent;
286
- _ref4 = data || {}, _ref4$remain_amount = _ref4.remain_amount, remain_amount = _ref4$remain_amount === void 0 ? 0 : _ref4$remain_amount, wallet_pass_recommend_list = _ref4.wallet_pass_recommend_list, wallet_pass_amount = _ref4.wallet_pass_amount, payment_list = _ref4.payment_list, walletPass = _ref4.walletPass; // 记录获取到的数据
293
+ _yield$Promise$all = _context3.sent;
294
+ _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 3);
295
+ data = _yield$Promise$all2[0];
296
+ allList = _yield$Promise$all2[1];
297
+ orderBasicDetail = _yield$Promise$all2[2];
298
+ _ref4 = data || {}, _ref4$remain_amount = _ref4.remain_amount, remain_amount = _ref4$remain_amount === void 0 ? 0 : _ref4$remain_amount, wallet_pass_recommend_list = _ref4.wallet_pass_recommend_list, wallet_pass_amount = _ref4.wallet_pass_amount, payment_list = _ref4.payment_list, walletPass = _ref4.walletPass;
299
+ products = (orderBasicDetail.detail || []).map(function (item) {
300
+ var _ref5;
301
+ return _objectSpread(_objectSpread({}, item), {}, {
302
+ is_price_include_tax: orderBasicDetail.is_price_include_tax,
303
+ product_bundle: (_ref5 = item.product_bundle || []) === null || _ref5 === void 0 ? void 0 : _ref5.map(function (bundle) {
304
+ return _objectSpread(_objectSpread({}, bundle), {}, {
305
+ is_price_include_tax: orderBasicDetail.is_price_include_tax
306
+ });
307
+ })
308
+ });
309
+ });
310
+ _res = utils.walletPassEvaluator.getRecommendedVouchers({
311
+ orderTotalAmount: Math.min(orderBasicDetail.product_unpaid_total_pay_amount, order.amount),
312
+ products: products,
313
+ vouchers: allList || []
314
+ });
315
+ recommended = _res.recommended, transformList = _res.transformList, noApplicableVoucher = _res.noApplicableVoucher, recommendedAmount = _res.recommendedAmount; // 记录获取到的数据
287
316
  paymentLogger.addLog({
288
317
  key: '支付数据获取',
289
318
  value: ''
@@ -292,30 +321,40 @@ var ToCPay = function ToCPay(props, ref) {
292
321
  return _objectSpread(_objectSpread({}, item), {}, {
293
322
  customer_id: customer_id || item.customer_id
294
323
  });
295
- }); // 设置交易组
324
+ });
325
+ _waitAmount2 = new Decimal((order === null || order === void 0 ? void 0 : order.amount) || 0).minus(new Decimal(recommendedAmount)).toNumber(); // 设置交易组
296
326
  dispatch({
297
327
  type: 'setPayGroup',
298
328
  payload: {
299
329
  // ...state.payGroup,
300
330
  order_id: order === null || order === void 0 ? void 0 : order.order_id,
301
331
  // total_amount: order?.amount,
332
+ orderDetail: orderBasicDetail,
302
333
  // 原订单信息
303
334
  _order: order,
304
335
  payment_group_id: order === null || order === void 0 ? void 0 : order.payment_group_id,
305
336
  // 支付方式没有walletPass时walletPass设置null
306
337
  walletPass: walletPass ? _objectSpread(_objectSpread(_objectSpread({}, (_state$payGroup2 = state.payGroup) === null || _state$payGroup2 === void 0 ? void 0 : _state$payGroup2.walletPass), walletPass), {}, {
307
- amount: wallet_pass_amount,
308
- cards: withCustomerIdList
338
+ // 推荐钱包
339
+ cards: recommended,
340
+ // 推荐金额
341
+ amount: recommendedAmount,
342
+ // 不可用钱包
343
+ noApplicableVoucher: noApplicableVoucher,
344
+ // 转换列表
345
+ transformList: transformList
346
+ // amount: wallet_pass_amount,
347
+ // cards: wallet_pass_recommend_list,
309
348
  }) : null,
310
349
  total_amount: order === null || order === void 0 ? void 0 : order.amount,
311
- wait_amount: remain_amount
350
+ wait_amount: Math.max(0, _waitAmount2)
312
351
  }
313
352
  });
314
353
 
315
354
  // 初始化支付列表
316
- _context3.next = 11;
355
+ _context3.next = 19;
317
356
  return (_paymentListRef$curre = paymentListRef.current) === null || _paymentListRef$curre === void 0 ? void 0 : _paymentListRef$curre.init(payment_list);
318
- case 11:
357
+ case 19:
319
358
  // 解除loading
320
359
  setTimeout(function () {
321
360
  setLoading(false);
@@ -326,10 +365,10 @@ var ToCPay = function ToCPay(props, ref) {
326
365
  key: '获取支付列表成功',
327
366
  value: ''
328
367
  });
329
- _context3.next = 21;
368
+ _context3.next = 29;
330
369
  break;
331
- case 15:
332
- _context3.prev = 15;
370
+ case 23:
371
+ _context3.prev = 23;
333
372
  _context3.t0 = _context3["catch"](1);
334
373
  console.log('err', _context3.t0);
335
374
 
@@ -352,11 +391,11 @@ var ToCPay = function ToCPay(props, ref) {
352
391
  fn: '_getPaymentsAndWalletPass'
353
392
  }
354
393
  });
355
- case 21:
394
+ case 29:
356
395
  case "end":
357
396
  return _context3.stop();
358
397
  }
359
- }, _callee3, null, [[1, 15]]);
398
+ }, _callee3, null, [[1, 23]]);
360
399
  }));
361
400
  return function _getPaymentsAndWalletPass(_x3) {
362
401
  return _ref3.apply(this, arguments);
@@ -373,7 +412,7 @@ var ToCPay = function ToCPay(props, ref) {
373
412
  * @Date: 2024-08-16 10:46
374
413
  */
375
414
  var handlePaymentByType = /*#__PURE__*/function () {
376
- var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(type, payGroup) {
415
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(type, payGroup) {
377
416
  var _state$payGroup3;
378
417
  var paymentType, currentPayGroup, _paymentMethodsRef$cu;
379
418
  return _regeneratorRuntime().wrap(function _callee4$(_context4) {
@@ -433,7 +472,7 @@ var ToCPay = function ToCPay(props, ref) {
433
472
  }, _callee4, null, [[3, 12]]);
434
473
  }));
435
474
  return function handlePaymentByType(_x4, _x5) {
436
- return _ref5.apply(this, arguments);
475
+ return _ref6.apply(this, arguments);
437
476
  };
438
477
  }();
439
478
 
@@ -445,7 +484,7 @@ var ToCPay = function ToCPay(props, ref) {
445
484
  * @Date: 2024-08-15 13:41
446
485
  */
447
486
  var paymentInit = /*#__PURE__*/function () {
448
- var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(newOrderId) {
487
+ var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(newOrderId) {
449
488
  var _state$payGroup4;
450
489
  var orderId, _state$payGroup5, data;
451
490
  return _regeneratorRuntime().wrap(function _callee5$(_context5) {
@@ -519,7 +558,7 @@ var ToCPay = function ToCPay(props, ref) {
519
558
  }, _callee5, null, [[3, 12]]);
520
559
  }));
521
560
  return function paymentInit(_x6) {
522
- return _ref6.apply(this, arguments);
561
+ return _ref7.apply(this, arguments);
523
562
  };
524
563
  }();
525
564
 
@@ -578,7 +617,7 @@ var ToCPay = function ToCPay(props, ref) {
578
617
  * @Date: 2024-08-30 10:23:48
579
618
  */
580
619
  var getIsShowDetectIncognitoConfirm = /*#__PURE__*/function () {
581
- var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(payGroup) {
620
+ var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(payGroup) {
582
621
  var _yield$detectIncognit, isPrivate;
583
622
  return _regeneratorRuntime().wrap(function _callee6$(_context6) {
584
623
  while (1) switch (_context6.prev = _context6.next) {
@@ -596,7 +635,7 @@ var ToCPay = function ToCPay(props, ref) {
596
635
  }, _callee6);
597
636
  }));
598
637
  return function getIsShowDetectIncognitoConfirm(_x7) {
599
- return _ref7.apply(this, arguments);
638
+ return _ref8.apply(this, arguments);
600
639
  };
601
640
  }();
602
641
 
@@ -608,7 +647,7 @@ var ToCPay = function ToCPay(props, ref) {
608
647
  * @Date: 2024-08-15 13:25
609
648
  */
610
649
  var onSubmit = /*#__PURE__*/function () {
611
- var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(newOrderId) {
650
+ var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(newOrderId) {
612
651
  var _state$payGroup10, _state$payGroup11, _state$payGroup12;
613
652
  var newPayGroup, _state$payGroup13, _newPayGroup, _newPayGroup2, _state$payGroup14, result, _state$payGroup15;
614
653
  return _regeneratorRuntime().wrap(function _callee7$(_context7) {
@@ -686,7 +725,7 @@ var ToCPay = function ToCPay(props, ref) {
686
725
  }, _callee7, null, [[2, 20]]);
687
726
  }));
688
727
  return function onSubmit(_x8) {
689
- return _ref8.apply(this, arguments);
728
+ return _ref9.apply(this, arguments);
690
729
  };
691
730
  }();
692
731
 
@@ -743,7 +782,7 @@ var ToCPay = function ToCPay(props, ref) {
743
782
  * @Date: 2024-08-09 14:25
744
783
  */
745
784
  var payCallback = /*#__PURE__*/function () {
746
- var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(res) {
785
+ var _ref10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(res) {
747
786
  var _res$data, _state$payGroup20, _props$callback;
748
787
  var orderId, _res$data2;
749
788
  return _regeneratorRuntime().wrap(function _callee8$(_context8) {
@@ -783,7 +822,7 @@ var ToCPay = function ToCPay(props, ref) {
783
822
  }, _callee8);
784
823
  }));
785
824
  return function payCallback(_x9) {
786
- return _ref9.apply(this, arguments);
825
+ return _ref10.apply(this, arguments);
787
826
  };
788
827
  }();
789
828
 
@@ -29,6 +29,7 @@ export interface PayGroup {
29
29
  pay_number?: string;
30
30
  _order: any;
31
31
  front_order_uuid?: string;
32
+ orderDetail: any;
32
33
  }
33
34
  export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
34
35
  state: FormState;
@@ -60,3 +60,21 @@ export declare const getWalletNameAndPopupStatus: (values: {
60
60
  * @description: 获取支付结果
61
61
  */
62
62
  export declare const getPaymentResult: (values: any) => Promise<any>;
63
+ declare type OrderBasicDetail = {
64
+ id: number;
65
+ status: string;
66
+ payment_status: string;
67
+ order_time: string;
68
+ detail: any[];
69
+ product_unpaid_total_pay_amount: number;
70
+ product_paid_total_pay_amount: number;
71
+ is_price_include_tax: 1 | 0;
72
+ };
73
+ /**
74
+ * @title: 查询订单基础信息和订单商品信息
75
+ * @description: 查询订单基础信息和订单商品信息
76
+ * @param {string} order_id
77
+ * @return {*}
78
+ */
79
+ export declare const getOrderBasicDetail: (order_id: string) => Promise<OrderBasicDetail>;
80
+ export {};
@@ -185,4 +185,32 @@ export var getWalletNameAndPopupStatus = /*#__PURE__*/function () {
185
185
  */
186
186
  export var getPaymentResult = function getPaymentResult(values) {
187
187
  return request.getRequest().get("/h5/pay/order/payment/result", values);
188
- };
188
+ };
189
+ /**
190
+ * @title: 查询订单基础信息和订单商品信息
191
+ * @description: 查询订单基础信息和订单商品信息
192
+ * @param {string} order_id
193
+ * @return {*}
194
+ */
195
+ export var getOrderBasicDetail = /*#__PURE__*/function () {
196
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(order_id) {
197
+ var _yield$request$getReq5, data;
198
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
199
+ while (1) switch (_context5.prev = _context5.next) {
200
+ case 0:
201
+ _context5.next = 2;
202
+ return request.getRequest().get("/h5/order/order/".concat(order_id, "/basic-detail"), {});
203
+ case 2:
204
+ _yield$request$getReq5 = _context5.sent;
205
+ data = _yield$request$getReq5.data;
206
+ return _context5.abrupt("return", data);
207
+ case 5:
208
+ case "end":
209
+ return _context5.stop();
210
+ }
211
+ }, _callee5);
212
+ }));
213
+ return function getOrderBasicDetail(_x5) {
214
+ return _ref5.apply(this, arguments);
215
+ };
216
+ }();
@@ -22,7 +22,7 @@ export declare const formatWalletPassParams: (payGroup: PayGroup) => {
22
22
  order_id: string;
23
23
  payment_group_id: number;
24
24
  payments: {
25
- amount: string;
25
+ amount: string | number;
26
26
  wallet_pass_use_value: any;
27
27
  voucher_id: any;
28
28
  tag: any;
@@ -48,7 +48,7 @@ export declare const isFranchiseeShop: (path?: any, history?: any) => any;
48
48
  */
49
49
  export declare const getFranchiseeShopId: (path?: any, history?: any) => number;
50
50
  export declare const formatFranchiseeRoute: (url: string, history?: any) => string;
51
- export declare const getAvailableMaxAmount: (data: WalletPassDataType) => string;
51
+ export declare const getAvailableMaxAmount: (data: WalletPassDataType) => string | number;
52
52
  export declare const clientPayment: (params: {
53
53
  order_id: number;
54
54
  type: "aliPay" | "wxPay" | 'google_pay';
@@ -6,6 +6,7 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
6
6
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
7
  import { Decimal } from 'decimal.js';
8
8
  import { isTripartitePayment } from "./status";
9
+ import { isNumber } from "@pisell/utils";
9
10
  /**
10
11
  * 计算walletPass列表数据的总金额
11
12
  * @param list
@@ -95,6 +96,9 @@ export var formatFranchiseeRoute = function formatFranchiseeRoute(url, history)
95
96
 
96
97
  // 获取walletPass可用最大金额
97
98
  export var getAvailableMaxAmount = function getAvailableMaxAmount(data) {
99
+ if (isNumber(data._available_max_amount)) {
100
+ return data._available_max_amount;
101
+ }
98
102
  return data.tag !== 'point_card' ? data.available_max_amount : data === null || data === void 0 ? void 0 : data.recommended_usage_amount;
99
103
  };
100
104
  export var clientPayment = function clientPayment(params) {
@@ -3,6 +3,8 @@ import { Card, Empty, Spin } from 'antd';
3
3
  import { ShoppingCartOutlined, CreditCardOutlined, SafetyCertificateOutlined, SettingOutlined } from '@ant-design/icons';
4
4
  import { ShoppingCart01 } from '@pisell/icon';
5
5
  import { locales } from '@pisell/utils';
6
+ import useEngineContext from "../../../../hooks/useEngineContext";
7
+
6
8
  // 获取多语言文本的工具函数
7
9
  var getLocalizedText = function getLocalizedText(text) {
8
10
  var locale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'zh-CN';
@@ -38,6 +40,7 @@ var renderSectionIcon = function renderSectionIcon(iconName, code) {
38
40
  return sectionIcons.default;
39
41
  };
40
42
  var SectionList = function SectionList(_ref) {
43
+ var _context$engine;
41
44
  var sections = _ref.sections,
42
45
  selectedSectionId = _ref.selectedSectionId,
43
46
  onSectionSelect = _ref.onSectionSelect,
@@ -48,9 +51,10 @@ var SectionList = function SectionList(_ref) {
48
51
  onLoadMore = _ref.onLoadMore;
49
52
  var scrollContainerRef = useRef(null);
50
53
  var loadingRef = useRef(null);
54
+ var context = useEngineContext();
51
55
 
52
56
  // 获取当前语言
53
- var currentLocale = localStorage.getItem('umi_locale') || 'zh-CN';
57
+ var currentLocale = (context === null || context === void 0 || (_context$engine = context.engine) === null || _context$engine === void 0 || (_context$engine = _context$engine.props) === null || _context$engine === void 0 ? void 0 : _context$engine.locale) || localStorage.getItem('umi_locale') || 'en';
54
58
 
55
59
  // 滚动加载更多的处理函数
56
60
  var handleScroll = useCallback(function () {
@@ -51,7 +51,7 @@ var productListSetting = {
51
51
  isStock: 0
52
52
  };
53
53
  var AddSerivce = function AddSerivce(props) {
54
- var _context$appHelper, _context$appHelper$ge, _context$appHelper$ut, _context$appHelper$ut2, _context$appHelper$ut3, _state$bookingConfig2, _state$client2;
54
+ var _context$appHelper, _context$appHelper2, _context$appHelper2$g, _context$appHelper$ut2, _context$appHelper$ut3, _context$appHelper$ut4, _state$bookingConfig2, _state$client2;
55
55
  var onEdit = props.onEdit,
56
56
  state = props.state,
57
57
  dispatch = props.dispatch,
@@ -59,6 +59,8 @@ var AddSerivce = function AddSerivce(props) {
59
59
  renderMode = _props$renderMode === void 0 ? 'current' : _props$renderMode,
60
60
  productDisplayConfig = props.productDisplayConfig;
61
61
  var context = useEngineContext();
62
+ var _context$appHelper$ut = (_context$appHelper = context.appHelper) === null || _context$appHelper === void 0 ? void 0 : _context$appHelper.utils,
63
+ getData = _context$appHelper$ut.getData;
62
64
  var notAvailableRef = useRef(null);
63
65
  request.setRequest(context.appHelper.utils.request);
64
66
  var isActive = useIsActive();
@@ -71,7 +73,7 @@ var AddSerivce = function AddSerivce(props) {
71
73
  }),
72
74
  createBookingData = _useService.createBookingData,
73
75
  createBooking = _useService.createBooking;
74
- var isBooking4 = isBooking4Shop(((_context$appHelper = context.appHelper) === null || _context$appHelper === void 0 || (_context$appHelper = _context$appHelper.utils) === null || _context$appHelper === void 0 || (_context$appHelper$ge = _context$appHelper.getData) === null || _context$appHelper$ge === void 0 ? void 0 : _context$appHelper$ge.call(_context$appHelper, 'shop_id')) || ((_context$appHelper$ut = context.appHelper.utils.store) === null || _context$appHelper$ut === void 0 || (_context$appHelper$ut2 = _context$appHelper$ut.getState) === null || _context$appHelper$ut2 === void 0 || (_context$appHelper$ut2 = _context$appHelper$ut2.call(_context$appHelper$ut)) === null || _context$appHelper$ut2 === void 0 || (_context$appHelper$ut2 = _context$appHelper$ut2.global) === null || _context$appHelper$ut2 === void 0 || (_context$appHelper$ut2 = _context$appHelper$ut2.globalConfig) === null || _context$appHelper$ut2 === void 0 ? void 0 : _context$appHelper$ut2.id), state === null || state === void 0 ? void 0 : state.renderType, (_context$appHelper$ut3 = context.appHelper.utils) === null || _context$appHelper$ut3 === void 0 ? void 0 : _context$appHelper$ut3.businessUtils);
76
+ var isBooking4 = isBooking4Shop(((_context$appHelper2 = context.appHelper) === null || _context$appHelper2 === void 0 || (_context$appHelper2 = _context$appHelper2.utils) === null || _context$appHelper2 === void 0 || (_context$appHelper2$g = _context$appHelper2.getData) === null || _context$appHelper2$g === void 0 ? void 0 : _context$appHelper2$g.call(_context$appHelper2, 'shop_id')) || ((_context$appHelper$ut2 = context.appHelper.utils.store) === null || _context$appHelper$ut2 === void 0 || (_context$appHelper$ut3 = _context$appHelper$ut2.getState) === null || _context$appHelper$ut3 === void 0 || (_context$appHelper$ut3 = _context$appHelper$ut3.call(_context$appHelper$ut2)) === null || _context$appHelper$ut3 === void 0 || (_context$appHelper$ut3 = _context$appHelper$ut3.global) === null || _context$appHelper$ut3 === void 0 || (_context$appHelper$ut3 = _context$appHelper$ut3.globalConfig) === null || _context$appHelper$ut3 === void 0 ? void 0 : _context$appHelper$ut3.id), state === null || state === void 0 ? void 0 : state.renderType, (_context$appHelper$ut4 = context.appHelper.utils) === null || _context$appHelper$ut4 === void 0 ? void 0 : _context$appHelper$ut4.businessUtils);
75
77
  var _useState = useState(null),
76
78
  _useState2 = _slicedToArray(_useState, 2),
77
79
  currentProduct = _useState2[0],
@@ -219,7 +221,7 @@ var AddSerivce = function AddSerivce(props) {
219
221
  var processAddService = useMemoizedFn( /*#__PURE__*/function () {
220
222
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(item, _detail, e, notShowToast, startDate, endDate) {
221
223
  var _state$client3, _state$bookingConfig3;
222
- var other, cacheItem, _total, _isEdit, _stateRef$current$ser, isMultiDay, getMultiDayCacheItem, res, _state$bookingConfig4, _addService2, _list, quantity, _context$appHelper$ut4, _context$appHelper$ut5, val, sendData, _window$openBookingEd, _window;
224
+ var other, cacheItem, _total, _isEdit, _stateRef$current$ser, isMultiDay, getMultiDayCacheItem, res, _state$bookingConfig4, _addService2, _list, quantity, _context$appHelper$ut5, _context$appHelper$ut6, val, sendData, _window$openBookingEd, _window;
223
225
  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
224
226
  while (1) switch (_context2.prev = _context2.next) {
225
227
  case 0:
@@ -229,6 +231,7 @@ var AddSerivce = function AddSerivce(props) {
229
231
  product_id: item.id,
230
232
  _id: getUniqueId(),
231
233
  _key: e.key,
234
+ is_price_include_tax: getData('is_price_include_tax'),
232
235
  _extend: {
233
236
  start_date: startDate,
234
237
  quantity: (e === null || e === void 0 ? void 0 : e.quantity) || 1,
@@ -337,7 +340,7 @@ var AddSerivce = function AddSerivce(props) {
337
340
  }
338
341
  }));
339
342
  try {
340
- if (((_context$appHelper$ut4 = context.appHelper.utils.store) === null || _context$appHelper$ut4 === void 0 || (_context$appHelper$ut5 = _context$appHelper$ut4.getState) === null || _context$appHelper$ut5 === void 0 || (_context$appHelper$ut5 = _context$appHelper$ut5.call(_context$appHelper$ut4)) === null || _context$appHelper$ut5 === void 0 || (_context$appHelper$ut5 = _context$appHelper$ut5.global) === null || _context$appHelper$ut5 === void 0 || (_context$appHelper$ut5 = _context$appHelper$ut5.globalConfig) === null || _context$appHelper$ut5 === void 0 ? void 0 : _context$appHelper$ut5.id) === 2155) {
343
+ if (((_context$appHelper$ut5 = context.appHelper.utils.store) === null || _context$appHelper$ut5 === void 0 || (_context$appHelper$ut6 = _context$appHelper$ut5.getState) === null || _context$appHelper$ut6 === void 0 || (_context$appHelper$ut6 = _context$appHelper$ut6.call(_context$appHelper$ut5)) === null || _context$appHelper$ut6 === void 0 || (_context$appHelper$ut6 = _context$appHelper$ut6.global) === null || _context$appHelper$ut6 === void 0 || (_context$appHelper$ut6 = _context$appHelper$ut6.globalConfig) === null || _context$appHelper$ut6 === void 0 ? void 0 : _context$appHelper$ut6.id) === 2155) {
341
344
  val = _list === null || _list === void 0 ? void 0 : _list.map(function (s) {
342
345
  return {
343
346
  product_id: s === null || s === void 0 ? void 0 : s.product_id,
@@ -220,6 +220,8 @@ export var getDetailApi = /*#__PURE__*/function () {
220
220
  order_behavior_count_customer: 1,
221
221
  // 客户订单行为次数
222
222
  order_behavior_count_customer_id: params.apiPrefix === '/shop' ? params.order_behavior_count_customer_id : undefined
223
+ }, {
224
+ isOriginHost: true
223
225
  });
224
226
  case 2:
225
227
  _yield$request$getReq6 = _context6.sent;
@@ -84,7 +84,7 @@ var AuthModal = function AuthModal() {
84
84
 
85
85
  // 转换配置为 Login2 所需的格式
86
86
  var login2Config = useMemo(function () {
87
- var _config$auth, _authMethods$email, _authMethods$phone, _authMethods$google, _authMethods$facebook, _authMethods$apple, _authMethods$guest, _config$page, _config$page2, _config$page3, _config$page4, _config$page5, _config$page6, _config$page7;
87
+ var _config$auth, _authMethods$email, _authMethods$phone, _authMethods$google, _authMethods$facebook, _authMethods$apple, _authMethods$guest, _config$page, _config$page2, _config$page3, _config$page4, _config$page5, _config$page6, _config$logoSize, _config$logoSize2, _config$page7;
88
88
  if (!localesInitialized) {
89
89
  return {
90
90
  loginMethods: [],
@@ -302,7 +302,11 @@ var AuthModal = function AuthModal() {
302
302
  show: config !== null && config !== void 0 && config.logo ? true : false,
303
303
  url: config === null || config === void 0 ? void 0 : config.logo,
304
304
  // 直接从 config.logo 读取
305
- position: 'center'
305
+ position: 'center',
306
+ size: {
307
+ width: (config === null || config === void 0 || (_config$logoSize = config.logoSize) === null || _config$logoSize === void 0 ? void 0 : _config$logoSize.width) || 48,
308
+ height: (config === null || config === void 0 || (_config$logoSize2 = config.logoSize) === null || _config$logoSize2 === void 0 ? void 0 : _config$logoSize2.height) || 48
309
+ }
306
310
  } : undefined,
307
311
  themeColor: (config === null || config === void 0 || (_config$page7 = config.page) === null || _config$page7 === void 0 || (_config$page7 = _config$page7.login) === null || _config$page7 === void 0 || (_config$page7 = _config$page7.ui) === null || _config$page7 === void 0 ? void 0 : _config$page7.themeColor) || '#7F56D9',
308
312
  formLabels: {
@@ -325,7 +329,7 @@ var AuthModal = function AuthModal() {
325
329
 
326
330
  // 转换配置为 Register2 所需的格式
327
331
  var register2Config = useMemo(function () {
328
- var _config$auth2, _authMethods$email2, _authMethods$phone2, _authMethods$google2, _authMethods$facebook2, _authMethods$apple2, _config$page8, _config$page9, _config$page10, _config$auth3;
332
+ var _config$auth2, _authMethods$email2, _authMethods$phone2, _authMethods$google2, _authMethods$facebook2, _authMethods$apple2, _config$page8, _config$page9, _config$logoSize3, _config$logoSize4, _config$page10, _config$auth3;
329
333
  if (!localesInitialized) {
330
334
  return {
331
335
  registrationMethods: [],
@@ -471,7 +475,11 @@ var AuthModal = function AuthModal() {
471
475
  show: config.logo ? true : false,
472
476
  url: config.logo,
473
477
  // 直接从 config.logo 读取
474
- position: 'center'
478
+ position: 'center',
479
+ size: {
480
+ width: (config === null || config === void 0 || (_config$logoSize3 = config.logoSize) === null || _config$logoSize3 === void 0 ? void 0 : _config$logoSize3.width) || 48,
481
+ height: (config === null || config === void 0 || (_config$logoSize4 = config.logoSize) === null || _config$logoSize4 === void 0 ? void 0 : _config$logoSize4.height) || 48
482
+ }
475
483
  } : undefined,
476
484
  themeColor: ((_config$page10 = config.page) === null || _config$page10 === void 0 || (_config$page10 = _config$page10.register) === null || _config$page10 === void 0 || (_config$page10 = _config$page10.ui) === null || _config$page10 === void 0 ? void 0 : _config$page10.themeColor) || '#7F56D9',
477
485
  passwordRules: transformPasswordRules((_config$auth3 = config.auth) === null || _config$auth3 === void 0 ? void 0 : _config$auth3.password),
@@ -326,21 +326,21 @@
326
326
  .login2-submit-button {
327
327
  height: 44px;
328
328
  border-radius: 8px;
329
- border: 1px solid var(--theme-color, #7f56d9);
330
- background: var(--theme-color, #7f56d9);
329
+ border: 1px solid var(--custom-button-bg-color, var(--theme-color, #7f56d9));
330
+ background: var(--custom-button-bg-color, var(--theme-color, #7f56d9));
331
331
  box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
332
332
  font-size: 16px;
333
333
  font-weight: 600;
334
- color: #ffffff;
334
+ color: var(--custom-button-text-color, #ffffff);
335
335
 
336
336
  &:hover:not(:disabled) {
337
- background: #6941c6;
338
- border-color: #6941c6;
337
+ background: var(--custom-button-bg-color, #6941c6);
338
+ border-color: var(--custom-button-bg-color, #6941c6);
339
339
  }
340
340
 
341
341
  &:focus {
342
- background: var(--theme-color, #7f56d9);
343
- border-color: var(--theme-color, #7f56d9);
342
+ background: var(--custom-button-bg-color, var(--theme-color, #7f56d9));
343
+ border-color: var(--custom-button-bg-color, var(--theme-color, #7f56d9));
344
344
  box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05),
345
345
  0px 0px 0px 4px rgba(127, 86, 217, 0.1);
346
346
  }
@@ -43,6 +43,8 @@ var import_materials = require("@pisell/materials");
43
43
  var import_hooks = require("../../hooks");
44
44
  var import_voucher = require("../../../booking/components/voucher/index.less");
45
45
  var import_index = require("./index.less");
46
+ var import_context = require("../../context");
47
+ var import_ahooks = require("ahooks");
46
48
  var ShopDiscountHooks = {
47
49
  onInited: "shopDiscount:onInited",
48
50
  onDestroy: "shopDiscount:onDestroy",
@@ -66,11 +68,17 @@ var VoucherCard = (props) => {
66
68
  const productRef = (0, import_react.useRef)(products);
67
69
  const { openLoginModal } = (0, import_hooks.useAppointmentBookingLogin)();
68
70
  const { accountLists } = (0, import_hooks.useAppointmentBookingAccount)();
71
+ const { summary } = (0, import_context.useAppointmentBookingContext)();
72
+ const { originTotal, total } = summary;
69
73
  const cart = (_b = appointmentBooking == null ? void 0 : appointmentBooking.store) == null ? void 0 : _b.cart;
70
74
  const isUserLoggedIn = (0, import_react.useMemo)(() => {
71
75
  var _a2, _b2;
72
76
  return !!((_b2 = (_a2 = utils == null ? void 0 : utils.token) == null ? void 0 : _a2.get) == null ? void 0 : _b2.call(_a2)) || false;
73
77
  }, [store]);
78
+ (0, import_react.useEffect)(() => {
79
+ const shopDiscount2 = pisellos.getModule("shopDiscount");
80
+ shopDiscount2.setOriginTotalAmount(originTotal);
81
+ }, [originTotal]);
74
82
  const availableData = (0, import_react.useMemo)(() => {
75
83
  return discountList.filter((item) => !!item.isAvailable).map((discount) => {
76
84
  return {
@@ -106,7 +114,7 @@ var VoucherCard = (props) => {
106
114
  });
107
115
  (_a2 = appointmentBooking == null ? void 0 : appointmentBooking.batchUpdateCart) == null ? void 0 : _a2.call(appointmentBooking, items);
108
116
  };
109
- const onCartChange = () => {
117
+ const { run: onCartChange } = (0, import_ahooks.useDebounceFn)(() => {
110
118
  var _a2, _b2, _c;
111
119
  const products2 = cart == null ? void 0 : cart.getItems();
112
120
  (_c = shopDiscount == null ? void 0 : shopDiscount.setBookingSubject) == null ? void 0 : _c.call(
@@ -115,7 +123,7 @@ var VoucherCard = (props) => {
115
123
  );
116
124
  const val = shopDiscount.calcDiscount(products2);
117
125
  batchUpdateCart(val.productList);
118
- };
126
+ }, { wait: 200 });
119
127
  const stringifiedHolders = (0, import_react.useMemo)(() => {
120
128
  let _ret;
121
129
  try {
@@ -68,14 +68,15 @@ var formatProducts = (values) => {
68
68
  discountway: "num",
69
69
  discount_type: "discount",
70
70
  bundle_edit: (_c = item._extend) == null ? void 0 : _c.bundle_edit,
71
- product_bundle: (0, import_utils.formatProductBundle)((_e = (_d = item._extend) == null ? void 0 : _d.other) == null ? void 0 : _e.bundle),
71
+ product_bundle: (0, import_utils.formatProductBundle)((_e = (_d = item._extend) == null ? void 0 : _d.other) == null ? void 0 : _e.bundle, item.is_price_include_tax),
72
72
  "product_option_item": (0, import_utils.formatProductOption)((_g = (_f = item._extend) == null ? void 0 : _f.other) == null ? void 0 : _g.option),
73
73
  "product_variant_id": ((_i = (_h = item._extend) == null ? void 0 : _h.other) == null ? void 0 : _i.product_variant_id) || 0,
74
74
  "source_product_price": (0, import_utils.getSourceProductPrice)(item),
75
75
  "main_product_selling_price": (0, import_utils.getMainProductSellingPrice)(item) ?? (0, import_utils.formatProductPrice)(item),
76
76
  "calculated_original_price": (0, import_utils.formatOriginalPrice)(item),
77
77
  "calculated_selling_price": (0, import_utils.formatSellingPrice)(item),
78
- "tax_fee": item._extend.tax_fee
78
+ "tax_fee": item._extend.tax_fee,
79
+ is_price_include_tax: item.is_price_include_tax
79
80
  };
80
81
  });
81
82
  return arr;
@@ -402,7 +402,7 @@ var getMainProductTotal = (item) => {
402
402
  if (getBundleItemIsMarkupOrDiscountPrice(bundleItem)) {
403
403
  const discountAmount = getDiscountAmount(bundleItem.discount_list);
404
404
  const bundleItemPrice = new import_decimal.default(bundleItem.bundle_selling_price ?? bundleItem.price ?? 0);
405
- const bundleItemTotal = bundleItemPrice.minus(discountAmount);
405
+ const bundleItemTotal = bundleItemPrice;
406
406
  total = total.add(bundleItemTotal);
407
407
  }
408
408
  }
@@ -270,6 +270,15 @@ var Footer = (props) => {
270
270
  ...getDataFromHost()
271
271
  });
272
272
  }, [state, isEdit]);
273
+ (0, import_react.useEffect)(() => {
274
+ window.dispatchEvent(
275
+ new CustomEvent("onOriginExpectAmountWithoutDiscountChange", {
276
+ detail: {
277
+ originExpectAmountWithoutDiscount: total == null ? void 0 : total.originExpectAmountWithoutDiscount
278
+ }
279
+ })
280
+ );
281
+ }, [total == null ? void 0 : total.originExpectAmountWithoutDiscount]);
273
282
  const orderTotalList = (0, import_react.useMemo)(() => {
274
283
  return [
275
284
  // 订单已付金额
@@ -15,7 +15,7 @@ export declare const formatProductOption: (option: any) => any;
15
15
  * @Author: zhiwei.Wang
16
16
  * @Date: 2024-02-19 09:26
17
17
  */
18
- export declare const formatProductBundle: (bundle: any) => any;
18
+ export declare const formatProductBundle: (bundle: any, is_price_include_tax: number) => any;
19
19
  /**
20
20
  * 获取子商品折扣信息
21
21
  * @param item
@@ -96,7 +96,7 @@ var log = (data) => {
96
96
  ]
97
97
  });
98
98
  };
99
- var formatProductBundle = (bundle) => {
99
+ var formatProductBundle = (bundle, is_price_include_tax) => {
100
100
  if (!bundle) {
101
101
  return;
102
102
  }
@@ -132,6 +132,7 @@ var formatProductBundle = (bundle) => {
132
132
  "option": option,
133
133
  "bundle_selling_price": Math.abs(d == null ? void 0 : d.price),
134
134
  // "bundle_sum_price": d?.original_price || d?.original_total,
135
+ is_price_include_tax,
135
136
  "metadata": {
136
137
  custom_product_bundle_map_id: d._id,
137
138
  // 子商品单数量附加费
@@ -368,7 +369,7 @@ var formatProducts = (item, quantity) => {
368
369
  "discount_per": item._extend.discount_per,
369
370
  "discount_type": item._extend.discount_type || discount_type,
370
371
  "order_detail_id": item._extend.order_detail_id || 0,
371
- "product_bundle": formatProductBundle((_e = (_d = item._extend) == null ? void 0 : _d.other) == null ? void 0 : _e.bundle),
372
+ "product_bundle": formatProductBundle((_e = (_d = item._extend) == null ? void 0 : _d.other) == null ? void 0 : _e.bundle, item.is_price_include_tax),
372
373
  "bundle_edit": item._extend.bundle_edit || bundleDiscountList.length ? 1 : 0,
373
374
  "product_option_item": formatProductOption((_g = (_f = item._extend) == null ? void 0 : _f.other) == null ? void 0 : _g.option),
374
375
  "product_variant_id": ((_i = (_h = item._extend) == null ? void 0 : _h.other) == null ? void 0 : _i.product_variant_id) || 0,
@@ -378,7 +379,8 @@ var formatProducts = (item, quantity) => {
378
379
  "calculated_original_price": formatOriginalPrice(item),
379
380
  "calculated_selling_price": formatSellingPrice(item),
380
381
  "tax_fee": item._extend.tax_fee,
381
- "custom_deposit_data": item.custom_deposit_data
382
+ "custom_deposit_data": item.custom_deposit_data,
383
+ is_price_include_tax: item.is_price_include_tax
382
384
  };
383
385
  };
384
386
  var formatAppointmentProductLists = (data) => {