wk
2024-11-04 6c20f43ff1cb24758b11fbe29488804e418c4e42
pages/tabbar-page/index-tabbar/index-tabbar.vue
@@ -7,7 +7,7 @@
               <u-badge :isDot="true"
                  type="error"
                  v-if="dotShow"></u-badge>
               <u-icon name="chat"
               <u-icon name="chat"
                  color="#fff"
                  size="50"></u-icon>
            </view>
@@ -24,7 +24,7 @@
         ref="driverIndexRef"
         :indexdriverBillOfLoadingData="indexdriverBillOfLoadingData"></driver-index>
      <load-unload ref="LoadUnloadRef"
         v-if="roleType == 5"></load-unload>
         v-if="roleType == 5" :indexLoadUnloadBillOfLoadingData="detailData"></load-unload>
      <doorkeep-index ref="doorkeepIndexRef"
         v-if="roleType == 6"></doorkeep-index>
      <!--       <selectTarget v-if="roleType == 5"
@@ -47,28 +47,23 @@
   import driverIndex from '@/pages/driver-page/driver-index/driver-index.vue';
   import freightForwarderIndex from '@/pages/freight-forwarder-page/freightForwarder-index/freightForwarder-index.vue';
   import LoadUnload from '@/pages/loadUnload-page/loadUnload-page.vue'
   import selectTarget from '@/pages/loadUnload-page/selectTarget/selectTarget.vue'
  import qualityIndex from '@/pages/quality-inspection-page/qualityIndex/qualityIndex'
     import qualityIndex from '@/pages/quality-inspection-page/qualityIndex/qualityIndex'
   import doorkeepIndex from '@/pages/doorkeeper-page/doorkeeper-index/doorkeeper-index.vue';
   import { mapState, mapMutations } from 'vuex';
   import { webSocketUrl } from '@/api/request.js';
   let socket = null;
   import { mapState, mapMutations, mapGetters } from 'vuex';
   export default {
      components: {
         customerIndex,
         driverIndex,
         freightForwarderIndex,
         LoadUnload,
         selectTarget,
      qualityIndex,  //化验
         doorkeepIndex,
         selectTarget
            qualityIndex,  //化验
         doorkeepIndex,
      },
      computed: {
         ...mapState(['globalweighHouseCode', 'globalweigh', 'globalisconnect', 'globalSocket', 'websocketData',
            'globalIntervalId'
         ])
         ]),
      ...mapGetters(['websocketData'])
      },
      //首页下拉刷新
      onPullDownRefresh() {
@@ -77,7 +72,7 @@
         }else{
            this.$refs.doorkeepIndexRef.TaskCoalList()
         }
         // 获取历史提煤单
         // 获取历史收发单
         if (this.roleType == 1 || this.roleType == 2) {
            this.$reqGet('getJhOrderPlanDataPage', { current: 1, size: 10 }).then(res => {
               if (res.data.records) {
@@ -125,8 +120,24 @@
                  uni.stopPullDownRefresh();
               }
            });
         }else if(this.roleType == 5){
            //装卸员
            this.getDetailData();
         }
      },
      // getWarehouseListFun() {
      //       this.$reqGet('getWarehouseList').then(res => {
      //          uni.hideLoading()
      //          if (res.code === 0) {
      //             if(res.data.length){
      //                this.getDetailData();
      //             }
      //          } else {
      //             this.$u.toast('加载失败')
      //          }
      //       })
      //    },
      onHide() {
         console.log('页面隐藏')
      },
@@ -174,6 +185,7 @@
            indexHuoDaiOrderPlanData: [],
            indexHistoryCoalData: [],
            count:0,
            detailData:[],
            indexdriverBillOfLoadingData: {},
            messagePushShow: false,
            messageList: {
@@ -186,29 +198,37 @@
         };
      },
      watch: {
         '$store.state.websocketData'(v) {
            console.log(v, '接受的ws数据');
            if (v.startsWith('weigh')) {  //重量(称重的条件)
               let nowWeighObj = JSON.parse(v.slice(7));
               if (this.globalweighHouseCode && nowWeighObj.eqCode == this.globalweighHouseCode) {
                  this.changeWeigh(nowWeighObj.weigh);
                  this.changeinfraredStatus(!!nowWeighObj.eqInfraredStatus);
                  let warningState = nowWeighObj.warning == 1
                  this.changeWarning(warningState)
               }
            } else if (v.startsWith('msg')) {  //消息
               function removeTags(str) {
                  return str.replace(/<\/?[^>]+>/gi, '');
               }
               this.messageList = JSON.parse(v.slice(5));
               this.messageList = {
                  ...this.messageList,
                  title: this.messageList.title.slice(0, 8) + '...',
                  content: removeTags(this.messageList.content).trim().slice(0, 8) + '...'
               }
               this.messagePushShow = !this.messageList.appUserId || uni.getStorageSync('userId') === this.messageList
                  .appUserId;
            } else if (v.startsWith('wsg')) {  //提醒磅房有车
         'websocketData': {
        handler(v) {
          console.log(v, '接受的ws数据');
          if(v) {
            if (v.startsWith('weigh')) {
              let nowWeighObj = JSON.parse(v.slice(7));
              if (this.globalweighHouseCode && nowWeighObj.eqCode == this.globalweighHouseCode) {
                if (nowWeighObj.eqInfraredStatus) {
                  this.changeinfraredStatus(true);
                  this.changeWeigh(nowWeighObj.weigh);
                  let warningState = nowWeighObj.warning == 1
                  this.changeWarning(warningState)
                } else {
                  this.changeinfraredStatus(false);
                  this.changeWeigh(nowWeighObj.weigh);
                  let warningState = nowWeighObj.warning == 1
                  this.changeWarning(warningState)
                }
              }
            } else if (v.startsWith('msg')) {
              function removeTags(str) {
                return str.replace(/<\/?[^>]+>/gi, '');
              }
              this.messageList = JSON.parse(v.slice(5));
              this.messageList = {
                ...this.messageList,
                title: this.messageList.title.slice(0, 8) + '...',
                content: removeTags(this.messageList.content).trim().slice(0, 8) + '...'
              }
              this.messagePushShow = true;
            } else if (v.startsWith('wsg')) {  //提醒磅房有车
               let wsgObj = JSON.parse(v.slice(5));
               if (uni.getStorageSync('carNo') === wsgObj.carNo && !wsgObj.peopleWeigh) {
                  this.changewsgVisiable(true)  //磅房忙碌的弹框的现隐藏
@@ -219,6 +239,10 @@
                  this.changeconfirmWeighContent(wsgObj.content)
               }
            }
          }
        },
        deep: true,
        immediate: true
         }
      },
      methods: {
@@ -257,9 +281,8 @@
                  console.log('LoadUnloadRef');
                  this.$nextTick(() => {
                     console.log(this.count,'count')
                     if(this.count <=1){
                        this.$refs.LoadUnloadRef.init();
                     }
                  });
                  break;
          case 7:
@@ -331,7 +354,24 @@
                  this.dotShow = filtermessage.length > 0;
               }
            });
         }
         },
       getDetailData(){
               this.$reqGet('getTaskCoalListByBunkerId', { bunkerIds:uni.getStorageSync('bunkerIds'),productIds:uni.getStorageSync('productIds')}).then(res => {
               if (res.code === 0) {
                  this.detailData = res.data.map(item=>{
                     item.tmTaskCoalList.map(el=>{
                      el.flag = el.isPretendDischar ? false : true
                     return el
                     })
                   return item;
                  });
                     this.$u.toast('加载成功');
                     uni.stopPullDownRefresh();
                       uni.hideLoading();
               }
            })
         },
      }
   };
</script>
@@ -350,10 +390,10 @@
   .search-bar {
      height: vww(20);
      width: 96%;
      width: calc(100% - 200rpx);
      position: absolute;
      top: vww(96);
      right: vww(32);
      right: 100rpx;
      z-index: 1;
      .icon-body {