diff --git a/src/bg-ui/bg-code-editor.vue b/src/bg-ui/bg-code-editor.vue index 7ecb6c65bdab91a110d80d9333bb372febd82f20..1101ebbd50c795b8f4730f1bf02a3b8cffe565a2 100644 --- a/src/bg-ui/bg-code-editor.vue +++ b/src/bg-ui/bg-code-editor.vue @@ -143,9 +143,9 @@ const { content } = toRefs(states); right: 0 !important; } /* 光标颜色 */ -.vue-ace-editor :deep() .ace_cursor { +/* .vue-ace-editor :deep() .ace_cursor { color: #fff; -} +} */ .vue-ace-editor-disable :deep() .ace_scrollbar-v { width: 6px !important; right: 2px; diff --git a/src/page/main/auto-maintenance/task-manage/add/base-info.vue b/src/page/main/auto-maintenance/task-manage/add/base-info.vue index cf1ccd4960a0c76f60f46f7af52f2c397c6dcd89..cbe563732ed472c0a07fcdb802ea6fe9ad11e2cf 100644 --- a/src/page/main/auto-maintenance/task-manage/add/base-info.vue +++ b/src/page/main/auto-maintenance/task-manage/add/base-info.vue @@ -2,7 +2,12 @@
- + {}, }, + isEdit: { + type: Boolean, + default: false, + }, }); const ruleFormRef = ref(null); diff --git a/src/page/main/auto-maintenance/task-manage/add/finish.vue b/src/page/main/auto-maintenance/task-manage/add/finish.vue index 408c061cb533b79649d7db8b8a7c171a639785ed..eb4cf38c700e8d7078236eaaedf80b85177c69a1 100644 --- a/src/page/main/auto-maintenance/task-manage/add/finish.vue +++ b/src/page/main/auto-maintenance/task-manage/add/finish.vue @@ -2,11 +2,11 @@
-

新增成功

-

新增失败

+

{{ ["新增", "编辑", "复制"][props.finishType] }}成功

+

{{ ["新增", "编辑", "复制"][props.finishType] }}失败

返回列表 - 继续新增 + {{ props.finishType == 1 ? "重新提交" : "继续新增" }}
@@ -24,6 +24,10 @@ const props = defineProps({ type: Boolean, default: true, }, + finishType: { + type: Number, + default: 0, + }, }); const emit = defineEmits(["clear"]); diff --git a/src/page/main/auto-maintenance/task-manage/add/index.vue b/src/page/main/auto-maintenance/task-manage/add/index.vue index 1fb4d361ac8e8bcd2ed447f0903cccfc0b0b5344..74727257dc4ccf2d991e05ac58f58d4e82b5513d 100644 --- a/src/page/main/auto-maintenance/task-manage/add/index.vue +++ b/src/page/main/auto-maintenance/task-manage/add/index.vue @@ -42,10 +42,28 @@
- - - - + + + +
取消 @@ -104,6 +122,9 @@ const state = reactive({ useData: ["yaml", "json"], useText: "", isSave: true, + status: true, + pageType: 0, //0新增,1编辑,2复制 + loadComponents: false, //控制子组件的加载 }); const cancel = () => { @@ -131,11 +152,55 @@ const saveTask = async () => { .save() .then(() => { step.value = 3; - //todo:掉接口保存,并获取状态 + if (state.pageType == 0 || state.pageType == 2) { + postTask(); + } else if (state.pageType == 1) { + editTask(); + } }) .catch(() => {}); }; +const editTask = () => { + axios + .put(`/v1/api/automated_mainten/task_manage/edit`, { + task_name: state.data.name, + task_desc: state.data.desc, + yaml_desc: state.data.useText, + yaml_url: JSON.stringify(state.data.doc_file), + host_group_id: state.data.pcName, + }) + .then((res) => { + if (res.data.code == 200) { + state.status = true; + ElMessage.success("保存成功"); + } else { + state.status = false; + ElMessage.error(res.data.msg); + } + }); +}; + +const postTask = () => { + axios + .post(`/v1/api/automated_mainten/task_manage/add`, { + task_name: state.data.name, + task_desc: state.data.desc, + yaml_desc: state.data.useText, + yaml_url: JSON.stringify(state.data.doc_file), + host_group_id: state.data.pcName, + }) + .then((res) => { + if (res.data.code == 200) { + state.status = true; + ElMessage.success("保存成功"); + } else { + state.status = false; + ElMessage.error(res.data.msg); + } + }); +}; + const useScript = async () => { //填写完成才可以进行执行 await useContentRef.value @@ -167,9 +232,53 @@ const clearData = () => { useContentRef.value.clear(); state.data = {}; step.value = 1; + state.loadComponents = false; + init(); }; -onBeforeMount(() => {}); +const getDetails = () => { + axios + .get(`/v1/api/automated_mainten/task_manage/details`, { + params: { + id: route.query.id, + }, + }) + .then((res) => { + if (res.data.code == 200) { + let data = res.data.data; + state.data = { + name: data.task_name, + desc: data.task_desc, + useText: data.yaml_desc, + doc_file: data.yaml_url ? JSON.parse(data.yaml_url) : [], + pcName: data.host_group_id, + }; + //复制,名字置空 + if (state.pageType == 2) { + state.data.name = ""; + } + state.loadComponents = true; + } + }); +}; + +const init = () => { + if (route.path.indexOf("edit") > -1) { + state.pageType = 1; + } else if (route.path.indexOf("copy") > -1) { + state.pageType = 2; + } + if (state.pageType !== 0) { + getDetails(); + } else { + state.loadComponents = true; + } +}; + +onBeforeMount(() => { + state.loadComponents = false; + init(); +});