@pisell/private-materials 6.11.144 → 6.11.146
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 +16 -9
- 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 +14 -7
- package/lib/plus/pisellReservation/floorMap/reservationMock.js +10 -1
- package/package.json +2 -2
- 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/components/ticketBooking/dialog.d.ts +0 -42
- 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/reservationCards.d.ts +0 -16
- package/es/plus/pisellReservation/floorMap/reservationHudResourceRootBuckets.d.ts +0 -16
- package/es/plus/pisellReservation/floorMap/reservationMock.d.ts +0 -76
- package/es/plus/pisellReservation/floorMap/useReservationFloorMapMerged.d.ts +0 -46
- 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/components/ticketBooking/dialog.d.ts +0 -42
- 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/reservationCards.d.ts +0 -16
- package/lib/plus/pisellReservation/floorMap/reservationHudResourceRootBuckets.d.ts +0 -16
- package/lib/plus/pisellReservation/floorMap/reservationMock.d.ts +0 -76
- package/lib/plus/pisellReservation/floorMap/useReservationFloorMapMerged.d.ts +0 -46
- 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
|
@@ -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,42 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import './dialog.less';
|
|
3
|
-
import { ProductDisplayPresetKey } from './components/ProductDisplayAdapter/types';
|
|
4
|
-
/**
|
|
5
|
-
* 新建模式配置,与 order_id 互斥。
|
|
6
|
-
* 外部预选好部分数据后通过此配置直接唤起卖票弹窗的新建流程。
|
|
7
|
-
*/
|
|
8
|
-
interface CreateModeConfig {
|
|
9
|
-
/** 预填充的 modalState 片段(客户、商品、日期等任意字段) */
|
|
10
|
-
initialModalState?: Record<string, any>;
|
|
11
|
-
/** 必传,决定商品类型和子类型 */
|
|
12
|
-
bookingConfigParams: Record<string, any>;
|
|
13
|
-
/** 商品展示配置,默认 'sku-list-a2' */
|
|
14
|
-
productDisplayConfig?: ProductDisplayPresetKey;
|
|
15
|
-
/** 业务编码 */
|
|
16
|
-
businessCode?: string;
|
|
17
|
-
/** 餐牌 ID 列表,存在且非空时覆盖 getProducts 的 menu_list_ids */
|
|
18
|
-
associated_menu_list_ids?: number[];
|
|
19
|
-
/**
|
|
20
|
-
* 入口订单类型意图;存在时 `formatValues` 最终将 `values.type` 设为该值(如桌位单 `table-order`)。
|
|
21
|
-
*/
|
|
22
|
-
order_type?: string;
|
|
23
|
-
}
|
|
24
|
-
interface TicketBookingDialogProps {
|
|
25
|
-
open: boolean;
|
|
26
|
-
order_id?: number;
|
|
27
|
-
onClose?: () => void;
|
|
28
|
-
callback?: (result: any) => void;
|
|
29
|
-
rulesHooks: any;
|
|
30
|
-
/** 新建模式配置,与 order_id 互斥 */
|
|
31
|
-
createModeConfig?: CreateModeConfig;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* TicketBooking dialog wrapper,支持编辑模式和新建模式。
|
|
35
|
-
*
|
|
36
|
-
* - 编辑模式:传入 order_id,拉取详情后渲染 TicketBooking。
|
|
37
|
-
* - 新建模式:传入 createModeConfig(含预填充 modalState),跳过 API 直接渲染。
|
|
38
|
-
*
|
|
39
|
-
* 两种模式互斥,优先判断 order_id。
|
|
40
|
-
*/
|
|
41
|
-
declare function TicketBookingDialog(props: TicketBookingDialogProps): JSX.Element;
|
|
42
|
-
export default TicketBookingDialog;
|
|
@@ -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>[];
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 内置列表模式下:资源台位行(每张桌 id=平面图 dataBinding.recordId) +
|
|
3
|
-
* 当日预约列表(宿主 getResourceBookingList 或 `floorDayBookingList`)→ merge 成平面图 dataSources.tables。
|
|
4
|
-
* 预约子集由接口侧 `form_record_ids`(画布绑定资源)与 `booking_time_start_between`(营业日窗)约束,
|
|
5
|
-
* **不再**按顶栏日程 `at` 游标做「当前时刻可见」二次筛选。
|
|
6
|
-
*/
|
|
7
|
-
import type { ReservationScheduleBandValue } from '@pisell/materials';
|
|
8
|
-
import type { PisellReservationTableRow } from '../types';
|
|
9
|
-
/**
|
|
10
|
-
* 将宿主 `sales.getResourceBookingList` 的返回值规范为 booking 项数组(便于走 bookingListToReservationTableRows)
|
|
11
|
-
*/
|
|
12
|
-
export declare function normalizeSalesResourceBookingListResult(raw: unknown): unknown[];
|
|
13
|
-
export declare function buildReservationMergedTableRows(options: {
|
|
14
|
-
dataSourcesProp?: Record<string, unknown>;
|
|
15
|
-
gridDataSourceKey: string;
|
|
16
|
-
isInternalListData: boolean;
|
|
17
|
-
resourceList: unknown[];
|
|
18
|
-
floorDayBookingList: unknown[];
|
|
19
|
-
schedule: ReservationScheduleBandValue;
|
|
20
|
-
dataProp: unknown[] | null | undefined;
|
|
21
|
-
/**
|
|
22
|
-
* 若宿主存在 `sales.getResourceBookingList`,其解析后的列表将写入此处;
|
|
23
|
-
* 有值时优先用于与资源桌合并(每张桌按其资源 id 对应预约)。
|
|
24
|
-
* `null` / `undefined` 表示使用 `floorDayBookingList` 全量(已由接口按画布资源等筛过)。
|
|
25
|
-
*/
|
|
26
|
-
salesResourceBookings?: unknown[] | null;
|
|
27
|
-
}): PisellReservationTableRow[];
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 预约平面图视口悬浮:当前画布桌位总数与各状态数量(空闲 / 预约 / 使用中等)
|
|
3
|
-
*/
|
|
4
|
-
import React from 'react';
|
|
5
|
-
import { type FloorMapDataSources, type FloorMapMergedItem } from '@pisell/materials';
|
|
6
|
-
import './ReservationFloorMapHud.less';
|
|
7
|
-
/** 场控左下抽屉:无台位且未展开时可隐藏整块 */
|
|
8
|
-
export declare function reservationFloorMapHudSeatStatsTotal(items: FloorMapMergedItem[], dataSources: FloorMapDataSources | undefined): number;
|
|
9
|
-
export declare type ReservationFloorMapHudStatsBarProps = {
|
|
10
|
-
items: FloorMapMergedItem[];
|
|
11
|
-
dataSources: FloorMapDataSources | undefined;
|
|
12
|
-
/** 右侧操作(overlay 下箭头 / Sheet 关闭等) */
|
|
13
|
-
rightSlot: React.ReactNode;
|
|
14
|
-
/**
|
|
15
|
-
* true:无台位时不渲染(与底栏 HUD 一致);
|
|
16
|
-
* false:Sheet 顶栏无台位时仍保留一行,仅展示右侧 slot
|
|
17
|
-
*/
|
|
18
|
-
hideWhenNoSeats?: boolean;
|
|
19
|
-
className?: string;
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* 横向状态统计 + 右侧 slot:底栏 HUD 与 Sheet 顶栏共用(方案 A:两处可同时展示相同统计)。
|
|
23
|
-
*/
|
|
24
|
-
export declare function ReservationFloorMapHudStatsBar(props: ReservationFloorMapHudStatsBarProps): JSX.Element | null;
|
|
25
|
-
export declare type ReservationFloorMapHudTitleBarProps = {
|
|
26
|
-
items: FloorMapMergedItem[];
|
|
27
|
-
dataSources: FloorMapDataSources | undefined;
|
|
28
|
-
/** 收起态:展开画布列表;展开态:收起 */
|
|
29
|
-
actionMode: 'expand' | 'collapse';
|
|
30
|
-
onAction: () => void;
|
|
31
|
-
/** 嵌入 Sheet 顶栏时不画浮层卡片(避免双边线) */
|
|
32
|
-
embedded?: boolean;
|
|
33
|
-
className?: string;
|
|
34
|
-
};
|
|
35
|
-
/**
|
|
36
|
-
* 场控:单行标题栏 = 标题 + 内联统计 + 展开/收起,与 Sheet 顶栏共用。
|
|
37
|
-
*/
|
|
38
|
-
export declare function ReservationFloorMapHudTitleBar(props: ReservationFloorMapHudTitleBarProps): JSX.Element | null;
|
|
39
|
-
export interface ReservationFloorMapHudProps {
|
|
40
|
-
items: FloorMapMergedItem[];
|
|
41
|
-
dataSources: FloorMapDataSources | undefined;
|
|
42
|
-
/** 为 true 时左下标题栏:标题 + 统计 + 展开/收起(抽屉打开时仍保留,不「整块消失」) */
|
|
43
|
-
interactive?: boolean;
|
|
44
|
-
onRequestOpenTable?: () => void;
|
|
45
|
-
onRequestCloseTable?: () => void;
|
|
46
|
-
/** 画布资源列表抽屉是否已打开 */
|
|
47
|
-
tableDrawerOpen?: boolean;
|
|
48
|
-
}
|
|
49
|
-
export declare function ReservationFloorMapHud(props: ReservationFloorMapHudProps): JSX.Element | null;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export interface ReservationHudDrawerHandleProps {
|
|
3
|
-
/** 关闭抽屉。点击或下拖超过阈值时调用。 */
|
|
4
|
-
onClose: () => void;
|
|
5
|
-
/**
|
|
6
|
-
* 触发关闭的下拖位移阈值(px)。短促的微小拖动不算关闭,避免误触;
|
|
7
|
-
* 用户从手柄向下「甩一下」即可关。默认 80px ≈ 一个手指节。
|
|
8
|
-
*/
|
|
9
|
-
closeOffsetPx?: number;
|
|
10
|
-
/**
|
|
11
|
-
* 抽屉根节点 ref:拖动时给它实时打 transform: translateY,让面板跟着手指走;
|
|
12
|
-
* 松手后再决定「滑回原位」或「滑出关闭」。可不传——不传则只做关闭决策、不做跟随动画。
|
|
13
|
-
*/
|
|
14
|
-
drawerRef?: React.RefObject<HTMLElement | null>;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* 抽屉顶端的「抓手 + 拍击区」:
|
|
18
|
-
* - 视觉上是一条居中的胶囊形 bar,给用户一个「这里可以拖 / 可以点」的暗示;
|
|
19
|
-
* - 点击:直接关闭抽屉;
|
|
20
|
-
* - 指针下拖:传入 drawerRef 时,面板会实时跟随手指下移;
|
|
21
|
-
* • 松手时位移 ≥ closeOffsetPx → 平滑滑出底部并关闭;
|
|
22
|
-
* • 否则回弹到原位。
|
|
23
|
-
*
|
|
24
|
-
* 直接 mutate `drawerRef.current.style.transform` 而不是走 React state,是因为
|
|
25
|
-
* 拖动每一帧都重渲染整个抽屉(PisellRecordBoard + 表格)开销太大。命令式风格
|
|
26
|
-
* 把动画限制在 DOM 层、React 树不参与,掉帧风险最小。组件卸载 / 关闭后由抽屉
|
|
27
|
-
* 节点本身被 unmount 一并清理,不留残留 inline style。
|
|
28
|
-
*/
|
|
29
|
-
export declare const ReservationHudDrawerHandle: React.FC<ReservationHudDrawerHandleProps>;
|
|
30
|
-
export default ReservationHudDrawerHandle;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { type FloorMapMergedItem, type FloorMapDataSources } from '@pisell/materials';
|
|
3
|
-
import type { PisellReservationTableRow } from '../types';
|
|
4
|
-
import './ReservationCards.less';
|
|
5
|
-
export declare function findReservationRow(item: FloorMapMergedItem, dataSources: FloorMapDataSources): PisellReservationTableRow | undefined;
|
|
6
|
-
export declare function renderReservationTableCard(item: FloorMapMergedItem, dataSources: FloorMapDataSources): React.ReactNode;
|
|
7
|
-
export declare function renderReservationPartyCard(item: FloorMapMergedItem, dataSources: FloorMapDataSources): React.ReactNode;
|
|
8
|
-
export declare function renderReservationBarCard(item: FloorMapMergedItem, dataSources: FloorMapDataSources): React.ReactNode;
|
|
9
|
-
export declare function getReservationRenderItemByKind(dataSources: FloorMapDataSources): {
|
|
10
|
-
[x: number]: (item: FloorMapItemBase, _index: number, _options?: any) => any;
|
|
11
|
-
reservationBoundTable: (item: FloorMapItemBase, _index: number, _options?: any) => React.ReactNode;
|
|
12
|
-
reservationBoundRoundTable: (item: FloorMapItemBase, _index: number, _options?: any) => React.ReactNode;
|
|
13
|
-
reservationTable: (item: FloorMapItemBase, _index: number, _options?: any) => React.ReactNode;
|
|
14
|
-
reservationPartyBench: (item: FloorMapItemBase, _index: number, _options?: any) => React.ReactNode;
|
|
15
|
-
reservationBarSeat: (item: FloorMapItemBase, _index: number, _options?: any) => React.ReactNode;
|
|
16
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* HUD 抽屉右侧竖栏:与 Filter「Resource」同源,写入 `filter.values.form_record_ids`。
|
|
3
|
-
* 资源列表来自 GET /shop/form/resource/page。
|
|
4
|
-
*
|
|
5
|
-
* 优先按列表内 `parent_id` 推断树的第一层节点;若父链缺失会导致「每条记录都是根」、按钮爆炸,
|
|
6
|
-
* 则回退为按 `form_id`(资源所属表单)聚合——对应 Filter 里顶层资源类型/主类,而非单个 form_record。
|
|
7
|
-
*/
|
|
8
|
-
import type { BucketDef } from '../components/BucketButtonGroup';
|
|
9
|
-
/** 与抽屉 / Filter 共用的 `searchParams.filter.values.form_record_ids` 读取 */
|
|
10
|
-
export declare function extractFilterFormRecordIds(searchParams: Record<string, unknown>): string[];
|
|
11
|
-
/**
|
|
12
|
-
* 从 form/resource/page 扁平 list 构建第一层桶。
|
|
13
|
-
* - 列表内父子链完整时:与 TreeSelect 第一层语义一致(根及其子树 id);
|
|
14
|
-
* - 父链缺失导致伪根过多时:按 `form_id` 聚合为「主类」桶,避免竖栏铺满具体资源名。
|
|
15
|
-
*/
|
|
16
|
-
export declare function buildResourceRootBuckets(rawList: unknown[]): BucketDef[];
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import { type FloorMapElementKindCategory, type FloorMapElementKindConfig, type FloorMapSceneElement, type FloorMapViewConfig } from '@pisell/materials';
|
|
2
|
-
import type { PisellReservationTableRow } from '../types';
|
|
3
|
-
/**
|
|
4
|
-
* 父级/接口 elementKinds 与预约默认合并:
|
|
5
|
-
* - 去掉与 Story 图片图元重复的旧版种类;
|
|
6
|
-
* - 远程若已有 `floorMapImage` 也先去掉,统一用 defaults 里那份(避免两套「图片底图」并存)。
|
|
7
|
-
*/
|
|
8
|
-
export declare function mergeFloorMapElementKindsWithDefaults(defaults: FloorMapElementKindConfig[], remote: FloorMapElementKindConfig[] | undefined): FloorMapElementKindConfig[];
|
|
9
|
-
/** 同上,补全图元分类(如「底图」),避免调色板分组缺失 */
|
|
10
|
-
export declare function mergeFloorMapElementKindCategoriesWithDefaults(defaults: FloorMapElementKindCategory[], remote: FloorMapElementKindCategory[] | undefined): FloorMapElementKindCategory[];
|
|
11
|
-
/**
|
|
12
|
-
* 按当前 {@link locales} 刷新调色板分组、图元展示名(底图 / 资源绑定等)。
|
|
13
|
-
* 持久化里若仍使用约定 `categoryId`:`background`、`dining` 与约定 kind value,会覆盖旧快照文案以便随引擎语言切换。
|
|
14
|
-
*/
|
|
15
|
-
export declare function applyReservationFloorMapLiveLabels(config: FloorMapViewConfig): FloorMapViewConfig;
|
|
16
|
-
/**
|
|
17
|
-
* 预约平面图「绑定桌位」唯一图元 value(与底图 `floorMapImage` 并存)。
|
|
18
|
-
* 旧版方桌 / 长条 / 吧台图元仍可从接口 scene 回显,渲染走同一套房间卡片。
|
|
19
|
-
*/
|
|
20
|
-
export declare const RESERVATION_BOUND_TABLE_ELEMENT_KIND: "reservationBoundTable";
|
|
21
|
-
/** 绑定圆桌位:与方桌同一数据源与卡片逻辑,默认 `shape: circle` */
|
|
22
|
-
export declare const RESERVATION_BOUND_ROUND_TABLE_ELEMENT_KIND: "reservationBoundRoundTable";
|
|
23
|
-
/** 与设计稿一致的预约桌位 mock(表格 + 平面图同源) */
|
|
24
|
-
export declare const defaultReservationTableRows: PisellReservationTableRow[];
|
|
25
|
-
/**
|
|
26
|
-
* 默认平面图图元(唯一真相源)。
|
|
27
|
-
* 有 floorMapConfig 时 PisellFloorMapLayout 强制 itemUnit=pixel,故 x/y/width/height 均为「像素」,非格子数。
|
|
28
|
-
*/
|
|
29
|
-
export declare const defaultReservationSceneElements: FloorMapSceneElement[];
|
|
30
|
-
/** 由 sceneElements 派生的落位摘要(数值与 sceneElements 一致,均为像素;兼容旧引用) */
|
|
31
|
-
export declare const reservationDataSourcePlacements: {
|
|
32
|
-
dataSourceKey: string;
|
|
33
|
-
id: string;
|
|
34
|
-
floorMapId: string;
|
|
35
|
-
x: number;
|
|
36
|
-
y: number;
|
|
37
|
-
name: string;
|
|
38
|
-
width: number;
|
|
39
|
-
height: number;
|
|
40
|
-
elementKind: string;
|
|
41
|
-
shape?: "circle" | undefined;
|
|
42
|
-
}[];
|
|
43
|
-
/**
|
|
44
|
-
* 将落位表转为 sceneElements(外部自定义 placements 时用)。
|
|
45
|
-
* 与 RecordBoard 平面图一致时,x/y/width/height 应为像素(floorMap 视图下 itemUnit 为 pixel)。
|
|
46
|
-
*/
|
|
47
|
-
export declare function reservationPlacementsToSceneElements(placements: Array<{
|
|
48
|
-
dataSourceKey: string;
|
|
49
|
-
id: string;
|
|
50
|
-
floorMapId: string;
|
|
51
|
-
x: number;
|
|
52
|
-
y: number;
|
|
53
|
-
name: string;
|
|
54
|
-
width: number;
|
|
55
|
-
height: number;
|
|
56
|
-
elementKind: string;
|
|
57
|
-
shape?: 'circle';
|
|
58
|
-
}>): FloorMapSceneElement[];
|
|
59
|
-
export declare type ReservationFloorMapConfigPersisted = FloorMapViewConfig;
|
|
60
|
-
/**
|
|
61
|
-
* 预约页默认平面图壳子:画布/图元种类与 mock 一致,但不带演示 sceneElements。
|
|
62
|
-
* 生产态布局以 floor-plan 接口与编辑保存为准。
|
|
63
|
-
*/
|
|
64
|
-
export declare function getReservationFloorMapShellConfig(): ReservationFloorMapConfigPersisted;
|
|
65
|
-
/** 平面图初始配置:sceneElements 使用上方完整 width/height,勿仅依赖派生表 */
|
|
66
|
-
export declare function getDefaultReservationFloorMapConfig(): ReservationFloorMapConfigPersisted;
|
|
67
|
-
/** 平面图侧栏数据源记录表单列(随当前语言刷新) */
|
|
68
|
-
export declare function getReservationDataSourceFormColumns(): ({
|
|
69
|
-
key: string;
|
|
70
|
-
label: any;
|
|
71
|
-
type: "string";
|
|
72
|
-
} | {
|
|
73
|
-
key: string;
|
|
74
|
-
label: any;
|
|
75
|
-
type: "number";
|
|
76
|
-
})[];
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 合并 RecordBoard.floorMap 与预约默认:持久化 onSave、画布 Tab 尾区、缩放/平移等
|
|
3
|
-
*/
|
|
4
|
-
import React from 'react';
|
|
5
|
-
import type { FloorMapDataSources, FloorMapMergedItem, FloorMapViewConfig, FloorMapViewportOverlayRenderArgs, PisellFloorMapLayoutRef, RecordBoardProps } from '@pisell/materials';
|
|
6
|
-
import { getReservationRenderItemByKind } from './reservationCards';
|
|
7
|
-
export interface UseReservationFloorMapMergedParams {
|
|
8
|
-
floorMapProp: RecordBoardProps['floorMap'];
|
|
9
|
-
baseFloorConfig: FloorMapViewConfig;
|
|
10
|
-
dataSources: FloorMapDataSources;
|
|
11
|
-
renderItemByKind: ReturnType<typeof getReservationRenderItemByKind>;
|
|
12
|
-
gridDataSourceKey: string;
|
|
13
|
-
effectiveMapMode: 'read' | 'edit';
|
|
14
|
-
resolvedFloorPlanId: number | null;
|
|
15
|
-
floorPlanRemoteId: number | null;
|
|
16
|
-
effectiveFloorPlanCode: string;
|
|
17
|
-
floorPlanCanvasWidth?: number;
|
|
18
|
-
floorPlanCanvasHeight?: number;
|
|
19
|
-
floorPlanName?: Record<string, string>;
|
|
20
|
-
floorPlanSort?: number;
|
|
21
|
-
floorPlanStatus?: number;
|
|
22
|
-
onFloorPlanPersisted?: () => void;
|
|
23
|
-
putFloorPlan?: (id: number, body: Record<string, unknown>) => Promise<unknown>;
|
|
24
|
-
isFloorModeControlled: boolean;
|
|
25
|
-
mapEditInternal: boolean;
|
|
26
|
-
setMapEditInternal: React.Dispatch<React.SetStateAction<boolean>>;
|
|
27
|
-
floorMapLayoutRef: React.RefObject<PisellFloorMapLayoutRef | null>;
|
|
28
|
-
reservationFloorMapViewportOverlay: (args: FloorMapViewportOverlayRenderArgs) => React.ReactNode;
|
|
29
|
-
setRemoteFloorPlanView: React.Dispatch<React.SetStateAction<Partial<FloorMapViewConfig> | null>>;
|
|
30
|
-
/**
|
|
31
|
-
* 平面图图元点击时先于 `floorMap.onItemClick` 调用;用于只读态打开宿主抽屉等。
|
|
32
|
-
* `dataSources` 与合并后的 `floorMap.dataSources` 一致。
|
|
33
|
-
*/
|
|
34
|
-
floorMapItemClickBefore?: (args: {
|
|
35
|
-
item: FloorMapMergedItem;
|
|
36
|
-
index: number;
|
|
37
|
-
event: React.MouseEvent<HTMLElement>;
|
|
38
|
-
mode: 'read' | 'edit';
|
|
39
|
-
dataSources: FloorMapDataSources;
|
|
40
|
-
}) => void;
|
|
41
|
-
/** 与引擎语言同步,避免 dataSourceLabels 等停留在首次渲染语言 */
|
|
42
|
-
engineLocale: string;
|
|
43
|
-
/** 场控等:HUD 表抽屉开启时视口叠加层锚左下、Dock 默认右下(可由 floorMap 显式覆盖) */
|
|
44
|
-
floorMapHudTableDrawer?: boolean;
|
|
45
|
-
}
|
|
46
|
-
export declare function useReservationFloorMapMerged(params: UseReservationFloorMapMergedParams): any;
|