MrShi
2026-05-14 ce1248297e07cf5e409a37d43f2e0b54fcf86071
app/pages/index/index.vue
@@ -6,7 +6,7 @@
               <image class="hall-page__avatar" :src="centerUserInfo.fullImgUrl || '/static/image/ic_pic@2x.png'" mode="aspectFill"></image>
               <text class="hall-page__name">{{ centerUserInfo.name }}</text>
            </view>
            <view class="hall-page__status" v-if="userInfo.auditStatus === 3" @click="openStatusPicker">
            <view class="hall-page__status" v-if="hasApprovedOfficial" @click="openStatusPicker">
               <view class="hall-page__status-dot" :class="{ 'hall-page__status-dot--offline': acceptingStatus === 0 }"></view>
               <text class="hall-page__status-text">{{ acceptingStatus === 1 ? '接单中' : '已下线' }}</text>
               <text class="hall-page__status-arrow">▼</text>
@@ -19,7 +19,7 @@
         <view class="hall-page__stats">
            <view v-for="item in stats" :key="item.label" class="hall-page__stat-item">
               <text class="hall-page__stat-value">{{ userInfo.auditStatus === 3 ? item.value : '-' }}</text>
               <text class="hall-page__stat-value">{{ hasApprovedOfficial ? item.value : '-' }}</text>
               <text class="hall-page__stat-label">{{ item.label }}</text>
            </view>
         </view>
@@ -27,7 +27,7 @@
         <view class="hall-page__tabs">
            <view v-for="tab in displayTabs" :key="tab.value" class="hall-page__tab" :class="{ 'hall-page__tab--active': activeTab === tab.value }" @click="activeTab = tab.value">
               <text class="hall-page__tab-text">{{ tab.label }}</text>
               <text v-if="tab.count" class="hall-page__tab-count">{{ userInfo.auditStatus === 3 ? tab.count : '' }}</text>
               <text v-if="tab.count" class="hall-page__tab-count">{{ hasApprovedOfficial ? tab.count : '' }}</text>
               <view v-if="activeTab === tab.value" class="hall-page__tab-line"></view>
            </view>   
            <view class="hall-page__filter" @click="toggleFilterPopup(true)">
@@ -64,11 +64,11 @@
      </view>
      <scroll-view class="hall-page__body" scroll-y :style="bodyStyle">
         <view class="hall-page__verified" v-if="userInfo.auditStatus !== 3">
         <view class="hall-page__verified" v-if="!hasApprovedOfficial">
            <image src="/static/image/default_unverified@2x.png" mode="widthFix"></image>
            <button @click="toDriverCertification">去认证</button>
         </view>
         <view v-else-if="userInfo.auditStatus === 3 && acceptingStatus === 1 && currentOrderList.length" class="hall-page__list">
         <view v-else-if="hasApprovedOfficial && acceptingStatus === 1 && currentOrderList.length" class="hall-page__list">
            <view v-for="(item, index) in currentOrderList" :key="item.id" class="order-card" @click="goToOrderDetail(item, index)">
               <view class="order-card__head">
                  <view class="order-card__time" v-if="item.remainMinutes > 0">
@@ -281,6 +281,7 @@
            showFilterPopup: false,
            acceptingStatus: 0,
            showStatusPicker: false,
            hasApprovedOfficial: false,
            statusOptions: [
               { text: '上线', value: 1 },
               { text: '下线', value: 0 }
@@ -345,6 +346,7 @@
         this.getCenterInfo()
         this.getCategoryListData()
         this.getActiveOrderCount()
         this.getUserInfoDetail()
      },
      onReachBottom() {
@@ -392,6 +394,13 @@
      },
      methods: {
         getUserInfoDetail() {
            this.$u.api.verifyDetail().then(res => {
               if (res.code === 200) {
                  this.hasApprovedOfficial = res.data.hasApprovedOfficial === true
               }
            })
         },
         formatRemainTime(minutes) {
            if (!minutes) return 0
            if (minutes === 0) {