Explorar el Código

Merge branch 'release/v1.1.1' into feature/internationalization

Shan9312 hace 11 meses
padre
commit
7188318751

+ 1 - 0
.env.development

@@ -16,4 +16,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

+ 2 - 6
src/utils/request.js

@@ -14,9 +14,8 @@ if (DoMainString) {
 var reg =  /(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)/;
 var browserUrl = window.location.hostname
 console.log("========url===",reg.test(browserUrl))
-// 打包的时候打开,日常关掉
 // if (reg.test(browserUrl)){
-//   URL = window.location.protocol +"//"+ browserUrl + ":80/"
+//   URL = window.location.protocol +"//"+ browserUrl + ":8082"
 // }
 
 Cookies.set('url',URL)
@@ -34,7 +33,7 @@ service.interceptors.request.use(
     // do something before request is sent
     // config.headers['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'  //此处是增加的代码,设置请求头的类型
     if (process.env.VUE_APP_BASE_API !== '/dev-api') {
-      config.headers['Content-Type'] = 'application/json'
+      config.headers['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'
       config.withCredentials = false
     }
 
@@ -119,9 +118,6 @@ service.interceptors.response.use(
     console.log('config.__retryCount==>', config.__retryCount) // for debug
     // 设置请求超时次数
     config.__retryCount = config.__retryCount || 0
-    // 君盛牧场不需要多次请求
-    // if (config.__retryCount >= 0) {
-    // 其他牧场失败后需要多次尝试
     if (config.__retryCount >= 3) {
       // Message({ message:error.message, type: 'error', duration: 5 * 1000 })
       Message({ message:this.$t('common.requestMsg'), type: 'error', duration: 5 * 1000 })

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

@@ -1,615 +1,668 @@
-<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>
+<!--
+"自走式", value: "1";"固定式", value: "2";撒料设备", value: "3";"小料设备", value: "4" : 固定和小科不能使用指定设备-->
+        <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" :disabled="scope.row.tclassid =='2' ||scope.row.tclassid =='4' ">
+              <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: 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:{
+        appoint:0,
+        appointName:""
+      }
+    }
+  },
+
+  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 || 0;
+      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':'', 'appoint':0,'appointName':""})
+    },
+    // 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 || 0;
+      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 || 0;
+      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>

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 509 - 509
src/views/formulationPlan/dailyExecutionPlan/index.vue


+ 42 - 21
src/views/formulationPlan/recipeTemplate/index.vue

@@ -297,10 +297,9 @@
                 </el-select>
               </template>
             </el-table-column>
-            <el-table-column label="停机时间" min-width="70px" align="center">
+            <el-table-column label="加料前停机" min-width="70px" align="center">
               <template slot-scope="scope">
-                <span v-if="scope.row.NoEdit">{{ scope.row.shutdown }}</span>
-                <el-input v-if="scope.row.Edit" v-model="scope.row.shutdown" step="0.01" type="number" style="width:95%;padding:10px 0;" min-number="0"/>
+                <el-switch v-model="scope.row.shutdown" :disabled="scope.row.NoEdit==true" active-color="#13ce66" inactive-color="#ff4949" :active-value="1" :inactive-value="0"  />
               </template>
             </el-table-column>
             <el-table-column label="顺序" min-width="70px" align="center">
@@ -350,7 +349,7 @@
             @cell-dblclick="celldblclick"
           >
             <el-table-column type="selection" width="50" />
-            <el-table-column label="序号" align="center" type="index" width="50px" />
+            <el-table-column label="序号11" align="center" type="index" width="50px" />
             <el-table-column label="饲料组" min-width="120px" align="center">
               <template slot-scope="scope">
                 <span v-if="scope.row.groupNoEdit">{{ scope.row.feedgroup }}</span>
@@ -365,7 +364,7 @@
                 </el-select>
               </template>
             </el-table-column>
-            <el-table-column label="重量(KG)" prop="fweight" width="120px" align="center">
+            <el-table-column label="重量123(KG)" prop="fweight" width="120px" align="center">
               <template slot-scope="scope">
                 <span v-if="scope.row.NoEdit">{{ scope.row.fweight }}</span>
                 <el-input v-if="scope.row.Edit" v-model="scope.row.fweight" placeholder="重量" step="0.0001" type="number" style="width:95%;padding:10px 0;" />
@@ -379,6 +378,19 @@
                 </el-select>
               </template>
             </el-table-column>
+            <!-- TODO: -->
+            <el-table-column label="允许延时偏差(min)" min-width="80px" align="center">
+              <template slot-scope="scope">
+                <span v-if="scope.row.NoEdit">{{ scope.row.deviation }}</span>
+                <el-input v-if="scope.row.Edit" v-model="scope.row.deviation" step="0.01" type="number" style="width:95%;padding:10px 0;" min-number="0" />
+              </template>
+            </el-table-column>
+            <el-table-column label="加料前停机" min-width="70px" align="center">
+              <template slot-scope="scope">
+                <el-switch v-model="scope.row.shutdown" :disabled="scope.row.NoEdit==true" active-color="#13ce66" inactive-color="#ff4949" :active-value="1" :inactive-value="0"  />
+              </template>
+            </el-table-column>
+            <!--  -->
             <el-table-column v-if="lockCount.isLockCount" label="是否锁定牛头数比例" min-width="80px" align="center">
               <template slot-scope="scope">
                 <span v-if="scope.row.NoEdit && scope.row.islockcount == '0'">否</span>
@@ -2347,10 +2359,13 @@ export default {
       }else if (this.table2.temp.fid === '') {
         this.$message({ type: 'error', message: '饲料名称不能为空', duration: 2000 })
         return false
-      } else if (this.table2.temp.fweight === '') {
-        this.$message({ type: 'error', message: '重量不能为空', duration: 2000 })
-        return false
-      } else if (this.table2.temp.autosecond === '') {
+      }
+      // TODO: 临时去掉限制重量
+      // else if (this.table2.temp.fweight === '') {
+      //   this.$message({ type: 'error', message: '重量不能为空', duration: 2000 })
+      //   return false
+      // }
+       else if (this.table2.temp.autosecond === '') {
         this.$message({ type: 'error', message: '搅拌延时不能为空', duration: 2000 })
         return false
       } else if (this.table2.temp.deviation === '') {
@@ -2392,10 +2407,12 @@ export default {
       row.fweight = formatNum(row.fweight, 4)
       // return
       // var ruleWeight = /(^[1-9](\d+)?(\.\d{1,2})?$)|(^\d\.\d{1,2}$)/
-      if (this.table2.temp.fweight == 0) {
-        this.$message({ type: 'error', message: '重量请输入正数,最多保留四位小数', duration: 2000 })
-        return false
-      }
+
+      //TODO:
+      // if (this.table2.temp.fweight == 0) {
+      //   this.$message({ type: 'error', message: '重量请输入正数,最多保留四位小数', duration: 2000 })
+      //   return false
+      // }
       this.isokDisable = true
       setTimeout(() => {
         this.isokDisable = false
@@ -2578,10 +2595,13 @@ export default {
           }else if (this.table2.temp.fid === '') {
             this.$message({ type: 'error', message: '饲料名称不能为空', duration: 2000 })
             return false
-          } else if (this.table2.temp.fweight === '') {
-            this.$message({ type: 'error', message: '重量不能为空', duration: 2000 })
-            return false
-          } else if (this.table2.temp.autosecond === '') {
+          }
+          //TODO:
+          //  else if (this.table2.temp.fweight === '') {
+          //   this.$message({ type: 'error', message: '重量不能为空', duration: 2000 })
+          //   return false
+          // }
+           else if (this.table2.temp.autosecond === '') {
             this.$message({ type: 'error', message: '搅拌延时不能为空', duration: 2000 })
             return false
           } else if (this.table2.temp.deviation === '') {
@@ -2616,10 +2636,11 @@ export default {
           row.fweight = formatNum(row.fweight, 4)
           // 检验重量>0
           // var ruleWeight = /(^[1-9](\d+)?(\.\d{1,2})?$)|(^\d\.\d{1,2}$)/
-          if (this.table2.temp.fweight == 0) {
-            this.$message({ type: 'error', message: '重量请输入正数,最多保留四位小数', duration: 2000 })
-            return false
-          }
+          //TODO:
+          // if (this.table2.temp.fweight == 0) {
+          //   this.$message({ type: 'error', message: '重量请输入正数,最多保留四位小数', duration: 2000 })
+          //   return false
+          // }
           console.log(row.fweight,'row.fweight')
           let dateTime = parseTime(new Date(), '{y}-{m}-{d} {h}:{i}:{s}')
           this.requestParam.common = { 'returnmap': '0' }

+ 6 - 2
src/views/statisticalAnalysis/processAnalysis/group/index.vue

@@ -21,7 +21,7 @@
     </div>
     <el-row :gutter="20">
       <el-col :span="8">
-        <h4>TMR设备列表</h4>
+        <h4>TMR设备列表123</h4>
         <div class="table">
           <el-table
             :key="table.tableKey"
@@ -88,6 +88,7 @@
             :row-style="rowStyle"
             :cell-style="cellStyle"
             class="elTable table-fixed"
+            max-height="270px"
           >
             <el-table-column label="操作编号" min-width="70px" align="center" prop="sort" />
             <el-table-column label="饲料名称" min-width="70px" align="center" prop="fname" />
@@ -153,6 +154,7 @@
             :row-style="rowStyle"
             :cell-style="cellStyle"
             class="elTable table-fixed"
+            max-height="200px"
           >
             <el-table-column label="操作编号" min-width="110px" align="center" prop="sort" />
             <el-table-column label="饲料名称" min-width="110px" align="center" prop="fname" />
@@ -315,6 +317,7 @@
             :row-style="rowStyle"
             :cell-style="cellStyle"
             class="elTable table-fixed"
+            max-height="270px"
           >
             <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
             <el-table-column label="饲料名称" min-width="60px" align="center" prop="fname" />
@@ -414,6 +417,7 @@
             :row-style="rowStyle"
             :cell-style="cellStyle"
             class="elTable table-fixed"
+            max-height="270px"
           >
             <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
             <el-table-column label="撒料车辆" min-width="60px" align="center" prop="fname" />
@@ -1161,7 +1165,7 @@ export default {
         }, {
           itemWidth: 15, itemHeight: 15, right: '0', textStyle: { fontSize: 12 },
           data: [
-            { name: '开始重量' }, 
+            { name: '开始重量' },
             { name: '结束重量' },
           ]
         }],

+ 1417 - 1412
src/views/statisticalAnalysis/processAnalysis/pasture/index.vue

@@ -1,1468 +1,1473 @@
-<template>
-  <div class="app-container">
-    <div class="search">
-      <el-date-picker v-model="table.getdataListParm.parammaps.inputDatetime" :clearable="false" class="inputDatetime filter-item" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" style="width: 250px;" :picker-options="pickerOptions" @change="change_date"/>
-      <el-button class="el-icon-arrow-left elIconArrowLeft" :disabled="Beforedisabled" @click="handleBefore" />
-      <el-button class="el-icon-arrow-right elIconArrowRight" :disabled="Nextdisabled" @click="handleNext" />
-      <el-select v-model="table.getdataListParm.parammaps.lpplantype" placeholder="计划类型" class="filter-item" style="width: 120px;" clearable>
-        <el-option v-for="item in planTypeList" :key="item.value" :label="item.lable" :value="item.value" />
-      </el-select>
-      <el-select v-model="table.getdataListParm.parammaps.tmrtname" placeholder="TMR名称" class="filter-item" style="width: 180px;" clearable multiple>
-        <el-option v-for="item in TMRList" :key="item.tmrtname" :label="item.tmrtname" :value="item.tmrtname" />
-      </el-select>
-      <el-select v-model="table.getdataListParm.parammaps.error" placeholder="误差筛选范围" class="filter-item" style="width: 140px;" clearable>
-        <el-option v-for="item in errorList" :key="item.value" :label="item.label" :value="item.value" />
-      </el-select>
-      <el-select v-model="table.getdataListParm.parammaps.iscompleted" placeholder="工作状态" class="filter-item" style="width: 120px;" clearable>
-        <el-option v-for="item in workingConditionList" :key="item.id" :label="item.name" :value="item.id" />
-      </el-select>
-      <!-- 临时注释 -->
-      <div style="display: inline-block;" class="filter-item1">
-        <el-input-number :controls="false" :precision="2" v-model="hlwc1" placeholder="混料误差值" style="width: 120px;" class="filter-item" clearable />
-        <span>-</span>
-        <el-input-number :controls="false" :precision="2"  v-model="hlwc2" placeholder="混料误差值" style="width: 120px;" class="filter-item" clearable />
-      </div>
-      <div style="display: inline-block;" class="filter-item1">
-        <el-input-number :controls="false" :precision="2" v-model="hlzq1" placeholder="混料准确率" :min="0" :max="100" style="width: 120px;"  class="filter-item" clearable />
-        <span>-</span>
-        <el-input-number :controls="false" :precision="2" v-model="hlzq2" placeholder="混料准确率" :min="0" :max="100" style="width: 120px;" class="filter-item" clearable />
-      </div>
-      <el-select v-model="table.getdataListParm.parammaps.fclassid" placeholder="混料类别" class="filter-item" style="width: 120px;" clearable>
-        <el-option v-for="item in cixCategoryList" :key="item.id" :label="item.fcname" :value="item.id" />
-      </el-select>
-      <div style="display: inline-block;" class="filter-item1">
-        <el-input-number :controls="false" :precision="2" v-model="slwc1" placeholder="撒料误差值" style="width: 120px;" class="filter-item" clearable />
-        <span>-</span>
-        <el-input-number :controls="false" :precision="2"  v-model="slwc2" placeholder="撒料误差值" style="width: 120px;" class="filter-item" clearable />
-      </div>
-      <div style="display: inline-block;" class="filter-item1">
-        <el-input-number :controls="false" :precision="2" v-model="slzq1" placeholder="撒料准确率" :min="0" :max="100" style="width: 120px;"  class="filter-item" clearable />
-        <span>-</span>
-        <el-input-number :controls="false" :precision="2" v-model="slzq2" placeholder="撒料准确率" :min="0" :max="100" style="width: 120px;" class="filter-item" clearable />
+<template>
+  <div class="app-container">
+    <div class="search">
+      <el-date-picker v-model="table.getdataListParm.parammaps.inputDatetime" :clearable="false" class="inputDatetime filter-item" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" style="width: 250px;" :picker-options="pickerOptions" @change="change_date"/>
+      <el-button class="el-icon-arrow-left elIconArrowLeft" :disabled="Beforedisabled" @click="handleBefore" />
+      <el-button class="el-icon-arrow-right elIconArrowRight" :disabled="Nextdisabled" @click="handleNext" />
+      <el-select v-model="table.getdataListParm.parammaps.lpplantype" placeholder="计划类型" class="filter-item" style="width: 120px;" clearable>
+        <el-option v-for="item in planTypeList" :key="item.value" :label="item.lable" :value="item.value" />
+      </el-select>
+      <el-select v-model="table.getdataListParm.parammaps.tmrtname" placeholder="TMR名称" class="filter-item" style="width: 180px;" clearable multiple>
+        <el-option v-for="item in TMRList" :key="item.tmrtname" :label="item.tmrtname" :value="item.tmrtname" />
+      </el-select>
+      <el-select v-model="table.getdataListParm.parammaps.error" placeholder="误差筛选范围" class="filter-item" style="width: 140px;" clearable>
+        <el-option v-for="item in errorList" :key="item.value" :label="item.label" :value="item.value" />
+      </el-select>
+      <el-select v-model="table.getdataListParm.parammaps.iscompleted" placeholder="工作状态" class="filter-item" style="width: 120px;" clearable>
+        <el-option v-for="item in workingConditionList" :key="item.id" :label="item.name" :value="item.id" />
+      </el-select>
+      <!-- 临时注释 -->
+      <div style="display: inline-block;" class="filter-item1">
+        <el-input-number :controls="false" :precision="2" v-model="hlwc1" placeholder="混料误差值" style="width: 120px;" class="filter-item" clearable />
+        <span>-</span>
+        <el-input-number :controls="false" :precision="2"  v-model="hlwc2" placeholder="混料误差值" style="width: 120px;" class="filter-item" clearable />
+      </div>
+      <div style="display: inline-block;" class="filter-item1">
+        <el-input-number :controls="false" :precision="2" v-model="hlzq1" placeholder="混料准确率" :min="0" :max="100" style="width: 120px;"  class="filter-item" clearable />
+        <span>-</span>
+        <el-input-number :controls="false" :precision="2" v-model="hlzq2" placeholder="混料准确率" :min="0" :max="100" style="width: 120px;" class="filter-item" clearable />
+      </div>
+      <el-select v-model="table.getdataListParm.parammaps.fclassid" placeholder="混料类别" class="filter-item" style="width: 120px;" clearable>
+        <el-option v-for="item in cixCategoryList" :key="item.id" :label="item.fcname" :value="item.id" />
+      </el-select>
+      <div style="display: inline-block;" class="filter-item1">
+        <el-input-number :controls="false" :precision="2" v-model="slwc1" placeholder="撒料误差值" style="width: 120px;" class="filter-item" clearable />
+        <span>-</span>
+        <el-input-number :controls="false" :precision="2"  v-model="slwc2" placeholder="撒料误差值" style="width: 120px;" class="filter-item" clearable />
+      </div>
+      <div style="display: inline-block;" class="filter-item1">
+        <el-input-number :controls="false" :precision="2" v-model="slzq1" placeholder="撒料准确率" :min="0" :max="100" style="width: 120px;"  class="filter-item" clearable />
+        <span>-</span>
+        <el-input-number :controls="false" :precision="2" v-model="slzq2" placeholder="撒料准确率" :min="0" :max="100" style="width: 120px;" class="filter-item" clearable />
       </div>
       <div style="display: inline-block;" class="filter-item1">
         <el-input-number :controls="false" :precision="2" v-model="minproesstime" placeholder="过程时间" :min="0" :max="100" style="width: 120px;"  class="filter-item" clearable />
         <span>-</span>
         <el-input-number :controls="false" :precision="2" v-model="maxproesstime" placeholder="过程时间" :min="0" :max="100" style="width: 120px;" class="filter-item" clearable />
-      </div>
-      <el-checkbox v-model="ccys"style="margin-right: 10px;" @change="changeccysChecked">只看超出预设值数据</el-checkbox>
-      <!-- 临时注释 -->
-      <el-button class="successBorder" @click="form_search">查询</el-button>
-      <el-button class="successBorder" @click="handleRefresh">重置</el-button>
-    </div>
-    <el-row :gutter="10">
-      <el-col :span="8">
-        <h4>TMR设备列表</h4>
-        <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: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-            :height="myheight"
-            @row-click="rowClick"
-          >
-            <el-table-column sortable label="开始时间" min-width="100px" align="center" prop="intime" />
-            <el-table-column sortable label="计划类型" min-width="80px" align="center" prop="lpplantype" />
-            <el-table-column sortable label="描述" min-width="90px" align="center" prop="remark" />
-            <el-table-column sortable label="TMR名称" min-width="80px" align="center" prop="tmrtname" />
-            <el-table-column sortable label="过程时间" min-width="80px" align="center" prop="proesstime" />
-          </el-table>
-        </div>
-        <span v-if="table.listLoading == false" style="margin-right: 30px;margin-top: 10px;font-size: 14px;">共{{ table.total }}条</span>
-      </el-col>
-      <!-- 预混计划 -->
-      <el-col v-if="isPremixedPlan" :span="16">
-        <div class="title">
-          <b>过程详情</b>
-          <span>&nbsp;({{ title }})</span>
-        </div>
-        <div class="detail">
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>过程时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>混料时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].iscompleted }}</b>
-            <span>工作状态</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].Hdif }}</b>
-            <span>混料误差值</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].HdifRate }}</b>
-            <span>混料准确率</span>
-          </div>
-        </div>
-        <div class="Mixture">
-          <h4>混料详情</h4>
-          <el-table
-            :key="table3.tableKey"
-            v-loading="table3.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table3.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-          >
-            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
-            <el-table-column label="饲料名称" min-width="60px" align="center" prop="fname" />
-            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
+      </div>
+      <el-checkbox v-model="ccys"  style="margin-right: 10px;" @change="changeccysChecked">只看超出预设值数据</el-checkbox>
+      <!-- 临时注释 -->
+      <el-button class="successBorder" @click="form_search">查询</el-button>
+      <el-button class="successBorder" @click="handleRefresh">重置</el-button>
+    </div>
+    <el-row :gutter="10">
+      <el-col :span="8">
+        <h4>TMR设备列表</h4>
+        <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: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            :height="myheight"
+            @row-click="rowClick"
+          >
+            <el-table-column sortable label="开始时间" min-width="100px" align="center" prop="intime" />
+            <el-table-column sortable label="计划类型" min-width="80px" align="center" prop="lpplantype" />
+            <el-table-column sortable label="描述" min-width="90px" align="center" prop="remark" />
+            <el-table-column sortable label="TMR名称" min-width="80px" align="center" prop="tmrtname" />
+            <el-table-column sortable label="过程时间" min-width="80px" align="center" prop="proesstime" />
+          </el-table>
+        </div>
+        <span v-if="table.listLoading == false" style="margin-right: 30px;margin-top: 10px;font-size: 14px;">共{{ table.total }}条</span>
+      </el-col>
+      <!-- 预混计划 -->
+      <el-col v-if="isPremixedPlan" :span="16">
+        <div class="title">
+          <b>过程详情</b>
+          <span>&nbsp;({{ title }})</span>
+        </div>
+        <div class="detail">
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>过程时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>混料时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].iscompleted }}</b>
+            <span>工作状态</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].Hdif }}</b>
+            <span>混料误差值</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].HdifRate }}</b>
+            <span>混料准确率</span>
+          </div>
+        </div>
+        <div class="Mixture">
+          <h4>混料详情</h4>
+          <el-table
+            :key="table3.tableKey"
+            v-loading="table3.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table3.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="270px"
+          >
+            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
+            <el-table-column label="饲料名称" min-width="60px" align="center" prop="fname" />
+            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
             <el-table-column label="实际重量" min-width="60px" align="center" prop="actualweightminus">
               <template slot-scope="{row}">
                 <a v-if="row.actualweightminus == 0" style="color: red;">{{ row.actualweightminus }}</a>
                 <a v-else>{{ row.actualweightminus }}</a>
               </template>
-            </el-table-column>
-            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
-            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
-            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
-            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
-            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
-            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
-            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
-          </el-table>
-        </div>
-      </el-col>
-      <!-- 撒料计划 -->
-      <el-col v-if="isSpreadingPlan" :span="16">
-        <div class="title">
-          <b>过程详情</b>
-          <span>&nbsp;({{ title }})</span>
-        </div>
-        <div class="detail">
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>过程时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>混料时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].iscompleted }}</b>
-            <span>工作状态</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].Hdif }}kg</b>
-            <span>混料误差值</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].HdifRate }}</b>
-            <span>混料准确率</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].Sdif }}kg</b>
-            <span>撒料误差值</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].SdifRate }}</b>
-            <span>撒料准确率</span>
-          </div>
-        </div>
-        <div class="Mixture">
-          <h4>混料详情</h4>
-          <el-table
-            :key="table3.tableKey"
-            v-loading="table3.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table3.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-          >
-            <el-table-column label="操作编号" min-width="70px" align="center" prop="sort" />
-            <el-table-column label="饲料名称" min-width="70px" align="center" prop="fname" />
-            <el-table-column label="计划重量" min-width="50px" align="center" prop="lweight" />
+            </el-table-column>
+            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
+            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
+            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
+            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
+            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
+            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
+            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
+          </el-table>
+        </div>
+      </el-col>
+      <!-- 撒料计划 -->
+      <el-col v-if="isSpreadingPlan" :span="16">
+        <div class="title">
+          <b>过程详情</b>
+          <span>&nbsp;({{ title }})</span>
+        </div>
+        <div class="detail">
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>过程时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>混料时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].iscompleted }}</b>
+            <span>工作状态</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].Hdif }}kg</b>
+            <span>混料误差值</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].HdifRate }}</b>
+            <span>混料准确率</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].Sdif }}kg</b>
+            <span>撒料误差值</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].SdifRate }}</b>
+            <span>撒料准确率</span>
+          </div>
+        </div>
+        <div class="Mixture">
+          <h4>混料详情</h4>
+          <el-table
+            :key="table3.tableKey"
+            v-loading="table3.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table3.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="270px"
+          >
+            <el-table-column label="操作编号" min-width="70px" align="center" prop="sort" />
+            <el-table-column label="饲料名称" min-width="70px" align="center" prop="fname" />
+            <el-table-column label="计划重量" min-width="50px" align="center" prop="lweight" />
             <el-table-column label="实际重量" min-width="60px" align="center" prop="actualweightminus">
               <template slot-scope="{row}">
                 <a v-if="row.actualweightminus == 0" style="color: red;">{{ row.actualweightminus }}</a>
                 <a v-else>{{ row.actualweightminus }}</a>
               </template>
-            </el-table-column>
-            <el-table-column label="误差值" min-width="70px" align="center" prop="diff" />
-            <el-table-column label="准确率" min-width="70px" align="center" prop="diffRate" />
-            <el-table-column label="完成时间" min-width="70px" align="center" prop="intime" />
-            <el-table-column label="过程时间" min-width="70px" align="center" prop="proesstime" />
-            <el-table-column label="跳转方式" min-width="70px" align="center" prop="buttontype" />
-            <el-table-column label="开始重量" min-width="70px" align="center" prop="lastactualweight" />
-            <el-table-column label="结束重量" min-width="70px" align="center" prop="actualweight" />
-          </el-table>
-        </div>
-
-        <div class="SpreadingMaterials">
-          <h4>撒料详情</h4>
-          <el-table
-            :key="table4.tableKey"
-            v-loading="table4.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table4.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-            max-height="200px"
-          >
-            <el-table-column label="操作编号" min-width="70px" align="center" prop="sort" />
-            <el-table-column label="栏舍名称" min-width="70px" align="center" prop="fname" />
-            <el-table-column label="计划重量" min-width="70px" align="center" prop="lweight" />
+            </el-table-column>
+            <el-table-column label="误差值" min-width="70px" align="center" prop="diff" />
+            <el-table-column label="准确率" min-width="70px" align="center" prop="diffRate" />
+            <el-table-column label="完成时间" min-width="70px" align="center" prop="intime" />
+            <el-table-column label="过程时间" min-width="70px" align="center" prop="proesstime" />
+            <el-table-column label="跳转方式" min-width="70px" align="center" prop="buttontype" />
+            <el-table-column label="开始重量" min-width="70px" align="center" prop="lastactualweight" />
+            <el-table-column label="结束重量" min-width="70px" align="center" prop="actualweight" />
+          </el-table>
+        </div>
+
+        <div class="SpreadingMaterials">
+          <h4>撒料详情</h4>
+          <el-table
+            :key="table4.tableKey"
+            v-loading="table4.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table4.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="260px"
+          >
+            <el-table-column label="操作编号" min-width="70px" align="center" prop="sort" />
+            <el-table-column label="栏舍名称" min-width="70px" align="center" prop="fname" />
+            <el-table-column label="计划重量" min-width="70px" align="center" prop="lweight" />
             <el-table-column label="实际重量" min-width="60px" align="center" prop="actualweightminus">
               <template slot-scope="{row}">
                 <a v-if="row.actualweightminus == 0" style="color: red;">{{ row.actualweightminus }}</a>
                 <a v-else>{{ row.actualweightminus }}</a>
               </template>
-            </el-table-column>
-            <el-table-column label="误差值" min-width="70px" align="center" prop="diff" />
-            <el-table-column label="准确率" min-width="70px" align="center" prop="diffRate" />
-            <el-table-column label="完成时间" min-width="70px" align="center" prop="intime" />
-            <el-table-column label="过程时间" min-width="70px" align="center" prop="proesstime" />
-            <el-table-column label="跳转方式" min-width="70px" align="center" prop="buttontype" />
-            <el-table-column label="开始重量" min-width="70px" align="center" prop="lastactualweight" />
-            <el-table-column label="结束重量" min-width="70px" align="center" prop="actualweight" />
-          </el-table>
-        </div>
-        <div class="ControlChart">
-          <h4>监控图</h4>
-          <div id="chartLine" style="width: 100%;height:300px;" />
-        </div>
-      </el-col>
-      <!-- 剩料计划 -->
-      <el-col v-if="isResidualMaterialPlan" :span="16">
-        <div class="title">
-          <b>过程详情</b>
-          <span>&nbsp;({{ title }})</span>
-        </div>
-        <div class="detail">
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>过程时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].iscompleted }}</b>
-            <span>工作状态</span>
-          </div>
-        </div>
-        <div class="Mixture">
-          <h4>剩料收集详情</h4>
-          <el-table
-            :key="table3.tableKey"
-            v-loading="table3.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table3.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-            max-height="200px"
-          >
-            <el-table-column label="操作编号" min-width="110px" align="center">
-              <template slot-scope="scope">
-                <span>{{ scope.row.sort }}</span>
-              </template>
-            </el-table-column>
-            <el-table-column label="栏舍名称" min-width="90px" align="center">
-              <template slot-scope="scope">
-                <span>{{ scope.row.fname }}</span>
-              </template>
-            </el-table-column>
-            <el-table-column label="剩料采集重量(kg)" min-width="110px" align="center">
-              <template slot-scope="scope">
-                <span>{{ scope.row.sweight }}</span>
-              </template>
-            </el-table-column>
-          </el-table>
-        </div>
-
-        <div class="SpreadingMaterials">
-          <h4>撒料详情</h4>
-          <el-table
-            :key="table4.tableKey"
-            v-loading="table4.listLoading"
-            :span-method="objectSpanMethod"
-            element-loading-text="给我一点时间"
-            :data="table4.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-            max-height="200px"
-          >
-            <el-table-column label="操作编号" min-width="110px" align="center" prop="sort" />
-            <el-table-column label="转投栏舍" min-width="110px" align="center" prop="fname" />
-            <el-table-column label="允许分配剩料量" min-width="110px" align="center" prop="lweight" />
-            <el-table-column label="实际分配重量(kg)" min-width="110px" align="center" prop="actualweightminus" />
-            <el-table-column label="废弃剩料重量" min-width="110px" align="center" prop="aweight" />
-          </el-table>
-        </div>
-      </el-col>
-      <!-- 撒料计划-混料 -->
-      <el-col v-if="isSpreadingPlanSH" :span="16">
-        <div class="title">
-          <b>过程详情</b>
-          <span>&nbsp;({{ title }})</span>
-        </div>
-        <div class="detail">
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>过程时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>混料时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].iscompleted }}</b>
-            <span>工作状态</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].Hdif }}kg</b>
-            <span>混料误差值</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].HdifRate }}</b>
-            <span>混料准确率</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].Sdif }}kg</b>
-            <span>撒料误差值</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].SdifRate }}</b>
-            <span>撒料准确率</span>
-          </div>
-        </div>
-        <div class="Mixture">
-          <h4>混料详情</h4>
-          <el-table
-            :key="table3.tableKey"
-            v-loading="table3.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table3.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-          >
-            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
-            <el-table-column label="饲料名称" min-width="60px" align="center" prop="fname" />
-            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
+            </el-table-column>
+            <el-table-column label="误差值" min-width="70px" align="center" prop="diff" />
+            <el-table-column label="准确率" min-width="70px" align="center" prop="diffRate" />
+            <el-table-column label="完成时间" min-width="70px" align="center" prop="intime" />
+            <el-table-column label="过程时间" min-width="70px" align="center" prop="proesstime" />
+            <el-table-column label="跳转方式" min-width="70px" align="center" prop="buttontype" />
+            <el-table-column label="开始重量" min-width="70px" align="center" prop="lastactualweight" />
+            <el-table-column label="结束重量" min-width="70px" align="center" prop="actualweight" />
+          </el-table>
+        </div>
+        <div class="ControlChart">
+          <h4>监控图</h4>
+          <div id="chartLine" style="width: 100%;height:300px;" />
+        </div>
+      </el-col>
+      <!-- 剩料计划 -->
+      <el-col v-if="isResidualMaterialPlan" :span="16">
+        <div class="title">
+          <b>过程详情</b>
+          <span>&nbsp;({{ title }})</span>
+        </div>
+        <div class="detail">
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>过程时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].iscompleted }}</b>
+            <span>工作状态</span>
+          </div>
+        </div>
+        <div class="Mixture">
+          <h4>剩料收集详情</h4>
+          <el-table
+            :key="table3.tableKey"
+            v-loading="table3.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table3.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="260px"
+          >
+            <el-table-column label="操作编号" min-width="110px" align="center">
+              <template slot-scope="scope">
+                <span>{{ scope.row.sort }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column label="栏舍名称" min-width="90px" align="center">
+              <template slot-scope="scope">
+                <span>{{ scope.row.fname }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column label="剩料采集重量(kg)" min-width="110px" align="center">
+              <template slot-scope="scope">
+                <span>{{ scope.row.sweight }}</span>
+              </template>
+            </el-table-column>
+          </el-table>
+        </div>
+
+        <div class="SpreadingMaterials">
+          <h4>撒料详情</h4>
+          <el-table
+            :key="table4.tableKey"
+            v-loading="table4.listLoading"
+            :span-method="objectSpanMethod"
+            element-loading-text="给我一点时间"
+            :data="table4.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="260px"
+          >
+            <el-table-column label="操作编号" min-width="110px" align="center" prop="sort" />
+            <el-table-column label="转投栏舍" min-width="110px" align="center" prop="fname" />
+            <el-table-column label="允许分配剩料量" min-width="110px" align="center" prop="lweight" />
+            <el-table-column label="实际分配重量(kg)" min-width="110px" align="center" prop="actualweightminus" />
+            <el-table-column label="废弃剩料重量" min-width="110px" align="center" prop="aweight" />
+          </el-table>
+        </div>
+      </el-col>
+      <!-- 撒料计划-混料 -->
+      <el-col v-if="isSpreadingPlanSH" :span="16">
+        <div class="title">
+          <b>过程详情</b>
+          <span>&nbsp;({{ title }})</span>
+        </div>
+        <div class="detail">
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>过程时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>混料时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].iscompleted }}</b>
+            <span>工作状态</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].Hdif }}kg</b>
+            <span>混料误差值</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].HdifRate }}</b>
+            <span>混料准确率</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].Sdif }}kg</b>
+            <span>撒料误差值</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].SdifRate }}</b>
+            <span>撒料准确率</span>
+          </div>
+        </div>
+        <div class="Mixture">
+          <h4>混料详情</h4>
+          <el-table
+            :key="table3.tableKey"
+            v-loading="table3.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table3.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="270px"
+
+          >
+            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
+            <el-table-column label="饲料名称" min-width="60px" align="center" prop="fname" />
+            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
             <el-table-column label="实际重量" min-width="60px" align="center" prop="actualweightminus">
               <template slot-scope="{row}">
                 <a v-if="row.actualweightminus == 0" style="color: red;">{{ row.actualweightminus }}</a>
                 <a v-else>{{ row.actualweightminus }}</a>
               </template>
-            </el-table-column>
-            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
-            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
-            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
-            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
-            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
-            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
-            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
-          </el-table>
-        </div>
-
-        <div class="SpreadingMaterials">
-          <h4>撒料详情</h4>
-          <el-table
-            :key="table4.tableKey"
-            v-loading="table4.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table4.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-            max-height="200px"
-          >
-            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
-            <el-table-column label="撒料车辆" min-width="60px" align="center" prop="fname" />
-            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
+            </el-table-column>
+            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
+            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
+            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
+            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
+            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
+            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
+            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
+          </el-table>
+        </div>
+
+        <div class="SpreadingMaterials">
+          <h4>撒料详情</h4>
+          <el-table
+            :key="table4.tableKey"
+            v-loading="table4.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table4.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="260px"
+          >
+            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
+            <el-table-column label="撒料车辆" min-width="60px" align="center" prop="fname" />
+            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
             <el-table-column label="实际重量" min-width="60px" align="center" prop="actualweightminus">
               <template slot-scope="{row}">
                 <a v-if="row.actualweightminus == 0" style="color: red;">{{ row.actualweightminus }}</a>
                 <a v-else>{{ row.actualweightminus }}</a>
               </template>
-            </el-table-column>
-            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
-            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
-            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
-            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
-            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
-            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
-            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
-          </el-table>
-        </div>
-        <div class="ControlChart">
-          <h4>监控图</h4>
-          <div id="chartLine" style="width: 100%;height:300px;" />
-        </div>
-      </el-col>
-      <!-- 撒料计划-撒料 -->
-      <el-col v-if="isSpreadingPlanSS" :span="16">
-        <div class="title">
-          <b>过程详情</b>
-          <span>&nbsp;({{ title }})</span>
-        </div>
-        <div class="detail">
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>过程时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].proesstime }}</b>
-            <span>混料时间</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].iscompleted }}</b>
-            <span>工作状态</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].Hdif }}kg</b>
-            <span>混料误差值</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].HdifRate }}</b>
-            <span>混料准确率</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].Sdif }}kg</b>
-            <span>撒料误差值</span>
-          </div>
-          <div v-if="table2.list.length !== 0">
-            <b>{{ table2.list[0].SdifRate }}</b>
-            <span>撒料准确率</span>
-          </div>
-        </div>
-        <div class="Mixture">
-          <h4>混料详情</h4>
-          <el-table
-            :key="table3.tableKey"
-            v-loading="table3.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table3.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-          >
-            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
-            <el-table-column label="撒料车辆" min-width="60px" align="center" prop="fname" />
-            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
+            </el-table-column>
+            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
+            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
+            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
+            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
+            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
+            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
+            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
+          </el-table>
+        </div>
+        <div class="ControlChart">
+          <h4>监控图</h4>
+          <div id="chartLine" style="width: 100%;height:300px;" />
+        </div>
+      </el-col>
+      <!-- 撒料计划-撒料 -->
+      <el-col v-if="isSpreadingPlanSS" :span="16">
+        <div class="title">
+          <b>过程详情</b>
+          <span>&nbsp;({{ title }})</span>
+        </div>
+        <div class="detail">
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>过程时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].proesstime }}</b>
+            <span>混料时间</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].iscompleted }}</b>
+            <span>工作状态</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].Hdif }}kg</b>
+            <span>混料误差值</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].HdifRate }}</b>
+            <span>混料准确率</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].Sdif }}kg</b>
+            <span>撒料误差值</span>
+          </div>
+          <div v-if="table2.list.length !== 0">
+            <b>{{ table2.list[0].SdifRate }}</b>
+            <span>撒料准确率</span>
+          </div>
+        </div>
+        <div class="Mixture">
+          <h4>混料详情</h4>
+          <el-table
+            :key="table3.tableKey"
+            v-loading="table3.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table3.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="270px"
+          >
+            <el-table-column label="操作编号" min-width="60px" align="center" prop="sort" />
+            <el-table-column label="撒料车辆" min-width="60px" align="center" prop="fname" />
+            <el-table-column label="计划重量" min-width="60px" align="center" prop="lweight" />
             <el-table-column label="实际重量" min-width="60px" align="center" prop="actualweightminus">
               <template slot-scope="{row}">
                 <a v-if="row.actualweightminus == 0" style="color: red;">{{ row.actualweightminus }}</a>
                 <a v-else>{{ row.actualweightminus }}</a>
               </template>
-            </el-table-column>
-            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
-            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
-            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
-            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
-            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
-            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
-            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
-          </el-table>
-        </div>
-
-        <div class="SpreadingMaterials">
-          <h4>撒料详情</h4>
-          <el-table
-            :key="table4.tableKey"
-            v-loading="table4.listLoading"
-            element-loading-text="给我一点时间"
-            :data="table4.list"
-            border
-            fit
-            highlight-current-row
-            style="width: 98%;"
-            :row-style="rowStyle"
-            :cell-style="cellStyle"
-            class="elTable table-fixed"
-            max-height="200px"
-          >
-            <el-table-column label="操作编号" min-width="70px" align="center" prop="sort" />
-            <el-table-column label="撒料车辆" min-width="70px" align="center" prop="fname" />
-            <el-table-column label="计划重量" min-width="70px" align="center" prop="lweight" />
+            </el-table-column>
+            <el-table-column label="误差值" min-width="60px" align="center" prop="diff" />
+            <el-table-column label="准确率" min-width="60px" align="center" prop="diffRate" />
+            <el-table-column label="完成时间" min-width="60px" align="center" prop="intime" />
+            <el-table-column label="过程时间" min-width="60px" align="center" prop="proesstime" />
+            <el-table-column label="跳转方式" min-width="60px" align="center" prop="buttontype" />
+            <el-table-column label="开始重量" min-width="60px" align="center" prop="lastactualweight" />
+            <el-table-column label="结束重量" min-width="60px" align="center" prop="actualweight" />
+          </el-table>
+        </div>
+
+        <div class="SpreadingMaterials">
+          <h4>撒料详情</h4>
+          <el-table
+            :key="table4.tableKey"
+            v-loading="table4.listLoading"
+            element-loading-text="给我一点时间"
+            :data="table4.list"
+            border
+            fit
+            highlight-current-row
+            style="width: 98%;"
+            :row-style="rowStyle"
+            :cell-style="cellStyle"
+            class="elTable table-fixed"
+            max-height="260px"
+          >
+            <el-table-column label="操作编号" min-width="70px" align="center" prop="sort" />
+            <el-table-column label="撒料车辆" min-width="70px" align="center" prop="fname" />
+            <el-table-column label="计划重量" min-width="70px" align="center" prop="lweight" />
             <el-table-column label="实际重量" min-width="60px" align="center" prop="actualweightminus">
               <template slot-scope="{row}">
                 <a v-if="row.actualweightminus == 0" style="color: red;">{{ row.actualweightminus }}</a>
                 <a v-else>{{ row.actualweightminus }}</a>
               </template>
-            </el-table-column>
-            <el-table-column label="误差值" min-width="70px" align="center" prop="diff" />
-            <el-table-column label="准确率" min-width="70px" align="center" prop="diffRate" />
-            <el-table-column label="完成时间" min-width="70px" align="center" prop="intime" />
-            <el-table-column label="过程时间" min-width="70px" align="center" prop="proesstime" />
-            <el-table-column label="跳转方式" min-width="70px" align="center" prop="buttontype" />
-            <el-table-column label="开始重量" min-width="70px" align="center" prop="lastactualweight" />
-            <el-table-column label="结束重量" min-width="70px" align="center" prop="actualweight" />
-          </el-table>
-        </div>
-        <div class="ControlChart">
-          <h4>监控图</h4>
-          <div id="chartLine" style="width: 100%;height:300px;" />
-        </div>
-      </el-col>
-    </el-row>
-
-  </div>
-
-</template>
-
-<script>
-import echarts from 'echarts'
-
-require('echarts/theme/macarons')
-import { GetDataByName, GetReportform, formatNum,processAnalysist } from '@/api/common'
-import Cookies from 'js-cookie'
-import { parseTime } from '@/utils/index.js'
-export default {
-  name: 'PastureProcessAnalysis',
-  data() {
-    return {
-      hlwc1:undefined ,
-      hlwc2:undefined ,
-      hlzq1:undefined ,
-      hlzq2:undefined ,
-      slwc1:undefined ,
-      slwc2:undefined ,
-      slzq1:undefined ,
+            </el-table-column>
+            <el-table-column label="误差值" min-width="70px" align="center" prop="diff" />
+            <el-table-column label="准确率" min-width="70px" align="center" prop="diffRate" />
+            <el-table-column label="完成时间" min-width="70px" align="center" prop="intime" />
+            <el-table-column label="过程时间" min-width="70px" align="center" prop="proesstime" />
+            <el-table-column label="跳转方式" min-width="70px" align="center" prop="buttontype" />
+            <el-table-column label="开始重量" min-width="70px" align="center" prop="lastactualweight" />
+            <el-table-column label="结束重量" min-width="70px" align="center" prop="actualweight" />
+          </el-table>
+        </div>
+        <div class="ControlChart">
+          <h4>监控图</h4>
+          <div id="chartLine" style="width: 100%;height:300px;" />
+        </div>
+      </el-col>
+    </el-row>
+
+  </div>
+
+</template>
+
+<script>
+import echarts from 'echarts'
+
+require('echarts/theme/macarons')
+import { GetDataByName, GetReportform, formatNum,processAnalysist } from '@/api/common'
+import Cookies from 'js-cookie'
+import { parseTime } from '@/utils/index.js'
+export default {
+  name: 'PastureProcessAnalysis',
+  data() {
+    return {
+      hlwc1:undefined ,
+      hlwc2:undefined ,
+      hlzq1:undefined ,
+      hlzq2:undefined ,
+      slwc1:undefined ,
+      slwc2:undefined ,
+      slzq1:undefined ,
       slzq2:undefined ,
       minproesstime:undefined ,
-      maxproesstime:undefined ,
-      ccys:false,
-      myheight:970,
-      title: '',
-      isPremixedPlan: '', // 预混计划
-      isSpreadingPlan: '', // 撒料计划
-      isResidualMaterialPlan: '', // 剩料计划,
-      isSpreadingPlanSH: '', // 撒料计划-混料
-      isSpreadingPlanSS: '', // 撒料计划-撒料
-      pickerMinDate: '',
-      Beforedisabled: false,
-      Nextdisabled: false,
-      pickerOptions: {
-        onPick: ({ maxDate, minDate }) => {
-          this.pickerMinDate = minDate.getTime()
-          if (maxDate) {
-            this.pickerMinDate = ''
-          }
-        },
-        // 限制不能选择明天之后的日期
-        disabledDate: (time) => {
-          if (this.pickerMinDate !== '') {
-            const one = 31 * 24 * 3600 * 1000
-            const minTime = this.pickerMinDate - one
-            let maxTime = this.pickerMinDate + one
-
-            // console.log(minTime, 'minTime')
-            // console.log(maxTime, 'maxTime')
-            // console.log(new Date(), 'new Date()')
-            // console.log(Date.now(), 'Date.now()')
-            // console.log(time.getTime(), 'time.getTime()')
-            if (maxTime > new Date()) {
-              maxTime = Date.now() + 8.64e7
-            }
-
-            return time.getTime() < minTime || time.getTime() > maxTime
-          }
-          return time.getTime() > Date.now() + 8.64e7
-        }
-      },
-      cixCategoryParm:{
-        name: 'getFeedclassList', offset: 0, pagecount: 0,
-        parammaps: { 'pastureid': Cookies.get('pastureid') }
-      },
-      planTypeList: [{ lable: '预混计划', value: '4' }, { lable: '撒料计划', value: '0' }, { lable: '剩料计划', value: '3' }, { lable: '撒料计划-混料', value: '1' }, { lable: '撒料计划-撒料', value: '2' }, { lable: '预称重计划', value: '5' }], // 计划类型
-      workingConditionList: [{ id: '0', name: '进行中' }, { id: '1', name: '已完成' }], // 工作状态
-      cixCategoryList: [], // 混料类别
-
-      // TMR设备列表
-      table: {
-        getdataListParm: {
-          name: 'getprocessAnalysis',
-          page: 1,
-          offset: 1,
-          pagecount: '',
-          returntype: 'Map',
-          parammaps: {
-            pastureid: Cookies.get('pastureid'),
-            startTime: parseTime(new Date(), '{y}-{m}-{d}'),
-            stopTime: parseTime(new Date(), '{y}-{m}-{d}'),
-            inputDatetime: [new Date(), new Date()],
-            iscompleted: '',
-            tmrtname: '',
-            lpplantype: '',
-            error:'',
-            fclassid:''
-          }
-        },
-        tableKey: 0,
-        list: [],
-        total: 0,
-        listLoading: true
-      },
-      // 过程详情
-      table2: {
-        getdataListParm: {
-          name: 'getprocessAnalysisStr',
-          page: 1,
-          offset: 1,
-          pagecount: 1,
-          returntype: 'Map',
-          parammaps: {
-            pastureid: Cookies.get('pastureid'),
-            id: ''
-          }
-        },
-        tableKey: 0,
-        list: [],
-        total: 0,
-        listLoading: true
-      },
-      // 混料详情
-      table3: {
-        getdataListParm: {
-          name: 'getprocessAnalysisHL',
-          page: 1,
-          offset: 1,
-          pagecount: '',
-          returntype: 'Map',
-          parammaps: {
-            pastureid: Cookies.get('pastureid'),
-            id: ''
-          }
-        },
-        tableKey: 0,
-        list: [],
-        total: 0,
-        listLoading: true
-      },
-      // 撒料详情
-      table4: {
-        getdataListParm: {
-          name: 'getprocessAnalysisSL',
-          page: 1,
-          offset: 1,
-          pagecount: '',
-          returntype: 'Map',
-          parammaps: {
-            pastureid: Cookies.get('pastureid'),
-            id: ''
-          }
-        },
-        tableKey: 0,
-        list: [],
-        total: 0,
-        listLoading: true
-      },
-      chart1: {
-        getdataListParm: {
-          name: 'getprocessAnalysisTB',
-          page: 1,
-          offset: 1,
-          pagecount: '',
-          returntype: 'Map',
-          parammaps: {
-            pastureid: Cookies.get('pastureid'),
-            id: ''
-          }
-        },
-        tableKey: 0,
-        list: [],
-        total: 0,
-        listLoading: false,
-        chartLine_data: []
-      },
-      chartLine: null,
-      chartLine_data: {},
-      chartName: '',
-      // rowStyle: { maxHeight: 30 + 'px', height: 30 + 'px' },
-      cellStyle: { padding: 0 + 'px' },
-
-      TMRList:[],
-      errorList:[{ value: '有误差', label: '有误差' }, { value: '无误差', label: '无误差' }],
-
-      downTMR: { name: 'getDownloadedplanTmrName', offset: 0, pagecount: 0,
-       parammaps: {
-            pastureid: Cookies.get('pastureid'),
-            startdate: '',
-            enddate: '',
-          }
-      },
-    }
-  },
-  created() {
-    this.getCixCategoryList()
-    this.getList()
-  },
-  methods: {
-    change_date(e){
-      console.log(e)
-      this.getDownList()
-    },
-
-    getDownList() {
-      this.downTMR.parammaps.startdate = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
-      this.downTMR.parammaps.enddate = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
-      GetDataByName(this.downTMR).then(response => {
-        console.log(response.data.list)
-         this.TMRList = response.data.list
-      })
-    },
-    getCixCategoryList(){
-      GetDataByName(this.cixCategoryParm).then(response => {
-        if(response.data.list !== null){
-          this.cixCategoryList = response.data.list
-        }else{
-          this.cixCategoryList = []
-        }
-      })
-    },
-    // TMR设备列表
-    getList() {
-      this.table.listLoading = true
-      processAnalysist(this.table.getdataListParm).then(response => {
-        // console.log('TMR设备列表table数据', response.data.list)
-        if (response.data.list !== null) {
-          this.table.list = response.data.list
-          this.table.total = response.data.total
-          if (response.data.list[0].lpplantype == '预混计划') {
-            this.isPremixedPlan = true
-            this.isSpreadingPlan = false
-            this.isResidualMaterialPlan = false
-            this.isSpreadingPlanSH = false
+      maxproesstime:undefined ,
+      ccys:false,
+      myheight:970,
+      title: '',
+      isPremixedPlan: '', // 预混计划
+      isSpreadingPlan: '', // 撒料计划
+      isResidualMaterialPlan: '', // 剩料计划,
+      isSpreadingPlanSH: '', // 撒料计划-混料
+      isSpreadingPlanSS: '', // 撒料计划-撒料
+      pickerMinDate: '',
+      Beforedisabled: false,
+      Nextdisabled: false,
+      pickerOptions: {
+        onPick: ({ maxDate, minDate }) => {
+          this.pickerMinDate = minDate.getTime()
+          if (maxDate) {
+            this.pickerMinDate = ''
+          }
+        },
+        // 限制不能选择明天之后的日期
+        disabledDate: (time) => {
+          if (this.pickerMinDate !== '') {
+            const one = 31 * 24 * 3600 * 1000
+            const minTime = this.pickerMinDate - one
+            let maxTime = this.pickerMinDate + one
+
+            // console.log(minTime, 'minTime')
+            // console.log(maxTime, 'maxTime')
+            // console.log(new Date(), 'new Date()')
+            // console.log(Date.now(), 'Date.now()')
+            // console.log(time.getTime(), 'time.getTime()')
+            if (maxTime > new Date()) {
+              maxTime = Date.now() + 8.64e7
+            }
+
+            return time.getTime() < minTime || time.getTime() > maxTime
+          }
+          return time.getTime() > Date.now() + 8.64e7
+        }
+      },
+      cixCategoryParm:{
+        name: 'getFeedclassList', offset: 0, pagecount: 0,
+        parammaps: { 'pastureid': Cookies.get('pastureid') }
+      },
+      planTypeList: [{ lable: '预混计划', value: '4' }, { lable: '撒料计划', value: '0' }, { lable: '剩料计划', value: '3' }, { lable: '撒料计划-混料', value: '1' }, { lable: '撒料计划-撒料', value: '2' }, { lable: '预称重计划', value: '5' }], // 计划类型
+      workingConditionList: [{ id: '0', name: '进行中' }, { id: '1', name: '已完成' }], // 工作状态
+      cixCategoryList: [], // 混料类别
+
+      // TMR设备列表
+      table: {
+        getdataListParm: {
+          name: 'getprocessAnalysis',
+          page: 1,
+          offset: 1,
+          pagecount: '',
+          returntype: 'Map',
+          parammaps: {
+            pastureid: Cookies.get('pastureid'),
+            startTime: parseTime(new Date(), '{y}-{m}-{d}'),
+            stopTime: parseTime(new Date(), '{y}-{m}-{d}'),
+            inputDatetime: [new Date(), new Date()],
+            iscompleted: '',
+            tmrtname: '',
+            lpplantype: '',
+            error:'',
+            fclassid:''
+          }
+        },
+        tableKey: 0,
+        list: [],
+        total: 0,
+        listLoading: true
+      },
+      // 过程详情
+      table2: {
+        getdataListParm: {
+          name: 'getprocessAnalysisStr',
+          page: 1,
+          offset: 1,
+          pagecount: 1,
+          returntype: 'Map',
+          parammaps: {
+            pastureid: Cookies.get('pastureid'),
+            id: ''
+          }
+        },
+        tableKey: 0,
+        list: [],
+        total: 0,
+        listLoading: true
+      },
+      // 混料详情
+      table3: {
+        getdataListParm: {
+          name: 'getprocessAnalysisHL',
+          page: 1,
+          offset: 1,
+          pagecount: '',
+          returntype: 'Map',
+          parammaps: {
+            pastureid: Cookies.get('pastureid'),
+            id: ''
+          }
+        },
+        tableKey: 0,
+        list: [],
+        total: 0,
+        listLoading: true
+      },
+      // 撒料详情
+      table4: {
+        getdataListParm: {
+          name: 'getprocessAnalysisSL',
+          page: 1,
+          offset: 1,
+          pagecount: '',
+          returntype: 'Map',
+          parammaps: {
+            pastureid: Cookies.get('pastureid'),
+            id: ''
+          }
+        },
+        tableKey: 0,
+        list: [],
+        total: 0,
+        listLoading: true
+      },
+      chart1: {
+        getdataListParm: {
+          name: 'getprocessAnalysisTB',
+          page: 1,
+          offset: 1,
+          pagecount: '',
+          returntype: 'Map',
+          parammaps: {
+            pastureid: Cookies.get('pastureid'),
+            id: ''
+          }
+        },
+        tableKey: 0,
+        list: [],
+        total: 0,
+        listLoading: false,
+        chartLine_data: []
+      },
+      chartLine: null,
+      chartLine_data: {},
+      chartName: '',
+      // rowStyle: { maxHeight: 30 + 'px', height: 30 + 'px' },
+      cellStyle: { padding: 0 + 'px' },
+
+      TMRList:[],
+      errorList:[{ value: '有误差', label: '有误差' }, { value: '无误差', label: '无误差' }],
+
+      downTMR: { name: 'getDownloadedplanTmrName', offset: 0, pagecount: 0,
+       parammaps: {
+            pastureid: Cookies.get('pastureid'),
+            startdate: '',
+            enddate: '',
+          }
+      },
+    }
+  },
+  created() {
+    this.getCixCategoryList()
+    this.getList()
+  },
+  methods: {
+    change_date(e){
+      console.log(e)
+      this.getDownList()
+    },
+
+    getDownList() {
+      this.downTMR.parammaps.startdate = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
+      this.downTMR.parammaps.enddate = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
+      GetDataByName(this.downTMR).then(response => {
+        console.log(response.data.list)
+         this.TMRList = response.data.list
+      })
+    },
+    getCixCategoryList(){
+      GetDataByName(this.cixCategoryParm).then(response => {
+        if(response.data.list !== null){
+          this.cixCategoryList = response.data.list
+        }else{
+          this.cixCategoryList = []
+        }
+      })
+    },
+    // TMR设备列表
+    getList() {
+      this.table.listLoading = true
+      processAnalysist(this.table.getdataListParm).then(response => {
+        // console.log('TMR设备列表table数据', response.data.list)
+        if (response.data.list !== null) {
+          this.table.list = response.data.list
+          this.table.total = response.data.total
+          if (response.data.list[0].lpplantype == '预混计划') {
+            this.isPremixedPlan = true
+            this.isSpreadingPlan = false
+            this.isResidualMaterialPlan = false
+            this.isSpreadingPlanSH = false
             this.isSpreadingPlanSS = false
             this.table2.getdataListParm.name = 'getprocessAnalysisStr'
-            this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
-            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.getList2()
-            this.getList3()
-          } else if (response.data.list[0].lpplantype == '剩料计划') {
-            this.isResidualMaterialPlan = true
-            this.isPremixedPlan = false
-            this.isSpreadingPlan = false
-            this.isSpreadingPlanSH = false
-            this.isSpreadingPlanSS = false
-            this.table2.getdataListParm.name = 'getprocessAnalysisStrSH'
-            this.table3.getdataListParm.name = 'getprocessAnalysisHLSH'
-            this.table4.getdataListParm.name = 'getprocessAnalysisSLSH'
-            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
-            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.getList2()
-            this.getList3()
-            this.getList4()
-          } else if (response.data.list[0].lpplantype == '撒料计划-混料') {
-            // 撒料计划-混料
-            this.isSpreadingPlan = false
-            this.isResidualMaterialPlan = false
-            this.isPremixedPlan = false
-            this.isSpreadingPlanSH = true
+            this.table3.getdataListParm.name = 'getprocessAnalysisHL'
+            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
+            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.getList2()
+            this.getList3()
+          } else if (response.data.list[0].lpplantype == '剩料计划') {
+            this.isResidualMaterialPlan = true
+            this.isPremixedPlan = false
+            this.isSpreadingPlan = false
+            this.isSpreadingPlanSH = false
+            this.isSpreadingPlanSS = false
+            this.table2.getdataListParm.name = 'getprocessAnalysisStrSH'
+            this.table3.getdataListParm.name = 'getprocessAnalysisHLSH'
+            this.table4.getdataListParm.name = 'getprocessAnalysisSLSH'
+            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
+            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.getList2()
+            this.getList3()
+            this.getList4()
+          } else if (response.data.list[0].lpplantype == '撒料计划-混料') {
+            // 撒料计划-混料
+            this.isSpreadingPlan = false
+            this.isResidualMaterialPlan = false
+            this.isPremixedPlan = false
+            this.isSpreadingPlanSH = true
             this.isSpreadingPlanSS = false
             this.table2.getdataListParm.name = 'getprocessAnalysisStr'
             this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
-            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.getList2()
-            this.getList3()
-            this.getList4()
-            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.getChart1()
-          } else if (response.data.list[0].lpplantype == '撒料计划-撒料') {
-            // 撒料计划-撒料
-            this.isSpreadingPlan = false
-            this.isResidualMaterialPlan = false
-            this.isPremixedPlan = false
-            this.isSpreadingPlanSH = false
+            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
+            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.getList2()
+            this.getList3()
+            this.getList4()
+            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.getChart1()
+          } else if (response.data.list[0].lpplantype == '撒料计划-撒料') {
+            // 撒料计划-撒料
+            this.isSpreadingPlan = false
+            this.isResidualMaterialPlan = false
+            this.isPremixedPlan = false
+            this.isSpreadingPlanSH = false
             this.isSpreadingPlanSS = true
             this.table2.getdataListParm.name = 'getprocessAnalysisStr'
             this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
-            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.getList2()
-            this.getList3()
-            this.getList4()
-            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.getChart1()
-          } else if (response.data.list[0].lpplantype == '预称重计划') {
-            // 撒料计划-混料
-            this.isSpreadingPlan = false
-            this.isResidualMaterialPlan = false
-            this.isPremixedPlan = false
-            this.isSpreadingPlanSH = true
+            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
+            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.getList2()
+            this.getList3()
+            this.getList4()
+            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.getChart1()
+          } else if (response.data.list[0].lpplantype == '预称重计划') {
+            // 撒料计划-混料
+            this.isSpreadingPlan = false
+            this.isResidualMaterialPlan = false
+            this.isPremixedPlan = false
+            this.isSpreadingPlanSH = true
             this.isSpreadingPlanSS = false
             this.table2.getdataListParm.name = 'getprocessAnalysisStr'
             this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
-            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.getList2()
-            this.getList3()
-            this.getList4()
-            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.getChart1()
-          } else {
-            // 撒料
-            this.isSpreadingPlan = true
-            this.isResidualMaterialPlan = false
-            this.isPremixedPlan = false
-            this.isSpreadingPlanSH = false
+            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
+            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.getList2()
+            this.getList3()
+            this.getList4()
+            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.getChart1()
+          } else {
+            // 撒料
+            this.isSpreadingPlan = true
+            this.isResidualMaterialPlan = false
+            this.isPremixedPlan = false
+            this.isSpreadingPlanSH = false
             this.isSpreadingPlanSS = false
             this.table2.getdataListParm.name = 'getprocessAnalysisStr'
             this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
-            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-            this.getList2()
-            this.getList3()
-            this.getList4()
-            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
-            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
-            this.getChart1()
-          }
-          this.title = response.data.list[0].lpplantype
-        } else {
-          this.table.list = []
-          this.table2.list = []
-          this.table3.list = []
-          this.table2.listLoading = false
-          this.table3.listLoading = false
-          this.table4.listLoading = false
-          this.chart1.listLoading = false
-        }
-        this.getDownList()
-        setTimeout(() => {
-          this.table.listLoading = false
-        }, 100)
-      })
-    },
-    form_search() {
-      console.log('点击了查询')
-      if (this.table.getdataListParm.parammaps.inputDatetime !== '' && this.table.getdataListParm.parammaps.inputDatetime !== null) {
-        this.table.getdataListParm.parammaps.startTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
-        this.table.getdataListParm.parammaps.stopTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
-      } else {
-        this.table.getdataListParm.parammaps.inputDatetime = ''
-        this.table.getdataListParm.parammaps.startTime = ''
-        this.table.getdataListParm.parammaps.stopTime = ''
-      }
-
-      this.table.getdataListParm.parammaps.hlwc1 = this.hlwc1
-      this.table.getdataListParm.parammaps.hlwc2 = this.hlwc2
-      this.table.getdataListParm.parammaps.hlzq1 = this.hlzq1
-      this.table.getdataListParm.parammaps.hlzq2 = this.hlzq2
-      this.table.getdataListParm.parammaps.slwc1 = this.slwc1
-      this.table.getdataListParm.parammaps.slwc2 = this.slwc2
-      this.table.getdataListParm.parammaps.slzq1 = this.slzq1
-      this.table.getdataListParm.parammaps.slzq2 = this.slzq2
-      this.table.getdataListParm.parammaps.minproesstime = this.minproesstime
-      this.table.getdataListParm.parammaps.maxproesstime = this.maxproesstime
-      // if(this.ccys == true){
-      //   if(this.table3.getdataListParm.name !== 'getprocessAnalysisHL'){
-      //     this.hlwc1 = undefined
-      //     this.hlwc2 = undefined
-      //     this.hlzq1 = undefined
-      //     this.hlzq2 = undefined
-      //     this.slwc1 = undefined
-      //     this.slwc2 = undefined
-      //     this.slzq1 = undefined
-      //     this.slzq2 = undefined
-      //     this.table.getdataListParm.parammaps.error = ''
-      //     this.table3.getdataListParm.parammaps.error = ''
-      //     this.table4.getdataListParm.parammaps.error = ''
-      //   }
-      //   if(this.table3.getdataListParm.name == 'getprocessAnalysisHL'){
-      //     this.table3.getdataListParm.parammaps.hlwc1  = this.hlwc1
-      //     this.table3.getdataListParm.parammaps.hlwc2  = this.hlwc2
-      //     this.table3.getdataListParm.parammaps.hlzq1  = this.hlzq1
-      //     this.table3.getdataListParm.parammaps.hlzq2  = this.hlzq2
-      //     this.table3.getdataListParm.parammaps.slwc1  = this.slwc1
-      //     this.table3.getdataListParm.parammaps.slwc2  = this.slwc2
-      //     this.table3.getdataListParm.parammaps.slzq1  = this.slzq1
-      //     this.table3.getdataListParm.parammaps.slzq2  = this.slzq2
-      //     this.table3.getdataListParm.parammaps.error  = '有误差'
-      //   }
-      //   if(this.table4.getdataListParm.name == 'getprocessAnalysisSL'){
-      //     this.table4.getdataListParm.parammaps.hlwc1  = this.hlwc1
-      //     this.table4.getdataListParm.parammaps.hlwc2  = this.hlwc2
-      //     this.table4.getdataListParm.parammaps.hlzq1  = this.hlzq1
-      //     this.table4.getdataListParm.parammaps.hlzq2  = this.hlzq2
-      //     this.table4.getdataListParm.parammaps.slwc1  = this.slwc1
-      //     this.table4.getdataListParm.parammaps.slwc2  = this.slwc2
-      //     this.table4.getdataListParm.parammaps.slzq1  = this.slzq1
-      //     this.table4.getdataListParm.parammaps.slzq2  = this.slzq2
-      //     this.table4.getdataListParm.parammaps.error  = '有误差'
-      //   }
-      //   if(this.table.getdataListParm.name == 'getprocessAnalysis'){
-      //     this.table.getdataListParm.parammaps.hlwc1  = this.hlwc1
-      //     this.table.getdataListParm.parammaps.hlwc2  = this.hlwc2
-      //     this.table.getdataListParm.parammaps.hlzq1  = this.hlzq1
-      //     this.table.getdataListParm.parammaps.hlzq2  = this.hlzq2
-      //     this.table.getdataListParm.parammaps.slwc1  = this.slwc1
-      //     this.table.getdataListParm.parammaps.slwc2  = this.slwc2
-      //     this.table.getdataListParm.parammaps.slzq1  = this.slzq1
-      //     this.table.getdataListParm.parammaps.slzq2  = this.slzq2
-      //     this.table.getdataListParm.parammaps.error = '有误差'
-      //   }
-      // }else{
-      //   this.table3.getdataListParm.parammaps.hlwc1  = ''
-      //   this.table3.getdataListParm.parammaps.hlwc2  = ''
-      //   this.table3.getdataListParm.parammaps.hlzq1  = ''
-      //   this.table3.getdataListParm.parammaps.hlzq2  = ''
-      //   this.table3.getdataListParm.parammaps.slwc1  = ''
-      //   this.table3.getdataListParm.parammaps.slwc2  = ''
-      //   this.table3.getdataListParm.parammaps.slzq1  = ''
-      //   this.table3.getdataListParm.parammaps.slzq2  = ''
-      //   this.table4.getdataListParm.parammaps.hlwc1  = ''
-      //   this.table4.getdataListParm.parammaps.hlwc2  = ''
-      //   this.table4.getdataListParm.parammaps.hlzq1  = ''
-      //   this.table4.getdataListParm.parammaps.hlzq2  = ''
-      //   this.table4.getdataListParm.parammaps.slwc1  = ''
-      //   this.table4.getdataListParm.parammaps.slwc2  = ''
-      //   this.table4.getdataListParm.parammaps.slzq1  = ''
-      //   this.table4.getdataListParm.parammaps.slzq2  = ''
-      //   this.table3.getdataListParm.parammaps.error  = ''
-      //   this.table4.getdataListParm.parammaps.error  = ''
-      // }
-      // 临时注释
-      this.table.getdataListParm.offset = 1
-      this.getList()
-    },
-    handleRefresh() {
-      console.log('点击了重置')
-      this.table.getdataListParm.parammaps.fclassid = ''
-      this.table.getdataListParm.parammaps.tmrtname = ''
-      this.table.getdataListParm.parammaps.iscompleted = ''
-      this.table.getdataListParm.parammaps.lpplantype = ''
-      this.table.getdataListParm.parammaps.startTime = parseTime(new Date(), '{y}-{m}-{d}')
-      this.table.getdataListParm.parammaps.stopTime = parseTime(new Date(), '{y}-{m}-{d}')
-      this.table.getdataListParm.parammaps.inputDatetime = [new Date(), new Date()]
-      this.table.getdataListParm.offset = 1
-      this.getList()
-    },
-    handleBefore() {
-      if (this.table.getdataListParm.parammaps.inputDatetime !== '' && this.table.getdataListParm.parammaps.inputDatetime !== null) {
-        var start = new Date(this.table.getdataListParm.parammaps.inputDatetime[0].setDate(this.table.getdataListParm.parammaps.inputDatetime[0].getDate() - 1))
-        var stop = new Date(this.table.getdataListParm.parammaps.inputDatetime[1].setDate(this.table.getdataListParm.parammaps.inputDatetime[1].getDate() - 1))
-        if (stop > Date.now()) {
-          this.Nextdisabled = true
-          this.Beforedisabled = false
-        } else {
-          this.Nextdisabled = false
-          this.Beforedisabled = false
-        }
-        this.table.getdataListParm.parammaps.inputDatetime.length = 0
-        this.table.getdataListParm.parammaps.inputDatetime.push(start, stop)
-        this.$forceUpdate()
-      }
-      this.table.getdataListParm.parammaps.startTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
-      this.table.getdataListParm.parammaps.stopTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
-      this.getDownList()
-      this.getList()
-    },
-    handleNext() {
-      if (this.table.getdataListParm.parammaps.inputDatetime !== '' && this.table.getdataListParm.parammaps.inputDatetime !== null) {
-        var start2 = new Date(this.table.getdataListParm.parammaps.inputDatetime[0].setDate(this.table.getdataListParm.parammaps.inputDatetime[0].getDate() + 1))
-        var stop2 = new Date(this.table.getdataListParm.parammaps.inputDatetime[1].setDate(this.table.getdataListParm.parammaps.inputDatetime[1].getDate() + 1))
-        // console.log(stop2)
-        // console.log(Date.now() + 8.64e7)
-        // console.log(stop2 > Date.now() + 8.64e7)
-        if (stop2 > Date.now()) {
-          this.Nextdisabled = true
-          this.Beforedisabled = false
-        } else {
-          this.Nextdisabled = false
-          this.Beforedisabled = false
-        }
-        this.table.getdataListParm.parammaps.inputDatetime.length = 0
-        this.table.getdataListParm.parammaps.inputDatetime.push(start2, stop2)
-        this.$forceUpdate()
-      }
-      this.table.getdataListParm.parammaps.startTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
-      this.table.getdataListParm.parammaps.stopTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
-      this.getDownList()
-      this.getList()
-    },
-    rowClick(row, column, event) {
-      this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-      this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
-      this.table2.getdataListParm.parammaps.id = row.id
-      this.table3.getdataListParm.parammaps.pid = row.id
-      this.table4.getdataListParm.parammaps.pid = row.id
-      this.chart1.getdataListParm.parammaps.pid = row.id
-      this.chartName = row.tmrtname
-      if (row.lpplantype == '预混计划') {
-        this.isPremixedPlan = true
-        this.isResidualMaterialPlan = false
-        this.isSpreadingPlan = false
-
-        this.isSpreadingPlanSH = false
-        this.isSpreadingPlanSS = false
-        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
-        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
-        this.getList2()
-        this.getList3()
-      } else if (row.lpplantype == '剩料计划') {
-        this.isResidualMaterialPlan = true
-        this.isPremixedPlan = false
-        this.isSpreadingPlan = false
-
-        this.isSpreadingPlanSH = false
-        this.isSpreadingPlanSS = false
-        this.table2.getdataListParm.name = 'getprocessAnalysisStrSH'
-        this.table3.getdataListParm.name = 'getprocessAnalysisHLSH'
-        this.table4.getdataListParm.name = 'getprocessAnalysisSLSH'
-        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
-        this.getList2()
-        this.getList3()
-        this.getList4()
-      } else if (row.lpplantype == '撒料计划-混料') {
-        this.isSpreadingPlan = false
-        this.isPremixedPlan = false
-        this.isResidualMaterialPlan = false
-        this.isSpreadingPlanSH = true
-        this.isSpreadingPlanSS = false
-        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
-        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
-        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
-        this.getList2()
-        this.getList3()
-        this.getList4()
-        this.getChart1()
-      } else if (row.lpplantype == '撒料计划-撒料') {
-        this.isSpreadingPlan = false
-        this.isPremixedPlan = false
-        this.isResidualMaterialPlan = false
-        this.isSpreadingPlanSH = false
-        this.isSpreadingPlanSS = true
-        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
-        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
-        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
-        this.getList2()
-        this.getList3()
-        this.getList4()
-        this.getChart1()
-      } else if (row.lpplantype == '预称重计划') {
-        this.isSpreadingPlan = false
-        this.isPremixedPlan = false
-        this.isResidualMaterialPlan = false
-        this.isSpreadingPlanSH = true
-        this.isSpreadingPlanSS = false
-        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
-        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
-        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
-        this.getList2()
-        this.getList3()
-        this.getList4()
-        this.getChart1()
-      } else {
-        this.isSpreadingPlan = true
-        this.isPremixedPlan = false
-        this.isResidualMaterialPlan = false
-        this.isSpreadingPlanSH = false
-        this.isSpreadingPlanSS = false
-
-        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
-        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
-        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
-        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
-        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
-        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
-        this.getList2()
-        this.getList3()
-        this.getList4()
-        this.getChart1()
-      }
-      this.title = '' + row.lpplantype
-    },
-    // 过程详情
-    getList2() {
-      this.table2.listLoading = false
-      GetDataByName(this.table2.getdataListParm).then(response => {
-        console.log('过程详情table数据', response.data.list)
-        if (response.data.list !== null) {
-          this.table2.list = response.data.list
-        } else {
-          this.table2.list = []
-        }
-        setTimeout(() => {
-          this.table2.listLoading = false
-        }, 100)
-      })
-    },
-    // 混料详情
-    getList3() {
-      this.table3.listLoading = false
-      GetDataByName(this.table3.getdataListParm).then(response => {
-        console.log('混料详情table数据', response.data.list)
-        if (response.data.list !== null) {
-          this.table3.list = response.data.list
-          var sumlweight = 0
-          var sumactualweightminus = 0
-          var sumsweight = 0
-          var sumproesstime = ''
-          for (let i = 0; i < response.data.list.length; i++) {
-            if (response.data.list[i].lweight == undefined) { response.data.list[i].lweight = 0 }
-            if (response.data.list[i].actualweightminus == undefined) { response.data.list[i].actualweightminus = 0 }
-            if (response.data.list[i].sweight == undefined) { response.data.list[i].sweight = 0 }
-            sumlweight += parseFloat(response.data.list[i].lweight)
-            sumactualweightminus += parseFloat(response.data.list[i].actualweightminus)
-            sumsweight += parseFloat(response.data.list[i].sweight)
-            sumproesstime = response.data.list[0].sumproesstime
-          }
-          sumlweight = formatNum(sumlweight, 2)
-          sumactualweightminus = formatNum(sumactualweightminus, 2)
-          sumsweight = formatNum(sumsweight, 2)
-          this.table3.list.push({ 'sort': '合计', 'lweight': sumlweight, 'actualweightminus': sumactualweightminus, 'sweight': sumsweight, 'proesstime': sumproesstime })
-        } else {
-          this.table3.list = []
-        }
-        setTimeout(() => {
-          this.table3.listLoading = false
-        }, 100)
-      })
-    },
-    // 撒料详情
-    getList4() {
-      this.table4.listLoading = false
-      GetDataByName(this.table4.getdataListParm).then(response => {
-        console.log('撒料详情table数据', response.data.list)
-        if (response.data.list !== null) {
-          this.table4.list = response.data.list
-          var sumlweight = 0
-          var sumactualweightminus = 0
-          var sumsweight = 0
-          var sumproesstime = ''
-          for (let i = 0; i < response.data.list.length; i++) {
-            if (response.data.list[i].lweight == undefined) { response.data.list[i].lweight = 0 }
-            if (response.data.list[i].actualweightminus == undefined) { response.data.list[i].actualweightminus = 0 }
-            if (response.data.list[i].sweight == undefined) { response.data.list[i].sweight = 0 }
-            sumlweight += parseFloat(response.data.list[i].lweight)
-            sumactualweightminus += parseFloat(response.data.list[i].actualweightminus)
-            sumsweight += parseFloat(response.data.list[i].sweight)
-            sumproesstime = response.data.list[0].sumproesstime
-          }
-          sumlweight = formatNum(sumlweight, 2)
-          sumactualweightminus = formatNum(sumactualweightminus, 2)
-          sumsweight = formatNum(sumsweight, 2)
-          this.table4.list.push({ 'sort': '合计', 'lweight': sumlweight, 'actualweightminus': sumactualweightminus, 'sweight': sumsweight, 'proesstime': sumproesstime })
-          this.rowspan()
-        } else {
-          this.table4.list = []
-        }
-        setTimeout(() => {
-          this.table4.listLoading = false
-        }, 100)
-      })
-    },
-    rowspan() {
-      this.spanArr = []
-      this.table4.list.forEach((item, index) => {
-        if (index == 0) {
-          this.spanArr.push(1)
-          this.position = 0
-        } else {
-          console.log(item, index, '======')
-          if (this.table4.list[index].aweight == this.table4.list[index - 1].aweight) {
-            this.spanArr[this.position] += 1
-            this.spanArr.push(0)
-          } else {
-            this.spanArr.push(1)
-            this.position = index
-          }
-        }
-      })
-    },
-
-    objectSpanMethod({ row, column, rowIndex, columnIndex }) {
-      if (columnIndex == 4) {
-        const _row = this.spanArr[rowIndex]
-        const _col = _row > 0 ? 1 : 0
-        return {
-          rowspan: _row,
-          colspan: _col
-        }
-      }
-    },
-    getChart1() {
-      this.chart1.listLoading = true
-      GetReportform(this.chart1.getdataListParm).then(response => {
-        if (response.data.list !== null) {
-          this.chart1.list = response.data.data
-          console.log('实时监控', response.data.list)
-          this.chart1.chartLine_data = response.data.list
-          this.chart1.total = response.data.total
-          this.roadChartLine1(this.chart1.chartLine_data)
-        } else {
-          this.chart1.list = []
-        }
-        setTimeout(() => {
-          this.chart1.listLoading = false
-        }, 100)
-      })
-    },
-    roadChartLine1(chartLine_data) {
-      console.log(chartLine_data.data5, 'chartLine_data')
-      if (this.chartLine != null) {
-        this.chartLine.dispose()
-      }
-      this.chartLine = echarts.init(document.getElementById('chartLine'))
-      var option = {
-        title: { text: '', subtext: '' },
-        color: ['#ff0000', '#5199e5', '#fdb06a', '#fb8b73'], // 关键加上这句话,legend的颜色和折线的自定义颜色就一致了
-        legend: [{
-          itemWidth: 15, itemHeight: 7, right: '25%', textStyle: { fontSize: 12 },
-          data: [{ name: '设计重量' }, { name: '实际重量'  }]
-        }, {
-          itemWidth: 5, itemHeight: 5, right: '0', textStyle: { fontSize: 12 },
-          data: [
-            { name: '开始重量' },
-            { name: '结束重量' }
-          ]
-        }],
-        tooltip: {
-          trigger: 'axis',
-          formatter: function(params) {
-            // console.log(params, 'params')
-            var tip = params[0].name
-            for (let i = 0; i < params.length; i++) {
-              if (params[i].seriesName == '设计重量') {
-                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1]
-              }
-              if (params[i].seriesName == '实际重量') {
-                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1]
-              }
-              if (params[i].seriesName == '开始重量') {
-                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1]
-              }
-              if (params[i].seriesName == '结束重量') {
-                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1] + '<br>' + params[i].value[2] + params[i].value[3]
-              }
-            }
-            return tip
-          }
-        },
-        calculable: true,
-        xAxis: [
-          { type: 'category' }
-          // { type: 'category', splitLine: { show: false }, name: '时间', data: chartLine_data.data1, axisLabel: { show: true, textStyle: { color: '#666' }}}
-        ],
-        yAxis: [{ type: 'value' }],
-        toolbox: {
-          show: false,
-          feature: {
-            dataZoom: { realtime: false, yAxisIndex: 'none', },
-            restore: {},
-          }
-        },
-        dataZoom:  [
-          {type: 'inside'},        //用于添加滚轮缩放
-          {type:'slider' },  //用于添加滑动条缩放,
-        ],
-        series: [
-          { symbol: 'none', name: '实际重量', type: 'line', data: chartLine_data.data3, itemStyle: { normal: { lineStyle: { color: '#ff0000' ,width:2}}}},
-          { symbol: 'none', name: '设计重量', type: 'line', step: 'middle', data: chartLine_data.data2 , itemStyle: { normal: { lineStyle: {  width:2}}}},
-          { name: '开始重量', symbolSize: 6, type: 'scatter', data: chartLine_data.data4 },
-          { name: '结束重量', symbolSize: 6, type: 'scatter', data: chartLine_data.data5 }
-        ]
-      }
-      this.chartLine.setOption(option)
-      window.onresize = function() {
-        this.chartLine.resize()
-      }
-    },
-    rowStyle({ row, rowIndex }) {
-        console.log(row, rowIndex,'777777');
-        let stylejson = {};
-        if (row.abnormal == 1) {
-            stylejson.background = "#fb8072";// 背景颜色
-            stylejson.maxHeight = '30px';// 背景颜色
-            stylejson.height = '30px';// 背景颜色
-            // 也可以修改文字颜色
-            return stylejson;
-        } else {
-            return "";
-        }
-    },
-    changeccysChecked(){
-      // table.getdataListParm.parammaps.ccys
-      // console.log(this.table.getdataListParm.parammaps.ccys,'===')
-      if(this.ccys == true){
-        if(this.table3.getdataListParm.name !== 'getprocessAnalysisHL'){
-          this.hlwc1 = undefined
-          this.hlwc2 = undefined
-          this.hlzq1 = undefined
-          this.hlzq2 = undefined
-          this.slwc1 = undefined
-          this.slwc2 = undefined
-          this.slzq1 = undefined
-          this.slzq2 = undefined
-          this.table3.getdataListParm.parammaps.error = ''
-          this.table4.getdataListParm.parammaps.error = ''
-          this.table.getdataListParm.parammaps.error = ''
-        }
-        if(this.table3.getdataListParm.name == 'getprocessAnalysisHL'){
-        //   // hlwc1,hlwc2,hlzq1,hlzq2,slwc1,slwc2,slzq1,slzq2,ccys
-          this.table3.getdataListParm.parammaps.hlwc1  = this.hlwc1
-          this.table3.getdataListParm.parammaps.hlwc2  = this.hlwc2
-          this.table3.getdataListParm.parammaps.hlzq1  = this.hlzq1
-          this.table3.getdataListParm.parammaps.hlzq2  = this.hlzq2
-          this.table3.getdataListParm.parammaps.slwc1  = this.slwc1
-          this.table3.getdataListParm.parammaps.slwc2  = this.slwc2
-          this.table3.getdataListParm.parammaps.slzq1  = this.slzq1
-          this.table3.getdataListParm.parammaps.slzq2  = this.slzq2
-          this.table3.getdataListParm.parammaps.error = '有误差'
-        }
-        if(this.table4.getdataListParm.name == 'getprocessAnalysisSL'){
-          this.table4.getdataListParm.parammaps.hlwc1  = this.hlwc1
-          this.table4.getdataListParm.parammaps.hlwc2  = this.hlwc2
-          this.table4.getdataListParm.parammaps.hlzq1  = this.hlzq1
-          this.table4.getdataListParm.parammaps.hlzq2  = this.hlzq2
-          this.table4.getdataListParm.parammaps.slwc1  = this.slwc1
-          this.table4.getdataListParm.parammaps.slwc2  = this.slwc2
-          this.table4.getdataListParm.parammaps.slzq1  = this.slzq1
-          this.table4.getdataListParm.parammaps.slzq2  = this.slzq2
-          this.table4.getdataListParm.parammaps.error = '有误差'
-        }
-        if(this.table.getdataListParm.name == 'getprocessAnalysis'){
-          this.table.getdataListParm.parammaps.hlwc1  = this.hlwc1
-          this.table.getdataListParm.parammaps.hlwc2  = this.hlwc2
-          this.table.getdataListParm.parammaps.hlzq1  = this.hlzq1
-          this.table.getdataListParm.parammaps.hlzq2  = this.hlzq2
-          this.table.getdataListParm.parammaps.slwc1  = this.slwc1
-          this.table.getdataListParm.parammaps.slwc2  = this.slwc2
-          this.table.getdataListParm.parammaps.slzq1  = this.slzq1
-          this.table.getdataListParm.parammaps.slzq2  = this.slzq2
-          this.table.getdataListParm.parammaps.error = '有误差'
-        }
-        this.getList2()
-        this.getList3()
-        this.getList4()
-      }else{
-        this.table.getdataListParm.parammaps.error = ''
-        this.table3.getdataListParm.parammaps.error = ''
-        this.table4.getdataListParm.parammaps.error = ''
-        this.getList2()
-        this.getList3()
-        this.getList4()
-      }
-    }
-  }
-}
-
-</script>
-<style lang="scss" scoped>
-  .filter-item1{
-    margin-top: 10px;
-    span{margin-right: 5px;}
-  }
-  /deep/.el-table--scrollable-y .el-table__body-wrapper{
-    bottom: 15px;
-  }
-  .detail{
-    height:84px;padding:0 10px;font:16px/32px '';color:#333;background: #F9F9F9;display: flex; align-items: center;text-align: center;
-    div{
-      height: 15px;width: 20%;border-right: 1px solid #E0E0E0;color: #333;
-      b{line-height: 20px;font-size: 16px;display: block;margin-top: -10px;height: 20px;color: #009A69;}
-      span{font-size: 14px;}
-    }
-    div:last-child{border-right:none}
-  }
-  .title{height: 50px;line-height: 50px;}
-</style>
+            this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+            this.table2.getdataListParm.parammaps.id = response.data.list[0].id
+            this.table2.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table3.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table3.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table4.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.table4.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+            this.getList2()
+            this.getList3()
+            this.getList4()
+            this.chart1.getdataListParm.parammaps.pid = response.data.list[0].id
+            this.chart1.getdataListParm.parammaps.pastureid = response.data.list[0].pastureid
+            this.getChart1()
+          }
+          this.title = response.data.list[0].lpplantype
+        } else {
+          this.table.list = []
+          this.table2.list = []
+          this.table3.list = []
+          this.table2.listLoading = false
+          this.table3.listLoading = false
+          this.table4.listLoading = false
+          this.chart1.listLoading = false
+        }
+        this.getDownList()
+        setTimeout(() => {
+          this.table.listLoading = false
+        }, 100)
+      })
+    },
+    form_search() {
+      console.log('点击了查询')
+      if (this.table.getdataListParm.parammaps.inputDatetime !== '' && this.table.getdataListParm.parammaps.inputDatetime !== null) {
+        this.table.getdataListParm.parammaps.startTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
+        this.table.getdataListParm.parammaps.stopTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
+      } else {
+        this.table.getdataListParm.parammaps.inputDatetime = ''
+        this.table.getdataListParm.parammaps.startTime = ''
+        this.table.getdataListParm.parammaps.stopTime = ''
+      }
+
+      this.table.getdataListParm.parammaps.hlwc1 = this.hlwc1
+      this.table.getdataListParm.parammaps.hlwc2 = this.hlwc2
+      this.table.getdataListParm.parammaps.hlzq1 = this.hlzq1
+      this.table.getdataListParm.parammaps.hlzq2 = this.hlzq2
+      this.table.getdataListParm.parammaps.slwc1 = this.slwc1
+      this.table.getdataListParm.parammaps.slwc2 = this.slwc2
+      this.table.getdataListParm.parammaps.slzq1 = this.slzq1
+      this.table.getdataListParm.parammaps.slzq2 = this.slzq2
+      this.table.getdataListParm.parammaps.minproesstime = this.minproesstime
+      this.table.getdataListParm.parammaps.maxproesstime = this.maxproesstime
+      // if(this.ccys == true){
+      //   if(this.table3.getdataListParm.name !== 'getprocessAnalysisHL'){
+      //     this.hlwc1 = undefined
+      //     this.hlwc2 = undefined
+      //     this.hlzq1 = undefined
+      //     this.hlzq2 = undefined
+      //     this.slwc1 = undefined
+      //     this.slwc2 = undefined
+      //     this.slzq1 = undefined
+      //     this.slzq2 = undefined
+      //     this.table.getdataListParm.parammaps.error = ''
+      //     this.table3.getdataListParm.parammaps.error = ''
+      //     this.table4.getdataListParm.parammaps.error = ''
+      //   }
+      //   if(this.table3.getdataListParm.name == 'getprocessAnalysisHL'){
+      //     this.table3.getdataListParm.parammaps.hlwc1  = this.hlwc1
+      //     this.table3.getdataListParm.parammaps.hlwc2  = this.hlwc2
+      //     this.table3.getdataListParm.parammaps.hlzq1  = this.hlzq1
+      //     this.table3.getdataListParm.parammaps.hlzq2  = this.hlzq2
+      //     this.table3.getdataListParm.parammaps.slwc1  = this.slwc1
+      //     this.table3.getdataListParm.parammaps.slwc2  = this.slwc2
+      //     this.table3.getdataListParm.parammaps.slzq1  = this.slzq1
+      //     this.table3.getdataListParm.parammaps.slzq2  = this.slzq2
+      //     this.table3.getdataListParm.parammaps.error  = '有误差'
+      //   }
+      //   if(this.table4.getdataListParm.name == 'getprocessAnalysisSL'){
+      //     this.table4.getdataListParm.parammaps.hlwc1  = this.hlwc1
+      //     this.table4.getdataListParm.parammaps.hlwc2  = this.hlwc2
+      //     this.table4.getdataListParm.parammaps.hlzq1  = this.hlzq1
+      //     this.table4.getdataListParm.parammaps.hlzq2  = this.hlzq2
+      //     this.table4.getdataListParm.parammaps.slwc1  = this.slwc1
+      //     this.table4.getdataListParm.parammaps.slwc2  = this.slwc2
+      //     this.table4.getdataListParm.parammaps.slzq1  = this.slzq1
+      //     this.table4.getdataListParm.parammaps.slzq2  = this.slzq2
+      //     this.table4.getdataListParm.parammaps.error  = '有误差'
+      //   }
+      //   if(this.table.getdataListParm.name == 'getprocessAnalysis'){
+      //     this.table.getdataListParm.parammaps.hlwc1  = this.hlwc1
+      //     this.table.getdataListParm.parammaps.hlwc2  = this.hlwc2
+      //     this.table.getdataListParm.parammaps.hlzq1  = this.hlzq1
+      //     this.table.getdataListParm.parammaps.hlzq2  = this.hlzq2
+      //     this.table.getdataListParm.parammaps.slwc1  = this.slwc1
+      //     this.table.getdataListParm.parammaps.slwc2  = this.slwc2
+      //     this.table.getdataListParm.parammaps.slzq1  = this.slzq1
+      //     this.table.getdataListParm.parammaps.slzq2  = this.slzq2
+      //     this.table.getdataListParm.parammaps.error = '有误差'
+      //   }
+      // }else{
+      //   this.table3.getdataListParm.parammaps.hlwc1  = ''
+      //   this.table3.getdataListParm.parammaps.hlwc2  = ''
+      //   this.table3.getdataListParm.parammaps.hlzq1  = ''
+      //   this.table3.getdataListParm.parammaps.hlzq2  = ''
+      //   this.table3.getdataListParm.parammaps.slwc1  = ''
+      //   this.table3.getdataListParm.parammaps.slwc2  = ''
+      //   this.table3.getdataListParm.parammaps.slzq1  = ''
+      //   this.table3.getdataListParm.parammaps.slzq2  = ''
+      //   this.table4.getdataListParm.parammaps.hlwc1  = ''
+      //   this.table4.getdataListParm.parammaps.hlwc2  = ''
+      //   this.table4.getdataListParm.parammaps.hlzq1  = ''
+      //   this.table4.getdataListParm.parammaps.hlzq2  = ''
+      //   this.table4.getdataListParm.parammaps.slwc1  = ''
+      //   this.table4.getdataListParm.parammaps.slwc2  = ''
+      //   this.table4.getdataListParm.parammaps.slzq1  = ''
+      //   this.table4.getdataListParm.parammaps.slzq2  = ''
+      //   this.table3.getdataListParm.parammaps.error  = ''
+      //   this.table4.getdataListParm.parammaps.error  = ''
+      // }
+      // 临时注释
+      this.table.getdataListParm.offset = 1
+      this.getList()
+    },
+    handleRefresh() {
+      console.log('点击了重置')
+      this.table.getdataListParm.parammaps.fclassid = ''
+      this.table.getdataListParm.parammaps.tmrtname = ''
+      this.table.getdataListParm.parammaps.iscompleted = ''
+      this.table.getdataListParm.parammaps.lpplantype = ''
+      this.table.getdataListParm.parammaps.startTime = parseTime(new Date(), '{y}-{m}-{d}')
+      this.table.getdataListParm.parammaps.stopTime = parseTime(new Date(), '{y}-{m}-{d}')
+      this.table.getdataListParm.parammaps.inputDatetime = [new Date(), new Date()]
+      this.table.getdataListParm.offset = 1
+      this.getList()
+    },
+    handleBefore() {
+      if (this.table.getdataListParm.parammaps.inputDatetime !== '' && this.table.getdataListParm.parammaps.inputDatetime !== null) {
+        var start = new Date(this.table.getdataListParm.parammaps.inputDatetime[0].setDate(this.table.getdataListParm.parammaps.inputDatetime[0].getDate() - 1))
+        var stop = new Date(this.table.getdataListParm.parammaps.inputDatetime[1].setDate(this.table.getdataListParm.parammaps.inputDatetime[1].getDate() - 1))
+        if (stop > Date.now()) {
+          this.Nextdisabled = true
+          this.Beforedisabled = false
+        } else {
+          this.Nextdisabled = false
+          this.Beforedisabled = false
+        }
+        this.table.getdataListParm.parammaps.inputDatetime.length = 0
+        this.table.getdataListParm.parammaps.inputDatetime.push(start, stop)
+        this.$forceUpdate()
+      }
+      this.table.getdataListParm.parammaps.startTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
+      this.table.getdataListParm.parammaps.stopTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
+      this.getDownList()
+      this.getList()
+    },
+    handleNext() {
+      if (this.table.getdataListParm.parammaps.inputDatetime !== '' && this.table.getdataListParm.parammaps.inputDatetime !== null) {
+        var start2 = new Date(this.table.getdataListParm.parammaps.inputDatetime[0].setDate(this.table.getdataListParm.parammaps.inputDatetime[0].getDate() + 1))
+        var stop2 = new Date(this.table.getdataListParm.parammaps.inputDatetime[1].setDate(this.table.getdataListParm.parammaps.inputDatetime[1].getDate() + 1))
+        // console.log(stop2)
+        // console.log(Date.now() + 8.64e7)
+        // console.log(stop2 > Date.now() + 8.64e7)
+        if (stop2 > Date.now()) {
+          this.Nextdisabled = true
+          this.Beforedisabled = false
+        } else {
+          this.Nextdisabled = false
+          this.Beforedisabled = false
+        }
+        this.table.getdataListParm.parammaps.inputDatetime.length = 0
+        this.table.getdataListParm.parammaps.inputDatetime.push(start2, stop2)
+        this.$forceUpdate()
+      }
+      this.table.getdataListParm.parammaps.startTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[0], '{y}-{m}-{d}')
+      this.table.getdataListParm.parammaps.stopTime = parseTime(this.table.getdataListParm.parammaps.inputDatetime[1], '{y}-{m}-{d}')
+      this.getDownList()
+      this.getList()
+    },
+    rowClick(row, column, event) {
+      this.table2.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+      this.table3.getdataListParm.parammaps.fclassid = this.table.getdataListParm.parammaps.fclassid
+      this.table2.getdataListParm.parammaps.id = row.id
+      this.table3.getdataListParm.parammaps.pid = row.id
+      this.table4.getdataListParm.parammaps.pid = row.id
+      this.chart1.getdataListParm.parammaps.pid = row.id
+      this.chartName = row.tmrtname
+      if (row.lpplantype == '预混计划') {
+        this.isPremixedPlan = true
+        this.isResidualMaterialPlan = false
+        this.isSpreadingPlan = false
+
+        this.isSpreadingPlanSH = false
+        this.isSpreadingPlanSS = false
+        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
+        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
+        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
+        this.getList2()
+        this.getList3()
+      } else if (row.lpplantype == '剩料计划') {
+        this.isResidualMaterialPlan = true
+        this.isPremixedPlan = false
+        this.isSpreadingPlan = false
+
+        this.isSpreadingPlanSH = false
+        this.isSpreadingPlanSS = false
+        this.table2.getdataListParm.name = 'getprocessAnalysisStrSH'
+        this.table3.getdataListParm.name = 'getprocessAnalysisHLSH'
+        this.table4.getdataListParm.name = 'getprocessAnalysisSLSH'
+        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
+        this.getList2()
+        this.getList3()
+        this.getList4()
+      } else if (row.lpplantype == '撒料计划-混料') {
+        this.isSpreadingPlan = false
+        this.isPremixedPlan = false
+        this.isResidualMaterialPlan = false
+        this.isSpreadingPlanSH = true
+        this.isSpreadingPlanSS = false
+        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
+        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
+        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
+        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
+        this.getList2()
+        this.getList3()
+        this.getList4()
+        this.getChart1()
+      } else if (row.lpplantype == '撒料计划-撒料') {
+        this.isSpreadingPlan = false
+        this.isPremixedPlan = false
+        this.isResidualMaterialPlan = false
+        this.isSpreadingPlanSH = false
+        this.isSpreadingPlanSS = true
+        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
+        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
+        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
+        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
+        this.getList2()
+        this.getList3()
+        this.getList4()
+        this.getChart1()
+      } else if (row.lpplantype == '预称重计划') {
+        this.isSpreadingPlan = false
+        this.isPremixedPlan = false
+        this.isResidualMaterialPlan = false
+        this.isSpreadingPlanSH = true
+        this.isSpreadingPlanSS = false
+        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
+        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
+        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
+        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
+        this.getList2()
+        this.getList3()
+        this.getList4()
+        this.getChart1()
+      } else {
+        this.isSpreadingPlan = true
+        this.isPremixedPlan = false
+        this.isResidualMaterialPlan = false
+        this.isSpreadingPlanSH = false
+        this.isSpreadingPlanSS = false
+
+        this.table2.getdataListParm.name = 'getprocessAnalysisStr'
+        this.table3.getdataListParm.name = 'getprocessAnalysisHL'
+        this.table4.getdataListParm.name = 'getprocessAnalysisSL'
+        this.table2.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table3.getdataListParm.parammaps.pastureid = row.pastureid
+        this.table4.getdataListParm.parammaps.pastureid = row.pastureid
+        this.chart1.getdataListParm.parammaps.pastureid = row.pastureid
+        this.getList2()
+        this.getList3()
+        this.getList4()
+        this.getChart1()
+      }
+      this.title = '' + row.lpplantype
+    },
+    // 过程详情
+    getList2() {
+      this.table2.listLoading = false
+      GetDataByName(this.table2.getdataListParm).then(response => {
+        console.log('过程详情table数据', response.data.list)
+        if (response.data.list !== null) {
+          this.table2.list = response.data.list
+        } else {
+          this.table2.list = []
+        }
+        setTimeout(() => {
+          this.table2.listLoading = false
+        }, 100)
+      })
+    },
+    // 混料详情
+    getList3() {
+      this.table3.listLoading = false
+      GetDataByName(this.table3.getdataListParm).then(response => {
+        console.log('混料详情table数据', response.data.list)
+        if (response.data.list !== null) {
+          this.table3.list = response.data.list
+          var sumlweight = 0
+          var sumactualweightminus = 0
+          var sumsweight = 0
+          var sumproesstime = ''
+          for (let i = 0; i < response.data.list.length; i++) {
+            if (response.data.list[i].lweight == undefined) { response.data.list[i].lweight = 0 }
+            if (response.data.list[i].actualweightminus == undefined) { response.data.list[i].actualweightminus = 0 }
+            if (response.data.list[i].sweight == undefined) { response.data.list[i].sweight = 0 }
+            sumlweight += parseFloat(response.data.list[i].lweight)
+            sumactualweightminus += parseFloat(response.data.list[i].actualweightminus)
+            sumsweight += parseFloat(response.data.list[i].sweight)
+            sumproesstime = response.data.list[0].sumproesstime
+          }
+          sumlweight = formatNum(sumlweight, 2)
+          sumactualweightminus = formatNum(sumactualweightminus, 2)
+          sumsweight = formatNum(sumsweight, 2)
+          this.table3.list.push({ 'sort': '合计', 'lweight': sumlweight, 'actualweightminus': sumactualweightminus, 'sweight': sumsweight, 'proesstime': sumproesstime })
+        } else {
+          this.table3.list = []
+        }
+        setTimeout(() => {
+          this.table3.listLoading = false
+        }, 100)
+      })
+    },
+    // 撒料详情
+    getList4() {
+      this.table4.listLoading = false
+      GetDataByName(this.table4.getdataListParm).then(response => {
+        console.log('撒料详情table数据', response.data.list)
+        if (response.data.list !== null) {
+          this.table4.list = response.data.list
+          var sumlweight = 0
+          var sumactualweightminus = 0
+          var sumsweight = 0
+          var sumproesstime = ''
+          for (let i = 0; i < response.data.list.length; i++) {
+            if (response.data.list[i].lweight == undefined) { response.data.list[i].lweight = 0 }
+            if (response.data.list[i].actualweightminus == undefined) { response.data.list[i].actualweightminus = 0 }
+            if (response.data.list[i].sweight == undefined) { response.data.list[i].sweight = 0 }
+            sumlweight += parseFloat(response.data.list[i].lweight)
+            sumactualweightminus += parseFloat(response.data.list[i].actualweightminus)
+            sumsweight += parseFloat(response.data.list[i].sweight)
+            sumproesstime = response.data.list[0].sumproesstime
+          }
+          sumlweight = formatNum(sumlweight, 2)
+          sumactualweightminus = formatNum(sumactualweightminus, 2)
+          sumsweight = formatNum(sumsweight, 2)
+          this.table4.list.push({ 'sort': '合计', 'lweight': sumlweight, 'actualweightminus': sumactualweightminus, 'sweight': sumsweight, 'proesstime': sumproesstime })
+          this.rowspan()
+        } else {
+          this.table4.list = []
+        }
+        setTimeout(() => {
+          this.table4.listLoading = false
+        }, 100)
+      })
+    },
+    rowspan() {
+      this.spanArr = []
+      this.table4.list.forEach((item, index) => {
+        if (index == 0) {
+          this.spanArr.push(1)
+          this.position = 0
+        } else {
+          console.log(item, index, '======')
+          if (this.table4.list[index].aweight == this.table4.list[index - 1].aweight) {
+            this.spanArr[this.position] += 1
+            this.spanArr.push(0)
+          } else {
+            this.spanArr.push(1)
+            this.position = index
+          }
+        }
+      })
+    },
+
+    objectSpanMethod({ row, column, rowIndex, columnIndex }) {
+      if (columnIndex == 4) {
+        const _row = this.spanArr[rowIndex]
+        const _col = _row > 0 ? 1 : 0
+        return {
+          rowspan: _row,
+          colspan: _col
+        }
+      }
+    },
+    getChart1() {
+      this.chart1.listLoading = true
+      GetReportform(this.chart1.getdataListParm).then(response => {
+        if (response.data.list !== null) {
+          this.chart1.list = response.data.data
+          console.log('实时监控', response.data.list)
+          this.chart1.chartLine_data = response.data.list
+          this.chart1.total = response.data.total
+          this.roadChartLine1(this.chart1.chartLine_data)
+        } else {
+          this.chart1.list = []
+        }
+        setTimeout(() => {
+          this.chart1.listLoading = false
+        }, 100)
+      })
+    },
+    roadChartLine1(chartLine_data) {
+      console.log(chartLine_data.data5, 'chartLine_data')
+      if (this.chartLine != null) {
+        this.chartLine.dispose()
+      }
+      this.chartLine = echarts.init(document.getElementById('chartLine'))
+      var option = {
+        title: { text: '', subtext: '' },
+        color: ['#ff0000', '#5199e5', '#fdb06a', '#fb8b73'], // 关键加上这句话,legend的颜色和折线的自定义颜色就一致了
+        legend: [{
+          itemWidth: 15, itemHeight: 7, right: '25%', textStyle: { fontSize: 12 },
+          data: [{ name: '设计重量' }, { name: '实际重量'  }]
+        }, {
+          itemWidth: 5, itemHeight: 5, right: '0', textStyle: { fontSize: 12 },
+          data: [
+            { name: '开始重量' },
+            { name: '结束重量' }
+          ]
+        }],
+        tooltip: {
+          trigger: 'axis',
+          formatter: function(params) {
+            // console.log(params, 'params')
+            var tip = params[0].name
+            for (let i = 0; i < params.length; i++) {
+              if (params[i].seriesName == '设计重量') {
+                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1]
+              }
+              if (params[i].seriesName == '实际重量') {
+                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1]
+              }
+              if (params[i].seriesName == '开始重量') {
+                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1]
+              }
+              if (params[i].seriesName == '结束重量') {
+                tip += '<br>' + params[i].seriesName + ':' + params[i].value[1] + '<br>' + params[i].value[2] + params[i].value[3]
+              }
+            }
+            return tip
+          }
+        },
+        calculable: true,
+        xAxis: [
+          { type: 'category' }
+          // { type: 'category', splitLine: { show: false }, name: '时间', data: chartLine_data.data1, axisLabel: { show: true, textStyle: { color: '#666' }}}
+        ],
+        yAxis: [{ type: 'value' }],
+        toolbox: {
+          show: false,
+          feature: {
+            dataZoom: { realtime: false, yAxisIndex: 'none', },
+            restore: {},
+          }
+        },
+        dataZoom:  [
+          {type: 'inside'},        //用于添加滚轮缩放
+          {type:'slider' },  //用于添加滑动条缩放,
+        ],
+        series: [
+          { symbol: 'none', name: '实际重量', type: 'line', data: chartLine_data.data3, itemStyle: { normal: { lineStyle: { color: '#ff0000' ,width:2}}}},
+          { symbol: 'none', name: '设计重量', type: 'line', step: 'middle', data: chartLine_data.data2 , itemStyle: { normal: { lineStyle: {  width:2}}}},
+          { name: '开始重量', symbolSize: 6, type: 'scatter', data: chartLine_data.data4 },
+          { name: '结束重量', symbolSize: 6, type: 'scatter', data: chartLine_data.data5 }
+        ]
+      }
+      this.chartLine.setOption(option)
+      window.onresize = function() {
+        this.chartLine.resize()
+      }
+    },
+    rowStyle({ row, rowIndex }) {
+        console.log(row, rowIndex,'777777');
+        let stylejson = {};
+        if (row.abnormal == 1) {
+            stylejson.background = "#fb8072";// 背景颜色
+            stylejson.maxHeight = '30px';// 背景颜色
+            stylejson.height = '30px';// 背景颜色
+            // 也可以修改文字颜色
+            return stylejson;
+        } else {
+            return "";
+        }
+    },
+    changeccysChecked(){
+      // table.getdataListParm.parammaps.ccys
+      // console.log(this.table.getdataListParm.parammaps.ccys,'===')
+      if(this.ccys == true){
+        if(this.table3.getdataListParm.name !== 'getprocessAnalysisHL'){
+          this.hlwc1 = undefined
+          this.hlwc2 = undefined
+          this.hlzq1 = undefined
+          this.hlzq2 = undefined
+          this.slwc1 = undefined
+          this.slwc2 = undefined
+          this.slzq1 = undefined
+          this.slzq2 = undefined
+          this.table3.getdataListParm.parammaps.error = ''
+          this.table4.getdataListParm.parammaps.error = ''
+          this.table.getdataListParm.parammaps.error = ''
+        }
+        if(this.table3.getdataListParm.name == 'getprocessAnalysisHL'){
+        //   // hlwc1,hlwc2,hlzq1,hlzq2,slwc1,slwc2,slzq1,slzq2,ccys
+          this.table3.getdataListParm.parammaps.hlwc1  = this.hlwc1
+          this.table3.getdataListParm.parammaps.hlwc2  = this.hlwc2
+          this.table3.getdataListParm.parammaps.hlzq1  = this.hlzq1
+          this.table3.getdataListParm.parammaps.hlzq2  = this.hlzq2
+          this.table3.getdataListParm.parammaps.slwc1  = this.slwc1
+          this.table3.getdataListParm.parammaps.slwc2  = this.slwc2
+          this.table3.getdataListParm.parammaps.slzq1  = this.slzq1
+          this.table3.getdataListParm.parammaps.slzq2  = this.slzq2
+          this.table3.getdataListParm.parammaps.error = '有误差'
+        }
+        if(this.table4.getdataListParm.name == 'getprocessAnalysisSL'){
+          this.table4.getdataListParm.parammaps.hlwc1  = this.hlwc1
+          this.table4.getdataListParm.parammaps.hlwc2  = this.hlwc2
+          this.table4.getdataListParm.parammaps.hlzq1  = this.hlzq1
+          this.table4.getdataListParm.parammaps.hlzq2  = this.hlzq2
+          this.table4.getdataListParm.parammaps.slwc1  = this.slwc1
+          this.table4.getdataListParm.parammaps.slwc2  = this.slwc2
+          this.table4.getdataListParm.parammaps.slzq1  = this.slzq1
+          this.table4.getdataListParm.parammaps.slzq2  = this.slzq2
+          this.table4.getdataListParm.parammaps.error = '有误差'
+        }
+        if(this.table.getdataListParm.name == 'getprocessAnalysis'){
+          this.table.getdataListParm.parammaps.hlwc1  = this.hlwc1
+          this.table.getdataListParm.parammaps.hlwc2  = this.hlwc2
+          this.table.getdataListParm.parammaps.hlzq1  = this.hlzq1
+          this.table.getdataListParm.parammaps.hlzq2  = this.hlzq2
+          this.table.getdataListParm.parammaps.slwc1  = this.slwc1
+          this.table.getdataListParm.parammaps.slwc2  = this.slwc2
+          this.table.getdataListParm.parammaps.slzq1  = this.slzq1
+          this.table.getdataListParm.parammaps.slzq2  = this.slzq2
+          this.table.getdataListParm.parammaps.error = '有误差'
+        }
+        this.getList2()
+        this.getList3()
+        this.getList4()
+      }else{
+        this.table.getdataListParm.parammaps.error = ''
+        this.table3.getdataListParm.parammaps.error = ''
+        this.table4.getdataListParm.parammaps.error = ''
+        this.getList2()
+        this.getList3()
+        this.getList4()
+      }
+    }
+  }
+}
+
+</script>
+<style lang="scss" scoped>
+  .filter-item1{
+    margin-top: 10px;
+    span{margin-right: 5px;}
+  }
+  /deep/.el-table--scrollable-y .el-table__body-wrapper{
+    bottom: 15px;
+  }
+  .detail{
+    height:84px;padding:0 10px;font:16px/32px '';color:#333;background: #F9F9F9;display: flex; align-items: center;text-align: center;
+    div{
+      height: 15px;width: 20%;border-right: 1px solid #E0E0E0;color: #333;
+      b{line-height: 20px;font-size: 16px;display: block;margin-top: -10px;height: 20px;color: #009A69;}
+      span{font-size: 14px;}
+    }
+    div:last-child{border-right:none}
+  }
+  .title{height: 50px;line-height: 50px;}
+</style>

+ 95 - 9
src/views/statisticalAnalysis/pushingplan/index.vue

@@ -55,23 +55,36 @@
           prop="remark"
         />
         <el-table-column
-          label="开始时间"
+          label="计划开始时间"
+          min-width="100px"
+          align="center"
+          prop="plandate"
+        />
+        <el-table-column
+          label="实际开始时间"
           min-width="100px"
           align="center"
           prop="startdate"
         />
         <el-table-column
-          label="结束时间"
+          label="偏差分钟数"
+          min-width="100px"
+          align="center"
+          prop="deviation"
+        />
+        <el-table-column
+          label="实际结束时间"
           min-width="100px"
           align="center"
           prop="enddate"
         />
         <el-table-column
-          label="运行时间"
+          label="实际时长(分钟)"
           min-width="100px"
           align="center"
-          prop="date"
+          prop="dates"
         />
+
         <el-table-column
           label="运行轨迹"
           align="center"
@@ -140,7 +153,38 @@
         </div>
       </template>
       <!-- <div style="margin-bottom: 20px;background-image: url('http://niu305.cn:8091/uploads/image/headphoto1.png');background-position: top right;"> -->
-      <div ref="map" class="map-container"></div>
+        <div>
+          <h3>推料计划详情</h3>
+          <div class="run-box-rg">
+            <div>
+              <span>推料车:</span>{{runDate?.tname || '暂无'}}
+            </div>
+            <div>
+              <span>备注:</span>{{runDate?.remark || '暂无'}}
+            </div>
+            <div>
+              <span>计划开始时间:</span>{{runDate?.plandate || '暂无'}}
+            </div>
+            <div>
+              <span>实际开始时间:</span>{{runDate?.startdate || '暂无'}}
+            </div>
+            <div>
+              <span>偏差分钟数:</span>{{runDate?.deviation || '暂无'}}
+            </div>
+            <div>
+              <span>实际结束时间:</span>{{runDate?.enddate || '暂无'}}
+            </div>
+            <div>
+              <span>实际时长:</span>{{runDate?.dates || '暂无'}} 分钟
+            </div>
+
+            <div>
+              <span>推料栏舍顺序:</span>{{ runDate?.bname || '暂无' }}
+            </div>
+          </div>
+          <div ref="map" class="map-container"></div>
+        </div>
+
       <!-- </div> -->
       <div slot="footer" class="dialog-footer">
         <el-button
@@ -180,6 +224,7 @@ export default {
   name: 'Pushingplan',
   data() {
     return {
+      runDate:{},
       currentPage: 1,
       table: {
         offset: 1,
@@ -235,9 +280,19 @@ export default {
   created() {
     this.getButtons()
     this.getList()
+    var totalTimeInMinutes = this.timeStringToMinutes('12:20:27');
+     console.log(totalTimeInMinutes);
   },
 
   methods: {
+    // 点击查看的时候获取 推车的数据并去获取推料的原计划
+    timeStringToMinutes(timeString) {
+    var timeParts = timeString.split(':');
+    var hours = parseInt(timeParts[0]);
+    var minutes = parseInt(timeParts[1]);
+    var seconds = parseInt(timeParts[2]);
+    return (hours * 60 + minutes + seconds / 60).toFixed(2) ;
+},
     // 分页
     handleSizeChange(val) {
       console.log(`每页 ${val} 条`)
@@ -280,9 +335,14 @@ export default {
         data.parammaps.enddate = ''
       }
       postJson(url, data).then((response) => {
-        console.log('table数据', response.data.list)
         if (response.data.list !== null) {
-          this.list = response.data.list
+          let arr = JSON.parse(JSON.stringify(response.data.list))
+          arr.forEach((item)=>{
+             item.dates = this.timeStringToMinutes(item.date) || item.date;
+             item.deviation = this.timeStringToMinutes(item.deviation) || item.deviation;
+          })
+          this.list = arr
+
         } else {
           this.list = []
         }
@@ -303,7 +363,9 @@ export default {
       this.getList()
     },
     handleRunning_trajectory(row) {
-      console.log('点击了运行轨迹')
+      this.runDate = row;
+      console.log('点击了运行轨迹',this.runDate );
+
       this.run.dialogStatus = 'run'
       this.run.dialogFormVisible = true
       this.run.temp = Object.assign({}, row)
@@ -428,9 +490,33 @@ export default {
 }
 </script>
 <style lang="scss" scoped>
+.run-box{
+  height: 600px;
+}
+.run-box-rg{
+  display: flex;
+  justify-content:left;
+  flex-direction: row;
+  flex-wrap: wrap;
+  padding:  0px 20px;
+  font-size:16px;
+  border-bottom:1px dotted #eee;
+}
+.run-box-rg div{
+  margin-bottom:10px;
+  margin-right:15px;
+}
+.run-box-rg div>span{
+    font-size: 16px!important;
+    font-weight: 600;
+
+  }
+
 .map-container {
   height: 600px;
-  width: 1000px;
+  // width: 840px;
+  // border-right:1px dotted #eee;
+  padding:0 10px;
 }
 .search {
   clear: both;

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio