#
vincentlu
2025-12-12 351f38c184563db544e272a8536f3b24cc0d8362
#
2个文件已修改
21 ■■■■ 已修改文件
zy-acs-flow/src/map/MapPage.jsx 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/tool.js 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/MapPage.jsx
@@ -175,7 +175,7 @@
            case MAP_MODE.AREA_MODE:
                Tool.removeAgvGraphics();
                Tool.loadAreas(curZone);
                Tool.loadAreas(curZone, setCurSprite);
                break
            default:
                break
@@ -367,7 +367,8 @@
                                    },
                                    onFinish: () => {
                                        setAreaDrawing(false);
                                    }
                                    },
                                    setCurSprite,
                                });
                                if (started) {
                                    setAreaDrawing(true);
zy-acs-flow/src/map/tool.js
@@ -897,7 +897,7 @@
    draft.addChild(label);
};
export const loadAreas = (curZone) => {
export const loadAreas = (curZone, setCurSprite) => {
    if (!mapContainer) return;
    clearAreas();
    fetchAreaList(curZone).then((areas) => {
@@ -908,7 +908,7 @@
            if (!start || !end || !name || !id) {
                return;
            }
            const graphics = createAreaGraphic({ name, start, end, color, id });
            const graphics = createAreaGraphic({ name, start, end, color, id }, setCurSprite);
            if (graphics) {
                mapContainer.addChild(graphics);
            }
@@ -927,7 +927,7 @@
    }
};
const createAreaGraphic = ({ name, start, end, color, id }) => {
const createAreaGraphic = ({ name, start, end, color, id }, setCurSprite) => {
    if (!mapContainer) return null;
    const from = start || { x: 0, y: 0 };
    const to = end || { x: 0, y: 0 };
@@ -949,10 +949,14 @@
    draft.data = { ...(draft.data || {}), type: DEVICE_TYPE.AREA, name, color: areaColor, id };
    draft.eventMode = 'static';
    draft.cursor = 'pointer';
    if (setCurSprite) {
        draft.off('click');
        draft.on('click', () => setCurSprite(draft));
    }
    return draft;
};
export const startAreaDrawing = ({ promptText, onComplete, onFinish } = {}) => {
export const startAreaDrawing = ({ promptText, onComplete, onFinish, setCurSprite } = {}) => {
    if (!mapContainer || !mapContainer.parent) {
        return false;
    }
@@ -1035,6 +1039,10 @@
        draft.data = { ...(draft.data || {}), type: DEVICE_TYPE.AREA, name: areaName, color: areaColor };
        draft.eventMode = 'static';
        draft.cursor = 'pointer';
        if (setCurSprite) {
            draft.off('click');
            draft.on('click', () => setCurSprite(draft));
        }
        if (onComplete) {
            onComplete({