|
@@ -0,0 +1,151 @@
|
|
|
+<template>
|
|
|
+ <div class="app-container">
|
|
|
+ <el-table :data="data" style="width: 100%;margin-bottom: 20px;" row-key="id" border default-expand-all :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
|
|
|
+ <el-table-column
|
|
|
+ prop="id"
|
|
|
+ label="id"
|
|
|
+ sortable
|
|
|
+ width="180">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="name"
|
|
|
+ label="名称"
|
|
|
+ sortable
|
|
|
+ >
|
|
|
+ </el-table-column>
|
|
|
+
|
|
|
+ <el-table-column
|
|
|
+ prop="status"
|
|
|
+ label="状态"
|
|
|
+ sortable
|
|
|
+ >
|
|
|
+ <template slot-scope="props">
|
|
|
+ <i v-if="props.row.status==1">生效中</i>
|
|
|
+ <i v-else style="color:brown">失效</i>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column
|
|
|
+ prop="order"
|
|
|
+ label="顺序"
|
|
|
+ sortable
|
|
|
+ >
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="操作" width="200px" align="center">
|
|
|
+ <template slot-scope="word">
|
|
|
+ <el-button type="primary" icon="el-icon-edit" @click="handleUpdate(word.row)" />
|
|
|
+ <el-button type="danger" icon="el-icon-delete" @click="handleDelete(word.row.id)" />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ icon="el-icon-plus"
|
|
|
+ :loading="downloadLoading"
|
|
|
+ style="margin-top: 15px"
|
|
|
+ @click="handleCreate"
|
|
|
+ >添加</el-button
|
|
|
+ >
|
|
|
+ <el-button
|
|
|
+ type="danger"
|
|
|
+ icon="el-icon-delete"
|
|
|
+ v-if="selectedIds.length > 0"
|
|
|
+ style="margin-top: 15px"
|
|
|
+ @click="handleMultiDelete()"
|
|
|
+ >删除</el-button
|
|
|
+ >
|
|
|
+ <!----------------------------------- 设备类别 ---------------------------------------------->
|
|
|
+ <el-dialog :title="title" :visible.sync="formVisible" @close="handleCancel" width="500px">
|
|
|
+ <el-form :ref="formName" :model="formFieldsData" :rules="rules">
|
|
|
+ <el-form-item label="设备分类" :label-width="formLabelWidth" prop="pid" required>
|
|
|
+ <el-select v-model="formFieldsData.pid" clearable style="width: 250px" placeholder="请选择设备类型">
|
|
|
+ <el-option label="无设备类别" value='0'></el-option>
|
|
|
+ <el-option
|
|
|
+ v-for="item in deviceTypes"
|
|
|
+ :key="item.id"
|
|
|
+ :label="item.name"
|
|
|
+ :value="item.id">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-form :ref="formName" :model="formFieldsData" :rules="rules">
|
|
|
+ <el-form-item label="类别名称" :label-width="formLabelWidth" prop="name" required>
|
|
|
+ <el-input v-model="formFieldsData.name" placeholder="请输入类别名称" style="width: 250px" autocomplete="off" clearable />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="状态" :label-width="formLabelWidth" prop="status" required>
|
|
|
+ <el-select v-model="formFieldsData.status" clearable style="width: 250px" placeholder="请选择状态" >
|
|
|
+ <el-option key=1 label="有效" value=1></el-option>
|
|
|
+ <el-option key=-1 label="无效" value=-1></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="顺序" :label-width="formLabelWidth" prop="order" required>
|
|
|
+ <el-input v-model.number="formFieldsData.order" placeholder="输入顺序" style="width: 250px" autocomplete="off" clearable />
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button @click="handleCancel">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="handleSubmit">确 定</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+<script>
|
|
|
+import formOperate from '@/layout/mixin/formOperate'
|
|
|
+
|
|
|
+export default {
|
|
|
+ name:"equ_type",
|
|
|
+ mixins: [formOperate],
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ formName: 'device_mold',
|
|
|
+ formLabelWidth: '120px',
|
|
|
+ // 用户搜索
|
|
|
+ queryParam: {
|
|
|
+ name: '',
|
|
|
+ },
|
|
|
+ deviceTypes:[],
|
|
|
+ formVisible: false,
|
|
|
+ formFieldsData: {
|
|
|
+ name: '',
|
|
|
+ pid: '',
|
|
|
+ order:'',
|
|
|
+ status:''
|
|
|
+ },
|
|
|
+ url: 'equipmentType',
|
|
|
+ // 表单验证
|
|
|
+ rules: {
|
|
|
+ name: [
|
|
|
+ { required: true, message: '请输入名称', trigger: ['change','blur'] }
|
|
|
+ ],
|
|
|
+ pid:[
|
|
|
+ {required:true,message: '请选择类别', trigger: ['change','blur']}
|
|
|
+ ],
|
|
|
+ status:[
|
|
|
+ { required: true,message: '请选择状态', trigger: ['change','blur'] }
|
|
|
+ ],
|
|
|
+ order:[
|
|
|
+ { required: true, message: '请输入顺序',trigger: ['change','blur'] },
|
|
|
+ {
|
|
|
+ required: true,
|
|
|
+ pattern: /^[1-9]\d*$/,
|
|
|
+ message: '必须正整数',
|
|
|
+ trigger: 'blur'
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.$http.get("findParentEquipmentTyp").then(resp => {
|
|
|
+ this.deviceTypes = resp.data
|
|
|
+ });
|
|
|
+ },
|
|
|
+}
|
|
|
+</script>
|
|
|
+<style lang="scss" scoped>
|
|
|
+.filter-item{
|
|
|
+ margin-bottom: 10px;
|
|
|
+}
|
|
|
+</style>
|