@pisell/private-materials 6.4.71 → 6.4.72
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 +8 -8
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +6 -6
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +7 -7
- package/es/components/booking/addons/model.d.ts +1 -10
- package/es/components/booking/components/footer/amount.js +25 -8
- package/es/components/booking/components/footer/utils.d.ts +7 -0
- package/es/components/booking/components/footer/utils.js +46 -22
- package/es/components/booking/forms/model.d.ts +1 -10
- package/es/components/booking/forms/sendModal/useSendModal.d.ts +1 -1
- package/es/components/booking/hooks/useQuotation.js +69 -21
- package/es/components/booking/info/model.d.ts +1 -10
- package/es/components/booking/info/service/Lists.js +1 -1
- package/es/components/booking/info/service/addService/utils.d.ts +1 -1
- package/es/components/booking/info/service/serve.d.ts +14 -0
- package/es/components/booking/info/service/serve.js +22 -1
- package/es/components/booking/info/service2/Group/utils.js +2 -0
- package/es/components/booking/info/service2/utils.d.ts +1 -33
- package/es/components/booking/info/service2/utils.js +75 -29
- package/es/components/booking/info/utils.js +5 -0
- package/es/components/booking/info2/service/addService/index.js +146 -89
- package/es/components/booking/info2/service/addService/utils.d.ts +9 -1
- package/es/components/booking/info2/service/addService/utils.js +78 -9
- package/es/components/booking/info2/service/editService/index.js +235 -55
- package/es/components/booking/info2/utilsByBooking.js +14 -5
- package/es/components/booking/model.d.ts +1 -9
- package/es/components/booking/notes/model.d.ts +1 -10
- package/es/components/booking/payments/model.d.ts +1 -10
- package/es/components/booking/utils.d.ts +9 -1
- package/es/components/booking/utils.js +23 -0
- package/es/components/checkout/hooks/useWalletPass.d.ts +1 -1
- package/es/components/eftposPay/hooks.d.ts +1 -1
- package/es/components/eftposPay/store/index.d.ts +2 -2
- package/es/components/pay/toC/model.d.ts +1 -9
- package/es/components/schedules/model.d.ts +1 -9
- package/es/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.d.ts +18 -0
- package/es/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.js +119 -0
- package/es/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.less +0 -0
- package/es/components/ticketBooking/components/addServiceVariant/addService.js +283 -138
- package/es/components/ticketBooking/components/ticketBooking/index.js +14 -11
- package/es/components/ticketBooking/utils/index.d.ts +6 -1
- package/es/components/ticketBooking/utils/index.js +21 -3
- package/es/components/wallet/Detail/model.d.ts +1 -13
- package/es/components/wallet/DiscountCard/model.d.ts +1 -14
- package/es/components/wallet/PointCard/model.d.ts +1 -13
- package/es/components/wallet/RechargeableCard/model.d.ts +1 -29
- package/es/components/wallet/Voucher/model.d.ts +1 -13
- package/es/components/wallet/model.d.ts +1 -9
- package/es/pro/multiDayTimeSelect/MultiDayTimeSelect.d.ts +9 -0
- package/es/pro/multiDayTimeSelect/MultiDayTimeSelect.js +355 -0
- package/es/pro/multiDayTimeSelect/MultiDayTimeSelect.less +8 -0
- package/es/pro/multiDayTimeSelect/index.d.ts +3 -0
- package/es/pro/multiDayTimeSelect/index.js +1 -0
- package/es/pro/multiDayTimeSelect/types.d.ts +28 -0
- package/es/pro/multiDayTimeSelect/types.js +1 -0
- package/lib/components/booking/addons/model.d.ts +1 -10
- package/lib/components/booking/components/footer/amount.js +23 -6
- package/lib/components/booking/components/footer/utils.d.ts +7 -0
- package/lib/components/booking/components/footer/utils.js +23 -11
- package/lib/components/booking/forms/model.d.ts +1 -10
- package/lib/components/booking/forms/sendModal/useSendModal.d.ts +1 -1
- package/lib/components/booking/hooks/useQuotation.js +45 -13
- package/lib/components/booking/info/model.d.ts +1 -10
- package/lib/components/booking/info/service/Lists.js +1 -1
- package/lib/components/booking/info/service/addService/utils.d.ts +1 -1
- package/lib/components/booking/info/service/serve.d.ts +14 -0
- package/lib/components/booking/info/service/serve.js +5 -0
- package/lib/components/booking/info/service2/Group/utils.js +2 -0
- package/lib/components/booking/info/service2/utils.d.ts +1 -33
- package/lib/components/booking/info/service2/utils.js +24 -10
- package/lib/components/booking/info/utils.js +4 -0
- package/lib/components/booking/info2/service/addService/index.js +22 -3
- package/lib/components/booking/info2/service/addService/utils.d.ts +9 -1
- package/lib/components/booking/info2/service/addService/utils.js +47 -9
- package/lib/components/booking/info2/service/editService/index.js +191 -31
- package/lib/components/booking/info2/utilsByBooking.js +19 -8
- package/lib/components/booking/model.d.ts +1 -9
- package/lib/components/booking/notes/model.d.ts +1 -10
- package/lib/components/booking/payments/model.d.ts +1 -10
- package/lib/components/booking/utils.d.ts +9 -1
- package/lib/components/booking/utils.js +15 -0
- package/lib/components/checkout/hooks/useWalletPass.d.ts +1 -1
- package/lib/components/eftposPay/hooks.d.ts +1 -1
- package/lib/components/eftposPay/store/index.d.ts +2 -2
- package/lib/components/pay/toC/model.d.ts +1 -9
- package/lib/components/schedules/model.d.ts +1 -9
- package/lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.d.ts +18 -0
- package/lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.js +118 -0
- package/lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.less +0 -0
- package/lib/components/ticketBooking/components/addServiceVariant/addService.js +185 -119
- package/lib/components/ticketBooking/components/ticketBooking/index.js +0 -16
- package/lib/components/ticketBooking/utils/index.d.ts +6 -1
- package/lib/components/ticketBooking/utils/index.js +11 -1
- package/lib/components/wallet/Detail/model.d.ts +1 -13
- package/lib/components/wallet/DiscountCard/model.d.ts +1 -14
- package/lib/components/wallet/PointCard/model.d.ts +1 -13
- package/lib/components/wallet/RechargeableCard/model.d.ts +1 -29
- package/lib/components/wallet/Voucher/model.d.ts +1 -13
- package/lib/components/wallet/model.d.ts +1 -9
- package/lib/pro/multiDayTimeSelect/MultiDayTimeSelect.d.ts +9 -0
- package/lib/pro/multiDayTimeSelect/MultiDayTimeSelect.js +304 -0
- package/lib/pro/multiDayTimeSelect/MultiDayTimeSelect.less +8 -0
- package/lib/pro/multiDayTimeSelect/index.d.ts +3 -0
- package/lib/pro/multiDayTimeSelect/index.js +35 -0
- package/lib/pro/multiDayTimeSelect/types.d.ts +28 -0
- package/lib/pro/multiDayTimeSelect/types.js +17 -0
- package/package.json +13 -13
|
@@ -19,7 +19,7 @@ export declare const useStoreRef: <T extends {
|
|
|
19
19
|
readonly netRef: React.MutableRefObject<boolean | undefined>;
|
|
20
20
|
readonly symbolRef: React.MutableRefObject<string>;
|
|
21
21
|
readonly amountRef: React.MutableRefObject<string | number>;
|
|
22
|
-
readonly eftposRef: React.MutableRefObject<"stripe" | "
|
|
22
|
+
readonly eftposRef: React.MutableRefObject<"stripe" | "tyro" | "windcave" | "payo" | "linkly">;
|
|
23
23
|
readonly clientRef: React.MutableRefObject<ClientEnum>;
|
|
24
24
|
readonly dataRef: React.MutableRefObject<import("./store").State>;
|
|
25
25
|
};
|
|
@@ -297,8 +297,8 @@ export declare const backUpFree: (payload: Partial<State>) => {
|
|
|
297
297
|
amount?: string | number | undefined;
|
|
298
298
|
mode?: "pay" | "refund" | "fullPay" | "query" | undefined;
|
|
299
299
|
order_id?: string | number | undefined;
|
|
300
|
-
eftpos?: "stripe" | "
|
|
301
|
-
action?: "
|
|
300
|
+
eftpos?: "stripe" | "tyro" | "windcave" | "payo" | "linkly" | undefined;
|
|
301
|
+
action?: "amount" | "pay" | "deviceList" | undefined;
|
|
302
302
|
key?: number | undefined;
|
|
303
303
|
step?: number | undefined;
|
|
304
304
|
title?: string | undefined;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
export interface FormState {
|
|
3
2
|
platform: 'pc' | 'h5' | '' | undefined;
|
|
4
3
|
order: any;
|
|
@@ -29,11 +28,4 @@ export interface PayGroup {
|
|
|
29
28
|
pay_number?: string;
|
|
30
29
|
_order: any;
|
|
31
30
|
}
|
|
32
|
-
export declare const Provider:
|
|
33
|
-
state: FormState;
|
|
34
|
-
} & {
|
|
35
|
-
dispatch: (params: {
|
|
36
|
-
type: string;
|
|
37
|
-
payload: any;
|
|
38
|
-
}) => void;
|
|
39
|
-
}>;
|
|
31
|
+
export declare const Provider: any, Context: any;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { CalendarDataItem, ScheduleItem } from "./type";
|
|
3
2
|
import dayjs from "dayjs";
|
|
4
3
|
export interface FormState {
|
|
@@ -69,11 +68,4 @@ export interface FormState {
|
|
|
69
68
|
};
|
|
70
69
|
setGlobalState: Function | null;
|
|
71
70
|
}
|
|
72
|
-
export declare const Provider:
|
|
73
|
-
state: FormState;
|
|
74
|
-
} & {
|
|
75
|
-
dispatch: (params: {
|
|
76
|
-
type: string;
|
|
77
|
-
payload: any;
|
|
78
|
-
}) => void;
|
|
79
|
-
}>;
|
|
71
|
+
export declare const Provider: any, Context: any;
|
package/lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Dayjs } from 'dayjs';
|
|
3
|
+
import './MultiDayTimeSelectModal.less';
|
|
4
|
+
interface MultiDayTimeSelectModalProps {
|
|
5
|
+
open: boolean;
|
|
6
|
+
productName?: string;
|
|
7
|
+
locale?: string;
|
|
8
|
+
defaultStartDate?: Dayjs;
|
|
9
|
+
loading?: boolean;
|
|
10
|
+
/** 最大天数,默认30天 */
|
|
11
|
+
maxDays?: number;
|
|
12
|
+
/** 开始时间和结束时间是否分离 */
|
|
13
|
+
separateStartEnd?: boolean;
|
|
14
|
+
onConfirm: (startDate: Dayjs, endDate: Dayjs, duration: number) => void;
|
|
15
|
+
onCancel: () => void;
|
|
16
|
+
}
|
|
17
|
+
declare const MultiDayTimeSelectModal: React.FC<MultiDayTimeSelectModalProps>;
|
|
18
|
+
export default MultiDayTimeSelectModal;
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.tsx
|
|
30
|
+
var MultiDayTimeSelectModal_exports = {};
|
|
31
|
+
__export(MultiDayTimeSelectModal_exports, {
|
|
32
|
+
default: () => MultiDayTimeSelectModal_default
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(MultiDayTimeSelectModal_exports);
|
|
35
|
+
var import_react = __toESM(require("react"));
|
|
36
|
+
var import_dayjs = __toESM(require("dayjs"));
|
|
37
|
+
var import_materials = require("@pisell/materials");
|
|
38
|
+
var import_utils = require("@pisell/utils");
|
|
39
|
+
var import_multiDayTimeSelect = __toESM(require("../../../../pro/multiDayTimeSelect"));
|
|
40
|
+
var import_MultiDayTimeSelectModal = require("./MultiDayTimeSelectModal.less");
|
|
41
|
+
var MultiDayTimeSelectModal = ({
|
|
42
|
+
open,
|
|
43
|
+
productName,
|
|
44
|
+
locale = "en",
|
|
45
|
+
defaultStartDate,
|
|
46
|
+
loading = false,
|
|
47
|
+
maxDays = 30,
|
|
48
|
+
separateStartEnd = false,
|
|
49
|
+
onConfirm,
|
|
50
|
+
onCancel
|
|
51
|
+
}) => {
|
|
52
|
+
const [value, setValue] = (0, import_react.useState)(null);
|
|
53
|
+
const formRef = (0, import_react.useRef)(null);
|
|
54
|
+
(0, import_react.useEffect)(() => {
|
|
55
|
+
if (open) {
|
|
56
|
+
const startDate = defaultStartDate || (0, import_dayjs.default)();
|
|
57
|
+
const endDate = startDate.add(1, "day");
|
|
58
|
+
const initialValue = {
|
|
59
|
+
startDate,
|
|
60
|
+
endDate,
|
|
61
|
+
duration: 1
|
|
62
|
+
};
|
|
63
|
+
setValue(initialValue);
|
|
64
|
+
}
|
|
65
|
+
}, [open, defaultStartDate]);
|
|
66
|
+
const handleChange = (newValue) => {
|
|
67
|
+
setValue(newValue);
|
|
68
|
+
};
|
|
69
|
+
const handleConfirm = async () => {
|
|
70
|
+
var _a;
|
|
71
|
+
try {
|
|
72
|
+
await ((_a = formRef.current) == null ? void 0 : _a.validate());
|
|
73
|
+
if (value) {
|
|
74
|
+
onConfirm(value.startDate, value.endDate, value.duration);
|
|
75
|
+
}
|
|
76
|
+
} catch (error) {
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
const handleCancel = () => {
|
|
80
|
+
if (loading) return;
|
|
81
|
+
onCancel();
|
|
82
|
+
};
|
|
83
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
84
|
+
import_materials.PisellModal,
|
|
85
|
+
{
|
|
86
|
+
open,
|
|
87
|
+
title: productName || import_utils.locales.getText("pisell2.text.product_name"),
|
|
88
|
+
onCancel: handleCancel,
|
|
89
|
+
onOk: handleConfirm,
|
|
90
|
+
okText: import_utils.locales.getText("pisell2.text.confirm"),
|
|
91
|
+
cancelText: import_utils.locales.getText("pisell2.text.cancel"),
|
|
92
|
+
width: 600,
|
|
93
|
+
destroyOnClose: true,
|
|
94
|
+
confirmLoading: loading,
|
|
95
|
+
closable: !loading,
|
|
96
|
+
maskClosable: !loading,
|
|
97
|
+
headerDivider: false,
|
|
98
|
+
footerDivider: false,
|
|
99
|
+
cancelButtonProps: {
|
|
100
|
+
disabled: loading
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
/* @__PURE__ */ import_react.default.createElement(
|
|
104
|
+
import_multiDayTimeSelect.default,
|
|
105
|
+
{
|
|
106
|
+
ref: formRef,
|
|
107
|
+
maxDays,
|
|
108
|
+
defaultStartDate,
|
|
109
|
+
separateStartEnd,
|
|
110
|
+
value: value || void 0,
|
|
111
|
+
onChange: handleChange,
|
|
112
|
+
locale,
|
|
113
|
+
disabled: loading
|
|
114
|
+
}
|
|
115
|
+
)
|
|
116
|
+
);
|
|
117
|
+
};
|
|
118
|
+
var MultiDayTimeSelectModal_default = MultiDayTimeSelectModal;
|
package/lib/components/ticketBooking/components/addServiceVariant/MultiDayTimeSelectModal.less
ADDED
|
File without changes
|
|
@@ -50,6 +50,8 @@ var import_pisellos = require("../../hooks/pisellos");
|
|
|
50
50
|
var import_utils7 = require("./utils");
|
|
51
51
|
var import_materials = require("@pisell/materials");
|
|
52
52
|
var import_IsActiveContext = require("../../context/IsActiveContext");
|
|
53
|
+
var import_utils8 = require("../../../booking/info/service2/Group/utils");
|
|
54
|
+
var import_MultiDayTimeSelectModal = __toESM(require("./MultiDayTimeSelectModal"));
|
|
53
55
|
var productListLayout = {
|
|
54
56
|
grid: true,
|
|
55
57
|
config: "12:12"
|
|
@@ -89,6 +91,9 @@ var AddSerivce = (props) => {
|
|
|
89
91
|
);
|
|
90
92
|
const [currentProduct, setCurrentProduct] = (0, import_react.useState)(null);
|
|
91
93
|
const [firstLoading, setFirstLoading] = (0, import_react.useState)(true);
|
|
94
|
+
const [multiDayModalOpen, setMultiDayModalOpen] = (0, import_react.useState)(false);
|
|
95
|
+
const [multiDayModalLoading, setMultiDayModalLoading] = (0, import_react.useState)(false);
|
|
96
|
+
const [pendingMultiDayData, setPendingMultiDayData] = (0, import_react.useState)(null);
|
|
92
97
|
const stateRef = (0, import_react.useRef)(state);
|
|
93
98
|
stateRef.current = state;
|
|
94
99
|
const { getProducts, products, loading } = (0, import_pisellos.useProducts)(notAvailableRef);
|
|
@@ -194,10 +199,161 @@ var AddSerivce = (props) => {
|
|
|
194
199
|
}, 0);
|
|
195
200
|
}
|
|
196
201
|
);
|
|
202
|
+
const processAddService = (0, import_ahooks.useMemoizedFn)(async (item, _detail, e, notShowToast, startDate, endDate) => {
|
|
203
|
+
var _a2, _b2, _c2, _d2, _e2, _f2, _g2;
|
|
204
|
+
const other = JSON.parse(JSON.stringify(e));
|
|
205
|
+
other.session = e.session;
|
|
206
|
+
let cacheItem = {
|
|
207
|
+
..._detail,
|
|
208
|
+
product_id: item.id,
|
|
209
|
+
_id: (0, import_utils.getUniqueId)(),
|
|
210
|
+
_key: e.key,
|
|
211
|
+
_extend: {
|
|
212
|
+
start_date: startDate,
|
|
213
|
+
quantity: (e == null ? void 0 : e.quantity) || 1,
|
|
214
|
+
price: _detail.price,
|
|
215
|
+
product_name: item.title,
|
|
216
|
+
other,
|
|
217
|
+
end_date: endDate
|
|
218
|
+
},
|
|
219
|
+
new: 1
|
|
220
|
+
};
|
|
221
|
+
let _total = (0, import_utils2.getProductTotalPrice)(cacheItem);
|
|
222
|
+
cacheItem._extend.total = _total;
|
|
223
|
+
cacheItem._extend.origin_total = _total;
|
|
224
|
+
const _isEdit = !!stateRef.current.service.cacheItem;
|
|
225
|
+
if (_isEdit) {
|
|
226
|
+
cacheItem._id = (_a2 = stateRef.current.service.cacheItem) == null ? void 0 : _a2._id;
|
|
227
|
+
cacheItem.new = 0;
|
|
228
|
+
}
|
|
229
|
+
if (renderMode === "current") {
|
|
230
|
+
cacheItem.currentDefaultTime = stateRef.current.date.value.format("HH:mm");
|
|
231
|
+
}
|
|
232
|
+
cacheItem = (0, import_utils3.getProductExtend)({
|
|
233
|
+
cacheItem,
|
|
234
|
+
state: stateRef.current,
|
|
235
|
+
isDisabledTime: true
|
|
236
|
+
});
|
|
237
|
+
const isMultiDay = (0, import_utils3.isMultiDayProduct)(cacheItem);
|
|
238
|
+
const getMultiDayCacheItem = async (isConcatBookings) => {
|
|
239
|
+
cacheItem = await (0, import_utils3.getMultiDay)({
|
|
240
|
+
start_date: cacheItem._extend.start_date,
|
|
241
|
+
end_date: cacheItem._extend.end_date,
|
|
242
|
+
state: stateRef.current,
|
|
243
|
+
cacheItem
|
|
244
|
+
});
|
|
245
|
+
cacheItem = (0, import_utils8.createBookingItemsByGroup)(cacheItem);
|
|
246
|
+
if (isConcatBookings) {
|
|
247
|
+
cacheItem = (0, import_utils8.concatBookings)(cacheItem);
|
|
248
|
+
}
|
|
249
|
+
};
|
|
250
|
+
if (stateRef.current.renderType === "eventBooking") {
|
|
251
|
+
cacheItem.autoClose = false;
|
|
252
|
+
}
|
|
253
|
+
if (cacheItem.autoClose) {
|
|
254
|
+
cacheItem.autoClose = false;
|
|
255
|
+
cacheItem._serviceKey = (0, import_utils6.genServiceKey)(cacheItem);
|
|
256
|
+
if (isMultiDay) {
|
|
257
|
+
await getMultiDayCacheItem();
|
|
258
|
+
}
|
|
259
|
+
let { list: _list, quantity } = (0, import_utils6.addService)(
|
|
260
|
+
[...stateRef.current.service.value],
|
|
261
|
+
cacheItem,
|
|
262
|
+
stateRef.current,
|
|
263
|
+
isMultiDay
|
|
264
|
+
);
|
|
265
|
+
if (!notShowToast) {
|
|
266
|
+
handleAddToast(cacheItem.title, quantity || 1);
|
|
267
|
+
}
|
|
268
|
+
window.dispatchEvent(
|
|
269
|
+
new CustomEvent("onAddNewService", {
|
|
270
|
+
detail: {
|
|
271
|
+
cacheItem
|
|
272
|
+
}
|
|
273
|
+
})
|
|
274
|
+
);
|
|
275
|
+
try {
|
|
276
|
+
if (((_f2 = (_e2 = (_d2 = (_c2 = (_b2 = context.appHelper.utils.store) == null ? void 0 : _b2.getState) == null ? void 0 : _c2.call(_b2)) == null ? void 0 : _d2.global) == null ? void 0 : _e2.globalConfig) == null ? void 0 : _f2.id) === 2155) {
|
|
277
|
+
const val = _list == null ? void 0 : _list.map((s) => {
|
|
278
|
+
return {
|
|
279
|
+
product_id: s == null ? void 0 : s.product_id,
|
|
280
|
+
detailId: s == null ? void 0 : s.id,
|
|
281
|
+
detailProductId: s == null ? void 0 : s.product_id,
|
|
282
|
+
product_name: s == null ? void 0 : s.title,
|
|
283
|
+
price: s == null ? void 0 : s.price,
|
|
284
|
+
_id: s == null ? void 0 : s._id,
|
|
285
|
+
_key: s == null ? void 0 : s._key,
|
|
286
|
+
_serviceKey: s == null ? void 0 : s._serviceKey
|
|
287
|
+
};
|
|
288
|
+
});
|
|
289
|
+
const sendData = {
|
|
290
|
+
product_id: item == null ? void 0 : item.id,
|
|
291
|
+
detailId: _detail == null ? void 0 : _detail.id,
|
|
292
|
+
detailProductId: _detail == null ? void 0 : _detail.product_id,
|
|
293
|
+
product_name: item == null ? void 0 : item.title,
|
|
294
|
+
price: _detail == null ? void 0 : _detail.price,
|
|
295
|
+
serviceVal: val
|
|
296
|
+
};
|
|
297
|
+
(0, import_utils.sendWarningLog)({
|
|
298
|
+
title: "addService",
|
|
299
|
+
content: [
|
|
300
|
+
{ key: "添加数据", value: JSON.stringify(sendData) },
|
|
301
|
+
{
|
|
302
|
+
key: "日期",
|
|
303
|
+
value: (0, import_dayjs.default)().format("YYYY-MM-DD HH:mm:ss")
|
|
304
|
+
}
|
|
305
|
+
]
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
} catch (error) {
|
|
309
|
+
}
|
|
310
|
+
dispatch({
|
|
311
|
+
type: "setService",
|
|
312
|
+
payload: {
|
|
313
|
+
addModal: false,
|
|
314
|
+
value: _list,
|
|
315
|
+
edit: true,
|
|
316
|
+
changeService: false
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
} else {
|
|
320
|
+
(_g2 = window.openBookingEditModal) == null ? void 0 : _g2.call(window);
|
|
321
|
+
if (isMultiDay) {
|
|
322
|
+
await getMultiDayCacheItem(true);
|
|
323
|
+
}
|
|
324
|
+
dispatch({
|
|
325
|
+
type: "setService",
|
|
326
|
+
payload: {
|
|
327
|
+
editModal: true,
|
|
328
|
+
cacheItem,
|
|
329
|
+
addModal: !cacheItem.autoClose,
|
|
330
|
+
changeService: false
|
|
331
|
+
}
|
|
332
|
+
});
|
|
333
|
+
onEdit == null ? void 0 : onEdit(cacheItem);
|
|
334
|
+
}
|
|
335
|
+
});
|
|
336
|
+
const handleMultiDayConfirm = (0, import_ahooks.useMemoizedFn)(async (startDate, endDate, duration) => {
|
|
337
|
+
if (!pendingMultiDayData) return;
|
|
338
|
+
setMultiDayModalLoading(true);
|
|
339
|
+
try {
|
|
340
|
+
const { item, detail, e, notShowToast } = pendingMultiDayData;
|
|
341
|
+
await processAddService(item, detail, e, notShowToast, startDate, endDate);
|
|
342
|
+
setPendingMultiDayData(null);
|
|
343
|
+
setMultiDayModalOpen(false);
|
|
344
|
+
} catch (error) {
|
|
345
|
+
console.error("添加跨日商品失败:", error);
|
|
346
|
+
} finally {
|
|
347
|
+
setMultiDayModalLoading(false);
|
|
348
|
+
}
|
|
349
|
+
});
|
|
350
|
+
const handleMultiDayCancel = (0, import_ahooks.useMemoizedFn)(() => {
|
|
351
|
+
setMultiDayModalOpen(false);
|
|
352
|
+
setPendingMultiDayData(null);
|
|
353
|
+
});
|
|
197
354
|
const handleSelectProduct = (0, import_ahooks.useMemoizedFn)(
|
|
198
355
|
(item, type = "select") => {
|
|
199
356
|
var _a2, _b2, _c2, _d2;
|
|
200
|
-
console.log("handleSelectProduct");
|
|
201
357
|
if (!(0, import_utils4.isNormalProductByDurationSchedule)(item)) {
|
|
202
358
|
if (!Array.isArray((_a2 = state.service) == null ? void 0 : _a2.resourcesOrigin) || !state.service.resourcesOrigin.length) {
|
|
203
359
|
dispatch({
|
|
@@ -236,7 +392,7 @@ var AddSerivce = (props) => {
|
|
|
236
392
|
}
|
|
237
393
|
}
|
|
238
394
|
const callback = async (e, extension_type, detail, notShowToast) => {
|
|
239
|
-
|
|
395
|
+
debugger;
|
|
240
396
|
setCurrentProduct(null);
|
|
241
397
|
if (lock) {
|
|
242
398
|
return;
|
|
@@ -253,116 +409,18 @@ var AddSerivce = (props) => {
|
|
|
253
409
|
return;
|
|
254
410
|
}
|
|
255
411
|
const _detail = detail || item;
|
|
256
|
-
const
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
_extend: {
|
|
264
|
-
start_date: state.date.value,
|
|
265
|
-
quantity: (e == null ? void 0 : e.quantity) || 1,
|
|
266
|
-
price: _detail.price,
|
|
267
|
-
product_name: item.title,
|
|
268
|
-
other
|
|
269
|
-
},
|
|
270
|
-
new: 1
|
|
271
|
-
};
|
|
272
|
-
let _total = (0, import_utils2.getProductTotalPrice)(cacheItem);
|
|
273
|
-
cacheItem._extend.total = _total;
|
|
274
|
-
cacheItem._extend.origin_total = _total;
|
|
275
|
-
const _isEdit = !!state.service.cacheItem;
|
|
276
|
-
if (_isEdit) {
|
|
277
|
-
cacheItem._id = (_a3 = state.service.cacheItem) == null ? void 0 : _a3._id;
|
|
278
|
-
cacheItem.new = 0;
|
|
279
|
-
}
|
|
280
|
-
if (renderMode === "current") {
|
|
281
|
-
cacheItem.currentDefaultTime = state.date.value.format("HH:mm");
|
|
282
|
-
}
|
|
283
|
-
cacheItem = (0, import_utils3.getProductExtend)({
|
|
284
|
-
cacheItem,
|
|
285
|
-
state,
|
|
286
|
-
isDisabledTime: true
|
|
287
|
-
});
|
|
288
|
-
if (state.renderType === "eventBooking") {
|
|
289
|
-
cacheItem.autoClose = false;
|
|
290
|
-
}
|
|
291
|
-
if (cacheItem.autoClose) {
|
|
292
|
-
cacheItem.autoClose = false;
|
|
293
|
-
cacheItem._serviceKey = (0, import_utils6.genServiceKey)(cacheItem);
|
|
294
|
-
let { list: _list, quantity } = (0, import_utils6.addService)(
|
|
295
|
-
[...stateRef.current.service.value],
|
|
296
|
-
cacheItem,
|
|
297
|
-
state
|
|
298
|
-
);
|
|
299
|
-
if (!notShowToast) {
|
|
300
|
-
handleAddToast(cacheItem.title, quantity || 1);
|
|
301
|
-
}
|
|
302
|
-
window.dispatchEvent(
|
|
303
|
-
new CustomEvent("onAddNewService", {
|
|
304
|
-
detail: {
|
|
305
|
-
cacheItem
|
|
306
|
-
}
|
|
307
|
-
})
|
|
308
|
-
);
|
|
309
|
-
try {
|
|
310
|
-
if (((_f2 = (_e2 = (_d3 = (_c3 = (_b3 = context.appHelper.utils.store) == null ? void 0 : _b3.getState) == null ? void 0 : _c3.call(_b3)) == null ? void 0 : _d3.global) == null ? void 0 : _e2.globalConfig) == null ? void 0 : _f2.id) === 2155) {
|
|
311
|
-
const val = _list == null ? void 0 : _list.map((s) => {
|
|
312
|
-
return {
|
|
313
|
-
product_id: s == null ? void 0 : s.product_id,
|
|
314
|
-
detailId: s == null ? void 0 : s.id,
|
|
315
|
-
detailProductId: s == null ? void 0 : s.product_id,
|
|
316
|
-
product_name: s == null ? void 0 : s.title,
|
|
317
|
-
price: s == null ? void 0 : s.price,
|
|
318
|
-
_id: s == null ? void 0 : s._id,
|
|
319
|
-
_key: s == null ? void 0 : s._key,
|
|
320
|
-
_serviceKey: s == null ? void 0 : s._serviceKey
|
|
321
|
-
};
|
|
322
|
-
});
|
|
323
|
-
const sendData = {
|
|
324
|
-
product_id: item == null ? void 0 : item.id,
|
|
325
|
-
detailId: _detail == null ? void 0 : _detail.id,
|
|
326
|
-
detailProductId: _detail == null ? void 0 : _detail.product_id,
|
|
327
|
-
product_name: item == null ? void 0 : item.title,
|
|
328
|
-
price: _detail == null ? void 0 : _detail.price,
|
|
329
|
-
serviceVal: val
|
|
330
|
-
};
|
|
331
|
-
(0, import_utils.sendWarningLog)({
|
|
332
|
-
title: "addService",
|
|
333
|
-
content: [
|
|
334
|
-
{ key: "添加数据", value: JSON.stringify(sendData) },
|
|
335
|
-
{
|
|
336
|
-
key: "日期",
|
|
337
|
-
value: (0, import_dayjs.default)().format("YYYY-MM-DD HH:mm:ss")
|
|
338
|
-
}
|
|
339
|
-
]
|
|
340
|
-
});
|
|
341
|
-
}
|
|
342
|
-
} catch (error) {
|
|
343
|
-
}
|
|
344
|
-
dispatch({
|
|
345
|
-
type: "setService",
|
|
346
|
-
payload: {
|
|
347
|
-
addModal: false,
|
|
348
|
-
value: _list,
|
|
349
|
-
edit: true,
|
|
350
|
-
changeService: false
|
|
351
|
-
}
|
|
352
|
-
});
|
|
353
|
-
} else {
|
|
354
|
-
(_g2 = window.openBookingEditModal) == null ? void 0 : _g2.call(window);
|
|
355
|
-
dispatch({
|
|
356
|
-
type: "setService",
|
|
357
|
-
payload: {
|
|
358
|
-
editModal: true,
|
|
359
|
-
cacheItem,
|
|
360
|
-
addModal: !cacheItem.autoClose,
|
|
361
|
-
changeService: false
|
|
362
|
-
}
|
|
412
|
+
const isMultiDay = (0, import_utils3.isMultiDayProduct)(_detail || item);
|
|
413
|
+
if (isMultiDay) {
|
|
414
|
+
setPendingMultiDayData({
|
|
415
|
+
item,
|
|
416
|
+
detail: _detail,
|
|
417
|
+
e,
|
|
418
|
+
notShowToast
|
|
363
419
|
});
|
|
364
|
-
|
|
420
|
+
setMultiDayModalOpen(true);
|
|
421
|
+
return;
|
|
365
422
|
}
|
|
423
|
+
await processAddService(item, _detail, e, notShowToast, state.date.value);
|
|
366
424
|
};
|
|
367
425
|
if (cacheValues) {
|
|
368
426
|
const productId = item.id.toString();
|
|
@@ -412,13 +470,6 @@ var AddSerivce = (props) => {
|
|
|
412
470
|
);
|
|
413
471
|
const renderList = (0, import_react.useMemo)(() => {
|
|
414
472
|
let _list = products || [];
|
|
415
|
-
if ((0, import_utils4.isDaysBooking)(state)) {
|
|
416
|
-
if (!(0, import_utils4.holderId)(state)) {
|
|
417
|
-
_list = _list.filter(
|
|
418
|
-
(item) => (0, import_utils4.isNormalProductByDurationSchedule)(item)
|
|
419
|
-
);
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
473
|
return _list;
|
|
423
474
|
}, [products, state == null ? void 0 : state.activeCartId]);
|
|
424
475
|
const currentDate = (0, import_react.useMemo)(() => {
|
|
@@ -453,6 +504,7 @@ var AddSerivce = (props) => {
|
|
|
453
504
|
return resolvedConfig;
|
|
454
505
|
}, [productDisplayConfig]);
|
|
455
506
|
return (0, import_react.useMemo)(() => {
|
|
507
|
+
var _a2;
|
|
456
508
|
if (renderMode === "current") {
|
|
457
509
|
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
|
|
458
510
|
import_ProductDisplayAdapter.default,
|
|
@@ -463,7 +515,18 @@ var AddSerivce = (props) => {
|
|
|
463
515
|
currentProductId: currentProduct == null ? void 0 : currentProduct.id,
|
|
464
516
|
onSelectProduct: handleSelectProduct
|
|
465
517
|
}
|
|
466
|
-
), /* @__PURE__ */ import_react.default.createElement(import_notAvailable.default, { ref: notAvailableRef })
|
|
518
|
+
), /* @__PURE__ */ import_react.default.createElement(import_notAvailable.default, { ref: notAvailableRef }), /* @__PURE__ */ import_react.default.createElement(
|
|
519
|
+
import_MultiDayTimeSelectModal.default,
|
|
520
|
+
{
|
|
521
|
+
open: multiDayModalOpen,
|
|
522
|
+
productName: (_a2 = pendingMultiDayData == null ? void 0 : pendingMultiDayData.item) == null ? void 0 : _a2.title,
|
|
523
|
+
locale: state == null ? void 0 : state.locale,
|
|
524
|
+
defaultStartDate: state.date.value,
|
|
525
|
+
loading: multiDayModalLoading,
|
|
526
|
+
onConfirm: handleMultiDayConfirm,
|
|
527
|
+
onCancel: handleMultiDayCancel
|
|
528
|
+
}
|
|
529
|
+
));
|
|
467
530
|
}
|
|
468
531
|
return null;
|
|
469
532
|
}, [
|
|
@@ -478,7 +541,10 @@ var AddSerivce = (props) => {
|
|
|
478
541
|
loading,
|
|
479
542
|
currentProduct,
|
|
480
543
|
isBooking4,
|
|
481
|
-
finalDisplayConfig
|
|
544
|
+
finalDisplayConfig,
|
|
545
|
+
multiDayModalOpen,
|
|
546
|
+
pendingMultiDayData,
|
|
547
|
+
multiDayModalLoading
|
|
482
548
|
]);
|
|
483
549
|
};
|
|
484
550
|
var addService_default = AddSerivce;
|
|
@@ -642,22 +642,6 @@ var TicketBooking = (props) => {
|
|
|
642
642
|
}
|
|
643
643
|
});
|
|
644
644
|
setTimeout(() => {
|
|
645
|
-
var _a2, _b2, _c2, _d2, _e2;
|
|
646
|
-
if ((_b2 = (_a2 = state.modalState.service) == null ? void 0 : _a2.value) == null ? void 0 : _b2.length) {
|
|
647
|
-
let _list = (_e2 = (_c2 = state.bookingFunctions) == null ? void 0 : _c2.updateServiceDate) == null ? void 0 : _e2.call(
|
|
648
|
-
_c2,
|
|
649
|
-
(_d2 = state.modalState.service) == null ? void 0 : _d2.value,
|
|
650
|
-
date,
|
|
651
|
-
false
|
|
652
|
-
);
|
|
653
|
-
_setModalState({
|
|
654
|
-
service: {
|
|
655
|
-
...state.modalState.service,
|
|
656
|
-
value: _list,
|
|
657
|
-
edit: true
|
|
658
|
-
}
|
|
659
|
-
});
|
|
660
|
-
}
|
|
661
645
|
}, 100);
|
|
662
646
|
};
|
|
663
647
|
const _setShopOpeningHours = () => {
|
|
@@ -15,9 +15,14 @@ export declare const restoreProductOtherData: (data: any) => {
|
|
|
15
15
|
quantity: number;
|
|
16
16
|
} | undefined;
|
|
17
17
|
export declare const isSameProduct: (a: any, b: any) => boolean;
|
|
18
|
-
export declare const addService: (list: any[], addItem: any, state: any) => {
|
|
18
|
+
export declare const addService: (list: any[], addItem: any, state: any, isMultiDay?: boolean) => {
|
|
19
|
+
list: any[];
|
|
20
|
+
count: number;
|
|
21
|
+
quantity?: undefined;
|
|
22
|
+
} | {
|
|
19
23
|
list: any[];
|
|
20
24
|
quantity: any;
|
|
25
|
+
count?: undefined;
|
|
21
26
|
};
|
|
22
27
|
export declare const addServiceScroll: (rowKey: string, cacheItem: any) => void;
|
|
23
28
|
export declare const getCartProductOverlay: (state: any) => any;
|
|
@@ -68,6 +68,7 @@ module.exports = __toCommonJS(utils_exports);
|
|
|
68
68
|
var import_dayjs = __toESM(require("dayjs"));
|
|
69
69
|
var import_utils = require("../../booking/info/service2/utils");
|
|
70
70
|
var import_utils2 = require("@pisell/utils");
|
|
71
|
+
var import_utils3 = require("../../booking/info2/service/addService/utils");
|
|
71
72
|
var import_productCache = require("./productCache");
|
|
72
73
|
var formatDateToStr = (date) => {
|
|
73
74
|
const format = (val) => {
|
|
@@ -170,9 +171,15 @@ var isSameProduct = (a, b) => {
|
|
|
170
171
|
}
|
|
171
172
|
return ((_f = (_e = a._extend) == null ? void 0 : _e.other) == null ? void 0 : _f.rowKey) === ((_h = (_g = b._extend) == null ? void 0 : _g.other) == null ? void 0 : _h.rowKey) && a._serviceKey === b._serviceKey;
|
|
172
173
|
};
|
|
173
|
-
var addService = (list, addItem, state) => {
|
|
174
|
+
var addService = (list, addItem, state, isMultiDay) => {
|
|
174
175
|
let value = list;
|
|
175
176
|
let count;
|
|
177
|
+
if (isMultiDay && (0, import_utils2.isArr)(addItem)) {
|
|
178
|
+
return {
|
|
179
|
+
list: [...addItem, ...value],
|
|
180
|
+
count: 1
|
|
181
|
+
};
|
|
182
|
+
}
|
|
176
183
|
if (!(0, import_utils.isNormalProductByDurationSchedule)(addItem) && !getIsOverlayProduct(addItem, state)) {
|
|
177
184
|
value.unshift(addItem);
|
|
178
185
|
count = addItem._extend.quantity;
|
|
@@ -248,6 +255,9 @@ var getIsOverlayProduct = (item, state) => {
|
|
|
248
255
|
};
|
|
249
256
|
var getIsShowNumber = (item, state) => {
|
|
250
257
|
const isBookingTicket2 = state.isBookingTicket2;
|
|
258
|
+
if ((0, import_utils3.isMultiDayProduct)(item)) {
|
|
259
|
+
return false;
|
|
260
|
+
}
|
|
251
261
|
return (0, import_utils.isNormalProductByDurationSchedule)(item) || isBookingTicket2 && getIsOverlayProduct(item, state);
|
|
252
262
|
};
|
|
253
263
|
var genServiceKey = (item) => {
|
|
@@ -1,13 +1 @@
|
|
|
1
|
-
|
|
2
|
-
interface RechargeState {
|
|
3
|
-
addWalletCard: any;
|
|
4
|
-
}
|
|
5
|
-
export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
|
|
6
|
-
walletDetailState: RechargeState;
|
|
7
|
-
} & {
|
|
8
|
-
dispatch: (params: {
|
|
9
|
-
type: string;
|
|
10
|
-
payload: any;
|
|
11
|
-
}) => void;
|
|
12
|
-
}>;
|
|
13
|
-
export {};
|
|
1
|
+
export declare const Provider: any, Context: any;
|
|
@@ -1,14 +1 @@
|
|
|
1
|
-
|
|
2
|
-
interface RechargeState {
|
|
3
|
-
total: number;
|
|
4
|
-
setup?: 'menu' | 'list' | 'detail' | string;
|
|
5
|
-
}
|
|
6
|
-
export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
|
|
7
|
-
state: RechargeState;
|
|
8
|
-
} & {
|
|
9
|
-
dispatch: (params: {
|
|
10
|
-
type: string;
|
|
11
|
-
payload: any;
|
|
12
|
-
}) => void;
|
|
13
|
-
}>;
|
|
14
|
-
export {};
|
|
1
|
+
export declare const Provider: any, Context: any;
|