浏览代码

推料计划接口对接

duanxiaoduan 1 年之前
父节点
当前提交
707277f1e0
共有 3 个文件被更改,包括 162 次插入37 次删除
  1. 2 2
      .env.development
  2. 1 1
      src/utils/request.js
  3. 159 34
      src/views/formulationPlan/pushMaterialPlan/index.vue

+ 2 - 2
.env.development

@@ -4,9 +4,9 @@ ENV = 'development'
 # base api
 # 测试线
 # VUE_APP_BASE_API = 'http://192.168.1.70:8082/'
-VUE_APP_BASE_API = 'http://kpttest.kptyun.com/'
+# VUE_APP_BASE_API = 'http://kpttest.kptyun.com/'
 # 白少后台本地
-# VUE_APP_BASE_API = 'http://192.168.1.77:8081/'
+VUE_APP_BASE_API = 'http://192.168.1.77:8081/'
 # VUE_APP_BASE_API = 'http://192.168.1.93/'
 # vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable,
 # to control whether the babel-plugin-dynamic-import-node plugin is enabled.

+ 1 - 1
src/utils/request.js

@@ -33,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/x-www-form-urlencoded;charset=UTF-8'
+      config.headers['Content-Type'] = 'application/json'
       config.withCredentials = false
     }
 

+ 159 - 34
src/views/formulationPlan/pushMaterialPlan/index.vue

@@ -1,5 +1,14 @@
  <template>
   <div class="app-container">
+    <div class="search">
+      <!-- <el-input v-model="table.getdataListParm.parammaps.drivername" placeholder="驾驶员名称" style="width: 180px;" class="filter-item" clearable />
+      <el-input v-model="table.getdataListParm.parammaps.drivercode" placeholder="驾驶员编号" style="width: 180px;" class="filter-item" clearable />
+      <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="handleRefresh">重置</el-button> -->
+      <el-button class="successBorder" @click="form_search">查询</el-button>
+    </div>
     <div class="operation">
       <el-button v-if="isRoleEdit" class="success" icon="el-icon-plus" style="float: left;" @click="handleCreate">新增</el-button>
     </div>
@@ -22,20 +31,20 @@
       >
         <el-table-column type="selection" width="50" />
         <el-table-column :key="1" label="序号" align="center" type="index" width="50px" class-name="small-padding fixed-width" fixed="left" />
-        <el-table-column label="推料车" min-width="100px" align="center" class-name="small-padding fixed-width" fixed="left" prop="name" />
-        <el-table-column label="时间" min-width="100px" align="center" prop="name" />
-        <el-table-column label="备注" min-width="100px" align="center" prop="name" />
-        <el-table-column label="栏舍" min-width="100px" align="center" prop="name" />
+        <el-table-column label="推料车" min-width="100px" align="center" class-name="small-padding fixed-width" fixed="left" prop="tname" />
+        <el-table-column label="时间" min-width="100px" align="center" prop="date" />
+        <el-table-column label="备注" min-width="100px" align="center" prop="remark" />
+        <el-table-column label="栏舍" min-width="100px" align="center" prop="bname" />
         <el-table-column label="状态" min-width="90px" 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"  />
+            <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="isRoleEdit" class="miniSuccess" icon="el-icon-edit-outline" @click="handleUpdate(row)" />
-            <!-- <el-button v-if="isRoleEdit" class="miniDanger" icon="el-icon-delete" @click="handleRowDelete(row)" /> -->
+            <el-button v-if="isRoleEdit" class="miniDanger" icon="el-icon-delete" @click="handleRowDelete(row)" />
           </template>
         </el-table-column>
       </el-table>
@@ -58,50 +67,47 @@
         <el-form ref="temp" :rules="create.rules" :model="create.temp" label-position="right" label-width="155px" style="width: 100%;margin:0 auto 50px">
           <el-row>
             <el-col :span="12">
-              <el-form-item label="推料车:" prop="fclassid">
-                <el-select v-model="create.temp.fclassid" filterable placeholder="推料车" class="filter-item" style="width: 100%;" @change="changeFeedList">
-                  <el-option v-for="item in feedTypeList" :key="item.id" :label="item.mixname" :value="item.id" />
+              <el-form-item label="推料车:" prop="tmrId">
+                <el-select v-model="create.temp.tmrId" filterable placeholder="推料车" class="filter-item" style="width: 100%;">
+                  <el-option v-for="item in tmrList" :key="item.id" :label="item.tname" :value="item.id" />
                 </el-select>
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="12">
-              <el-form-item label="时间:" prop="fclassid">
-                <!-- <el-time-picker v-model="create.temp.value1" :picker-options="{ selectableRange: '23:59:59 - 00:00:00' }" style="width: 100%;" /> -->
-                <el-time-picker v-model="create.temp.value1" style="width: 100%;" />
+              <el-form-item label="时间:" prop="date">
+                <el-time-picker v-model="create.temp.date" style="width: 100%;" value-format="HH:mm:ss" />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="12">
-              <el-form-item label="备注" prop="fclassid">
-                <el-input ref="backup3" v-model="create.temp.backup3" class="filter-item" placeholder="备注" type="text" style="width: 100%;" />
+              <el-form-item label="备注" prop="remark">
+                <el-input ref="remark" v-model="create.temp.remark" class="filter-item" placeholder="备注" type="text" style="width: 100%;" />
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="12">
-              <el-form-item label="栏舍:" prop="fclassid">
-                <el-select v-model="create.temp.fclassid" filterable placeholder="推料车" class="filter-item" style="width: 100%;">
-                  <el-option v-for="item in feedTypeList" :key="item.id" :label="item.mixname" :value="item.id" />
+              <el-form-item label="栏舍:" prop="barId">
+                <el-select v-model="create.temp.barId" multiple  filterable placeholder="栏舍" class="filter-item" style="width: 100%;">
+                  <el-option v-for="item in barList" :key="item.id" :label="item.bname" :value="item.id" />
                 </el-select>
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="12">
-              <el-form-item label="状态:" prop="fclassid">
-                <el-select v-model="create.temp.fclassid" filterable placeholder="推料车" class="filter-item" style="width: 100%;">
-                  <el-option v-for="item in feedTypeList" :key="item.id" :label="item.mixname" :value="item.id" />
-                </el-select>
+              <el-form-item label="状态:" prop="enable">
+                <el-switch v-model="create.temp.enable" active-color="#13ce66" inactive-color="#ff4949" :active-value="1" :inactive-value="0"  />
               </el-form-item>
             </el-col>
           </el-row>
         </el-form>
         <div slot="footer" class="dialog-footer">
           <el-button class="cancelClose" @click="create.dialogFormVisible = false;getList()">关闭</el-button>
-          <el-button class="save"  @click="createData">确认</el-button>
+          <el-button class="save" @click="create.dialogStatus = 'create' ? createData():updateData()" :disabled="isokDisable" >确认</el-button>
         </div>
       </div>
     </el-dialog>
@@ -110,7 +116,7 @@
 </template>
 
 <script>
-import { GetDataByName, postJson, formatNum, checkButtons } from '@/api/common'
+import { GetDataByName, postJson,getJson, formatNum, checkButtons } from '@/api/common'
 import { parseTime} from '@/utils/index.js'
 import { MessageBox } from 'element-ui'
 import Cookies from 'js-cookie'
@@ -126,7 +132,6 @@ export default {
           name: 'getPushingList',
           page: 1,
           offset: 1,
-
           pagecount: '',
           returntype: 'Map',
           parammaps: {
@@ -142,12 +147,18 @@ export default {
       create: {
         dialogFormVisible: false,
         dialogStatus: '',
-        temp: { pastureid: Cookies.get('pastureid'), fname: ''},
+        temp: { pastureId: Cookies.get('pastureid'), tmrId: '',date: '',remark: '',barId: '',enable: ''},
         rules: {
-          // fname: [{ type: 'string', required: true, message: '必填', trigger: 'blur' }],
+          tmrId: [{ required: true, message: '必填', trigger: 'blur' }],
+          date: [{ required: true, message: '必填', trigger: 'blur' }],
+          remark: [{ required: true, message: '必填', trigger: 'blur' }],
+          barId: [{ required: true, message: '必填', trigger: 'blur' }],
+          enable: [{ required: true, message: '必填', trigger: 'blur' }]
         }
       },
       dialogFull: false,
+      tmrList:[],
+      barList:[],
       isRoleEdit: [],
       selectList: [],
       isokDisable: false,
@@ -158,6 +169,7 @@ export default {
   },
   created() {
     this.getButtons()
+    this.getTMR_barList()
     this.getList()
 
   },
@@ -168,18 +180,48 @@ export default {
       const isRoleEdit = checkButtons(JSON.parse(sessionStorage.getItem('buttons')), Edit)
       this.isRoleEdit = isRoleEdit
     },
+    getTMR_barList() {
+      let url = '/authdata/GetDataByName'
+      let data = {
+        name: 'getTMRList', page: 1, offset: 1,
+        parammaps: {
+          pastureid: Cookies.get('pastureid'),eqtype:'1'
+        }
+      }
+      postJson(url,data).then(response => {
+        if (response.data.list !== null) {
+          this.tmrList = response.data.list
+        } else {
+          this.tmrList = []
+        }
+      })
+      let url2 = '/authdata/GetDataByName'
+      let data2 = {
+        name: 'getBarList', page: 1, offset: 1,
+        parammaps: {
+          pastureid: Cookies.get('pastureid')
+        }
+      }
+      postJson(url2,data2).then(response => {
+        if (response.data.list !== null) {
+          this.barList = response.data.list
+        } else {
+          this.barList = []
+        }
+      })
+    },
     getList() {
       this.table.listLoading = true
-      GetDataByName(this.table.getdataListParm).then(response => {
+      let url = '/authdata/tmrequipment'
+      let data = '?pastureId='+ Cookies.get('pastureid') +'&offset=1' + '&page=50'
+      getJson(url,data).then(response => {
         console.log('table数据', response.data.list)
         if (response.data.list !== null) {
-          this.table.list = response.data.list
-          this.table.pageNum = response.data.pageNum
-          this.table.pageSize = response.data.pageSize
+          this.table.list = response.data.data
         } else {
           this.table.list = []
         }
-        this.table.total = response.data.total
+        this.table.total = response.data.count
         setTimeout(() => {
           this.table.listLoading = false
         }, 100)
@@ -193,23 +235,106 @@ export default {
       this.create.dialogFormVisible = true
     },
     resetTemp() {
+      this.create.temp.tmrId = ''
+      this.create.temp.pastureId = Cookies.get('pastureid')
+      this.create.temp.date = ''
+      this.create.temp.remark = ''
+      this.create.temp.barId = ''
+      this.create.temp.enable = 1
+    },
+    createData(){
+      this.isokDisable = true
+      setTimeout(() => {
+        this.isokDisable = false
+      }, 1000)
+      this.$refs['temp'].validate(valid => {
+        if (valid) {
+          let url = '/authdata/tmrequipment/edit'
+          let data = this.create.temp
+          data.barId = this.create.temp.barId.join()
+          // data.date = parseTime(this.create.temp.date,'{h}:{i}:{s}')
+          postJson(url,data).then(response => {
+            if(response.msg == 'fail'){
+              this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
+            }else{
+              this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
+              this.create.dialogFormVisible = false
+              this.getList()
+            }
+          })
+        }
+      })
     },
-    createData(){},
     // 编辑
     handleUpdate(row) {
       this.create.temp = Object.assign({},row)
+      this.create.temp.barId = row.barId.split(',')
       this.dialogFull = false
       this.create.dialogStatus = 'create'
       this.create.dialogFormVisible = true
     },
     updateData(row) {
-
+      this.isokDisable = true
+      setTimeout(() => {
+        this.isokDisable = false
+      }, 1000)
+      this.$refs['temp'].validate(valid => {
+        if (valid) {
+          let url = '/authdata/tmrequipment/edit'
+          let data = this.create.temp
+          data.barId = this.create.temp.barId.join()
+          // data.date = parseTime(this.create.temp.date,'{h}:{i}:{s}')
+          postJson(url,data).then(response => {
+            if(response.msg == 'fail'){
+              this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
+            }else{
+              this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
+              this.create.dialogFormVisible = false
+              this.getList()
+            }
+          })
+        }
+      })
+    },
+    handleRowDelete(row){
+      let url = '/authdata/tmrequipment/del'
+      let data = {}
+      data.id = row.id
+      postJson(url,data).then(response => {
+        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()
+        }
+      })
     },
-
     handleSelect(val) {
       console.log('勾选数据', val)
       this.selectList = val
     },
+    handleEnableChange(index,row) {
+      console.log('点击了是否启用')
+      let url = '/authdata/tmrequipment/edit'
+      let data = row
+      // data.barId = row.barId.join()
+      // data.date = parseTime(this.create.temp.date,'{h}:{i}:{s}')
+      postJson(url,data).then(response => {
+        if(response.msg == 'fail'){
+          this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
+        }else{
+          this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
+          this.create.dialogFormVisible = false
+          this.getList()
+        }
+      })
+    },
+
+    form_search() {
+      console.log('点击了查询')
+      this.table.getdataListParm.offset = 1
+      this.getList()
+    },
   }
 }
 </script>