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 {