فهرست منبع

更改首页、预处理、等bug

Rmengdi 6 ماه پیش
والد
کامیت
6ee84da3b2

+ 4 - 3
pdaaphm-ui/src/views/homePage/ringChart.vue

@@ -27,7 +27,7 @@ export default {
   data() {
     return {
       // 总数量
-      // total: 0,
+      totalAll: 0,
       chart: null,
       option: null,
       data: null,
@@ -78,6 +78,7 @@ export default {
     },
 
     ringChart() {
+      this.totalAll = this.total;
       var chartDom = this.$refs.ringChart;
       this.chart = echarts.init(chartDom);
       this.option = {
@@ -95,7 +96,7 @@ export default {
         },
         title: {
           text: "算法总数",
-          subtext: 28,
+          subtext: this.totalAll,
           textStyle: {
             fontSize: 16,
             color: "#fff",
@@ -143,7 +144,7 @@ export default {
 
       this.chart.on("mouseout", () => {
         this.option.title.text = "算法总数";
-        this.option.title.subtext = this.total;
+        this.option.title.subtext = this.totalAll;
         this.chart.setOption(this.option);
       });
       this.option && this.chart.setOption(this.option);

+ 23 - 19
pdaaphm-ui/src/views/index.vue

@@ -407,6 +407,7 @@
       :visible.sync="dialogVisible"
       width="30%"
       :close-on-click-modal="false"
+      :before-close="handleClose"
     >
       <el-form ref="formRef" :model="form" :rules="rules" label-width="80px">
         <el-form-item
@@ -414,13 +415,13 @@
           label="选择数据类型"
           label-width="120px"
         >
-          <el-radio-group v-removeAriaHidden v-model="type">
+          <el-radio-group v-removeAriaHidden v-model="radioDatatype">
             <el-radio :label="2">去噪</el-radio>
             <el-radio :label="3">扩充</el-radio>
             <!-- <el-radio :label="4">特征提取</el-radio> -->
           </el-radio-group>
         </el-form-item>
-        <el-form-item label="数据" prop="processType">
+        <el-form-item label="数据" prop="processedDataId">
           <el-select
             v-model="form.processedDataId"
             placeholder="请选择执行的数据"
@@ -433,7 +434,7 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="算法" prop="processType">
+        <el-form-item label="算法" prop="processAlgId">
           <el-select v-model="form.processAlgId" placeholder="请选择执行的算法">
             <el-option
               v-for="(item, index) in optionalAglo"
@@ -445,7 +446,7 @@
         </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="dialogVisible = false">取 消</el-button>
+        <el-button @click="handleClose">取 消</el-button>
         <el-button type="primary" @click="submitHandle()">确 定</el-button>
       </span>
     </el-dialog>
@@ -571,7 +572,7 @@ export default {
       // filePath: null,
       fileType: null,
       imgPreviewUrl: null,
-      type: 2,
+      radioDatatype: 2,
       dialogType: null,
       preChartData: {},
       resultChartData: {},
@@ -596,21 +597,20 @@ export default {
         this.isTableShow = false;
       }
     },
-    type(value) {
+    radioDatatype(value) {
       getDataByType(value).then((res) => {
         this.optionalData = res.data;
       });
-      getAlgConfigByType(3).then((res) => {
-        this.optionalAglo = res.data;
-      });
+      // getAlgConfigByType(3).then((res) => {
+      //   this.optionalAglo = res.data;
+      // });
     },
   },
   methods: {
     getTotal() {
       const queryParams = { pageNum: 1, pageSize: 1000 };
       listAlgConfig(queryParams).then((response) => {
-        this.total = response.total;
-
+        this.ringTotal = response.total;
         const typeFrequency = response.rows.map((item) => {
           return item.algType;
         });
@@ -696,16 +696,20 @@ export default {
     submitHandle() {
       addProcess(this.form).then((response) => {
         this.$modal.msgSuccess("开始执行");
-        this.dialogVisible = false;
-        this.form = {
-          processedDataId: null,
-          processAlgId: null,
-        };
-        this.optionalData = [];
-        this.optionalAglo = [];
+
         this.getTableData();
       });
     },
+    handleClose() {
+      this.radioDatatype = 2;
+      this.dialogVisible = false;
+      this.form = {
+        processedDataId: null,
+        processAlgId: null,
+      };
+      this.optionalData = [];
+      this.optionalAglo = [];
+    },
     handleFile(row, typeNum) {
       this.nowRow = row;
       this.nowTypeNum = typeNum;
@@ -835,7 +839,7 @@ export default {
         .map((row) => row.split(","));
       let headData = [];
       for (let i = 1; i <= data[0].length; i++) {
-        headData.push(`曲线${i}`);
+        headData.push(`数据${i}`);
       }
       const contentData = Array.from({ length: headData.length }, () => []);
       for (let i = 0; i < data.length; i++) {

+ 240 - 90
pdaaphm-ui/src/views/system/preprocess/index.vue

@@ -1,8 +1,19 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="80px">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      size="small"
+      :inline="true"
+      v-show="showSearch"
+      label-width="80px"
+    >
       <el-form-item label="数据类型" prop="processType">
-        <el-select v-model="queryParams.processType" placeholder="请选择数据类型" clearable>
+        <el-select
+          v-model="queryParams.processType"
+          placeholder="请选择数据类型"
+          clearable
+        >
           <el-option
             v-for="dict in dict.type.biz_preaglo_type"
             :key="dict.value"
@@ -11,7 +22,11 @@
           />
         </el-select>
       </el-form-item>
-      <el-form-item label="处理的算法id" prop="processAlgId" label-width="110px">
+      <el-form-item
+        label="处理的算法id"
+        prop="processAlgId"
+        label-width="110px"
+      >
         <el-input
           v-model="queryParams.processAlgId"
           placeholder="请输入处理的算法id"
@@ -19,7 +34,11 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="被处理数据id" prop="processedDataId" label-width="110px">
+      <el-form-item
+        label="被处理数据id"
+        prop="processedDataId"
+        label-width="110px"
+      >
         <el-input
           v-model="queryParams.processedDataId"
           placeholder="请输入被处理数据id"
@@ -27,7 +46,11 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="处理结果数据id" prop="resultDataId" label-width="110px">
+      <el-form-item
+        label="处理结果数据id"
+        prop="resultDataId"
+        label-width="110px"
+      >
         <el-input
           v-model="queryParams.resultDataId"
           placeholder="请输入处理结果数据id"
@@ -36,7 +59,11 @@
         />
       </el-form-item>
       <el-form-item label="状态" prop="processStatus">
-        <el-select v-model="queryParams.processStatus" placeholder="请选择状态" clearable>
+        <el-select
+          v-model="queryParams.processStatus"
+          placeholder="请选择状态"
+          clearable
+        >
           <el-option
             v-for="dict in dict.type.biz_process_status"
             :key="dict.value"
@@ -46,24 +73,36 @@
         </el-select>
       </el-form-item>
       <el-form-item label="开始时间" prop="startTime">
-        <el-date-picker clearable
+        <el-date-picker
+          clearable
           v-model="queryParams.startTime"
           type="date"
           value-format="yyyy-MM-dd"
-          placeholder="请选择开始时间">
+          placeholder="请选择开始时间"
+        >
         </el-date-picker>
       </el-form-item>
       <el-form-item label="结束时间" prop="endTime">
-        <el-date-picker clearable
+        <el-date-picker
+          clearable
           v-model="queryParams.endTime"
           type="date"
           value-format="yyyy-MM-dd"
-          placeholder="请选择结束时间">
+          placeholder="请选择结束时间"
+        >
         </el-date-picker>
       </el-form-item>
       <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          size="mini"
+          @click="handleQuery"
+          >搜索</el-button
+        >
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+          >重置</el-button
+        >
       </el-form-item>
     </el-form>
 
@@ -76,18 +115,8 @@
           size="mini"
           @click="handleAdd"
           v-hasPermi="['system:process:add']"
-        >新增</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="success"
-          plain
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-hasPermi="['system:process:edit']"
-        >修改</el-button>
+          >新增</el-button
+        >
       </el-col>
       <el-col :span="1.5">
         <el-button
@@ -98,7 +127,8 @@
           :disabled="multiple"
           @click="handleDelete"
           v-hasPermi="['system:process:remove']"
-        >删除</el-button>
+          >删除</el-button
+        >
       </el-col>
       <el-col :span="1.5">
         <el-button
@@ -108,61 +138,95 @@
           size="mini"
           @click="handleExport"
           v-hasPermi="['system:process:export']"
-        >导出</el-button>
+          >导出</el-button
+        >
       </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="processList" @selection-change="handleSelectionChange">
+    <el-table
+      v-loading="loading"
+      :data="processList"
+      @selection-change="handleSelectionChange"
+    >
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="编号" align="center" prop="id" />
       <el-table-column label="数据类型" align="center" prop="processType">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.biz_preaglo_type" :value="scope.row.processType"/>
+          <dict-tag
+            :options="dict.type.biz_preaglo_type"
+            :value="scope.row.processType"
+          />
         </template>
       </el-table-column>
-      <el-table-column label="处理的算法id" align="center" prop="processAlgId" />
-      <el-table-column label="被处理数据id" align="center" prop="processedDataId" />
-      <el-table-column label="处理结果数据id" align="center" prop="resultDataId" />
+      <el-table-column
+        label="处理的算法id"
+        align="center"
+        prop="processAlgId"
+      />
+      <el-table-column
+        label="被处理数据id"
+        align="center"
+        prop="processedDataId"
+      />
+      <el-table-column
+        label="处理结果数据id"
+        align="center"
+        prop="resultDataId"
+      />
       <el-table-column label="状态" align="center" prop="processStatus">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.biz_process_status" :value="scope.row.processStatus"/>
+          <dict-tag
+            :options="dict.type.biz_process_status"
+            :value="scope.row.processStatus"
+          />
         </template>
       </el-table-column>
-      <el-table-column label="开始时间" align="center" prop="startTime" width="180">
+      <el-table-column
+        label="开始时间"
+        align="center"
+        prop="startTime"
+        width="180"
+      >
         <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
+          <span>{{ parseTime(scope.row.startTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="结束时间" align="center" prop="endTime" width="180">
+      <el-table-column
+        label="结束时间"
+        align="center"
+        prop="endTime"
+        width="180"
+      >
         <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.endTime, '{y}-{m}-{d}') }}</span>
+          <span>{{ parseTime(scope.row.endTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
       <el-table-column label="日志" align="center" prop="log" />
       <el-table-column label="备注" align="center" prop="remark" />
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+      <el-table-column
+        label="操作"
+        align="center"
+        class-name="small-padding fixed-width"
+      >
         <template slot-scope="scope">
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['system:process:edit']"
-          >修改</el-button>
           <el-button
             size="mini"
             type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
             v-hasPermi="['system:process:remove']"
-          >删除</el-button>
+            >删除</el-button
+          >
         </template>
       </el-table-column>
     </el-table>
-    
+
     <pagination
-      v-show="total>0"
+      v-show="total > 0"
       :total="total"
       :page.sync="queryParams.pageNum"
       :limit.sync="queryParams.pageSize"
@@ -170,10 +234,21 @@
     />
 
     <!-- 添加或修改数据处理对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+    <el-dialog
+      :title="title"
+      :visible.sync="open"
+      width="500px"
+      :close-on-click-modal="false"
+      :before-close="cancel"
+      append-to-body
+    >
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="数据类型" prop="processType">
-          <el-select v-model="form.processType" placeholder="请选择数据类型">
+          <el-select
+            v-model="form.processType"
+            placeholder="请选择数据类型"
+            @change="getAgloData"
+          >
             <el-option
               v-for="dict in dict.type.biz_preaglo_type"
               :key="dict.value"
@@ -182,14 +257,46 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="处理的算法id" label-width="110px" prop="processAlgId" >
-          <el-input v-model="form.processAlgId" placeholder="请输入处理的算法id" />
+        <el-form-item
+          label="处理的算法"
+          label-width="100px"
+          prop="processAlgId"
+        >
+          <el-select v-model="form.processAlgId" placeholder="请选择执行的算法">
+            <el-option
+              v-for="(item, index) in optionalAglo"
+              :key="index"
+              :label="item.algName"
+              :value="item.id"
+            ></el-option>
+          </el-select>
         </el-form-item>
-        <el-form-item label="被处理数据id" prop="processedDataId" label-width="110px">
-          <el-input v-model="form.processedDataId" placeholder="请输入被处理数据id" />
+        <el-form-item
+          label="被处理数据"
+          prop="processedDataId"
+          label-width="100px"
+        >
+          <el-select
+            v-model="form.processedDataId"
+            placeholder="请选择被处理数据"
+          >
+            <el-option
+              v-for="(item, index) in optionalData"
+              :key="index"
+              :label="item.dataName"
+              :value="item.id"
+            ></el-option>
+          </el-select>
         </el-form-item>
-        <el-form-item label="处理结果数据id" prop="resultDataId" label-width="110px">
-          <el-input v-model="form.resultDataId" placeholder="请输入处理结果数据id" />
+        <el-form-item
+          label="处理结果数据id"
+          prop="resultDataId"
+          label-width="110px"
+        >
+          <el-input
+            v-model="form.resultDataId"
+            placeholder="请输入处理结果数据id"
+          />
         </el-form-item>
         <el-form-item label="状态" prop="processStatus">
           <el-select v-model="form.processStatus" placeholder="请选择状态">
@@ -202,26 +309,38 @@
           </el-select>
         </el-form-item>
         <el-form-item label="开始时间" prop="startTime">
-          <el-date-picker clearable
+          <el-date-picker
+            clearable
             v-model="form.startTime"
             type="date"
             value-format="yyyy-MM-dd"
-            placeholder="请选择开始时间">
+            placeholder="请选择开始时间"
+          >
           </el-date-picker>
         </el-form-item>
         <el-form-item label="结束时间" prop="endTime">
-          <el-date-picker clearable
+          <el-date-picker
+            clearable
             v-model="form.endTime"
             type="date"
             value-format="yyyy-MM-dd"
-            placeholder="请选择结束时间">
+            placeholder="请选择结束时间"
+          >
           </el-date-picker>
         </el-form-item>
         <el-form-item label="日志" prop="log">
-          <el-input v-model="form.log" type="textarea" placeholder="请输入内容" />
+          <el-input
+            v-model="form.log"
+            type="textarea"
+            placeholder="请输入内容"
+          />
         </el-form-item>
         <el-form-item label="备注" prop="remark">
-          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+          <el-input
+            v-model="form.remark"
+            type="textarea"
+            placeholder="请输入内容"
+          />
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -233,11 +352,20 @@
 </template>
 
 <script>
-import { listProcess,getPreprocessList, getProcess, delProcess, addProcess, updateProcess } from "@/api/system/process";
+import {
+  listProcess,
+  getPreprocessList,
+  getProcess,
+  delProcess,
+  addProcess,
+  updateProcess,
+} from "@/api/system/process";
+import { getAlgConfigByType } from "@/api/system/algConfig";
+import { getDataByType } from "@/api/system/data";
 
 export default {
   name: "preprocess",
-  dicts: ['biz_process_status', 'biz_preaglo_type'],
+  dicts: ["biz_process_status", "biz_preaglo_type"],
   data() {
     return {
       // 遮罩层
@@ -276,13 +404,14 @@ export default {
       // 表单校验
       rules: {
         processAlgId: [
-          { required: true, message: "处理的算法id不能为空", trigger: "blur" }
+          { required: true, message: "处理的算法不能为空", trigger: "blur" },
         ],
         processedDataId: [
-          { required: true, message: "被处理数据id不能为空", trigger: "blur" }
+          { required: true, message: "被处理数据不能为空", trigger: "blur" },
         ],
       },
-      type:[1,2]
+      optionalData: [],
+      optionalAglo: [],
     };
   },
   created() {
@@ -292,7 +421,7 @@ export default {
     /** 查询数据处理列表 */
     getList() {
       this.loading = true;
-      getPreprocessList(this.queryParams).then(response => {
+      getPreprocessList(this.queryParams).then((response) => {
         this.processList = response.rows;
         this.total = response.total;
         this.loading = false;
@@ -302,12 +431,24 @@ export default {
     cancel() {
       this.open = false;
       this.reset();
+      this.optionalData = [];
+      this.optionalAglo = [];
+    },
+
+    getAgloData(type) {
+      getDataByType(type).then((res) => {
+        this.optionalData = res.data;
+      });
+      getAlgConfigByType(type).then((res) => {
+        this.optionalAglo = res.data;
+      });
     },
+
     // 表单重置
     reset() {
       this.form = {
         id: null,
-        processType: this.type,
+        processType: null,
         processAlgId: null,
         processedDataId: null,
         resultDataId: null,
@@ -319,7 +460,7 @@ export default {
         createTime: null,
         updateBy: null,
         updateTime: null,
-        remark: null
+        remark: null,
       };
       this.resetForm("form");
     },
@@ -335,9 +476,9 @@ export default {
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id)
-      this.single = selection.length!==1
-      this.multiple = !selection.length
+      this.ids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
     },
     /** 新增按钮操作 */
     handleAdd() {
@@ -348,25 +489,26 @@ export default {
     /** 修改按钮操作 */
     handleUpdate(row) {
       this.reset();
-      const id = row.id || this.ids
-      getProcess(id).then(response => {
+      const id = row.id || this.ids;
+      this.getAgloData(row.processType);
+      getProcess(id).then((response) => {
         this.form = response.data;
-        this.open = true;
         this.title = "修改数据处理";
+        this.open = true;
       });
     },
     /** 提交按钮 */
     submitForm() {
-      this.$refs["form"].validate(valid => {
+      this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.id != null) {
-            updateProcess(this.form).then(response => {
+            updateProcess(this.form).then((response) => {
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.getList();
             });
           } else {
-            addProcess(this.form).then(response => {
+            addProcess(this.form).then((response) => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.getList();
@@ -378,19 +520,27 @@ export default {
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除数据处理编号为"' + ids + '"的数据项?').then(function() {
-        return delProcess(ids);
-      }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+      this.$modal
+        .confirm('是否确认删除数据处理编号为"' + ids + '"的数据项?')
+        .then(function () {
+          return delProcess(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
     },
     /** 导出按钮操作 */
     handleExport() {
-      this.download('system/process/export', {
-        ...this.queryParams
-      }, `process_${new Date().getTime()}.xlsx`)
-    }
-  }
+      this.download(
+        "system/process/export",
+        {
+          ...this.queryParams,
+        },
+        `process_${new Date().getTime()}.xlsx`
+      );
+    },
+  },
 };
 </script>

+ 264 - 90
pdaaphm-ui/src/views/system/process/index.vue

@@ -1,8 +1,20 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="80px">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      size="small"
+      :inline="true"
+      v-show="showSearch"
+      label-width="80px"
+    >
       <el-form-item label="数据类型" prop="processType">
-        <el-select v-model="queryParams.processType" disabled placeholder="请选择数据类型" clearable>
+        <el-select
+          v-model="queryParams.processType"
+          disabled
+          placeholder="请选择数据类型"
+          clearable
+        >
           <el-option
             v-for="dict in dict.type.biz_alg_type"
             :key="dict.value"
@@ -11,7 +23,11 @@
           />
         </el-select>
       </el-form-item>
-      <el-form-item label="处理的算法id" prop="processAlgId" label-width="110px">
+      <el-form-item
+        label="处理的算法id"
+        prop="processAlgId"
+        label-width="110px"
+      >
         <el-input
           v-model="queryParams.processAlgId"
           placeholder="请输入处理的算法id"
@@ -19,7 +35,11 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="被处理数据id" prop="processedDataId" label-width="110px">
+      <el-form-item
+        label="被处理数据id"
+        prop="processedDataId"
+        label-width="110px"
+      >
         <el-input
           v-model="queryParams.processedDataId"
           placeholder="请输入被处理数据id"
@@ -27,7 +47,11 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="处理结果数据id" prop="resultDataId" label-width="110px">
+      <el-form-item
+        label="处理结果数据id"
+        prop="resultDataId"
+        label-width="110px"
+      >
         <el-input
           v-model="queryParams.resultDataId"
           placeholder="请输入处理结果数据id"
@@ -36,7 +60,11 @@
         />
       </el-form-item>
       <el-form-item label="状态" prop="processStatus">
-        <el-select v-model="queryParams.processStatus" placeholder="请选择状态" clearable>
+        <el-select
+          v-model="queryParams.processStatus"
+          placeholder="请选择状态"
+          clearable
+        >
           <el-option
             v-for="dict in dict.type.biz_process_status"
             :key="dict.value"
@@ -46,24 +74,36 @@
         </el-select>
       </el-form-item>
       <el-form-item label="开始时间" prop="startTime">
-        <el-date-picker clearable
+        <el-date-picker
+          clearable
           v-model="queryParams.startTime"
           type="date"
           value-format="yyyy-MM-dd"
-          placeholder="请选择开始时间">
+          placeholder="请选择开始时间"
+        >
         </el-date-picker>
       </el-form-item>
       <el-form-item label="结束时间" prop="endTime">
-        <el-date-picker clearable
+        <el-date-picker
+          clearable
           v-model="queryParams.endTime"
           type="date"
           value-format="yyyy-MM-dd"
-          placeholder="请选择结束时间">
+          placeholder="请选择结束时间"
+        >
         </el-date-picker>
       </el-form-item>
       <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          size="mini"
+          @click="handleQuery"
+          >搜索</el-button
+        >
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+          >重置</el-button
+        >
       </el-form-item>
     </el-form>
 
@@ -76,18 +116,8 @@
           size="mini"
           @click="handleAdd"
           v-hasPermi="['system:process:add']"
-        >新增</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="success"
-          plain
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-hasPermi="['system:process:edit']"
-        >修改</el-button>
+          >新增</el-button
+        >
       </el-col>
       <el-col :span="1.5">
         <el-button
@@ -98,7 +128,8 @@
           :disabled="multiple"
           @click="handleDelete"
           v-hasPermi="['system:process:remove']"
-        >删除</el-button>
+          >删除</el-button
+        >
       </el-col>
       <el-col :span="1.5">
         <el-button
@@ -108,61 +139,95 @@
           size="mini"
           @click="handleExport"
           v-hasPermi="['system:process:export']"
-        >导出</el-button>
+          >导出</el-button
+        >
       </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+      <right-toolbar
+        :showSearch.sync="showSearch"
+        @queryTable="getList"
+      ></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="processList" @selection-change="handleSelectionChange">
+    <el-table
+      v-loading="loading"
+      :data="processList"
+      @selection-change="handleSelectionChange"
+    >
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column label="编号" align="center" prop="id" />
       <el-table-column label="数据类型" align="center" prop="processType">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.biz_alg_type" :value="scope.row.processType"/>
+          <dict-tag
+            :options="dict.type.biz_alg_type"
+            :value="scope.row.processType"
+          />
         </template>
       </el-table-column>
-      <el-table-column label="处理的算法id" align="center" prop="processAlgId" />
-      <el-table-column label="被处理数据id" align="center" prop="processedDataId" />
-      <el-table-column label="处理结果数据id" align="center" prop="resultDataId" />
+      <el-table-column
+        label="处理的算法id"
+        align="center"
+        prop="processAlgId"
+      />
+      <el-table-column
+        label="被处理数据id"
+        align="center"
+        prop="processedDataId"
+      />
+      <el-table-column
+        label="处理结果数据id"
+        align="center"
+        prop="resultDataId"
+      />
       <el-table-column label="状态" align="center" prop="processStatus">
         <template slot-scope="scope">
-          <dict-tag :options="dict.type.biz_process_status" :value="scope.row.processStatus"/>
+          <dict-tag
+            :options="dict.type.biz_process_status"
+            :value="scope.row.processStatus"
+          />
         </template>
       </el-table-column>
-      <el-table-column label="开始时间" align="center" prop="startTime" width="180">
+      <el-table-column
+        label="开始时间"
+        align="center"
+        prop="startTime"
+        width="180"
+      >
         <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
+          <span>{{ parseTime(scope.row.startTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
-      <el-table-column label="结束时间" align="center" prop="endTime" width="180">
+      <el-table-column
+        label="结束时间"
+        align="center"
+        prop="endTime"
+        width="180"
+      >
         <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.endTime, '{y}-{m}-{d}') }}</span>
+          <span>{{ parseTime(scope.row.endTime, "{y}-{m}-{d}") }}</span>
         </template>
       </el-table-column>
       <el-table-column label="日志" align="center" prop="log" />
       <el-table-column label="备注" align="center" prop="remark" />
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+      <el-table-column
+        label="操作"
+        align="center"
+        class-name="small-padding fixed-width"
+      >
         <template slot-scope="scope">
-          <el-button
-            size="mini"
-            type="text"
-            icon="el-icon-edit"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['system:process:edit']"
-          >修改</el-button>
           <el-button
             size="mini"
             type="text"
             icon="el-icon-delete"
             @click="handleDelete(scope.row)"
             v-hasPermi="['system:process:remove']"
-          >删除</el-button>
+            >删除</el-button
+          >
         </template>
       </el-table-column>
     </el-table>
-    
+
     <pagination
-      v-show="total>0"
+      v-show="total > 0"
       :total="total"
       :page.sync="queryParams.pageNum"
       :limit.sync="queryParams.pageSize"
@@ -170,10 +235,21 @@
     />
 
     <!-- 添加或修改数据处理对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+    <el-dialog
+      :title="title"
+      :visible.sync="open"
+      width="500px"
+      :close-on-click-modal="false"
+      append-to-body
+      :before-close="cancel"
+    >
       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
         <el-form-item label="数据类型" prop="processType">
-          <el-select v-model="form.processType" placeholder="请选择数据类型" disabled>
+          <el-select
+            v-model="form.processType"
+            placeholder="请选择数据类型"
+            disabled
+          >
             <el-option
               v-for="dict in dict.type.biz_alg_type"
               :key="dict.value"
@@ -182,14 +258,52 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="处理的算法id" label-width="110px" prop="processAlgId" >
-          <el-input v-model="form.processAlgId" placeholder="请输入处理的算法id" />
+        <el-form-item
+          label="处理的算法"
+          label-width="100px"
+          prop="processAlgId"
+        >
+          <el-select v-model="form.processAlgId" placeholder="请选择执行的算法">
+            <el-option
+              v-for="(item, index) in optionalAglo"
+              :key="index"
+              :label="item.algName"
+              :value="item.id"
+            ></el-option>
+          </el-select>
         </el-form-item>
-        <el-form-item label="被处理数据id" prop="processedDataId" label-width="110px">
-          <el-input v-model="form.processedDataId" placeholder="请输入被处理数据id" />
+        <el-form-item
+          label="被处理数据"
+          prop="processedDataId"
+          label-width="100px"
+        >
+          <el-select
+            v-model="form.processedDataId"
+            placeholder="请选择被处理数据"
+          >
+            <el-option
+              v-for="(item, index) in optionalData"
+              :key="index"
+              :label="item.dataName"
+              :value="item.id"
+            ></el-option>
+          </el-select>
         </el-form-item>
-        <el-form-item label="处理结果数据id" prop="resultDataId" label-width="110px">
-          <el-input v-model="form.resultDataId" placeholder="请输入处理结果数据id" />
+        <!-- <el-form-item label="处理的算法id" label-width="110px" prop="processAlgId" >
+          <el-input v-model="form.processAlgId" placeholder="请输入处理的算法id" />
+        </el-form-item> -->
+        <!-- <el-form-item label="被处理数据id" prop="processedDataId" label-width="110px">
+          <el-input v-model="form.processedDataId" placeholder="请输入被处理数据id" />
+        </el-form-item> -->
+        <el-form-item
+          label="处理结果数据id"
+          prop="resultDataId"
+          label-width="110px"
+        >
+          <el-input
+            v-model="form.resultDataId"
+            placeholder="请输入处理结果数据id"
+          />
         </el-form-item>
         <el-form-item label="状态" prop="processStatus">
           <el-select v-model="form.processStatus" placeholder="请选择状态">
@@ -202,26 +316,38 @@
           </el-select>
         </el-form-item>
         <el-form-item label="开始时间" prop="startTime">
-          <el-date-picker clearable
+          <el-date-picker
+            clearable
             v-model="form.startTime"
             type="date"
             value-format="yyyy-MM-dd"
-            placeholder="请选择开始时间">
+            placeholder="请选择开始时间"
+          >
           </el-date-picker>
         </el-form-item>
         <el-form-item label="结束时间" prop="endTime">
-          <el-date-picker clearable
+          <el-date-picker
+            clearable
             v-model="form.endTime"
             type="date"
             value-format="yyyy-MM-dd"
-            placeholder="请选择结束时间">
+            placeholder="请选择结束时间"
+          >
           </el-date-picker>
         </el-form-item>
         <el-form-item label="日志" prop="log">
-          <el-input v-model="form.log" type="textarea" placeholder="请输入内容" />
+          <el-input
+            v-model="form.log"
+            type="textarea"
+            placeholder="请输入内容"
+          />
         </el-form-item>
         <el-form-item label="备注" prop="remark">
-          <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+          <el-input
+            v-model="form.remark"
+            type="textarea"
+            placeholder="请输入内容"
+          />
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -233,11 +359,19 @@
 </template>
 
 <script>
-import { listProcess, getProcess, delProcess, addProcess, updateProcess } from "@/api/system/process";
+import {
+  listProcess,
+  getProcess,
+  delProcess,
+  addProcess,
+  updateProcess,
+} from "@/api/system/process";
+import { getAlgConfigByType } from "@/api/system/algConfig";
+import { getDataByType } from "@/api/system/data";
 
 export default {
   name: "Process",
-  dicts: ['biz_process_status', 'biz_alg_type'],
+  dicts: ["biz_process_status", "biz_alg_type"],
   data() {
     return {
       // 遮罩层
@@ -276,35 +410,67 @@ export default {
       // 表单校验
       rules: {
         processAlgId: [
-          { required: true, message: "处理的算法id不能为空", trigger: "blur" }
+          { required: true, message: "处理的算法不能为空", trigger: "blur" },
         ],
         processedDataId: [
-          { required: true, message: "被处理数据id不能为空", trigger: "blur" }
+          { required: true, message: "被处理数据不能为空", trigger: "blur" },
         ],
       },
-      type:null
+      type: null,
+      optionalData: [],
+      optionalAglo: [],
     };
   },
   created() {
-    this.type=this.$route.query.type
-    this.queryParams.processType=this.$route.query.type
+    this.type = this.$route.query.type;
+    this.queryParams.processType = this.$route.query.type;
     this.getList();
   },
   methods: {
     /** 查询数据处理列表 */
     getList() {
       this.loading = true;
-      listProcess(this.queryParams).then(response => {
+      listProcess(this.queryParams).then((response) => {
         this.processList = response.rows;
         this.total = response.total;
         this.loading = false;
       });
+      this.getAgloData(this.type);
     },
     // 取消按钮
     cancel() {
       this.open = false;
       this.reset();
+      this.optionalData = [];
+      this.optionalAglo = [];
     },
+
+    getAgloData(type) {
+      let match;
+      if (type === 5) {
+        match = type - 1;
+      } else {
+        match = type;
+      }
+      console.log("match", match);
+      if (match == 3) {
+        getDataByType(match - 1).then((res2) => {
+          this.optionalData.push(...res2.data);
+        });
+        getDataByType(match).then((res) => {
+          this.optionalData.push(...res.data);
+        });
+      } else {
+        getDataByType(match).then((res) => {
+          this.optionalData = res.data;
+        });
+      }
+
+      getAlgConfigByType(type).then((res) => {
+        this.optionalAglo = res.data;
+      });
+    },
+
     // 表单重置
     reset() {
       this.form = {
@@ -321,7 +487,7 @@ export default {
         createTime: null,
         updateBy: null,
         updateTime: null,
-        remark: null
+        remark: null,
       };
       this.resetForm("form");
     },
@@ -337,9 +503,9 @@ export default {
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id)
-      this.single = selection.length!==1
-      this.multiple = !selection.length
+      this.ids = selection.map((item) => item.id);
+      this.single = selection.length !== 1;
+      this.multiple = !selection.length;
     },
     /** 新增按钮操作 */
     handleAdd() {
@@ -350,8 +516,8 @@ export default {
     /** 修改按钮操作 */
     handleUpdate(row) {
       this.reset();
-      const id = row.id || this.ids
-      getProcess(id).then(response => {
+      const id = row.id || this.ids;
+      getProcess(id).then((response) => {
         this.form = response.data;
         this.open = true;
         this.title = "修改数据处理";
@@ -359,16 +525,16 @@ export default {
     },
     /** 提交按钮 */
     submitForm() {
-      this.$refs["form"].validate(valid => {
+      this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.id != null) {
-            updateProcess(this.form).then(response => {
+            updateProcess(this.form).then((response) => {
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.getList();
             });
           } else {
-            addProcess(this.form).then(response => {
+            addProcess(this.form).then((response) => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.getList();
@@ -380,19 +546,27 @@ export default {
     /** 删除按钮操作 */
     handleDelete(row) {
       const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除数据处理编号为"' + ids + '"的数据项?').then(function() {
-        return delProcess(ids);
-      }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+      this.$modal
+        .confirm('是否确认删除数据处理编号为"' + ids + '"的数据项?')
+        .then(function () {
+          return delProcess(ids);
+        })
+        .then(() => {
+          this.getList();
+          this.$modal.msgSuccess("删除成功");
+        })
+        .catch(() => {});
     },
     /** 导出按钮操作 */
     handleExport() {
-      this.download('system/process/export', {
-        ...this.queryParams
-      }, `process_${new Date().getTime()}.xlsx`)
-    }
-  }
+      this.download(
+        "system/process/export",
+        {
+          ...this.queryParams,
+        },
+        `process_${new Date().getTime()}.xlsx`
+      );
+    },
+  },
 };
 </script>