From 9ab9a6e8b083e19793894f23e59f29c604ec98e5 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Tue, 19 Nov 2024 11:19:40 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E5=BD=93=E6=AD=A5=E9=AA=A4=E5=85=A8?= =?UTF-8?q?=E9=83=A8=E9=83=BD=E7=A6=81=E7=94=A8=E6=97=B6=EF=BC=8C=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=9C=AC=E8=BA=AB=E6=98=BE=E7=A4=BA=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pipeline/component/task-form/index.vue | 20 ++++++++++++++++--- .../views/certd/pipeline/pipeline/index.vue | 5 ++++- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/packages/ui/certd-client/src/views/certd/pipeline/pipeline/component/task-form/index.vue b/packages/ui/certd-client/src/views/certd/pipeline/pipeline/component/task-form/index.vue index b3d24dc8c..e360dd93a 100644 --- a/packages/ui/certd-client/src/views/certd/pipeline/pipeline/component/task-form/index.vue +++ b/packages/ui/certd-client/src/views/certd/pipeline/pipeline/component/task-form/index.vue @@ -56,7 +56,7 @@ 编辑 复制 删除 - {{ element.disabled ? "启用" : "禁用" }} + {{ element.disabled ? "启用" : "禁用" }} @@ -88,6 +88,7 @@ import { CopyOutlined } from "@ant-design/icons-vue"; import VDraggable from "vuedraggable"; import { useUserStore } from "/@/store/modules/user"; import { useSettingStore } from "/@/store/modules/settings"; +import { filter } from "lodash-es"; export default { name: "PiTaskForm", components: { CopyOutlined, PiStepForm, VDraggable }, @@ -152,7 +153,11 @@ export default { }); }; - return { stepAdd, stepEdit, stepCopy, stepDelete, stepFormRef }; + const toggleDisabled = (task: any, step: any) => { + step.disabled = !!!step.disabled; + }; + + return { stepAdd, stepEdit, stepCopy, stepDelete, toggleDisabled, stepFormRef }; } /** @@ -162,7 +167,7 @@ export default { function useTaskForm() { const mode = ref("add"); const callback = ref(); - const currentTask = ref({ title: undefined, steps: [] }); + const currentTask = ref({ title: undefined, steps: [], disabled: false }); provide("currentTask", currentTask); const taskFormRef: Ref = ref(null); const taskDrawerVisible = ref(false); @@ -219,6 +224,15 @@ export default { console.error("表单验证失败:", e); return; } + const task: any = currentTask.value; + const allDisabled = filter(task.steps, (item: any) => { + return item.disabled; + }); + if (task.steps.length > 0 && task.steps.length === allDisabled.length) { + task.disabled = true; + } else { + task.disabled = false; + } callback.value("save", currentTask.value); taskDrawerClose(); diff --git a/packages/ui/certd-client/src/views/certd/pipeline/pipeline/index.vue b/packages/ui/certd-client/src/views/certd/pipeline/pipeline/index.vue index 95a744b43..0b1bd4e00 100644 --- a/packages/ui/certd-client/src/views/certd/pipeline/pipeline/index.vue +++ b/packages/ui/certd-client/src/views/certd/pipeline/pipeline/index.vue @@ -109,7 +109,7 @@ - {{ task.title }} + {{ task.title }} @@ -883,6 +883,9 @@ export default defineComponent({ &.in-edit { margin-right: 28px; } + &.disabled{ + + } } .action {