董国庆
2026-06-04 899fd523e075e2a473f268c7c63ca0c3d4dbcb9c
新建取消
1个文件已修改
58 ■■■■■ 已修改文件
src/views/businessOperations/operationWorkbench/map.vue 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/businessOperations/operationWorkbench/map.vue
@@ -936,6 +936,10 @@
    || isFenceEditWorkflow.value
    || isStationEditWorkflow.value
);
const isCreateWorkflowActive = computed(
  () =>
    pointCreateMode.value || fenceCreateMode.value || stationCreateMode.value
);
const shouldHideLeftPanel = computed(
  () =>
    pointCreateMode.value
@@ -4131,9 +4135,61 @@
  uploadedImages.value = workflowState.uploadedImages;
  cleanupPointEditMapState();
}
function abortActiveCreateWorkflow() {
  if (pointCreateMode.value) {
    exitPointCreateMode();
    pointPanelClosed.value = true;
    selectedId.value = "";
    showCreateMenu.value = false;
    return true;
  }
  if (fenceCreateMode.value) {
    exitFenceCreateMode();
    fencePanelClosed.value = true;
    selectedId.value = "";
    fenceDetailData.value = null;
    showCreateMenu.value = false;
    return true;
  }
  if (stationCreateMode.value) {
    exitStationCreateMode();
    stationPanelClosed.value = true;
    selectedId.value = "";
    showCreateMenu.value = false;
    return true;
  }
  return false;
}
async function handleDisabledCreateToolTrigger() {
  if (!isCreateWorkflowActive.value) {
    showCreateMenu.value = false;
    return;
  }
  const targetLabel = pointCreateMode.value
    ? "点位"
    : fenceCreateMode.value
    ? "围栏"
    : "场站";
  const shouldAbort = await openConfirmDialog(
    "是否中止新建流程?",
    `中止后将退出当前${targetLabel}新建流程,未保存内容不会保留。`,
    {
      positiveText: "确定",
      negativeText: "取消",
    }
  );
  if (!shouldAbort) return;
  abortActiveCreateWorkflow();
}
async function toggleCreateMenu() {
  if (createToolDisabledReason.value) {
    if (isCreateWorkflowActive.value) {
      await handleDisabledCreateToolTrigger();
      return;
    }
    showCreateMenu.value = false;
    return;
  }