Browse Source

指定设备

Shan9312 10 months ago
parent
commit
0ff091498a
2 changed files with 647 additions and 597 deletions
  1. 1 0
      .env.development
  2. 646 597
      src/views/basicData/equipmentTMR/index.vue

+ 1 - 0
.env.development

@@ -15,4 +15,5 @@ VUE_APP_BASE_API = 'http://kpttest.kptyun.com/'
 # when you have a large number of pages.
 # Detail:  https://github.com/vuejs/vue-cli/blob/dev/packages/@vue/babel-preset-app/index.js
 
+
 VUE_CLI_BABEL_TRANSPILE_MODULES = true

+ 646 - 597
src/views/basicData/equipmentTMR/index.vue

@@ -1,615 +1,664 @@
-<template>
-  <div class="app-container">
-    <div class="search">
-      <el-input v-model="table.getdataListParm.parammaps.eqcode" placeholder="TMR设备编号" style="width: 180px;" class="filter-item" clearable />
-      <el-select v-model="table.getdataListParm.parammaps.classname" filterable placeholder="TMR设备类型" class="filter-item" style="width: 140px;" clearable>
-        <el-option v-for="item in typeList" :key="item.id" :label="item.label" :value="item.label" />
-      </el-select>
-      <el-select v-model="table.getdataListParm.parammaps.enable" filterable placeholder="是否启用" class="filter-item" style="width: 120px;" clearable>
-        <el-option v-for="item in enableList" :key="item.id" :label="item.name" :value="item.id" />
-      </el-select>
-      <el-button class="successBorder" @click="form_search">查询</el-button>
-      <el-button class="successBorder" @click="handleRefresh">重置</el-button>
-    </div>
-    <div class="operation">
-      <el-button v-if="isRoleEdit" class="success" icon="el-icon-plus" @click="handleCreate">新增</el-button>
-      <el-button v-if="isRoleEdit" class="danger" icon="el-icon-delete" @click="form_delete">删除</el-button>
-    </div>
-    <div class="table">
-      <el-table
-        :key="table.tableKey"
-        v-loading="table.listLoading"
-        element-loading-text="给我一点时间"
-        :data="table.list"
-        border
-        fit
-        highlight-current-row
-        style="width: 100%;"
-        :row-style="rowStyle"
-        :cell-style="cellStyle"
-        class="elTable table-fixed"
-        @selection-change="handleSelectionChange"
-      >
-        <el-table-column type="selection" align="center" width="50" />
-        <el-table-column label="序号" align="center" type="index" width="50px">
-          <template slot-scope="scope">
-            <span v-if="table.pageNum">{{ scope.$index + (table.pageNum-1) * table.pageSize + 1 }}</span>
-            <span v-else>1</span>
-          </template>
-        </el-table-column>
-        <el-table-column label="TMR设备编号" min-width="100px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.eqcode }}</span>
-            <el-input v-if="scope.row.Edit" v-model="scope.row.eqcode" placeholder="1-32个字符" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" maxlength="32" style="width:95%;padding:10px 0;" />
-          </template>
-        </el-table-column>
-        <el-table-column label="TMR设备名称" min-width="110px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.tname }}</span>
-            <el-input v-if="scope.row.Edit" v-model="scope.row.tname" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" maxlength="32" />
-          </template>
+<template>
+  <div class="app-container">
+    <div class="search">
+      <el-input v-model="table.getdataListParm.parammaps.eqcode" placeholder="TMR设备编号" style="width: 180px;" class="filter-item" clearable />
+      <el-select v-model="table.getdataListParm.parammaps.classname" filterable placeholder="TMR设备类型" class="filter-item" style="width: 140px;" clearable>
+        <el-option v-for="item in typeList" :key="item.id" :label="item.label" :value="item.label" />
+      </el-select>
+      <el-select v-model="table.getdataListParm.parammaps.enable" filterable placeholder="是否启用" class="filter-item" style="width: 120px;" clearable>
+        <el-option v-for="item in enableList" :key="item.id" :label="item.name" :value="item.id" />
+      </el-select>
+      <el-button class="successBorder" @click="form_search">查询</el-button>
+      <el-button class="successBorder" @click="handleRefresh">重置</el-button>
+    </div>
+    <div class="operation">
+      <el-button v-if="isRoleEdit" class="success" icon="el-icon-plus" @click="handleCreate">新增</el-button>
+      <el-button v-if="isRoleEdit" class="danger" icon="el-icon-delete" @click="form_delete">删除</el-button>
+    </div>
+    <div class="table">
+      <el-table
+        :key="table.tableKey"
+        v-loading="table.listLoading"
+        element-loading-text="给我一点时间"
+        :data="table.list"
+        border
+        fit
+        highlight-current-row
+        style="width: 100%;"
+        :row-style="rowStyle"
+        :cell-style="cellStyle"
+        class="elTable table-fixed"
+        @selection-change="handleSelectionChange"
+      >
+        <el-table-column type="selection" align="center" width="50" />
+        <el-table-column label="序号" align="center" type="index" width="50px">
+          <template slot-scope="scope">
+            <span v-if="table.pageNum">{{ scope.$index + (table.pageNum-1) * table.pageSize + 1 }}</span>
+            <span v-else>1</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="TMR设备编号" min-width="100px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.eqcode }}</span>
+            <el-input v-if="scope.row.Edit" v-model="scope.row.eqcode" placeholder="1-32个字符" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" maxlength="32" style="width:95%;padding:10px 0;" />
+          </template>
+        </el-table-column>
+        <el-table-column label="TMR设备名称" min-width="110px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.tname }}</span>
+            <el-input v-if="scope.row.Edit" v-model="scope.row.tname" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" maxlength="32" />
+          </template>
         </el-table-column>
         <el-table-column label="容量(m³)" min-width="110px" align="center">
           <template slot-scope="scope">
             <span v-if="scope.row.NoEdit">{{ scope.row.volume }}</span>
             <el-input v-if="scope.row.Edit" v-model.trim="scope.row.volume" type="number" style="width:98%;padding:10px 0;" />
           </template>
-        </el-table-column>
-        <el-table-column label="车辆颜色" min-width="70px" align="center">
-          <template slot-scope="scope">
-            <el-color-picker v-model="scope.row.tcolor" size="mini" :predefine="predefineColors" style="vertical-align: middle;" :disabled="scope.row.NoEdit" />
-          </template>
-        </el-table-column>
-        <el-table-column label="数据采集卡编号" min-width="90px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.datacaptureno }}</span>
-            <el-input v-if="scope.row.Edit" v-model="scope.row.datacaptureno" type="number" step="0.01" style="width:95%;padding:10px 0;" />
-          </template>
-        </el-table-column>
-        <el-table-column label="TMR设备类型" min-width="110px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.tclassname }}</span>
-            <el-select v-if="scope.row.Edit" v-model="scope.row.tclassid" filterable :disabled="scope.row.islock == 1" placeholder="TMR设备类型" class="filter-item" style="width:95%;padding:10px 0;" @change="changeType">
-              <el-option v-for="item in typeList" :key="item.id" :label="item.label" :value="item.value" />
-            </el-select>
-          </template>
-        </el-table-column>
-
-        <el-table-column label="最大搅拌量(KG)" min-width="110px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.maxstirfeed }}</span>
-            <el-input v-if="scope.row.Edit" v-model="scope.row.maxstirfeed" style="width: 80%;" />
-          </template>
-        </el-table-column>
-        <el-table-column label="跳转重量域(kg)" min-width="85px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.autozone }}</span>
-            <el-input v-if="scope.row.Edit" v-model="scope.row.autozone" type="textarea" :disabled="scope.row.autosecond=='0'" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" />
-          </template>
-        </el-table-column>
-        <el-table-column label="跳转延时(s)" min-width="100px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.autosecondname }}</span>
-            <el-select v-if="scope.row.Edit" v-model="scope.row.autosecond" filterable placeholder="跳转延时" class="filter-item" style="width:95%;padding:10px 0;" @change="(value)=> {changeAutosecond(value,scope.row)}">
-              <el-option v-for="item in jumpDelayList" :key="item.value" :label="item.label" :value="item.value" />
-            </el-select>
-          </template>
-        </el-table-column>
-        <el-table-column label="数据接口" min-width="110px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.datainterface }}</span>
-            <el-select v-if="scope.row.Edit" v-model="scope.row.datainterface" filterable placeholder="TMR数据接口" class="filter-item" style="width:95%;padding:10px 0;" @change="(value)=> {changeDataInterface(value, scope.row)}">
-              <el-option v-for="item in dataInterfaceList" :key="item.value" :label="item.label" :value="item.value" />
-            </el-select>
-          </template>
-        </el-table-column>
-        <el-table-column label="Imei" min-width="100px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.imei }}</span>
-            <el-input v-if="scope.row.Edit" v-model="scope.row.imei" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" />
-          </template>
-        </el-table-column>
-        <el-table-column label="备注" min-width="90px" align="center">
-          <template slot-scope="scope">
-            <span v-if="scope.row.NoEdit">{{ scope.row.remark }}</span>
-            <el-input v-if="scope.row.Edit" v-model="scope.row.remark" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" />
-          </template>
-        </el-table-column>
-        <el-table-column label="是否启用" min-width="70px" align="center">
-          <template slot-scope="scope">
-            <el-switch v-model="scope.row.enable" :disabled="scope.row.NoEdit==true" active-color="#13ce66" inactive-color="#ff4949" :active-value="1" :inactive-value="0" @change="handleEnableChange(scope.$index, scope.row)" />
-          </template>
-        </el-table-column>
-        <el-table-column label="操作" align="center" width="80" class-name="small-padding fixed-width" fixed="right">
-          <template slot-scope="{row}">
-            <!-- 新增 -->
-            <el-button v-if="row.isCreate" :disabled="isokDisable" icon="el-icon-folder-checked" class="miniSuccess" @click="createData(row)" />
-            <span v-if="row.isCreate" class="centerSpan">|</span>
-            <el-button v-if="row.isCreate" class="minCancel" icon="el-icon-close" @click="createCancel(row)" />
-            <!-- 编辑 -->
-            <el-button v-if="row.isUpdate && isRoleEdit" class="miniSuccess" icon="el-icon-edit-outline" @click="handleUpdate(row)" />
-            <span v-if="row.isUpdate && isRoleEdit" class="centerSpan">|</span>
-            <el-button v-if="row.isUpdate && isRoleEdit" class="miniDanger" icon="el-icon-delete" @click="handleRowDelete(row)" />
-            <!-- 编辑保存 -->
-            <el-button v-if="row.isUpdateSave" :disabled="isokDisable" icon="el-icon-folder-checked" class="miniSuccess" @click="updateData(row)" />
-            <span v-if="row.isUpdateSave" class="centerSpan">|</span>
-            <el-button v-if="row.isUpdateSave" class="minCancel" icon="el-icon-close" @click="updateCancel(row)" />
-          </template>
-        </el-table-column>
-      </el-table>
-      <pagination v-show="table.total>=0" :total="table.total" :page.sync="table.getdataListParm.offset" :limit.sync="table.getdataListParm.pagecount" @pagination="getList" />
-    </div>
-  </div>
-
-</template>
-
-<script>
-import { GetDataByName, PostDataByName, failproccess, ExecDataByConfig, GetDataByNames, checkButtons } from '@/api/common'
-import Cookies from 'js-cookie'
-import Pagination from '@/components/Pagination'
-import { MessageBox } from 'element-ui'
-export default {
-  name: 'EquipmentTMR',
-  components: { Pagination },
-  data() {
-    return {
-      predefineColors: [
-        '#F44336', '#E91E63', '#9C27B0', '#673AB7', '#3F51B5', '#2196F3', '#03A9F4', '#00BCD4', '#009688', '#4CAF50', '#8BC34A', '#CDDC39', '#FFEB3B', '#FFC107', '#FF9800', '#FF5722', '#795548', '#9E9E9E', '#607D8B'
-      ],
-      isRoleEdit: [],
-      requestParams: [
-        { name: 'getDictByName', offset: 0, pagecount: 0, params: ['TMR设备类型'] },
-        { name: 'getDictByName2', offset: 0, pagecount: 0, params: ['跳转延时'] },
-        { name: 'getDictByName3', offset: 0, pagecount: 0, params: ['数据接口'] }
-      ],
-      typeList: [], // TMR设备类型
-      enableList: [{ id: 1, name: '是' }, { id: 0, name: '否' }], // 是否启用
-      jumpDelayList: [], // 跳转延时
-      dataInterfaceList: [], // 数据接口
-
-      table: {
-        getdataListParm: {
-          name: 'getTMRList',
-          page: 1,
-          offset: 1,
-          pagecount: parseInt(Cookies.get('pageCount')),
-          returntype: 'Map',
-          parammaps: {
-            pastureid: Cookies.get('pastureid'),
-            eqcode: '',
-            classname: '',
-            enable: '',
-            eqtype: '1'
-          }
-        },
-        tableKey: 0,
-        list: [],
-        total: 0,
-        listLoading: true,
-        temp: {}
-      },
-      requestParam: {},
-      isokDisable: false,
-      selectList: [],
-      rowStyle: { maxHeight: 30 + 'px', height: 30 + 'px' },
-      cellStyle: { padding: 0 + 'px' }
-
-    }
-  },
-
-  created() {
-    this.getList()
-    this.getDownList()
-    this.getButtons()
-  },
-
-  methods: {
-    getButtons() {
-      const Edit = 'EquipmentTMR'
-      const isRoleEdit = checkButtons(JSON.parse(sessionStorage.getItem('buttons')), Edit)
-      this.isRoleEdit = isRoleEdit
-      console.log(this.isRoleEdit)
-    },
-    getDownList() {
-      GetDataByNames(this.requestParams).then(response => {
-        this.typeList = response.data.getDictByName.list
-        this.jumpDelayList = response.data.getDictByName2.list
-        this.dataInterfaceList = response.data.getDictByName3.list
-      })
-    },
-    getList() {
-      this.table.listLoading = true
-      GetDataByName(this.table.getdataListParm).then(response => {
-        console.log('table数据', response.data.list)
-        if (response.data.list !== null) {
-          for (let i = 0; i < response.data.list.length; i++) {
-            this.$set(response.data.list[i], 'Edit', false) // 编辑
-            this.$set(response.data.list[i], 'NoEdit', true) // 不可编辑/输入
-            this.$set(response.data.list[i], 'isCreate', false) // 新增操作
-            this.$set(response.data.list[i], 'isUpdate', true) // 编辑操作
-            this.$set(response.data.list[i], 'isUpdateSave', false) // 编辑保存
-          }
-          this.table.list = response.data.list
-          this.table.pageNum = response.data.pageNum
-          this.table.pageSize = response.data.pageSize
-        } else {
-          this.table.list = []
-        }
-        this.table.total = response.data.total
-        setTimeout(() => {
-          this.table.listLoading = false
-        }, 100)
-      })
-    },
-    handleEnableChange() {
-      console.log('点击了是否启用')
-    },
-    form_search() {
-      console.log('点击了查询')
-      this.table.getdataListParm.offset = 1
-      this.getList()
-    },
-    handleRefresh() {
-      console.log('点击了重置')
-      this.table.getdataListParm.parammaps.eqcode = ''
-      this.table.getdataListParm.parammaps.classname = ''
-      this.table.getdataListParm.parammaps.enable = ''
-      this.table.getdataListParm.parammaps.eqtype = '1'
-      this.table.getdataListParm.offset = 1
-      this.getList()
-    },
-
-    handleCreate() {
-      console.log('点击了新增')
-      // 编辑true/不可编辑false
-      // 新增操true,编辑false,编辑保存false
-      for (let i = 0; i < this.table.list.length; i++) {
-        if (this.table.list[i].Edit == true) {
-          this.$message({ type: 'error', message: '当前内容未保存,请点击取消或保存继续进行操作', duration: 2000 })
-          return false
-        }
-      }
-      this.table.list.unshift({ 'myId': (new Date()).valueOf(), 'Edit': true, 'NoEdit': false, 'isCreate': true, 'isUpdate': false, 'isUpdateSave': false, 'enable': 1, 'eqcode': '', 'tname': '', 'datacaptureno': '', 'tclassid': '', 'maxstirfeed': '', 'tcolor': '#ccc', 'autosecond': '0', 'imei': '','volume':'' })
-    },
-    // TMR设备类型
-    changeType(item) {
-      this.table.temp.tclassname = this.typeList.find(obj => obj.value == item).label
-    },
-    // 跳转延时
-    changeAutosecond(item, row) {
-      console.log(item, row)
-      this.table.temp.autosecondname = this.jumpDelayList.find(obj => obj.value == item).label
-      if (this.table.temp.autosecondname == '禁用') {
-        row.autozone = ''
-      }
-    },
-    changeDataInterface(item, row) {
-      console.log(item, row)
-      // this.table.temp.autosecondname = this.jumpDelayList.find(obj => obj.value === item).label
-    },
-    createData(row) {
-      console.log('点击了新增保存', row)
-      if (row.autosecond == '0') {
-        row.autozone = ''
-        row.autosecondname = ''
-        this.table.temp.autosecondname = ''
-      }
-      this.table.temp.pastureid = Cookies.get('pastureid')
-      this.table.temp.eqcode = row.eqcode
-      this.table.temp.tname = row.tname
-      this.table.temp.datacaptureno = row.datacaptureno
-      this.table.temp.tclassid = row.tclassid
-      this.table.temp.tclassname = this.table.temp.tclassname
-      this.table.temp.maxstirfeed = row.maxstirfeed
-      this.table.temp.enable = row.enable
-      this.table.temp.remark = row.remark
-      this.table.temp.tcolor = row.tcolor
-      this.table.temp.datainterface = row.datainterface
-      this.table.temp.autozone = row.autozone
-      this.table.temp.autosecond = row.autosecond
-      this.table.temp.autosecondname = this.table.temp.autosecondname
-      this.table.temp.imei = row.imei
+        </el-table-column>
+        <el-table-column label="车辆颜色" min-width="70px" align="center">
+          <template slot-scope="scope">
+            <el-color-picker v-model="scope.row.tcolor" size="mini" :predefine="predefineColors" style="vertical-align: middle;" :disabled="scope.row.NoEdit" />
+          </template>
+        </el-table-column>
+        <el-table-column label="数据采集卡编号" min-width="90px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.datacaptureno }}</span>
+            <el-input v-if="scope.row.Edit" v-model="scope.row.datacaptureno" type="number" step="0.01" style="width:95%;padding:10px 0;" />
+          </template>
+        </el-table-column>
+        <el-table-column label="TMR设备类型" min-width="110px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.tclassname }}</span>
+            <el-select v-if="scope.row.Edit" v-model="scope.row.tclassid" filterable :disabled="scope.row.islock == 1" placeholder="TMR设备类型" class="filter-item" style="width:95%;padding:10px 0;" @change="changeType">
+              <el-option v-for="item in typeList" :key="item.id" :label="item.label" :value="item.value" />
+            </el-select>
+          </template>
+        </el-table-column>
+
+        <el-table-column label="最大搅拌量(KG)" min-width="110px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.maxstirfeed }}</span>
+            <el-input v-if="scope.row.Edit" v-model="scope.row.maxstirfeed" style="width: 80%;" />
+          </template>
+        </el-table-column>
+        <el-table-column label="跳转重量域(kg)" min-width="85px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.autozone }}</span>
+            <el-input v-if="scope.row.Edit" v-model="scope.row.autozone" type="textarea" :disabled="scope.row.autosecond=='0'" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" />
+          </template>
+        </el-table-column>
+        <el-table-column label="跳转延时(s)" min-width="100px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.autosecondname }}</span>
+            <el-select v-if="scope.row.Edit" v-model="scope.row.autosecond" filterable placeholder="跳转延时" class="filter-item" style="width:95%;padding:10px 0;" @change="(value)=> {changeAutosecond(value,scope.row)}">
+              <el-option v-for="item in jumpDelayList" :key="item.value" :label="item.label" :value="item.value" />
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column label="数据接口" min-width="110px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.datainterface }}</span>
+            <el-select v-if="scope.row.Edit" v-model="scope.row.datainterface" filterable placeholder="TMR数据接口" class="filter-item" style="width:95%;padding:10px 0;" @change="(value)=> {changeDataInterface(value, scope.row)}">
+              <el-option v-for="item in dataInterfaceList" :key="item.value" :label="item.label" :value="item.value" />
+            </el-select>
+          </template>
+        </el-table-column>
+        <el-table-column label="Imei" min-width="100px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.imei }}</span>
+            <el-input v-if="scope.row.Edit" v-model="scope.row.imei" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" />
+          </template>
+        </el-table-column>
+
+        <el-table-column label="指定设备" min-width="100px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.appointName }}</span>
+            <el-select v-if="scope.row.Edit" v-model="scope.row.appointName" filterable placeholder="指定设备" class="filter-item" style="width:95%;padding:10px 0;" @change="changeAppoint">
+              <el-option v-for="item in appoinsList" :key="item.id" :label="item.tname" :value="item.id" />
+            </el-select>
+
+          </template>
+        </el-table-column>
+        <el-table-column label="备注" min-width="90px" align="center">
+          <template slot-scope="scope">
+            <span v-if="scope.row.NoEdit">{{ scope.row.remark }}</span>
+            <el-input v-if="scope.row.Edit" v-model="scope.row.remark" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" style="width:95%;padding:10px 0;" />
+          </template>
+        </el-table-column>
+        <el-table-column label="是否启用" min-width="70px" align="center">
+          <template slot-scope="scope">
+            <el-switch v-model="scope.row.enable" :disabled="scope.row.NoEdit==true" active-color="#13ce66" inactive-color="#ff4949" :active-value="1" :inactive-value="0" @change="handleEnableChange(scope.$index, scope.row)" />
+          </template>
+        </el-table-column>
+        <el-table-column label="操作" align="center" width="80" class-name="small-padding fixed-width" fixed="right">
+          <template slot-scope="{row}">
+            <!-- 新增 -->
+            <el-button v-if="row.isCreate" :disabled="isokDisable" icon="el-icon-folder-checked" class="miniSuccess" @click="createData(row)" />
+            <span v-if="row.isCreate" class="centerSpan">|</span>
+            <el-button v-if="row.isCreate" class="minCancel" icon="el-icon-close" @click="createCancel(row)" />
+            <!-- 编辑 -->
+            <el-button v-if="row.isUpdate && isRoleEdit" class="miniSuccess" icon="el-icon-edit-outline" @click="handleUpdate(row)" />
+            <span v-if="row.isUpdate && isRoleEdit" class="centerSpan">|</span>
+            <el-button v-if="row.isUpdate && isRoleEdit" class="miniDanger" icon="el-icon-delete" @click="handleRowDelete(row)" />
+            <!-- 编辑保存 -->
+            <el-button v-if="row.isUpdateSave" :disabled="isokDisable" icon="el-icon-folder-checked" class="miniSuccess" @click="updateData(row)" />
+            <span v-if="row.isUpdateSave" class="centerSpan">|</span>
+            <el-button v-if="row.isUpdateSave" class="minCancel" icon="el-icon-close" @click="updateCancel(row)" />
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination v-show="table.total>=0" :total="table.total" :page.sync="table.getdataListParm.offset" :limit.sync="table.getdataListParm.pagecount" @pagination="getList" />
+    </div>
+  </div>
+
+</template>
+
+<script>
+import { GetDataByName, PostDataByName, failproccess, ExecDataByConfig, GetDataByNames, checkButtons } from '@/api/common'
+import Cookies from 'js-cookie'
+import Pagination from '@/components/Pagination'
+import { MessageBox } from 'element-ui'
+export default {
+  name: 'EquipmentTMR',
+  components: { Pagination },
+  data() {
+    return {
+      predefineColors: [
+        '#F44336', '#E91E63', '#9C27B0', '#673AB7', '#3F51B5', '#2196F3', '#03A9F4', '#00BCD4', '#009688', '#4CAF50', '#8BC34A', '#CDDC39', '#FFEB3B', '#FFC107', '#FF9800', '#FF5722', '#795548', '#9E9E9E', '#607D8B'
+      ],
+      isRoleEdit: [],
+      requestParams: [
+        { name: 'getDictByName', offset: 0, pagecount: 0, params: ['TMR设备类型'] },
+        { name: 'getDictByName2', offset: 0, pagecount: 0, params: ['跳转延时'] },
+        { name: 'getDictByName3', offset: 0, pagecount: 0, params: ['数据接口'] }
+      ],
+      typeList: [], // TMR设备类型
+      enableList: [{ id: 1, name: '是' }, { id: 0, name: '否' }], // 是否启用
+      jumpDelayList: [], // 跳转延时
+      dataInterfaceList: [], // 数据接口
+      getAppoints:{
+        name:"getTTMRJB",
+        page:1,
+        offset:1,
+        pagecount:50,
+        returntype:"Map",
+        parammaps:{"pastureid":"1654779860"},//{ pastureid: Cookies.get('pastureid'),}  //{"pastureid":"1654779860"}
+      },
+      table: {
+        getdataListParm: {
+          name: 'getTMRList',
+          page: 1,
+          offset: 1,
+          pagecount: parseInt(Cookies.get('pageCount')),
+          returntype: 'Map',
+          parammaps: {
+            pastureid: Cookies.get('pastureid'),
+            eqcode: '',
+            classname: '',
+            enable: '',
+            eqtype: '1'
+          }
+        },
+        tableKey: 0,
+        list: [],
+        total: 0,
+        listLoading: true,
+        temp: {}
+      },
+      requestParam: {},
+      isokDisable: false,
+      selectList: [],
+      rowStyle: { maxHeight: 30 + 'px', height: 30 + 'px' },
+      cellStyle: { padding: 0 + 'px' },
+      appoinsList:[],
+      appoinObj:{}
+    }
+  },
+
+  created() {
+    this.getList()
+    this.getDownList()
+    this.getButtons()
+    this.getAppointHttp()
+  },
+
+  methods: {
+    // 筛选值
+    changeAppoint(val){
+     const arr= this.appoinsList.filter(item=>{
+        return item.id === val;
+      })
+      this.appoinObj.appoint = arr && arr[0].id;
+      this.appoinObj.appointName =arr && arr[0].tname;
+      console.log( this.appoinObj,'hss----111')
+    },
+    // 获取指定设备的数据
+    getAppointHttp(){
+      GetDataByName(this.getAppoints).then(res => {
+        this.appoinsList = res.data.list;
+        console.log(this.appoinsList,'response----hss')
+
+      })
+    },
+    getButtons() {
+      const Edit = 'EquipmentTMR'
+      const isRoleEdit = checkButtons(JSON.parse(sessionStorage.getItem('buttons')), Edit)
+      this.isRoleEdit = isRoleEdit
+      console.log(this.isRoleEdit)
+    },
+    getDownList() {
+      GetDataByNames(this.requestParams).then(response => {
+        this.typeList = response.data.getDictByName.list
+        this.jumpDelayList = response.data.getDictByName2.list
+        this.dataInterfaceList = response.data.getDictByName3.list
+      })
+    },
+    getList() {
+      this.table.listLoading = true
+      GetDataByName(this.table.getdataListParm).then(response => {
+        console.log('table数据', response.data.list)
+        if (response.data.list !== null) {
+          for (let i = 0; i < response.data.list.length; i++) {
+            this.$set(response.data.list[i], 'Edit', false) // 编辑
+            this.$set(response.data.list[i], 'NoEdit', true) // 不可编辑/输入
+            this.$set(response.data.list[i], 'isCreate', false) // 新增操作
+            this.$set(response.data.list[i], 'isUpdate', true) // 编辑操作
+            this.$set(response.data.list[i], 'isUpdateSave', false) // 编辑保存
+          }
+          this.table.list = response.data.list
+          this.table.pageNum = response.data.pageNum
+          this.table.pageSize = response.data.pageSize
+        } else {
+          this.table.list = []
+        }
+        this.table.total = response.data.total
+        setTimeout(() => {
+          this.table.listLoading = false
+        }, 100)
+      })
+    },
+    handleEnableChange() {
+      console.log('点击了是否启用')
+    },
+    form_search() {
+      console.log('点击了查询')
+      this.table.getdataListParm.offset = 1
+      this.getList()
+    },
+    handleRefresh() {
+      console.log('点击了重置')
+      this.table.getdataListParm.parammaps.eqcode = ''
+      this.table.getdataListParm.parammaps.classname = ''
+      this.table.getdataListParm.parammaps.enable = ''
+      this.table.getdataListParm.parammaps.eqtype = '1'
+      this.table.getdataListParm.offset = 1
+      this.getList()
+    },
+
+    handleCreate() {
+      console.log('点击了新增')
+      // 编辑true/不可编辑false
+      // 新增操true,编辑false,编辑保存false
+      for (let i = 0; i < this.table.list.length; i++) {
+        if (this.table.list[i].Edit == true) {
+          this.$message({ type: 'error', message: '当前内容未保存,请点击取消或保存继续进行操作', duration: 2000 })
+          return false
+        }
+      }
+      this.table.list.unshift({ 'myId': (new Date()).valueOf(), 'Edit': true, 'NoEdit': false, 'isCreate': true, 'isUpdate': false, 'isUpdateSave': false, 'enable': 1, 'eqcode': '', 'tname': '', 'datacaptureno': '', 'tclassid': '', 'maxstirfeed': '', 'tcolor': '#ccc', 'autosecond': '0', 'imei': '','volume':'' })
+    },
+    // TMR设备类型
+    changeType(item) {
+      this.table.temp.tclassname = this.typeList.find(obj => obj.value == item).label
+    },
+    // 跳转延时
+    changeAutosecond(item, row) {
+      console.log(item, row)
+      this.table.temp.autosecondname = this.jumpDelayList.find(obj => obj.value == item).label
+      if (this.table.temp.autosecondname == '禁用') {
+        row.autozone = ''
+      }
+    },
+    changeDataInterface(item, row) {
+      console.log(item, row)
+      // this.table.temp.autosecondname = this.jumpDelayList.find(obj => obj.value === item).label
+    },
+    createData(row) {
+      console.log('点击了新增保存', row)
+      if (row.autosecond == '0') {
+        row.autozone = ''
+        row.autosecondname = ''
+        this.table.temp.autosecondname = ''
+      }
+      this.table.temp.pastureid = Cookies.get('pastureid')
+      this.table.temp.eqcode = row.eqcode
+      this.table.temp.tname = row.tname
+      this.table.temp.datacaptureno = row.datacaptureno
+      this.table.temp.tclassid = row.tclassid
+      this.table.temp.tclassname = this.table.temp.tclassname
+      this.table.temp.maxstirfeed = row.maxstirfeed
+      this.table.temp.enable = row.enable
+      this.table.temp.remark = row.remark
+      this.table.temp.tcolor = row.tcolor
+      this.table.temp.datainterface = row.datainterface
+      this.table.temp.autozone = row.autozone
+      this.table.temp.autosecond = row.autosecond
+      this.table.temp.autosecondname = this.table.temp.autosecondname
+      this.table.temp.imei = row.imei
       if(this.table.temp.volume == ''){
         this.table.temp.volume = 0
       }
-      this.table.temp.volume = parseFloat(row.volume)
-      // 检验用户名称/角色是否为空
-      if (this.table.temp.eqcode == '' && this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: 'TMR设备编号/TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: 'TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: '数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: 'TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.eqcode == '') {
-        this.$message({ type: 'error', message: 'TMR设备编号不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tname == '') {
-        this.$message({ type: 'error', message: 'TMR设备名称不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.datacaptureno == '') {
-        this.$message({ type: 'error', message: '数据采集卡编号不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tclassid == '') {
-        this.$message({ type: 'error', message: '设备类型不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: '最大搅拌量不能为空', duration: 2000 })
-        return false
-      }
-      const datacaptureno = /^([0-9]|(1[0-5]))$/
-      if (!datacaptureno.test(parseFloat(this.table.temp.datacaptureno))) {
-        this.$message({ type: 'error', message: '数据采集卡请输入0-15之间整数', duration: 2000 })
-        return false
-      }
-      if (row.autosecond !== '0') {
-        const autozone = /^(0|[1-9]|[1-3]\d|40)$/
-        if (!autozone.test(parseFloat(this.table.temp.autozone))) {
-          this.$message({ type: 'error', message: '跳转重量域请输入0-40之间整数', duration: 2000 })
-          return false
-        }
-      }
-      const maxstirfeed = /^[1-9]\d*$/
-      if (!maxstirfeed.test(parseFloat(this.table.temp.maxstirfeed))) {
-        this.$message({ type: 'error', message: '最大搅拌量请输入正整数', duration: 2000 })
-        return false
-      }
-      const pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]")
-      if (pattern.test(this.table.temp.eqcode)) {
-        this.$message({ type: 'error', message: 'TMR设备编号不可输入特殊字符', duration: 2000 })
-        return false
-      }
-      if (pattern.test(this.table.temp.tname)) {
-        this.$message({ type: 'error', message: 'TMR设备名称不可输入特殊字符', duration: 2000 })
-        return false
-      }
-      this.isokDisable = true
-      setTimeout(() => {
-        this.isokDisable = false
-      }, 1000)
-      this.requestParam.name = 'insertTMR'
-      this.requestParam.parammaps = this.table.temp
-      PostDataByName(this.requestParam).then(response => {
-        console.log('新增保存发送参数', this.requestParam)
-        if (response.msg !== 'fail') {
-          this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
-          this.getList()
-        } else {
-          this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
-        }
-      })
-    },
-    createCancel(row) {
-      console.log('点击了新增取消')
-      for (let i = 0; i < this.table.list.length; i++) {
-        if (row.myId === this.table.list[i].myId) {
-          var listIndex = this.table.list.indexOf(this.table.list[i])
-        }
-        if (listIndex > -1) {
-          this.table.list.splice(listIndex, 1)
-          return
-        }
-      }
-    },
-    handleUpdate(row) {
-      for (let i = 0; i < this.table.list.length; i++) {
-        if (this.table.list[i].Edit == true) {
-          this.$message({ type: 'error', message: '当前内容未保存,请点击取消或保存继续进行操作', duration: 2000 })
-          return false
-        }
-      }
-      // 编辑true,不可编辑false
-      row.Edit = true
-      row.NoEdit = false
-      // 新增false,编辑false,编辑保存true
-      row.isCreate = false
-      row.isUpdate = false
-      row.isUpdateSave = true
-      row.tclassid = String(row.tclassid)
-      if(row.autosecond == undefined){
-        this.$set(row,'autosecond','')
-        this.$set(row,'autosecondname','')
-      }else{
-        row.autosecond = String(row.autosecond)
-      }
-      this.table.temp.tclassid = row.tclassid
-      this.table.temp.tclassname = row.tclassname
-      console.log(row)
-      console.log(this.table.temp.tclassname)
-    },
-    updateData(row) {
-      console.log('点击了编辑保存', row)
-      if (row.tcolor == null) {
-        row.tcolor = '#CCCCCC'
-      }
-      if (row.autosecond == '0') {
-        row.autozone = ''
-        row.autosecondname = ''
-        this.table.temp.autosecondname = ''
-      }
-
-      this.table.temp.pastureid = Cookies.get('pastureid')
-      this.table.temp.eqcode = row.eqcode
-      this.table.temp.tname = row.tname
-      this.table.temp.datacaptureno = row.datacaptureno
-      this.table.temp.tclassid = row.tclassid
-      this.table.temp.tclassname = this.table.temp.tclassname
-      this.table.temp.maxstirfeed = row.maxstirfeed
-      this.table.temp.enable = row.enable
-      this.table.temp.remark = row.remark
-      this.table.temp.id = row.id
-      this.table.temp.tcolor = row.tcolor
-      this.table.temp.imei = row.imei
-      this.table.temp.datainterface = row.datainterface
-      this.table.temp.autozone = row.autozone
-      this.table.temp.autosecond = row.autosecond
-      this.table.temp.autosecondname = this.table.temp.autosecondname
+      this.table.temp.volume = parseFloat(row.volume)
+      // 检验用户名称/角色是否为空
+      if (this.table.temp.eqcode == '' && this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: 'TMR设备编号/TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: 'TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: '数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: 'TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.eqcode == '') {
+        this.$message({ type: 'error', message: 'TMR设备编号不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tname == '') {
+        this.$message({ type: 'error', message: 'TMR设备名称不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.datacaptureno == '') {
+        this.$message({ type: 'error', message: '数据采集卡编号不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tclassid == '') {
+        this.$message({ type: 'error', message: '设备类型不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: '最大搅拌量不能为空', duration: 2000 })
+        return false
+      }
+      const datacaptureno = /^([0-9]|(1[0-5]))$/
+      if (!datacaptureno.test(parseFloat(this.table.temp.datacaptureno))) {
+        this.$message({ type: 'error', message: '数据采集卡请输入0-15之间整数', duration: 2000 })
+        return false
+      }
+      if (row.autosecond !== '0') {
+        const autozone = /^(0|[1-9]|[1-3]\d|40)$/
+        if (!autozone.test(parseFloat(this.table.temp.autozone))) {
+          this.$message({ type: 'error', message: '跳转重量域请输入0-40之间整数', duration: 2000 })
+          return false
+        }
+      }
+      const maxstirfeed = /^[1-9]\d*$/
+      if (!maxstirfeed.test(parseFloat(this.table.temp.maxstirfeed))) {
+        this.$message({ type: 'error', message: '最大搅拌量请输入正整数', duration: 2000 })
+        return false
+      }
+      const pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]")
+      if (pattern.test(this.table.temp.eqcode)) {
+        this.$message({ type: 'error', message: 'TMR设备编号不可输入特殊字符', duration: 2000 })
+        return false
+      }
+      if (pattern.test(this.table.temp.tname)) {
+        this.$message({ type: 'error', message: 'TMR设备名称不可输入特殊字符', duration: 2000 })
+        return false
+      }
+      this.isokDisable = true
+      setTimeout(() => {
+        this.isokDisable = false
+      }, 1000)
+      this.requestParam.name = 'insertTMR'
+      this.requestParam.parammaps = this.table.temp
+      this.requestParam.parammaps.appoint= this.appoinObj.appoint;
+      this.requestParam.parammaps.appointName= this.appoinObj.appointName;
+      PostDataByName(this.requestParam).then(response => {
+        console.log('新增保存发送参数', this.requestParam)
+        if (response.msg !== 'fail') {
+          this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
+          this.getList()
+        } else {
+          this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
+        }
+      })
+    },
+    createCancel(row) {
+      console.log('点击了新增取消')
+      for (let i = 0; i < this.table.list.length; i++) {
+        if (row.myId === this.table.list[i].myId) {
+          var listIndex = this.table.list.indexOf(this.table.list[i])
+        }
+        if (listIndex > -1) {
+          this.table.list.splice(listIndex, 1)
+          return
+        }
+      }
+    },
+    handleUpdate(row) {
+      for (let i = 0; i < this.table.list.length; i++) {
+        if (this.table.list[i].Edit == true) {
+          this.$message({ type: 'error', message: '当前内容未保存,请点击取消或保存继续进行操作', duration: 2000 })
+          return false
+        }
+      }
+      // 编辑true,不可编辑false
+      row.Edit = true
+      row.NoEdit = false
+      // 新增false,编辑false,编辑保存true
+      row.isCreate = false
+      row.isUpdate = false
+      row.isUpdateSave = true
+      row.tclassid = String(row.tclassid)
+
+      if(row.autosecond == undefined){
+        this.$set(row,'autosecond','')
+        this.$set(row,'autosecondname','')
+      }else{
+        row.autosecond = String(row.autosecond)
+      }
+      this.table.temp.tclassid = row.tclassid
+      this.table.temp.tclassname = row.tclassname
+      console.log(row)
+      console.log(this.table.temp.tclassname)
+    },
+    updateData(row) {
+      // row.appoint= this.appoinObj.appoint;
+      // row.appointName= this.appoinObj.appointName;
+
+      // console.log('点击了编辑保存', row)
+
+      if (row.tcolor == null) {
+        row.tcolor = '#CCCCCC'
+      }
+      if (row.autosecond == '0') {
+        row.autozone = ''
+        row.autosecondname = ''
+        this.table.temp.autosecondname = ''
+      }
+
+      this.table.temp.pastureid = Cookies.get('pastureid')
+      this.table.temp.eqcode = row.eqcode
+      this.table.temp.tname = row.tname
+      this.table.temp.datacaptureno = row.datacaptureno
+      this.table.temp.tclassid = row.tclassid
+      this.table.temp.tclassname = this.table.temp.tclassname
+      this.table.temp.maxstirfeed = row.maxstirfeed
+      this.table.temp.enable = row.enable
+      this.table.temp.remark = row.remark
+      this.table.temp.id = row.id
+      this.table.temp.tcolor = row.tcolor
+      this.table.temp.imei = row.imei
+      this.table.temp.datainterface = row.datainterface
+      this.table.temp.autozone = row.autozone
+      this.table.temp.autosecond = row.autosecond
+      this.table.temp.autosecondname = this.table.temp.autosecondname
       if(this.table.temp.volume == ''){
         this.table.temp.volume = 0
       }
-      this.table.temp.volume = parseFloat(row.volume)
-      // 检验用户名称/角色是否为空
-      if (this.table.temp.eqcode == '' && this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: 'TMR设备编号/TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: 'TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: '数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: 'TMR设备类型/最大搅拌量不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.eqcode == '') {
-        this.$message({ type: 'error', message: 'TMR设备编号不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tname == '') {
-        this.$message({ type: 'error', message: '设备名称不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.datacaptureno == '') {
-        this.$message({ type: 'error', message: '数据采集卡编号不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.tclassid == '') {
-        this.$message({ type: 'error', message: '设备类型不能为空', duration: 2000 })
-        return false
-      } else if (this.table.temp.maxstirfeed == '') {
-        this.$message({ type: 'error', message: '最大搅拌量不能为空', duration: 2000 })
-        return false
-      }
-      const datacaptureno = /^([0-9]|(1[0-5]))$/
-      if (!datacaptureno.test(parseInt(this.table.temp.datacaptureno))) {
-        this.$message({ type: 'error', message: '数据采集卡请输入0-15之间整数', duration: 2000 })
-        return false
-      }
-      const maxstirfeed = /^[1-9]\d*$/
-      if (!maxstirfeed.test(parseInt(this.table.temp.maxstirfeed))) {
-        this.$message({ type: 'error', message: '最大搅拌量请输入正整数', duration: 2000 })
-        return false
-      }
-      console.log(row.autozone, '=0000')
+      this.table.temp.volume = parseFloat(row.volume)
+      // 检验用户名称/角色是否为空
+      if (this.table.temp.eqcode == '' && this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: 'TMR设备编号/TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tname == '' && this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: 'TMR设备名称/数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.datacaptureno == '' && this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: '数据采集卡编号/TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tclassid == '' && this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: 'TMR设备类型/最大搅拌量不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.eqcode == '') {
+        this.$message({ type: 'error', message: 'TMR设备编号不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tname == '') {
+        this.$message({ type: 'error', message: '设备名称不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.datacaptureno == '') {
+        this.$message({ type: 'error', message: '数据采集卡编号不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.tclassid == '') {
+        this.$message({ type: 'error', message: '设备类型不能为空', duration: 2000 })
+        return false
+      } else if (this.table.temp.maxstirfeed == '') {
+        this.$message({ type: 'error', message: '最大搅拌量不能为空', duration: 2000 })
+        return false
+      }
+      const datacaptureno = /^([0-9]|(1[0-5]))$/
+      if (!datacaptureno.test(parseInt(this.table.temp.datacaptureno))) {
+        this.$message({ type: 'error', message: '数据采集卡请输入0-15之间整数', duration: 2000 })
+        return false
+      }
+      const maxstirfeed = /^[1-9]\d*$/
+      if (!maxstirfeed.test(parseInt(this.table.temp.maxstirfeed))) {
+        this.$message({ type: 'error', message: '最大搅拌量请输入正整数', duration: 2000 })
+        return false
+      }
+      console.log(row.autozone, '=0000')
       if (row.autosecond !== '0') {
         const autozone = /^(0|[1-9]|[1-3]\d|40)$/
         if (!autozone.test(parseFloat(this.table.temp.autozone))) {
           this.$message({ type: 'error', message: '跳转重量域请输入0-40之间整数', duration: 2000 })
           return false
         }
-      }
-      const pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]")
-      if (pattern.test(this.table.temp.eqcode)) {
-        this.$message({ type: 'error', message: 'TMR设备编号不可输入特殊字符', duration: 2000 })
-        return false
-      }
-      if (pattern.test(this.table.temp.tname)) {
-        this.$message({ type: 'error', message: 'TMR设备名称不可输入特殊字符', duration: 2000 })
-        return false
-      }
-      this.isokDisable = true
-      setTimeout(() => {
-        this.isokDisable = false
-      }, 1000)
-      this.requestParam.name = 'updateTMR'
-      this.requestParam.parammaps = this.table.temp
-      PostDataByName(this.requestParam).then(response => {
-        console.log('新增保存发送参数', this.requestParam)
-        if (response.msg !== 'fail') {
-          this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
-          this.getList()
-        } else {
-          this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
-        }
-      })
-    },
-    updateCancel(row) {
-      console.log('点击了编辑取消')
-      // 编辑false,不可编辑true
-      row.Edit = false
-      row.NoEdit = true
-      // 新增false,编辑true,编辑保存false
-      row.isCreate = false
-      row.isUpdate = true
-      row.isUpdateSave = false
-      this.getList()
-    },
-
-    // 删除
-    handleRowDelete(row) {
-      console.log('点击了行内删除')
-      MessageBox.confirm('是否确认删除此信息?', {
-        confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'
-      }).then(() => {
-        this.selectList = []
-        this.requestParam = {}
-        this.requestParam.common = { 'returnmap': '0' }
-        this.requestParam.data = []
-        this.requestParam.data[0] = { 'name': 'checkDeleteTmr', 'type': 'v', 'parammaps': {
-          'pastureid': row.pastureid,
-          'id': row.id
-        }}
-        this.requestParam.data[1] = { 'name': 'deleteTMR', 'type': 'e', 'parammaps': {
-          'pastureid': row.pastureid,
-          'id': row.id
-        }}
-        ExecDataByConfig(this.requestParam).then(response => {
-          console.log('删除保存发送参数', this.requestParam)
-          if (response.msg === 'fail') {
-            this.$notify({ title: '删除失败', message: response.data, type: 'warning', duration: 2000 })
-          } else {
-            this.$notify({ title: '', message: '删除成功', type: 'success', duration: 2000 })
-            this.getList()
-          }
-        })
-      }).catch(() => {
-        this.$message({ type: 'info', message: '已取消删除' })
-      })
-    },
-    handleSelectionChange(val) {
-      console.log('勾选数据', val)
-      this.selectList = val
-    },
-    form_delete() {
-      console.log('点击了删除')
-      if (this.selectList.length == 0) {
-        this.$message({ type: 'error', message: '请选择TMR设备信息', duration: 2000 })
-      } else {
-        MessageBox.confirm('当前选中' + this.selectList.length + '条信息,是否删除?', {
-          confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'
-        }).then(() => {
-          console.log(this.selectList)
-          this.requestParam = {}
-          this.requestParam.common = { 'returnmap': '0' }
-          this.requestParam.data = []
-          this.requestParam.data[0] = { 'name': 'insertSpotList', 'resultmaps': { 'list': this.selectList }}
-          this.requestParam.data[0].children = []
-          this.requestParam.data[0].children[0] = { 'name': 'checkDeleteTmr', 'type': 'v', 'parammaps': {
-            id: '@insertSpotList.id',
-            pastureid: '@insertSpotList.pastureid'
-          }}
-          this.requestParam.data[0].children[1] = { 'name': 'deleteTMR', 'type': 'e', 'parammaps': {
-            id: '@insertSpotList.id',
-            pastureid: '@insertSpotList.pastureid'
-          }}
-          ExecDataByConfig(this.requestParam).then(response => {
-            console.log('删除保存发送参数', this.requestParam)
-            if (response.msg === 'fail') {
-              this.$notify({ title: '删除失败', message: response.data, type: 'warning', duration: 2000 })
-            } else {
-              this.$notify({ title: '', message: '删除成功', type: 'success', duration: 2000 })
-              this.getList()
-            }
-          })
-        })
-      }
-    }
-  }
-}
-</script>
-<style lang="scss" scoped>
-  .search{margin-top:10px;}
-  
-</style>
+      }
+      const pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]")
+      if (pattern.test(this.table.temp.eqcode)) {
+        this.$message({ type: 'error', message: 'TMR设备编号不可输入特殊字符', duration: 2000 })
+        return false
+      }
+      if (pattern.test(this.table.temp.tname)) {
+        this.$message({ type: 'error', message: 'TMR设备名称不可输入特殊字符', duration: 2000 })
+        return false
+      }
+      this.isokDisable = true
+      setTimeout(() => {
+        this.isokDisable = false
+      }, 1000)
+      this.requestParam.name = 'updateTMR'
+      this.requestParam.parammaps = this.table.temp
+      this.requestParam.parammaps.appoint= this.appoinObj.appoint;
+      this.requestParam.parammaps.appointName= this.appoinObj.appointName;
+      console.log('点击了编辑保存---hss', this.requestParam)
+      PostDataByName(this.requestParam).then(response => {
+        console.log('新增保存发送参数', this.requestParam)
+        if (response.msg !== 'fail') {
+          this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
+          this.getList()
+        } else {
+          this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
+        }
+      })
+    },
+    updateCancel(row) {
+      console.log('点击了编辑取消')
+      // 编辑false,不可编辑true
+      row.Edit = false
+      row.NoEdit = true
+      // 新增false,编辑true,编辑保存false
+      row.isCreate = false
+      row.isUpdate = true
+      row.isUpdateSave = false
+      // row.appoint= this.appoinObj.appoint;
+      // row.appointName= this.appoinObj.appointName;
+      this.getList()
+    },
+
+    // 删除
+    handleRowDelete(row) {
+      console.log('点击了行内删除')
+      MessageBox.confirm('是否确认删除此信息?', {
+        confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'
+      }).then(() => {
+        this.selectList = []
+        this.appoinObj={};
+        this.requestParam = {}
+        this.requestParam.common = { 'returnmap': '0' }
+        this.requestParam.data = []
+        this.requestParam.data[0] = { 'name': 'checkDeleteTmr', 'type': 'v', 'parammaps': {
+          'pastureid': row.pastureid,
+          'id': row.id
+        }}
+        this.requestParam.data[1] = { 'name': 'deleteTMR', 'type': 'e', 'parammaps': {
+          'pastureid': row.pastureid,
+          'id': row.id
+        }}
+        ExecDataByConfig(this.requestParam).then(response => {
+          console.log('删除保存发送参数', this.requestParam)
+          if (response.msg === 'fail') {
+            this.$notify({ title: '删除失败', message: response.data, type: 'warning', duration: 2000 })
+          } else {
+            this.$notify({ title: '', message: '删除成功', type: 'success', duration: 2000 })
+            this.getList()
+          }
+        })
+      }).catch(() => {
+        this.$message({ type: 'info', message: '已取消删除' })
+      })
+    },
+    handleSelectionChange(val) {
+      console.log('勾选数据', val)
+      this.selectList = val
+    },
+    form_delete() {
+      console.log('点击了删除')
+      if (this.selectList.length == 0) {
+        this.$message({ type: 'error', message: '请选择TMR设备信息', duration: 2000 })
+      } else {
+        MessageBox.confirm('当前选中' + this.selectList.length + '条信息,是否删除?', {
+          confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'
+        }).then(() => {
+          console.log(this.selectList)
+          this.requestParam = {}
+          this.requestParam.common = { 'returnmap': '0' }
+          this.requestParam.data = []
+          this.requestParam.data[0] = { 'name': 'insertSpotList', 'resultmaps': { 'list': this.selectList }}
+          this.requestParam.data[0].children = []
+          this.requestParam.data[0].children[0] = { 'name': 'checkDeleteTmr', 'type': 'v', 'parammaps': {
+            id: '@insertSpotList.id',
+            pastureid: '@insertSpotList.pastureid'
+          }}
+          this.requestParam.data[0].children[1] = { 'name': 'deleteTMR', 'type': 'e', 'parammaps': {
+            id: '@insertSpotList.id',
+            pastureid: '@insertSpotList.pastureid'
+          }}
+          ExecDataByConfig(this.requestParam).then(response => {
+            console.log('删除保存发送参数', this.requestParam)
+            if (response.msg === 'fail') {
+              this.$notify({ title: '删除失败', message: response.data, type: 'warning', duration: 2000 })
+            } else {
+              this.$notify({ title: '', message: '删除成功', type: 'success', duration: 2000 })
+              this.getList()
+            }
+          })
+        })
+      }
+    }
+  }
+}
+</script>
+<style lang="scss" scoped>
+  .search{margin-top:10px;}
+
+</style>