Quellcode durchsuchen

初始数据曲线展示

Rmengdi vor 11 Monaten
Ursprung
Commit
7fb6cd3d37

+ 164 - 45
pdaaphm-ui/src/views/index.vue

@@ -4,33 +4,37 @@
       <div class="topPanel">
         <div class="tPanel">
           <el-table size="mini" :data="originalList">
-            <el-table-column prop="name" label="数据">
+            <el-table-column prop="dataName" label="数据" align="center">
             </el-table-column>
-            <el-table-column prop="status" label="状态">
+            <el-table-column prop="status" label="状态" align="center">
             </el-table-column>
           </el-table>
         </div>
         <div class="tPanel">
           <el-table size="mini" :data="completionList">
-            <el-table-column prop="name" label="数据">
+            <el-table-column prop="dataName" label="数据" align="center">
+              <template slot-scope="scope">
+                <span class="file" @click="handleFile(scope.row.dataPath, scope.row.dataType)">{{ scope.row.dataName
+                  }}</span>
+              </template>
             </el-table-column>
-            <el-table-column prop="status" label="状态">
+            <el-table-column prop="status" label="状态" align="center">
             </el-table-column>
           </el-table>
         </div>
         <div class="tPanel">
           <el-table size="mini" :data="featureExtractionList">
-            <el-table-column prop="name" label="数据">
+            <el-table-column prop="dataName" label="数据" align="center">
             </el-table-column>
-            <el-table-column prop="status" label="状态">
+            <el-table-column prop="status" label="状态" align="center">
             </el-table-column>
           </el-table>
         </div>
         <div class="tPanel">
           <el-table size="mini" :data="faultPredictionList">
-            <el-table-column prop="name" label="数据">
+            <el-table-column prop="dataName" label="数据" align="center">
             </el-table-column>
-            <el-table-column prop="status" label="状态">
+            <el-table-column prop="status" label="状态" align="center">
             </el-table-column>
           </el-table>
         </div>
@@ -71,32 +75,29 @@
             <div class="tag">故障预测</div>
           </div>
         </div>
-        <!-- <div class="final">
-
-        </div> -->
       </div>
       <div class="bottomPanel">
         <div class="bPanel">
           <el-table size="mini" :data="denoisingList">
-            <el-table-column prop="name" label="数据">
+            <el-table-column prop="dataName" label="数据" align="center">
             </el-table-column>
-            <el-table-column prop="status" label="状态">
+            <el-table-column prop="status" label="状态" align="center">
             </el-table-column>
           </el-table>
         </div>
         <div class="bPanel">
           <el-table size="mini" :data="expansionList">
-            <el-table-column prop="name" label="数据">
+            <el-table-column prop="dataName" label="数据" align="center">
             </el-table-column>
-            <el-table-column prop="status" label="状态">
+            <el-table-column prop="status" label="状态" align="center">
             </el-table-column>
           </el-table>
         </div>
         <div class="bPanel">
           <el-table size="mini" :data="assessmentList">
-            <el-table-column prop="name" label="数据">
+            <el-table-column prop="dataName" label="数据" align="center">
             </el-table-column>
-            <el-table-column prop="status" label="状态">
+            <el-table-column prop="status" label="状态" align="center">
             </el-table-column>
           </el-table>
         </div>
@@ -131,6 +132,13 @@
         <el-button type="primary" @click="submitHandle()">确 定</el-button>
       </span>
     </el-dialog>
+    <el-dialog title="数据展示" :visible.sync="fileShowVisible" width="80%" :close-on-click-modal="false">
+      <el-button style="margin-left:50px;" type="text" @click="changeShow">{{ isTableShow ? '表格展示' : '曲线展示' }}</el-button>
+      <div v-if="isTableShow">
+        表格展示
+      </div>
+      <div v-else ref="completionChartRef" style="width: 100%; height: 400px;"></div>
+    </el-dialog>
   </div>
 </template>
 
@@ -139,8 +147,9 @@ import CountTo from 'vue-count-to'
 import RingChart from '@/views/homePage/ringChart'
 import BarChart from '@/views/dashboard/BarChart'
 import { getAlgConfigByType } from "@/api/system/algConfig";
-import { getDataProcessByType,addProcess } from "@/api/system/process";
+import { getDataProcessByType, addProcess } from "@/api/system/process";
 import { getDataByType } from "@/api/system/data";
+import * as echarts from 'echarts';
 export default {
   name: 'Index',
   components: {
@@ -151,8 +160,10 @@ export default {
   data() {
     return {
       rules: {},
-      title:'选择数据',
+      title: '选择数据',
+      baseUrl: process.env.VUE_APP_BASE_API,
       dialogVisible: false,
+      fileShowVisible: false,
       originalList: [],
       denoisingList: [],
       completionList: [],
@@ -165,7 +176,12 @@ export default {
       form: {
         data: null,
         aglo: null
-      }
+      },
+      // 对话框展示数据内容
+      completionData: [],
+      isTableShow: false,
+      filePath: null,
+      fileType: null
     }
   },
   created() {
@@ -195,29 +211,6 @@ export default {
     handleSetLineChartData(type) {
       this.$emit('handleSetLineChartData', type)
     },
-    // handelDenoising() {
-    //   this.dialogVisible = true
-    // },
-    // handelCompletion() {
-    //   this.title='选择扩充数据'
-    //   this.handleProcess(1)
-    // },
-    // handelExpansion() {
-    //   this.title='选择补全数据'
-    //   this.handleProcess(2)
-    // },
-    // handelFeatureExtraction() {
-    //   this.title='选择特征提取数据'
-    //   this.handleProcess(3)
-    // },
-    // handelAssessment() {
-    //   this.title='选择退化评估数据'
-    //   this.handleProcess(4)
-    // },
-    // handelFaultPrediction() {
-    //   this.title='选择故障预测数据'
-    //   this.handleProcess(5)
-    // },
     handleProcess(type) {
       this.dialogVisible = true;
       getDataProcessByType(type).then(res => {
@@ -227,12 +220,129 @@ export default {
         this.optionalAglo = res.data;
       });
     },
-    submitHandle(){
+    submitHandle() {
       addProcess(this.form).then(response => {
         this.$modal.msgSuccess("开始执行");
         this.dialogVisible = false;
         this.getTableData()
       });
+    },
+    handleFile(dataPath, dataType) {
+      this.filePath = dataPath
+      this.fileType = dataType
+      const url = `${process.env.VUE_APP_BASE_API}${dataPath}`;
+      this.fetchLogFile(url)
+        .then((text) => {
+          // console.log("text",text);
+          switch (dataType) {
+            case '1':
+              console.log("11",);
+              const color = ['#5470c6', '#91cc75', '#fac858', '#ee6666', '#73c0de', '#3ba272', '#fc8452', '#9a60b4', '#ea7ccc']
+              const returnData = this.handleFileData(text)
+              const contentData = returnData.contentData
+              console.log("contentData", contentData);
+              const headData = returnData.headData
+              console.log("headData", headData);
+              this.fileShowVisible = true
+              this.$nextTick(() => {
+                const chart = echarts.init(this.$refs.completionChartRef);
+
+                // 生成series数据
+                const series = contentData.map((lineData, index) => ({
+                  name: `${headData[index]}`,
+                  type: 'line',
+                  data: lineData,
+                  stack: 'Total',
+                  connectNulls: true, // 连接相邻的非空数据点
+                  markPoint: {
+                    data: lineData.map((value, idx) => ({
+                      value: value === 0 ? '缺失' : null,
+                      xAxis: idx,
+                      // yAxis: lineData[idx-1],
+                      yAxis: value,
+                      itemStyle: { color: color[index] } // 高亮显示缺失值
+                    })).filter(point => point.value)
+                  }
+                }));
+
+                // 配置项
+                const option = {
+                  tooltip: {
+                    trigger: 'axis'
+                  },
+                  legend: {
+                    data: headData,
+                    textStyle: {//图例文字的样式
+                      color: '#fff'
+                    }
+                  },
+                  color: color,
+                  xAxis: {
+                    type: 'category',
+                    data: contentData[0].map((_, index) => index), // 生成x轴下标
+                    name: 'Index'
+                  },
+                  yAxis: {
+                    type: 'value',
+                    name: 'Value'
+                  },
+                  series: series
+                };
+
+                // 设置图表配置
+                chart.setOption(option);
+              })
+
+              break;
+
+            default:
+              break;
+          }
+
+          // this.fileShowData = text.split("\r\n");
+          // this.handleLineChart(this.fileShowData);
+          // this.fileVisible = true;
+        })
+        .catch((error) => {
+          console.error("Failed to fetch the log file:", error);
+          this.$modal.msgSuccess("文件读取错误");
+        });
+    },
+    // 读取文件内容
+    async fetchLogFile(url) {
+      try {
+        const response = await fetch(url, { method: "GET" });
+        if (!response.ok) {
+          throw new Error(`HTTP error! status: ${response.status}`);
+        }
+        return await response.text();
+      } catch (error) {
+        throw error;
+      }
+    },
+    // 对数据的处理
+    handleFileData(fileData) {
+      // 每行数据转换成数组、过滤出存在的空白行、将没行数据按照,号分割
+      const data = fileData.split("\r\n").filter(line => line.trim() !== '').map(row => row.split(','));
+      const headData = data[0];
+      console.log("data", data);
+      const contentData = Array.from({ length: headData.length }, () => []);
+      // debugger
+      for (let i = 1; i < data.length; i++) {  // 从 1 开始,跳过表头
+        data[i].forEach((value, index) => {
+          contentData[index].push(Number(value));
+        });
+      }
+      return { contentData, headData }
+    },
+    // 切换表格/曲线展示
+    changeShow() {
+      this.isTableShow = !this.isTableShow
+      if (!this.isTableShow) {
+        this.handleFile(this.filePath, this.fileType)
+      }
+
+
     }
   },
 }
@@ -315,7 +425,8 @@ export default {
       background-color: #00aaff;
       box-shadow: 0 5px 15px rgba(0, 170, 255, 0.5);
     }
-    .noAfter::after{
+
+    .noAfter::after {
       content: none;
     }
 
@@ -412,6 +523,14 @@ export default {
 
 }
 
+.file {
+  cursor: pointer;
+}
+
+.file:hover {
+  color: #00aaff;
+}
+
 .square {
   width: 90px;
   height: 50px;

+ 396 - 0
pdaaphm-ui/src/views/system/preprocess/index.vue

@@ -0,0 +1,396 @@
+<template>
+  <div class="app-container">
+    <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-option
+            v-for="dict in dict.type.biz_alg_type"
+            :key="dict.value"
+            :label="dict.label"
+            :value="dict.value"
+          />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="处理的算法id" prop="processAlgId" label-width="110px">
+        <el-input
+          v-model="queryParams.processAlgId"
+          placeholder="请输入处理的算法id"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="被处理数据id" prop="processedDataId" label-width="110px">
+        <el-input
+          v-model="queryParams.processedDataId"
+          placeholder="请输入被处理数据id"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="处理结果数据id" prop="resultDataId" label-width="110px">
+        <el-input
+          v-model="queryParams.resultDataId"
+          placeholder="请输入处理结果数据id"
+          clearable
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+      <el-form-item label="状态" prop="processStatus">
+        <el-select v-model="queryParams.processStatus" placeholder="请选择状态" clearable>
+          <el-option
+            v-for="dict in dict.type.biz_process_status"
+            :key="dict.value"
+            :label="dict.label"
+            :value="dict.value"
+          />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="开始时间" prop="startTime">
+        <el-date-picker clearable
+          v-model="queryParams.startTime"
+          type="date"
+          value-format="yyyy-MM-dd"
+          placeholder="请选择开始时间">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item label="结束时间" prop="endTime">
+        <el-date-picker clearable
+          v-model="queryParams.endTime"
+          type="date"
+          value-format="yyyy-MM-dd"
+          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-form-item>
+    </el-form>
+
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-plus"
+          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-col>
+      <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          :disabled="multiple"
+          @click="handleDelete"
+          v-hasPermi="['system:process:remove']"
+        >删除</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['system:process:export']"
+        >导出</el-button>
+      </el-col>
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+    </el-row>
+
+    <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"/>
+        </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="状态" align="center" prop="processStatus">
+        <template slot-scope="scope">
+          <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">
+        <template slot-scope="scope">
+          <span>{{ parseTime(scope.row.startTime, '{y}-{m}-{d}') }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="结束时间" align="center" prop="endTime" width="180">
+        <template slot-scope="scope">
+          <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">
+        <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>
+        </template>
+      </el-table-column>
+    </el-table>
+    
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+
+    <!-- 添加或修改数据处理对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="500px" 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-option
+              v-for="dict in dict.type.biz_alg_type"
+              :key="dict.value"
+              :label="dict.label"
+              :value="dict.value"
+            ></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>
+        <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="请选择状态">
+            <el-option
+              v-for="dict in dict.type.biz_process_status"
+              :key="dict.value"
+              :label="dict.label"
+              :value="dict.value"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="开始时间" prop="startTime">
+          <el-date-picker clearable
+            v-model="form.startTime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择开始时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="结束时间" prop="endTime">
+          <el-date-picker clearable
+            v-model="form.endTime"
+            type="date"
+            value-format="yyyy-MM-dd"
+            placeholder="请选择结束时间">
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="日志" prop="log">
+          <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-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listProcess, getProcess, delProcess, addProcess, updateProcess } from "@/api/system/process";
+
+export default {
+  name: "preprocess",
+  dicts: ['biz_process_status', 'biz_alg_type'],
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 数据处理表格数据
+      processList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        processType: null,
+        processAlgId: null,
+        processedDataId: null,
+        resultDataId: null,
+        processStatus: null,
+        startTime: null,
+        endTime: null,
+        log: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+        processAlgId: [
+          { required: true, message: "处理的算法id不能为空", trigger: "blur" }
+        ],
+        processedDataId: [
+          { required: true, message: "被处理数据id不能为空", trigger: "blur" }
+        ],
+      },
+      type:[1,2]
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询数据处理列表 */
+    getList() {
+      this.loading = true;
+      listProcess(this.queryParams).then(response => {
+        this.processList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        processType: this.type,
+        processAlgId: null,
+        processedDataId: null,
+        resultDataId: null,
+        processStatus: null,
+        startTime: null,
+        endTime: null,
+        log: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null,
+        remark: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加数据处理";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getProcess(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改数据处理";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateProcess(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addProcess(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      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`)
+    }
+  }
+};
+</script>

+ 12 - 9
pdaaphm-ui/src/views/system/process/index.vue

@@ -1,8 +1,8 @@
 <template>
   <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+    <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" disabled placeholder="请选择数据类型" clearable>
           <el-option
             v-for="dict in dict.type.biz_alg_type"
             :key="dict.value"
@@ -11,7 +11,7 @@
           />
         </el-select>
       </el-form-item>
-      <el-form-item label="处理的算法id" prop="processAlgId">
+      <el-form-item label="处理的算法id" prop="processAlgId" label-width="110px">
         <el-input
           v-model="queryParams.processAlgId"
           placeholder="请输入处理的算法id"
@@ -19,7 +19,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="被处理数据id" prop="processedDataId">
+      <el-form-item label="被处理数据id" prop="processedDataId" label-width="110px">
         <el-input
           v-model="queryParams.processedDataId"
           placeholder="请输入被处理数据id"
@@ -27,7 +27,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item>
-      <el-form-item label="处理结果数据id" prop="resultDataId">
+      <el-form-item label="处理结果数据id" prop="resultDataId" label-width="110px">
         <el-input
           v-model="queryParams.resultDataId"
           placeholder="请输入处理结果数据id"
@@ -173,7 +173,7 @@
     <el-dialog :title="title" :visible.sync="open" width="500px" 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="请选择数据类型" disabled>
             <el-option
               v-for="dict in dict.type.biz_alg_type"
               :key="dict.value"
@@ -182,7 +182,7 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item label="处理的算法id" label-width="110px" prop="processAlgId">
+        <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">
@@ -281,10 +281,13 @@ export default {
         processedDataId: [
           { required: true, message: "被处理数据id不能为空", trigger: "blur" }
         ],
-      }
+      },
+      type:null
     };
   },
   created() {
+    this.type=this.$route.query.type
+    this.queryParams.processType=this.$route.query.type
     this.getList();
   },
   methods: {
@@ -306,7 +309,7 @@ export default {
     reset() {
       this.form = {
         id: null,
-        processType: null,
+        processType: this.type,
         processAlgId: null,
         processedDataId: null,
         resultDataId: null,