#
whycq
2024-02-28 233fdc1cc07df94e54036fa421addf1e17cdff83
pages/project/jmAGV/home.vue
@@ -1,35 +1,38 @@
<template>
   <view class="container">
      <view class="btn-box">
         <button>呼叫空盘头</button>
      <!-- 左 -->
      <view class="zcard">
         <view class="zcard-flex">
            <view class="button-nk" v-for="item in groundSiteList" @click="click(item,'left')">{{item.name}}</view>
         </view>
      </view>
      <view class="btn-box">
         <button>呼叫空盘头</button>
      <!-- 右 -->
      <view class="zcard">
         <view class="zcard-flex">
            <view class="button-nk" style="background-color: brown;" v-for="item in traySiteList" @click="click(item,'right')">{{item.name}}</view>
         </view>
      </view>
      
      <view class="btn-box">
         <button>呼叫空盘头</button>
      <view>
         <uni-popup ref="revise" type="dialog">
            <view class="popup">
               <view>{{text}}</view>
               <view class="button-nk" @click="upTray()">{{btnTitle1}}</view>
               <view class="button-nk" @click="downTray">{{btnTitle2}}</view>
               <view v-show="outType" class="button-nk" @click="downTray1">{{btnTitle3}}</view>
            </view>
         </uni-popup>
      </view>
      
      <view class="btn-box">
         <button>呼叫空盘头</button>
      </view>
      <view class="btn-box">
         <button>呼叫空盘头</button>
      </view>
      <view class="btn-box">
         <button>呼叫空盘头</button>
      </view>
      <view class="btn-box">
         <button>呼叫空盘头</button>
      </view>
      <view class="btn-box">
         <button>呼叫空盘头</button>
      </view>
      <!-- <view>
         <uni-popup ref="revise2" type="dialog">
            <view class="popup2">
               <view>123</view>
               <view class="button-nk" @click="inHouse">托盘-仓库(入库)</view>
               <view class="button-nk" @click="outHouse">仓库-托盘(出库)</view>
            </view>
         </uni-popup>
      </view> -->
   </view>
</template>
@@ -37,10 +40,162 @@
   export default {
      data() {
         return {
            baseUrl: '',
            token: '',
            groundSiteList: [
               {name: '1号地面站',code:'1-C1',traget: '1-A1',type: 'foolr'},
               {name: '2号地面站',code:'2-C1',traget: '2-A1',type: 'foolr'},
               {name: '3号地面站',code:'3-C1',traget: '3-A1',type: 'foolr'},
               {name: '4号地面站',code:'4-C1',traget: '4-A1',type: 'foolr'},
               {name: '5号地面站',code:'5-C1',traget: '5-A1',type: 'foolr'},
               {name: '6号地面站',code:'6-C1',traget: '6-A1',type: 'foolr'},
               {name: '7号地面站',code:'7-C1',traget: '7-A1',type: 'foolr'},
               {name: '8号地面站',code:'8-C1',traget: '8-A1',type: 'foolr'},
               {name: '9号地面站',code:'9-C1',traget: '9-A1',type: 'foolr'},
               {name: '10号地面站',code:'10-C1',traget: '10-A1',type: 'foolr'}
            ],
            traySiteList: [
               {name: '1号托盘站',code:'KW-1',type: 'tray'},
               {name: '2号托盘站',code:'KW-2',type: 'tray'},
               {name: '3号托盘站',code:'KW-3',type: 'tray'},
               {name: '4号托盘站',code:'KW-4',type: 'tray'},
               {name: '5号托盘站',code:'KW-5',type: 'tray'},
               {name: '6号托盘站',code:'KW-6',type: 'tray'},
               {name: '7号托盘站',code:'KW-7',type: 'tray'},
               {name: '8号托盘站',code:'KW-8',type: 'tray'},
               {name: '9号托盘站',code:'KW-9',type: 'tray'},
               {name: '10号托盘站',code:'KW-10',type: 'tray'}
            ],
            item: '',
            text: '',
            btnTitle1: '',
            btnTitle2: '',
            btnTitle3: '',
            outType: '',
            stationType: 'load'
         }
      },
      onShow() {
         let network = uni.getStorageSync('Network')
         this.baseUrl = `http://${network[0].ip}:${network[0].port}/${network[0].address}`
         this.token = uni.getStorageSync('token');
      },
      methods: {
         click(item,type) {
            this.item = item
            this.text = item.name
            if (type == 'left') {
               this.outType = false
               this.btnTitle1 = '地面站放置托盘(上架)'
               this.btnTitle2 = '托盘站取置地面(下架)'
            } else {
               this.outType = true
               this.btnTitle1 = '托盘-仓库(入库)'
               this.btnTitle2 = '仓库-空托盘(出库)'
               this.btnTitle3 = '仓库-满托盘(出库)'
            }
            this.$refs.revise.open(type)
         },
         upTray() {
            let _this = this
            let type = '',originLocal = '',targetLocal = '';
            if (this.item.type == 'foolr') {
               type = 'load', // 上架
               originLocal = this.item.code,
               targetLocal = this.item.traget
            } else {
               type = 'in' // 入库
               originLocal = this.item.code,
               targetLocal = 'KW-J'
            }
            // this.text = originLocal + targetLocal
            uni.request({
               url: `${_this.baseUrl}/agv/requestTask`,
               data: {
                  originLocal: originLocal,
                  targetLocal: targetLocal,
                  type: type
               },
               header: { 'token': uni.getStorageSync('token') },
               method: 'POST',
               success(res) {
                  res = res.data
                  if (res.code === 200) {
                     this.$refs.revise.close()
                     uni.showToast({ title: '操作成功', icon: "none", position: 'top' })
                  } else {
                     uni.showToast({ title: res.msg, icon: "none", position: 'top' })
                  }
               }
            })
         },
         downTray() {
            let _this = this
            let type = '',originLocal = '',targetLocal = '';
            if (this.item.type == 'foolr') {
               type = 'unload', // 下架
               originLocal = this.item.traget,
               targetLocal = this.item.code
            } else {
               type = 'out1' // 出库
               originLocal = 'KW-C'
               targetLocal = this.item.code
            }
            // this.text = originLocal + targetLocal
            uni.request({
               url: `${_this.baseUrl}/agv/requestTask`,
               data: {
                  originLocal: originLocal,
                  targetLocal: targetLocal,
                  type: type
               },
               header: { 'token': uni.getStorageSync('token') },
               method: 'POST',
               success(res) {
                  res = res.data
                  if (res.code === 200) {
                     this.$refs.revise.close()
                     uni.showToast({ title: '操作成功', icon: "none", position: 'top' })
                  } else {
                     uni.showToast({ title: res.msg, icon: "none", position: 'top' })
                  }
               }
            })
         },
         downTray1() {
            let _this = this
            let type = '',originLocal = '',targetLocal = '';
            if (this.item.type == 'foolr') {
               type = 'unload', // 下架
               originLocal = this.item.traget,
               targetLocal = this.item.code
            } else {
               type = 'out2' // 出库
               originLocal = 'KW-C'
               targetLocal = this.item.code
            }
            // this.text = originLocal + targetLocal
            uni.request({
               url: `${_this.baseUrl}/agv/requestTask`,
               data: {
                  originLocal: originLocal,
                  targetLocal: targetLocal,
                  type: type
               },
               header: { 'token': uni.getStorageSync('token') },
               method: 'POST',
               success(res) {
                  res = res.data
                  if (res.code === 200) {
                     this.$refs.revise.close()
                     uni.showToast({ title: '操作成功', icon: "none", position: 'top' })
                  } else {
                     uni.showToast({ title: res.msg, icon: "none", position: 'top' })
                  }
               }
            })
         }
         
      }
   }
@@ -48,14 +203,69 @@
<style>
   .container {
      height: 90vh;
      background-color: aqua;
      height: 100%;
      /* background-color: aqua; */
      display: grid;
      grid-template-columns: 50% 50%;
   }
   .btn-box {
      margin: 5%;
      /* margin: 1%; */
      background-color: azure;
   }
   .zcard {
      margin: 10px 100px;
      /* background-color: blanchedalmond; */
   }
   .zcard-flex {
      /* background-color: coral; */
      width: 100%;
      height: 100%;
      display: flex;
      flex-wrap: wrap;
      /* flex-direction: column; */
      justify-content: space-around;
      align-items: center;
   }
   .button-nk {
      margin: 10rpx;
      padding: 20rpx 70rpx;
      /* background-color: azure; */
      min-width: 200rpx;
      /* margin: 0 auto; */
      height: 50px;
      text-align: center;
      line-height: 50px;
      font-size: 20px;
      background-color: #409EFF;
      color: #ECF0F1;
      border-radius: 7px;
      box-shadow: inset 4px 4px 4px rgba(0, 0, 0, .3),
         inset -4px -4px 4px rgba(255, 255, 255, .4),
         -4px -4px 5px rgba(0, 0, 0, .4);
   }
   .button-nk:active {
      transform: translateY(2px) scale(0.99, 0.99);
      box-shadow: inset 4px 4px 4px rgba(0, 0, 0, .3),
         inset -4px -4px 8px rgba(255, 255, 255, .7),
         -5px -5px 5px rgba(0, 0, 0, .3);
   }
   .popup {
      background-color: #eee;
      width: 30vw;
      height: 100%;
      padding: 0 10vw;
      display: flex;
      flex-direction: column;
      justify-content: space-around;
   }
   .popup2 {
      background-color: #eee;
      width: 30vw;
      height: 100%;
      padding: 0 10vw;
      display: flex;
      flex-direction: column;
      justify-content: space-around;
   }
</style>