From 9d47f46c4bf02e1c55bdadeab5920397f08baf39 Mon Sep 17 00:00:00 2001 From: lijing1 Date: Fri, 28 Nov 2025 17:38:05 +0800 Subject: [PATCH] =?UTF-8?q?update:=E7=9F=A5=E8=AF=86=E5=BA=93=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/project/node.ts | 8 ++++ src/utils/enum/node.ts | 4 -- src/views/data/overview/index.vue | 71 ++++++++++++++++++++----------- 3 files changed, 55 insertions(+), 28 deletions(-) diff --git a/src/api/project/node.ts b/src/api/project/node.ts index 3210576..25d8e16 100644 --- a/src/api/project/node.ts +++ b/src/api/project/node.ts @@ -99,6 +99,14 @@ export const addTaskForDataApi = (params: any) => { export const addNodeForDataApi = (params: any) => { return post(`${PREFIX}node/addNodeForData`, params); }; +// 编辑任务(数据总览专用) +export const editTaskForDataApi = (params: any) => { + return post(`${PREFIX}node/editTaskForData`, params); +}; +// 编辑节点(数据总览专用) +export const editNodeForDataApi = (params: any) => { + return post(`${PREFIX}node/editNodeForData`, params); +}; export const exportProjectApi = (params: any, filename:string) => { return download(`${PREFIX}node/exportProject`, params, filename); diff --git a/src/utils/enum/node.ts b/src/utils/enum/node.ts index 0c90231..8287655 100644 --- a/src/utils/enum/node.ts +++ b/src/utils/enum/node.ts @@ -17,10 +17,6 @@ export enum NODE_TYPE { MIXED = 'mixed', /** 算例 */ RUN = 'run', - /** 工位 */ - WORKSPACE = 'workspace', - /** 机台 */ - MACHINE = 'machine', } export enum LEVEL_TYPE { /** 非任务和指标 */ diff --git a/src/views/data/overview/index.vue b/src/views/data/overview/index.vue index b21e4be..0648b2b 100644 --- a/src/views/data/overview/index.vue +++ b/src/views/data/overview/index.vue @@ -157,7 +157,7 @@ :operationType="editId ? 'edit': 'add'" :nodeType="nodeType" :detail="editId ? editData: null" - @confirm="addNodeFun" + @confirm="editNodeFun" /> @@ -166,7 +166,7 @@ import { ref, onMounted } from 'vue'; import FileTree from '@/components/common/dataFileTree/index.vue'; import { getSimulationNodeTreeApi, getAllTemplateApi } from '@/api/data/dimensionTemplate'; -import { addNodeForDataApi, addTaskForDataApi, getNodeDetailForDataApi } from '@/api/project/node'; +import { addNodeForDataApi, addTaskForDataApi, editTaskForDataApi, editNodeForDataApi, getNodeDetailForDataApi } from '@/api/project/node'; import { getTaskDetailApi } from '@/api/project/task'; import { dataOverViewListSimulationNodeFilesApi, dataOverViewDeleteSimulationNodeFilesApi, dataOverViewUploadSimulationNodeFilesApi } from '@/api/data/dataOverView'; import BaseTable from '@/components/common/table/baseTable.vue'; @@ -183,6 +183,7 @@ import { getTagMapList } from '@/utils/task'; import { NODE_TYPE } from '@/utils/enum/node'; import { useDict } from '@/utils/useDict'; import { formatFileSize } from '@/utils/file'; +import { isCategoryNodeType } from '@/utils/node'; const { DATA_TYPE } = useDict('DATA_TYPE'); const currentDimension = ref(1); @@ -231,7 +232,7 @@ const addDiaFun = (type: string) => { showNodeInfoDialog.value = true; } if (type === NODE_TYPE.CATEGORY) { - if (!currentData.value || ![NODE_TYPE.PHASE, NODE_TYPE.WORKSPACE, NODE_TYPE.MACHINE].includes(currentData.value.relatedResourceUuidOwnType)) { + if (!currentData.value || !(isCategoryNodeType(currentData.value.relatedResourceUuidOwnType) || NODE_TYPE.PHASE === currentData.value.relatedResourceUuidOwnType)) { ElMessage.warning('请在节点或分类下创建分类'); return; } @@ -256,7 +257,7 @@ const editFun = () => { editId.value = currentData.value.relatedParentUuid; showNodeInfoDialog.value = true; } - if ([NODE_TYPE.WORKSPACE, NODE_TYPE.MACHINE].includes(currentData.value.relatedResourceUuidOwnType)) { + if (isCategoryNodeType(currentData.value.relatedResourceUuidOwnType)) { editId.value = currentData.value.relatedParentUuid; const params = { relatedResourceUuid: currentData.value.relatedResourceUuid, @@ -330,24 +331,35 @@ const searchFileFun = (data: any) => { BaseTableRef.value?.setDataFun(data.data); }; -const addNodeFun = (data: any) => { - if ([NODE_TYPE.CATEGORY, NODE_TYPE.WORKSPACE].includes(nodeType.value)) { - addClassFun(data); +const editNodeFun = (data: any) => { + if (isCategoryNodeType(data.nodeType)) { + editClassFun(data); } if (nodeType.value === NODE_TYPE.TASK) { - addTaskFun(data); + editTaskFun(data); } }; -const addClassFun = (data: any) => { - const params = { - addNodeList: [{ +const editClassFun = (data: any) => { + let params: any = {}; + let api: any = null; + if (data.uuid) { + api = editNodeForDataApi; + params = { ...data, - pid: currentData.value.relatedResourceUuid, - }], - tagMap: getTagMapList(), - }; - addNodeForDataApi(params).then((res: any) => { + relatedResourceUuid: data.uuid, + }; + } else { + api = addNodeForDataApi; + params = { + addNodeList: [{ + ...data, + pid: currentData.value.relatedResourceUuid, + }], + tagMap: getTagMapList(), + }; + } + api(params).then((res: any) => { if (res.code === 200) { ElMessage.success('操作成功'); modalVisible.value = false; @@ -356,15 +368,26 @@ const addClassFun = (data: any) => { }); }; -const addTaskFun = (data: any) => { - const params = { - addTaskList: [{ +const editTaskFun = (data: any) => { + let params: any = {}; + let api: any = null; + if (data.uuid) { + api = editTaskForDataApi; + params = { ...data, - pid: currentData.value.relatedResourceUuid, - }], - tagMap: getTagMapList(), - }; - addTaskForDataApi(params).then((res: any) => { + relatedResourceUuid: data.uuid, + }; + } else { + api = addTaskForDataApi; + params = { + addTaskList: [{ + ...data, + pid: currentData.value.relatedResourceUuid, + }], + tagMap: getTagMapList(), + }; + } + api(params).then((res: any) => { if (res.code === 200) { ElMessage.success('操作成功'); modalVisible.value = false;