MrShi
昨天 00a7a61df86db969f2ba61c508d02ba4709ce3d4
small-program/pages/mine/mine.vue
@@ -48,8 +48,8 @@
               <view v-for="item in menuList" :key="item.label" class="menu-row" @click="handleMenuClick(item)">
                  <text class="menu-label">{{ item.label }}</text>
                  <view class="right-icon">
                     <text v-if="['门店入驻','门店信息'].includes(item.label)" :class="{ 'status-red': userInfo.shopAuditStatus === 1 || userInfo.shopAuditStatus === 2 }">
                        {{userInfo.shopAuditStatus === 0 ? '审核中' : userInfo.shopAuditStatus === 1 ? '审核通过,请支付押金' : userInfo.shopAuditStatus === 2 ? '审核未通过' : userInfo.shopAuditStatus === 3 ? '门店已入驻' : '' }}
                     <text v-if="['门店入驻','门店信息'].includes(item.label)" :class="{ 'status-red': [1,2,5].includes(userInfo.shopAuditStatus), 'status-yellow': [4].includes(userInfo.shopAuditStatus) }">
                        {{userInfo.shopAuditStatus === 0 ? '审核中' : userInfo.shopAuditStatus === 1 ? '审核通过,请支付押金' : userInfo.shopAuditStatus === 2 ? '审核未通过' : userInfo.shopAuditStatus === 3 ? '门店已入驻' : userInfo.shopAuditStatus === 4 ? '变更中' : userInfo.shopAuditStatus === 5 ? '变更未通过' : '' }}
                     </text>
                     <button  v-if="item.label === '在线客服'" open-type="contact" type="default">    </button>
                     <u-icon   name="arrow-right" size="18" color="#B5BBC5"></u-icon>
@@ -59,9 +59,24 @@
         </view>
      </view>
      <u-popup :show="showPhone" round="15" mode="bottom" :safeAreaInsetBottom="true" @close="showPhone = false" :closeable="true" :closeOnClickOverlay="true">
         <view class="phone">
            <view class="phone-head">
               <view></view>
               <text>联系平台</text>
            </view>
             <view style="flex-direction: row;margin-bottom: 30rpx;" class="phone-item" v-for="(phone, index) in serverPhoneList" :key="index" @click="contactPhoneDo(phone)">
                  <image src="/static/icon/ic_call@2x.png" mode="widthFix"></image>
                  <text>{{ phone }}</text>
             </view>
             <view style="width: 100%; height: 30rpx;"></view>
         </view>
      </u-popup>
      <auth-login
         :show="showAuthLogin"
         :checked.sync="agreeChecked"
         @success="getOrderNum"
         @close="showAuthLogin = false" />
      <custom-tabbar></custom-tabbar>
   </view>
@@ -76,13 +91,19 @@
         CustomTabbar
      },
      computed: {
      ...mapState(['navHeight', 'statusbarHeight', 'openid', 'userInfo', 'token'])
      ...mapState(['navHeight', 'statusbarHeight', 'openid', 'userInfo', 'token']),
      serverPhoneList() {
         if (!this.serverPhone) return []
         return this.serverPhone.split(',')
      }
   },
   data() {
      return {
         showAuthLogin: false,
         agreeChecked: true,
         showPhone: false,
         userName: '',
         serverPhone: '',
         orderMenus: [
            { label: '待支付', url: '/static/icon/mine_ic_daifukuan@2x.png', badge: 0,status:0 },
            { label: '待收货', url: '/static/icon/mine_ic_daishouhuo@2x.png', badge: 0,status:3 },
@@ -91,12 +112,25 @@
         menuList: [
            { label: '门店入驻' },
            { label: '我的门店' },
            { label: '领券中心' },
            { label: '开票申请' },
            { label: '用户服务协议' },
            { label: '用户隐私政策' },
            { label: '在线客服' },
            { label: '联系平台' },
            { label: '关于我们' }
         ]
      }
   },
   onLoad() {
      this.getPlatformInfo()
      uni.$on('loginOut', () => {
         this.orderMenus = [
            { label: '待支付', url: '/static/icon/mine_ic_daifukuan@2x.png', badge: 0,status:0 },
            { label: '待收货', url: '/static/icon/mine_ic_daishouhuo@2x.png', badge: 0,status:3 },
            { label: '退款/售后', url: '/static/icon/mine_ic_tuikuan@2x.png', badge: 0 ,status:5}
         ]
      })
   },
   async onShow() {
      await this.$onLaunched;
@@ -116,6 +150,19 @@
      }
   },
   methods: {
      contactPhoneDo(phone) {
         if (phone) {
            uni.makePhoneCall({
               phoneNumber: phone
            })
         }
      },
      async getPlatformInfo() {
         const res = await this.$u.api.getPlatformAboutUs({})
         if (res.code === 200 && res.data) {
            this.serverPhone = res.data.serverPhone || ''
         }
      },
      handleProfileClick() {
         if (this.token) {
            return
@@ -131,9 +178,15 @@
         const urlMap = {
            '门店入驻': '/pages/store-apply/store-apply',
            '我的门店': '/shop/pages/login/login',
            '领券中心': '/shop/pages/coupon-center/coupon-center',
            '开票申请': '/shop/pages/Invoice-application/Invoice-application',
            '用户服务协议': '/pages/rich-text/rich-text?type=0',
            '用户隐私政策': '/pages/rich-text/rich-text?type=1',
            '关于我们': '/pages/rich-text/rich-text?type=5' 
         }
         if (item.label === '联系平台') {
            this.showPhone = true
            return
         }
         if (['门店入驻', '我的门店'].includes(item.label)) {
            if (!this.token) {
@@ -141,7 +194,7 @@
               return
            }
         }
         if (['门店入驻','门店信息'].includes(item.label) && [0,1,2,3].includes(this.userInfo.shopAuditStatus)) {
         if (['门店入驻','门店信息'].includes(item.label) && [0,1,2,3,4].includes(this.userInfo.shopAuditStatus)) {
            uni.navigateTo({
               url: '/pages/details-entry/details-entry'
            })
@@ -154,6 +207,11 @@
         }
      },
      toOrderDetail(label) {
         if (!this.token) {
            this.showAuthLogin = true
            return
         }
         // uni.$emit('shuaxin',label===0?-2:label)
         uni.setStorageSync("orderStatus",label===0?-2:label)
         uni.switchTab({
            url: '/pages/itinerary/itinerary'
@@ -422,6 +480,9 @@
      .status-red {
         color: #FF0000;
      }
      .status-yellow {
         color: #FFD700;
      }
      button {
         position: relative;
         top: 0;