Преглед изворни кода

系统监控定时任务模块功能优化

Bella пре 2 година
родитељ
комит
5e1b74f49a

+ 1 - 1
src/api/security/systemMonitor.js

@@ -13,7 +13,7 @@ const getTaskList = (
   page,
   page_size = 10,
   name = "",
-  group = 1,
+  group = "",
   status = 0
 ) => {
   return get(

+ 7 - 10
src/views/securityManagement/messageDialog/alterTask.vue

@@ -91,8 +91,9 @@ export default {
       num1: 1,
       num2: 1,
       form: {
+        taskID: "",
         name: "",
-        groupName: 0,
+        groupName: "",
         method: "",
         cron_expression: "",
         assignValue: "",
@@ -106,7 +107,7 @@ export default {
       hoursOptions: [],
       taskGroupOptions: [
         {
-          value: 0,
+          value: "",
           label: "全部",
         },
         {
@@ -141,16 +142,12 @@ export default {
     cronExpression() {
       this.$refs.cron_expression.dialogVisible = true;
     },
-    resetForm(formName) {
+    resetForm() {
       this.form.cron_expression = "";
-      this.form.groupName = 0;
+      this.form.groupName = "";
     },
-    submitForm(formName) {
-      this.$refs[formName].validate((valid) => {
-        if (valid) {
-          //
-        }
-      });
+    submitForm() {
+      this.$emit("submitForm", this.form);
     },
   },
 };

+ 48 - 14
src/views/securityManagement/systemMonitor/periodicTask.vue

@@ -46,7 +46,7 @@
     <div class="content">
       <div class="content-inner">
         <el-button class="blue-btn" @click="addEvent">新增</el-button>
-        <el-button class="blue-btn" @click="modifyEvent">修改</el-button>
+        <!-- <el-button class="blue-btn" @click="modifyEvent">修改</el-button> -->
         <el-button class="delete-btn" @click="batchDelete">批量删除</el-button>
       </div>
       <el-table
@@ -88,7 +88,7 @@
               v-show="scope.row.taskID == null ? false : true"
               size="mini"
               type="text"
-              @click="alterTask"
+              @click="alterTaskEvent(scope.row)"
               >编辑</el-button
             >
             <el-button
@@ -105,7 +105,7 @@
     <div class="bottom">
       <page class="page" :paginationData="paginationData"></page>
     </div>
-    <alterTask ref="altertask"></alterTask>
+    <alterTask ref="altertask" @submitForm="submitForm"></alterTask>
   </div>
 </template>
 
@@ -123,8 +123,8 @@ export default {
       show: true,
       form: {
         taskName: "",
-        taskGroupName: 0,
-        taskStatus: 2,
+        taskGroupName: "",
+        taskStatus: "",
       },
       tableData: [
         {
@@ -202,7 +202,7 @@ export default {
       ],
       taskStatusOptions: [
         {
-          value: 2,
+          value: "",
           label: "不限",
         },
         {
@@ -216,7 +216,7 @@ export default {
       ],
       taskGroupOptions: [
         {
-          value: 0,
+          value: "",
           label: "不限",
         },
         {
@@ -255,14 +255,17 @@ export default {
     cancleChecked() {
       this.$refs.multipleTable.clearSelection();
     },
-    alterTask() {
+    alterTaskEvent(data) {
       this.$refs.altertask.dialogVisible = true;
-      this.$refs.altertask.name = ""
-      this.$refs.altertask.groupName=""
-      this.$refs.altertask.cron_expression=""
+      this.$refs.altertask.form.taskID = data.taskID;
+      this.$refs.altertask.form.name = data.taskName;
+      this.$refs.altertask.form.groupName = data.taskGroupName;
+      this.$refs.altertask.form.cron_expression = data.cron;
     },
     resetEvent() {
-      // this.form.
+      this.form.taskName = "";
+      this.form.taskGroupName = "";
+      this.form.taskStatus = "";
     },
     searchEvent() {
       console.log(this.form);
@@ -296,12 +299,43 @@ export default {
     handleSizeChange() {},
     deleteEvent(data) {
       this.tableData = this.tableData.filter((v) => {
-        return v.id !== data.id;
+        return v.taskID !== data.taskID;
       });
     },
     addEvent() {},
     modifyEvent() {},
-    batchDelete() {},
+    batchDelete() {
+      console.log(this.multipleSelection);
+      let selectedIds = this.multipleSelection.map((v) => v.taskID);
+      this.tableData = this.tableData.filter(
+        (v) => !selectedIds.includes(v.taskID)
+      );
+    },
+    submitForm(data) {
+      this.$refs.altertask.dialogVisible = false;
+      this.tableData = this.tableData.map((v) => {
+        if (v.taskID == data.taskID) {
+          let name = data.name;
+          let groupName = data.groupName;
+          return {
+            taskID: v.taskID,
+            taskName: name,
+            taskGroupName: groupName,
+            taskDescription: v.taskDescription,
+            cron: data.cron_expression,
+          };
+        } else {
+          return {
+            taskID: v.taskID,
+            taskName: v.taskName,
+            taskGroupName: v.taskGroupName,
+            taskDescription: v.taskDescription,
+            cron: v.cron,
+            status: v.status,
+          };
+        }
+      });
+    },
   },
 };
 </script>