MrShi
2026-05-18 b099e758396f61b39d24cf5fa6be7bb0d10c2b4d
small-program/pages/mine/mine.vue
@@ -16,10 +16,10 @@
                  <view class="tool-item" @click="toSetting">
                     <image class="tool-icon" src="/static/icon/ic_option@2x.png" mode="aspectFit"></image>
                  </view>
                  <view class="tool-item has-badge">
                  <!-- <view class="tool-item has-badge">
                     <image class="tool-icon" src="/static/icon/ic_notice@2x.png" mode="aspectFit"></image>
                     <view class="tool-badge" v-if="userInfo.hasMessage"></view>
                  </view>
                  </view> -->
               </view>
            </view>
@@ -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>
@@ -62,6 +62,7 @@
      <auth-login
         :show="showAuthLogin"
         :checked.sync="agreeChecked"
         @success="getOrderNum"
         @close="showAuthLogin = false" />
      <custom-tabbar></custom-tabbar>
   </view>
@@ -83,6 +84,7 @@
         showAuthLogin: false,
         agreeChecked: true,
         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 +93,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 +131,12 @@
      }
   },
   methods: {
      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,11 +152,27 @@
         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 (['门店入驻','门店信息'].includes(item.label) && [0,1,2,3].includes(this.userInfo.shopAuditStatus)) {
         if (item.label === '联系平台') {
            if (this.serverPhone) {
               uni.makePhoneCall({
                  phoneNumber: this.serverPhone
               })
            }
            return
         }
         if (['门店入驻', '我的门店'].includes(item.label)) {
            if (!this.token) {
               this.showAuthLogin = true
               return
            }
         }
         if (['门店入驻','门店信息'].includes(item.label) && [0,1,2,3,4].includes(this.userInfo.shopAuditStatus)) {
            uni.navigateTo({
               url: '/pages/details-entry/details-entry'
            })
@@ -148,12 +185,20 @@
         }
      },
      toOrderDetail(label) {
         if (!this.token) {
            this.showAuthLogin = true
            return
         }
         uni.setStorageSync("orderStatus",label===0?-2:label)
         uni.switchTab({
            url: '/pages/itinerary/itinerary'
         })
      },
      toSetting() {
         if (!this.token) {
            this.showAuthLogin = true
            return
         }
         uni.navigateTo({
            url: '/pages/settings/settings'
         })
@@ -412,6 +457,9 @@
      .status-red {
         color: #FF0000;
      }
      .status-yellow {
         color: #FFD700;
      }
      button {
         position: relative;
         top: 0;