yangan
2024-06-25 e86112404de118a8db3cb4b6e1543511eceecc83
pages/tabbar-page/index-tabbar/index-tabbar.vue
@@ -41,7 +41,7 @@
   import driverIndex from '@/pages/driver-page/driver-index/driver-index.vue';
   import inspectionIndex from '@/pages/driver-page/driver-index/bill-of-lading-details/selectOrderPlan/selectOrderPlan.vue'
   import freightForwarderIndex from '@/pages/freight-forwarder-page/freightForwarder-index/freightForwarder-index.vue';
   import { mapState, mapMutations } from 'vuex';
   import { mapState, mapMutations, mapGetters } from 'vuex';
   import { webSocketUrl } from '@/api/request.js';
   let socket = null;
   export default {
@@ -54,7 +54,8 @@
      computed: {
         ...mapState(['globalweighHouseCode', 'globalweigh', 'globalisconnect', 'globalSocket', 'websocketData',
            'globalIntervalId'
         ])
         ]),
      ...mapGetters(['websocketData'])
      },
      //首页下拉刷新
      onPullDownRefresh() {
@@ -145,35 +146,41 @@
         };
      },
      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) {
                  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 {}
         '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 {}
          }
        },
        deep: true,
        immediate: true
         }
      },
      onShow() {
@@ -293,6 +300,8 @@
   scoped>
   .max-block {
      font-family: siYuanLight !important;
      width: 100%;
      height: 100%;
   }
   .white-block {
@@ -332,4 +341,4 @@
         }
      }
   }
</style>
</style>