@pisell/private-materials 3.4.61 → 3.4.62

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 (282) 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/index.js +1 -1
  5. package/build/lowcode/meta.js +1 -1
  6. package/build/lowcode/preview.js +7 -7
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +10 -10
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +10 -10
  11. package/es/components/Sales/Summary/utils.d.ts +1 -1
  12. package/es/components/appointmentBooking/components/Voucher/index.js +16 -1
  13. package/es/components/booking/addons/model.d.ts +1 -10
  14. package/es/components/booking/components/footer/utils.js +36 -37
  15. package/es/components/booking/components/voucher/index.js +39 -14
  16. package/es/components/booking/forms/model.d.ts +1 -10
  17. package/es/components/booking/info/model.d.ts +1 -10
  18. package/es/components/booking/info/service/addService/utils.d.ts +1 -1
  19. package/es/components/booking/info/service2/utils.js +2 -1
  20. package/es/components/booking/info2/service/addService/utils.d.ts +1 -1
  21. package/es/components/booking/model.d.ts +1 -9
  22. package/es/components/booking/notes/model.d.ts +1 -10
  23. package/es/components/booking/payments/model.d.ts +1 -10
  24. package/es/components/eftposPay/amount.d.ts +1 -1
  25. package/es/components/eftposPay/device.d.ts +1 -1
  26. package/es/components/eftposPay/store/index.d.ts +1 -1
  27. package/es/components/pay/toC/PaymentList/index.d.ts +1 -1
  28. package/es/components/pay/toC/PaymentList/index.js +54 -5
  29. package/es/components/pay/toC/PaymentList/index.less +58 -1
  30. package/es/components/pay/toC/PaymentList/payment/credit_card.png +0 -0
  31. package/es/components/pay/toC/PaymentList/payment/visa.png +0 -0
  32. package/es/components/pay/toC/PaymentList/serve.d.ts +1 -1
  33. package/es/components/pay/toC/PaymentList/serve.js +8 -0
  34. package/es/components/pay/toC/PaymentList/utils.d.ts +26 -0
  35. package/es/components/pay/toC/PaymentList/utils.js +187 -6
  36. package/es/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +127 -36
  37. package/es/components/pay/toC/index.js +2 -1
  38. package/es/components/pay/toC/locales.d.ts +6 -0
  39. package/es/components/pay/toC/locales.js +9 -3
  40. package/es/components/pay/toC/model.d.ts +1 -9
  41. package/es/components/schedules/model.d.ts +1 -9
  42. package/es/components/ticketBooking/components/addServiceVariant/addService.js +2 -1
  43. package/es/components/walletList/index.js +180 -41
  44. package/es/components/walletList/locales.d.ts +9 -0
  45. package/es/components/walletList/locales.js +12 -3
  46. package/es/components/walletList/serve.d.ts +19 -0
  47. package/es/components/walletList/serve.js +94 -5
  48. package/es/components/walletList/tempHolderSelector/index.d.ts +14 -0
  49. package/es/components/walletList/tempHolderSelector/index.js +196 -0
  50. package/es/components/walletList/tempHolderSelector/index.less +63 -0
  51. package/es/index.d.ts +2 -1
  52. package/es/index.js +2 -1
  53. package/es/plus/productSelect/index.js +5 -1
  54. package/es/plus/selectHolder/components/ErrorTip/index.d.ts +3 -0
  55. package/es/plus/selectHolder/components/ErrorTip/index.js +14 -0
  56. package/es/plus/selectHolder/components/ErrorTip/index.less +51 -0
  57. package/es/plus/selectHolder/components/HolderItem/index.d.ts +6 -0
  58. package/es/plus/selectHolder/components/HolderItem/index.js +77 -0
  59. package/es/plus/selectHolder/components/HolderItem/index.less +105 -0
  60. package/es/plus/selectHolder/components/HolderList/index.d.ts +30 -0
  61. package/es/plus/selectHolder/components/HolderList/index.js +43 -0
  62. package/es/plus/selectHolder/index.d.ts +7 -0
  63. package/es/plus/selectHolder/index.js +236 -0
  64. package/es/plus/selectHolder/index.less +117 -0
  65. package/es/plus/selectHolder/locales.d.ts +21 -0
  66. package/es/plus/selectHolder/locales.js +20 -0
  67. package/es/plus/selectHolder/types.d.ts +104 -0
  68. package/es/plus/selectHolder/types.js +1 -0
  69. package/es/plus/selectHolder/utils.d.ts +9 -0
  70. package/es/plus/selectHolder/utils.js +16 -0
  71. package/es/plus/walletEditor/WalletEditor.js +60 -2
  72. package/es/plus/walletEditor/locales.d.ts +9 -0
  73. package/es/plus/walletEditor/locales.js +12 -3
  74. package/es/plus/walletPassGallery/components/passList/index.d.ts +1 -0
  75. package/es/plus/walletPassGallery/components/passList/index.js +17 -5
  76. package/es/plus/walletPassGallery/index.js +223 -41
  77. package/es/plus/walletPassGallery/index.less +1 -1
  78. package/es/plus/walletPassGallery/locales.d.ts +15 -0
  79. package/es/plus/walletPassGallery/locales.js +29 -5
  80. package/es/plus/walletPassGallery/serve.d.ts +15 -1
  81. package/es/plus/walletPassGallery/serve.js +59 -2
  82. package/es/plus/walletPassGallery/utils.d.ts +48 -0
  83. package/es/plus/walletPassGallery/utils.js +342 -0
  84. package/es/pro/Selector/Selector.d.ts +1 -1
  85. package/lib/components/Sales/Summary/utils.d.ts +1 -1
  86. package/lib/components/appointmentBooking/components/Voucher/index.js +21 -1
  87. package/lib/components/booking/addons/model.d.ts +1 -10
  88. package/lib/components/booking/components/footer/utils.js +6 -8
  89. package/lib/components/booking/components/voucher/index.js +37 -7
  90. package/lib/components/booking/forms/model.d.ts +1 -10
  91. package/lib/components/booking/info/model.d.ts +1 -10
  92. package/lib/components/booking/info/service/addService/utils.d.ts +1 -1
  93. package/lib/components/booking/info/service2/utils.js +2 -1
  94. package/lib/components/booking/info2/service/addService/utils.d.ts +1 -1
  95. package/lib/components/booking/model.d.ts +1 -9
  96. package/lib/components/booking/notes/model.d.ts +1 -10
  97. package/lib/components/booking/payments/model.d.ts +1 -10
  98. package/lib/components/eftposPay/amount.d.ts +1 -1
  99. package/lib/components/eftposPay/device.d.ts +1 -1
  100. package/lib/components/eftposPay/store/index.d.ts +1 -1
  101. package/lib/components/pay/toC/PaymentList/index.d.ts +1 -1
  102. package/lib/components/pay/toC/PaymentList/index.js +36 -5
  103. package/lib/components/pay/toC/PaymentList/index.less +58 -1
  104. package/lib/components/pay/toC/PaymentList/payment/credit_card.png +0 -0
  105. package/lib/components/pay/toC/PaymentList/payment/visa.png +0 -0
  106. package/lib/components/pay/toC/PaymentList/serve.d.ts +1 -1
  107. package/lib/components/pay/toC/PaymentList/serve.js +6 -1
  108. package/lib/components/pay/toC/PaymentList/utils.d.ts +26 -0
  109. package/lib/components/pay/toC/PaymentList/utils.js +155 -7
  110. package/lib/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +85 -1
  111. package/lib/components/pay/toC/index.js +2 -1
  112. package/lib/components/pay/toC/locales.d.ts +6 -0
  113. package/lib/components/pay/toC/locales.js +9 -3
  114. package/lib/components/pay/toC/model.d.ts +1 -9
  115. package/lib/components/schedules/model.d.ts +1 -9
  116. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +2 -1
  117. package/lib/components/walletList/index.js +105 -5
  118. package/lib/components/walletList/locales.d.ts +9 -0
  119. package/lib/components/walletList/locales.js +12 -3
  120. package/lib/components/walletList/serve.d.ts +19 -0
  121. package/lib/components/walletList/serve.js +26 -3
  122. package/lib/components/walletList/tempHolderSelector/index.d.ts +14 -0
  123. package/lib/components/walletList/tempHolderSelector/index.js +166 -0
  124. package/lib/components/walletList/tempHolderSelector/index.less +63 -0
  125. package/lib/index.d.ts +2 -1
  126. package/lib/index.js +6 -3
  127. package/lib/plus/productSelect/index.js +4 -1
  128. package/lib/plus/selectHolder/components/ErrorTip/index.d.ts +3 -0
  129. package/lib/{components/wallet/PointCard/model.js → plus/selectHolder/components/ErrorTip/index.js} +10 -23
  130. package/lib/plus/selectHolder/components/ErrorTip/index.less +51 -0
  131. package/lib/plus/selectHolder/components/HolderItem/index.d.ts +6 -0
  132. package/lib/plus/selectHolder/components/HolderItem/index.js +101 -0
  133. package/lib/plus/selectHolder/components/HolderItem/index.less +105 -0
  134. package/lib/plus/selectHolder/components/HolderList/index.d.ts +30 -0
  135. package/lib/{components/wallet/components/WalletBar → plus/selectHolder/components/HolderList}/index.js +29 -15
  136. package/lib/plus/selectHolder/index.d.ts +7 -0
  137. package/lib/plus/selectHolder/index.js +202 -0
  138. package/lib/plus/selectHolder/index.less +117 -0
  139. package/lib/plus/selectHolder/locales.d.ts +21 -0
  140. package/lib/{components/wallet/Voucher → plus/selectHolder}/locales.js +15 -15
  141. package/lib/plus/selectHolder/types.d.ts +104 -0
  142. package/lib/plus/selectHolder/types.js +17 -0
  143. package/lib/plus/selectHolder/utils.d.ts +9 -0
  144. package/lib/{components/wallet/RechargeableCard/serve.js → plus/selectHolder/utils.js} +11 -10
  145. package/lib/plus/walletEditor/WalletEditor.js +53 -0
  146. package/lib/plus/walletEditor/locales.d.ts +9 -0
  147. package/lib/plus/walletEditor/locales.js +12 -3
  148. package/lib/plus/walletPassGallery/components/passList/index.d.ts +1 -0
  149. package/lib/plus/walletPassGallery/components/passList/index.js +16 -4
  150. package/lib/plus/walletPassGallery/index.js +154 -27
  151. package/lib/plus/walletPassGallery/index.less +1 -1
  152. package/lib/plus/walletPassGallery/locales.d.ts +15 -0
  153. package/lib/plus/walletPassGallery/locales.js +32 -5
  154. package/lib/plus/walletPassGallery/serve.d.ts +15 -1
  155. package/lib/plus/walletPassGallery/serve.js +17 -5
  156. package/lib/plus/walletPassGallery/utils.d.ts +48 -0
  157. package/lib/plus/walletPassGallery/utils.js +287 -0
  158. package/lib/pro/Selector/Selector.d.ts +1 -1
  159. package/lowcode/event-select-holder/meta.ts +2 -2
  160. package/lowcode/select-holder/meta.ts +220 -0
  161. package/lowcode/select-holder/snippets.ts +41 -0
  162. package/package.json +4 -4
  163. package/es/components/wallet/Detail/index.d.ts +0 -42
  164. package/es/components/wallet/Detail/index.js +0 -1182
  165. package/es/components/wallet/Detail/index.less +0 -386
  166. package/es/components/wallet/Detail/locales.d.ts +0 -153
  167. package/es/components/wallet/Detail/locales.js +0 -170
  168. package/es/components/wallet/Detail/model.d.ts +0 -13
  169. package/es/components/wallet/Detail/model.js +0 -22
  170. package/es/components/wallet/Detail/serve.d.ts +0 -39
  171. package/es/components/wallet/Detail/serve.js +0 -64
  172. package/es/components/wallet/DetailContext.d.ts +0 -25
  173. package/es/components/wallet/DetailContext.js +0 -162
  174. package/es/components/wallet/DiscountCard/index.d.ts +0 -3
  175. package/es/components/wallet/DiscountCard/index.js +0 -218
  176. package/es/components/wallet/DiscountCard/index.less +0 -9
  177. package/es/components/wallet/DiscountCard/model.d.ts +0 -14
  178. package/es/components/wallet/DiscountCard/model.js +0 -22
  179. package/es/components/wallet/PointCard/index.d.ts +0 -3
  180. package/es/components/wallet/PointCard/index.js +0 -169
  181. package/es/components/wallet/PointCard/index.less +0 -9
  182. package/es/components/wallet/PointCard/model.d.ts +0 -13
  183. package/es/components/wallet/PointCard/model.js +0 -22
  184. package/es/components/wallet/RechargeableCard/index.d.ts +0 -13
  185. package/es/components/wallet/RechargeableCard/index.js +0 -463
  186. package/es/components/wallet/RechargeableCard/index.less +0 -108
  187. package/es/components/wallet/RechargeableCard/model.d.ts +0 -29
  188. package/es/components/wallet/RechargeableCard/model.js +0 -28
  189. package/es/components/wallet/RechargeableCard/serve.d.ts +0 -23
  190. package/es/components/wallet/RechargeableCard/serve.js +0 -32
  191. package/es/components/wallet/Voucher/index.d.ts +0 -12
  192. package/es/components/wallet/Voucher/index.js +0 -131
  193. package/es/components/wallet/Voucher/index.less +0 -9
  194. package/es/components/wallet/Voucher/locales.d.ts +0 -21
  195. package/es/components/wallet/Voucher/locales.js +0 -20
  196. package/es/components/wallet/Voucher/model.d.ts +0 -13
  197. package/es/components/wallet/Voucher/model.js +0 -22
  198. package/es/components/wallet/carouselArrow.png +0 -0
  199. package/es/components/wallet/components/FooterButtons/index.d.ts +0 -18
  200. package/es/components/wallet/components/FooterButtons/index.js +0 -81
  201. package/es/components/wallet/components/FooterButtons/index.less +0 -91
  202. package/es/components/wallet/components/UsageRules/index.d.ts +0 -23
  203. package/es/components/wallet/components/UsageRules/index.js +0 -147
  204. package/es/components/wallet/components/UsageRules/index.less +0 -157
  205. package/es/components/wallet/components/WalletBar/index.d.ts +0 -8
  206. package/es/components/wallet/components/WalletBar/index.js +0 -19
  207. package/es/components/wallet/components/WalletBar/index.less +0 -36
  208. package/es/components/wallet/components/WalletCard.d.ts +0 -11
  209. package/es/components/wallet/components/WalletCard.js +0 -91
  210. package/es/components/wallet/components/index.d.ts +0 -3
  211. package/es/components/wallet/components/index.js +0 -4
  212. package/es/components/wallet/hooks/useWalletCard.d.ts +0 -33
  213. package/es/components/wallet/hooks/useWalletCard.js +0 -147
  214. package/es/components/wallet/index.d.ts +0 -10
  215. package/es/components/wallet/index.js +0 -807
  216. package/es/components/wallet/index.less +0 -151
  217. package/es/components/wallet/locales.d.ts +0 -132
  218. package/es/components/wallet/locales.js +0 -139
  219. package/es/components/wallet/model.d.ts +0 -37
  220. package/es/components/wallet/model.js +0 -86
  221. package/es/components/wallet/serve.d.ts +0 -150
  222. package/es/components/wallet/serve.js +0 -205
  223. package/es/components/wallet/utils/formatUtils.d.ts +0 -36
  224. package/es/components/wallet/utils/formatUtils.js +0 -73
  225. package/lib/components/wallet/Detail/index.d.ts +0 -42
  226. package/lib/components/wallet/Detail/index.js +0 -874
  227. package/lib/components/wallet/Detail/index.less +0 -386
  228. package/lib/components/wallet/Detail/locales.d.ts +0 -153
  229. package/lib/components/wallet/Detail/locales.js +0 -194
  230. package/lib/components/wallet/Detail/model.d.ts +0 -13
  231. package/lib/components/wallet/Detail/model.js +0 -43
  232. package/lib/components/wallet/Detail/serve.d.ts +0 -39
  233. package/lib/components/wallet/Detail/serve.js +0 -44
  234. package/lib/components/wallet/DetailContext.d.ts +0 -25
  235. package/lib/components/wallet/DetailContext.js +0 -118
  236. package/lib/components/wallet/DiscountCard/index.d.ts +0 -3
  237. package/lib/components/wallet/DiscountCard/index.js +0 -209
  238. package/lib/components/wallet/DiscountCard/index.less +0 -9
  239. package/lib/components/wallet/DiscountCard/model.d.ts +0 -14
  240. package/lib/components/wallet/DiscountCard/model.js +0 -43
  241. package/lib/components/wallet/PointCard/index.d.ts +0 -3
  242. package/lib/components/wallet/PointCard/index.js +0 -190
  243. package/lib/components/wallet/PointCard/index.less +0 -9
  244. package/lib/components/wallet/PointCard/model.d.ts +0 -13
  245. package/lib/components/wallet/RechargeableCard/index.d.ts +0 -13
  246. package/lib/components/wallet/RechargeableCard/index.js +0 -380
  247. package/lib/components/wallet/RechargeableCard/index.less +0 -108
  248. package/lib/components/wallet/RechargeableCard/model.d.ts +0 -29
  249. package/lib/components/wallet/RechargeableCard/model.js +0 -49
  250. package/lib/components/wallet/RechargeableCard/serve.d.ts +0 -23
  251. package/lib/components/wallet/Voucher/index.d.ts +0 -12
  252. package/lib/components/wallet/Voucher/index.js +0 -146
  253. package/lib/components/wallet/Voucher/index.less +0 -9
  254. package/lib/components/wallet/Voucher/locales.d.ts +0 -21
  255. package/lib/components/wallet/Voucher/model.d.ts +0 -13
  256. package/lib/components/wallet/Voucher/model.js +0 -43
  257. package/lib/components/wallet/carouselArrow.png +0 -0
  258. package/lib/components/wallet/components/FooterButtons/index.d.ts +0 -18
  259. package/lib/components/wallet/components/FooterButtons/index.js +0 -109
  260. package/lib/components/wallet/components/FooterButtons/index.less +0 -91
  261. package/lib/components/wallet/components/UsageRules/index.d.ts +0 -23
  262. package/lib/components/wallet/components/UsageRules/index.js +0 -113
  263. package/lib/components/wallet/components/UsageRules/index.less +0 -157
  264. package/lib/components/wallet/components/WalletBar/index.d.ts +0 -8
  265. package/lib/components/wallet/components/WalletBar/index.less +0 -36
  266. package/lib/components/wallet/components/WalletCard.d.ts +0 -11
  267. package/lib/components/wallet/components/WalletCard.js +0 -97
  268. package/lib/components/wallet/components/index.d.ts +0 -3
  269. package/lib/components/wallet/components/index.js +0 -45
  270. package/lib/components/wallet/hooks/useWalletCard.d.ts +0 -33
  271. package/lib/components/wallet/hooks/useWalletCard.js +0 -111
  272. package/lib/components/wallet/index.d.ts +0 -10
  273. package/lib/components/wallet/index.js +0 -580
  274. package/lib/components/wallet/index.less +0 -151
  275. package/lib/components/wallet/locales.d.ts +0 -132
  276. package/lib/components/wallet/locales.js +0 -163
  277. package/lib/components/wallet/model.d.ts +0 -37
  278. package/lib/components/wallet/model.js +0 -91
  279. package/lib/components/wallet/serve.d.ts +0 -150
  280. package/lib/components/wallet/serve.js +0 -85
  281. package/lib/components/wallet/utils/formatUtils.d.ts +0 -36
  282. package/lib/components/wallet/utils/formatUtils.js +0 -73
@@ -10,7 +10,7 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
10
10
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
11
11
  import React, { useState, useMemo, useImperativeHandle, forwardRef } from 'react';
12
12
  import { filterPaymentList, getPaymentList } from "./serve";
13
- import { PisellCheckboxGroup, PisellRow, PisellTooltip, Iconfont, PisellEmpty } from '@pisell/materials';
13
+ import { PisellCheckboxGroup, PisellRow, PisellTooltip, Iconfont, PisellEmpty, Image } from '@pisell/materials';
14
14
  import { calculateSurcharge } from "./utils";
15
15
  import classNames from 'classnames';
16
16
  import useEngineContext from "../../../../hooks/useEngineContext";
@@ -154,14 +154,14 @@ var PaymentList = function PaymentList(props, ref) {
154
154
  * @Author: zhiwei.Wang
155
155
  * @Date: 2024-08-16 10:53
156
156
  */
157
- var init = function init(list) {
157
+ var init = function init(list, amount) {
158
158
  var _context$appHelper2;
159
159
  // 打开loading
160
160
  setLoading(true);
161
161
  var platform = ((_context$appHelper2 = context.appHelper) === null || _context$appHelper2 === void 0 || (_context$appHelper2 = _context$appHelper2.constants) === null || _context$appHelper2 === void 0 ? void 0 : _context$appHelper2.platform) || 'h5';
162
162
 
163
163
  // 过滤数据
164
- var _filterPaymentList = filterPaymentList(list, platform, isApp),
164
+ var _filterPaymentList = filterPaymentList(list, platform, isApp, amount),
165
165
  paymentList = _filterPaymentList.paymentList,
166
166
  walletPass = _filterPaymentList.walletPass;
167
167
 
@@ -262,6 +262,43 @@ var PaymentList = function PaymentList(props, ref) {
262
262
  }));
263
263
  };
264
264
 
265
+ /**
266
+ * @description: 渲染信用卡手续费弹窗
267
+ * @param {any} _item
268
+ * @return {*}
269
+ */
270
+ var renderCreditCardToast = function renderCreditCardToast(_item) {
271
+ var _item$surcharge_confi;
272
+ return /*#__PURE__*/React.createElement("div", {
273
+ className: "surcharge-modal-wrap surcharge-modal-wrap-credit-card"
274
+ }, /*#__PURE__*/React.createElement("div", {
275
+ className: "surcharge-modal-lists"
276
+ }, _item === null || _item === void 0 || (_item$surcharge_confi = _item.surcharge_config_result) === null || _item$surcharge_confi === void 0 ? void 0 : _item$surcharge_confi.map(function (d) {
277
+ var _d$icons, _d$lists;
278
+ return /*#__PURE__*/React.createElement("div", {
279
+ key: d.name,
280
+ className: "surcharge-modal-list-item"
281
+ }, /*#__PURE__*/React.createElement("div", {
282
+ className: "surcharge-modal-list-item-header"
283
+ }, d === null || d === void 0 || (_d$icons = d.icons) === null || _d$icons === void 0 ? void 0 : _d$icons.map(function (icon) {
284
+ return /*#__PURE__*/React.createElement(Image, {
285
+ src: icon,
286
+ className: "header-icon",
287
+ isPreview: false
288
+ });
289
+ }), /*#__PURE__*/React.createElement("span", null, d.name)), /*#__PURE__*/React.createElement("div", {
290
+ className: "surcharge-modal-list-item-content"
291
+ }, d === null || d === void 0 || (_d$lists = d.lists) === null || _d$lists === void 0 ? void 0 : _d$lists.map(function (item) {
292
+ return /*#__PURE__*/React.createElement("div", {
293
+ key: item.name,
294
+ className: "content-item"
295
+ }, /*#__PURE__*/React.createElement("span", null, locales.getText(item.area_text)), /*#__PURE__*/React.createElement("span", {
296
+ className: "item-fee"
297
+ }, item.surcharge_fee), /*#__PURE__*/React.createElement("span", null, item.surcharge_text));
298
+ })));
299
+ })));
300
+ };
301
+
265
302
  /**
266
303
  * @title: 列表
267
304
  * @description:
@@ -293,9 +330,12 @@ var PaymentList = function PaymentList(props, ref) {
293
330
  onChange: paymentTypeChange,
294
331
  optionClassName: 'payment-item',
295
332
  renderOption: function renderOption(d, active) {
296
- var _d$params, _d$params2;
333
+ var _d$params, _d$surcharge_config_r, _d$params2;
297
334
  // 是否展示手续费icon
298
335
  var showIcon = d.surcharge && d.service !== 'pisell.other.cashmanual' && d.service !== 'pisell.custom_payment' || (d === null || d === void 0 || (_d$params = d.params) === null || _d$params === void 0 ? void 0 : _d$params.description) && (d.service === 'pisell.other.cashmanual' || d.service === 'pisell.custom_payment');
336
+
337
+ // 是否显示单独的信用卡手续费弹窗
338
+ var showCreditCardToast = (d === null || d === void 0 ? void 0 : d.service) === 'mw.credit_card' && (d === null || d === void 0 || (_d$surcharge_config_r = d.surcharge_config_result) === null || _d$surcharge_config_r === void 0 ? void 0 : _d$surcharge_config_r.length) > 0;
299
339
  return /*#__PURE__*/React.createElement(PisellRow, {
300
340
  platform: "h5",
301
341
  key: d.service,
@@ -316,9 +356,18 @@ var PaymentList = function PaymentList(props, ref) {
316
356
  }, d.title, ' '), /*#__PURE__*/React.createElement("div", {
317
357
  className: ""
318
358
  }, (d !== null && d !== void 0 && (_d$params2 = d.params) !== null && _d$params2 !== void 0 && _d$params2.description || d.surcharge) && d.service !== 'pisell.offline_payment' ? /*#__PURE__*/React.createElement(PisellTooltip, {
319
- title: renderToast(d),
359
+ title: showCreditCardToast ? renderCreditCardToast(d) : renderToast(d),
320
360
  onClick: function onClick(e) {
321
361
  e.stopPropagation();
362
+ },
363
+ overlayClassName: showCreditCardToast ? 'surcharge-tooltip-overlay-wrap' : '',
364
+ getPopupContainer: function getPopupContainer(triggerNode) {
365
+ if (showCreditCardToast) {
366
+ var _triggerNode$closest;
367
+ var modalContainer = triggerNode === null || triggerNode === void 0 || (_triggerNode$closest = triggerNode.closest) === null || _triggerNode$closest === void 0 ? void 0 : _triggerNode$closest.call(triggerNode, '.toc-pay-modal-content .pisell-lowcode-modal');
368
+ return modalContainer || document.body;
369
+ }
370
+ return document.body;
322
371
  }
323
372
  }, /*#__PURE__*/React.createElement("span", {
324
373
  className: classNames('surcharge-wrap', {
@@ -109,4 +109,61 @@
109
109
  font-style: normal;
110
110
  font-weight: 500;
111
111
  }
112
- }
112
+ }
113
+
114
+ .surcharge-tooltip-overlay-wrap{
115
+ max-width: 92% !important;
116
+ width: 92%;
117
+ left: 4% !important;
118
+ .pisell-lowcode-tooltip-inner{
119
+ background: #F2F4F7 !important;
120
+ }
121
+ }
122
+
123
+ .surcharge-modal-wrap-credit-card {
124
+ .surcharge-modal-lists {
125
+ display: flex;
126
+ flex-direction: column;
127
+ gap: 16px;
128
+ .surcharge-modal-list-item {
129
+ display: flex;
130
+ flex-direction: column;
131
+ gap: 8px;
132
+ .surcharge-modal-list-item-header {
133
+ display: flex;
134
+ align-items: center;
135
+ gap: 12px;
136
+ color: #101828;
137
+ font-size: 14px;
138
+ font-weight: 600;
139
+ line-height: 20px;
140
+ .header-icon{
141
+ width: 58px;
142
+ }
143
+ }
144
+ .surcharge-modal-list-item-content {
145
+ display: flex;
146
+ gap: 12px;
147
+ .content-item {
148
+ display: flex;
149
+ flex-direction: column;
150
+ flex: 1;
151
+ padding: 8px 12px;
152
+ border-radius: 8px;
153
+ box-shadow: 0px 2px 4px -2px rgba(16, 24, 40, 0.06);
154
+ background: white;
155
+ color: #475467;
156
+ font-size: 12px;
157
+ font-weight: 400;
158
+ line-height: 18px;
159
+ .item-fee {
160
+ color: black;
161
+ font-size: 24px;
162
+ font-weight: 700;
163
+ line-height: 32px;
164
+ }
165
+ }
166
+ }
167
+ }
168
+ }
169
+ }
@@ -20,7 +20,7 @@ export declare const getPaymentList: (values: any) => Promise<{
20
20
  * @Author: zhiwei.Wang
21
21
  * @Date: 2024-08-16 10:57
22
22
  */
23
- export declare const filterPaymentList: (list: any[], platform: string | undefined, isApp: boolean) => {
23
+ export declare const filterPaymentList: (list: any[], platform: string | undefined, isApp: boolean, amount?: number) => {
24
24
  message: string;
25
25
  status: string;
26
26
  paymentList: any[];
@@ -17,6 +17,7 @@ import { request } from "../../../../utils";
17
17
  import { paymentKeys } from "./status";
18
18
  import { isWx, isIOS } from '@pisell/utils';
19
19
  import { paymentTypes, isCustomPayment } from "./status";
20
+ import { formatCreditCardSurchargeList, formatCreditCardSurchargeText } from "./utils";
20
21
 
21
22
  /**
22
23
  * @title: 获取支付列表
@@ -72,6 +73,7 @@ var sortArr = ['mw.google', 'mw.apple', 'mw.credit_card', 'stripe', 'pisell.bank
72
73
  export var filterPaymentList = function filterPaymentList(list) {
73
74
  var platform = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'h5';
74
75
  var isApp = arguments.length > 2 ? arguments[2] : undefined;
76
+ var amount = arguments.length > 3 ? arguments[3] : undefined;
75
77
  var paymentList = _toConsumableArray(list);
76
78
  var _paymentKeys = _toConsumableArray(paymentKeys);
77
79
 
@@ -146,6 +148,12 @@ export var filterPaymentList = function filterPaymentList(list) {
146
148
  if (isCustomPayment(d.service)) {
147
149
  service = service + '|' + d.params.custom_payment_id;
148
150
  }
151
+
152
+ // visa/master手续费特殊处理
153
+ if (service === 'mw.credit_card') {
154
+ d.surcharge = formatCreditCardSurchargeText(d === null || d === void 0 ? void 0 : d.surcharge_config, d === null || d === void 0 ? void 0 : d.surcharge_text);
155
+ d.surcharge_config_result = formatCreditCardSurchargeList(d, amount !== null && amount !== void 0 ? amount : 0);
156
+ }
149
157
  return _objectSpread(_objectSpread({}, d), {}, {
150
158
  service: service,
151
159
  title: d.name,
@@ -1,3 +1,29 @@
1
+ /**
2
+ * @description: visa/master手续费是否一致
3
+ * @param {any} creditCardConfig
4
+ * @return {*}
5
+ */
6
+ export declare const isCreditCardSurchargeSame: (creditCardConfig: any[]) => boolean;
7
+ /**
8
+ * @description: 格式化visa/master手续费
9
+ * @param {any} item 支付列表项
10
+ * @param {number} amount 订单金额
11
+ * @param {boolean} isSame 手续费是否一致
12
+ * @return {*}
13
+ */
14
+ export declare const formatCreditCardSurcharge: (item: any, amount: number, isSame: boolean) => any;
15
+ /**
16
+ * @description: 格式化visa/master手续费列表
17
+ * @param {any} item
18
+ * @param {number} amount
19
+ * @return {*}
20
+ */
21
+ export declare const formatCreditCardSurchargeList: (item: any, amount: number) => any;
22
+ /**
23
+ * @description: 格式化visa/master手续费文案,只显示百分比区间
24
+ * @return {*}
25
+ */
26
+ export declare const formatCreditCardSurchargeText: (surcharge_config: any[], surcharge_text: string) => string;
1
27
  /**
2
28
  * @title: 计算支付列表的手续费
3
29
  * @description:
@@ -1,12 +1,191 @@
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); }
1
2
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
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."); }
3
4
  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); }
4
5
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
5
6
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
6
7
  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; }
8
+ 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; }
9
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
+ 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; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
+ 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); }
13
+ import visaIcon from "./payment/visa.png";
14
+ import creditCardIcon from "./payment/credit_card.png";
15
+
16
+ /**
17
+ * @description: visa/master手续费是否一致
18
+ * @param {any} creditCardConfig
19
+ * @return {*}
20
+ */
21
+ export var isCreditCardSurchargeSame = function isCreditCardSurchargeSame(creditCardConfig) {
22
+ try {
23
+ // 将配置项转换为map key为credit_card_type_area value为config对象
24
+ var configMap = {};
25
+ creditCardConfig.forEach(function (config) {
26
+ var key = "".concat((config === null || config === void 0 ? void 0 : config.credit_card_type) || '-', "_").concat((config === null || config === void 0 ? void 0 : config.area) || '-');
27
+ configMap[key] = config;
28
+ });
29
+
30
+ // 获取配置项
31
+ var visaDomestic = configMap['visa_domestic'];
32
+ var visaWorld = configMap['visa_world'];
33
+ var masterDomestic = configMap['master_domestic'];
34
+ var masterWorld = configMap['master_world'];
35
+ var formatFee = function formatFee(config) {
36
+ var _ref, _config$percent, _config$amount;
37
+ if (!config) return null;
38
+
39
+ // 后端字段不统一, 做下兼容
40
+ var percent = parseFloat((_ref = (_config$percent = config.percent) !== null && _config$percent !== void 0 ? _config$percent : config.percentage) !== null && _ref !== void 0 ? _ref : '0');
41
+ var amount = parseFloat((_config$amount = config.amount) !== null && _config$amount !== void 0 ? _config$amount : '0');
42
+ return {
43
+ percentStr: percent,
44
+ amountStr: amount
45
+ };
46
+ };
47
+ var visaDomesticFee = formatFee(visaDomestic);
48
+ var visaWorldFee = formatFee(visaWorld);
49
+ var masterDomesticFee = formatFee(masterDomestic);
50
+ var masterWorldFee = formatFee(masterWorld);
51
+
52
+ // 判断手续费是否一致的辅助函数
53
+ var isFeeSame = function isFeeSame(fee1, fee2) {
54
+ if (!fee1 || !fee2) return false;
55
+
56
+ // 判断百分比和固定金额是否一致
57
+ return fee1.percentStr === fee2.percentStr && fee1.amountStr === fee2.amountStr;
58
+ };
59
+
60
+ // 判断国内和国际手续费是否一致
61
+ var isDomesticSame = isFeeSame(visaDomesticFee, masterDomesticFee);
62
+ var isWorldSame = isFeeSame(visaWorldFee, masterWorldFee);
63
+ var isAllSame = isDomesticSame && isWorldSame;
64
+ return isAllSame;
65
+ } catch (error) {
66
+ return false;
67
+ }
68
+ };
69
+
70
+ /**
71
+ * @description: 计算手续费 百分比 * amount + 固定金额
72
+ * @param {any} config
73
+ * @param {number} amount
74
+ * @return {*}
75
+ */
76
+ var totalFee = function totalFee(config, amount) {
77
+ var _config$percent2;
78
+ // 后端字段不统一?, 做下兼容
79
+ var percentageFee = parseFloat((_config$percent2 = config.percent) !== null && _config$percent2 !== void 0 ? _config$percent2 : config.percentage) * Number(amount);
80
+ var totalFee = percentageFee + parseFloat(config.amount);
81
+ return totalFee;
82
+ };
83
+
84
+ /**
85
+ * @description: 格式化visa/master手续费
86
+ * @param {any} item 支付列表项
87
+ * @param {number} amount 订单金额
88
+ * @param {boolean} isSame 手续费是否一致
89
+ * @return {*}
90
+ */
91
+ export var formatCreditCardSurcharge = function formatCreditCardSurcharge(item, amount, isSame) {
92
+ try {
93
+ var surcharge_config = item.surcharge_config,
94
+ currency_symbol = item.currency_symbol;
95
+
96
+ // 格式化手续费列表
97
+ var formatSurchargeList = function formatSurchargeList(list) {
98
+ return list === null || list === void 0 ? void 0 : list.map(function (config) {
99
+ var _ref2, _config$percent3;
100
+ // 后端字段不统一, 做下兼容
101
+ var percentageFee = parseFloat((_ref2 = (_config$percent3 = config === null || config === void 0 ? void 0 : config.percent) !== null && _config$percent3 !== void 0 ? _config$percent3 : config === null || config === void 0 ? void 0 : config.percentage) !== null && _ref2 !== void 0 ? _ref2 : 0);
102
+ var percent = (percentageFee * 100).toFixed(2);
103
+ var amountFee = parseFloat(config === null || config === void 0 ? void 0 : config.amount).toFixed(2);
104
+ var _totalFee = totalFee(config, amount).toFixed(2);
105
+ var areaText = (config === null || config === void 0 ? void 0 : config.area) === 'world' ? 'tocPay.text.rest-of-world' : 'tocPay.text.domestic';
106
+ return _objectSpread(_objectSpread({}, config), {}, {
107
+ area_text: areaText,
108
+ surcharge_text: "".concat(percent, "% + ").concat(currency_symbol).concat(amountFee),
109
+ surcharge_fee: "".concat(currency_symbol).concat(_totalFee)
110
+ });
111
+ });
112
+ };
113
+ if (isSame) {
114
+ // 手续费一致 返回visa和master的其中一条手续费列表
115
+ var visaResult = surcharge_config.filter(function (config) {
116
+ return config.credit_card_type === 'visa';
117
+ });
118
+ return [{
119
+ icons: [visaIcon, creditCardIcon],
120
+ name: 'Visa / Mastercard',
121
+ lists: formatSurchargeList(visaResult)
122
+ }];
123
+ } else {
124
+ // 手续费不一致 分别返回visa和master的手续费列表
125
+ var _visaResult = surcharge_config.filter(function (config) {
126
+ return config.credit_card_type === 'visa';
127
+ });
128
+ var masterResult = surcharge_config.filter(function (config) {
129
+ return config.credit_card_type === 'master';
130
+ });
131
+ return [{
132
+ icons: [visaIcon],
133
+ name: 'Visa',
134
+ lists: formatSurchargeList(_visaResult)
135
+ }, {
136
+ icons: [creditCardIcon],
137
+ name: 'Mastercard',
138
+ lists: formatSurchargeList(masterResult)
139
+ }];
140
+ }
141
+ } catch (error) {
142
+ console.error(error);
143
+ return [];
144
+ }
145
+ };
146
+
147
+ /**
148
+ * @description: 格式化visa/master手续费列表
149
+ * @param {any} item
150
+ * @param {number} amount
151
+ * @return {*}
152
+ */
153
+ export var formatCreditCardSurchargeList = function formatCreditCardSurchargeList(item, amount) {
154
+ var isSame = isCreditCardSurchargeSame((item === null || item === void 0 ? void 0 : item.surcharge_config) || []);
155
+ return formatCreditCardSurcharge(item || {}, amount, isSame);
156
+ };
157
+
158
+ /**
159
+ * @description: 格式化visa/master手续费文案,只显示百分比区间
160
+ * @return {*}
161
+ */
162
+ export var formatCreditCardSurchargeText = function formatCreditCardSurchargeText(surcharge_config, surcharge_text) {
163
+ try {
164
+ if (!Array.isArray(surcharge_config) || surcharge_config.length === 0) {
165
+ return surcharge_text;
166
+ }
167
+
168
+ // 找出最小百分比和最大百分比
169
+ var percentList = surcharge_config.map(function (config) {
170
+ var _ref3, _config$percent4;
171
+ return parseFloat((_ref3 = (_config$percent4 = config.percent) !== null && _config$percent4 !== void 0 ? _config$percent4 : config.percentage) !== null && _ref3 !== void 0 ? _ref3 : '0') * 100;
172
+ });
173
+ var minPercent = Math.min.apply(Math, _toConsumableArray(percentList));
174
+ var maxPercent = Math.max.apply(Math, _toConsumableArray(percentList));
175
+
176
+ // 如果最大值和最小值相等,则直接使用其中一个
177
+ if (minPercent === maxPercent) {
178
+ return "".concat(surcharge_text).concat(minPercent, "%");
179
+ }
180
+ return "".concat(surcharge_text).concat(minPercent, "% ~ ").concat(maxPercent, "%");
181
+ } catch (error) {
182
+ return surcharge_text;
183
+ }
184
+ };
185
+
7
186
  /**
8
187
  * @title: 计算支付列表的手续费
9
- * @description:
188
+ * @description:
10
189
  * @param {any} paymentList
11
190
  * @param {number} amount
12
191
  * @return {*}
@@ -27,11 +206,7 @@ export var calculateSurcharge = function calculateSurcharge(paymentList, amount)
27
206
 
28
207
  // 分别计算出每一项的手续费 百分比 * amount + 固定金额
29
208
  var fees = surcharge_config.map(function (config) {
30
- var _config$percent;
31
- // 后端字段不统一?, 做下兼容
32
- var percentageFee = parseFloat((_config$percent = config.percent) !== null && _config$percent !== void 0 ? _config$percent : config.percentage) * Number(amount);
33
- var totalFee = percentageFee + parseFloat(config.amount);
34
- return totalFee;
209
+ return totalFee(config, amount);
35
210
  });
36
211
 
37
212
  // 取出最小值和最大值
@@ -48,6 +223,12 @@ export var calculateSurcharge = function calculateSurcharge(paymentList, amount)
48
223
  // 不一致展示区间
49
224
  payment.surcharge = "".concat(surcharge_text).concat(currency_symbol).concat(minFee.toFixed(2), " ~ ").concat(currency_symbol).concat(maxFee.toFixed(2));
50
225
  }
226
+
227
+ // visa/master手续费特殊处理
228
+ if (payment.service === 'mw.credit_card') {
229
+ payment.surcharge = formatCreditCardSurchargeText(surcharge_config, surcharge_text);
230
+ payment.surcharge_config_result = formatCreditCardSurchargeList(payment, amount);
231
+ }
51
232
  return payment;
52
233
  });
53
234
  };