qingyiay
2023-03-28 5c01be6370291febe52adfa74fad8101a197c388
pages/tabbar-page/index-tabbar/index-tabbar.vue
@@ -1,8 +1,13 @@
<template>
   <view>
      <customer-index v-if="roleType == 1" ref="customerIndexRef"></customer-index>
      <freight-forwarder-index v-if="roleType == 2" ref="freightForwarderIndexRef"></freight-forwarder-index>
      <driver-index v-if="roleType == 3" ref="driverIndexRef"></driver-index>
      <customer-index v-if="roleType == 1" ref="customerIndexRef" :orderPlanDataStore="orderPlanDataStore"></customer-index>
      <freight-forwarder-index
         v-if="roleType == 2"
         ref="freightForwarderIndexRef"
         :indexHistoryCoalData="indexHistoryCoalData"
         :indexHuoDaiOrderPlanData="indexHuoDaiOrderPlanData"
      ></freight-forwarder-index>
      <driver-index v-if="roleType == 3" ref="driverIndexRef" :indexdriverBillOfLoadingData="indexdriverBillOfLoadingData"></driver-index>
      <tab-bar :current="0"></tab-bar>
   </view>
</template>
@@ -11,25 +16,80 @@
import customerIndex from '@/pages/customer-page/customer-index/customer-index.vue';
import driverIndex from '@/pages/driver-page/driver-index/driver-index.vue';
import freightForwarderIndex from '@/pages/freight-forwarder-page/freightForwarder-index/freightForwarder-index.vue';
import { mapState } from 'vuex';
export default {
   components: {
      customerIndex,
      driverIndex,
      freightForwarderIndex
   },
   //首页下拉刷新
   onPullDownRefresh() {
      uni.showLoading({
         title: '加载中...'
      });
      // 客户获取日计划
      if (this.roleType == 1) {
         this.$reqGet('GetOrderPlan').then(res => {
            if (res.data) {
               this.orderPlanDataStore = res.data;
               uni.hideLoading();
               uni.stopPullDownRefresh();
            }
         });
      } else if (this.roleType == 2) {
         this.$reqGet('huoDaiList').then(res => {
            this.indexHuoDaiOrderPlanData = res.data;
         });
         // 获取历史提煤单
         this.$reqGet('getJhOrderPlanDataPage', { current: 1, size: 10 }).then(res => {
            if (res.data.records) {
               this.indexHistoryCoalData = [...this.historyCoalData, ...res.data.records];
               uni.hideLoading();
               uni.stopPullDownRefresh();
            }
         });
      } else {
         this.$reqGet('qiangDanList').then(res => {
            this.indexdriverBillOfLoadingData = res.data;
            uni.hideLoading();
            uni.stopPullDownRefresh();
         });
      }
   },
   onLoad() {
      // 开启双人通话
      wx.setEnable1v1Chat({
         enable: true,
         backgroundType: 1,
         minWindowType: 2,
         success() {
            console.log('开启双人通话成功');
         },
         fail() {
            console.log('开启双人通话失败');
         },
         complete() {
            console.log('开启双人通话成功Complete');
         }
      });
   },
   data() {
      return {
         roleType: null
         roleType: null,
         orderPlanDataStore: [],
         indexHuoDaiOrderPlanData: [],
         indexHistoryCoalData: [],
         indexdriverBillOfLoadingData: []
      };
   },
   onShow() {
      this.init();
      this.userAuthorization();
   },
   methods: {
      init() {
         this.roleType = uni.getStorageSync('roleType');
         console.log(this.roleType, 'indexTabbar');
         switch (this.roleType) {
            case 1:
               console.log('customerIndexRef');
@@ -52,6 +112,43 @@
            default:
               break;
         }
      },
      // 要求用户授权相机/麦克风权限
      userAuthorization() {
         wx.getSetting({
            success(res) {
               // wx.startRecord();
               console.log('success');
               if (!res.authSetting['scope.record'] || !res.authSetting['scope.camera']) {
                  if (!res.authSetting['scope.camera']) {
                     wx.authorize({
                        scope: 'scope.camera',
                        success() {
                           // 用户已经同意小程序使用录音功能,后续调用 wx.startRecord 接口不会弹窗询问
                           console.log('授权成功');
                        },
                        fail() {
                           console.log('授权失败');
                        }
                     });
                  } else if (!res.authSetting['scope.record']) {
                     wx.authorize({
                        scope: 'scope.record',
                        success() {
                           // 用户已经同意小程序使用录音功能,后续调用 wx.startRecord 接口不会弹窗询问
                           console.log('授权成功');
                        },
                        fail: () => {
                           console.log('授权失败');
                        }
                     });
                  }
               }
            },
            fail() {
               console.log('获取失败');
            }
         });
      }
   }
};