@pisell/private-materials 6.11.144 → 6.11.145
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/meta.js +1 -1
- package/build/lowcode/render/default/view.js +1 -1
- package/build/lowcode/view.js +1 -1
- package/es/components/appointmentBooking/components/Cart/Item/index.d.ts +1 -0
- package/es/components/booking/components/footer/index.js +5 -2
- package/es/components/checkout/PaymentModal.d.ts +1 -1
- package/es/components/checkout/PaymentModal.js +10 -5
- package/es/plus/pisellReservation/floorMap/reservationMock.d.ts +2 -0
- package/es/plus/pisellReservation/floorMap/reservationMock.js +17 -5
- package/lib/components/appointmentBooking/components/Cart/Item/index.d.ts +1 -0
- package/lib/components/booking/components/footer/index.js +8 -2
- package/lib/components/checkout/PaymentModal.d.ts +1 -1
- package/lib/components/checkout/PaymentModal.js +10 -5
- package/lib/plus/pisellReservation/floorMap/reservationMock.d.ts +2 -0
- package/lib/plus/pisellReservation/floorMap/reservationMock.js +10 -1
- package/package.json +4 -4
- package/es/components/booking/info/service2/Group/utils.d.ts +0 -14
- package/es/components/pay/toB/paymentMethods/index.d.ts +0 -11
- package/es/components/pay/toB/types/index.d.ts +0 -82
- package/es/plus/pisellReservation/PisellReservation.d.ts +0 -11
- package/es/plus/pisellReservation/components/BucketButtonGroup.d.ts +0 -33
- package/es/plus/pisellReservation/components/PisellReservationSubcomponents.d.ts +0 -80
- package/es/plus/pisellReservation/components/ReservationBookingStatusButtonFilter.d.ts +0 -21
- package/es/plus/pisellReservation/components/ReservationHudDrawerQuickFilters.d.ts +0 -7
- package/es/plus/pisellReservation/components/ReservationHudDrawerResourceRail.d.ts +0 -19
- package/es/plus/pisellReservation/components/ReservationPaymentStatusButtonFilter.d.ts +0 -19
- package/es/plus/pisellReservation/data/hudDrawerLocalListQuery.d.ts +0 -20
- package/es/plus/pisellReservation/data/reservationTablesMerge.d.ts +0 -27
- package/es/plus/pisellReservation/floorMap/ReservationFloorMapHud.d.ts +0 -49
- package/es/plus/pisellReservation/floorMap/ReservationHudDrawerHandle.d.ts +0 -30
- package/es/plus/pisellReservation/floorMap/reservationHudResourceRootBuckets.d.ts +0 -16
- package/es/plus/pisellReservation/floorRoomCard/FloorRoomCardFromData.d.ts +0 -17
- package/es/plus/pisellReservation/floorRoomCard/floorRoomCardUtils.d.ts +0 -110
- package/es/plus/pisellReservation/hooks/usePisellReservationBookingData.d.ts +0 -65
- package/es/plus/pisellReservation/hooks/useReservationSalesHostData.d.ts +0 -37
- package/es/plus/pisellReservation/locales/locales-ja.d.ts +0 -150
- package/es/plus/pisellReservation/locales/locales-pt.d.ts +0 -150
- package/es/plus/pisellReservation/locales/locales.d.ts +0 -743
- package/es/plus/pisellReservation/reservationConstants.d.ts +0 -1190
- package/lib/components/booking/info/service2/Group/utils.d.ts +0 -14
- package/lib/components/pay/toB/paymentMethods/index.d.ts +0 -11
- package/lib/components/pay/toB/types/index.d.ts +0 -82
- package/lib/plus/pisellReservation/PisellReservation.d.ts +0 -11
- package/lib/plus/pisellReservation/components/BucketButtonGroup.d.ts +0 -33
- package/lib/plus/pisellReservation/components/PisellReservationSubcomponents.d.ts +0 -80
- package/lib/plus/pisellReservation/components/ReservationBookingStatusButtonFilter.d.ts +0 -21
- package/lib/plus/pisellReservation/components/ReservationHudDrawerQuickFilters.d.ts +0 -7
- package/lib/plus/pisellReservation/components/ReservationHudDrawerResourceRail.d.ts +0 -19
- package/lib/plus/pisellReservation/components/ReservationPaymentStatusButtonFilter.d.ts +0 -19
- package/lib/plus/pisellReservation/data/hudDrawerLocalListQuery.d.ts +0 -20
- package/lib/plus/pisellReservation/data/reservationTablesMerge.d.ts +0 -27
- package/lib/plus/pisellReservation/floorMap/ReservationFloorMapHud.d.ts +0 -49
- package/lib/plus/pisellReservation/floorMap/ReservationHudDrawerHandle.d.ts +0 -30
- package/lib/plus/pisellReservation/floorMap/reservationHudResourceRootBuckets.d.ts +0 -16
- package/lib/plus/pisellReservation/floorRoomCard/FloorRoomCardFromData.d.ts +0 -17
- package/lib/plus/pisellReservation/floorRoomCard/floorRoomCardUtils.d.ts +0 -110
- package/lib/plus/pisellReservation/hooks/usePisellReservationBookingData.d.ts +0 -65
- package/lib/plus/pisellReservation/hooks/useReservationSalesHostData.d.ts +0 -37
- package/lib/plus/pisellReservation/locales/locales-ja.d.ts +0 -150
- package/lib/plus/pisellReservation/locales/locales-pt.d.ts +0 -150
- package/lib/plus/pisellReservation/locales/locales.d.ts +0 -743
- package/lib/plus/pisellReservation/reservationConstants.d.ts +0 -1190
|
@@ -2577,7 +2577,7 @@ var Footer = function Footer(props) {
|
|
|
2577
2577
|
},
|
|
2578
2578
|
onChangeOrderNote: handleNoteConfirm,
|
|
2579
2579
|
onDeleteOrderNote: handleNoteDelete,
|
|
2580
|
-
onClose: function onClose(reset) {
|
|
2580
|
+
onClose: function onClose(reset, options) {
|
|
2581
2581
|
var _state$dialogCallback2;
|
|
2582
2582
|
console.log('🔄 Footer: Closing PaymentModal', reset);
|
|
2583
2583
|
setIsPaymentModalOpen(false);
|
|
@@ -2593,7 +2593,10 @@ var Footer = function Footer(props) {
|
|
|
2593
2593
|
// 编辑模式弹窗回调(由 TicketBookingDialog 传入)
|
|
2594
2594
|
state === null || state === void 0 || (_state$dialogCallback2 = state.dialogCallback) === null || _state$dialogCallback2 === void 0 || _state$dialogCallback2.call(state, {
|
|
2595
2595
|
type: 'paymentClose',
|
|
2596
|
-
reset: reset
|
|
2596
|
+
reset: reset,
|
|
2597
|
+
data: {
|
|
2598
|
+
order_id: options === null || options === void 0 ? void 0 : options.order_id
|
|
2599
|
+
}
|
|
2597
2600
|
});
|
|
2598
2601
|
// 清除编辑模式
|
|
2599
2602
|
setEditOrderId(0);
|
|
@@ -25,7 +25,7 @@ interface PaymentModalProps {
|
|
|
25
25
|
onDeleteOrderNote?: () => void;
|
|
26
26
|
}
|
|
27
27
|
interface PaymentModalMainProps extends PaymentModalProps {
|
|
28
|
-
onClose?: (reset?: boolean) => void;
|
|
28
|
+
onClose?: (reset?: boolean, options?: any) => void;
|
|
29
29
|
onSetLocalOrderId?: (order_id: number) => void;
|
|
30
30
|
setEditCartMode?: (order_id: number, payData: any, closeModal: boolean) => void;
|
|
31
31
|
editOrderId?: number;
|
|
@@ -1581,7 +1581,7 @@ var PaymentModal = function PaymentModal(_ref19) {
|
|
|
1581
1581
|
// 重试处理函数(逻辑由用户自己实现)
|
|
1582
1582
|
var handleRetry = /*#__PURE__*/function () {
|
|
1583
1583
|
var _ref21 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {
|
|
1584
|
-
var checkoutModule, res, _res$response;
|
|
1584
|
+
var checkoutModule, res, _res$response, _res$response2;
|
|
1585
1585
|
return _regeneratorRuntime().wrap(function _callee15$(_context15) {
|
|
1586
1586
|
while (1) switch (_context15.prev = _context15.next) {
|
|
1587
1587
|
case 0:
|
|
@@ -1610,7 +1610,9 @@ var PaymentModal = function PaymentModal(_ref19) {
|
|
|
1610
1610
|
case 9:
|
|
1611
1611
|
// 如果是整单支付,则调用 onClose 让外面清空购物车
|
|
1612
1612
|
if ((res === null || res === void 0 || (_res$response = res.response) === null || _res$response === void 0 || (_res$response = _res$response.data) === null || _res$response === void 0 ? void 0 : _res$response.payment_status) === 'paid') {
|
|
1613
|
-
onClose === null || onClose === void 0 || onClose(true
|
|
1613
|
+
onClose === null || onClose === void 0 || onClose(true, {
|
|
1614
|
+
order_id: res === null || res === void 0 || (_res$response2 = res.response) === null || _res$response2 === void 0 || (_res$response2 = _res$response2.data) === null || _res$response2 === void 0 ? void 0 : _res$response2.order_id
|
|
1615
|
+
});
|
|
1614
1616
|
}
|
|
1615
1617
|
// if (res.data.payment_status)
|
|
1616
1618
|
// setShowRetryModal(false);
|
|
@@ -2063,9 +2065,12 @@ var PaymentModal = function PaymentModal(_ref19) {
|
|
|
2063
2065
|
};
|
|
2064
2066
|
|
|
2065
2067
|
// 专门用于关闭PaymentModal的函数
|
|
2066
|
-
var handleModalClose = function handleModalClose() {
|
|
2068
|
+
var handleModalClose = function handleModalClose(res) {
|
|
2069
|
+
var _res$response3;
|
|
2067
2070
|
console.log('PaymentModal - Modal closing independently');
|
|
2068
|
-
onClose === null || onClose === void 0 || onClose(true
|
|
2071
|
+
onClose === null || onClose === void 0 || onClose(true, {
|
|
2072
|
+
order_id: res === null || res === void 0 || (_res$response3 = res.response) === null || _res$response3 === void 0 || (_res$response3 = _res$response3.data) === null || _res$response3 === void 0 ? void 0 : _res$response3.order_id
|
|
2073
|
+
});
|
|
2069
2074
|
};
|
|
2070
2075
|
var handlePaymentCancel = function handlePaymentCancel(reset, notCancelOrder) {
|
|
2071
2076
|
var _paymentContentRef$cu, _paymentContentRef$cu2;
|
|
@@ -2353,7 +2358,7 @@ var PaymentModal = function PaymentModal(_ref19) {
|
|
|
2353
2358
|
|
|
2354
2359
|
// 当支付状态为 paid 时,关闭 paymentModal
|
|
2355
2360
|
if (paymentStatus === 'paid') {
|
|
2356
|
-
handleModalClose();
|
|
2361
|
+
handleModalClose(data);
|
|
2357
2362
|
}
|
|
2358
2363
|
|
|
2359
2364
|
// 将支付结果信息传递给回调处理
|
|
@@ -4,6 +4,8 @@ import type { PisellReservationTableRow } from '../types';
|
|
|
4
4
|
* 父级/接口 elementKinds 与预约默认合并:
|
|
5
5
|
* - 去掉与 Story 图片图元重复的旧版种类;
|
|
6
6
|
* - 远程若已有 `floorMapImage` 也先去掉,统一用 defaults 里那份(避免两套「图片底图」并存)。
|
|
7
|
+
* - 对**同一 value**:用 `{ ...default, ...remote }` 合并,避免远程 JSON 只存了精简字段时
|
|
8
|
+
* 把预约默认里的 `nameAsTitleConfigurable` 等能力位整段丢掉(否则编辑面板不显示「图元名作为标题」勾选)。
|
|
7
9
|
*/
|
|
8
10
|
export declare function mergeFloorMapElementKindsWithDefaults(defaults: FloorMapElementKindConfig[], remote: FloorMapElementKindConfig[] | undefined): FloorMapElementKindConfig[];
|
|
9
11
|
/** 同上,补全图元分类(如「底图」),避免调色板分组缺失 */
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
6
|
-
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
7
2
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
8
3
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
9
4
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
@@ -11,6 +6,11 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
11
6
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
12
7
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
13
8
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
9
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
10
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
11
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
13
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
14
14
|
import { FLOOR_MAP_IMAGE_ELEMENT_KIND } from '@pisell/materials';
|
|
15
15
|
import { locales } from '@pisell/utils';
|
|
16
16
|
import reservationLocales from "../locales/locales";
|
|
@@ -52,13 +52,25 @@ function dedupeElementKindsByValue(kinds) {
|
|
|
52
52
|
* 父级/接口 elementKinds 与预约默认合并:
|
|
53
53
|
* - 去掉与 Story 图片图元重复的旧版种类;
|
|
54
54
|
* - 远程若已有 `floorMapImage` 也先去掉,统一用 defaults 里那份(避免两套「图片底图」并存)。
|
|
55
|
+
* - 对**同一 value**:用 `{ ...default, ...remote }` 合并,避免远程 JSON 只存了精简字段时
|
|
56
|
+
* 把预约默认里的 `nameAsTitleConfigurable` 等能力位整段丢掉(否则编辑面板不显示「图元名作为标题」勾选)。
|
|
55
57
|
*/
|
|
56
58
|
export function mergeFloorMapElementKindsWithDefaults(defaults, remote) {
|
|
57
59
|
if (!(remote !== null && remote !== void 0 && remote.length)) return defaults;
|
|
60
|
+
var defaultByValue = new Map(defaults.map(function (d) {
|
|
61
|
+
return [d.value, d];
|
|
62
|
+
}));
|
|
58
63
|
var base = dedupeElementKindsByValue(stripConflictingImageElementKinds(remote)).filter(function (k) {
|
|
59
64
|
return k.value !== FLOOR_MAP_IMAGE_ELEMENT_KIND;
|
|
60
65
|
}).filter(function (k) {
|
|
61
66
|
return !LEGACY_RESERVATION_TABLE_KIND_VALUES.has(k.value);
|
|
67
|
+
}).map(function (k) {
|
|
68
|
+
var _k$nameAsTitleConfigu;
|
|
69
|
+
var d = defaultByValue.get(k.value);
|
|
70
|
+
if (!d) return k;
|
|
71
|
+
return _objectSpread(_objectSpread(_objectSpread({}, d), k), {}, {
|
|
72
|
+
nameAsTitleConfigurable: (_k$nameAsTitleConfigu = k.nameAsTitleConfigurable) !== null && _k$nameAsTitleConfigu !== void 0 ? _k$nameAsTitleConfigu : d.nameAsTitleConfigurable
|
|
73
|
+
});
|
|
62
74
|
});
|
|
63
75
|
var seen = new Set(base.map(function (k) {
|
|
64
76
|
return k.value;
|
|
@@ -1804,7 +1804,7 @@ var Footer = (props) => {
|
|
|
1804
1804
|
},
|
|
1805
1805
|
onChangeOrderNote: handleNoteConfirm,
|
|
1806
1806
|
onDeleteOrderNote: handleNoteDelete,
|
|
1807
|
-
onClose: (reset) => {
|
|
1807
|
+
onClose: (reset, options) => {
|
|
1808
1808
|
var _a2;
|
|
1809
1809
|
console.log("🔄 Footer: Closing PaymentModal", reset);
|
|
1810
1810
|
setIsPaymentModalOpen(false);
|
|
@@ -1814,7 +1814,13 @@ var Footer = (props) => {
|
|
|
1814
1814
|
if (reset) {
|
|
1815
1815
|
handleClearAllAndReset();
|
|
1816
1816
|
}
|
|
1817
|
-
(_a2 = state == null ? void 0 : state.dialogCallback) == null ? void 0 : _a2.call(state, {
|
|
1817
|
+
(_a2 = state == null ? void 0 : state.dialogCallback) == null ? void 0 : _a2.call(state, {
|
|
1818
|
+
type: "paymentClose",
|
|
1819
|
+
reset,
|
|
1820
|
+
data: {
|
|
1821
|
+
order_id: options == null ? void 0 : options.order_id
|
|
1822
|
+
}
|
|
1823
|
+
});
|
|
1818
1824
|
setEditOrderId(0);
|
|
1819
1825
|
},
|
|
1820
1826
|
onSetLocalOrderId: (e) => {
|
|
@@ -25,7 +25,7 @@ interface PaymentModalProps {
|
|
|
25
25
|
onDeleteOrderNote?: () => void;
|
|
26
26
|
}
|
|
27
27
|
interface PaymentModalMainProps extends PaymentModalProps {
|
|
28
|
-
onClose?: (reset?: boolean) => void;
|
|
28
|
+
onClose?: (reset?: boolean, options?: any) => void;
|
|
29
29
|
onSetLocalOrderId?: (order_id: number) => void;
|
|
30
30
|
setEditCartMode?: (order_id: number, payData: any, closeModal: boolean) => void;
|
|
31
31
|
editOrderId?: number;
|
|
@@ -1191,7 +1191,7 @@ var PaymentModal = ({
|
|
|
1191
1191
|
const { nativePrint } = (0, import_printer.default)();
|
|
1192
1192
|
const businessCode = (0, import_OsKeyContext.useBusinessCode)();
|
|
1193
1193
|
const handleRetry = async () => {
|
|
1194
|
-
var _a2, _b2;
|
|
1194
|
+
var _a2, _b2, _c2, _d2;
|
|
1195
1195
|
const checkoutModule = pisellos == null ? void 0 : pisellos.getModule("checkout");
|
|
1196
1196
|
const res = await (checkoutModule == null ? void 0 : checkoutModule.manualSyncOrderAsync());
|
|
1197
1197
|
console.log(res);
|
|
@@ -1199,7 +1199,9 @@ var PaymentModal = ({
|
|
|
1199
1199
|
setShowRetryModal(false);
|
|
1200
1200
|
await (showSuccessToast == null ? void 0 : showSuccessToast(res));
|
|
1201
1201
|
if (((_b2 = (_a2 = res == null ? void 0 : res.response) == null ? void 0 : _a2.data) == null ? void 0 : _b2.payment_status) === "paid") {
|
|
1202
|
-
onClose == null ? void 0 : onClose(true
|
|
1202
|
+
onClose == null ? void 0 : onClose(true, {
|
|
1203
|
+
order_id: (_d2 = (_c2 = res == null ? void 0 : res.response) == null ? void 0 : _c2.data) == null ? void 0 : _d2.order_id
|
|
1204
|
+
});
|
|
1203
1205
|
}
|
|
1204
1206
|
}
|
|
1205
1207
|
};
|
|
@@ -1467,9 +1469,12 @@ var PaymentModal = ({
|
|
|
1467
1469
|
callback == null ? void 0 : callback({ ...currentPaymentResultRef.current, isCallbackFromToast: true });
|
|
1468
1470
|
}
|
|
1469
1471
|
};
|
|
1470
|
-
const handleModalClose = () => {
|
|
1472
|
+
const handleModalClose = (res) => {
|
|
1473
|
+
var _a2, _b2;
|
|
1471
1474
|
console.log("PaymentModal - Modal closing independently");
|
|
1472
|
-
onClose == null ? void 0 : onClose(true
|
|
1475
|
+
onClose == null ? void 0 : onClose(true, {
|
|
1476
|
+
order_id: (_b2 = (_a2 = res == null ? void 0 : res.response) == null ? void 0 : _a2.data) == null ? void 0 : _b2.order_id
|
|
1477
|
+
});
|
|
1473
1478
|
};
|
|
1474
1479
|
const handlePaymentCancel = (reset, notCancelOrder) => {
|
|
1475
1480
|
var _a2, _b2;
|
|
@@ -1663,7 +1668,7 @@ var PaymentModal = ({
|
|
|
1663
1668
|
);
|
|
1664
1669
|
console.log("paymentStatus>>>>", paymentStatus);
|
|
1665
1670
|
if (paymentStatus === "paid") {
|
|
1666
|
-
handleModalClose();
|
|
1671
|
+
handleModalClose(data2);
|
|
1667
1672
|
}
|
|
1668
1673
|
const paymentResult = {
|
|
1669
1674
|
...data2,
|
|
@@ -4,6 +4,8 @@ import type { PisellReservationTableRow } from '../types';
|
|
|
4
4
|
* 父级/接口 elementKinds 与预约默认合并:
|
|
5
5
|
* - 去掉与 Story 图片图元重复的旧版种类;
|
|
6
6
|
* - 远程若已有 `floorMapImage` 也先去掉,统一用 defaults 里那份(避免两套「图片底图」并存)。
|
|
7
|
+
* - 对**同一 value**:用 `{ ...default, ...remote }` 合并,避免远程 JSON 只存了精简字段时
|
|
8
|
+
* 把预约默认里的 `nameAsTitleConfigurable` 等能力位整段丢掉(否则编辑面板不显示「图元名作为标题」勾选)。
|
|
7
9
|
*/
|
|
8
10
|
export declare function mergeFloorMapElementKindsWithDefaults(defaults: FloorMapElementKindConfig[], remote: FloorMapElementKindConfig[] | undefined): FloorMapElementKindConfig[];
|
|
9
11
|
/** 同上,补全图元分类(如「底图」),避免调色板分组缺失 */
|
|
@@ -82,9 +82,18 @@ function dedupeElementKindsByValue(kinds) {
|
|
|
82
82
|
}
|
|
83
83
|
function mergeFloorMapElementKindsWithDefaults(defaults, remote) {
|
|
84
84
|
if (!(remote == null ? void 0 : remote.length)) return defaults;
|
|
85
|
+
const defaultByValue = new Map(defaults.map((d) => [d.value, d]));
|
|
85
86
|
const base = dedupeElementKindsByValue(
|
|
86
87
|
stripConflictingImageElementKinds(remote)
|
|
87
|
-
).filter((k) => k.value !== import_materials.FLOOR_MAP_IMAGE_ELEMENT_KIND).filter((k) => !LEGACY_RESERVATION_TABLE_KIND_VALUES.has(k.value))
|
|
88
|
+
).filter((k) => k.value !== import_materials.FLOOR_MAP_IMAGE_ELEMENT_KIND).filter((k) => !LEGACY_RESERVATION_TABLE_KIND_VALUES.has(k.value)).map((k) => {
|
|
89
|
+
const d = defaultByValue.get(k.value);
|
|
90
|
+
if (!d) return k;
|
|
91
|
+
return {
|
|
92
|
+
...d,
|
|
93
|
+
...k,
|
|
94
|
+
nameAsTitleConfigurable: k.nameAsTitleConfigurable ?? d.nameAsTitleConfigurable
|
|
95
|
+
};
|
|
96
|
+
});
|
|
88
97
|
const seen = new Set(base.map((k) => k.value));
|
|
89
98
|
const out = [...base];
|
|
90
99
|
for (const d of defaults) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pisell/private-materials",
|
|
3
|
-
"version": "6.11.
|
|
3
|
+
"version": "6.11.145",
|
|
4
4
|
"main": "./lib/index.js",
|
|
5
5
|
"module": "./es/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -67,10 +67,10 @@
|
|
|
67
67
|
"react-infinite-scroll-component": "^6.1.0",
|
|
68
68
|
"react-resizable": "^3.0.5",
|
|
69
69
|
"styled-components": "^6.0.0-rc.3",
|
|
70
|
-
"@pisell/
|
|
71
|
-
"@pisell/materials": "6.11.46",
|
|
70
|
+
"@pisell/date-picker": "3.0.8",
|
|
72
71
|
"@pisell/icon": "0.0.11",
|
|
73
|
-
"@pisell/
|
|
72
|
+
"@pisell/utils": "3.0.2",
|
|
73
|
+
"@pisell/materials": "6.11.46"
|
|
74
74
|
},
|
|
75
75
|
"peerDependencies": {
|
|
76
76
|
"react": "^18.0.0",
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export declare const getGroupTotalPrice: (items: any[]) => any;
|
|
2
|
-
/**
|
|
3
|
-
* @title: 创建一个虚拟的组
|
|
4
|
-
* @description:
|
|
5
|
-
* @param {any} items
|
|
6
|
-
* @return {*}
|
|
7
|
-
* @Author: zhiwei.Wang
|
|
8
|
-
*/
|
|
9
|
-
export declare const concatBookings: (items: any[]) => any;
|
|
10
|
-
export declare const createBookingItemsByGroup: (item: any, isBatchEdit?: any) => any[];
|
|
11
|
-
export declare const isGroupBooking: (_id: any) => boolean;
|
|
12
|
-
export declare const getProductByGroupId: (groupId: string, items: any[]) => any[];
|
|
13
|
-
export declare const getGroupBooking: (groupId: string, items: any[]) => any;
|
|
14
|
-
export declare const filterItemByGroupId: (groupId: string, items: any[]) => any[];
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { ToBPayParams } from '../types';
|
|
3
|
-
export interface PaymentMethodsRef {
|
|
4
|
-
onPay: (type: 'eftpos' | 'mx51', params: ToBPayParams) => void;
|
|
5
|
-
}
|
|
6
|
-
export interface PaymentMethodsProps {
|
|
7
|
-
dynamicMaxHeight?: string;
|
|
8
|
-
isWebPos?: boolean;
|
|
9
|
-
}
|
|
10
|
-
declare const _default: React.ForwardRefExoticComponent<PaymentMethodsProps & React.RefAttributes<PaymentMethodsRef>>;
|
|
11
|
-
export default _default;
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
export * from './storeTypes';
|
|
2
|
-
export interface ToBPayParams {
|
|
3
|
-
source?: 'normal' | 'restore';
|
|
4
|
-
data: {
|
|
5
|
-
type?: string;
|
|
6
|
-
payMethod: {
|
|
7
|
-
id: string;
|
|
8
|
-
code: string;
|
|
9
|
-
type: string;
|
|
10
|
-
name: string;
|
|
11
|
-
};
|
|
12
|
-
params: {
|
|
13
|
-
orderId?: string | number;
|
|
14
|
-
symbol?: string;
|
|
15
|
-
amount: string;
|
|
16
|
-
surcharge?: string;
|
|
17
|
-
[key: string]: any;
|
|
18
|
-
};
|
|
19
|
-
mode: 'pay' | 'refund';
|
|
20
|
-
};
|
|
21
|
-
callback: ToBPayCallback;
|
|
22
|
-
}
|
|
23
|
-
export declare type ToBPayCallback = (res: {
|
|
24
|
-
status: string;
|
|
25
|
-
data: {
|
|
26
|
-
amount: number;
|
|
27
|
-
surPercentRate?: number;
|
|
28
|
-
surMoney?: number;
|
|
29
|
-
surcharge?: number;
|
|
30
|
-
uniquePaymentNumber?: string;
|
|
31
|
-
/**
|
|
32
|
-
* @description
|
|
33
|
-
* 支付组件返回的额外动作指令(例如:取消订单并开始新订单)
|
|
34
|
-
* PaymentModal 里会根据该字段执行对应流程。
|
|
35
|
-
*/
|
|
36
|
-
action?: 'cancel_order' | string;
|
|
37
|
-
};
|
|
38
|
-
msg?: string;
|
|
39
|
-
}) => void;
|
|
40
|
-
/**
|
|
41
|
-
* @title: 支付打开参数
|
|
42
|
-
*/
|
|
43
|
-
export interface PayOpenParams extends Omit<ToBPayParams, 'callback'> {
|
|
44
|
-
payCallback: (res: EftposPayResult | MX51PayResult) => void;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* @title: eftpos支付结果
|
|
48
|
-
*/
|
|
49
|
-
export interface EftposPayResult {
|
|
50
|
-
status: 'success' | 'fail';
|
|
51
|
-
params: {
|
|
52
|
-
amount: number;
|
|
53
|
-
surPercentRate: number;
|
|
54
|
-
surMoney: number;
|
|
55
|
-
uniquePaymentNumber: string;
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* @title: MX51支付结果
|
|
60
|
-
*/
|
|
61
|
-
export interface MX51PayResult {
|
|
62
|
-
result: boolean;
|
|
63
|
-
msg?: string;
|
|
64
|
-
amount: number;
|
|
65
|
-
surcharge: number;
|
|
66
|
-
uniquePaymentNumber: string;
|
|
67
|
-
nativeTxId: string;
|
|
68
|
-
action?: 'cancel_order' | string;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* @title 原生MX51支付结果
|
|
72
|
-
*/
|
|
73
|
-
export interface NativeMX51PayResult {
|
|
74
|
-
action?: 'cancel_order' | string;
|
|
75
|
-
code: string;
|
|
76
|
-
msg?: string;
|
|
77
|
-
data: {
|
|
78
|
-
amount: number;
|
|
79
|
-
surcharge: number;
|
|
80
|
-
};
|
|
81
|
-
uuid: string;
|
|
82
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import 'dayjs/locale/zh-cn';
|
|
3
|
-
import 'dayjs/locale/en';
|
|
4
|
-
import 'dayjs/locale/zh-tw';
|
|
5
|
-
import type { PisellReservationProps } from './types';
|
|
6
|
-
import './PisellReservation.less';
|
|
7
|
-
/**
|
|
8
|
-
* 预约看板 Core:内置 Sales 预约列表 + 时间轴 + 平面图。
|
|
9
|
-
* 页面壳 {@link PisellReservationBookingPage} / {@link PisellVenueControlPage} / PisellVenueWallPage 通过 props 组合默认行为。
|
|
10
|
-
*/
|
|
11
|
-
export declare const PisellReservationCore: React.FC<PisellReservationProps>;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import './BucketButtonGroup.less';
|
|
3
|
-
/**
|
|
4
|
-
* 通用「桶 → 底层 key 数组」按钮组,HUD 抽屉里的支付状态 / 预约状态快筛都走这个组件。
|
|
5
|
-
*
|
|
6
|
-
* 设计动机:
|
|
7
|
-
* - 业务方在抽屉里只关心少量"业务桶"(如未支付 / 已支付 / 在场),但底层枚举更细
|
|
8
|
-
* (`partially_paid` / `payment_processing` / `arrived` / `started` …);
|
|
9
|
-
* - 直接渲染所有底层 key 会有 7+ 个按钮把抽屉撑爆,且语义不连贯;
|
|
10
|
-
* - 桶 → 底层 key 多对一映射在前端组件里完成,写入 `searchParams.filter.values.<field>`
|
|
11
|
-
* 仍是底层 key 数组,与 Filter modal 的 multi-select / 后端查询参数完全兼容。
|
|
12
|
-
*
|
|
13
|
-
* "选中"判定:桶 keys 任一在 value 中即视为选中(容忍历史/边角态 key)。
|
|
14
|
-
* "切换"行为:选中 → 剔除该桶所有 key;未选中 → 加入该桶所有 key(保留 value 中已有非桶 key)。
|
|
15
|
-
*/
|
|
16
|
-
export interface BucketDef {
|
|
17
|
-
/** 桶唯一 id,仅用于 React key */
|
|
18
|
-
id: string;
|
|
19
|
-
/** 按钮文案(已经过国际化) */
|
|
20
|
-
label: string;
|
|
21
|
-
/** 该桶承载的底层 enum key 集合 */
|
|
22
|
-
keys: string[];
|
|
23
|
-
}
|
|
24
|
-
export interface BucketButtonGroupProps {
|
|
25
|
-
/** 由外层 Form 注入:底层 key 数组 */
|
|
26
|
-
value?: string[];
|
|
27
|
-
/** 由外层 Form 注入:底层 key 数组变更回调 */
|
|
28
|
-
onChange?: (v: string[]) => void;
|
|
29
|
-
/** 桶定义,按 UI 顺序 */
|
|
30
|
-
buckets: BucketDef[];
|
|
31
|
-
}
|
|
32
|
-
export declare function BucketButtonGroup(props: BucketButtonGroupProps): JSX.Element;
|
|
33
|
-
export default BucketButtonGroup;
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 预约页拆出的轻量子组件(无业务数据请求):
|
|
3
|
-
* - `RecordBoardBodyViewCapture`:同步 bodyView 到 ref,并可通知宿主;
|
|
4
|
-
* - `ScheduleSyncOnFloorEnter`:从表格回到平面图/日历、或从日历回到平面图时,用当前营业日 patch 列表时间窗口;
|
|
5
|
-
* - `PisellReservationToolbarTabs`:平面图/日历为日程带 + Segmented;表格 / 资源墙不展示日程带,仅 extraTabs;
|
|
6
|
-
* - `ReservationGridTopRight` / `PisellReservationScheduleEndActions` / `ReservationFloorMapCanvasTabsTrailing`:工具栏与画布尾区。
|
|
7
|
-
*/
|
|
8
|
-
import React from 'react';
|
|
9
|
-
import { type Dayjs } from 'dayjs';
|
|
10
|
-
import type { PisellFloorMapLayoutRef, RecordBoardBodyView, ReservationScheduleBandValue } from '@pisell/materials';
|
|
11
|
-
import type { PisellReservationProps } from '../types';
|
|
12
|
-
/** 无 UI:将 RecordBoard Context 中的 `bodyView` 写入 ref,并可选通知宿主(如预约页按视图切换 booking 的 form_record_ids) */
|
|
13
|
-
export declare function RecordBoardBodyViewCapture(props: {
|
|
14
|
-
bodyViewRef: React.MutableRefObject<RecordBoardBodyView>;
|
|
15
|
-
onBodyViewChange?: (v: RecordBoardBodyView) => void;
|
|
16
|
-
}): null;
|
|
17
|
-
/**
|
|
18
|
-
* 视图切换时统一收敛 `floorDayBookingData.searchParams`:
|
|
19
|
-
* - 从 grid / 任意非视图区切到 floorMap / calendar / resourceWall 时,锚定当前营业日单日窗;
|
|
20
|
-
* - 从 calendar / resourceWall 切回 floorMap 时,除锚定单日窗外,必须清掉 calendar 周/月视图写入的
|
|
21
|
-
* `compact_fields` / `enable_remote_memory_cache`(否则 osServer 在非今日锚定下会走 compact with,
|
|
22
|
-
* booking 缺失 resources,平面图合并落空);
|
|
23
|
-
* - 从 calendar 切到 grid / resourceWall 时,单独清 calendar-only flags,避免之后再切回 floorMap 时残留。
|
|
24
|
-
*
|
|
25
|
-
* 注意:此组件必须常驻挂载(放在 `<PisellRecordBoard>` 内、`<ShellFrame>` 外),
|
|
26
|
-
* 否则 ShellFrame 会按 bodyView 条件渲染 children,导致它只在 grid 视图下挂载而无法观测到切换事件。
|
|
27
|
-
*/
|
|
28
|
-
export declare function ScheduleSyncOnFloorEnter(props: {
|
|
29
|
-
schedule: ReservationScheduleBandValue;
|
|
30
|
-
isInternalListData: boolean;
|
|
31
|
-
patchSearchParams: (updater: (prev: Record<string, unknown>) => Record<string, unknown>) => void;
|
|
32
|
-
/** 店铺 core `operating_day_boundary`,与列表 `booking_time_start_between` / 顶栏一致 */
|
|
33
|
-
operatingDayBoundary?: unknown;
|
|
34
|
-
}): null;
|
|
35
|
-
export declare type PisellReservationToolbarTabsProps = {
|
|
36
|
-
extraTabs?: React.ReactNode;
|
|
37
|
-
schedule: ReservationScheduleBandValue;
|
|
38
|
-
onScheduleChange: (next: ReservationScheduleBandValue) => void;
|
|
39
|
-
scheduleProps?: PisellReservationProps['scheduleProps'];
|
|
40
|
-
timeNavigatorProps?: PisellReservationProps['timeNavigatorProps'];
|
|
41
|
-
scheduleStartSlot?: React.ReactNode;
|
|
42
|
-
scheduleEndSlot?: React.ReactNode;
|
|
43
|
-
followWallClock: boolean;
|
|
44
|
-
onFollowWallClockToggle: () => void;
|
|
45
|
-
onTimeNavigatorUserInteraction: () => void;
|
|
46
|
-
loadDensity?: (params: {
|
|
47
|
-
referenceDate: Dayjs;
|
|
48
|
-
stepMinutes: number;
|
|
49
|
-
}) => Promise<number[]>;
|
|
50
|
-
/** 日历视图下顶栏日程切换步长(日 / 周 / 月) */
|
|
51
|
-
calendarGranularity?: 'day' | 'week' | 'month';
|
|
52
|
-
};
|
|
53
|
-
/**
|
|
54
|
-
* 顶栏 tabs:**仅平面图、日历**下为日程带 + 时间轴 + 标题旁切换;表格 / 资源墙不展示 ScheduleBand,
|
|
55
|
-
* 切换器由 RecordBoard 工具栏顶行承担(表格态在 Find 左侧;资源墙无 Find 时在顶行左侧),与历史行为一致。
|
|
56
|
-
*/
|
|
57
|
-
export declare function PisellReservationToolbarTabs(props: PisellReservationToolbarTabsProps): JSX.Element | null;
|
|
58
|
-
/** 表格视图时展示工具栏右上角透传;平面图时收起(编辑入口在画布 Tab 行右侧) */
|
|
59
|
-
export declare function ReservationGridTopRight(props: {
|
|
60
|
-
extra?: React.ReactNode;
|
|
61
|
-
}): JSX.Element | null;
|
|
62
|
-
export declare type PisellReservationScheduleEndActionsProps = {
|
|
63
|
-
onNewReservation?: () => void;
|
|
64
|
-
calendarGranularity?: 'day' | 'week' | 'month';
|
|
65
|
-
onCalendarGranularityChange?: (u: 'day' | 'week' | 'month') => void;
|
|
66
|
-
};
|
|
67
|
-
/** 顶栏日程带右侧:日历粒度(与左上角 Segmented 同款)+ 新建 */
|
|
68
|
-
export declare function PisellReservationScheduleEndActions(props: PisellReservationScheduleEndActionsProps): JSX.Element;
|
|
69
|
-
export declare type ReservationFloorMapCanvasTabsTrailingProps = {
|
|
70
|
-
isFloorModeControlled: boolean;
|
|
71
|
-
mapEditInternal: boolean;
|
|
72
|
-
setMapEditInternal: React.Dispatch<React.SetStateAction<boolean>>;
|
|
73
|
-
floorMapLayoutRef: React.RefObject<PisellFloorMapLayoutRef | null>;
|
|
74
|
-
};
|
|
75
|
-
/** 平面图左下 Dock 展开区:编辑 / 完成编辑(经 PisellFloorMapLayout.viewportDockTrailing) */
|
|
76
|
-
export declare function ReservationFloorMapCanvasTabsTrailing(props: ReservationFloorMapCanvasTabsTrailingProps): JSX.Element | null;
|
|
77
|
-
/** 默认顶栏标题 slot */
|
|
78
|
-
export declare function ReservationDefaultScheduleStart(): JSX.Element;
|
|
79
|
-
/** 场控页顶栏标题 slot */
|
|
80
|
-
export declare function ReservationVenueScheduleStart(): JSX.Element;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
/**
|
|
3
|
-
* HUD 抽屉里的「预约状态」快筛桶配置:
|
|
4
|
-
*
|
|
5
|
-
* - **未到店 / no show**:`no_show`
|
|
6
|
-
* - **已完成 / completed**:`completed`
|
|
7
|
-
* - **在场 / on site**:`arrived` + `started`
|
|
8
|
-
* - 业务侧「客人已到 → 在场」的语义合并,无需让用户记住 `arrived` / `started` 两态差异。
|
|
9
|
-
*
|
|
10
|
-
* 写入 `searchParams.filter.values.appointment_status` 仍是底层 enum 数组,
|
|
11
|
-
* 与 hudDrawerLocalListQuery / Filter modal multi-select 形态完全兼容。
|
|
12
|
-
*
|
|
13
|
-
* **不入桶**:`new` / `confirmed` / `cancelled` —— 抽屉聚焦"当下进行 / 历史结算"两类需要立即关注的状态,
|
|
14
|
-
* 待确认 / 已取消属于"前置 / 终止"态,业务侧不在抽屉桶内暴露;如需要细查走 Filter modal 不影响。
|
|
15
|
-
*/
|
|
16
|
-
export interface ReservationBookingStatusButtonFilterProps {
|
|
17
|
-
value?: string[];
|
|
18
|
-
onChange?: (v: string[]) => void;
|
|
19
|
-
}
|
|
20
|
-
export declare function ReservationBookingStatusButtonFilter(props: ReservationBookingStatusButtonFilterProps): JSX.Element;
|
|
21
|
-
export default ReservationBookingStatusButtonFilter;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
/**
|
|
3
|
-
* HUD 抽屉顶栏:把预约状态 + 支付状态两组桶放进同一 QuickFilter 项,减少 Space / Form.Item 嵌套。
|
|
4
|
-
* 字段仍写入 `filter.values.appointment_status` / `order_payment_status`,与 Filter 弹层共用。
|
|
5
|
-
*/
|
|
6
|
-
export declare function ReservationHudDrawerQuickFilters(): JSX.Element;
|
|
7
|
-
export default ReservationHudDrawerQuickFilters;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import { type BucketDef } from './BucketButtonGroup';
|
|
3
|
-
export declare type ReservationHudDrawerResourceRailProps = {
|
|
4
|
-
className?: string;
|
|
5
|
-
/** 与 Filter「Resource」树第一层一致,由 {@link buildResourceRootBuckets} 生成 */
|
|
6
|
-
buckets: BucketDef[];
|
|
7
|
-
/**
|
|
8
|
-
* 与 `searchParams.filter.values.form_record_ids` 一致(底层 id 集合,多桶间为并集)
|
|
9
|
-
*/
|
|
10
|
-
value: string[];
|
|
11
|
-
onChange: (next: string[]) => void;
|
|
12
|
-
/** 侧栏无障碍名称 */
|
|
13
|
-
ariaLabel?: string;
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* HUD 抽屉:表格右侧竖栏,桶按钮与顶栏 quick filter 同组件,筛 `form_record_ids`。
|
|
17
|
-
*/
|
|
18
|
-
export declare function ReservationHudDrawerResourceRail(props: ReservationHudDrawerResourceRailProps): JSX.Element | null;
|
|
19
|
-
export default ReservationHudDrawerResourceRail;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
/**
|
|
3
|
-
* HUD 抽屉里的「支付状态」快筛桶配置:
|
|
4
|
-
*
|
|
5
|
-
* - **未支付**:unpaid / partially_paid / payment_processing
|
|
6
|
-
* - `paymentStatusForMatch` 把 `partially_paid` 归一为 `unpaid`,
|
|
7
|
-
* 不带 `partially_paid` 同一行会因发起 / 已部分付不一致漏选;
|
|
8
|
-
* - `payment_processing` 业务侧定义为待回执(未到账),同入未支付。
|
|
9
|
-
* - **已支付**:paid / partially_refunded / refunded
|
|
10
|
-
* - 退款语义上"曾支付过",与底层卡片 `PaymentStamp` 的"已盖章"判定一致。
|
|
11
|
-
* - **不入桶**:authorized / voided —— booking 业务里几乎不出现(仅 order 直购流程可能出现),
|
|
12
|
-
* 刻意不进入这两个桶,避免桶语义被边角态污染。如未来业务需要可在 buckets 加 key。
|
|
13
|
-
*/
|
|
14
|
-
export interface ReservationPaymentStatusButtonFilterProps {
|
|
15
|
-
value?: string[];
|
|
16
|
-
onChange?: (v: string[]) => void;
|
|
17
|
-
}
|
|
18
|
-
export declare function ReservationPaymentStatusButtonFilter(props: ReservationPaymentStatusButtonFilterProps): JSX.Element;
|
|
19
|
-
export default ReservationPaymentStatusButtonFilter;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/** 深拷贝筛参(无函数;与 RecordBoard searchParams 结构一致) */
|
|
2
|
-
export declare function cloneHudDrawerSearchParams(params: Record<string, unknown> | undefined): Record<string, unknown>;
|
|
3
|
-
/**
|
|
4
|
-
* 抽屉内去掉 Monitor 预约日期快筛;从 `filter.values` 移除对应键,避免本地列表仍按父级日期段收窄。
|
|
5
|
-
*/
|
|
6
|
-
export declare function stripHudDrawerBookingDateQuickFilter(params: Record<string, unknown>): void;
|
|
7
|
-
/**
|
|
8
|
-
* 抽屉打开时:桶按钮(预约态 / 支付态 / 右侧资源)默认全部不选中。
|
|
9
|
-
* 仍继承父级其它筛参(关键词、订单态等);仅清空与 HUD 平铺桶绑定的多选字段。
|
|
10
|
-
*/
|
|
11
|
-
export declare function stripHudDrawerBucketFilterDefaults(params: Record<string, unknown>): void;
|
|
12
|
-
/**
|
|
13
|
-
* 合并抽屉内 onSearch 增量(与顶栏 Filter 行为对齐:filter.values 深合并)。
|
|
14
|
-
*/
|
|
15
|
-
export declare function mergeHudDrawerSearchParams(prev: Record<string, unknown>, incoming: Record<string, unknown>): Record<string, unknown>;
|
|
16
|
-
/**
|
|
17
|
-
* 在「画布资源子集」行上做 keyword + filter.values 本地过滤 + sort。
|
|
18
|
-
* 与 Monitor `getFilterButtonList` 常见项对齐(支付/预约态/订单态/渠道/人数/金额/资源/时间窗等);未覆盖字段忽略。
|
|
19
|
-
*/
|
|
20
|
-
export declare function applyHudDrawerLocalListQuery(rows: Record<string, unknown>[], searchParams: Record<string, unknown>): Record<string, unknown>[];
|