wanggaokun 1 vuosi sitten
vanhempi
sitoutus
40f7e8229f
1 muutettua tiedostoa jossa 118 lisäystä ja 96 poistoa
  1. 118 96
      PHM-web/src/views/manage/orderInfo/index.vue

+ 118 - 96
PHM-web/src/views/manage/orderInfo/index.vue

@@ -2,20 +2,22 @@
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
       <el-form-item label="指令名称" prop="orderName">
-        <el-input
-          v-model="queryParams.orderName"
-          placeholder="请输入指令名称"
-          clearable
-          @keyup.enter.native="handleQuery"
-        />
+        <el-input v-model="queryParams.orderName" placeholder="请输入指令名称" clearable @keyup.enter.native="handleQuery" />
       </el-form-item>
-      <el-form-item label="指令类型" prop="orderType">
-        <el-input
-          v-model="queryParams.orderType"
-          placeholder="请输入指令类型"
-          clearable
-          @keyup.enter.native="handleQuery"
-        />
+      <el-form-item label="状态" prop="status">
+        <el-select v-model="queryParams.status" placeholder="请选择指令状态" clearable>
+          <el-option v-for="dict in dict.type.order_status" :key="dict.value" :label="dict.label" :value="dict.value" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="创建时间" prop="createTime">
+        <el-date-picker clearable v-model="queryParams.createTime" type="date" value-format="yyyy-MM-dd"
+          placeholder="请选择创建时间">
+        </el-date-picker>
+      </el-form-item>
+      <el-form-item label="更新时间" prop="updateTime">
+        <el-date-picker clearable v-model="queryParams.updateTime" 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>
@@ -25,33 +27,25 @@
 
     <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="['manage:orderInfo:add']"
-        >新增</el-button>
+        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
+          v-hasPermi="['manage:orderInfo:add']">新增</el-button>
       </el-col>
       <el-col :span="1.5">
-        <el-button
-          type="warning"
-          plain
-          icon="el-icon-download"
-          size="mini"
-          @click="handleExport"
-          v-hasPermi="['manage:orderInfo:export']"
-        >导出</el-button>
+        <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
+          v-hasPermi="['manage:orderInfo:export']">导出</el-button>
       </el-col>
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table v-loading="loading" :data="orderInfoList" @selection-change="handleSelectionChange">
       <el-table-column type="selection" width="55" align="center" />
-      
       <el-table-column label="指令名称" align="center" prop="orderName" />
       <el-table-column label="指令类型" align="center" prop="orderType" />
+      <el-table-column label="状态" align="center" prop="status">
+        <template slot-scope="scope">
+          <dict-tag :options="dict.type.order_status" :value="scope.row.status" />
+        </template>
+      </el-table-column>
       <el-table-column label="创建时间" align="center" prop="createTime" width="180">
         <template slot-scope="scope">
           <span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
@@ -64,23 +58,16 @@
       </el-table-column>
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
-          <el-button
-            size="mini"
-            type="text"
-            @click="handleUpdate(scope.row)"
-            v-hasPermi="['manage:orderInfo:edit']"
-          >执行指令</el-button>
+          <el-button size="mini" type="text" @click="handle(scope.row)" :disabled="scope.row.status != 0"
+            v-hasPermi="['manage:orderInfo:edit']">执行指令</el-button>
+          <el-button size="mini" type="text" @click="handle(scope.row)" v-if="scope.row.status == 99"
+            v-hasPermi="['manage:orderInfo:edit']">异常详情</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"
-    />
+
+    <pagination v-show="total>0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
+      @pagination="getList" />
 
     <!-- 添加或修改系统指令信息对话框 -->
     <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="500px" append-to-body>
@@ -88,8 +75,14 @@
         <el-form-item label="指令名称" prop="orderName">
           <el-input v-model="form.orderName" placeholder="请输入指令名称" />
         </el-form-item>
-        <el-form-item label="指令类型" prop="orderType">
-          <el-input v-model="form.orderType" placeholder="请输入指令类型" />
+        <el-form-item label="参数内容">
+          <editor v-model="form.content" :min-height="192" />
+        </el-form-item>
+        <el-form-item label="指令状态" prop="status">
+          <el-select v-model="form.status" placeholder="请选择指令状态">
+            <el-option v-for="dict in dict.type.order_status" :key="dict.value" :label="dict.label"
+              :value="parseInt(dict.value)"></el-option>
+          </el-select>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
@@ -101,10 +94,17 @@
 </template>
 
 <script>
-import { listOrderInfo, getOrderInfo, delOrderInfo, addOrderInfo, updateOrderInfo } from "@/api/manage/orderInfo";
+import {
+  listOrderInfo,
+  getOrderInfo,
+  delOrderInfo,
+  addOrderInfo,
+  updateOrderInfo,
+} from '@/api/manage/orderInfo'
 
 export default {
-  name: "OrderInfo",
+  name: 'OrderInfo',
+  dicts: ['order_status'],
   data() {
     return {
       // 遮罩层
@@ -122,7 +122,7 @@ export default {
       // 系统指令信息表格数据
       orderInfoList: [],
       // 弹出层标题
-      title: "",
+      title: '',
       // 是否显示弹出层
       open: false,
       // 查询参数
@@ -132,31 +132,40 @@ export default {
         orderName: null,
         orderType: null,
         content: null,
+        status: null,
+        isDelete: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null,
       },
       // 表单参数
       form: {},
       // 表单校验
       rules: {
-      }
-    };
+        isDelete: [
+          { required: true, message: '数据是否删除不能为空', trigger: 'blur' },
+        ],
+      },
+    }
   },
   created() {
-    this.getList();
+    this.getList()
   },
   methods: {
     /** 查询系统指令信息列表 */
     getList() {
-      this.loading = true;
+      this.loading = true
       listOrderInfo(this.queryParams).then(response => {
-        this.orderInfoList = response.rows;
-        this.total = response.total;
-        this.loading = false;
-      });
+        this.orderInfoList = response.rows
+        this.total = response.total
+        this.loading = false
+      })
     },
     // 取消按钮
     cancel() {
-      this.open = false;
-      this.reset();
+      this.open = false
+      this.reset()
     },
     // 表单重置
     reset() {
@@ -165,77 +174,90 @@ export default {
         orderName: null,
         orderType: null,
         content: null,
+        status: null,
         isDelete: null,
         createBy: null,
         createTime: null,
         updateBy: null,
-        updateTime: null
-      };
-      this.resetForm("form");
+        updateTime: null,
+      }
+      this.resetForm('form')
     },
     /** 搜索按钮操作 */
     handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
+      this.queryParams.pageNum = 1
+      this.getList()
     },
     /** 重置按钮操作 */
     resetQuery() {
-      this.resetForm("queryForm");
-      this.handleQuery();
+      this.resetForm('queryForm')
+      this.handleQuery()
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
       this.ids = selection.map(item => item.id)
-      this.single = selection.length!==1
+      this.single = selection.length !== 1
       this.multiple = !selection.length
     },
     /** 新增按钮操作 */
     handleAdd() {
-      this.reset();
-      this.open = true;
-      this.title = "添加系统指令信息";
+      this.reset()
+      this.open = true
+      this.title = '添加系统指令信息'
     },
-    /** 修改按钮操作 */
-    handleUpdate(row) {
-      this.reset();
+    /** 执行指令 */
+    handle(row) {
       const id = row.id || this.ids
+      // getOrderInfo(id).then(response => {
+      //   this.form = response.data;
+      //   this.open = true;
+      //   this.title = "修改系统指令信息";
+      // });
     },
     /** 提交按钮 */
     submitForm() {
-      this.$refs["form"].validate(valid => {
+      this.$refs['form'].validate(valid => {
         if (valid) {
           if (this.form.id != null) {
             updateOrderInfo(this.form).then(response => {
-              this.$modal.msgSuccess("修改成功");
-              this.open = false;
-              this.getList();
-            });
+              this.$modal.msgSuccess('修改成功')
+              this.open = false
+              this.getList()
+            })
           } else {
             addOrderInfo(this.form).then(response => {
-              this.$modal.msgSuccess("新增成功");
-              this.open = false;
-              this.getList();
-            });
+              this.$modal.msgSuccess('新增成功')
+              this.open = false
+              this.getList()
+            })
           }
         }
-      });
+      })
     },
     /** 删除按钮操作 */
     handleDelete(row) {
-      const ids = row.id || this.ids;
-      this.$modal.confirm('是否确认删除系统指令信息编号为"' + ids + '"的数据项?').then(function() {
-        return delOrderInfo(ids);
-      }).then(() => {
-        this.getList();
-        this.$modal.msgSuccess("删除成功");
-      }).catch(() => {});
+      const ids = row.id || this.ids
+      this.$modal
+        .confirm('是否确认删除系统指令信息编号为"' + ids + '"的数据项?')
+        .then(function () {
+          return delOrderInfo(ids)
+        })
+        .then(() => {
+          this.getList()
+          this.$modal.msgSuccess('删除成功')
+        })
+        .catch(() => {})
     },
     /** 导出按钮操作 */
     handleExport() {
-      this.download('manage/orderInfo/export', {
-        ...this.queryParams
-      }, `orderInfo_${new Date().getTime()}.xlsx`)
-    }
-  }
-};
+      this.download(
+        'manage/orderInfo/export',
+        {
+          ...this.queryParams,
+        },
+        `orderInfo_${new Date().getTime()}.xlsx`
+      )
+    },
+  },
+}
 </script>