@pisell/private-materials 6.5.2 → 6.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lowcode/assets-daily.json +11 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/index.js +1 -1
- package/build/lowcode/meta.js +1 -1
- package/build/lowcode/preview.js +150 -164
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +9 -9
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +9 -9
- package/es/businessModel/SalesModel/index.d.ts +1 -0
- package/es/components/appointmentBooking/components/Content/index.d.ts +1 -0
- package/es/components/appointmentBooking/components/Header/index.d.ts +1 -0
- package/es/components/appointmentBooking/components/Voucher/index.d.ts +1 -0
- package/es/components/appointmentBooking/deposit/index.d.ts +1 -0
- package/es/components/appointmentBooking/index.d.ts +1 -0
- package/es/components/booking/components/actionButtons/index.js +2 -2
- package/es/components/booking/components/customiseItemModal/index.js +2 -2
- package/es/components/booking/components/footer/index.d.ts +1 -0
- package/es/components/booking/components/footer/index.js +48 -42
- package/es/components/booking/components/voucher/index.d.ts +1 -0
- package/es/components/booking/components/voucher/index.js +18 -4
- package/es/components/booking/deposit/index.d.ts +1 -0
- package/es/components/booking/hooks/useQuotation.d.ts +1 -0
- package/es/components/booking/info/addServiceVariant/index.d.ts +1 -0
- package/es/components/booking/info/header/index.d.ts +1 -0
- package/es/components/booking/info/hooks/useInfoHolder.d.ts +1 -0
- package/es/components/booking/info/index.d.ts +1 -0
- package/es/components/booking/info/service/Lists.d.ts +1 -0
- package/es/components/booking/info/service/addService/index.d.ts +1 -0
- package/es/components/booking/info/service/addTimeModal/index.d.ts +1 -0
- package/es/components/booking/info/service/editService/BookingList/index.d.ts +1 -0
- package/es/components/booking/info/service/serviceItem/index.d.ts +1 -0
- package/es/components/booking/info/service/serviceList/index.d.ts +1 -0
- package/es/components/booking/info/service2/Lists.d.ts +1 -0
- package/es/components/booking/info/service2/utils.d.ts +1 -1
- package/es/components/booking/info2/cartClientCard/index.js +33 -20
- package/es/components/booking/info2/cartClientCard/utils.d.ts +2 -2
- package/es/components/booking/info2/service/addService/index.d.ts +1 -0
- package/es/components/booking/info2/service/serviceItem/index.d.ts +1 -0
- package/es/components/booking/info2/service/serviceList/index.d.ts +1 -0
- package/es/components/booking/notes/NoteBlock/index.d.ts +1 -0
- package/es/components/booking/notes/addNote/index.d.ts +1 -0
- package/es/components/booking/utils.d.ts +2 -2
- package/es/components/checkout/PaymentModal.js +719 -432
- package/es/components/checkout/PaymentPlugin.d.ts +1 -0
- package/es/components/checkout/components/AdditionalModule/index.d.ts +1 -1
- package/es/components/checkout/components/AdditionalModule/index.js +80 -49
- package/es/components/checkout/components/AdditionalModule/index.less +33 -34
- package/es/components/checkout/components/AdditionalModule/locales.d.ts +3 -0
- package/es/components/checkout/components/AdditionalModule/locales.js +7 -4
- package/es/components/checkout/components/AmountSummary/index.d.ts +2 -1
- package/es/components/checkout/components/AmountSummary/index.js +69 -31
- package/es/components/checkout/components/AmountSummary/index.less +27 -9
- package/es/components/checkout/components/CashPaymentModule/index.js +8 -1
- package/es/components/checkout/components/CashPaymentModule/index.less +0 -2
- package/es/components/checkout/components/PaymentDetailModal/index.js +55 -10
- package/es/components/checkout/components/PaymentOptionsModule/index.d.ts +2 -1
- package/es/components/checkout/components/PaymentOptionsModule/index.js +40 -25
- package/es/components/checkout/components/PaymentOptionsModule/index.less +11 -6
- package/es/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.d.ts +42 -9
- package/es/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.js +512 -82
- package/es/components/checkout/components/PaymentResultToast/index.d.ts +2 -1
- package/es/components/checkout/components/PaymentResultToast/index.js +90 -35
- package/es/components/checkout/components/PaymentResultToast/index.less +445 -77
- package/es/components/checkout/components/PaymentResultToast/types.d.ts +3 -3
- package/es/components/checkout/components/PaymentResultToast/utils.d.ts +26 -0
- package/es/components/checkout/components/PaymentResultToast/utils.js +81 -2
- package/es/components/checkout/components/SearchAndClientModule/index.d.ts +1 -0
- package/es/components/checkout/components/SearchAndClientModule/index.js +17 -16
- package/es/components/checkout/components/SearchAndClientModule/index.less +29 -8
- package/es/components/checkout/components/WalletPassModule/components/ConflictModal/index.d.ts +1 -0
- package/es/components/checkout/components/WalletPassModule/components/DiscountWallet/index.d.ts +1 -0
- package/es/components/checkout/components/WalletPassModule/components/WalletPassHeader/index.js +3 -1
- package/es/components/checkout/components/WalletPassModule/index.less +3 -3
- package/es/components/checkout/hooks/useWalletPass.d.ts +1 -1
- package/es/components/checkout/hooks/useWalletPass.js +1 -1
- package/es/components/checkout/index.d.ts +1 -1
- package/es/components/checkout/index.js +1 -1
- package/es/components/checkout/index.less +56 -38
- package/es/components/checkout/locales.d.ts +6 -0
- package/es/components/checkout/locales.js +9 -3
- package/es/components/checkout/payment-modal-utils.js +5 -5
- package/es/components/checkout/utils/PaymentResultToastUtils.d.ts +3 -3
- package/es/components/checkout/utils/PaymentResultToastUtils.js +111 -72
- package/es/components/eftpos/surcharge/index.d.ts +1 -0
- package/es/components/eftposPay/amount.d.ts +1 -1
- package/es/components/eftposPay/app.d.ts +1 -0
- package/es/components/eftposPay/device.d.ts +1 -1
- package/es/components/eftposPay/hooks.d.ts +2 -2
- package/es/components/eftposPay/index.d.ts +1 -0
- package/es/components/eftposPay/linkly/index.d.ts +1 -0
- package/es/components/eftposPay/store/index.d.ts +6 -6
- package/es/components/eventBooking/components/Provider/Cart/ContinueButton/index.d.ts +1 -0
- package/es/components/eventBooking/components/Provider/Cart/Item/Total.d.ts +1 -0
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/CallToBook/index.d.ts +1 -0
- package/es/components/eventBooking/components/scheduleCalendar/calendarItem.d.ts +1 -0
- package/es/components/eventBooking/index.d.ts +1 -0
- package/es/components/pay/toB/components/Cache/index.d.ts +1 -0
- package/es/components/pay/toB/components/Card/index.d.ts +1 -0
- package/es/components/pay/toB/components/CardGroup/index.d.ts +1 -0
- package/es/components/pay/toB/components/ConfirmedPayment/index.d.ts +1 -0
- package/es/components/pay/toB/components/Content/Footer.d.ts +1 -0
- package/es/components/pay/toB/components/Content/Header.d.ts +1 -0
- package/es/components/pay/toB/components/EFTPOS/index.js +91 -58
- package/es/components/pay/toC/PaymentMethods/MWCreditCard/TDSPay/ThreedsLoading/index.d.ts +1 -0
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/Finish/index.d.ts +1 -0
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/SDK.d.ts +1 -0
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/components/PageLoading/index.d.ts +1 -0
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/components/SetupForm/PaymentRequestForm.d.ts +1 -0
- package/es/components/pisellSelectCustomerModal/RightPanel/Add/PhoneField/index.d.ts +1 -0
- package/es/components/pisellSelectCustomerModal/RightPanel/index.d.ts +1 -0
- package/es/components/pisellSelectCustomerModal/index.d.ts +1 -0
- package/es/components/productExtension/index.d.ts +1 -0
- package/es/components/productSelect/components/TabProduct/index.d.ts +1 -0
- package/es/components/productSelect/components/productGroup/index.d.ts +1 -0
- package/es/components/ruleSetting/index.d.ts +1 -0
- package/es/components/schedules/components/ScheduleList/RenderScheduleItem/index.d.ts +1 -0
- package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/AddSchedules/index.d.ts +1 -0
- package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/index.d.ts +1 -0
- package/es/components/schedules/utils.d.ts +1 -1
- package/es/components/shoppingCart/components/Cart/Product.d.ts +1 -0
- package/es/components/taxSelect/index.d.ts +1 -0
- package/es/components/ticketBooking/components/addServiceVariant/addService.d.ts +1 -0
- package/es/components/ticketBooking/components/addServiceVariant/addService.js +4 -3
- package/es/components/ticketBooking/components/addServiceVariant/index.d.ts +1 -0
- package/es/components/ticketBooking/components/bookingDataPanel/index.js +1 -1
- package/es/components/ticketBooking/components/menuBar/index.d.ts +1 -0
- package/es/components/ticketBooking/components/menuBar/index.js +1 -1
- package/es/components/ticketBooking/components/ticketBooking/index.d.ts +1 -0
- package/es/components/ticketBooking/components/ticketBooking/index.js +2 -2
- package/es/components/ticketBooking/components/timeBar/index.d.ts +1 -0
- package/es/components/ticketBooking/hooks/pisellos/useScanCustomer.js +1 -1
- package/es/components/ticketBooking/hooks/pisellos/useScanGlobal.js +1 -1
- package/es/components/ticketBooking/hooks/pisellos/useScanGlobalHandle.js +4 -2
- package/es/components/ticketBooking/index.d.ts +1 -0
- package/es/components/workSpaceList/components/SearchWorkspaceAndBase/index.d.ts +1 -0
- package/es/plus/clientCard/index.js +3 -2
- package/es/plus/clientCard/index.less +3 -32
- package/es/plus/clientName/index.d.ts +1 -0
- package/es/plus/clinetSearch/Add/BirthdayField/index.d.ts +1 -0
- package/es/plus/clinetSearch/Add/GenderField/index.d.ts +1 -0
- package/es/plus/clinetSearch/Add/PhoneField/index.d.ts +1 -0
- package/es/plus/noteModal/AddTempModal.d.ts +1 -0
- package/es/plus/saasCreateOrganization/index.d.ts +1 -0
- package/es/pro/comprehensiveSearch/components/searchSection/index.js +9 -12
- package/es/pro/comprehensiveSearch/components/searchSection/index.less +22 -19
- package/es/pro/pisellPhoneKeyboard/index.d.ts +1 -0
- package/es/utils/index.d.ts +1 -1
- package/lib/businessModel/SalesModel/index.d.ts +1 -0
- package/lib/components/appointmentBooking/components/Content/index.d.ts +1 -0
- package/lib/components/appointmentBooking/components/Header/index.d.ts +1 -0
- package/lib/components/appointmentBooking/components/Voucher/index.d.ts +1 -0
- package/lib/components/appointmentBooking/deposit/index.d.ts +1 -0
- package/lib/components/appointmentBooking/index.d.ts +1 -0
- package/lib/components/booking/components/actionButtons/index.js +2 -1
- package/lib/components/booking/components/customiseItemModal/index.js +2 -2
- package/lib/components/booking/components/footer/index.d.ts +1 -0
- package/lib/components/booking/components/footer/index.js +3 -0
- package/lib/components/booking/components/voucher/index.d.ts +1 -0
- package/lib/components/booking/components/voucher/index.js +15 -3
- package/lib/components/booking/deposit/index.d.ts +1 -0
- package/lib/components/booking/hooks/useQuotation.d.ts +1 -0
- package/lib/components/booking/info/addServiceVariant/index.d.ts +1 -0
- package/lib/components/booking/info/header/index.d.ts +1 -0
- package/lib/components/booking/info/hooks/useInfoHolder.d.ts +1 -0
- package/lib/components/booking/info/index.d.ts +1 -0
- package/lib/components/booking/info/service/Lists.d.ts +1 -0
- package/lib/components/booking/info/service/addService/index.d.ts +1 -0
- package/lib/components/booking/info/service/addTimeModal/index.d.ts +1 -0
- package/lib/components/booking/info/service/editService/BookingList/index.d.ts +1 -0
- package/lib/components/booking/info/service/serviceItem/index.d.ts +1 -0
- package/lib/components/booking/info/service/serviceList/index.d.ts +1 -0
- package/lib/components/booking/info/service2/Lists.d.ts +1 -0
- package/lib/components/booking/info/service2/utils.d.ts +1 -1
- package/lib/components/booking/info2/cartClientCard/index.js +16 -5
- package/lib/components/booking/info2/cartClientCard/utils.d.ts +2 -2
- package/lib/components/booking/info2/service/addService/index.d.ts +1 -0
- package/lib/components/booking/info2/service/serviceItem/index.d.ts +1 -0
- package/lib/components/booking/info2/service/serviceList/index.d.ts +1 -0
- package/lib/components/booking/notes/NoteBlock/index.d.ts +1 -0
- package/lib/components/booking/notes/addNote/index.d.ts +1 -0
- package/lib/components/booking/utils.d.ts +2 -2
- package/lib/components/checkout/PaymentModal.js +241 -109
- package/lib/components/checkout/PaymentPlugin.d.ts +1 -0
- package/lib/components/checkout/components/AdditionalModule/index.d.ts +1 -1
- package/lib/components/checkout/components/AdditionalModule/index.js +98 -34
- package/lib/components/checkout/components/AdditionalModule/index.less +33 -34
- package/lib/components/checkout/components/AdditionalModule/locales.d.ts +3 -0
- package/lib/components/checkout/components/AdditionalModule/locales.js +7 -4
- package/lib/components/checkout/components/AmountSummary/index.d.ts +2 -1
- package/lib/components/checkout/components/AmountSummary/index.js +103 -47
- package/lib/components/checkout/components/AmountSummary/index.less +27 -9
- package/lib/components/checkout/components/CashPaymentModule/index.js +5 -1
- package/lib/components/checkout/components/CashPaymentModule/index.less +0 -2
- package/lib/components/checkout/components/PaymentDetailModal/index.js +56 -11
- package/lib/components/checkout/components/PaymentOptionsModule/index.d.ts +2 -1
- package/lib/components/checkout/components/PaymentOptionsModule/index.js +11 -8
- package/lib/components/checkout/components/PaymentOptionsModule/index.less +11 -6
- package/lib/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.d.ts +42 -9
- package/lib/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.js +279 -73
- package/lib/components/checkout/components/PaymentResultToast/index.d.ts +2 -1
- package/lib/components/checkout/components/PaymentResultToast/index.js +69 -22
- package/lib/components/checkout/components/PaymentResultToast/index.less +445 -77
- package/lib/components/checkout/components/PaymentResultToast/types.d.ts +3 -3
- package/lib/components/checkout/components/PaymentResultToast/utils.d.ts +26 -0
- package/lib/components/checkout/components/PaymentResultToast/utils.js +58 -4
- package/lib/components/checkout/components/SearchAndClientModule/index.d.ts +1 -0
- package/lib/components/checkout/components/SearchAndClientModule/index.js +17 -15
- package/lib/components/checkout/components/SearchAndClientModule/index.less +29 -8
- package/lib/components/checkout/components/WalletPassModule/components/ConflictModal/index.d.ts +1 -0
- package/lib/components/checkout/components/WalletPassModule/components/DiscountWallet/index.d.ts +1 -0
- package/lib/components/checkout/components/WalletPassModule/components/WalletPassHeader/index.js +12 -2
- package/lib/components/checkout/components/WalletPassModule/index.less +3 -3
- package/lib/components/checkout/hooks/useWalletPass.d.ts +1 -1
- package/lib/components/checkout/hooks/useWalletPass.js +2 -2
- package/lib/components/checkout/index.d.ts +1 -1
- package/lib/components/checkout/index.js +2 -0
- package/lib/components/checkout/index.less +56 -38
- package/lib/components/checkout/locales.d.ts +6 -0
- package/lib/components/checkout/locales.js +9 -3
- package/lib/components/checkout/payment-modal-utils.js +5 -5
- package/lib/components/checkout/utils/PaymentResultToastUtils.d.ts +3 -3
- package/lib/components/checkout/utils/PaymentResultToastUtils.js +26 -18
- package/lib/components/eftpos/surcharge/index.d.ts +1 -0
- package/lib/components/eftposPay/amount.d.ts +1 -1
- package/lib/components/eftposPay/app.d.ts +1 -0
- package/lib/components/eftposPay/device.d.ts +1 -1
- package/lib/components/eftposPay/hooks.d.ts +2 -2
- package/lib/components/eftposPay/index.d.ts +1 -0
- package/lib/components/eftposPay/linkly/index.d.ts +1 -0
- package/lib/components/eftposPay/store/index.d.ts +6 -6
- package/lib/components/eventBooking/components/Provider/Cart/ContinueButton/index.d.ts +1 -0
- package/lib/components/eventBooking/components/Provider/Cart/Item/Total.d.ts +1 -0
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/CallToBook/index.d.ts +1 -0
- package/lib/components/eventBooking/components/scheduleCalendar/calendarItem.d.ts +1 -0
- package/lib/components/eventBooking/index.d.ts +1 -0
- package/lib/components/pay/toB/components/Cache/index.d.ts +1 -0
- package/lib/components/pay/toB/components/Card/index.d.ts +1 -0
- package/lib/components/pay/toB/components/CardGroup/index.d.ts +1 -0
- package/lib/components/pay/toB/components/ConfirmedPayment/index.d.ts +1 -0
- package/lib/components/pay/toB/components/Content/Footer.d.ts +1 -0
- package/lib/components/pay/toB/components/Content/Header.d.ts +1 -0
- package/lib/components/pay/toB/components/EFTPOS/index.js +25 -10
- package/lib/components/pay/toC/PaymentMethods/MWCreditCard/TDSPay/ThreedsLoading/index.d.ts +1 -0
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/Finish/index.d.ts +1 -0
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/SDK.d.ts +1 -0
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/components/PageLoading/index.d.ts +1 -0
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/components/SetupForm/PaymentRequestForm.d.ts +1 -0
- package/lib/components/pisellSelectCustomerModal/RightPanel/Add/PhoneField/index.d.ts +1 -0
- package/lib/components/pisellSelectCustomerModal/RightPanel/index.d.ts +1 -0
- package/lib/components/pisellSelectCustomerModal/index.d.ts +1 -0
- package/lib/components/productExtension/index.d.ts +1 -0
- package/lib/components/productSelect/components/TabProduct/index.d.ts +1 -0
- package/lib/components/productSelect/components/productGroup/index.d.ts +1 -0
- package/lib/components/ruleSetting/index.d.ts +1 -0
- package/lib/components/schedules/components/ScheduleList/RenderScheduleItem/index.d.ts +1 -0
- package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/AddSchedules/index.d.ts +1 -0
- package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/SchedulesModule/index.d.ts +1 -0
- package/lib/components/schedules/utils.d.ts +1 -1
- package/lib/components/shoppingCart/components/Cart/Product.d.ts +1 -0
- package/lib/components/taxSelect/index.d.ts +1 -0
- package/lib/components/ticketBooking/components/addServiceVariant/addService.d.ts +1 -0
- package/lib/components/ticketBooking/components/addServiceVariant/addService.js +7 -6
- package/lib/components/ticketBooking/components/addServiceVariant/index.d.ts +1 -0
- package/lib/components/ticketBooking/components/bookingDataPanel/index.js +2 -2
- package/lib/components/ticketBooking/components/menuBar/index.d.ts +1 -0
- package/lib/components/ticketBooking/components/menuBar/index.js +1 -1
- package/lib/components/ticketBooking/components/ticketBooking/index.d.ts +1 -0
- package/lib/components/ticketBooking/components/ticketBooking/index.js +1 -1
- package/lib/components/ticketBooking/components/timeBar/index.d.ts +1 -0
- package/lib/components/ticketBooking/hooks/pisellos/useScanCustomer.js +2 -12
- package/lib/components/ticketBooking/hooks/pisellos/useScanGlobal.js +2 -12
- package/lib/components/ticketBooking/hooks/pisellos/useScanGlobalHandle.js +5 -13
- package/lib/components/ticketBooking/index.d.ts +1 -0
- package/lib/components/workSpaceList/components/SearchWorkspaceAndBase/index.d.ts +1 -0
- package/lib/plus/clientCard/index.js +5 -4
- package/lib/plus/clientCard/index.less +3 -32
- package/lib/plus/clientName/index.d.ts +1 -0
- package/lib/plus/clinetSearch/Add/BirthdayField/index.d.ts +1 -0
- package/lib/plus/clinetSearch/Add/GenderField/index.d.ts +1 -0
- package/lib/plus/clinetSearch/Add/PhoneField/index.d.ts +1 -0
- package/lib/plus/noteModal/AddTempModal.d.ts +1 -0
- package/lib/plus/saasCreateOrganization/index.d.ts +1 -0
- package/lib/pro/comprehensiveSearch/components/searchSection/index.js +6 -18
- package/lib/pro/comprehensiveSearch/components/searchSection/index.less +22 -19
- package/lib/pro/pisellPhoneKeyboard/index.d.ts +1 -0
- package/lib/utils/index.d.ts +1 -1
- package/package.json +12 -12
@@ -80,6 +80,7 @@ function AmountSummary({
|
|
80
80
|
clientInfo,
|
81
81
|
onAmountChange,
|
82
82
|
onDepositStatusChange,
|
83
|
+
onBalanceDueAmountClick,
|
83
84
|
onConfirm,
|
84
85
|
paymentItems,
|
85
86
|
cartData,
|
@@ -173,7 +174,12 @@ function AmountSummary({
|
|
173
174
|
const roundingAmount = new import_decimal.default(item.rounding_amount);
|
174
175
|
if (roundingAmount.isNegative()) {
|
175
176
|
itemAmount = itemAmount.plus(roundingAmount.abs());
|
176
|
-
console.log(
|
177
|
+
console.log(
|
178
|
+
"添加抹零金额到已付:",
|
179
|
+
roundingAmount.abs().toNumber(),
|
180
|
+
"项目:",
|
181
|
+
item
|
182
|
+
);
|
177
183
|
}
|
178
184
|
}
|
179
185
|
return acc.plus(itemAmount);
|
@@ -204,14 +210,17 @@ function AmountSummary({
|
|
204
210
|
if (!(walletPassData == null ? void 0 : walletPassData.selectedWallet) || !Array.isArray(walletPassData.selectedWallet)) {
|
205
211
|
return 0;
|
206
212
|
}
|
207
|
-
const totalDecimal = walletPassData.selectedWallet.reduce(
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
213
|
+
const totalDecimal = walletPassData.selectedWallet.reduce(
|
214
|
+
(totalDecimal2, wallet) => {
|
215
|
+
try {
|
216
|
+
const redeemDecimal = new import_decimal.default(wallet.redeem || "0");
|
217
|
+
return totalDecimal2.plus(redeemDecimal);
|
218
|
+
} catch {
|
219
|
+
return totalDecimal2;
|
220
|
+
}
|
221
|
+
},
|
222
|
+
new import_decimal.default(0)
|
223
|
+
);
|
215
224
|
return totalDecimal.toNumber();
|
216
225
|
};
|
217
226
|
const getOrderDueAmount = () => {
|
@@ -254,7 +263,12 @@ function AmountSummary({
|
|
254
263
|
}
|
255
264
|
const limits = getKeyboardLimits();
|
256
265
|
if (numericValue === 0) {
|
257
|
-
Toast.fail(
|
266
|
+
Toast.fail(
|
267
|
+
getText(
|
268
|
+
"pisell2.amount-summary.amount-cannot-be-zero",
|
269
|
+
"The amount cannot be 0"
|
270
|
+
)
|
271
|
+
);
|
258
272
|
return;
|
259
273
|
}
|
260
274
|
if (!inputStr || numericValue <= 0) {
|
@@ -314,7 +328,12 @@ function AmountSummary({
|
|
314
328
|
const visibleItems = hasMoreItems2 ? summaryData.slice(0, maxVisibleItems) : summaryData;
|
315
329
|
return visibleItems.map((item) => {
|
316
330
|
const displayLabel = item.label || labelMaps[item.key] || item.key;
|
317
|
-
return /* @__PURE__ */ import_react2.default.createElement("div", { key: item.key, className: (0, import_classnames.default)("payment-detail-row") }, /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("payment-detail-label") }, displayLabel), /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("payment-detail-amount") }, (0, import_utils.
|
331
|
+
return /* @__PURE__ */ import_react2.default.createElement("div", { key: item.key, className: (0, import_classnames.default)("payment-detail-row") }, /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("payment-detail-label") }, displayLabel), /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("payment-detail-amount") }, (0, import_utils.formatAmountWithOptions)(item.value, amountSymbol, {
|
332
|
+
precision: 2,
|
333
|
+
hideDecimalForWholeNumbers: false,
|
334
|
+
useThousandsSeparator: true,
|
335
|
+
showCurrencySymbol: true
|
336
|
+
})));
|
318
337
|
});
|
319
338
|
};
|
320
339
|
const hasMoreItems = () => {
|
@@ -352,7 +371,16 @@ function AmountSummary({
|
|
352
371
|
const renderConfirmMode = () => {
|
353
372
|
let balanceAmountValue = parseFormattedAmount(getBalanceDueAmount());
|
354
373
|
let balanceDecimal = new import_decimal.default(balanceAmountValue);
|
355
|
-
const finalBalanceAmount = (0, import_utils.
|
374
|
+
const finalBalanceAmount = (0, import_utils.formatAmountWithOptions)(
|
375
|
+
balanceDecimal.toNumber(),
|
376
|
+
amountSymbol,
|
377
|
+
{
|
378
|
+
precision: 2,
|
379
|
+
hideDecimalForWholeNumbers: false,
|
380
|
+
useThousandsSeparator: true,
|
381
|
+
showCurrencySymbol: true
|
382
|
+
}
|
383
|
+
);
|
356
384
|
return /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("confirm-payment-container") }, /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("confirm-payment-content") }, /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("confirm-payment-text") }, getText("will.be.paid.in.full") || "Will be paid in full", " ", /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("amount-text") }, finalBalanceAmount), " ", getText("by.wallet") || "by Wallet"), /* @__PURE__ */ import_react2.default.createElement(
|
357
385
|
import_antd.Button,
|
358
386
|
{
|
@@ -365,7 +393,12 @@ function AmountSummary({
|
|
365
393
|
};
|
366
394
|
const getMiddleContent = () => {
|
367
395
|
if (paymentType === "deposit") {
|
368
|
-
return /* @__PURE__ */ import_react2.default.createElement(import_react2.default.Fragment, null, /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("payment-details") }, shouldShowPartialPaidCard() && /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("partial-paid-card") }, /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-label") }, getText("partial.paid") || "Partial Paid"), /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-amount") }, (0, import_utils.
|
396
|
+
return /* @__PURE__ */ import_react2.default.createElement(import_react2.default.Fragment, null, /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("payment-details") }, shouldShowPartialPaidCard() && /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("partial-paid-card") }, /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-label") }, getText("partial.paid") || "Partial Paid"), /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-amount") }, (0, import_utils.formatAmountWithOptions)(partialPaidAmount, amountSymbol, {
|
397
|
+
precision: 2,
|
398
|
+
hideDecimalForWholeNumbers: false,
|
399
|
+
useThousandsSeparator: true,
|
400
|
+
showCurrencySymbol: true
|
401
|
+
}))), renderSummaryItems(), hasMoreItems() && /* @__PURE__ */ import_react2.default.createElement(
|
369
402
|
"div",
|
370
403
|
{
|
371
404
|
className: (0, import_classnames.default)("more-section"),
|
@@ -383,7 +416,12 @@ function AmountSummary({
|
|
383
416
|
)
|
384
417
|
)));
|
385
418
|
} else {
|
386
|
-
return /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("payment-details") }, shouldShowPartialPaidCard() && /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("partial-paid-card") }, /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-label") }, getText("partial.paid") || "Partial Paid"), /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-amount") }, (0, import_utils.
|
419
|
+
return /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("payment-details") }, shouldShowPartialPaidCard() && /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("partial-paid-card") }, /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-label") }, getText("partial.paid") || "Partial Paid"), /* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("partial-paid-amount") }, (0, import_utils.formatAmountWithOptions)(partialPaidAmount, amountSymbol, {
|
420
|
+
precision: 2,
|
421
|
+
hideDecimalForWholeNumbers: false,
|
422
|
+
useThousandsSeparator: true,
|
423
|
+
showCurrencySymbol: true
|
424
|
+
}))), renderSummaryItems(), hasMoreItems() && /* @__PURE__ */ import_react2.default.createElement(
|
387
425
|
"div",
|
388
426
|
{
|
389
427
|
className: (0, import_classnames.default)("more-section"),
|
@@ -437,50 +475,68 @@ function AmountSummary({
|
|
437
475
|
/* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("middle-section") }, getMiddleContent()),
|
438
476
|
/* @__PURE__ */ import_react2.default.createElement(
|
439
477
|
"div",
|
440
|
-
{ className: (0, import_classnames.default)("balance-due-card"
|
478
|
+
{ className: (0, import_classnames.default)("balance-due-card", {
|
479
|
+
"confirm-mode": shouldShowConfirmMode()
|
480
|
+
}) },
|
441
481
|
// 如果应该显示确认模式,直接返回确认界面
|
442
|
-
shouldShowConfirmMode() ? renderConfirmMode() : /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("balance-due-info") }, /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("balance-due-label") }, paymentType === "deposit" ? getText("deposit.due") || "Deposit Due" : getText("balance.due") || "Balance Due"), /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("balance-due-amount")
|
443
|
-
|
444
|
-
|
482
|
+
shouldShowConfirmMode() ? renderConfirmMode() : /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("balance-due-info") }, /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("balance-due-label") }, paymentType === "deposit" ? getText("deposit.due") || "Deposit Due" : getText("balance.due") || "Balance Due"), /* @__PURE__ */ import_react2.default.createElement("div", { className: (0, import_classnames.default)("balance-due-amount"), onClick: () => {
|
483
|
+
onBalanceDueAmountClick == null ? void 0 : onBalanceDueAmountClick("manual-discount");
|
484
|
+
} }, (0, import_utils.formatAmountWithOptions)(balanceDueAmount, amountSymbol, {
|
485
|
+
precision: 2,
|
486
|
+
hideDecimalForWholeNumbers: false,
|
487
|
+
useThousandsSeparator: true,
|
488
|
+
showCurrencySymbol: true
|
489
|
+
}), /* @__PURE__ */ import_react2.default.createElement(
|
490
|
+
import_icon.Edit05,
|
445
491
|
{
|
446
|
-
|
492
|
+
className: (0, import_classnames.default)("edit-icon"),
|
493
|
+
style: { color: "#7F56DA" }
|
494
|
+
}
|
495
|
+
))),
|
496
|
+
/* @__PURE__ */ import_react2.default.createElement(
|
497
|
+
"div",
|
498
|
+
{
|
499
|
+
className: (0, import_classnames.default)("pay-section"),
|
500
|
+
style: { cursor: "pointer" },
|
501
|
+
role: "button"
|
502
|
+
},
|
503
|
+
/* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("pay-text") }, getText("pay") || "支付"),
|
504
|
+
/* @__PURE__ */ import_react2.default.createElement("span", { className: (0, import_classnames.default)("pay-amount") }, (0, import_utils.formatAmountWithOptions)(
|
505
|
+
(() => {
|
447
506
|
try {
|
448
507
|
return new import_decimal.default(currentAmount || "0").toNumber();
|
449
508
|
} catch {
|
450
509
|
return 0;
|
451
510
|
}
|
452
511
|
})(),
|
453
|
-
|
454
|
-
showCurrencySymbol: true,
|
455
|
-
useThousandsSeparator: false,
|
456
|
-
selectType: "dark",
|
457
|
-
overlayClassName: "amount-summary-keyboard-popover"
|
458
|
-
},
|
459
|
-
/* @__PURE__ */ import_react2.default.createElement(
|
460
|
-
"div",
|
512
|
+
amountSymbol,
|
461
513
|
{
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
try {
|
469
|
-
return new import_decimal.default(currentAmount || "0").toNumber();
|
470
|
-
} catch {
|
471
|
-
return 0;
|
472
|
-
}
|
473
|
-
})(), 2, amountSymbol)),
|
474
|
-
/* @__PURE__ */ import_react2.default.createElement(
|
475
|
-
import_icon.Edit05,
|
476
|
-
{
|
477
|
-
className: (0, import_classnames.default)("edit-icon"),
|
478
|
-
style: { color: "#7F56DA" }
|
479
|
-
}
|
480
|
-
)
|
481
|
-
)
|
514
|
+
precision: 2,
|
515
|
+
hideDecimalForWholeNumbers: false,
|
516
|
+
useThousandsSeparator: true,
|
517
|
+
showCurrencySymbol: true
|
518
|
+
}
|
519
|
+
))
|
482
520
|
)
|
483
521
|
),
|
522
|
+
!shouldShowConfirmMode() && /* @__PURE__ */ import_react2.default.createElement(
|
523
|
+
import_pisellPriceKeyboardPopover.default,
|
524
|
+
{
|
525
|
+
value: (() => {
|
526
|
+
try {
|
527
|
+
return new import_decimal.default(currentAmount || "0").toNumber();
|
528
|
+
} catch {
|
529
|
+
return 0;
|
530
|
+
}
|
531
|
+
})(),
|
532
|
+
onConfirm: handleKeyboardConfirm,
|
533
|
+
showCurrencySymbol: true,
|
534
|
+
useThousandsSeparator: false,
|
535
|
+
selectType: "dark",
|
536
|
+
overlayClassName: "amount-summary-keyboard-popover"
|
537
|
+
},
|
538
|
+
/* @__PURE__ */ import_react2.default.createElement(import_antd.Button, { className: (0, import_classnames.default)("split-payment-button") }, getText("split.payment") || "拆分支付")
|
539
|
+
),
|
484
540
|
/* @__PURE__ */ import_react2.default.createElement(
|
485
541
|
import_materials.PisellModal,
|
486
542
|
{
|
@@ -226,13 +226,18 @@
|
|
226
226
|
border-radius: 16px;
|
227
227
|
padding: 0 16px 0 16px;
|
228
228
|
color: #1a1a1a;
|
229
|
-
width:
|
229
|
+
width: 350px;
|
230
230
|
min-width: 200px;
|
231
231
|
height: 80px;
|
232
232
|
display: flex;
|
233
233
|
align-items: center;
|
234
234
|
justify-content: space-between;
|
235
235
|
gap: 8px;
|
236
|
+
|
237
|
+
// 确认模式下的特殊样式
|
238
|
+
&.confirm-mode {
|
239
|
+
width: 420px;
|
240
|
+
}
|
236
241
|
}
|
237
242
|
|
238
243
|
.balance-due-info {
|
@@ -250,10 +255,12 @@
|
|
250
255
|
}
|
251
256
|
|
252
257
|
.balance-due-amount {
|
253
|
-
font-size:
|
258
|
+
font-size: 14px;
|
254
259
|
font-weight: 400;
|
255
260
|
color: #7f56da;
|
256
261
|
line-height: 0.75;
|
262
|
+
text-decoration: underline;
|
263
|
+
text-underline-offset: 4px;
|
257
264
|
}
|
258
265
|
|
259
266
|
.pay-section {
|
@@ -272,17 +279,16 @@
|
|
272
279
|
.pay-amount {
|
273
280
|
font-size: 32px;
|
274
281
|
font-weight: 400;
|
275
|
-
color: #
|
282
|
+
color: #1e1830;
|
276
283
|
line-height: 0.75;
|
277
|
-
text-decoration: underline;
|
278
|
-
text-underline-offset: 6px;
|
279
284
|
}
|
280
285
|
|
281
286
|
.edit-icon {
|
282
|
-
width:
|
283
|
-
height:
|
287
|
+
width: 20px;
|
288
|
+
height: 20px;
|
284
289
|
flex-shrink: 0;
|
285
|
-
font-size:
|
290
|
+
font-size: 20px;
|
291
|
+
margin-left: 8px;
|
286
292
|
}
|
287
293
|
|
288
294
|
/* 覆盖下拉菜单选项的hover和active状态 */
|
@@ -401,7 +407,7 @@
|
|
401
407
|
border: none !important;
|
402
408
|
border-radius: 12px !important;
|
403
409
|
height: 48px !important;
|
404
|
-
padding: 12px
|
410
|
+
padding: 12px 0 !important;
|
405
411
|
font-size: 16px !important;
|
406
412
|
font-weight: 600 !important;
|
407
413
|
color: white !important;
|
@@ -468,3 +474,15 @@
|
|
468
474
|
}
|
469
475
|
}
|
470
476
|
}
|
477
|
+
|
478
|
+
.split-payment-button {
|
479
|
+
padding: 0 8px;
|
480
|
+
background: #079455;
|
481
|
+
color: white;
|
482
|
+
font-size: 14px;
|
483
|
+
border: 1px solid #C3B2E7;
|
484
|
+
height: 80px;
|
485
|
+
white-space: pre-line; // 让换行符(\n)生效
|
486
|
+
text-align: left; // 确保文本居中对齐
|
487
|
+
min-width: 68px;
|
488
|
+
}
|
@@ -42,6 +42,7 @@ var import_useEngineContext = __toESM(require("../../../../hooks/useEngineContex
|
|
42
42
|
var import_utils = require("@pisell/utils");
|
43
43
|
var import_locales = __toESM(require("../../locales"));
|
44
44
|
var import_useToast = __toESM(require("../../../../hooks/useToast"));
|
45
|
+
var import_ahooks = require("ahooks");
|
45
46
|
function CashPaymentModule({
|
46
47
|
amountSymbol,
|
47
48
|
orderInfo,
|
@@ -83,7 +84,7 @@ function CashPaymentModule({
|
|
83
84
|
setAmount(amountStr);
|
84
85
|
setRoundingAmount(0);
|
85
86
|
};
|
86
|
-
const
|
87
|
+
const handleCashPayInternal = () => {
|
87
88
|
if (isAmountButtonsDisabled) return;
|
88
89
|
if (onPaymentComplete) {
|
89
90
|
if (Number(amount) === 0 && Math.abs(roundingAmount) === 0) {
|
@@ -100,6 +101,9 @@ function CashPaymentModule({
|
|
100
101
|
});
|
101
102
|
}
|
102
103
|
};
|
104
|
+
const { run: handleCashPay } = (0, import_ahooks.useDebounceFn)(handleCashPayInternal, {
|
105
|
+
wait: 1e3
|
106
|
+
});
|
103
107
|
const handleKeyboardConfirm = async (value) => {
|
104
108
|
if (isInputDisabled) {
|
105
109
|
setAmount("0.00");
|
@@ -108,7 +108,12 @@ function PaymentDetailModal({
|
|
108
108
|
if (!paymentItems || paymentItems.length === 0 || regularPayments.length === 0) {
|
109
109
|
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-content") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("no-payment-text") }, getText("no.payments.recorded") || "No payments recorded"));
|
110
110
|
}
|
111
|
-
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-content") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-record-container") }, regularPayments.map((item) => /* @__PURE__ */ import_react.default.createElement("div", { key: item.uuid, className: (0, import_classnames.default)("payment-item") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-content") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-text") }, item.name, " - ", (/* @__PURE__ */ new Date()).toLocaleDateString(), " ", getText("pisell2.checkout.payment-detail.by") || "by", " ", getCustomerInfo().nickname), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-actions") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-amount") }, "-", (0, import_utils.
|
111
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-content") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-record-container") }, regularPayments.map((item) => /* @__PURE__ */ import_react.default.createElement("div", { key: item.uuid, className: (0, import_classnames.default)("payment-item") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-content") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-text") }, item.name, " - ", (/* @__PURE__ */ new Date()).toLocaleDateString(), " ", getText("pisell2.checkout.payment-detail.by") || "by", " ", getCustomerInfo().nickname), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-actions") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-item-amount") }, "-", (0, import_utils.formatAmountWithOptions)(Math.abs(item.amount), amountSymbol, {
|
112
|
+
precision: 2,
|
113
|
+
hideDecimalForWholeNumbers: false,
|
114
|
+
useThousandsSeparator: true,
|
115
|
+
showCurrencySymbol: true
|
116
|
+
})), shouldShowVoidButton(item) && /* @__PURE__ */ import_react.default.createElement(
|
112
117
|
"button",
|
113
118
|
{
|
114
119
|
className: (0, import_classnames.default)("void-button"),
|
@@ -131,10 +136,15 @@ function PaymentDetailModal({
|
|
131
136
|
className: (0, import_classnames.default)("balance-item-row")
|
132
137
|
},
|
133
138
|
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-item-text") }, wallet.name || wallet.product_name || getText("wallet.pass") || "Wallet Pass"),
|
134
|
-
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-item-amount") }, "-", wallet.redeem || (0, import_utils.
|
139
|
+
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-item-amount") }, "-", wallet.redeem || (0, import_utils.formatAmountWithOptions)(
|
135
140
|
Math.abs(wallet.savedAmount || 0),
|
136
|
-
|
137
|
-
|
141
|
+
amountSymbol,
|
142
|
+
{
|
143
|
+
precision: 2,
|
144
|
+
hideDecimalForWholeNumbers: false,
|
145
|
+
useThousandsSeparator: true,
|
146
|
+
showCurrencySymbol: true
|
147
|
+
}
|
138
148
|
))
|
139
149
|
)
|
140
150
|
);
|
@@ -158,7 +168,12 @@ function PaymentDetailModal({
|
|
158
168
|
};
|
159
169
|
const renderSummaryItems = () => {
|
160
170
|
if (!summaryData || summaryData.length === 0) {
|
161
|
-
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-details-grid") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-details-column") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-text") }, getText("no.items.found") || "No items found"), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-amount") }, (0, import_utils.
|
171
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-details-grid") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-details-column") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-text") }, getText("no.items.found") || "No items found"), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-amount") }, (0, import_utils.formatAmountWithOptions)(0, amountSymbol, {
|
172
|
+
precision: 2,
|
173
|
+
hideDecimalForWholeNumbers: false,
|
174
|
+
useThousandsSeparator: true,
|
175
|
+
showCurrencySymbol: true
|
176
|
+
})))));
|
162
177
|
}
|
163
178
|
const leftItems = summaryData.slice(0, Math.ceil(summaryData.length / 2));
|
164
179
|
const rightItems = summaryData.slice(Math.ceil(summaryData.length / 2));
|
@@ -167,13 +182,23 @@ function PaymentDetailModal({
|
|
167
182
|
if ((item == null ? void 0 : item.key) !== "discount") {
|
168
183
|
prefix = item.value >= 0 ? "+" : "";
|
169
184
|
}
|
170
|
-
return /* @__PURE__ */ import_react.default.createElement("div", { key: item.key, className: (0, import_classnames.default)("order-row") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-label") }, getDisplayLabel(item)), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-amount") }, prefix, (0, import_utils.
|
185
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { key: item.key, className: (0, import_classnames.default)("order-row") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-label") }, getDisplayLabel(item)), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-amount") }, prefix, (0, import_utils.formatAmountWithOptions)(item.value, amountSymbol, {
|
186
|
+
precision: 2,
|
187
|
+
hideDecimalForWholeNumbers: false,
|
188
|
+
useThousandsSeparator: true,
|
189
|
+
showCurrencySymbol: true
|
190
|
+
})));
|
171
191
|
})), rightItems.length > 0 && /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("divider-vertical") }), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-details-column") }, rightItems.map((item) => {
|
172
192
|
let prefix = "";
|
173
193
|
if ((item == null ? void 0 : item.key) !== "discount") {
|
174
194
|
prefix = item.value >= 0 ? "+" : "";
|
175
195
|
}
|
176
|
-
return /* @__PURE__ */ import_react.default.createElement("div", { key: item.key, className: (0, import_classnames.default)("order-row") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-label") }, getDisplayLabel(item)), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-amount") }, prefix, (0, import_utils.
|
196
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { key: item.key, className: (0, import_classnames.default)("order-row") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-label") }, getDisplayLabel(item)), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("order-row-amount") }, prefix, (0, import_utils.formatAmountWithOptions)(item.value, amountSymbol, {
|
197
|
+
precision: 2,
|
198
|
+
hideDecimalForWholeNumbers: false,
|
199
|
+
useThousandsSeparator: true,
|
200
|
+
showCurrencySymbol: true
|
201
|
+
})));
|
177
202
|
}))));
|
178
203
|
};
|
179
204
|
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-detail-modal") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("main-content") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-container") }, /* @__PURE__ */ import_react.default.createElement(
|
@@ -183,7 +208,12 @@ function PaymentDetailModal({
|
|
183
208
|
onClick: () => setOrderTotalExpanded(!orderTotalExpanded)
|
184
209
|
},
|
185
210
|
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-title-container") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-title") }, getText("order.total") || "Order Total")),
|
186
|
-
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-right") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-amount") }, (0, import_utils.
|
211
|
+
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-right") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-amount") }, (0, import_utils.formatAmountWithOptions)(getTotalAmount(), amountSymbol, {
|
212
|
+
precision: 2,
|
213
|
+
hideDecimalForWholeNumbers: false,
|
214
|
+
useThousandsSeparator: true,
|
215
|
+
showCurrencySymbol: true
|
216
|
+
})), /* @__PURE__ */ import_react.default.createElement(CollapseIcon, { expanded: orderTotalExpanded }))
|
187
217
|
), orderTotalExpanded && /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-content") }, renderSummaryItems())), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("divider-horizontal") }), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-container") }, /* @__PURE__ */ import_react.default.createElement(
|
188
218
|
"div",
|
189
219
|
{
|
@@ -193,7 +223,12 @@ function PaymentDetailModal({
|
|
193
223
|
tabIndex: 0
|
194
224
|
},
|
195
225
|
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-title-container") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-title") }, getText("order.paid") || "Order Paid")),
|
196
|
-
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-right") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-amount") }, "-", (0, import_utils.
|
226
|
+
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-right") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-amount") }, "-", (0, import_utils.formatAmountWithOptions)(getTotalPaidAmount(), amountSymbol, {
|
227
|
+
precision: 2,
|
228
|
+
hideDecimalForWholeNumbers: false,
|
229
|
+
useThousandsSeparator: true,
|
230
|
+
showCurrencySymbol: true
|
231
|
+
})), /* @__PURE__ */ import_react.default.createElement(CollapseIcon, { expanded: orderPaidExpanded }))
|
197
232
|
), orderPaidExpanded && renderPaymentItems())), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-to-pay-section") }, /* @__PURE__ */ import_react.default.createElement(
|
198
233
|
"div",
|
199
234
|
{
|
@@ -203,7 +238,17 @@ function PaymentDetailModal({
|
|
203
238
|
tabIndex: 0
|
204
239
|
},
|
205
240
|
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("section-title-container") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-to-pay-title") }, getText("balance.to.pay") || "Balance to Pay")),
|
206
|
-
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-to-pay-right") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-to-pay-amount") }, (0, import_utils.
|
207
|
-
|
241
|
+
/* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-to-pay-right") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-to-pay-amount") }, (0, import_utils.formatAmountWithOptions)(getBalanceDueAmount(), amountSymbol, {
|
242
|
+
precision: 2,
|
243
|
+
hideDecimalForWholeNumbers: false,
|
244
|
+
useThousandsSeparator: true,
|
245
|
+
showCurrencySymbol: true
|
246
|
+
})), /* @__PURE__ */ import_react.default.createElement(CollapseIcon, { expanded: balanceToPayExpanded, color: "#7F56DA" }))
|
247
|
+
), balanceToPayExpanded && /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-to-pay-content") }, renderVoucherItems()), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-due-section") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-due-header") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-due-title") }, getText("balance.due") || "Balance Due"), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("balance-due-amount") }, (0, import_utils.formatAmountWithOptions)(customAmount || 0, amountSymbol, {
|
248
|
+
precision: 2,
|
249
|
+
hideDecimalForWholeNumbers: false,
|
250
|
+
useThousandsSeparator: true,
|
251
|
+
showCurrencySymbol: true
|
252
|
+
}))))));
|
208
253
|
}
|
209
254
|
var PaymentDetailModal_default = PaymentDetailModal;
|
@@ -11,6 +11,7 @@ interface ExtendedPaymentOptionsModuleProps extends PaymentOptionsModuleProps {
|
|
11
11
|
title?: string;
|
12
12
|
onClick?: (method: ExtendedPaymentMethod) => void;
|
13
13
|
disabled?: boolean;
|
14
|
+
showCashPayment?: boolean;
|
14
15
|
}
|
15
|
-
declare function PaymentOptionsModule({ amountSymbol, orderInfo, onClick, paymentMethods, customAmount, title, disabled, }: ExtendedPaymentOptionsModuleProps): JSX.Element;
|
16
|
+
declare function PaymentOptionsModule({ amountSymbol, orderInfo, onClick, paymentMethods, customAmount, title, disabled, showCashPayment, }: ExtendedPaymentOptionsModuleProps): JSX.Element;
|
16
17
|
export default PaymentOptionsModule;
|
@@ -55,7 +55,8 @@ function PaymentOptionsModule({
|
|
55
55
|
paymentMethods = [],
|
56
56
|
customAmount,
|
57
57
|
title,
|
58
|
-
disabled = false
|
58
|
+
disabled = false,
|
59
|
+
showCashPayment = false
|
59
60
|
}) {
|
60
61
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
61
62
|
const context = (0, import_useEngineContext.default)();
|
@@ -108,14 +109,14 @@ function PaymentOptionsModule({
|
|
108
109
|
);
|
109
110
|
const renderPaymentIcon = (method) => {
|
110
111
|
if (method.code === "EFTPOS") {
|
111
|
-
return /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit
|
112
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#FE8279" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit", style: { fontSize: "26px", color: "#ffffff" } }));
|
112
113
|
}
|
113
114
|
switch (String(method.type)) {
|
114
115
|
case "credit-card":
|
115
116
|
case "eftpos":
|
116
|
-
return /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit
|
117
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#FE8279" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit", style: { fontSize: "26px", color: "#ffffff" } }));
|
117
118
|
default:
|
118
|
-
return /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-
|
119
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#D277E4" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-custom", style: { fontSize: "26px", color: "#ffffff" } }));
|
119
120
|
}
|
120
121
|
};
|
121
122
|
return /* @__PURE__ */ import_react.default.createElement(
|
@@ -130,19 +131,21 @@ function PaymentOptionsModule({
|
|
130
131
|
import_ScrollableList.default,
|
131
132
|
{
|
132
133
|
height: "100%",
|
133
|
-
maxHeight:
|
134
|
+
maxHeight: 330,
|
134
135
|
gradientColor: "rgba(139, 92, 246, 0.1)",
|
135
136
|
gradientHeight: 50,
|
136
|
-
columnCount: 1,
|
137
|
+
columnCount: showCashPayment ? 1 : 2,
|
137
138
|
rowGap: 7,
|
139
|
+
columnGap: 8,
|
138
140
|
containerStyle: {
|
139
141
|
width: "100%",
|
140
142
|
flex: 1,
|
141
143
|
// 使用flex来占用剩余空间
|
142
144
|
minHeight: 0,
|
143
145
|
// 允许缩小
|
144
|
-
position: "relative"
|
146
|
+
position: "relative",
|
145
147
|
// 确保定位上下文
|
148
|
+
paddingBottom: 8
|
146
149
|
}
|
147
150
|
},
|
148
151
|
filteredPaymentMethods.map((method) => /* @__PURE__ */ import_react.default.createElement(
|
@@ -217,7 +220,7 @@ function PaymentOptionsModule({
|
|
217
220
|
"payment-options-module-payment-method-right"
|
218
221
|
)
|
219
222
|
},
|
220
|
-
/* @__PURE__ */ import_react.default.createElement(
|
223
|
+
method.code !== "EFTPOS" && method.type !== "eftpos" && /* @__PURE__ */ import_react.default.createElement(
|
221
224
|
"div",
|
222
225
|
{
|
223
226
|
className: (0, import_classnames.default)(
|
@@ -34,10 +34,10 @@
|
|
34
34
|
/* 支付方式项样式 */
|
35
35
|
.payment-options-module-payment-method-item {
|
36
36
|
width: 100%;
|
37
|
-
height:
|
38
|
-
padding:
|
37
|
+
height: 62px;
|
38
|
+
padding: 8px 16px;
|
39
39
|
background: white;
|
40
|
-
border-radius:
|
40
|
+
border-radius: 8px;
|
41
41
|
border: 1px var(--theme-color, #7f56da) solid;
|
42
42
|
cursor: pointer;
|
43
43
|
justify-content: space-between;
|
@@ -118,7 +118,7 @@
|
|
118
118
|
/* 选择按钮禁用状态样式 */
|
119
119
|
.payment-options-module-selection-button-disabled {
|
120
120
|
color: #D0D5DD;
|
121
|
-
|
121
|
+
|
122
122
|
.iconfont {
|
123
123
|
color: #D0D5DD !important;
|
124
124
|
}
|
@@ -197,7 +197,12 @@
|
|
197
197
|
|
198
198
|
/* PaymentIcon 样式 */
|
199
199
|
.payment-options-module-icon-container {
|
200
|
-
width:
|
200
|
+
width: 32px;
|
201
|
+
height: 32px;
|
202
|
+
border-radius: 50%;
|
203
|
+
display: flex;
|
204
|
+
align-items: center;
|
205
|
+
justify-content: center;
|
201
206
|
img {
|
202
207
|
width: 100%;
|
203
208
|
}
|
@@ -252,4 +257,4 @@
|
|
252
257
|
color: #101828;
|
253
258
|
/* 标题保持正常颜色 */
|
254
259
|
}
|
255
|
-
}
|
260
|
+
}
|