refactor(floorplan): 重构平面图组件与样式
- 移除未使用的编辑模式、热力图、搜索等功能 - 将样式代码抽离到独立样式文件 - 优化工具栏和缩放控制组件实现 - 添加导出图片功能 - 简化上下文状态管理 - 优化设备提示框和空状态显示
This commit is contained in:
@@ -4,13 +4,9 @@ const initialState = {
|
||||
selectedRoomId: null,
|
||||
selectedRack: null,
|
||||
hoveredRack: null,
|
||||
viewMode: 'standard',
|
||||
heatMapDimension: 'utilization',
|
||||
editMode: false,
|
||||
zoom: 1,
|
||||
offsetX: 0,
|
||||
offsetY: 0,
|
||||
searchRackId: null,
|
||||
detailRack: null,
|
||||
detailVisible: false,
|
||||
};
|
||||
@@ -19,10 +15,7 @@ const actionTypes = {
|
||||
SET_SELECTED_ROOM: 'SET_SELECTED_ROOM',
|
||||
SET_SELECTED_RACK: 'SET_SELECTED_RACK',
|
||||
SET_HOVERED_RACK: 'SET_HOVERED_RACK',
|
||||
SET_VIEW_MODE: 'SET_VIEW_MODE',
|
||||
SET_EDIT_MODE: 'SET_EDIT_MODE',
|
||||
SET_VIEW_CHANGE: 'SET_VIEW_CHANGE',
|
||||
SET_SEARCH_RACK: 'SET_SEARCH_RACK',
|
||||
SHOW_DETAIL: 'SHOW_DETAIL',
|
||||
HIDE_DETAIL: 'HIDE_DETAIL',
|
||||
RESET: 'RESET',
|
||||
@@ -36,7 +29,6 @@ function floorPlanReducer(state, action) {
|
||||
selectedRoomId: action.payload,
|
||||
selectedRack: null,
|
||||
hoveredRack: null,
|
||||
searchRackId: null,
|
||||
detailRack: null,
|
||||
detailVisible: false,
|
||||
};
|
||||
@@ -44,14 +36,6 @@ function floorPlanReducer(state, action) {
|
||||
return { ...state, selectedRack: action.payload };
|
||||
case actionTypes.SET_HOVERED_RACK:
|
||||
return { ...state, hoveredRack: action.payload };
|
||||
case actionTypes.SET_VIEW_MODE:
|
||||
return {
|
||||
...state,
|
||||
viewMode: action.payload.mode,
|
||||
heatMapDimension: action.payload.dimension || state.heatMapDimension,
|
||||
};
|
||||
case actionTypes.SET_EDIT_MODE:
|
||||
return { ...state, editMode: action.payload };
|
||||
case actionTypes.SET_VIEW_CHANGE:
|
||||
return {
|
||||
...state,
|
||||
@@ -59,8 +43,6 @@ function floorPlanReducer(state, action) {
|
||||
offsetX: action.payload.offsetX,
|
||||
offsetY: action.payload.offsetY,
|
||||
};
|
||||
case actionTypes.SET_SEARCH_RACK:
|
||||
return { ...state, searchRackId: action.payload };
|
||||
case actionTypes.SHOW_DETAIL:
|
||||
return {
|
||||
...state,
|
||||
@@ -97,22 +79,10 @@ export const FloorPlanProvider = ({ children }) => {
|
||||
dispatch({ type: actionTypes.SET_HOVERED_RACK, payload: rack });
|
||||
}, []);
|
||||
|
||||
const setViewMode = useCallback((mode, dimension) => {
|
||||
dispatch({ type: actionTypes.SET_VIEW_MODE, payload: { mode, dimension } });
|
||||
}, []);
|
||||
|
||||
const setEditMode = useCallback((enabled) => {
|
||||
dispatch({ type: actionTypes.SET_EDIT_MODE, payload: enabled });
|
||||
}, []);
|
||||
|
||||
const setViewChange = useCallback((viewState) => {
|
||||
dispatch({ type: actionTypes.SET_VIEW_CHANGE, payload: viewState });
|
||||
}, []);
|
||||
|
||||
const setSearchRack = useCallback((rackId) => {
|
||||
dispatch({ type: actionTypes.SET_SEARCH_RACK, payload: rackId });
|
||||
}, []);
|
||||
|
||||
const showDetail = useCallback((rack) => {
|
||||
dispatch({ type: actionTypes.SHOW_DETAIL, payload: rack });
|
||||
}, []);
|
||||
@@ -126,10 +96,7 @@ export const FloorPlanProvider = ({ children }) => {
|
||||
setSelectedRoom,
|
||||
setSelectedRack,
|
||||
setHoveredRack,
|
||||
setViewMode,
|
||||
setEditMode,
|
||||
setViewChange,
|
||||
setSearchRack,
|
||||
showDetail,
|
||||
hideDetail,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user