@pisell/private-materials 6.3.50 → 6.3.52

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 (181) 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/Sales/Summary/utils.d.ts +1 -1
  10. package/es/components/appointmentBooking/components/Footer/index.d.ts +0 -1
  11. package/es/components/appointmentBooking/components/Guest/components/InformationOptionsModal/index.d.ts +0 -1
  12. package/es/components/appointmentBooking/components/Voucher/index.js +1 -1
  13. package/es/components/booking/addons/index.js +20 -17
  14. package/es/components/booking/components/TabProduct/productItem/index.d.ts +1 -0
  15. package/es/components/booking/components/TabProduct/selectProductItem/index.d.ts +1 -0
  16. package/es/components/booking/components/collapsibleList/utils.d.ts +1 -0
  17. package/es/components/booking/components/emptyBooking/index.d.ts +1 -0
  18. package/es/components/booking/components/footer/FooterMenus/index.d.ts +1 -0
  19. package/es/components/booking/components/footer/utils.d.ts +5 -0
  20. package/es/components/booking/components/footer/utils.js +85 -40
  21. package/es/components/booking/components/reloadResourceModal/index.d.ts +1 -0
  22. package/es/components/booking/components/voucher/index.js +18 -5
  23. package/es/components/booking/info/clientVariant/hooks/useClientFn.d.ts +1 -0
  24. package/es/components/booking/info/date/index.d.ts +1 -0
  25. package/es/components/booking/info/notes/index.d.ts +1 -0
  26. package/es/components/booking/info/service/actions/index.d.ts +1 -0
  27. package/es/components/booking/info/service2/utils.js +1 -0
  28. package/es/components/booking/info2/service/actions/index.d.ts +1 -0
  29. package/es/components/booking/info2/service/addService/index.js +2 -3
  30. package/es/components/booking/info2/service/contactInfoMode/index.d.ts +1 -0
  31. package/es/components/booking/materiels/duration/index.d.ts +1 -0
  32. package/es/components/booking/notes/NoteBlock/NoteItem/index.d.ts +1 -0
  33. package/es/components/booking/notes/NoteBlock/index.d.ts +1 -0
  34. package/es/components/booking/utils.d.ts +1 -0
  35. package/es/components/booking/utils.js +16 -2
  36. package/es/components/eftpos/form/index.d.ts +0 -1
  37. package/es/components/eftpos/hooks.d.ts +0 -1
  38. package/es/components/eftposPay/amount.d.ts +1 -0
  39. package/es/components/eftposPay/hooks.d.ts +1 -1
  40. package/es/components/eftposPay/payo/config.d.ts +1 -0
  41. package/es/components/eftposPay/store/index.d.ts +1 -1
  42. package/es/components/eftposPay/tip.d.ts +1 -0
  43. package/es/components/eftposPay/windcave/receiptAction.d.ts +1 -0
  44. package/es/components/eftposPay/windcave/windcave.d.ts +1 -0
  45. package/es/components/eventBooking/components/ErrorTip/index.d.ts +0 -1
  46. package/es/components/eventBooking/components/Provider/Content/index.d.ts +1 -0
  47. package/es/components/eventBooking/components/Provider/InformationOptionsModal/index.d.ts +0 -1
  48. package/es/components/eventBooking/components/Provider/SelectHolderModal.d.ts +1 -0
  49. package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/WeekItem/index.d.ts +0 -1
  50. package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/index.d.ts +0 -1
  51. package/es/components/eventBooking/components/bookingDetailModal/components/Resource.d.ts +1 -0
  52. package/es/components/login/index.d.ts +1 -0
  53. package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +0 -1
  54. package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/components/SetupForm/index.d.ts +0 -1
  55. package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/index.d.ts +0 -1
  56. package/es/components/pay/toC/WalletPassBlock/components/WalletUseList/index.d.ts +0 -1
  57. package/es/components/pisellSelectCustomerModal/RightPanel/Add/BirthdayField/index.d.ts +1 -0
  58. package/es/components/pisellSelectCustomerModal/RightPanel/Add/GenderField/index.d.ts +1 -0
  59. package/es/components/pisellSelectCustomerModal/RightPanel/Add/index.d.ts +1 -0
  60. package/es/components/productExtension/fields/Forms/index.d.ts +0 -1
  61. package/es/components/productExtension/fields/SelectProducts/ProductItem/index.d.ts +1 -0
  62. package/es/components/productExtension/fields/SelectProducts/ProductItemPreview/index.d.ts +1 -0
  63. package/es/components/productExtension/fields/SelectProducts/index.d.ts +1 -0
  64. package/es/components/productExtension/fields/SelectResourcesTable/index.d.ts +1 -0
  65. package/es/components/ruleSetting/ruleBorder/index.d.ts +1 -0
  66. package/es/components/schedules/calendar/index.d.ts +1 -0
  67. package/es/components/schedules/components/ScheduleDetailList/index.d.ts +1 -0
  68. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/ResourcesModule/index.d.ts +1 -0
  69. package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/index.d.ts +0 -1
  70. package/es/components/schedules/products/index.d.ts +0 -1
  71. package/es/components/schedules/products/list/ProductItem/index.d.ts +1 -0
  72. package/es/components/schedules/products/list/index.d.ts +1 -0
  73. package/es/components/schedules/resources/list/index.d.ts +1 -0
  74. package/es/components/schedules/resources/relationProduct/index.d.ts +0 -1
  75. package/es/components/shoppingCart/index.d.ts +1 -0
  76. package/es/components/ticketBooking/components/addServiceVariant/addService.js +3 -3
  77. package/es/components/ticketBooking/utils/index.js +23 -8
  78. package/es/components/wallet/hooks/useWalletCard.d.ts +1 -0
  79. package/es/components/workSpaceList/components/Modal/index.d.ts +0 -1
  80. package/es/hooks/usePaymentLogger.d.ts +1 -0
  81. package/es/plus/saasCreateOrganization/components/Header.d.ts +1 -0
  82. package/es/plus/saasRegister/components/EntryEmail.d.ts +1 -0
  83. package/es/plus/saasRegister/components/EntryInfo.d.ts +1 -0
  84. package/es/plus/saasRegister/components/GoLogin.d.ts +1 -0
  85. package/es/plus/saasRegister/components/Header.d.ts +1 -0
  86. package/es/plus/saasRegister/components/VerifyError.d.ts +1 -0
  87. package/es/plus/saasRegister/components/VerifyingLink.d.ts +1 -0
  88. package/es/plus/walletPassGallery/components/footerButton/index.js +2 -4
  89. package/es/plus/walletPassGallery/components/footerButton/index.less +14 -59
  90. package/es/plus/walletPassGallery/components/passDetail/index.js +5 -1
  91. package/es/plus/walletPassGallery/components/passDetail/index.less +4 -0
  92. package/es/plus/walletPassGallery/components/recharge/index.js +19 -8
  93. package/es/plus/walletPassGallery/index.js +3 -1
  94. package/es/pro/Login2.0/index.less +15 -8
  95. package/lib/components/Sales/Summary/utils.d.ts +1 -1
  96. package/lib/components/appointmentBooking/components/Footer/index.d.ts +0 -1
  97. package/lib/components/appointmentBooking/components/Guest/components/InformationOptionsModal/index.d.ts +0 -1
  98. package/lib/components/appointmentBooking/components/Voucher/index.js +1 -1
  99. package/lib/components/booking/addons/index.js +10 -7
  100. package/lib/components/booking/components/TabProduct/productItem/index.d.ts +1 -0
  101. package/lib/components/booking/components/TabProduct/selectProductItem/index.d.ts +1 -0
  102. package/lib/components/booking/components/collapsibleList/utils.d.ts +1 -0
  103. package/lib/components/booking/components/emptyBooking/index.d.ts +1 -0
  104. package/lib/components/booking/components/footer/FooterMenus/index.d.ts +1 -0
  105. package/lib/components/booking/components/footer/utils.d.ts +5 -0
  106. package/lib/components/booking/components/footer/utils.js +56 -23
  107. package/lib/components/booking/components/reloadResourceModal/index.d.ts +1 -0
  108. package/lib/components/booking/components/voucher/index.js +19 -6
  109. package/lib/components/booking/info/clientVariant/hooks/useClientFn.d.ts +1 -0
  110. package/lib/components/booking/info/date/index.d.ts +1 -0
  111. package/lib/components/booking/info/notes/index.d.ts +1 -0
  112. package/lib/components/booking/info/service/actions/index.d.ts +1 -0
  113. package/lib/components/booking/info/service2/utils.js +1 -0
  114. package/lib/components/booking/info2/service/actions/index.d.ts +1 -0
  115. package/lib/components/booking/info2/service/addService/index.js +1 -2
  116. package/lib/components/booking/info2/service/contactInfoMode/index.d.ts +1 -0
  117. package/lib/components/booking/materiels/duration/index.d.ts +1 -0
  118. package/lib/components/booking/notes/NoteBlock/NoteItem/index.d.ts +1 -0
  119. package/lib/components/booking/notes/NoteBlock/index.d.ts +1 -0
  120. package/lib/components/booking/utils.d.ts +1 -0
  121. package/lib/components/booking/utils.js +12 -0
  122. package/lib/components/eftpos/form/index.d.ts +0 -1
  123. package/lib/components/eftpos/hooks.d.ts +0 -1
  124. package/lib/components/eftposPay/amount.d.ts +1 -0
  125. package/lib/components/eftposPay/hooks.d.ts +1 -1
  126. package/lib/components/eftposPay/payo/config.d.ts +1 -0
  127. package/lib/components/eftposPay/store/index.d.ts +1 -1
  128. package/lib/components/eftposPay/tip.d.ts +1 -0
  129. package/lib/components/eftposPay/windcave/receiptAction.d.ts +1 -0
  130. package/lib/components/eftposPay/windcave/windcave.d.ts +1 -0
  131. package/lib/components/eventBooking/components/ErrorTip/index.d.ts +0 -1
  132. package/lib/components/eventBooking/components/Provider/Content/index.d.ts +1 -0
  133. package/lib/components/eventBooking/components/Provider/InformationOptionsModal/index.d.ts +0 -1
  134. package/lib/components/eventBooking/components/Provider/SelectHolderModal.d.ts +1 -0
  135. package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/WeekItem/index.d.ts +0 -1
  136. package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/index.d.ts +0 -1
  137. package/lib/components/eventBooking/components/bookingDetailModal/components/Resource.d.ts +1 -0
  138. package/lib/components/login/index.d.ts +1 -0
  139. package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +0 -1
  140. package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/components/SetupForm/index.d.ts +0 -1
  141. package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/index.d.ts +0 -1
  142. package/lib/components/pay/toC/WalletPassBlock/components/WalletUseList/index.d.ts +0 -1
  143. package/lib/components/pisellSelectCustomerModal/RightPanel/Add/BirthdayField/index.d.ts +1 -0
  144. package/lib/components/pisellSelectCustomerModal/RightPanel/Add/GenderField/index.d.ts +1 -0
  145. package/lib/components/pisellSelectCustomerModal/RightPanel/Add/index.d.ts +1 -0
  146. package/lib/components/productExtension/fields/Forms/index.d.ts +0 -1
  147. package/lib/components/productExtension/fields/SelectProducts/ProductItem/index.d.ts +1 -0
  148. package/lib/components/productExtension/fields/SelectProducts/ProductItemPreview/index.d.ts +1 -0
  149. package/lib/components/productExtension/fields/SelectProducts/index.d.ts +1 -0
  150. package/lib/components/productExtension/fields/SelectResourcesTable/index.d.ts +1 -0
  151. package/lib/components/ruleSetting/ruleBorder/index.d.ts +1 -0
  152. package/lib/components/schedules/calendar/index.d.ts +1 -0
  153. package/lib/components/schedules/components/ScheduleDetailList/index.d.ts +1 -0
  154. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/ResourcesModule/index.d.ts +1 -0
  155. package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/index.d.ts +0 -1
  156. package/lib/components/schedules/products/index.d.ts +0 -1
  157. package/lib/components/schedules/products/list/ProductItem/index.d.ts +1 -0
  158. package/lib/components/schedules/products/list/index.d.ts +1 -0
  159. package/lib/components/schedules/resources/list/index.d.ts +1 -0
  160. package/lib/components/schedules/resources/relationProduct/index.d.ts +0 -1
  161. package/lib/components/shoppingCart/index.d.ts +1 -0
  162. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +1 -1
  163. package/lib/components/ticketBooking/utils/index.js +9 -4
  164. package/lib/components/wallet/hooks/useWalletCard.d.ts +1 -0
  165. package/lib/components/workSpaceList/components/Modal/index.d.ts +0 -1
  166. package/lib/hooks/usePaymentLogger.d.ts +1 -0
  167. package/lib/plus/saasCreateOrganization/components/Header.d.ts +1 -0
  168. package/lib/plus/saasRegister/components/EntryEmail.d.ts +1 -0
  169. package/lib/plus/saasRegister/components/EntryInfo.d.ts +1 -0
  170. package/lib/plus/saasRegister/components/GoLogin.d.ts +1 -0
  171. package/lib/plus/saasRegister/components/Header.d.ts +1 -0
  172. package/lib/plus/saasRegister/components/VerifyError.d.ts +1 -0
  173. package/lib/plus/saasRegister/components/VerifyingLink.d.ts +1 -0
  174. package/lib/plus/walletPassGallery/components/footerButton/index.js +2 -2
  175. package/lib/plus/walletPassGallery/components/footerButton/index.less +14 -59
  176. package/lib/plus/walletPassGallery/components/passDetail/index.js +4 -1
  177. package/lib/plus/walletPassGallery/components/passDetail/index.less +4 -0
  178. package/lib/plus/walletPassGallery/components/recharge/index.js +7 -1
  179. package/lib/plus/walletPassGallery/index.js +3 -1
  180. package/lib/pro/Login2.0/index.less +15 -8
  181. package/package.json +3 -3
@@ -30,7 +30,7 @@ export declare const calculateSubtotal: (items: CartItem[]) => string;
30
30
  * @return {*}
31
31
  * @Author: xiangfeng.xue
32
32
  */
33
- export declare const calculateTaxFee: (shopInfo: any, items: CartItem[]) => "0.00" | Decimal;
33
+ export declare const calculateTaxFee: (shopInfo: any, items: CartItem[]) => Decimal | "0.00";
34
34
  /**
35
35
  * 计算所有价格明细
36
36
  * @param items - 购物车商品数组
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import './index.less';
3
2
  declare const Footer: ({ onNext, isOpen }: any) => JSX.Element;
4
3
  export default Footer;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import './index.less';
3
2
  declare const GuestOptionsModal: (props: any) => JSX.Element;
4
3
  export default GuestOptionsModal;
@@ -102,7 +102,7 @@ var VoucherCard = function VoucherCard(props) {
102
102
  return {
103
103
  _id: item._id,
104
104
  quantity: item.num,
105
- bundle: item._bundleOrigin,
105
+ bundle: item.bundle,
106
106
  options: item._optionsOrigin,
107
107
  product: _objectSpread({}, item._productOrigin),
108
108
  discounts: ((_item$_origin = item._origin) === null || _item$_origin === void 0 || (_item$_origin = _item$_origin.product) === null || _item$_origin === void 0 ? void 0 : _item$_origin.discount_list) || []
@@ -1,15 +1,9 @@
1
1
  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); }
2
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
3
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
5
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
6
2
  function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
7
3
  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); } }
8
4
  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); }); }; }
9
5
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
6
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
7
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
8
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
9
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -17,6 +11,12 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
17
11
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
18
12
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
19
13
  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); }
14
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
15
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
17
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
18
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
19
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
20
20
  /**
21
21
  * @title: 添加额外商品
22
22
  * @description:
@@ -35,31 +35,34 @@ import ProductItem from "../components/TabProduct/selectProductItem";
35
35
  import TabProduct from "../components/TabProduct";
36
36
  import EmptyBooking from "../components/emptyBooking";
37
37
  import Footer from "../components/footer";
38
- import { formatProductBundle, formatProductOption, formatProductPrice } from "../components/footer/utils";
39
- import { formatProductListByCategory, getIsEject, getIsOnlySession, getProductTotalPrice, isSessionProduct, request } from "../utils";
38
+ import { formatProductBundle, formatProductOption, formatProductPrice, getBundleDiscountList } from "../components/footer/utils";
39
+ import { formatProductListByCategory, getIsEject, getIsOnlySession, getMainPrice, getProductTotalPrice, isSessionProduct, request } from "../utils";
40
40
  import { locales, getUniqueId } from '@pisell/utils';
41
41
  import "./index.less";
42
42
  import useEngineContext from "../../../hooks/useEngineContext";
43
43
  export var formatProducts = function formatProducts(values) {
44
44
  var arr = [];
45
45
  arr = values.map(function (item) {
46
- var _item$_extend, _item$_extend2, _item$_extend3, _item$_extend4;
46
+ var _item$_extend, _item$_extend2, _item$_extend3, _item$_extend4, _item$_extend5;
47
+ var bundleDiscountList = getBundleDiscountList(((_item$_extend = item._extend) === null || _item$_extend === void 0 || (_item$_extend = _item$_extend.other) === null || _item$_extend === void 0 ? void 0 : _item$_extend.bundle) || []);
48
+ var discount_list = _toConsumableArray((item === null || item === void 0 ? void 0 : item.discount_list) || []);
49
+ discount_list.push.apply(discount_list, _toConsumableArray(bundleDiscountList));
47
50
  return {
48
51
  order_detail_id: item.order_detail_id || 0,
49
52
  num: item._extend.quantity,
50
53
  price: formatProductPrice(item),
51
54
  product_id: item.id,
52
- discount_list: (item === null || item === void 0 ? void 0 : item.discount_list) || [],
55
+ discount_list: discount_list || [],
53
56
  discount_amount: 0,
54
57
  product_discount_reason: '',
55
58
  is_charge_tax: item.is_charge_tax,
56
59
  note: '',
57
60
  discountway: 'num',
58
61
  discount_type: 'discount',
59
- bundle_edit: (_item$_extend = item._extend) === null || _item$_extend === void 0 ? void 0 : _item$_extend.bundle_edit,
60
- product_bundle: formatProductBundle((_item$_extend2 = item._extend) === null || _item$_extend2 === void 0 || (_item$_extend2 = _item$_extend2.other) === null || _item$_extend2 === void 0 ? void 0 : _item$_extend2.bundle),
61
- "product_option_item": formatProductOption((_item$_extend3 = item._extend) === null || _item$_extend3 === void 0 || (_item$_extend3 = _item$_extend3.other) === null || _item$_extend3 === void 0 ? void 0 : _item$_extend3.option),
62
- "product_variant_id": ((_item$_extend4 = item._extend) === null || _item$_extend4 === void 0 || (_item$_extend4 = _item$_extend4.other) === null || _item$_extend4 === void 0 ? void 0 : _item$_extend4.product_variant_id) || 0
62
+ bundle_edit: (_item$_extend2 = item._extend) === null || _item$_extend2 === void 0 ? void 0 : _item$_extend2.bundle_edit,
63
+ product_bundle: formatProductBundle((_item$_extend3 = item._extend) === null || _item$_extend3 === void 0 || (_item$_extend3 = _item$_extend3.other) === null || _item$_extend3 === void 0 ? void 0 : _item$_extend3.bundle),
64
+ "product_option_item": formatProductOption((_item$_extend4 = item._extend) === null || _item$_extend4 === void 0 || (_item$_extend4 = _item$_extend4.other) === null || _item$_extend4 === void 0 ? void 0 : _item$_extend4.option),
65
+ "product_variant_id": ((_item$_extend5 = item._extend) === null || _item$_extend5 === void 0 || (_item$_extend5 = _item$_extend5.other) === null || _item$_extend5 === void 0 ? void 0 : _item$_extend5.product_variant_id) || 0
63
66
  };
64
67
  });
65
68
  return arr;
@@ -314,12 +317,12 @@ var Addons = Provider(function (props) {
314
317
  isAddons: true,
315
318
  _key: e.key,
316
319
  _extend: {
317
- price: _detail.price,
318
320
  other: e,
319
321
  quantity: (e === null || e === void 0 ? void 0 : e.quantity) || 1
320
322
  },
321
323
  quantity: (e === null || e === void 0 ? void 0 : e.quantity) || 1
322
324
  });
325
+ product._extend.price = getMainPrice(product, _detail.price);
323
326
  var _total = getProductTotalPrice(product);
324
327
  product._extend.total = _total;
325
328
  product._extend.origin_total = _total;
@@ -367,13 +370,13 @@ var Addons = Provider(function (props) {
367
370
  return d._id !== item._id;
368
371
  });
369
372
  } else {
370
- var _item$_extend5;
373
+ var _item$_extend6;
371
374
  var _item = _objectSpread(_objectSpread({}, item), {}, {
372
375
  _extend: _objectSpread(_objectSpread({}, item._extend), {}, {
373
376
  quantity: Number(e.target.value)
374
377
  })
375
378
  });
376
- if (((_item$_extend5 = _item._extend) === null || _item$_extend5 === void 0 ? void 0 : _item$_extend5.bundle_edit) !== undefined) {
379
+ if (((_item$_extend6 = _item._extend) === null || _item$_extend6 === void 0 ? void 0 : _item$_extend6.bundle_edit) !== undefined) {
377
380
  _item._extend.bundle_edit = 1;
378
381
  }
379
382
  _list = _list.map(function (d) {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  declare const ProductItem: ({ item, onClick, amountSymbol, style, className, }: any) => JSX.Element;
3
4
  export default ProductItem;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  declare const SelectProductItem: ({ item, onClick, onChangeQuantity, amountSymbol, style, className, disabled, }: any) => JSX.Element;
3
4
  export default SelectProductItem;
@@ -1 +1,2 @@
1
+ /// <reference types="react" />
1
2
  export declare const renderBundles: (item: any, amountSymbol: string) => JSX.Element;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  /**
2
3
  * @title: 空状态
3
4
  * @description:
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  declare const FooterMenus: ({ state, menuChange, items }: any) => JSX.Element | null;
3
4
  export default FooterMenus;
@@ -16,6 +16,11 @@ export declare const formatProductOption: (option: any) => any;
16
16
  * @Date: 2024-02-19 09:26
17
17
  */
18
18
  export declare const formatProductBundle: (bundle: any) => any;
19
+ /**
20
+ * 获取子商品折扣信息
21
+ * @param item
22
+ */
23
+ export declare const getBundleDiscountList: (bundle: any[]) => any[];
19
24
  export interface ResourceItem {
20
25
  [key: string]: any;
21
26
  }
@@ -4,6 +4,12 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
4
4
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
5
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
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
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
8
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
11
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
12
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
7
13
  import dayjs from 'dayjs';
8
14
  import { flexibleObj, isNowTime, getNowTime } from "../../utils";
9
15
  import { isWalkIn } from "../../utils";
@@ -12,7 +18,8 @@ import { getDays } from "../../utils";
12
18
  import { appointmentTypes } from "../../info/service2/status";
13
19
  import { isDaysBooking, formatDayTime, isEventBooking, isNormalProductByDurationSchedule } from "../../info/service2/utils";
14
20
  import { isArr, locales, sendWarningLog } from '@pisell/utils';
15
- import { PisellToast } from '@pisell/materials';
21
+ import { PisellToast } from "@pisell/materials";
22
+ import Decimal from 'decimal.js';
16
23
  var formatNote = function formatNote(data) {
17
24
  var _data$notes;
18
25
  return ((_data$notes = data.notes) === null || _data$notes === void 0 ? void 0 : _data$notes.orderNote) || '';
@@ -46,10 +53,10 @@ export var formatProductOption = function formatProductOption(option) {
46
53
  }
47
54
  return option.map(function (d) {
48
55
  return {
49
- num: d.num,
50
- option_group_item_id: d.product_option_item_id || d.option_group_item_id,
51
- option_group_id: d.option_group_id
52
- // "add_price": Number(d?.add_price),
56
+ "num": d.num,
57
+ "option_group_item_id": d.product_option_item_id || d.option_group_item_id,
58
+ "option_group_id": d.option_group_id,
59
+ "custom_add_price": Number(d === null || d === void 0 ? void 0 : d.add_price)
53
60
  };
54
61
  });
55
62
  };
@@ -98,20 +105,51 @@ export var formatProductBundle = function formatProductBundle(bundle) {
98
105
  }
99
106
  } catch (error) {}
100
107
  return bundle.map(function (d) {
108
+ var option = formatProductOption(d.option);
109
+ var option_price = option.reduce(function (temp, item) {
110
+ return temp + Number(item.num) * item.custom_add_price;
111
+ }, 0);
101
112
  return {
102
- bundle_group_id: d.group_id,
103
- bundle_id: d.id,
104
- bundle_product_id: (d === null || d === void 0 ? void 0 : d._bundle_product_id) || (d === null || d === void 0 ? void 0 : d.product_id),
105
- bundle_variant_id: d.bundle_variant_id,
106
- num: d.num,
107
- extension_id: d.extension_id,
108
- extension_type: d.extension_type,
109
- // "price": Number(d?.price),
110
- // "price_type": d?.price_type,
111
- option: formatProductOption(d.option)
113
+ "bundle_group_id": d.group_id,
114
+ "bundle_id": d.id,
115
+ "bundle_product_id": (d === null || d === void 0 ? void 0 : d._bundle_product_id) || (d === null || d === void 0 ? void 0 : d.product_id),
116
+ "bundle_variant_id": d.bundle_variant_id,
117
+ "num": d.num,
118
+ "extension_id": d.extension_id,
119
+ "extension_type": d.extension_type,
120
+ "price": Number(d === null || d === void 0 ? void 0 : d.product_price),
121
+ "price_type": d === null || d === void 0 ? void 0 : d.price_type,
122
+ "price_type_ext": d === null || d === void 0 ? void 0 : d.price_type_ext,
123
+ "custom_price": (d === null || d === void 0 ? void 0 : d.custom_price) || Math.abs(new Decimal((d === null || d === void 0 ? void 0 : d.original_price) || (d === null || d === void 0 ? void 0 : d.product_price)).sub(option_price).toNumber()).toFixed(2),
124
+ "custom_price_type": d === null || d === void 0 ? void 0 : d.price_type,
125
+ "option": option,
126
+ "bundle_selling_price": d === null || d === void 0 ? void 0 : d.price,
127
+ "bundle_sum_price": (d === null || d === void 0 ? void 0 : d.original_price) || (d === null || d === void 0 ? void 0 : d.original_total),
128
+ metadata: {
129
+ custom_product_bundle_map_id: d._id
130
+ }
112
131
  };
113
132
  });
114
133
  };
134
+
135
+ /**
136
+ * 获取子商品折扣信息
137
+ * @param item
138
+ */
139
+ export var getBundleDiscountList = function getBundleDiscountList(bundle) {
140
+ if (!bundle) {
141
+ return [];
142
+ }
143
+ var discountList = [];
144
+ bundle.forEach(function (d) {
145
+ if (d.discount_list && isArr(d.discount_list)) {
146
+ discountList.push.apply(discountList, _toConsumableArray(d.discount_list.filter(function (item) {
147
+ return !item.id;
148
+ })));
149
+ }
150
+ });
151
+ return discountList;
152
+ };
115
153
  var getSubType = function getSubType(item) {
116
154
  var _item$duration;
117
155
  var _type = (_item$duration = item.duration) === null || _item$duration === void 0 ? void 0 : _item$duration.type;
@@ -251,7 +289,7 @@ export var formatProductPrice = function formatProductPrice(item) {
251
289
  return price;
252
290
  };
253
291
  var formatMetaData = function formatMetaData(item, isMultiDayPrices) {
254
- var _item$_extend8, _item$_extend9, _item$_extend11;
292
+ var _item$_extend8, _item$_extend9, _item$_extend11, _item$_extend13;
255
293
  var metadata = {};
256
294
  if ((_item$_extend8 = item._extend) !== null && _item$_extend8 !== void 0 && _item$_extend8.capacity) {
257
295
  metadata.capacity = item._extend.capacity;
@@ -267,6 +305,10 @@ var formatMetaData = function formatMetaData(item, isMultiDayPrices) {
267
305
  var _item$_extend12;
268
306
  metadata.multiDayPrices = (_item$_extend12 = item._extend) === null || _item$_extend12 === void 0 ? void 0 : _item$_extend12.multiDayPrices;
269
307
  }
308
+ if ((_item$_extend13 = item._extend) !== null && _item$_extend13 !== void 0 && _item$_extend13.unique_identification_number) {
309
+ var _item$_extend14;
310
+ metadata.unique_identification_number = (_item$_extend14 = item._extend) === null || _item$_extend14 === void 0 ? void 0 : _item$_extend14.unique_identification_number;
311
+ }
270
312
  return metadata;
271
313
  };
272
314
 
@@ -286,9 +328,9 @@ var formatMetaData = function formatMetaData(item, isMultiDayPrices) {
286
328
 
287
329
  // 获取商品价格 包含组合规格
288
330
  var getSourceProductPrice = function getSourceProductPrice(item) {
289
- var _item$_extend13, _item$_extend14, _item$variant2;
290
- var other = (_item$_extend13 = item._extend) === null || _item$_extend13 === void 0 ? void 0 : _item$_extend13.other;
291
- var price = Number((_item$_extend14 = item._extend) === null || _item$_extend14 === void 0 ? void 0 : _item$_extend14.price);
331
+ var _item$_extend15, _item$_extend16, _item$variant2;
332
+ var other = (_item$_extend15 = item._extend) === null || _item$_extend15 === void 0 ? void 0 : _item$_extend15.other;
333
+ var price = Number((_item$_extend16 = item._extend) === null || _item$_extend16 === void 0 ? void 0 : _item$_extend16.price);
292
334
 
293
335
  // 组合规格: 根据当前选择的组合规格id 和商品的组合规格列表 获取当前商品的价格
294
336
  if ((other === null || other === void 0 ? void 0 : other.product_variant_id) > 0 && (item === null || item === void 0 || (_item$variant2 = item.variant) === null || _item$variant2 === void 0 ? void 0 : _item$variant2.length) > 0) {
@@ -311,11 +353,13 @@ var getSourceProductPrice = function getSourceProductPrice(item) {
311
353
  * @Date: 2024-12-07 14:21
312
354
  */
313
355
  var formatProducts = function formatProducts(item, quantity) {
314
- var _item$_extend15, _item$_extend16, _item$_extend17;
356
+ var _item$_extend17, _item$_extend$main_pr, _item$_extend18, _item$_extend19, _item$_extend20;
315
357
  var total = Number(item._extend.total);
316
358
  var origin_total = Number(item._extend.origin_total);
317
359
  var discount_amount = origin_total - total;
318
- var discount_list = (item === null || item === void 0 ? void 0 : item.discount_list) || [];
360
+ var bundleDiscountList = getBundleDiscountList(((_item$_extend17 = item._extend) === null || _item$_extend17 === void 0 || (_item$_extend17 = _item$_extend17.other) === null || _item$_extend17 === void 0 ? void 0 : _item$_extend17.bundle) || []);
361
+ var discount_list = _toConsumableArray((item === null || item === void 0 ? void 0 : item.discount_list) || []);
362
+ discount_list.push.apply(discount_list, _toConsumableArray(bundleDiscountList));
319
363
 
320
364
  // 加价时type使用change_price
321
365
  var discount_type = discount_amount < 0 ? 'change_price' : 'discount';
@@ -327,6 +371,7 @@ var formatProducts = function formatProducts(item, quantity) {
327
371
  return {
328
372
  "num": quantity || item._extend.quantity,
329
373
  "price": formatProductPrice(item),
374
+ "main_product_selling_price": (_item$_extend$main_pr = item._extend.main_product_selling_price) !== null && _item$_extend$main_pr !== void 0 ? _item$_extend$main_pr : formatProductPrice(item),
330
375
  "source_product_price": getSourceProductPrice(item),
331
376
  "product_id": (item === null || item === void 0 ? void 0 : item.product_id) || item.id,
332
377
  "discount_amount": notManualDiscount.length > 0 ? 0 : discount_amount,
@@ -337,10 +382,10 @@ var formatProducts = function formatProducts(item, quantity) {
337
382
  "discount_per": item._extend.discount_per,
338
383
  "discount_type": item._extend.discount_type || discount_type,
339
384
  "order_detail_id": item._extend.order_detail_id || 0,
340
- "product_bundle": formatProductBundle((_item$_extend15 = item._extend) === null || _item$_extend15 === void 0 || (_item$_extend15 = _item$_extend15.other) === null || _item$_extend15 === void 0 ? void 0 : _item$_extend15.bundle),
341
- "bundle_edit": item._extend.bundle_edit,
342
- "product_option_item": formatProductOption((_item$_extend16 = item._extend) === null || _item$_extend16 === void 0 || (_item$_extend16 = _item$_extend16.other) === null || _item$_extend16 === void 0 ? void 0 : _item$_extend16.option),
343
- "product_variant_id": ((_item$_extend17 = item._extend) === null || _item$_extend17 === void 0 || (_item$_extend17 = _item$_extend17.other) === null || _item$_extend17 === void 0 ? void 0 : _item$_extend17.product_variant_id) || 0,
385
+ "product_bundle": formatProductBundle((_item$_extend18 = item._extend) === null || _item$_extend18 === void 0 || (_item$_extend18 = _item$_extend18.other) === null || _item$_extend18 === void 0 ? void 0 : _item$_extend18.bundle),
386
+ "bundle_edit": item._extend.bundle_edit || bundleDiscountList.length ? 1 : 0,
387
+ "product_option_item": formatProductOption((_item$_extend19 = item._extend) === null || _item$_extend19 === void 0 || (_item$_extend19 = _item$_extend19.other) === null || _item$_extend19 === void 0 ? void 0 : _item$_extend19.option),
388
+ "product_variant_id": ((_item$_extend20 = item._extend) === null || _item$_extend20 === void 0 || (_item$_extend20 = _item$_extend20.other) === null || _item$_extend20 === void 0 ? void 0 : _item$_extend20.product_variant_id) || 0,
344
389
  "discount_list": notManualDiscount,
345
390
  metadata: formatMetaData(item, false)
346
391
  };
@@ -360,8 +405,8 @@ var formatDayRelationProducts = function formatDayRelationProducts(data, booking
360
405
 
361
406
  // 过滤出卡片中的普通商品
362
407
  var relation_products = list === null || list === void 0 ? void 0 : list.filter(function (item) {
363
- var _item$_extend18;
364
- var holderId = (_item$_extend18 = item._extend) === null || _item$_extend18 === void 0 ? void 0 : _item$_extend18.holder_id;
408
+ var _item$_extend21;
409
+ var holderId = (_item$_extend21 = item._extend) === null || _item$_extend21 === void 0 ? void 0 : _item$_extend21.holder_id;
365
410
  var bookingHolderId = booking_item._extend.holder_id;
366
411
  var isDayBookingProduct = appointmentTypes.includes(item.extension_type);
367
412
  return holderId && holderId === bookingHolderId && !isDayBookingProduct;
@@ -387,15 +432,15 @@ var formatAppointmentProductLists = function formatAppointmentProductLists(data)
387
432
 
388
433
  // 找出预约商品
389
434
  list = list.filter(function (item) {
390
- var _item$_extend19;
391
- return ((_item$_extend19 = item._extend) === null || _item$_extend19 === void 0 ? void 0 : _item$_extend19.holder_id) && !isNormalProductByDurationSchedule(item);
435
+ var _item$_extend22;
436
+ return ((_item$_extend22 = item._extend) === null || _item$_extend22 === void 0 ? void 0 : _item$_extend22.holder_id) && !isNormalProductByDurationSchedule(item);
392
437
  });
393
438
 
394
439
  // 对预约商品列表根据holder_id进行分组
395
440
  var groupMap = new Map();
396
441
  list.forEach(function (item) {
397
- var _item$_extend20;
398
- var key = (_item$_extend20 = item._extend) === null || _item$_extend20 === void 0 ? void 0 : _item$_extend20.holder_id; // 分组键
442
+ var _item$_extend23;
443
+ var key = (_item$_extend23 = item._extend) === null || _item$_extend23 === void 0 ? void 0 : _item$_extend23.holder_id; // 分组键
399
444
  if (!groupMap.has(key)) {
400
445
  groupMap.set(key, []);
401
446
  }
@@ -456,7 +501,7 @@ var formatBookings = function formatBookings(data, values) {
456
501
  var bookings = [];
457
502
  var obj = {};
458
503
  list.forEach(function (item) {
459
- var _item$_extend25;
504
+ var _item$_extend28;
460
505
  var start_date = item._extend.startDate.format('YYYY-MM-DD');
461
506
  var end_date = item._extend.endDate.format('YYYY-MM-DD');
462
507
  var end_time = item._extend.endDate.format('HH:mm');
@@ -470,9 +515,9 @@ var formatBookings = function formatBookings(data, values) {
470
515
 
471
516
  // 跨日预约下的普通商品
472
517
  if (isDay) {
473
- var _item$_extend21, _item$_extend22, _item$_extend23, _item$_extend24;
474
- var startDate = ((_item$_extend21 = item._extend) === null || _item$_extend21 === void 0 ? void 0 : _item$_extend21.startDate) || ((_item$_extend22 = item._extend) === null || _item$_extend22 === void 0 ? void 0 : _item$_extend22.start_date);
475
- var endDate = ((_item$_extend23 = item._extend) === null || _item$_extend23 === void 0 ? void 0 : _item$_extend23.endDate) || ((_item$_extend24 = item._extend) === null || _item$_extend24 === void 0 ? void 0 : _item$_extend24.end_date);
518
+ var _item$_extend24, _item$_extend25, _item$_extend26, _item$_extend27;
519
+ var startDate = ((_item$_extend24 = item._extend) === null || _item$_extend24 === void 0 ? void 0 : _item$_extend24.startDate) || ((_item$_extend25 = item._extend) === null || _item$_extend25 === void 0 ? void 0 : _item$_extend25.start_date);
520
+ var endDate = ((_item$_extend26 = item._extend) === null || _item$_extend26 === void 0 ? void 0 : _item$_extend26.endDate) || ((_item$_extend27 = item._extend) === null || _item$_extend27 === void 0 ? void 0 : _item$_extend27.end_date);
476
521
  var _formatDayTime = formatDayTime({
477
522
  startDate: startDate,
478
523
  endDate: endDate
@@ -498,7 +543,7 @@ var formatBookings = function formatBookings(data, values) {
498
543
  // 跨日预约处理: 跨日预约所有数据都在list中, 每一组预约通过groupId进行分组
499
544
  // 通过obj 记录下每个GroupId第一次出现的时机, 第一次出现需要设置 metadata.multiDayPrices
500
545
  // 后续出现不需要设置 metadata.multiDayPrices. 节省体积
501
- var isSetGroupId = obj[item === null || item === void 0 || (_item$_extend25 = item._extend) === null || _item$_extend25 === void 0 ? void 0 : _item$_extend25.groupId];
546
+ var isSetGroupId = obj[item === null || item === void 0 || (_item$_extend28 = item._extend) === null || _item$_extend28 === void 0 ? void 0 : _item$_extend28.groupId];
502
547
  var booking = _objectSpread(_objectSpread({
503
548
  "product": formatProducts(item),
504
549
  "relation_products": formatRelationDetails(item._extend.relation_details),
@@ -557,10 +602,10 @@ var formatRelationProducts = function formatRelationProducts(data, type) {
557
602
  var list = ((_data$service = data.service) === null || _data$service === void 0 ? void 0 : _data$service.value) || [];
558
603
  // open items 下的商品
559
604
  list = list.filter(function (item) {
560
- var _item$_extend26;
605
+ var _item$_extend29;
561
606
  return (
562
607
  // 跨日预约把普通商品加在relationProducts 活动预约按之前逻辑
563
- type === 'day' ? isNormalProductByDurationSchedule(item) : ((_item$_extend26 = item._extend) === null || _item$_extend26 === void 0 ? void 0 : _item$_extend26.holder_id) && appointmentTypes.includes(item.extension_type)
608
+ type === 'day' ? isNormalProductByDurationSchedule(item) : ((_item$_extend29 = item._extend) === null || _item$_extend29 === void 0 ? void 0 : _item$_extend29.holder_id) && appointmentTypes.includes(item.extension_type)
564
609
  );
565
610
  });
566
611
  var relationProducts = [];
@@ -694,7 +739,7 @@ export var formatValues = function formatValues(state) {
694
739
  export var checkHolderIsError = function checkHolderIsError(state) {
695
740
  var _state$client;
696
741
  var holderError = state.service.value.some(function (item) {
697
- var _item$_extend27;
742
+ var _item$_extend30;
698
743
  // 普通商品不需要检测holder
699
744
  if (isNormalProductByDurationSchedule(item)) {
700
745
  return false;
@@ -702,7 +747,7 @@ export var checkHolderIsError = function checkHolderIsError(state) {
702
747
  if (item._extend.quantity === 1 && !item._extend.holder_id) {
703
748
  return true;
704
749
  }
705
- if (item._extend.quantity > 1 && ((_item$_extend27 = item._extend) === null || _item$_extend27 === void 0 || (_item$_extend27 = _item$_extend27.holder_id) === null || _item$_extend27 === void 0 ? void 0 : _item$_extend27.length) !== item._extend.quantity) {
750
+ if (item._extend.quantity > 1 && ((_item$_extend30 = item._extend) === null || _item$_extend30 === void 0 || (_item$_extend30 = _item$_extend30.holder_id) === null || _item$_extend30 === void 0 ? void 0 : _item$_extend30.length) !== item._extend.quantity) {
706
751
  return true;
707
752
  }
708
753
  return false;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  interface IProps {
3
4
  modal: any;
@@ -97,6 +97,11 @@ var VoucherCard = function VoucherCard(props) {
97
97
  });
98
98
  return val;
99
99
  }, [state.service.value]);
100
+ var serviceTotal = useMemo(function () {
101
+ return serviceMemo.reduce(function (total, item) {
102
+ return total + (item.total || 0);
103
+ }, 0);
104
+ }, [serviceMemo]);
100
105
  var addonsMemo = useMemo(function () {
101
106
  var _ref2;
102
107
  var val = (_ref2 = state.addons.value || []) === null || _ref2 === void 0 ? void 0 : _ref2.map(function (value) {
@@ -183,6 +188,12 @@ var VoucherCard = function VoucherCard(props) {
183
188
  var _getServiceAddons = getServiceAddons(list),
184
189
  serviceList = _getServiceAddons.serviceList,
185
190
  addonsList = _getServiceAddons.addonsList;
191
+ var newTotal = serviceList.reduce(function (total, item) {
192
+ return total + (item._extend.total || 0);
193
+ }, 0);
194
+ if (newTotal !== serviceTotal) {
195
+ edit = true;
196
+ }
186
197
  serviceValueRef.current = serviceList;
187
198
  addonsValueRef.current = addonsList;
188
199
  var other = {};
@@ -197,11 +208,13 @@ var VoucherCard = function VoucherCard(props) {
197
208
  value: serviceList
198
209
  }, other)
199
210
  });
200
- dispatch({
201
- type: 'setAddons',
202
- payload: _objectSpread({
203
- value: addonsList
204
- }, other)
211
+ setTimeout(function () {
212
+ dispatch({
213
+ type: 'setAddons',
214
+ payload: _objectSpread({
215
+ value: addonsList
216
+ }, other)
217
+ });
205
218
  });
206
219
  });
207
220
 
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { FormState } from '../../../model';
2
3
  interface useClientFnParams {
3
4
  state: any;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  export declare const updateServiceDate: (services: any[], date: any, isTime: boolean) => any[];
3
4
  declare const DateCom: () => JSX.Element;
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  declare const Notes: () => JSX.Element | null;
2
3
  export default Notes;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  declare const Actions: ({ currentService }: {
3
4
  currentService: any;
@@ -432,6 +432,7 @@ var formatBundle = function formatBundle(bundle) {
432
432
  num: item === null || item === void 0 ? void 0 : item.num,
433
433
  price: item === null || item === void 0 ? void 0 : item.price,
434
434
  total: item === null || item === void 0 ? void 0 : item.price,
435
+ origin_total: item.original_total,
435
436
  price_type: item === null || item === void 0 ? void 0 : item.price_type,
436
437
  bundle_sum_price: item === null || item === void 0 ? void 0 : item.bundle_sum_price,
437
438
  bundle_sum_type: item === null || item === void 0 ? void 0 : item.bundle_sum_type,
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import '../../../info/service/actions/index.less';
2
3
  declare const Actions: ({ currentService }: {
3
4
  currentService: any;
@@ -30,7 +30,7 @@ import useEngineContext from "../../../../../hooks/useEngineContext";
30
30
  import { getProductDetail } from "../../../info/service/serve";
31
31
  import { getIsBundleOrCombination } from "../../../info/utils";
32
32
  import { getProductExtend } from "./utils";
33
- import { formatProductListByCategory, getIsEject, getIsOnlySession, getProductTotalPrice, isSessionProduct, request } from "../../../utils";
33
+ import { formatProductListByCategory, getIsEject, getIsOnlySession, getMainPrice, getProductTotalPrice, isSessionProduct, request } from "../../../utils";
34
34
  import { locales, getUniqueId } from '@pisell/utils';
35
35
  import { useUpdateEffect } from 'ahooks';
36
36
  import { isNormalProductByDurationSchedule } from "../../../info/service2/utils";
@@ -296,13 +296,12 @@ var Info = function Info(props) {
296
296
  _extend: {
297
297
  start_date: state.date.value,
298
298
  quantity: (e === null || e === void 0 ? void 0 : e.quantity) || 1,
299
- price: _detail.price,
300
299
  product_name: item.title,
301
300
  other: other
302
301
  },
303
302
  new: 1
304
303
  });
305
- console.log(cacheItem, 'cacheItem', e);
304
+ cacheItem._extend.price = getMainPrice(_detail, _detail.price);
306
305
  var _total = getProductTotalPrice(cacheItem);
307
306
  // 用于折扣 可修改
308
307
  cacheItem._extend.total = _total;
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  declare const ContactInfoMode: () => JSX.Element;
2
3
  export default ContactInfoMode;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { SelectProps } from 'antd';
2
3
  interface DurationProps extends SelectProps {
3
4
  locale?: string;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  export interface InfoProps {
3
4
  isEdit: boolean;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  export interface InfoProps {
3
4
  title?: string;
@@ -153,6 +153,7 @@ export declare const getIsOnlySession: (item: any) => boolean;
153
153
  * @Date: 2024-01-26 14:09
154
154
  */
155
155
  export declare const getServerItemExtend: (state: any, cacheItem: any, timeObj: any) => any;
156
+ export declare const getMainPrice: (item: any, price?: number) => number;
156
157
  export declare const getProductTotalPrice: (item: any) => number;
157
158
  /**
158
159
  * @title: 判断 duration